@acorex/components 20.7.60 → 20.7.62

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.
@@ -1,9 +1,10 @@
1
1
  import { MXBaseComponent, convertArrayToDataSource, AXComponent, AXRippleDirective, AXListDataSource, AXPagedComponent, AXCommonModule } from '@acorex/cdk/common';
2
- import * as i0 from '@angular/core';
3
- import { EventEmitter, signal, Input, Output, Injectable, inject, ElementRef, Renderer2, NgZone, ChangeDetectorRef, DOCUMENT, PLATFORM_ID, HostListener, Directive, ViewChild, ChangeDetectionStrategy, ViewEncapsulation, Component, effect, input, computed, untracked, ContentChildren, ContentChild, NgModule } from '@angular/core';
4
- import { isEqual, cloneDeep } from 'lodash-es';
2
+ import { AXHighlightService, AXUnsubscriber, AXHtmlUtil } from '@acorex/core/utils';
5
3
  import * as i1 from '@angular/common';
6
4
  import { isPlatformBrowser, CommonModule, NgTemplateOutlet, AsyncPipe, NgClass } from '@angular/common';
5
+ import * as i0 from '@angular/core';
6
+ import { signal, EventEmitter, inject, PLATFORM_ID, DestroyRef, Input, Output, Injectable, ElementRef, Renderer2, NgZone, ChangeDetectorRef, DOCUMENT, HostListener, Directive, ViewChild, ChangeDetectionStrategy, ViewEncapsulation, Component, effect, input, computed, untracked, ContentChildren, ContentChild, NgModule } from '@angular/core';
7
+ import { isEqual, cloneDeep } from 'lodash-es';
7
8
  import { Subject, debounceTime, buffer, filter } from 'rxjs';
8
9
  import { __decorate, __metadata } from 'tslib';
9
10
  import { AXFormatService, AXFormatPipe, AXFormatModule } from '@acorex/core/format';
@@ -14,7 +15,7 @@ import { AXDropdownPanelComponent, AXDropdownModule } from '@acorex/components/d
14
15
  import { AXLoadingComponent, AXLoadingModule } from '@acorex/components/loading';
15
16
  import * as i2 from '@acorex/core/translation';
16
17
  import { AXTranslationModule, AXTranslatorPipe } from '@acorex/core/translation';
17
- import { AXUnsubscriber, AXHtmlUtil } from '@acorex/core/utils';
18
+ import { AXBadgeComponent } from '@acorex/components/badge';
18
19
  import * as i2$1 from '@acorex/components/check-box';
19
20
  import { AXCheckBoxModule } from '@acorex/components/check-box';
20
21
  import * as i1$1 from '@angular/forms';
@@ -27,9 +28,96 @@ import { CdkScrollable, CdkVirtualScrollableElement, CdkVirtualScrollViewport, C
27
28
  import { AXTooltipDirective } from '@acorex/components/tooltip';
28
29
  import sum from 'lodash-es/sum';
29
30
 
31
+ /**
32
+ * Caches synchronous CSS class resolutions in a plain map (safe during template render)
33
+ * and asynchronous results in a signal (updated only after promises settle).
34
+ */
35
+ class AXDataTableCssClassCache {
36
+ constructor() {
37
+ this.generation = 0;
38
+ this.syncCache = new Map();
39
+ this.pendingResolvers = new Map();
40
+ this.resolvedAsync = signal(new Map(), ...(ngDevMode ? [{ debugName: "resolvedAsync" }] : []));
41
+ }
42
+ clear() {
43
+ this.generation++;
44
+ this.pendingResolvers.clear();
45
+ this.syncCache.clear();
46
+ if (this.resolvedAsync().size > 0) {
47
+ this.resolvedAsync.set(new Map());
48
+ }
49
+ }
50
+ resolve(cacheKey, factory, onResolved) {
51
+ const asyncCached = this.resolvedAsync().get(cacheKey);
52
+ if (asyncCached !== undefined) {
53
+ return asyncCached;
54
+ }
55
+ if (this.syncCache.has(cacheKey)) {
56
+ return this.syncCache.get(cacheKey) ?? '';
57
+ }
58
+ const result = factory();
59
+ if (isCssClassPromise(result)) {
60
+ this.scheduleAsync(cacheKey, result, onResolved);
61
+ return '';
62
+ }
63
+ const normalized = normalizeCssClass(result);
64
+ this.syncCache.set(cacheKey, normalized);
65
+ return normalized;
66
+ }
67
+ scheduleAsync(cacheKey, promise, onResolved) {
68
+ if (this.pendingResolvers.has(cacheKey)) {
69
+ return;
70
+ }
71
+ const generation = this.generation;
72
+ const task = promise
73
+ .then((value) => normalizeCssClass(value))
74
+ .catch(() => '')
75
+ .then((cssClass) => {
76
+ if (generation !== this.generation) {
77
+ return;
78
+ }
79
+ this.pendingResolvers.delete(cacheKey);
80
+ this.resolvedAsync.update((map) => {
81
+ const next = new Map(map);
82
+ next.set(cacheKey, cssClass);
83
+ return next;
84
+ });
85
+ onResolved();
86
+ });
87
+ this.pendingResolvers.set(cacheKey, task);
88
+ }
89
+ }
90
+ function normalizeCssClass(value) {
91
+ return typeof value === 'string' ? value.trim() : '';
92
+ }
93
+ function isCssClassPromise(value) {
94
+ return value != null && typeof value.then === 'function';
95
+ }
96
+
97
+ const AX_DATA_TABLE_ROW_COLOR_TYPES = [
98
+ 'primary',
99
+ 'secondary',
100
+ 'success',
101
+ 'warning',
102
+ 'danger',
103
+ ];
104
+ const AX_DATA_TABLE_ROW_HIGHLIGHT_DEFAULT_BADGE = '@acorex:dataTable.rowHighlight.new';
30
105
  class AXBaseDataTable extends MXBaseComponent {
106
+ /**
107
+ * When set, matching text in the table body is highlighted.
108
+ */
109
+ get highlightText() {
110
+ return this._highlightText;
111
+ }
112
+ set highlightText(value) {
113
+ if (this._highlightText === value) {
114
+ return;
115
+ }
116
+ this._highlightText = value;
117
+ this.scheduleTextHighlight();
118
+ }
31
119
  constructor() {
32
- super(...arguments);
120
+ super();
33
121
  this.dataSource = convertArrayToDataSource([]);
34
122
  /**
35
123
  * For handle nested rows.
@@ -44,7 +132,20 @@ class AXBaseDataTable extends MXBaseComponent {
44
132
  */
45
133
  this.hasChildrenField = 'hasChild';
46
134
  this.selectedRowsChange = new EventEmitter();
135
+ this.highlightedRows = signal(new Map(), ...(ngDevMode ? [{ debugName: "highlightedRows" }] : []));
136
+ this.rowCssClassCache = new AXDataTableCssClassCache();
137
+ this.cellCssClassCache = new AXDataTableCssClassCache();
138
+ this.highlightService = inject(AXHighlightService);
139
+ this.platformId = inject(PLATFORM_ID);
140
+ this.destroyRef = inject(DestroyRef);
141
+ this.highlightOrder = 0;
47
142
  this._selectedRows = signal([], ...(ngDevMode ? [{ debugName: "_selectedRows" }] : []));
143
+ this.destroyRef.onDestroy(() => {
144
+ if (this.textHighlightFrame != null) {
145
+ cancelAnimationFrame(this.textHighlightFrame);
146
+ }
147
+ this.clearTextHighlight();
148
+ });
48
149
  }
49
150
  /**
50
151
  * Gets the data source key field name.
@@ -54,6 +155,204 @@ class AXBaseDataTable extends MXBaseComponent {
54
155
  getDataSourceKey() {
55
156
  return this.dataSource.config.key || 'id';
56
157
  }
158
+ /**
159
+ * Temporarily highlights a row with optional pin, badge, and pulse styling.
160
+ * Highlights are cleared on the next grid `refresh()` unless `preserveHighlights` is set.
161
+ */
162
+ highlightRow(row, options = {}) {
163
+ const key = this.resolveRowKey(row);
164
+ if (key == null) {
165
+ return;
166
+ }
167
+ const entry = {
168
+ row: typeof row === 'object' && row !== null ? row : { [this.getDataSourceKey()]: row },
169
+ color: options.color ?? 'success',
170
+ badge: options.badge !== undefined ? options.badge : AX_DATA_TABLE_ROW_HIGHLIGHT_DEFAULT_BADGE,
171
+ pulse: options.pulse ?? true,
172
+ pinned: options.pinned ?? true,
173
+ order: ++this.highlightOrder,
174
+ };
175
+ this.highlightedRows.update((map) => {
176
+ const next = new Map(map);
177
+ next.set(key, entry);
178
+ return next;
179
+ });
180
+ this.onRowHighlightsChanged();
181
+ }
182
+ /**
183
+ * Temporarily highlights multiple rows.
184
+ */
185
+ highlightRows(rows, options = {}) {
186
+ rows.forEach((row) => this.highlightRow(row, options));
187
+ }
188
+ /**
189
+ * Clears all temporary row highlights.
190
+ */
191
+ clearRowHighlights() {
192
+ if (this.highlightedRows().size === 0) {
193
+ return;
194
+ }
195
+ this.highlightedRows.set(new Map());
196
+ this.onRowHighlightsChanged();
197
+ }
198
+ /**
199
+ * Returns the temporary highlight state for a row, if any.
200
+ */
201
+ getRowHighlight(row) {
202
+ const key = this.resolveRowKey(row);
203
+ if (key == null) {
204
+ return null;
205
+ }
206
+ return this.highlightedRows().get(key) ?? null;
207
+ }
208
+ /**
209
+ * Returns the translation key for the row highlight badge, if any.
210
+ */
211
+ getRowHighlightBadge(row) {
212
+ return this.getRowHighlight(row)?.badge ?? null;
213
+ }
214
+ /**
215
+ * Clears cached asynchronous CSS class results for rows and cells.
216
+ */
217
+ clearResolvedCssClasses() {
218
+ this.rowCssClassCache.clear();
219
+ this.cellCssClassCache.clear();
220
+ }
221
+ /**
222
+ * Returns CSS classes for the given row `<tr>`, including temporary highlight styles.
223
+ */
224
+ getRowCssClass(row, rowIndex) {
225
+ const classes = [];
226
+ const highlight = this.getRowHighlight(row);
227
+ if (highlight) {
228
+ classes.push(`ax-row-color-${highlight.color}`);
229
+ if (highlight.pulse) {
230
+ classes.push('ax-row-color-pulse');
231
+ }
232
+ }
233
+ if (this.rowCssClass) {
234
+ classes.push(this.resolveRowCssClass(row, rowIndex));
235
+ }
236
+ return classes.filter(Boolean).join(' ');
237
+ }
238
+ /**
239
+ * Returns CSS classes for a body cell, merging column `cssClass` with `cellCssClass`.
240
+ */
241
+ getCellCssClass(row, column, rowIndex) {
242
+ const columnClass = column.cssClass ?? '';
243
+ if (!this.cellCssClass) {
244
+ return columnClass;
245
+ }
246
+ const resolved = this.resolveCellCssClass(row, column, rowIndex);
247
+ return columnClass ? (resolved ? `${columnClass} ${resolved}` : columnClass) : resolved;
248
+ }
249
+ /**
250
+ * Merges pinned highlighted rows with loaded items.
251
+ */
252
+ mergeRowsWithHighlights(items) {
253
+ const highlights = this.highlightedRows();
254
+ if (highlights.size === 0) {
255
+ return items;
256
+ }
257
+ const itemsByKey = new Map();
258
+ for (const item of items) {
259
+ const itemKey = this.resolveRowKey(item);
260
+ if (itemKey != null) {
261
+ itemsByKey.set(itemKey, item);
262
+ }
263
+ }
264
+ const pinnedEntries = [...highlights.values()].filter((entry) => entry.pinned).sort((a, b) => a.order - b.order);
265
+ const pinnedRows = pinnedEntries.map((entry) => {
266
+ const entryKey = this.resolveRowKey(entry.row);
267
+ if (entryKey != null && itemsByKey.has(entryKey)) {
268
+ return itemsByKey.get(entryKey);
269
+ }
270
+ return entry.row;
271
+ });
272
+ const pinnedKeys = new Set(pinnedEntries.map((entry) => this.resolveRowKey(entry.row)).filter((key) => key != null));
273
+ const rest = items.filter((item) => {
274
+ const itemKey = this.resolveRowKey(item);
275
+ return itemKey == null || !pinnedKeys.has(itemKey);
276
+ });
277
+ return [...pinnedRows, ...rest];
278
+ }
279
+ resolveRowKey(row) {
280
+ const keyField = this.getDataSourceKey();
281
+ if (row == null) {
282
+ return null;
283
+ }
284
+ if (typeof row === 'object') {
285
+ const value = row[keyField];
286
+ if (value == null || value === '') {
287
+ return null;
288
+ }
289
+ return value;
290
+ }
291
+ return row;
292
+ }
293
+ onCssClassResolved() {
294
+ this.scheduleTextHighlight();
295
+ }
296
+ /**
297
+ * Schedules text highlighting after the current render frame.
298
+ */
299
+ scheduleTextHighlight() {
300
+ if (!isPlatformBrowser(this.platformId)) {
301
+ return;
302
+ }
303
+ if (this.textHighlightFrame != null) {
304
+ cancelAnimationFrame(this.textHighlightFrame);
305
+ }
306
+ this.textHighlightFrame = requestAnimationFrame(() => {
307
+ this.textHighlightFrame = undefined;
308
+ this.applyTextHighlight();
309
+ });
310
+ }
311
+ /**
312
+ * Returns the DOM root used for text highlighting.
313
+ */
314
+ getTextHighlightRoot() {
315
+ const host = this.getHostElement();
316
+ const root = host.querySelector('.ax-data-table-wrapper') ??
317
+ host.querySelector('.ax-body-content') ??
318
+ host;
319
+ root.setAttribute('data-ax-highlight-root', this.id);
320
+ return root;
321
+ }
322
+ getTextHighlightSelector() {
323
+ return `[data-ax-highlight-root="${this.id}"] tbody td`;
324
+ }
325
+ applyTextHighlight() {
326
+ const query = this._highlightText?.trim();
327
+ const selector = this.getTextHighlightSelector();
328
+ if (!query) {
329
+ this.highlightService.clear(selector);
330
+ return;
331
+ }
332
+ if (!this.getTextHighlightRoot()) {
333
+ return;
334
+ }
335
+ this.highlightService.highlight(selector, query);
336
+ }
337
+ clearTextHighlight() {
338
+ this.highlightService.clear(this.getTextHighlightSelector());
339
+ }
340
+ resolveRowCssClass(row, rowIndex) {
341
+ const cacheKey = this.resolveRowCssClassCacheKey(row, rowIndex);
342
+ return this.rowCssClassCache.resolve(cacheKey, () => this.rowCssClass(row, rowIndex), () => this.onCssClassResolved());
343
+ }
344
+ resolveCellCssClass(row, column, rowIndex) {
345
+ const cacheKey = this.resolveCellCssClassCacheKey(row, column, rowIndex);
346
+ return this.cellCssClassCache.resolve(cacheKey, () => this.cellCssClass(row, column, rowIndex), () => this.onCssClassResolved());
347
+ }
348
+ resolveRowCssClassCacheKey(row, rowIndex) {
349
+ const key = this.resolveRowKey(row);
350
+ return key != null ? `r:${key}:${rowIndex}` : `r:${rowIndex}`;
351
+ }
352
+ resolveCellCssClassCacheKey(row, column, rowIndex) {
353
+ const key = this.resolveRowKey(row);
354
+ return key != null ? `c:${key}:${column.name}:${rowIndex}` : `c:${column.name}:${rowIndex}`;
355
+ }
57
356
  get selectedRows() {
58
357
  return this._selectedRows();
59
358
  }
@@ -137,12 +436,12 @@ class AXBaseDataTable extends MXBaseComponent {
137
436
  this.selectedRows = this.selectedRows.filter((c) => !removedRowIds.includes(typeof c === 'object' ? c[key] : c));
138
437
  //this.selectedRows = this.selectedRows.filter((c) => !rows.includes(c));
139
438
  }
140
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXBaseDataTable, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
439
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXBaseDataTable, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
141
440
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXBaseDataTable }); }
142
441
  }
143
442
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXBaseDataTable, decorators: [{
144
443
  type: Injectable
145
- }], propDecorators: { dataSource: [{
444
+ }], ctorParameters: () => [], propDecorators: { dataSource: [{
146
445
  type: Input
147
446
  }], parentField: [{
148
447
  type: Input
@@ -150,6 +449,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImpor
150
449
  type: Input
151
450
  }], rowDetailsTemplate: [{
152
451
  type: Input
452
+ }], rowCssClass: [{
453
+ type: Input
454
+ }], cellCssClass: [{
455
+ type: Input
456
+ }], highlightText: [{
457
+ type: Input
153
458
  }], selectedRowsChange: [{
154
459
  type: Output
155
460
  }], selectedRows: [{
@@ -1174,7 +1479,7 @@ class AXRowIndexColumnComponent extends AXDataTableColumnComponent {
1174
1479
  return 'ax-index-column';
1175
1480
  }
1176
1481
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowIndexColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
1177
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.3", type: AXRowIndexColumnComponent, isStandalone: true, selector: "ax-index-column", inputs: { width: "width", caption: "caption", fixed: "fixed", footerTemplate: "footerTemplate", padZero: "padZero" }, providers: [
1482
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXRowIndexColumnComponent, isStandalone: true, selector: "ax-index-column", inputs: { width: "width", caption: "caption", fixed: "fixed", footerTemplate: "footerTemplate", padZero: "padZero" }, providers: [
1178
1483
  AXUnsubscriber,
1179
1484
  {
1180
1485
  provide: AXDataTableColumnComponent,
@@ -1183,9 +1488,19 @@ class AXRowIndexColumnComponent extends AXDataTableColumnComponent {
1183
1488
  { provide: AXComponent, useExisting: AXRowIndexColumnComponent },
1184
1489
  ], viewQueries: [{ propertyName: "_cellTemplate", first: true, predicate: ["cell"], descendants: true }, { propertyName: "_contentHeaderTemplate", first: true, predicate: ["header"], descendants: true }, { propertyName: "_contentFooterTemplate", first: true, predicate: ["footer"], descendants: true }], usesInheritance: true, ngImport: i0, template: `<ng-template #header>{{ caption }}</ng-template>
1185
1490
  <ng-template #cell let-row>
1186
- {{ row.rowIndex + 1 | format: 'number' : { zeroPadLength: this.formatCount, thousandSeparator: false } | async }}
1491
+ @if (grid.getRowHighlightBadge(row.data); as badgeKey) {
1492
+ <ax-badge
1493
+ class="ax-data-table-row-highlight-badge"
1494
+ [color]="grid.getRowHighlight(row.data)?.color ?? 'success'"
1495
+ [text]="badgeKey | translate | async"
1496
+ />
1497
+ } @else {
1498
+ {{
1499
+ row.rowIndex + 1 | format: 'number' : { zeroPadLength: this.formatCount, thousandSeparator: false } | async
1500
+ }}
1501
+ }
1187
1502
  </ng-template>
1188
- <ng-template #footer></ng-template> `, isInline: true, dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXFormatPipe, name: "format" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1503
+ <ng-template #footer></ng-template> `, isInline: true, dependencies: [{ kind: "component", type: AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXFormatPipe, name: "format" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
1189
1504
  }
1190
1505
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXRowIndexColumnComponent, decorators: [{
1191
1506
  type: Component,
@@ -1193,7 +1508,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImpor
1193
1508
  selector: 'ax-index-column',
1194
1509
  template: `<ng-template #header>{{ caption }}</ng-template>
1195
1510
  <ng-template #cell let-row>
1196
- {{ row.rowIndex + 1 | format: 'number' : { zeroPadLength: this.formatCount, thousandSeparator: false } | async }}
1511
+ @if (grid.getRowHighlightBadge(row.data); as badgeKey) {
1512
+ <ax-badge
1513
+ class="ax-data-table-row-highlight-badge"
1514
+ [color]="grid.getRowHighlight(row.data)?.color ?? 'success'"
1515
+ [text]="badgeKey | translate | async"
1516
+ />
1517
+ } @else {
1518
+ {{
1519
+ row.rowIndex + 1 | format: 'number' : { zeroPadLength: this.formatCount, thousandSeparator: false } | async
1520
+ }}
1521
+ }
1197
1522
  </ng-template>
1198
1523
  <ng-template #footer></ng-template> `,
1199
1524
  encapsulation: ViewEncapsulation.None,
@@ -1207,7 +1532,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImpor
1207
1532
  { provide: AXComponent, useExisting: AXRowIndexColumnComponent },
1208
1533
  ],
1209
1534
  inputs: ['width', 'caption', 'fixed'],
1210
- imports: [AsyncPipe, AXFormatPipe],
1535
+ imports: [AsyncPipe, AXFormatPipe, AXBadgeComponent, AXTranslatorPipe],
1211
1536
  }]
1212
1537
  }], propDecorators: { _cellTemplate: [{
1213
1538
  type: ViewChild,
@@ -1611,6 +1936,11 @@ class AXDataTableComponent extends AXBaseDataTable {
1611
1936
  * @ignore
1612
1937
  */
1613
1938
  this.isRefreshCalled = signal(false, ...(ngDevMode ? [{ debugName: "isRefreshCalled" }] : []));
1939
+ /**
1940
+ * Root rows from the latest data source load (before highlight merge).
1941
+ * @ignore
1942
+ */
1943
+ this.lastLoadedRows = [];
1614
1944
  /**
1615
1945
  * @ignore
1616
1946
  */
@@ -1701,9 +2031,12 @@ class AXDataTableComponent extends AXBaseDataTable {
1701
2031
  this.goToPage(data.page);
1702
2032
  return;
1703
2033
  }
1704
- this.displayedRows.set(data.items.filter((item) => !item[this.parentField]));
2034
+ this.clearResolvedCssClasses();
2035
+ this.lastLoadedRows = data.items.filter((item) => !item[this.parentField]);
2036
+ this.displayedRows.set(this.mergeRowsWithHighlights(this.lastLoadedRows));
1705
2037
  this.totalRows = data.totalCount;
1706
2038
  this.hasItems = data.totalCount > 0;
2039
+ this.scheduleTextHighlight();
1707
2040
  });
1708
2041
  this.dataSource.onItemExpanded.pipe(this._unsubscriber.takeUntilDestroy).subscribe((data) => {
1709
2042
  const { expandedItem, children } = data;
@@ -1747,9 +2080,11 @@ class AXDataTableComponent extends AXBaseDataTable {
1747
2080
  // Delay to ensure DOM is ready
1748
2081
  setTimeout(() => {
1749
2082
  this.autoFitColumnsWithAutoWidth();
2083
+ this.scheduleTextHighlight();
1750
2084
  }, 100);
1751
2085
  }
1752
2086
  });
2087
+ this.scheduleTextHighlight();
1753
2088
  }
1754
2089
  captureAutoFitIntentColumns() {
1755
2090
  this.columns.forEach((column) => {
@@ -1963,6 +2298,17 @@ class AXDataTableComponent extends AXBaseDataTable {
1963
2298
  }
1964
2299
  return undefined;
1965
2300
  }
2301
+ /**
2302
+ * Re-applies pinned highlighted rows to the current view.
2303
+ * @ignore
2304
+ */
2305
+ onRowHighlightsChanged() {
2306
+ this.displayedRows.set(this.mergeRowsWithHighlights(this.lastLoadedRows));
2307
+ }
2308
+ onCssClassResolved() {
2309
+ this.displayedRows.update((rows) => [...rows]);
2310
+ super.onCssClassResolved();
2311
+ }
1966
2312
  /**
1967
2313
  * Refreshes the data table with optional reset options.
1968
2314
  *
@@ -1971,6 +2317,10 @@ class AXDataTableComponent extends AXBaseDataTable {
1971
2317
  * @returns void - No return value.
1972
2318
  */
1973
2319
  refresh(options = { reset: true }) {
2320
+ if (!options.preserveHighlights) {
2321
+ this.clearRowHighlights();
2322
+ }
2323
+ this.clearResolvedCssClasses();
1974
2324
  this.dataSource.refresh(options);
1975
2325
  const isRefreshCalled = untracked(() => this.isRefreshCalled());
1976
2326
  if (this.fetchDataMode === 'manual' && !isRefreshCalled) {
@@ -1984,7 +2334,18 @@ class AXDataTableComponent extends AXBaseDataTable {
1984
2334
  * @ignore
1985
2335
  */
1986
2336
  calculateRowIndex(index) {
1987
- return this.dataSource.pageSize * this.page() + index;
2337
+ const highlightOffset = this.countHighlightBadgeRowsBefore(index);
2338
+ return this.dataSource.pageSize * this.page() + index - highlightOffset;
2339
+ }
2340
+ countHighlightBadgeRowsBefore(displayIndex) {
2341
+ let count = 0;
2342
+ const rows = this.displayedRows();
2343
+ for (let i = 0; i < displayIndex && i < rows.length; i++) {
2344
+ if (this.getRowHighlightBadge(rows[i])) {
2345
+ count++;
2346
+ }
2347
+ }
2348
+ return count;
1988
2349
  }
1989
2350
  /**
1990
2351
  * Handles double-click on resize handle to auto-fit column width.
@@ -2095,18 +2456,10 @@ class AXDataTableComponent extends AXBaseDataTable {
2095
2456
  console.error(`Failed to auto-fit column ${index}:`, error);
2096
2457
  }
2097
2458
  });
2098
- if (!headerOnly && autoWidthColumns.length > 0) {
2099
- console.warn(`Auto-fitted ${autoWidthColumns.length} column(s) with width='auto': indices ${autoWidthColumns.join(', ')}`);
2100
- }
2101
2459
  }
2102
2460
  /**
2103
- * Auto-fits all columns width based on their content.
2104
- *
2105
- * @param options - Configuration options
2106
- * @param options.skipFixed - If true, skips fixed columns (default: true)
2107
- * @param options.skipLoading - If true, skips if data is loading (default: true)
2108
- * @param options.maxWidth - Maximum width for any column in pixels (default: 500)
2109
- * @returns void
2461
+ * Auto-fits all resizable columns to their content width.
2462
+ * Call this whenever row data or templates change and column widths should be recalculated.
2110
2463
  */
2111
2464
  autoFitAllColumns(options = {}) {
2112
2465
  const { skipFixed = true, skipLoading = true, maxWidth = 500 } = options;
@@ -2134,15 +2487,10 @@ class AXDataTableComponent extends AXBaseDataTable {
2134
2487
  });
2135
2488
  }
2136
2489
  /**
2137
- * Auto-fits a column width based on its content.
2490
+ * Auto-fits a single column to its content width.
2138
2491
  * Similar to Excel's "AutoFit Column Width" feature.
2139
- * Uses an invisible helper table to measure actual content width without affecting the main table.
2140
2492
  *
2141
- * @param columnIndex - The index of the column to auto-fit (0-based, based on columns QueryList)
2142
- * @param options - Configuration options
2143
- * @param options.maxWidth - Maximum width for the column in pixels (default: none)
2144
- * @param options.headerOnly - When true, only the header cell is measured (e.g. before row data exists)
2145
- * @returns void
2493
+ * @param columnIndex - 0-based index in the columns `QueryList`.
2146
2494
  */
2147
2495
  autoFitColumn(columnIndex, options = {}) {
2148
2496
  if (!isPlatformBrowser(this.platformID)) {
@@ -2271,19 +2619,39 @@ class AXDataTableComponent extends AXBaseDataTable {
2271
2619
  }
2272
2620
  }
2273
2621
  }
2622
+ /**
2623
+ * Auto-fits a single column by its `name` / data field.
2624
+ */
2625
+ autoFitColumnByName(columnName, options = {}) {
2626
+ const columnIndex = this.columns.toArray().findIndex((column) => column.name === columnName);
2627
+ if (columnIndex === -1) {
2628
+ console.warn(`Column "${columnName}" not found`);
2629
+ return;
2630
+ }
2631
+ this.autoFitColumn(columnIndex, options);
2632
+ }
2274
2633
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2275
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXDataTableComponent, isStandalone: true, selector: "ax-data-table", inputs: { dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: false, isRequired: false, transformFunction: null }, selectedRows: { classPropertyName: "selectedRows", publicName: "selectedRows", isSignal: false, isRequired: false, transformFunction: null }, parentField: { classPropertyName: "parentField", publicName: "parentField", isSignal: false, isRequired: false, transformFunction: null }, hasChildrenField: { classPropertyName: "hasChildrenField", publicName: "hasChildrenField", isSignal: false, isRequired: false, transformFunction: null }, rowDetailsTemplate: { classPropertyName: "rowDetailsTemplate", publicName: "rowDetailsTemplate", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null }, rowTemplate: { classPropertyName: "rowTemplate", publicName: "rowTemplate", isSignal: false, isRequired: false, transformFunction: null }, emptyTemplate: { classPropertyName: "emptyTemplate", publicName: "emptyTemplate", isSignal: false, isRequired: false, transformFunction: null }, noDataTemplate: { classPropertyName: "noDataTemplate", publicName: "noDataTemplate", isSignal: false, isRequired: false, transformFunction: null }, alternative: { classPropertyName: "alternative", publicName: "alternative", isSignal: false, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: false, isRequired: false, transformFunction: null }, fixedHeader: { classPropertyName: "fixedHeader", publicName: "fixedHeader", isSignal: false, isRequired: false, transformFunction: null }, showFooter: { classPropertyName: "showFooter", publicName: "showFooter", isSignal: false, isRequired: false, transformFunction: null }, fixedFooter: { classPropertyName: "fixedFooter", publicName: "fixedFooter", isSignal: false, isRequired: false, transformFunction: null }, itemHeight: { classPropertyName: "itemHeight", publicName: "itemHeight", isSignal: false, isRequired: false, transformFunction: null }, allowReordering: { classPropertyName: "allowReordering", publicName: "allowReordering", isSignal: false, isRequired: false, transformFunction: null }, paging: { classPropertyName: "paging", publicName: "paging", isSignal: false, isRequired: false, transformFunction: null }, fetchDataMode: { classPropertyName: "fetchDataMode", publicName: "fetchDataMode", isSignal: false, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: null }, focusedRow: { classPropertyName: "focusedRow", publicName: "focusedRow", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { selectedRowsChange: "selectedRowsChange", focusedRowChange: "focusedRowChange", onRowClick: "onRowClick", onRowDbClick: "onRowDbClick", onColumnsOrderChanged: "onColumnsOrderChanged", onColumnSizeChanged: "onColumnSizeChanged", onPageChanged: "onPageChanged" }, host: { attributes: { "ngSkipHydration": "true" }, properties: { "class.ax-data-table-look-minimal": "look() === \"minimal\"" } }, providers: [
2634
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXDataTableComponent, isStandalone: true, selector: "ax-data-table", inputs: { dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: false, isRequired: false, transformFunction: null }, selectedRows: { classPropertyName: "selectedRows", publicName: "selectedRows", isSignal: false, isRequired: false, transformFunction: null }, parentField: { classPropertyName: "parentField", publicName: "parentField", isSignal: false, isRequired: false, transformFunction: null }, hasChildrenField: { classPropertyName: "hasChildrenField", publicName: "hasChildrenField", isSignal: false, isRequired: false, transformFunction: null }, rowDetailsTemplate: { classPropertyName: "rowDetailsTemplate", publicName: "rowDetailsTemplate", isSignal: false, isRequired: false, transformFunction: null }, rowCssClass: { classPropertyName: "rowCssClass", publicName: "rowCssClass", isSignal: false, isRequired: false, transformFunction: null }, cellCssClass: { classPropertyName: "cellCssClass", publicName: "cellCssClass", isSignal: false, isRequired: false, transformFunction: null }, highlightText: { classPropertyName: "highlightText", publicName: "highlightText", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null }, rowTemplate: { classPropertyName: "rowTemplate", publicName: "rowTemplate", isSignal: false, isRequired: false, transformFunction: null }, emptyTemplate: { classPropertyName: "emptyTemplate", publicName: "emptyTemplate", isSignal: false, isRequired: false, transformFunction: null }, noDataTemplate: { classPropertyName: "noDataTemplate", publicName: "noDataTemplate", isSignal: false, isRequired: false, transformFunction: null }, alternative: { classPropertyName: "alternative", publicName: "alternative", isSignal: false, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: false, isRequired: false, transformFunction: null }, fixedHeader: { classPropertyName: "fixedHeader", publicName: "fixedHeader", isSignal: false, isRequired: false, transformFunction: null }, showFooter: { classPropertyName: "showFooter", publicName: "showFooter", isSignal: false, isRequired: false, transformFunction: null }, fixedFooter: { classPropertyName: "fixedFooter", publicName: "fixedFooter", isSignal: false, isRequired: false, transformFunction: null }, itemHeight: { classPropertyName: "itemHeight", publicName: "itemHeight", isSignal: false, isRequired: false, transformFunction: null }, allowReordering: { classPropertyName: "allowReordering", publicName: "allowReordering", isSignal: false, isRequired: false, transformFunction: null }, paging: { classPropertyName: "paging", publicName: "paging", isSignal: false, isRequired: false, transformFunction: null }, fetchDataMode: { classPropertyName: "fetchDataMode", publicName: "fetchDataMode", isSignal: false, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: null }, focusedRow: { classPropertyName: "focusedRow", publicName: "focusedRow", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { selectedRowsChange: "selectedRowsChange", focusedRowChange: "focusedRowChange", onRowClick: "onRowClick", onRowDbClick: "onRowDbClick", onColumnsOrderChanged: "onColumnsOrderChanged", onColumnSizeChanged: "onColumnSizeChanged", onPageChanged: "onPageChanged" }, host: { attributes: { "ngSkipHydration": "true" }, properties: { "class.ax-data-table-look-minimal": "look() === \"minimal\"" } }, providers: [
2276
2635
  { provide: AXBaseDataTable, useExisting: AXDataTableComponent },
2277
2636
  AXUnsubscriber,
2278
2637
  { provide: AXComponent, useExisting: AXDataTableComponent },
2279
- ], queries: [{ propertyName: "customDataPager", first: true, predicate: AXDataPagerComponent, descendants: true, static: true }, { propertyName: "columns", predicate: AXDataTableColumnComponent }], viewQueries: [{ propertyName: "dataPager", first: true, predicate: ["dataPager"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-header\"> </ng-content>\n<div class=\"ax-data-table-wrapper\">\n <table>\n @if (showHeader) {\n <thead [ngClass]=\"{ 'ax-data-table-sticky-header': fixedHeader }\">\n <tr\n [cdkDropListDisabled]=\"!allowReordering\"\n cdkDropList\n cdkScrollable\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-start\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n @for (c of normalColumnsList(); track $index) {\n <th\n cdkDrag\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </th>\n }\n <th></th>\n @for (c of endFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n </tr>\n </thead>\n }\n <tbody [ngClass]=\"{ 'ax-data-table-row-alternative': alternative }\">\n @if (showNoDataLoadedYet) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (noDataTemplate) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-data-yet' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else if (!displayedRows().length) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (emptyTemplate) {\n <ng-container [ngTemplateOutlet]=\"emptyTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-record' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else {\n @for (row of displayedRows(); let rowIndex = $index; track rowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row, rowIndex } }\"\n ></ng-container>\n }\n\n <ng-template #rowTemp let-data=\"data\">\n @if (rowTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n >\n </ng-container>\n } @else {\n <tr\n [class.ax-state-focused]=\"focusedRow && data.row === focusedRow\"\n [attr.data-index]=\"data.rowIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(data.row)\"\n style.height=\"{{ itemHeight }}px\"\n style.max-height=\"{{ itemHeight }}px\"\n (click)=\"handleRowClick($event, data.row)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n <td><div class=\"ax-bg\"></div></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n </tr>\n @if (data.row?.__meta__?.expanded) {\n @if (rowDetailsTemplate) {\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n <td class=\"ax-data-table-row-details\" [attr.colspan]=\"normalColumnsList().length + 1\">\n <ng-container\n [ngTemplateOutlet]=\"rowDetailsTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n ></ng-container>\n </td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n </tr>\n }\n @for (childRow of data.row.children; let childRowIndex = $index; track childRowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row: childRow, rowIndex: childRowIndex } }\"\n ></ng-container>\n }\n }\n }\n </ng-template>\n\n <tr class=\"empty-row\"></tr>\n }\n </tbody>\n @if (showFooter) {\n <tfoot [ngClass]=\"{ 'ax-data-table-sticky-footer': fixedFooter }\">\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-start\"\n [class.ax-data-table-sticky-footer-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </td>\n }\n <td></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n </tr>\n </tfoot>\n }\n </table>\n</div>\n\n@if (paging) {\n <div class=\"ax-table-footer\" #footerContainer>\n <ng-template #customPager>\n <ng-content select=\"ax-data-pager\"></ng-content>\n </ng-template>\n\n @if (customDataPager) {\n <ng-container [ngTemplateOutlet]=\"customPager\"></ng-container>\n } @else {\n <ax-data-pager\n #dataPager\n [displayMode]=\"'custom'\"\n (onChanged)=\"handleChangePage($event)\"\n [total]=\"dataSource.totalCount\"\n [size]=\"dataSource.pageSize\"\n [isLoading]=\"isLoading()\"\n >\n <ax-prefix class=\"ax-data-table-numeric-paging\">\n <ax-data-pager-numeric-selector> </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes> </ax-data-pager-page-sizes>\n </ax-prefix>\n <ax-prefix class=\"ax-data-table-input-paging\">\n <ax-data-pager-prev-buttons> </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector> </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons> </ax-data-pager-next-buttons>\n </ax-prefix>\n <ax-suffix class=\"ax-data-table-info\">\n <ax-data-pager-info> </ax-data-pager-info>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh({ reset: false })\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-data-pager>\n }\n </div>\n}\n<ng-content select=\"ax-footer\"> </ng-content>\n", styles: ["ax-data-table{--ax-comp-data-table-font-size: .875rem;--ax-comp-data-table-line-height: 1rem;--ax-comp-data-table-border-color: var(--ax-sys-color-border-surface);--ax-comp-data-table-border-radius: var(--ax-sys-border-radius);--ax-comp-data-table-column-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-lightest-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-primary-lightest-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-lighter-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-interactive-bg-color: var(--ax-sys-color-light-surface)}.ax-dark ax-data-table{--ax-comp-data-table-column-bg-color: var(--ax-sys-color-darkest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-dark-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-dark-surface)}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table{display:flex;flex-direction:column;height:100%;width:100%;font-size:var(--ax-comp-data-table-font-size);line-height:var(--ax-comp-data-table-line-height);border-radius:var(--ax-comp-data-table-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));position:relative;min-height:inherit;overflow:hidden}ax-data-table td.ax-data-table-empty-data{background:transparent!important;position:absolute!important;padding:2rem 1rem;text-align:center;vertical-align:middle;height:8rem;border-bottom:none;top:50%;transform:translateY(-50%);width:100%}ax-data-table td.ax-data-table-empty-data span{color:rgb(var(--ax-sys-color-ghost-500));font-size:var(--ax-comp-data-table-font-size);display:flex;height:100%;align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper{overflow:auto;width:100%;flex:1;border-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table{display:table;height:100%;width:100%;table-layout:fixed;overflow-x:auto}ax-data-table .ax-data-table-wrapper table thead{overflow:hidden;border-start-end-radius:var(--ax-comp-data-table-border-radius);border-start-start-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table thead th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-header-bg-color));color:rgba(var(--ax-comp-data-table-header-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle{position:absolute;inset-inline-end:0px;top:0;bottom:0;width:.25rem;height:100%;cursor:col-resize;background:transparent}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover{background-color:rgba(var(--ax-comp-data-table-handler-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-data-table .ax-data-table-wrapper table thead th:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table thead.ax-data-table-sticky-header{position:sticky;top:0;border-top:none;border-bottom:none;z-index:3;box-shadow:inset 1px 1px 0 2px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell{position:sticky;z-index:2;background-color:rgba(var(--ax-comp-data-table-column-bg-color));border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tbody tr td{z-index:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-data-table-cell-tooltip-wrapper{position:relative;min-height:inherit}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-bg{top:0;left:0;z-index:-1;width:100%;height:100%;position:absolute;border-inline-end:1px solid rgba(var(--ax-comp-data-table-border-color));background-color:transparent;opacity:.3}ax-data-table .ax-data-table-wrapper table tbody .empty-row{height:auto!important}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td{background-color:rgba(var(--ax-comp-data-table-alternative-bg-color));color:rgba(var(--ax-comp-data-table-alternative-text-color))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) ax-skeleton{width:25%}ax-data-table .ax-data-table-wrapper table tbody tr{height:2.5rem;max-height:2.5rem}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-focus-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-focus-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-column-bg-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.5rem;padding-bottom:.5rem;vertical-align:middle}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler{padding-inline-start:.25rem;padding-inline-end:.25rem;cursor:pointer}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler.has-parent{padding-inline-start:1.5rem!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-comp-data-table-index-bg-color));color:rgba(var(--ax-comp-data-table-index-text-color));text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column{text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button{--ax-comp-button-font-size: .75rem;--ax-comp-button-padding-x: .25rem;--ax-comp-button-decorator-padding-x: .25rem;--ax-comp-button-icon-only-font-size: .875rem;--ax-sys-size-base: 1.5rem;margin-left:.25rem;margin-right:.25rem}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button ax-loading .ax-loader{width:.75rem!important;height:.75rem!important;border-width:2px!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-comp-data-table-border-radius);border-style:none;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover:not(ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-selected,ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-disabled){opacity:.75}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:active{opacity:1}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-data-table .ax-data-table-wrapper table tbody td:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table tbody td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem;background-color:rgba(var(--ax-comp-data-table-skeleton-bg-color))}ax-data-table .ax-data-table-wrapper table tfoot tr td{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-footer-bg-color));color:rgba(var(--ax-comp-data-table-footer-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{position:sticky;bottom:-1px;border-top:none;border-bottom:none;z-index:3;box-shadow:1px 0 rgba(var(--ax-comp-data-table-border-color)),0 -1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table .sticky-end{inset-inline-end:var(--sticky-end)}ax-data-table .ax-data-table-wrapper table .sticky-start{inset-inline-start:var(--sticky-start)}}ax-data-table ax-data-pager{justify-content:center}ax-data-table .ax-table-footer{border-top-width:1px;border-collapse:collapse;overflow:hidden;border-color:rgba(var(--ax-comp-data-table-border-color));padding-inline-start:.875rem;padding-inline-end:.875rem;min-height:max-content}ax-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-data-table .ax-data-table-numeric-paging{display:none}ax-data-table .ax-data-table-input-paging{display:flex}ax-data-table .ax-data-table-info{display:none}@media (min-width: 1024px){ax-data-table .ax-data-table-numeric-paging{display:flex}ax-data-table .ax-data-table-input-paging{display:none}}@media (min-width: 768px){ax-data-table .ax-data-table-info{display:flex;align-items:center}ax-data-table ax-data-pager{justify-content:space-between}}.cdk-drag-preview{border-bottom-width:1px;border-inline-end-width:1px;box-shadow:0 5px 5px -3px rgba(var(--ax-sys-color-primary-900),.2),0 8px 10px 1px rgba(var(--ax-sys-color-primary-900),.14),0 3px 14px 2px rgba(var(--ax-sys-color-primary-900),.12);border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-sys-color-surface));color:rgba(var(--ax-sys-color-surface-fore));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}.ax-dropdown-command-empty-state-text{color:rgba(var(--ax-sys-color-on-surface-variant-500));font-size:.75rem}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead th{border-inline-end-width:0}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead.ax-data-table-sticky-header{box-shadow:inset 0 1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:none}}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:none}}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr td .ax-bg{border-inline-end:none}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody td{border-inline-end-width:0}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr td{border-inline-end-width:0;border-inline-start-width:0}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-end,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:none}}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{box-shadow:0 -1px rgba(var(--ax-comp-data-table-border-color))}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "component", type: AXDataPagerComponent, selector: "ax-data-pager", inputs: ["value", "name", "disabled", "readonly", "isLoading", "size", "total", "displayMode"], outputs: ["valueChange", "onValueChanged", "disabledChange", "readonlyChange", "displayModeChange", "onChanged"] }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDataPagerNumericSelectorComponent, selector: "ax-data-pager-numeric-selector" }, { kind: "component", type: AXDataPagerPageSizesComponent, selector: "ax-data-pager-page-sizes", inputs: ["sizes"] }, { kind: "component", type: AXDataPagerPrevButtonsComponent, selector: "ax-data-pager-prev-buttons" }, { kind: "component", type: AXDataPagerInputSelectorComponent, selector: "ax-data-pager-input-selector" }, { kind: "component", type: AXDataPagerNextButtonsComponent, selector: "ax-data-pager-next-buttons" }, { kind: "component", type: AXDataPagerInfoComponent, selector: "ax-data-pager-info", inputs: ["text"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "directive", type: AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2638
+ ], queries: [{ propertyName: "customDataPager", first: true, predicate: AXDataPagerComponent, descendants: true, static: true }, { propertyName: "columns", predicate: AXDataTableColumnComponent }], viewQueries: [{ propertyName: "dataPager", first: true, predicate: ["dataPager"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-header\"> </ng-content>\n<div class=\"ax-data-table-wrapper\">\n <table>\n @if (showHeader) {\n <thead [ngClass]=\"{ 'ax-data-table-sticky-header': fixedHeader }\">\n <tr\n [cdkDropListDisabled]=\"!allowReordering\"\n cdkDropList\n cdkScrollable\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-start\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n @for (c of normalColumnsList(); track $index) {\n <th\n cdkDrag\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </th>\n }\n <th></th>\n @for (c of endFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n </tr>\n </thead>\n }\n <tbody [ngClass]=\"{ 'ax-data-table-row-alternative': alternative }\">\n @if (showNoDataLoadedYet) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (noDataTemplate) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-data-yet' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else if (!displayedRows().length) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (emptyTemplate) {\n <ng-container [ngTemplateOutlet]=\"emptyTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-record' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else {\n @for (row of displayedRows(); let rowIndex = $index; track rowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row, rowIndex } }\"\n ></ng-container>\n }\n\n <ng-template #rowTemp let-data=\"data\">\n @if (rowTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n >\n </ng-container>\n } @else {\n <tr\n [class.ax-state-focused]=\"focusedRow && data.row === focusedRow\"\n [attr.data-index]=\"data.rowIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(data.row)\"\n [ngClass]=\"getRowCssClass(data.row, data.rowIndex)\"\n style.height=\"{{ itemHeight }}px\"\n style.max-height=\"{{ itemHeight }}px\"\n (click)=\"handleRowClick($event, data.row)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"getCellCssClass(data.row, c, calculateRowIndex(data.rowIndex))\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"\n c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\n \"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"getCellCssClass(data.row, c, calculateRowIndex(data.rowIndex))\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"\n c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\n \"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n <td><div class=\"ax-bg\"></div></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"getCellCssClass(data.row, c, calculateRowIndex(data.rowIndex))\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"\n c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\n \"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n </tr>\n @if (data.row?.__meta__?.expanded) {\n @if (rowDetailsTemplate) {\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n <td class=\"ax-data-table-row-details\" [attr.colspan]=\"normalColumnsList().length + 1\">\n <ng-container\n [ngTemplateOutlet]=\"rowDetailsTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n ></ng-container>\n </td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n </tr>\n }\n @for (childRow of data.row.children; let childRowIndex = $index; track childRowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row: childRow, rowIndex: childRowIndex } }\"\n ></ng-container>\n }\n }\n }\n </ng-template>\n\n <tr class=\"empty-row\"></tr>\n }\n </tbody>\n @if (showFooter) {\n <tfoot [ngClass]=\"{ 'ax-data-table-sticky-footer': fixedFooter }\">\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-start\"\n [class.ax-data-table-sticky-footer-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </td>\n }\n <td></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n </tr>\n </tfoot>\n }\n </table>\n</div>\n\n@if (paging) {\n <div class=\"ax-table-footer\" #footerContainer>\n <ng-template #customPager>\n <ng-content select=\"ax-data-pager\"></ng-content>\n </ng-template>\n\n @if (customDataPager) {\n <ng-container [ngTemplateOutlet]=\"customPager\"></ng-container>\n } @else {\n <ax-data-pager\n #dataPager\n [displayMode]=\"'custom'\"\n (onChanged)=\"handleChangePage($event)\"\n [total]=\"dataSource.totalCount\"\n [size]=\"dataSource.pageSize\"\n [isLoading]=\"isLoading()\"\n >\n <ax-prefix class=\"ax-data-table-numeric-paging\">\n <ax-data-pager-numeric-selector> </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes> </ax-data-pager-page-sizes>\n </ax-prefix>\n <ax-prefix class=\"ax-data-table-input-paging\">\n <ax-data-pager-prev-buttons> </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector> </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons> </ax-data-pager-next-buttons>\n </ax-prefix>\n <ax-suffix class=\"ax-data-table-info\">\n <ax-data-pager-info> </ax-data-pager-info>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh({ reset: false })\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-data-pager>\n }\n </div>\n}\n<ng-content select=\"ax-footer\"> </ng-content>\n", styles: ["ax-data-table{--ax-comp-data-table-font-size: .875rem;--ax-comp-data-table-line-height: 1rem;--ax-comp-data-table-border-color: var(--ax-sys-color-border-surface);--ax-comp-data-table-border-radius: var(--ax-sys-border-radius);--ax-comp-data-table-column-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-lightest-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-primary-lightest-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-lighter-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-interactive-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-highlight-bg-color: var(--ax-sys-color-warning-lighter-surface);--ax-comp-data-table-highlight-text-color: var(--ax-sys-color-on-warning-lighter-surface);--ax-comp-data-table-highlight-border-color: var(--ax-sys-color-warning-500)}ax-data-table .ax-highlight{background:rgb(var(--ax-comp-data-table-highlight-bg-color));color:rgb(var(--ax-comp-data-table-highlight-text-color));padding:0 .125rem;font-weight:500;box-shadow:0 0 0 1px rgba(var(--ax-comp-data-table-highlight-border-color),.25)}ax-infinite-scroll-data-table{--ax-comp-data-table-highlight-bg-color: var(--ax-sys-color-warning-lighter-surface);--ax-comp-data-table-highlight-text-color: var(--ax-sys-color-on-warning-lighter-surface);--ax-comp-data-table-highlight-border-color: var(--ax-sys-color-warning-500)}ax-infinite-scroll-data-table .ax-highlight{background:rgb(var(--ax-comp-data-table-highlight-bg-color));color:rgb(var(--ax-comp-data-table-highlight-text-color));padding:0 .125rem;font-weight:500;box-shadow:0 0 0 1px rgba(var(--ax-comp-data-table-highlight-border-color),.25)}.ax-dark ax-data-table{--ax-comp-data-table-column-bg-color: var(--ax-sys-color-darkest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-dark-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-data-table-highlight-bg-color: var(--ax-sys-color-warning-dark-surface);--ax-comp-data-table-highlight-text-color: var(--ax-sys-color-on-warning-dark-surface);--ax-comp-data-table-highlight-border-color: var(--ax-sys-color-warning-400)}.ax-dark ax-infinite-scroll-data-table{--ax-comp-data-table-highlight-bg-color: var(--ax-sys-color-warning-dark-surface);--ax-comp-data-table-highlight-text-color: var(--ax-sys-color-on-warning-dark-surface);--ax-comp-data-table-highlight-border-color: var(--ax-sys-color-warning-400)}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table{display:flex;flex-direction:column;height:100%;width:100%;font-size:var(--ax-comp-data-table-font-size);line-height:var(--ax-comp-data-table-line-height);border-radius:var(--ax-comp-data-table-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));position:relative;min-height:inherit;overflow:hidden}ax-data-table td.ax-data-table-empty-data{background:transparent!important;position:absolute!important;padding:2rem 1rem;text-align:center;vertical-align:middle;height:8rem;border-bottom:none;top:50%;transform:translateY(-50%);width:100%}ax-data-table td.ax-data-table-empty-data span{color:rgb(var(--ax-sys-color-ghost-500));font-size:var(--ax-comp-data-table-font-size);display:flex;height:100%;align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper{overflow:auto;width:100%;flex:1;border-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table{display:table;height:100%;width:100%;table-layout:fixed;overflow-x:auto}ax-data-table .ax-data-table-wrapper table thead{overflow:hidden;border-start-end-radius:var(--ax-comp-data-table-border-radius);border-start-start-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table thead th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-header-bg-color));color:rgba(var(--ax-comp-data-table-header-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle{position:absolute;inset-inline-end:0px;top:0;bottom:0;width:.25rem;height:100%;cursor:col-resize;background:transparent}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover{background-color:rgba(var(--ax-comp-data-table-handler-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-data-table .ax-data-table-wrapper table thead th:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table thead.ax-data-table-sticky-header{position:sticky;top:0;border-top:none;border-bottom:none;z-index:3;box-shadow:inset 1px 1px 0 2px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell{position:sticky;z-index:2;background-color:rgba(var(--ax-comp-data-table-column-bg-color));border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tbody tr td{z-index:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-data-table-cell-tooltip-wrapper{position:relative;min-height:inherit}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-bg{top:0;left:0;z-index:-1;width:100%;height:100%;position:absolute;border-inline-end:1px solid rgba(var(--ax-comp-data-table-border-color));background-color:transparent;opacity:.3}ax-data-table .ax-data-table-wrapper table tbody .empty-row{height:auto!important}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td{background-color:rgba(var(--ax-comp-data-table-alternative-bg-color));color:rgba(var(--ax-comp-data-table-alternative-text-color))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) ax-skeleton{width:25%}ax-data-table .ax-data-table-wrapper table tbody tr{height:2.5rem;max-height:2.5rem}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-lightest-surface));color:rgba(var(--ax-sys-color-on-primary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-primary-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-light-surface));color:rgba(var(--ax-sys-color-on-primary-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-surface));color:rgba(var(--ax-sys-color-on-primary-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-dark-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-lightest-surface));color:rgba(var(--ax-sys-color-on-secondary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-secondary-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-secondary-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-light-surface));color:rgba(var(--ax-sys-color-on-secondary-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-secondary-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-surface));color:rgba(var(--ax-sys-color-on-secondary-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-secondary-dark-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-lightest-surface));color:rgba(var(--ax-sys-color-on-success-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-success-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-success-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-light-surface));color:rgba(var(--ax-sys-color-on-success-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-success-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-surface));color:rgba(var(--ax-sys-color-on-success-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-success-dark-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-lightest-surface));color:rgba(var(--ax-sys-color-on-warning-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-warning-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-warning-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-light-surface));color:rgba(var(--ax-sys-color-on-warning-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-warning-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-surface));color:rgba(var(--ax-sys-color-on-warning-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-warning-dark-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-lightest-surface));color:rgba(var(--ax-sys-color-on-danger-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-danger-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-danger-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-light-surface));color:rgba(var(--ax-sys-color-on-danger-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-danger-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-surface));color:rgba(var(--ax-sys-color-on-danger-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-danger-dark-surface));opacity:1}@keyframes ax-data-table-row-primary-pulse{0%,to{background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-primary-lighter-surface))}}@keyframes ax-data-table-row-secondary-pulse{0%,to{background-color:rgba(var(--ax-sys-color-secondary-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-secondary-lighter-surface))}}@keyframes ax-data-table-row-success-pulse{0%,to{background-color:rgba(var(--ax-sys-color-success-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-success-lighter-surface))}}@keyframes ax-data-table-row-warning-pulse{0%,to{background-color:rgba(var(--ax-sys-color-warning-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-warning-lighter-surface))}}@keyframes ax-data-table-row-danger-pulse{0%,to{background-color:rgba(var(--ax-sys-color-danger-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-danger-lighter-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-primary-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-primary-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-secondary-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-secondary-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-success-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-success-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-warning-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-warning-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-danger-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-danger-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-focus-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-focus-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-column-bg-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.5rem;padding-bottom:.5rem;vertical-align:middle}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler{padding-inline-start:.25rem;padding-inline-end:.25rem;cursor:pointer}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler.has-parent{padding-inline-start:1.5rem!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-comp-data-table-index-bg-color));color:rgba(var(--ax-comp-data-table-index-text-color));text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column .ax-data-table-cell-tooltip-wrapper{display:flex;align-items:center;justify-content:center;width:100%}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column .ax-data-table-row-highlight-badge{position:static;display:inline-flex;align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column{text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button{--ax-comp-button-font-size: .75rem;--ax-comp-button-padding-x: .25rem;--ax-comp-button-decorator-padding-x: .25rem;--ax-comp-button-icon-only-font-size: .875rem;--ax-sys-size-base: 1.5rem;margin-left:.25rem;margin-right:.25rem}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button ax-loading .ax-loader{width:.75rem!important;height:.75rem!important;border-width:2px!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-comp-data-table-border-radius);border-style:none;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover:not(ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-selected,ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-disabled){opacity:.75}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:active{opacity:1}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-data-table .ax-data-table-wrapper table tbody td:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table tbody td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem;background-color:rgba(var(--ax-comp-data-table-skeleton-bg-color))}ax-data-table .ax-data-table-wrapper table tfoot tr td{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-footer-bg-color));color:rgba(var(--ax-comp-data-table-footer-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{position:sticky;bottom:-1px;border-top:none;border-bottom:none;z-index:3;box-shadow:1px 0 rgba(var(--ax-comp-data-table-border-color)),0 -1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table .sticky-end{inset-inline-end:var(--sticky-end)}ax-data-table .ax-data-table-wrapper table .sticky-start{inset-inline-start:var(--sticky-start)}}ax-data-table ax-data-pager{justify-content:center}ax-data-table .ax-table-footer{border-top-width:1px;border-collapse:collapse;overflow:hidden;border-color:rgba(var(--ax-comp-data-table-border-color));padding-inline-start:.875rem;padding-inline-end:.875rem;min-height:max-content}ax-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-data-table .ax-data-table-numeric-paging{display:none}ax-data-table .ax-data-table-input-paging{display:flex}ax-data-table .ax-data-table-info{display:none}@media (min-width: 1024px){ax-data-table .ax-data-table-numeric-paging{display:flex}ax-data-table .ax-data-table-input-paging{display:none}}@media (min-width: 768px){ax-data-table .ax-data-table-info{display:flex;align-items:center}ax-data-table ax-data-pager{justify-content:space-between}}.cdk-drag-preview{border-bottom-width:1px;border-inline-end-width:1px;box-shadow:0 5px 5px -3px rgba(var(--ax-sys-color-primary-900),.2),0 8px 10px 1px rgba(var(--ax-sys-color-primary-900),.14),0 3px 14px 2px rgba(var(--ax-sys-color-primary-900),.12);border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-sys-color-surface));color:rgba(var(--ax-sys-color-surface-fore));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}.ax-dropdown-command-empty-state-text{color:rgba(var(--ax-sys-color-on-surface-variant-500));font-size:.75rem}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead th{border-inline-end-width:0}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead.ax-data-table-sticky-header{box-shadow:inset 0 1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:none}}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:none}}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr td .ax-bg{border-inline-end:none}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody td{border-inline-end-width:0}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr td{border-inline-end-width:0;border-inline-start-width:0}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-end,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:none}}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{box-shadow:0 -1px rgba(var(--ax-comp-data-table-border-color))}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep", "cdkDropListElementContainer", "cdkDropListHasAnchor"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "directive", type: CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "component", type: AXDataPagerComponent, selector: "ax-data-pager", inputs: ["value", "name", "disabled", "readonly", "isLoading", "size", "total", "displayMode"], outputs: ["valueChange", "onValueChanged", "disabledChange", "readonlyChange", "displayModeChange", "onChanged"] }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDataPagerNumericSelectorComponent, selector: "ax-data-pager-numeric-selector" }, { kind: "component", type: AXDataPagerPageSizesComponent, selector: "ax-data-pager-page-sizes", inputs: ["sizes"] }, { kind: "component", type: AXDataPagerPrevButtonsComponent, selector: "ax-data-pager-prev-buttons" }, { kind: "component", type: AXDataPagerInputSelectorComponent, selector: "ax-data-pager-input-selector" }, { kind: "component", type: AXDataPagerNextButtonsComponent, selector: "ax-data-pager-next-buttons" }, { kind: "component", type: AXDataPagerInfoComponent, selector: "ax-data-pager-info", inputs: ["text"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "directive", type: AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "pipe", type: AXTranslatorPipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2280
2639
  }
2281
2640
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXDataTableComponent, decorators: [{
2282
2641
  type: Component,
2283
2642
  args: [{ selector: 'ax-data-table', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
2284
2643
  ngSkipHydration: 'true',
2285
2644
  '[class.ax-data-table-look-minimal]': 'look() === "minimal"',
2286
- }, inputs: ['dataSource', 'selectedRows', 'parentField', 'hasChildrenField', 'rowDetailsTemplate'], outputs: ['selectedRowsChange'], providers: [
2645
+ }, inputs: [
2646
+ 'dataSource',
2647
+ 'selectedRows',
2648
+ 'parentField',
2649
+ 'hasChildrenField',
2650
+ 'rowDetailsTemplate',
2651
+ 'rowCssClass',
2652
+ 'cellCssClass',
2653
+ 'highlightText',
2654
+ ], outputs: ['selectedRowsChange'], providers: [
2287
2655
  { provide: AXBaseDataTable, useExisting: AXDataTableComponent },
2288
2656
  AXUnsubscriber,
2289
2657
  { provide: AXComponent, useExisting: AXDataTableComponent },
@@ -2307,7 +2675,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImpor
2307
2675
  AsyncPipe,
2308
2676
  AXTranslatorPipe,
2309
2677
  AXTooltipDirective,
2310
- ], template: "<ng-content select=\"ax-header\"> </ng-content>\n<div class=\"ax-data-table-wrapper\">\n <table>\n @if (showHeader) {\n <thead [ngClass]=\"{ 'ax-data-table-sticky-header': fixedHeader }\">\n <tr\n [cdkDropListDisabled]=\"!allowReordering\"\n cdkDropList\n cdkScrollable\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-start\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n @for (c of normalColumnsList(); track $index) {\n <th\n cdkDrag\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </th>\n }\n <th></th>\n @for (c of endFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n </tr>\n </thead>\n }\n <tbody [ngClass]=\"{ 'ax-data-table-row-alternative': alternative }\">\n @if (showNoDataLoadedYet) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (noDataTemplate) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-data-yet' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else if (!displayedRows().length) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (emptyTemplate) {\n <ng-container [ngTemplateOutlet]=\"emptyTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-record' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else {\n @for (row of displayedRows(); let rowIndex = $index; track rowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row, rowIndex } }\"\n ></ng-container>\n }\n\n <ng-template #rowTemp let-data=\"data\">\n @if (rowTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n >\n </ng-container>\n } @else {\n <tr\n [class.ax-state-focused]=\"focusedRow && data.row === focusedRow\"\n [attr.data-index]=\"data.rowIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(data.row)\"\n style.height=\"{{ itemHeight }}px\"\n style.max-height=\"{{ itemHeight }}px\"\n (click)=\"handleRowClick($event, data.row)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n <td><div class=\"ax-bg\"></div></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"c.cssClass\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n </tr>\n @if (data.row?.__meta__?.expanded) {\n @if (rowDetailsTemplate) {\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n <td class=\"ax-data-table-row-details\" [attr.colspan]=\"normalColumnsList().length + 1\">\n <ng-container\n [ngTemplateOutlet]=\"rowDetailsTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n ></ng-container>\n </td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n </tr>\n }\n @for (childRow of data.row.children; let childRowIndex = $index; track childRowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row: childRow, rowIndex: childRowIndex } }\"\n ></ng-container>\n }\n }\n }\n </ng-template>\n\n <tr class=\"empty-row\"></tr>\n }\n </tbody>\n @if (showFooter) {\n <tfoot [ngClass]=\"{ 'ax-data-table-sticky-footer': fixedFooter }\">\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-start\"\n [class.ax-data-table-sticky-footer-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </td>\n }\n <td></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n </tr>\n </tfoot>\n }\n </table>\n</div>\n\n@if (paging) {\n <div class=\"ax-table-footer\" #footerContainer>\n <ng-template #customPager>\n <ng-content select=\"ax-data-pager\"></ng-content>\n </ng-template>\n\n @if (customDataPager) {\n <ng-container [ngTemplateOutlet]=\"customPager\"></ng-container>\n } @else {\n <ax-data-pager\n #dataPager\n [displayMode]=\"'custom'\"\n (onChanged)=\"handleChangePage($event)\"\n [total]=\"dataSource.totalCount\"\n [size]=\"dataSource.pageSize\"\n [isLoading]=\"isLoading()\"\n >\n <ax-prefix class=\"ax-data-table-numeric-paging\">\n <ax-data-pager-numeric-selector> </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes> </ax-data-pager-page-sizes>\n </ax-prefix>\n <ax-prefix class=\"ax-data-table-input-paging\">\n <ax-data-pager-prev-buttons> </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector> </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons> </ax-data-pager-next-buttons>\n </ax-prefix>\n <ax-suffix class=\"ax-data-table-info\">\n <ax-data-pager-info> </ax-data-pager-info>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh({ reset: false })\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-data-pager>\n }\n </div>\n}\n<ng-content select=\"ax-footer\"> </ng-content>\n", styles: ["ax-data-table{--ax-comp-data-table-font-size: .875rem;--ax-comp-data-table-line-height: 1rem;--ax-comp-data-table-border-color: var(--ax-sys-color-border-surface);--ax-comp-data-table-border-radius: var(--ax-sys-border-radius);--ax-comp-data-table-column-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-lightest-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-primary-lightest-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-lighter-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-interactive-bg-color: var(--ax-sys-color-light-surface)}.ax-dark ax-data-table{--ax-comp-data-table-column-bg-color: var(--ax-sys-color-darkest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-dark-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-dark-surface)}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table{display:flex;flex-direction:column;height:100%;width:100%;font-size:var(--ax-comp-data-table-font-size);line-height:var(--ax-comp-data-table-line-height);border-radius:var(--ax-comp-data-table-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));position:relative;min-height:inherit;overflow:hidden}ax-data-table td.ax-data-table-empty-data{background:transparent!important;position:absolute!important;padding:2rem 1rem;text-align:center;vertical-align:middle;height:8rem;border-bottom:none;top:50%;transform:translateY(-50%);width:100%}ax-data-table td.ax-data-table-empty-data span{color:rgb(var(--ax-sys-color-ghost-500));font-size:var(--ax-comp-data-table-font-size);display:flex;height:100%;align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper{overflow:auto;width:100%;flex:1;border-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table{display:table;height:100%;width:100%;table-layout:fixed;overflow-x:auto}ax-data-table .ax-data-table-wrapper table thead{overflow:hidden;border-start-end-radius:var(--ax-comp-data-table-border-radius);border-start-start-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table thead th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-header-bg-color));color:rgba(var(--ax-comp-data-table-header-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle{position:absolute;inset-inline-end:0px;top:0;bottom:0;width:.25rem;height:100%;cursor:col-resize;background:transparent}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover{background-color:rgba(var(--ax-comp-data-table-handler-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-data-table .ax-data-table-wrapper table thead th:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table thead.ax-data-table-sticky-header{position:sticky;top:0;border-top:none;border-bottom:none;z-index:3;box-shadow:inset 1px 1px 0 2px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell{position:sticky;z-index:2;background-color:rgba(var(--ax-comp-data-table-column-bg-color));border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tbody tr td{z-index:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-data-table-cell-tooltip-wrapper{position:relative;min-height:inherit}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-bg{top:0;left:0;z-index:-1;width:100%;height:100%;position:absolute;border-inline-end:1px solid rgba(var(--ax-comp-data-table-border-color));background-color:transparent;opacity:.3}ax-data-table .ax-data-table-wrapper table tbody .empty-row{height:auto!important}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td{background-color:rgba(var(--ax-comp-data-table-alternative-bg-color));color:rgba(var(--ax-comp-data-table-alternative-text-color))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) ax-skeleton{width:25%}ax-data-table .ax-data-table-wrapper table tbody tr{height:2.5rem;max-height:2.5rem}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-focus-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-focus-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-column-bg-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.5rem;padding-bottom:.5rem;vertical-align:middle}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler{padding-inline-start:.25rem;padding-inline-end:.25rem;cursor:pointer}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler.has-parent{padding-inline-start:1.5rem!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-comp-data-table-index-bg-color));color:rgba(var(--ax-comp-data-table-index-text-color));text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column{text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button{--ax-comp-button-font-size: .75rem;--ax-comp-button-padding-x: .25rem;--ax-comp-button-decorator-padding-x: .25rem;--ax-comp-button-icon-only-font-size: .875rem;--ax-sys-size-base: 1.5rem;margin-left:.25rem;margin-right:.25rem}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button ax-loading .ax-loader{width:.75rem!important;height:.75rem!important;border-width:2px!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-comp-data-table-border-radius);border-style:none;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover:not(ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-selected,ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-disabled){opacity:.75}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:active{opacity:1}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-data-table .ax-data-table-wrapper table tbody td:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table tbody td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem;background-color:rgba(var(--ax-comp-data-table-skeleton-bg-color))}ax-data-table .ax-data-table-wrapper table tfoot tr td{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-footer-bg-color));color:rgba(var(--ax-comp-data-table-footer-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{position:sticky;bottom:-1px;border-top:none;border-bottom:none;z-index:3;box-shadow:1px 0 rgba(var(--ax-comp-data-table-border-color)),0 -1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table .sticky-end{inset-inline-end:var(--sticky-end)}ax-data-table .ax-data-table-wrapper table .sticky-start{inset-inline-start:var(--sticky-start)}}ax-data-table ax-data-pager{justify-content:center}ax-data-table .ax-table-footer{border-top-width:1px;border-collapse:collapse;overflow:hidden;border-color:rgba(var(--ax-comp-data-table-border-color));padding-inline-start:.875rem;padding-inline-end:.875rem;min-height:max-content}ax-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-data-table .ax-data-table-numeric-paging{display:none}ax-data-table .ax-data-table-input-paging{display:flex}ax-data-table .ax-data-table-info{display:none}@media (min-width: 1024px){ax-data-table .ax-data-table-numeric-paging{display:flex}ax-data-table .ax-data-table-input-paging{display:none}}@media (min-width: 768px){ax-data-table .ax-data-table-info{display:flex;align-items:center}ax-data-table ax-data-pager{justify-content:space-between}}.cdk-drag-preview{border-bottom-width:1px;border-inline-end-width:1px;box-shadow:0 5px 5px -3px rgba(var(--ax-sys-color-primary-900),.2),0 8px 10px 1px rgba(var(--ax-sys-color-primary-900),.14),0 3px 14px 2px rgba(var(--ax-sys-color-primary-900),.12);border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-sys-color-surface));color:rgba(var(--ax-sys-color-surface-fore));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}.ax-dropdown-command-empty-state-text{color:rgba(var(--ax-sys-color-on-surface-variant-500));font-size:.75rem}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead th{border-inline-end-width:0}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead.ax-data-table-sticky-header{box-shadow:inset 0 1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:none}}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:none}}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr td .ax-bg{border-inline-end:none}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody td{border-inline-end-width:0}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr td{border-inline-end-width:0;border-inline-start-width:0}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-end,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:none}}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{box-shadow:0 -1px rgba(var(--ax-comp-data-table-border-color))}\n"] }]
2678
+ ], template: "<ng-content select=\"ax-header\"> </ng-content>\n<div class=\"ax-data-table-wrapper\">\n <table>\n @if (showHeader) {\n <thead [ngClass]=\"{ 'ax-data-table-sticky-header': fixedHeader }\">\n <tr\n [cdkDropListDisabled]=\"!allowReordering\"\n cdkDropList\n cdkScrollable\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-start\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n @for (c of normalColumnsList(); track $index) {\n <th\n cdkDrag\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </th>\n }\n <th></th>\n @for (c of endFixedColumnsList(); track $index) {\n <th\n cdkDrag\n [cdkDragDisabled]=\"true\"\n cdkDragLockAxis=\"x\"\n class=\"ax-data-table-head-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderHeaderTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </th>\n }\n </tr>\n </thead>\n }\n <tbody [ngClass]=\"{ 'ax-data-table-row-alternative': alternative }\">\n @if (showNoDataLoadedYet) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (noDataTemplate) {\n <ng-container [ngTemplateOutlet]=\"noDataTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-data-yet' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else if (!displayedRows().length) {\n <tr style=\"display: inherit\">\n <td class=\"ax-data-table-empty-data\" [attr.colspan]=\"columnsList().length + 1\">\n @if (emptyTemplate) {\n <ng-container [ngTemplateOutlet]=\"emptyTemplate\"></ng-container>\n } @else {\n <span>{{ '@acorex:common.general.no-record' | translate | async }}</span>\n }\n </td>\n </tr>\n } @else {\n @for (row of displayedRows(); let rowIndex = $index; track rowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row, rowIndex } }\"\n ></ng-container>\n }\n\n <ng-template #rowTemp let-data=\"data\">\n @if (rowTemplate) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n >\n </ng-container>\n } @else {\n <tr\n [class.ax-state-focused]=\"focusedRow && data.row === focusedRow\"\n [attr.data-index]=\"data.rowIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(data.row)\"\n [ngClass]=\"getRowCssClass(data.row, data.rowIndex)\"\n style.height=\"{{ itemHeight }}px\"\n style.max-height=\"{{ itemHeight }}px\"\n (click)=\"handleRowClick($event, data.row)\"\n >\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"getCellCssClass(data.row, c, calculateRowIndex(data.rowIndex))\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"\n c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\n \"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"getCellCssClass(data.row, c, calculateRowIndex(data.rowIndex))\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"\n c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\n \"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n <td><div class=\"ax-bg\"></div></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n [attr.data-label]=\"c.caption\"\n tabindex=\"0\"\n [class]=\"getCellCssClass(data.row, c, calculateRowIndex(data.rowIndex))\"\n >\n <div class=\"ax-bg\"></div>\n <span\n class=\"ax-data-table-cell-tooltip-wrapper\"\n [axTooltip]=\"\n c.hasTitle && data.row && !isLoading() ? getCellTooltipText(c, data.row) || null : null\n \"\n >\n @if (data.row && !isLoading()) {\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{\n $implicit: { data: data.row, rowIndex: calculateRowIndex(data.rowIndex) },\n }\"\n ></ng-container>\n } @else {\n @if (c.loadingEnabled && loading.enabled) {\n @if (loading.loadingTemplate) {\n <ng-container [ngTemplateOutlet]=\"loading.loadingTemplate\"></ng-container>\n } @else {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n }\n </span>\n </td>\n }\n </tr>\n @if (data.row?.__meta__?.expanded) {\n @if (rowDetailsTemplate) {\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-start]=\"true\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n <td class=\"ax-data-table-row-details\" [attr.colspan]=\"normalColumnsList().length + 1\">\n <ng-container\n [ngTemplateOutlet]=\"rowDetailsTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: data.row, rowIndex: data.rowIndex } }\"\n ></ng-container>\n </td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n [style.width]=\"c.width\"\n [class.ax-data-table-sticky-body-cell]=\"c.fixed && c.width\"\n [class.sticky-end]=\"true\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-bg\"></div>\n </td>\n }\n </tr>\n }\n @for (childRow of data.row.children; let childRowIndex = $index; track childRowIndex) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemp\"\n [ngTemplateOutletContext]=\"{ data: { row: childRow, rowIndex: childRowIndex } }\"\n ></ng-container>\n }\n }\n }\n </ng-template>\n\n <tr class=\"empty-row\"></tr>\n }\n </tbody>\n @if (showFooter) {\n <tfoot [ngClass]=\"{ 'ax-data-table-sticky-footer': fixedFooter }\">\n <tr>\n @for (c of startFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-start\"\n [class.ax-data-table-sticky-footer-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-last]=\"c['isLastFixedColumn']\"\n [style.--sticky-start]=\"c['stickyStart']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n @for (c of normalColumnsList(); track $index) {\n <td\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n @if (c.allowResizing && !c.fixed) {\n <div\n class=\"ax-resize-handle\"\n (mousedown)=\"onResizeColumnStart($event, this.startFixedColumnsList().length + $index)\"\n (dblclick)=\"onResizeHandlerDoubleClick($event, this.startFixedColumnsList().length + $index)\"\n title=\"Double-click to auto-fit column width\"\n ></div>\n }\n </td>\n }\n <td></td>\n @for (c of endFixedColumnsList(); track $index) {\n <td\n class=\"ax-data-table-sticky-footer-cell sticky-end\"\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [class.ax-data-table-sticky-header-cell]=\"c.fixed && c.width\"\n [style.width]=\"c.width\"\n [class.ax-state-is-first]=\"c['isFirstFixedColumn']\"\n [style.--sticky-end]=\"c['stickyEnd']\"\n >\n <div class=\"ax-caption\">\n <ng-container\n [ngTemplateOutlet]=\"c.renderFooterTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: c, rows: displayedRows(), rowIndex: $index } }\"\n ></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n </td>\n }\n </tr>\n </tfoot>\n }\n </table>\n</div>\n\n@if (paging) {\n <div class=\"ax-table-footer\" #footerContainer>\n <ng-template #customPager>\n <ng-content select=\"ax-data-pager\"></ng-content>\n </ng-template>\n\n @if (customDataPager) {\n <ng-container [ngTemplateOutlet]=\"customPager\"></ng-container>\n } @else {\n <ax-data-pager\n #dataPager\n [displayMode]=\"'custom'\"\n (onChanged)=\"handleChangePage($event)\"\n [total]=\"dataSource.totalCount\"\n [size]=\"dataSource.pageSize\"\n [isLoading]=\"isLoading()\"\n >\n <ax-prefix class=\"ax-data-table-numeric-paging\">\n <ax-data-pager-numeric-selector> </ax-data-pager-numeric-selector>\n <ax-data-pager-page-sizes> </ax-data-pager-page-sizes>\n </ax-prefix>\n <ax-prefix class=\"ax-data-table-input-paging\">\n <ax-data-pager-prev-buttons> </ax-data-pager-prev-buttons>\n <ax-data-pager-input-selector> </ax-data-pager-input-selector>\n <ax-data-pager-next-buttons> </ax-data-pager-next-buttons>\n </ax-prefix>\n <ax-suffix class=\"ax-data-table-info\">\n <ax-data-pager-info> </ax-data-pager-info>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh({ reset: false })\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </ax-suffix>\n </ax-data-pager>\n }\n </div>\n}\n<ng-content select=\"ax-footer\"> </ng-content>\n", styles: ["ax-data-table{--ax-comp-data-table-font-size: .875rem;--ax-comp-data-table-line-height: 1rem;--ax-comp-data-table-border-color: var(--ax-sys-color-border-surface);--ax-comp-data-table-border-radius: var(--ax-sys-border-radius);--ax-comp-data-table-column-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-lightest-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-primary-lightest-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-lighter-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-interactive-bg-color: var(--ax-sys-color-light-surface);--ax-comp-data-table-highlight-bg-color: var(--ax-sys-color-warning-lighter-surface);--ax-comp-data-table-highlight-text-color: var(--ax-sys-color-on-warning-lighter-surface);--ax-comp-data-table-highlight-border-color: var(--ax-sys-color-warning-500)}ax-data-table .ax-highlight{background:rgb(var(--ax-comp-data-table-highlight-bg-color));color:rgb(var(--ax-comp-data-table-highlight-text-color));padding:0 .125rem;font-weight:500;box-shadow:0 0 0 1px rgba(var(--ax-comp-data-table-highlight-border-color),.25)}ax-infinite-scroll-data-table{--ax-comp-data-table-highlight-bg-color: var(--ax-sys-color-warning-lighter-surface);--ax-comp-data-table-highlight-text-color: var(--ax-sys-color-on-warning-lighter-surface);--ax-comp-data-table-highlight-border-color: var(--ax-sys-color-warning-500)}ax-infinite-scroll-data-table .ax-highlight{background:rgb(var(--ax-comp-data-table-highlight-bg-color));color:rgb(var(--ax-comp-data-table-highlight-text-color));padding:0 .125rem;font-weight:500;box-shadow:0 0 0 1px rgba(var(--ax-comp-data-table-highlight-border-color),.25)}.ax-dark ax-data-table{--ax-comp-data-table-column-bg-color: var(--ax-sys-color-darkest-surface);--ax-comp-data-table-header-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-header-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-footer-bg-color: var(--ax-sys-color-darker-surface);--ax-comp-data-table-footer-text-color: var(--ax-sys-color-on-darker-surface);--ax-comp-data-table-hover-bg-color: var(--ax-sys-color-primary-light-surface);--ax-comp-data-table-hover-text-color: var(--ax-sys-color-on-light-surface);--ax-comp-data-table-focus-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-selected-bg-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-data-table-selected-hover-bg-color: var(--ax-sys-color-primary-surface);--ax-comp-data-table-index-bg-color: var(--ax-sys-color-dark-surface);--ax-comp-data-table-index-text-color: var(--ax-sys-color-on-dark-surface);--ax-comp-data-table-skeleton-bg-color: var(--ax-sys-color-lighter-surface);--ax-comp-data-table-alternative-bg-color: var(--ax-sys-color-surface);--ax-comp-data-table-alternative-text-color: var(--ax-sys-color-on-surface);--ax-comp-data-table-handler-bg-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-data-table-highlight-bg-color: var(--ax-sys-color-warning-dark-surface);--ax-comp-data-table-highlight-text-color: var(--ax-sys-color-on-warning-dark-surface);--ax-comp-data-table-highlight-border-color: var(--ax-sys-color-warning-400)}.ax-dark ax-infinite-scroll-data-table{--ax-comp-data-table-highlight-bg-color: var(--ax-sys-color-warning-dark-surface);--ax-comp-data-table-highlight-text-color: var(--ax-sys-color-on-warning-dark-surface);--ax-comp-data-table-highlight-border-color: var(--ax-sys-color-warning-400)}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table thead th.ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}html[dir=rtl] ax-data-table .ax-data-table-wrapper table tbody td.ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table{display:flex;flex-direction:column;height:100%;width:100%;font-size:var(--ax-comp-data-table-font-size);line-height:var(--ax-comp-data-table-line-height);border-radius:var(--ax-comp-data-table-border-radius);border-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));position:relative;min-height:inherit;overflow:hidden}ax-data-table td.ax-data-table-empty-data{background:transparent!important;position:absolute!important;padding:2rem 1rem;text-align:center;vertical-align:middle;height:8rem;border-bottom:none;top:50%;transform:translateY(-50%);width:100%}ax-data-table td.ax-data-table-empty-data span{color:rgb(var(--ax-sys-color-ghost-500));font-size:var(--ax-comp-data-table-font-size);display:flex;height:100%;align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper{overflow:auto;width:100%;flex:1;border-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table{display:table;height:100%;width:100%;table-layout:fixed;overflow-x:auto}ax-data-table .ax-data-table-wrapper table thead{overflow:hidden;border-start-end-radius:var(--ax-comp-data-table-border-radius);border-start-start-radius:var(--ax-comp-data-table-border-radius)}ax-data-table .ax-data-table-wrapper table thead th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-header-bg-color));color:rgba(var(--ax-comp-data-table-header-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table thead th.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle{position:absolute;inset-inline-end:0px;top:0;bottom:0;width:.25rem;height:100%;cursor:col-resize;background:transparent}ax-data-table .ax-data-table-wrapper table thead th .ax-resize-handle:hover{background-color:rgba(var(--ax-comp-data-table-handler-bg-color))}ax-data-table .ax-data-table-wrapper table thead th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-data-table .ax-data-table-wrapper table thead th:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table thead.ax-data-table-sticky-header{position:sticky;top:0;border-top:none;border-bottom:none;z-index:3;box-shadow:inset 1px 1px 0 2px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell{position:sticky;z-index:2;background-color:rgba(var(--ax-comp-data-table-column-bg-color));border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tbody tr td{z-index:0;position:relative}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-data-table-cell-tooltip-wrapper{position:relative;min-height:inherit}ax-data-table .ax-data-table-wrapper table tbody tr td .ax-bg{top:0;left:0;z-index:-1;width:100%;height:100%;position:absolute;border-inline-end:1px solid rgba(var(--ax-comp-data-table-border-color));background-color:transparent;opacity:.3}ax-data-table .ax-data-table-wrapper table tbody .empty-row{height:auto!important}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) td{background-color:rgba(var(--ax-comp-data-table-alternative-bg-color));color:rgba(var(--ax-comp-data-table-alternative-text-color))}ax-data-table .ax-data-table-wrapper table tbody.ax-data-table-row-alternative tr:nth-child(2n) ax-skeleton{width:25%}ax-data-table .ax-data-table-wrapper table tbody tr{height:2.5rem;max-height:2.5rem}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-lightest-surface));color:rgba(var(--ax-sys-color-on-primary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-primary-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-light-surface));color:rgba(var(--ax-sys-color-on-primary-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-surface));color:rgba(var(--ax-sys-color-on-primary-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-primary-dark-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-lightest-surface));color:rgba(var(--ax-sys-color-on-secondary-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-secondary-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-secondary-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-light-surface));color:rgba(var(--ax-sys-color-on-secondary-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-secondary-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-surface));color:rgba(var(--ax-sys-color-on-secondary-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-secondary-dark-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-lightest-surface));color:rgba(var(--ax-sys-color-on-success-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-success-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-success-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-light-surface));color:rgba(var(--ax-sys-color-on-success-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-success-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-surface));color:rgba(var(--ax-sys-color-on-success-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-success-dark-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-lightest-surface));color:rgba(var(--ax-sys-color-on-warning-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-warning-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-warning-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-light-surface));color:rgba(var(--ax-sys-color-on-warning-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-warning-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-surface));color:rgba(var(--ax-sys-color-on-warning-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-warning-dark-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-lightest-surface));color:rgba(var(--ax-sys-color-on-danger-lightest-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger td:not(.ax-index-column) .ax-bg{background-color:transparent}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger .ax-data-table-sticky-body-cell:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-lightest-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger:hover:not(.ax-state-selected) td:not(.ax-index-column){color:rgba(var(--ax-sys-color-on-danger-lighter-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger:hover:not(.ax-state-selected) td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-danger-lighter-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-light-surface));color:rgba(var(--ax-sys-color-on-danger-light-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-danger-surface));opacity:1}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-surface));color:rgba(var(--ax-sys-color-on-danger-surface))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-sys-color-danger-dark-surface));opacity:1}@keyframes ax-data-table-row-primary-pulse{0%,to{background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-primary-lighter-surface))}}@keyframes ax-data-table-row-secondary-pulse{0%,to{background-color:rgba(var(--ax-sys-color-secondary-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-secondary-lighter-surface))}}@keyframes ax-data-table-row-success-pulse{0%,to{background-color:rgba(var(--ax-sys-color-success-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-success-lighter-surface))}}@keyframes ax-data-table-row-warning-pulse{0%,to{background-color:rgba(var(--ax-sys-color-warning-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-warning-lighter-surface))}}@keyframes ax-data-table-row-danger-pulse{0%,to{background-color:rgba(var(--ax-sys-color-danger-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-danger-lighter-surface))}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-primary-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-primary.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-primary-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-secondary-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-secondary.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-secondary-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-success-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-success.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-success-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-warning-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-warning.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-warning-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-danger-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tbody tr.ax-row-color-danger.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-danger-pulse 1.2s ease-in-out infinite}}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-focus-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-focused td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-focus-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-bg-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column){color:rgba(var(--ax-comp-data-table-selected-hover-text-color))}ax-data-table .ax-data-table-wrapper table tbody tr.ax-state-selected:hover td:not(.ax-index-column) .ax-bg{background-color:rgba(var(--ax-comp-data-table-selected-hover-bg-color))}ax-data-table .ax-data-table-wrapper table tbody td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-column-bg-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.5rem;padding-bottom:.5rem;vertical-align:middle}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler{padding-inline-start:.25rem;padding-inline-end:.25rem;cursor:pointer}ax-data-table .ax-data-table-wrapper table tbody td .ax-expand-handler.has-parent{padding-inline-start:1.5rem!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-comp-data-table-index-bg-color));color:rgba(var(--ax-comp-data-table-index-text-color));text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column .ax-data-table-cell-tooltip-wrapper{display:flex;align-items:center;justify-content:center;width:100%}ax-data-table .ax-data-table-wrapper table tbody td.ax-index-column .ax-data-table-row-highlight-badge{position:static;display:inline-flex;align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column{text-align:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button{--ax-comp-button-font-size: .75rem;--ax-comp-button-padding-x: .25rem;--ax-comp-button-decorator-padding-x: .25rem;--ax-comp-button-icon-only-font-size: .875rem;--ax-sys-size-base: 1.5rem;margin-left:.25rem;margin-right:.25rem}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button ax-loading .ax-loader{width:.75rem!important;height:.75rem!important;border-width:2px!important}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-comp-data-table-border-radius);border-style:none;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover:not(ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-selected,ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:hover.ax-state-disabled){opacity:.75}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button:active{opacity:1}ax-data-table .ax-data-table-wrapper table tbody td.ax-command-column ax-button button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-data-table .ax-data-table-wrapper table tbody td:last-child{border-inline-end-width:0px}ax-data-table .ax-data-table-wrapper table tbody td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem;background-color:rgba(var(--ax-comp-data-table-skeleton-bg-color))}ax-data-table .ax-data-table-wrapper table tfoot tr td{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-comp-data-table-footer-bg-color));color:rgba(var(--ax-comp-data-table-footer-text-color));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;height:2.5rem}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive{cursor:pointer}ax-data-table .ax-data-table-wrapper table tfoot tr td.ax-interactive:hover{background-color:rgba(var(--ax-comp-data-table-interactive-bg-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell{position:sticky;z-index:2;border-inline-start:none;border-inline-end:none}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start{box-shadow:inset -1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last{box-shadow:inset -2px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end{box-shadow:inset 1px 0 rgba(var(--ax-comp-data-table-border-color))}ax-data-table .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first{box-shadow:inset 2px 0 rgba(var(--ax-comp-data-table-border-color))}}ax-data-table .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{position:sticky;bottom:-1px;border-top:none;border-bottom:none;z-index:3;box-shadow:1px 0 rgba(var(--ax-comp-data-table-border-color)),0 -1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table .ax-data-table-wrapper table .sticky-end{inset-inline-end:var(--sticky-end)}ax-data-table .ax-data-table-wrapper table .sticky-start{inset-inline-start:var(--sticky-start)}}ax-data-table ax-data-pager{justify-content:center}ax-data-table .ax-table-footer{border-top-width:1px;border-collapse:collapse;overflow:hidden;border-color:rgba(var(--ax-comp-data-table-border-color));padding-inline-start:.875rem;padding-inline-end:.875rem;min-height:max-content}ax-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-data-table .ax-data-table-numeric-paging{display:none}ax-data-table .ax-data-table-input-paging{display:flex}ax-data-table .ax-data-table-info{display:none}@media (min-width: 1024px){ax-data-table .ax-data-table-numeric-paging{display:flex}ax-data-table .ax-data-table-input-paging{display:none}}@media (min-width: 768px){ax-data-table .ax-data-table-info{display:flex;align-items:center}ax-data-table ax-data-pager{justify-content:space-between}}.cdk-drag-preview{border-bottom-width:1px;border-inline-end-width:1px;box-shadow:0 5px 5px -3px rgba(var(--ax-sys-color-primary-900),.2),0 8px 10px 1px rgba(var(--ax-sys-color-primary-900),.14),0 3px 14px 2px rgba(var(--ax-sys-color-primary-900),.12);border-style:solid;border-color:rgba(var(--ax-comp-data-table-border-color));background-color:rgba(var(--ax-sys-color-surface));color:rgba(var(--ax-sys-color-surface-fore));padding-inline-start:1rem;padding-inline-end:1rem;padding-top:.75rem;padding-bottom:.75rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}.ax-dropdown-command-empty-state-text{color:rgba(var(--ax-sys-color-on-surface-variant-500));font-size:.75rem}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead th{border-inline-end-width:0}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead.ax-data-table-sticky-header{box-shadow:inset 0 1px rgba(var(--ax-comp-data-table-border-color))}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table thead .ax-data-table-sticky-header-cell.sticky-end{box-shadow:none}}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr .ax-data-table-sticky-body-cell.sticky-end{box-shadow:none}}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody tr td .ax-bg{border-inline-end:none}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tbody td{border-inline-end-width:0}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr td{border-inline-end-width:0;border-inline-start-width:0}@media screen and (min-width: 768px){ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-start.ax-state-is-last,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-footer-cell.sticky-end.ax-state-is-first,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-start,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-end,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-start.ax-state-is-last,ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot tr .ax-data-table-sticky-header-cell.sticky-end.ax-state-is-first{box-shadow:none}}ax-data-table.ax-data-table-look-minimal .ax-data-table-wrapper table tfoot.ax-data-table-sticky-footer{box-shadow:0 -1px rgba(var(--ax-comp-data-table-border-color))}\n"] }]
2311
2679
  }], propDecorators: { dataPager: [{
2312
2680
  type: ViewChild,
2313
2681
  args: ['dataPager']
@@ -2539,10 +2907,12 @@ class AXInfiniteScrollDataTableComponent extends AXBaseDataTable {
2539
2907
  this.isLoading.set(data);
2540
2908
  });
2541
2909
  this.listDataSource.source.onChanged.subscribe((data) => {
2910
+ this.clearResolvedCssClasses();
2542
2911
  this.totalRows = data.totalCount;
2543
2912
  this.hasItems = data.totalCount > 0;
2544
2913
  setTimeout(() => {
2545
2914
  this.render();
2915
+ this.scheduleTextHighlight();
2546
2916
  }, 100);
2547
2917
  });
2548
2918
  //
@@ -2648,10 +3018,24 @@ class AXInfiniteScrollDataTableComponent extends AXBaseDataTable {
2648
3018
  * Resets the index to zero and refreshes the data source.
2649
3019
  * @ignore
2650
3020
  */
2651
- refresh() {
3021
+ refresh(options = {}) {
3022
+ if (!options.preserveHighlights) {
3023
+ this.clearRowHighlights();
3024
+ }
3025
+ this.clearResolvedCssClasses();
2652
3026
  this.lastIndex = 0;
2653
3027
  this.listDataSource.refresh();
2654
3028
  }
3029
+ /**
3030
+ * @ignore
3031
+ */
3032
+ onRowHighlightsChanged() {
3033
+ this.cdr.markForCheck();
3034
+ }
3035
+ onCssClassResolved() {
3036
+ this.cdr.markForCheck();
3037
+ super.onCssClassResolved();
3038
+ }
2655
3039
  /**
2656
3040
  * @ignore
2657
3041
  */
@@ -2731,15 +3115,24 @@ class AXInfiniteScrollDataTableComponent extends AXBaseDataTable {
2731
3115
  _handleOnScroll() {
2732
3116
  this.updateHScroll();
2733
3117
  }
3118
+ autoFitAllColumns(_options = {}) {
3119
+ console.warn('autoFitAllColumns is not supported by ax-infinite-scroll-data-table');
3120
+ }
3121
+ autoFitColumn(_columnIndex, _options = {}) {
3122
+ console.warn('autoFitColumn is not supported by ax-infinite-scroll-data-table');
3123
+ }
3124
+ autoFitColumnByName(_columnName, _options = {}) {
3125
+ console.warn('autoFitColumnByName is not supported by ax-infinite-scroll-data-table');
3126
+ }
2734
3127
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXInfiniteScrollDataTableComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
2735
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXInfiniteScrollDataTableComponent, isStandalone: true, selector: "ax-infinite-scroll-data-table", inputs: { dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null }, rowTemplate: { classPropertyName: "rowTemplate", publicName: "rowTemplate", isSignal: false, isRequired: false, transformFunction: null }, emptyTemplate: { classPropertyName: "emptyTemplate", publicName: "emptyTemplate", isSignal: false, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: false, isRequired: false, transformFunction: null }, fetchDataMode: { classPropertyName: "fetchDataMode", publicName: "fetchDataMode", isSignal: false, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: null }, focusedRow: { classPropertyName: "focusedRow", publicName: "focusedRow", isSignal: false, isRequired: false, transformFunction: null }, itemHeight: { classPropertyName: "itemHeight", publicName: "itemHeight", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { selectedRowsChange: "selectedRowsChange", onPageChanged: "onPageChanged", onRowClick: "onRowClick", onRowDbClick: "onRowDbClick", focusedRowChange: "focusedRowChange", onScrolledIndexChanged: "onScrolledIndexChanged" }, host: { properties: { "class.ax-data-table-look-minimal": "look() === \"minimal\"" } }, providers: [
3128
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.3", type: AXInfiniteScrollDataTableComponent, isStandalone: true, selector: "ax-infinite-scroll-data-table", inputs: { dataSource: { classPropertyName: "dataSource", publicName: "dataSource", isSignal: false, isRequired: false, transformFunction: null }, rowCssClass: { classPropertyName: "rowCssClass", publicName: "rowCssClass", isSignal: false, isRequired: false, transformFunction: null }, cellCssClass: { classPropertyName: "cellCssClass", publicName: "cellCssClass", isSignal: false, isRequired: false, transformFunction: null }, highlightText: { classPropertyName: "highlightText", publicName: "highlightText", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: true, isRequired: false, transformFunction: null }, rowTemplate: { classPropertyName: "rowTemplate", publicName: "rowTemplate", isSignal: false, isRequired: false, transformFunction: null }, emptyTemplate: { classPropertyName: "emptyTemplate", publicName: "emptyTemplate", isSignal: false, isRequired: false, transformFunction: null }, showHeader: { classPropertyName: "showHeader", publicName: "showHeader", isSignal: false, isRequired: false, transformFunction: null }, fetchDataMode: { classPropertyName: "fetchDataMode", publicName: "fetchDataMode", isSignal: false, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: false, isRequired: false, transformFunction: null }, focusedRow: { classPropertyName: "focusedRow", publicName: "focusedRow", isSignal: false, isRequired: false, transformFunction: null }, itemHeight: { classPropertyName: "itemHeight", publicName: "itemHeight", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { selectedRowsChange: "selectedRowsChange", onPageChanged: "onPageChanged", onRowClick: "onRowClick", onRowDbClick: "onRowDbClick", focusedRowChange: "focusedRowChange", onScrolledIndexChanged: "onScrolledIndexChanged" }, host: { properties: { "class.ax-data-table-look-minimal": "look() === \"minimal\"" } }, providers: [
2736
3129
  { provide: AXPagedComponent, useExisting: AXInfiniteScrollDataTableComponent },
2737
3130
  {
2738
3131
  provide: AXBaseDataTable,
2739
3132
  useExisting: AXInfiniteScrollDataTableComponent,
2740
3133
  },
2741
3134
  { provide: AXComponent, useExisting: AXInfiniteScrollDataTableComponent },
2742
- ], queries: [{ propertyName: "columns", predicate: AXDataTableColumnComponent }], viewQueries: [{ propertyName: "viewport", first: true, predicate: CdkVirtualScrollViewport, descendants: true, static: true }, { propertyName: "headerContainer", first: true, predicate: ["headerContainer"], descendants: true }, { propertyName: "footerContainer", first: true, predicate: ["footerContainer"], descendants: true }, { propertyName: "scrollableContainer", first: true, predicate: ["scrolling"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-header\"> </ng-content>\n<!------------------- Header contents ------------------->\n@if (showHeader) {\n <div class=\"ax-header-content\">\n <div class=\"ax-header-columns\">\n <table tabindex=\"0\" [style.width]=\"width\" #headerContainer>\n <thead>\n <tr>\n @for (c of notFixedColumn(); track c.name) {\n <th\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container [ngTemplateOutlet]=\"c.renderHeaderTemplate\"></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n <!-- @if(c.allowResizing)\n {\n <div class=\"ax-resize-handle\" [ax-table-column-resizble]=\"c\"></div>\n } -->\n </th>\n }\n <th></th>\n </tr>\n </thead>\n </table>\n </div>\n </div>\n}\n\n<!------------------- Body contents ------------------->\n<div [style.height]=\"height\" class=\"ax-body-content\">\n <div class=\"ax-body-columns\">\n <div cdkVirtualScrollingElement #scrolling [style.height]=\"'100%'\" (scroll)=\"_handleOnScroll()\">\n <cdk-virtual-scroll-viewport\n [itemSize]=\"itemHeight\"\n [style.--item-height]=\"itemHeight + 'px'\"\n (scrolledIndexChange)=\"_handleOnscrolledIndexChange($event)\"\n >\n <table tabindex=\"0\" class=\"ax-table-body ax-relative\" [style.width]=\"width\">\n <colgroup>\n @for (c of notFixedColumn(); track c.name) {\n <col [style.width]=\"c.width\" />\n }\n <col />\n </colgroup>\n <tbody>\n <ng-container\n *cdkVirtualFor=\"\n let item of listDataSource;\n templateCacheSize: 100;\n let i = index;\n trackBy: trackByIdx;\n let rIndex = index\n \"\n >\n <!------------------- custom row template------------------->\n @if (rowTemplate !== null) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n >\n </ng-container>\n } @else {\n <!------------------- normal row template------------------->\n <tr\n [class.ax-state-focused]=\"focusedRow && item === focusedRow\"\n [attr.data-index]=\"rIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(item)\"\n (click)=\"handleRowClick($event, item)\"\n >\n <!------------------- start fixed column ------------------->\n\n <!------------------- Not fixed column ------------------->\n @for (c of notFixedColumn(); track c.name) {\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"c.cssClass\">\n @if (item && !isLoading()) {\n <!------------------- render cell ------------------->\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n ></ng-container>\n } @else {\n <!------------------- render loading ------------------->\n @if (c.loadingEnabled && loading) {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n </td>\n }\n <td></td>\n </tr>\n }\n </ng-container>\n </tbody>\n </table>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n<div class=\"ax-table-footer\" #footerContainer>\n <div class=\"ax-table-info\">\n <div>Showing {{ startRowIndex }} of {{ totalRows }} items</div>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh()\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </div>\n <ng-content select=\"ax-footer\"> </ng-content>\n</div>\n", styles: ["ax-infinite-scroll-data-table{display:block;height:100%;overflow:hidden;border-radius:var(--ax-sys-border-radius);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));font-size:.875rem;line-height:1.25rem}ax-infinite-scroll-data-table table{table-layout:fixed}ax-infinite-scroll-data-table .ax-header-content{position:relative;height:3rem;overflow:hidden}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th.ax-column-fixed{pointer-events:auto}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th:not(.ax-column-fixed){visibility:hidden;background-color:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns{height:100%}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table{height:100%;overflow:hidden;border-start-end-radius:var(--ax-sys-border-radius);border-start-start-radius:var(--ax-sys-border-radius)}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.75rem 1rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive{cursor:pointer}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-secondary-200))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle{position:absolute;right:0;top:0;bottom:0;width:4px;cursor:col-resize;background:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle:hover{background-color:rgba(var(--ax-sys-color-secondary-300))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content{position:relative}ax-infinite-scroll-data-table .ax-body-content .ax-body-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns{height:100%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table{border-collapse:collapse}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) td{background-color:rgba(var(--ax-sys-color-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) ax-skeleton{width:25%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr{height:2.5rem}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-400));color:rgba(var(--ax-sys-color-on-primary))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.5rem 1rem;vertical-align:middle}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-sys-color-surface));text-align:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-sys-border-radius);border-style:none;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover:not(ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-selected,ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-disabled){opacity:.75}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:active{opacity:1}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem}ax-infinite-scroll-data-table .ax-table-footer{border-collapse:collapse;overflow:hidden;border-top-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:.5rem .875rem}ax-infinite-scroll-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-infinite-scroll-data-table.ax-data-table-look-minimal .ax-header-content .ax-header-columns>table th{border-inline-end-width:0}ax-infinite-scroll-data-table.ax-data-table-look-minimal .ax-body-content .ax-body-columns table td{border-inline-end-width:0}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "directive", type: CdkVirtualScrollableElement, selector: "[cdkVirtualScrollingElement]" }, { kind: "component", type: CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
3135
+ ], queries: [{ propertyName: "columns", predicate: AXDataTableColumnComponent }], viewQueries: [{ propertyName: "viewport", first: true, predicate: CdkVirtualScrollViewport, descendants: true, static: true }, { propertyName: "headerContainer", first: true, predicate: ["headerContainer"], descendants: true }, { propertyName: "footerContainer", first: true, predicate: ["footerContainer"], descendants: true }, { propertyName: "scrollableContainer", first: true, predicate: ["scrolling"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-header\"> </ng-content>\n<!------------------- Header contents ------------------->\n@if (showHeader) {\n <div class=\"ax-header-content\">\n <div class=\"ax-header-columns\">\n <table tabindex=\"0\" [style.width]=\"width\" #headerContainer>\n <thead>\n <tr>\n @for (c of notFixedColumn(); track c.name) {\n <th\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container [ngTemplateOutlet]=\"c.renderHeaderTemplate\"></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n <!-- @if(c.allowResizing)\n {\n <div class=\"ax-resize-handle\" [ax-table-column-resizble]=\"c\"></div>\n } -->\n </th>\n }\n <th></th>\n </tr>\n </thead>\n </table>\n </div>\n </div>\n}\n\n<!------------------- Body contents ------------------->\n<div [style.height]=\"height\" class=\"ax-body-content\">\n <div class=\"ax-body-columns\">\n <div cdkVirtualScrollingElement #scrolling [style.height]=\"'100%'\" (scroll)=\"_handleOnScroll()\">\n <cdk-virtual-scroll-viewport\n [itemSize]=\"itemHeight\"\n [style.--item-height]=\"itemHeight + 'px'\"\n (scrolledIndexChange)=\"_handleOnscrolledIndexChange($event)\"\n >\n <table tabindex=\"0\" class=\"ax-table-body ax-relative\" [style.width]=\"width\">\n <colgroup>\n @for (c of notFixedColumn(); track c.name) {\n <col [style.width]=\"c.width\" />\n }\n <col />\n </colgroup>\n <tbody>\n <ng-container\n *cdkVirtualFor=\"\n let item of listDataSource;\n templateCacheSize: 100;\n let i = index;\n trackBy: trackByIdx;\n let rIndex = index\n \"\n >\n <!------------------- custom row template------------------->\n @if (rowTemplate !== null) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n >\n </ng-container>\n } @else {\n <!------------------- normal row template------------------->\n <tr\n [class.ax-state-focused]=\"focusedRow && item === focusedRow\"\n [attr.data-index]=\"rIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(item)\"\n [ngClass]=\"getRowCssClass(item, rIndex)\"\n (click)=\"handleRowClick($event, item)\"\n >\n <!------------------- start fixed column ------------------->\n\n <!------------------- Not fixed column ------------------->\n @for (c of notFixedColumn(); track c.name; let colIndex = $index) {\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"getCellCssClass(item, c, rIndex)\">\n @if (item && !isLoading()) {\n <!------------------- render cell ------------------->\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n ></ng-container>\n } @else {\n <!------------------- render loading ------------------->\n @if (c.loadingEnabled && loading) {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n </td>\n }\n <td></td>\n </tr>\n }\n </ng-container>\n </tbody>\n </table>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n<div class=\"ax-table-footer\" #footerContainer>\n <div class=\"ax-table-info\">\n <div>Showing {{ startRowIndex }} of {{ totalRows }} items</div>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh()\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </div>\n <ng-content select=\"ax-footer\"> </ng-content>\n</div>\n", styles: ["ax-infinite-scroll-data-table{display:block;height:100%;overflow:hidden;border-radius:var(--ax-sys-border-radius);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));font-size:.875rem;line-height:1.25rem}ax-infinite-scroll-data-table table{table-layout:fixed}ax-infinite-scroll-data-table .ax-header-content{position:relative;height:3rem;overflow:hidden}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th.ax-column-fixed{pointer-events:auto}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th:not(.ax-column-fixed){visibility:hidden;background-color:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns{height:100%}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table{height:100%;overflow:hidden;border-start-end-radius:var(--ax-sys-border-radius);border-start-start-radius:var(--ax-sys-border-radius)}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.75rem 1rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive{cursor:pointer}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-secondary-200))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle{position:absolute;right:0;top:0;bottom:0;width:4px;cursor:col-resize;background:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle:hover{background-color:rgba(var(--ax-sys-color-secondary-300))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content{position:relative}ax-infinite-scroll-data-table .ax-body-content .ax-body-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns{height:100%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table{border-collapse:collapse}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) td{background-color:rgba(var(--ax-sys-color-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) ax-skeleton{width:25%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr{height:2.5rem}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-lightest-surface));color:rgba(var(--ax-sys-color-on-primary-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-lighter-surface));color:rgba(var(--ax-sys-color-on-primary-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-light-surface));color:rgba(var(--ax-sys-color-on-primary-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-surface));color:rgba(var(--ax-sys-color-on-primary-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-lightest-surface));color:rgba(var(--ax-sys-color-on-secondary-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-lighter-surface));color:rgba(var(--ax-sys-color-on-secondary-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-light-surface));color:rgba(var(--ax-sys-color-on-secondary-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-surface));color:rgba(var(--ax-sys-color-on-secondary-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-lightest-surface));color:rgba(var(--ax-sys-color-on-success-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-lighter-surface));color:rgba(var(--ax-sys-color-on-success-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-light-surface));color:rgba(var(--ax-sys-color-on-success-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-surface));color:rgba(var(--ax-sys-color-on-success-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-lightest-surface));color:rgba(var(--ax-sys-color-on-warning-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-lighter-surface));color:rgba(var(--ax-sys-color-on-warning-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-light-surface));color:rgba(var(--ax-sys-color-on-warning-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-surface));color:rgba(var(--ax-sys-color-on-warning-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-lightest-surface));color:rgba(var(--ax-sys-color-on-danger-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-lighter-surface));color:rgba(var(--ax-sys-color-on-danger-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-light-surface));color:rgba(var(--ax-sys-color-on-danger-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-surface));color:rgba(var(--ax-sys-color-on-danger-surface))}@keyframes ax-data-table-row-primary-pulse{0%,to{background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-primary-lighter-surface))}}@keyframes ax-data-table-row-secondary-pulse{0%,to{background-color:rgba(var(--ax-sys-color-secondary-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-secondary-lighter-surface))}}@keyframes ax-data-table-row-success-pulse{0%,to{background-color:rgba(var(--ax-sys-color-success-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-success-lighter-surface))}}@keyframes ax-data-table-row-warning-pulse{0%,to{background-color:rgba(var(--ax-sys-color-warning-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-warning-lighter-surface))}}@keyframes ax-data-table-row-danger-pulse{0%,to{background-color:rgba(var(--ax-sys-color-danger-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-danger-lighter-surface))}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-primary-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-primary-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-secondary-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-secondary-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-success-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-success-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-warning-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-warning-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-danger-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-danger-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-400));color:rgba(var(--ax-sys-color-on-primary))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.5rem 1rem;vertical-align:middle}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-sys-color-surface));text-align:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-sys-border-radius);border-style:none;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover:not(ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-selected,ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-disabled){opacity:.75}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:active{opacity:1}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem}ax-infinite-scroll-data-table .ax-table-footer{border-collapse:collapse;overflow:hidden;border-top-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:.5rem .875rem}ax-infinite-scroll-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-infinite-scroll-data-table.ax-data-table-look-minimal .ax-header-content .ax-header-columns>table th{border-inline-end-width:0}ax-infinite-scroll-data-table.ax-data-table-look-minimal .ax-body-content .ax-body-columns table td{border-inline-end-width:0}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "directive", type: CdkVirtualScrollableElement, selector: "[cdkVirtualScrollingElement]" }, { kind: "component", type: CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "component", type: AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2743
3136
  }
2744
3137
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: AXInfiniteScrollDataTableComponent, decorators: [{
2745
3138
  type: Component,
@@ -2752,7 +3145,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImpor
2752
3145
  { provide: AXComponent, useExisting: AXInfiniteScrollDataTableComponent },
2753
3146
  ], host: {
2754
3147
  '[class.ax-data-table-look-minimal]': 'look() === "minimal"',
2755
- }, outputs: ['selectedRowsChange'], inputs: ['dataSource'], imports: [
3148
+ }, outputs: ['selectedRowsChange'], inputs: ['dataSource', 'rowCssClass', 'cellCssClass', 'highlightText'], imports: [
3149
+ NgClass,
2756
3150
  NgTemplateOutlet,
2757
3151
  AXDecoratorIconComponent,
2758
3152
  CdkVirtualScrollableElement,
@@ -2761,7 +3155,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImpor
2761
3155
  CdkVirtualForOf,
2762
3156
  AXSkeletonComponent,
2763
3157
  AXButtonComponent,
2764
- ], template: "<ng-content select=\"ax-header\"> </ng-content>\n<!------------------- Header contents ------------------->\n@if (showHeader) {\n <div class=\"ax-header-content\">\n <div class=\"ax-header-columns\">\n <table tabindex=\"0\" [style.width]=\"width\" #headerContainer>\n <thead>\n <tr>\n @for (c of notFixedColumn(); track c.name) {\n <th\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container [ngTemplateOutlet]=\"c.renderHeaderTemplate\"></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n <!-- @if(c.allowResizing)\n {\n <div class=\"ax-resize-handle\" [ax-table-column-resizble]=\"c\"></div>\n } -->\n </th>\n }\n <th></th>\n </tr>\n </thead>\n </table>\n </div>\n </div>\n}\n\n<!------------------- Body contents ------------------->\n<div [style.height]=\"height\" class=\"ax-body-content\">\n <div class=\"ax-body-columns\">\n <div cdkVirtualScrollingElement #scrolling [style.height]=\"'100%'\" (scroll)=\"_handleOnScroll()\">\n <cdk-virtual-scroll-viewport\n [itemSize]=\"itemHeight\"\n [style.--item-height]=\"itemHeight + 'px'\"\n (scrolledIndexChange)=\"_handleOnscrolledIndexChange($event)\"\n >\n <table tabindex=\"0\" class=\"ax-table-body ax-relative\" [style.width]=\"width\">\n <colgroup>\n @for (c of notFixedColumn(); track c.name) {\n <col [style.width]=\"c.width\" />\n }\n <col />\n </colgroup>\n <tbody>\n <ng-container\n *cdkVirtualFor=\"\n let item of listDataSource;\n templateCacheSize: 100;\n let i = index;\n trackBy: trackByIdx;\n let rIndex = index\n \"\n >\n <!------------------- custom row template------------------->\n @if (rowTemplate !== null) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n >\n </ng-container>\n } @else {\n <!------------------- normal row template------------------->\n <tr\n [class.ax-state-focused]=\"focusedRow && item === focusedRow\"\n [attr.data-index]=\"rIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(item)\"\n (click)=\"handleRowClick($event, item)\"\n >\n <!------------------- start fixed column ------------------->\n\n <!------------------- Not fixed column ------------------->\n @for (c of notFixedColumn(); track c.name) {\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"c.cssClass\">\n @if (item && !isLoading()) {\n <!------------------- render cell ------------------->\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n ></ng-container>\n } @else {\n <!------------------- render loading ------------------->\n @if (c.loadingEnabled && loading) {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n </td>\n }\n <td></td>\n </tr>\n }\n </ng-container>\n </tbody>\n </table>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n<div class=\"ax-table-footer\" #footerContainer>\n <div class=\"ax-table-info\">\n <div>Showing {{ startRowIndex }} of {{ totalRows }} items</div>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh()\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </div>\n <ng-content select=\"ax-footer\"> </ng-content>\n</div>\n", styles: ["ax-infinite-scroll-data-table{display:block;height:100%;overflow:hidden;border-radius:var(--ax-sys-border-radius);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));font-size:.875rem;line-height:1.25rem}ax-infinite-scroll-data-table table{table-layout:fixed}ax-infinite-scroll-data-table .ax-header-content{position:relative;height:3rem;overflow:hidden}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th.ax-column-fixed{pointer-events:auto}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th:not(.ax-column-fixed){visibility:hidden;background-color:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns{height:100%}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table{height:100%;overflow:hidden;border-start-end-radius:var(--ax-sys-border-radius);border-start-start-radius:var(--ax-sys-border-radius)}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.75rem 1rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive{cursor:pointer}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-secondary-200))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle{position:absolute;right:0;top:0;bottom:0;width:4px;cursor:col-resize;background:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle:hover{background-color:rgba(var(--ax-sys-color-secondary-300))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content{position:relative}ax-infinite-scroll-data-table .ax-body-content .ax-body-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns{height:100%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table{border-collapse:collapse}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) td{background-color:rgba(var(--ax-sys-color-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) ax-skeleton{width:25%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr{height:2.5rem}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-400));color:rgba(var(--ax-sys-color-on-primary))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.5rem 1rem;vertical-align:middle}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-sys-color-surface));text-align:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-sys-border-radius);border-style:none;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover:not(ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-selected,ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-disabled){opacity:.75}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:active{opacity:1}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem}ax-infinite-scroll-data-table .ax-table-footer{border-collapse:collapse;overflow:hidden;border-top-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:.5rem .875rem}ax-infinite-scroll-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-infinite-scroll-data-table.ax-data-table-look-minimal .ax-header-content .ax-header-columns>table th{border-inline-end-width:0}ax-infinite-scroll-data-table.ax-data-table-look-minimal .ax-body-content .ax-body-columns table td{border-inline-end-width:0}\n"] }]
3158
+ ], template: "<ng-content select=\"ax-header\"> </ng-content>\n<!------------------- Header contents ------------------->\n@if (showHeader) {\n <div class=\"ax-header-content\">\n <div class=\"ax-header-columns\">\n <table tabindex=\"0\" [style.width]=\"width\" #headerContainer>\n <thead>\n <tr>\n @for (c of notFixedColumn(); track c.name) {\n <th\n [class.ax-interactive]=\"c.allowSorting\"\n (click)=\"c.allowSorting ? handleColumnClick($event, c) : null\"\n [style.width]=\"c.width\"\n >\n <div class=\"ax-caption\">\n <ng-container [ngTemplateOutlet]=\"c.renderHeaderTemplate\"></ng-container>\n @if (getSort(c)) {\n <ax-icon icon=\"ax-icon {{ getSort(c) }}\"></ax-icon>\n }\n </div>\n <!-- @if(c.allowResizing)\n {\n <div class=\"ax-resize-handle\" [ax-table-column-resizble]=\"c\"></div>\n } -->\n </th>\n }\n <th></th>\n </tr>\n </thead>\n </table>\n </div>\n </div>\n}\n\n<!------------------- Body contents ------------------->\n<div [style.height]=\"height\" class=\"ax-body-content\">\n <div class=\"ax-body-columns\">\n <div cdkVirtualScrollingElement #scrolling [style.height]=\"'100%'\" (scroll)=\"_handleOnScroll()\">\n <cdk-virtual-scroll-viewport\n [itemSize]=\"itemHeight\"\n [style.--item-height]=\"itemHeight + 'px'\"\n (scrolledIndexChange)=\"_handleOnscrolledIndexChange($event)\"\n >\n <table tabindex=\"0\" class=\"ax-table-body ax-relative\" [style.width]=\"width\">\n <colgroup>\n @for (c of notFixedColumn(); track c.name) {\n <col [style.width]=\"c.width\" />\n }\n <col />\n </colgroup>\n <tbody>\n <ng-container\n *cdkVirtualFor=\"\n let item of listDataSource;\n templateCacheSize: 100;\n let i = index;\n trackBy: trackByIdx;\n let rIndex = index\n \"\n >\n <!------------------- custom row template------------------->\n @if (rowTemplate !== null) {\n <ng-container\n [ngTemplateOutlet]=\"rowTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n >\n </ng-container>\n } @else {\n <!------------------- normal row template------------------->\n <tr\n [class.ax-state-focused]=\"focusedRow && item === focusedRow\"\n [attr.data-index]=\"rIndex\"\n [class.ax-state-selected]=\"selectedRows.includes(item)\"\n [ngClass]=\"getRowCssClass(item, rIndex)\"\n (click)=\"handleRowClick($event, item)\"\n >\n <!------------------- start fixed column ------------------->\n\n <!------------------- Not fixed column ------------------->\n @for (c of notFixedColumn(); track c.name; let colIndex = $index) {\n <td [attr.data-label]=\"c.caption\" tabindex=\"0\" [class]=\"getCellCssClass(item, c, rIndex)\">\n @if (item && !isLoading()) {\n <!------------------- render cell ------------------->\n <ng-container\n [ngTemplateOutlet]=\"c.renderCellTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: { data: item, rowIndex: rIndex } }\"\n ></ng-container>\n } @else {\n <!------------------- render loading ------------------->\n @if (c.loadingEnabled && loading) {\n <ax-skeleton [animated]=\"loading.animation\"></ax-skeleton>\n }\n }\n </td>\n }\n <td></td>\n </tr>\n }\n </ng-container>\n </tbody>\n </table>\n </cdk-virtual-scroll-viewport>\n </div>\n </div>\n</div>\n<div class=\"ax-table-footer\" #footerContainer>\n <div class=\"ax-table-info\">\n <div>Showing {{ startRowIndex }} of {{ totalRows }} items</div>\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"refresh()\">\n <ax-icon icon=\"ax-icon ax-icon-refresh\"></ax-icon>\n </ax-button>\n </div>\n <ng-content select=\"ax-footer\"> </ng-content>\n</div>\n", styles: ["ax-infinite-scroll-data-table{display:block;height:100%;overflow:hidden;border-radius:var(--ax-sys-border-radius);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));font-size:.875rem;line-height:1.25rem}ax-infinite-scroll-data-table table{table-layout:fixed}ax-infinite-scroll-data-table .ax-header-content{position:relative;height:3rem;overflow:hidden}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th.ax-column-fixed{pointer-events:auto}ax-infinite-scroll-data-table .ax-header-content .ax-header-fixed-columns th:not(.ax-column-fixed){visibility:hidden;background-color:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns{height:100%}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table{height:100%;overflow:hidden;border-start-end-radius:var(--ax-sys-border-radius);border-start-start-radius:var(--ax-sys-border-radius)}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th{border-bottom-width:1px;border-inline-end-width:1px;border-style:solid;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.75rem 1rem;text-align:start;font-weight:500;text-transform:uppercase;position:relative}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive{cursor:pointer}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th.ax-interactive:hover{background-color:rgba(var(--ax-sys-color-secondary-200))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle{position:absolute;right:0;top:0;bottom:0;width:4px;cursor:col-resize;background:transparent}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-resize-handle:hover{background-color:rgba(var(--ax-sys-color-secondary-300))}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th .ax-caption{display:flex;align-items:center;gap:.5rem}ax-infinite-scroll-data-table .ax-header-content .ax-header-columns>table th:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content{position:relative}ax-infinite-scroll-data-table .ax-body-content .ax-body-fixed-columns{pointer-events:none;position:absolute;z-index:10}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns{height:100%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table{border-collapse:collapse}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) td{background-color:rgba(var(--ax-sys-color-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:nth-child(2n) ax-skeleton{width:25%}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr{height:2.5rem}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-lightest-surface));color:rgba(var(--ax-sys-color-on-primary-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-lighter-surface));color:rgba(var(--ax-sys-color-on-primary-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-light-surface));color:rgba(var(--ax-sys-color-on-primary-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-surface));color:rgba(var(--ax-sys-color-on-primary-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-lightest-surface));color:rgba(var(--ax-sys-color-on-secondary-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-lighter-surface));color:rgba(var(--ax-sys-color-on-secondary-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-light-surface));color:rgba(var(--ax-sys-color-on-secondary-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-secondary-surface));color:rgba(var(--ax-sys-color-on-secondary-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-lightest-surface));color:rgba(var(--ax-sys-color-on-success-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-lighter-surface));color:rgba(var(--ax-sys-color-on-success-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-light-surface));color:rgba(var(--ax-sys-color-on-success-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-success-surface));color:rgba(var(--ax-sys-color-on-success-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-lightest-surface));color:rgba(var(--ax-sys-color-on-warning-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-lighter-surface));color:rgba(var(--ax-sys-color-on-warning-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-light-surface));color:rgba(var(--ax-sys-color-on-warning-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-warning-surface));color:rgba(var(--ax-sys-color-on-warning-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-lightest-surface));color:rgba(var(--ax-sys-color-on-danger-lightest-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger:hover:not(.ax-state-selected) td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-lighter-surface));color:rgba(var(--ax-sys-color-on-danger-lighter-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-light-surface));color:rgba(var(--ax-sys-color-on-danger-light-surface))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-danger-surface));color:rgba(var(--ax-sys-color-on-danger-surface))}@keyframes ax-data-table-row-primary-pulse{0%,to{background-color:rgba(var(--ax-sys-color-primary-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-primary-lighter-surface))}}@keyframes ax-data-table-row-secondary-pulse{0%,to{background-color:rgba(var(--ax-sys-color-secondary-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-secondary-lighter-surface))}}@keyframes ax-data-table-row-success-pulse{0%,to{background-color:rgba(var(--ax-sys-color-success-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-success-lighter-surface))}}@keyframes ax-data-table-row-warning-pulse{0%,to{background-color:rgba(var(--ax-sys-color-warning-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-warning-lighter-surface))}}@keyframes ax-data-table-row-danger-pulse{0%,to{background-color:rgba(var(--ax-sys-color-danger-lightest-surface))}50%{background-color:rgba(var(--ax-sys-color-danger-lighter-surface))}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-primary-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-primary.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-primary-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-secondary-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-secondary.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-secondary-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-success-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-success.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-success-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-warning-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-warning.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-warning-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger.ax-row-color-pulse td:not(.ax-index-column){animation:ax-data-table-row-danger-pulse 1.2s ease-in-out infinite}@media screen and (min-width: 768px){ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-row-color-danger.ax-row-color-pulse td.ax-data-table-sticky-body-cell:not(.ax-index-column){animation:ax-data-table-row-danger-pulse 1.2s ease-in-out infinite}}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-200));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-focused:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-300));color:rgba(var(--ax-sys-color-on-primary-tint))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table tr.ax-state-selected:hover td:not(.ax-index-column){background-color:rgba(var(--ax-sys-color-primary-400));color:rgba(var(--ax-sys-color-on-primary))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td{position:relative;min-width:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom-width:1px;border-inline-end-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface));padding:.5rem 1rem;vertical-align:middle}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-index-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:rgba(var(--ax-sys-color-surface));text-align:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button.ax-state-disabled{position:relative!important;cursor:not-allowed!important;opacity:.5!important}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column>div{position:absolute;inset-inline-start:0px;top:50%;display:flex;width:100%;transform:translateY(-50%);align-items:center;justify-content:center}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button{position:relative;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--ax-sys-border-radius);border-style:none;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:transparent;padding:.25rem;color:rgba(var(--ax-color-ghost-fore))}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover:not(ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-selected,ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:hover.ax-state-disabled){opacity:.75}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button:active{opacity:1}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td.ax-command-column button .ax-ripple{background-color:rgba(var(--ax-color-ghost-fore),.05)}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td:last-child{border-inline-end-width:0px}ax-infinite-scroll-data-table .ax-body-content .ax-body-columns table td ax-skeleton{height:.875rem;width:33.333333%;border-radius:.375rem}ax-infinite-scroll-data-table .ax-table-footer{border-collapse:collapse;overflow:hidden;border-top-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:.5rem .875rem}ax-infinite-scroll-data-table .ax-table-footer .ax-table-info{display:flex;flex:1 1 0%;align-items:center;justify-content:space-between}ax-infinite-scroll-data-table.ax-data-table-look-minimal .ax-header-content .ax-header-columns>table th{border-inline-end-width:0}ax-infinite-scroll-data-table.ax-data-table-look-minimal .ax-body-content .ax-body-columns table td{border-inline-end-width:0}\n"] }]
2765
3159
  }], propDecorators: { columns: [{
2766
3160
  type: ContentChildren,
2767
3161
  args: [AXDataTableColumnComponent]
@@ -2881,6 +3275,7 @@ class AXDataTableModule {
2881
3275
  AXFormatModule,
2882
3276
  AXDataPagerModule, AXInfiniteScrollDataTableComponent,
2883
3277
  AXDataTableComponent,
3278
+ AXRowIndexColumnComponent,
2884
3279
  AXRowSelectColumnComponent,
2885
3280
  AXRowCommandColumnComponent,
2886
3281
  AXRowDropdownCommandColumnComponent] }); }
@@ -2898,5 +3293,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImpor
2898
3293
  * Generated bundle index. Do not edit.
2899
3294
  */
2900
3295
 
2901
- export { AXBaseDataTable, AXBaseRowCommandColumnComponent, AXDataTableColumnComponent, AXDataTableColumnResizableDirective, AXDataTableComponent, AXDataTableModule, AXDataTableTextColumnComponent, AXInfiniteScrollDataTableComponent, AXRowCommandColumnComponent, AXRowDropdownCommandColumnComponent, AXRowExpandColumnComponent, AXRowIndexColumnComponent, AXRowSelectColumnComponent };
3296
+ export { AXBaseDataTable, AXBaseRowCommandColumnComponent, AXDataTableColumnComponent, AXDataTableColumnResizableDirective, AXDataTableComponent, AXDataTableModule, AXDataTableTextColumnComponent, AXInfiniteScrollDataTableComponent, AXRowCommandColumnComponent, AXRowDropdownCommandColumnComponent, AXRowExpandColumnComponent, AXRowIndexColumnComponent, AXRowSelectColumnComponent, AX_DATA_TABLE_ROW_COLOR_TYPES, AX_DATA_TABLE_ROW_HIGHLIGHT_DEFAULT_BADGE };
2902
3297
  //# sourceMappingURL=acorex-components-data-table.mjs.map