@infineon/infineon-design-system-stencil 39.4.4--canary.2134.84be7b9e85db8400d052b6d3b5addde807790384.0 → 39.4.4--canary.2136.61ca080385a85b28f9e73c1ac2fcb72fcc5e023a.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/_commonjsHelpers-CFO10eej.js +10 -0
- package/dist/cjs/_commonjsHelpers-CFO10eej.js.map +1 -0
- package/dist/cjs/ifx-action-list-item.cjs.entry.js +2 -1
- package/dist/cjs/ifx-action-list-item.cjs.entry.js.map +1 -1
- package/dist/cjs/ifx-action-list-item.entry.cjs.js.map +1 -1
- package/dist/cjs/ifx-basic-table.cjs.entry.js +2 -1
- package/dist/cjs/ifx-basic-table.cjs.entry.js.map +1 -1
- package/dist/cjs/ifx-basic-table.entry.cjs.js.map +1 -1
- package/dist/cjs/ifx-button.cjs.entry.js +146 -0
- package/dist/cjs/ifx-button.cjs.entry.js.map +1 -0
- package/dist/cjs/ifx-button.entry.cjs.js.map +1 -0
- package/dist/cjs/ifx-checkbox.cjs.entry.js +125 -0
- package/dist/cjs/ifx-checkbox.cjs.entry.js.map +1 -0
- package/dist/cjs/ifx-checkbox.entry.cjs.js.map +1 -0
- package/dist/cjs/ifx-chip.ifx-chip-item.ifx-pagination.entry.cjs.js.map +1 -0
- package/dist/cjs/ifx-chip_3.cjs.entry.js +615 -0
- package/dist/cjs/ifx-chip_3.cjs.entry.js.map +1 -0
- package/dist/cjs/ifx-icon-button.cjs.entry.js +76 -0
- package/dist/cjs/ifx-icon-button.cjs.entry.js.map +1 -0
- package/dist/cjs/ifx-icon-button.entry.cjs.js.map +1 -0
- package/dist/cjs/ifx-icon.cjs.entry.js +127 -0
- package/dist/cjs/ifx-icon.cjs.entry.js.map +1 -0
- package/dist/cjs/ifx-icon.entry.cjs.js.map +1 -0
- package/dist/cjs/ifx-indicator.cjs.entry.js +42 -0
- package/dist/cjs/ifx-indicator.cjs.entry.js.map +1 -0
- package/dist/cjs/ifx-indicator.entry.cjs.js.map +1 -0
- package/dist/cjs/ifx-link.cjs.entry.js +2 -1
- package/dist/cjs/ifx-link.cjs.entry.js.map +1 -1
- package/dist/cjs/ifx-link.entry.cjs.js.map +1 -1
- package/dist/cjs/ifx-search-field.cjs.entry.js +2 -1
- package/dist/cjs/ifx-search-field.cjs.entry.js.map +1 -1
- package/dist/cjs/ifx-search-field.entry.cjs.js.map +1 -1
- package/dist/cjs/ifx-select.cjs.entry.js +7323 -0
- package/dist/cjs/ifx-select.cjs.entry.js.map +1 -0
- package/dist/cjs/ifx-select.entry.cjs.js.map +1 -0
- package/dist/cjs/ifx-spinner.ifx-text-field.entry.cjs.js.map +1 -1
- package/dist/cjs/ifx-spinner_2.cjs.entry.js +2 -1
- package/dist/cjs/ifx-spinner_2.cjs.entry.js.map +1 -1
- package/dist/cjs/ifx-status.cjs.entry.js +1 -1
- package/dist/cjs/ifx-status.cjs.entry.js.map +1 -1
- package/dist/cjs/ifx-status.entry.cjs.js.map +1 -1
- package/dist/cjs/ifx-table.cjs.entry.js +1118 -0
- package/dist/cjs/ifx-table.cjs.entry.js.map +1 -0
- package/dist/cjs/ifx-table.entry.cjs.js.map +1 -0
- package/dist/cjs/{index-DihxupoM.js → index-CVw4GUo6.js} +4 -7
- package/dist/{esm/index-Beav1bNT.js.map → cjs/index-CVw4GUo6.js.map} +1 -1
- package/dist/cjs/index-Dc5gCGlQ.js +30 -2
- package/dist/cjs/infineon-design-system-stencil.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/components/status/status.css +1 -1
- package/dist/collection/components/table-advanced-version/table.js +38 -137
- package/dist/collection/components/table-advanced-version/table.js.map +1 -1
- package/dist/components/ifx-status.js +1 -1
- package/dist/components/ifx-status.js.map +1 -1
- package/dist/components/ifx-table.js +37 -136
- package/dist/components/ifx-table.js.map +1 -1
- package/dist/esm/_commonjsHelpers-B85MJLTf.js +8 -0
- package/dist/esm/_commonjsHelpers-B85MJLTf.js.map +1 -0
- package/dist/esm/ifx-action-list-item.entry.js +2 -1
- package/dist/esm/ifx-action-list-item.entry.js.map +1 -1
- package/dist/esm/ifx-basic-table.entry.js +2 -1
- package/dist/esm/ifx-basic-table.entry.js.map +1 -1
- package/dist/esm/ifx-button.entry.js +144 -0
- package/dist/esm/ifx-button.entry.js.map +1 -0
- package/dist/esm/ifx-checkbox.entry.js +123 -0
- package/dist/esm/ifx-checkbox.entry.js.map +1 -0
- package/dist/esm/ifx-chip.ifx-chip-item.ifx-pagination.entry.js.map +1 -0
- package/dist/esm/ifx-chip_3.entry.js +611 -0
- package/dist/esm/ifx-chip_3.entry.js.map +1 -0
- package/dist/esm/ifx-icon-button.entry.js +74 -0
- package/dist/esm/ifx-icon-button.entry.js.map +1 -0
- package/dist/esm/ifx-icon.entry.js +125 -0
- package/dist/esm/ifx-icon.entry.js.map +1 -0
- package/dist/esm/ifx-indicator.entry.js +40 -0
- package/dist/esm/ifx-indicator.entry.js.map +1 -0
- package/dist/esm/ifx-link.entry.js +2 -1
- package/dist/esm/ifx-link.entry.js.map +1 -1
- package/dist/esm/ifx-search-field.entry.js +2 -1
- package/dist/esm/ifx-search-field.entry.js.map +1 -1
- package/dist/esm/ifx-select.entry.js +7321 -0
- package/dist/esm/ifx-select.entry.js.map +1 -0
- package/dist/esm/ifx-spinner.ifx-text-field.entry.js.map +1 -1
- package/dist/esm/ifx-spinner_2.entry.js +2 -1
- package/dist/esm/ifx-spinner_2.entry.js.map +1 -1
- package/dist/esm/ifx-status.entry.js +1 -1
- package/dist/esm/ifx-status.entry.js.map +1 -1
- package/dist/esm/ifx-table.entry.js +1116 -0
- package/dist/esm/ifx-table.entry.js.map +1 -0
- package/dist/esm/{index-Beav1bNT.js → index-Bt32KzDW.js} +4 -6
- package/dist/{cjs/index-DihxupoM.js.map → esm/index-Bt32KzDW.js.map} +1 -1
- package/dist/esm/index-PqnYwNKt.js +30 -2
- package/dist/esm/infineon-design-system-stencil.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/infineon-design-system-stencil/ifx-action-list-item.entry.esm.js.map +1 -1
- package/dist/infineon-design-system-stencil/ifx-basic-table.entry.esm.js.map +1 -1
- package/dist/infineon-design-system-stencil/ifx-button.entry.esm.js.map +1 -0
- package/dist/infineon-design-system-stencil/ifx-checkbox.entry.esm.js.map +1 -0
- package/dist/infineon-design-system-stencil/ifx-chip.ifx-chip-item.ifx-pagination.entry.esm.js.map +1 -0
- package/dist/infineon-design-system-stencil/ifx-icon-button.entry.esm.js.map +1 -0
- package/dist/infineon-design-system-stencil/ifx-icon.entry.esm.js.map +1 -0
- package/dist/infineon-design-system-stencil/ifx-indicator.entry.esm.js.map +1 -0
- package/dist/infineon-design-system-stencil/ifx-link.entry.esm.js.map +1 -1
- package/dist/infineon-design-system-stencil/ifx-search-field.entry.esm.js.map +1 -1
- package/dist/infineon-design-system-stencil/ifx-select.entry.esm.js.map +1 -0
- package/dist/infineon-design-system-stencil/ifx-spinner.ifx-text-field.entry.esm.js.map +1 -1
- package/dist/infineon-design-system-stencil/ifx-status.entry.esm.js.map +1 -1
- package/dist/infineon-design-system-stencil/ifx-table.entry.esm.js.map +1 -0
- package/dist/infineon-design-system-stencil/infineon-design-system-stencil.esm.js +1 -1
- package/dist/infineon-design-system-stencil/p-169f26ae.entry.js +2 -0
- package/dist/infineon-design-system-stencil/{p-6fd710a6.entry.js.map → p-169f26ae.entry.js.map} +1 -1
- package/dist/infineon-design-system-stencil/p-39561a49.entry.js +2 -0
- package/dist/infineon-design-system-stencil/p-39561a49.entry.js.map +1 -0
- package/dist/infineon-design-system-stencil/p-3d77ef02.entry.js +2 -0
- package/dist/infineon-design-system-stencil/{p-81f0d6ad.entry.js.map → p-3d77ef02.entry.js.map} +1 -1
- package/dist/infineon-design-system-stencil/p-4da5a2a5.entry.js +2 -0
- package/dist/infineon-design-system-stencil/p-4da5a2a5.entry.js.map +1 -0
- package/dist/infineon-design-system-stencil/p-4fba0543.entry.js +2 -0
- package/dist/infineon-design-system-stencil/{p-7b705420.entry.js.map → p-4fba0543.entry.js.map} +1 -1
- package/dist/infineon-design-system-stencil/p-5e3d0ff0.entry.js +2 -0
- package/dist/infineon-design-system-stencil/p-5e3d0ff0.entry.js.map +1 -0
- package/dist/infineon-design-system-stencil/p-5fb3eb8b.entry.js +2 -0
- package/dist/infineon-design-system-stencil/p-5fb3eb8b.entry.js.map +1 -0
- package/dist/infineon-design-system-stencil/{p-f1ba768a.entry.js → p-65bc82a4.entry.js} +2 -2
- package/dist/infineon-design-system-stencil/p-65bc82a4.entry.js.map +1 -0
- package/dist/infineon-design-system-stencil/p-6e115707.entry.js +2 -0
- package/dist/infineon-design-system-stencil/{p-1b5dce92.entry.js.map → p-6e115707.entry.js.map} +1 -1
- package/dist/infineon-design-system-stencil/p-8a58c2be.entry.js +2 -0
- package/dist/infineon-design-system-stencil/p-8a58c2be.entry.js.map +1 -0
- package/dist/infineon-design-system-stencil/p-B85MJLTf.js +2 -0
- package/dist/infineon-design-system-stencil/p-B85MJLTf.js.map +1 -0
- package/dist/infineon-design-system-stencil/{p-Beav1bNT.js → p-DMLRPGid.js} +3 -3
- package/dist/infineon-design-system-stencil/{p-Beav1bNT.js.map → p-DMLRPGid.js.map} +1 -1
- package/dist/infineon-design-system-stencil/p-a85754a5.entry.js +3 -0
- package/dist/infineon-design-system-stencil/p-a85754a5.entry.js.map +1 -0
- package/dist/infineon-design-system-stencil/p-abd8bd80.entry.js +2 -0
- package/dist/infineon-design-system-stencil/p-abd8bd80.entry.js.map +1 -0
- package/dist/infineon-design-system-stencil/p-fcae5dc1.entry.js +2 -0
- package/dist/infineon-design-system-stencil/{p-646620f9.entry.js.map → p-fcae5dc1.entry.js.map} +1 -1
- package/dist/infineon-design-system-stencil/p-ff4cc197.entry.js +2 -0
- package/dist/infineon-design-system-stencil/p-ff4cc197.entry.js.map +1 -0
- package/dist/types/components/table-advanced-version/table.d.ts +0 -1
- package/package.json +1 -1
- package/dist/cjs/ifx-button.ifx-checkbox.ifx-chip.ifx-chip-item.ifx-icon.ifx-icon-button.ifx-indicator.ifx-pagination.ifx-select.ifx-table.entry.cjs.js.map +0 -1
- package/dist/cjs/ifx-button_10.cjs.entry.js +0 -9601
- package/dist/cjs/ifx-button_10.cjs.entry.js.map +0 -1
- package/dist/esm/ifx-button.ifx-checkbox.ifx-chip.ifx-chip-item.ifx-icon.ifx-icon-button.ifx-indicator.ifx-pagination.ifx-select.ifx-table.entry.js.map +0 -1
- package/dist/esm/ifx-button_10.entry.js +0 -9590
- package/dist/esm/ifx-button_10.entry.js.map +0 -1
- package/dist/infineon-design-system-stencil/ifx-button.ifx-checkbox.ifx-chip.ifx-chip-item.ifx-icon.ifx-icon-button.ifx-indicator.ifx-pagination.ifx-select.ifx-table.entry.esm.js.map +0 -1
- package/dist/infineon-design-system-stencil/p-1b5dce92.entry.js +0 -2
- package/dist/infineon-design-system-stencil/p-330f97aa.entry.js +0 -3
- package/dist/infineon-design-system-stencil/p-330f97aa.entry.js.map +0 -1
- package/dist/infineon-design-system-stencil/p-646620f9.entry.js +0 -2
- package/dist/infineon-design-system-stencil/p-6fd710a6.entry.js +0 -2
- package/dist/infineon-design-system-stencil/p-7b705420.entry.js +0 -2
- package/dist/infineon-design-system-stencil/p-81f0d6ad.entry.js +0 -2
- package/dist/infineon-design-system-stencil/p-f1ba768a.entry.js.map +0 -1
|
@@ -45,7 +45,6 @@ export class Table {
|
|
|
45
45
|
this.enableSelection = false;
|
|
46
46
|
this.selectedRows = new Set();
|
|
47
47
|
this.selectAll = false;
|
|
48
|
-
this.selectedRowsData = new Map();
|
|
49
48
|
this.showLoading = false;
|
|
50
49
|
this.originalRowData = [];
|
|
51
50
|
this.internalItemsPerPage = JSON.stringify([
|
|
@@ -55,45 +54,12 @@ export class Table {
|
|
|
55
54
|
]);
|
|
56
55
|
this.handleSelectAll = (checked) => {
|
|
57
56
|
this.selectAll = checked;
|
|
58
|
-
const newSelectedRows = new Set(this.selectedRows);
|
|
59
|
-
const newSelectedRowsData = new Map(this.selectedRowsData);
|
|
60
57
|
if (checked) {
|
|
61
|
-
|
|
62
|
-
// Server-side: select only current page rows
|
|
63
|
-
this.rowData.forEach(row => {
|
|
64
|
-
const rowId = row.__rowId;
|
|
65
|
-
newSelectedRows.add(rowId);
|
|
66
|
-
const { __checkbox, __rowId } = row, cleanRow = __rest(row, ["__checkbox", "__rowId"]);
|
|
67
|
-
newSelectedRowsData.set(rowId, cleanRow);
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
else {
|
|
71
|
-
// Client-side: select ALL rows across ALL pages
|
|
72
|
-
this.allRowData.forEach(row => {
|
|
73
|
-
const rowId = row.__rowId;
|
|
74
|
-
newSelectedRows.add(rowId);
|
|
75
|
-
const { __checkbox, __rowId } = row, cleanRow = __rest(row, ["__checkbox", "__rowId"]);
|
|
76
|
-
newSelectedRowsData.set(rowId, cleanRow);
|
|
77
|
-
});
|
|
78
|
-
}
|
|
58
|
+
this.selectedRows = new Set(this.allRowData.map(row => row.__rowId));
|
|
79
59
|
}
|
|
80
60
|
else {
|
|
81
|
-
|
|
82
|
-
// Server-side: remove only current page rows
|
|
83
|
-
this.rowData.forEach(row => {
|
|
84
|
-
const rowId = row.__rowId;
|
|
85
|
-
newSelectedRows.delete(rowId);
|
|
86
|
-
newSelectedRowsData.delete(rowId);
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
// Client-side: remove ALL rows (clear entire selection)
|
|
91
|
-
newSelectedRows.clear();
|
|
92
|
-
newSelectedRowsData.clear();
|
|
93
|
-
}
|
|
61
|
+
this.selectedRows = new Set();
|
|
94
62
|
}
|
|
95
|
-
this.selectedRows = newSelectedRows;
|
|
96
|
-
this.selectedRowsData = newSelectedRowsData;
|
|
97
63
|
this.updateCheckboxStates();
|
|
98
64
|
this.updateHeaderCheckboxState();
|
|
99
65
|
this.emitSelectionChange();
|
|
@@ -102,19 +68,14 @@ export class Table {
|
|
|
102
68
|
const clickedRowData = params.data;
|
|
103
69
|
const rowId = clickedRowData.__rowId;
|
|
104
70
|
const newSelectedRows = new Set(this.selectedRows);
|
|
105
|
-
const newSelectedRowsData = new Map(this.selectedRowsData);
|
|
106
71
|
if (newSelectedRows.has(rowId)) {
|
|
107
72
|
newSelectedRows.delete(rowId);
|
|
108
|
-
newSelectedRowsData.delete(rowId);
|
|
109
73
|
}
|
|
110
74
|
else {
|
|
111
75
|
newSelectedRows.add(rowId);
|
|
112
|
-
const { __checkbox, __rowId } = clickedRowData, cleanRow = __rest(clickedRowData, ["__checkbox", "__rowId"]);
|
|
113
|
-
newSelectedRowsData.set(rowId, cleanRow);
|
|
114
76
|
}
|
|
115
77
|
this.selectedRows = newSelectedRows;
|
|
116
|
-
this.
|
|
117
|
-
this.selectAll = newSelectedRows.size === this.rowData.length && this.rowData.length > 0;
|
|
78
|
+
this.selectAll = newSelectedRows.size === this.allRowData.length;
|
|
118
79
|
this.updateCheckboxStates();
|
|
119
80
|
this.updateHeaderCheckboxState();
|
|
120
81
|
this.emitSelectionChange();
|
|
@@ -236,21 +197,10 @@ export class Table {
|
|
|
236
197
|
var _a;
|
|
237
198
|
const headerCheckbox = (_a = this.container) === null || _a === void 0 ? void 0 : _a.querySelector('.ag-header-cell[col-id="__checkbox"] ifx-checkbox');
|
|
238
199
|
if (headerCheckbox) {
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
const someOnPageSelected = currentPageSelectedCount > 0 && currentPageSelectedCount < this.rowData.length;
|
|
244
|
-
headerCheckbox.checked = allOnPageSelected;
|
|
245
|
-
headerCheckbox.indeterminate = someOnPageSelected;
|
|
246
|
-
}
|
|
247
|
-
else {
|
|
248
|
-
// For client-side: reflect entire dataset selection
|
|
249
|
-
const allSelected = this.selectedRows.size === this.allRowData.length && this.allRowData.length > 0;
|
|
250
|
-
const someSelected = this.selectedRows.size > 0 && this.selectedRows.size < this.allRowData.length;
|
|
251
|
-
headerCheckbox.checked = allSelected;
|
|
252
|
-
headerCheckbox.indeterminate = someSelected;
|
|
253
|
-
}
|
|
200
|
+
const allSelected = this.selectedRows.size === this.allRowData.length && this.allRowData.length > 0;
|
|
201
|
+
const someSelected = this.selectedRows.size > 0 && this.selectedRows.size < this.allRowData.length;
|
|
202
|
+
headerCheckbox.checked = allSelected;
|
|
203
|
+
headerCheckbox.indeterminate = someSelected;
|
|
254
204
|
}
|
|
255
205
|
}, 0);
|
|
256
206
|
}
|
|
@@ -351,33 +301,30 @@ export class Table {
|
|
|
351
301
|
});
|
|
352
302
|
}
|
|
353
303
|
async updateTableView() {
|
|
354
|
-
// Reset select-all when loading new data in server-side mode
|
|
355
|
-
if (this.serverSidePagination) {
|
|
356
|
-
this.selectAll = false;
|
|
357
|
-
}
|
|
358
304
|
if (this.serverSidePagination && this.serverPageChangeHandler) {
|
|
359
305
|
const { rows, total } = await this.serverPageChangeHandler({
|
|
360
306
|
page: this.currentPage,
|
|
361
307
|
pageSize: this.paginationPageSize,
|
|
362
308
|
});
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
309
|
+
if (this.enableSelection) {
|
|
310
|
+
rows.forEach((row, index) => {
|
|
311
|
+
var _a;
|
|
312
|
+
if (!row.__rowId) {
|
|
313
|
+
row.__rowId = `row_${(this.currentPage - 1) * this.paginationPageSize + index}_${Date.now()}`;
|
|
314
|
+
}
|
|
315
|
+
row.__checkbox = {
|
|
316
|
+
disabled: false,
|
|
317
|
+
checked: ((_a = this.selectedRows) === null || _a === void 0 ? void 0 : _a.has(row.__rowId)) || false,
|
|
318
|
+
size: 's',
|
|
319
|
+
indeterminate: false,
|
|
320
|
+
error: false,
|
|
321
|
+
};
|
|
322
|
+
});
|
|
323
|
+
}
|
|
375
324
|
this.rowData = rows;
|
|
376
325
|
this.matchingResultsCount = total;
|
|
377
326
|
if (this.gridApi) {
|
|
378
327
|
this.gridApi.setGridOption('rowData', rows);
|
|
379
|
-
// Update header checkbox state
|
|
380
|
-
this.updateHeaderCheckboxState();
|
|
381
328
|
}
|
|
382
329
|
const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');
|
|
383
330
|
if (paginationElement) {
|
|
@@ -410,8 +357,6 @@ export class Table {
|
|
|
410
357
|
if (this.gridApi) {
|
|
411
358
|
this.gridApi.setGridOption('rowData', this.rowData);
|
|
412
359
|
}
|
|
413
|
-
// Update header checkbox state for client-side
|
|
414
|
-
this.updateHeaderCheckboxState();
|
|
415
360
|
}
|
|
416
361
|
}
|
|
417
362
|
clearAllFilters() {
|
|
@@ -569,34 +514,15 @@ export class Table {
|
|
|
569
514
|
}
|
|
570
515
|
async handlePageChange(event) {
|
|
571
516
|
this.currentPage = event.detail.currentPage;
|
|
572
|
-
// Reset the select-all checkbox state when changing pages in server-side mode
|
|
573
|
-
if (this.serverSidePagination) {
|
|
574
|
-
this.selectAll = false;
|
|
575
|
-
}
|
|
576
517
|
if (this.serverSidePagination && this.serverPageChangeHandler) {
|
|
577
518
|
const { rows, total } = await this.serverPageChangeHandler({
|
|
578
519
|
page: this.currentPage,
|
|
579
520
|
pageSize: this.paginationPageSize,
|
|
580
521
|
});
|
|
581
|
-
// Add checkbox properties to rows
|
|
582
|
-
rows.forEach((row, index) => {
|
|
583
|
-
var _a;
|
|
584
|
-
const rowId = row.sampleNumber || `row_${(this.currentPage - 1) * this.paginationPageSize + index}`;
|
|
585
|
-
row.__rowId = rowId;
|
|
586
|
-
row.__checkbox = {
|
|
587
|
-
disabled: false,
|
|
588
|
-
checked: ((_a = this.selectedRows) === null || _a === void 0 ? void 0 : _a.has(rowId)) || false,
|
|
589
|
-
size: 's',
|
|
590
|
-
indeterminate: false,
|
|
591
|
-
error: false,
|
|
592
|
-
};
|
|
593
|
-
});
|
|
594
522
|
this.rowData = rows;
|
|
595
523
|
this.matchingResultsCount = total;
|
|
596
524
|
if (this.gridApi) {
|
|
597
525
|
this.gridApi.setGridOption('rowData', this.rowData);
|
|
598
|
-
// Update header checkbox state
|
|
599
|
-
this.updateHeaderCheckboxState();
|
|
600
526
|
}
|
|
601
527
|
const paginationElement = this.host.shadowRoot.querySelector('ifx-pagination');
|
|
602
528
|
if (paginationElement) {
|
|
@@ -607,29 +533,8 @@ export class Table {
|
|
|
607
533
|
const startIndex = (this.currentPage - 1) * this.paginationPageSize;
|
|
608
534
|
const endIndex = startIndex + this.paginationPageSize;
|
|
609
535
|
const visibleRowData = this.allRowData.slice(startIndex, endIndex);
|
|
610
|
-
// Update checkbox state for visible rows
|
|
611
|
-
if (this.enableSelection) {
|
|
612
|
-
visibleRowData.forEach(row => {
|
|
613
|
-
var _a, _b;
|
|
614
|
-
if (!row.__checkbox) {
|
|
615
|
-
row.__checkbox = {
|
|
616
|
-
disabled: false,
|
|
617
|
-
checked: ((_a = this.selectedRows) === null || _a === void 0 ? void 0 : _a.has(row.__rowId)) || false,
|
|
618
|
-
size: 's',
|
|
619
|
-
indeterminate: false,
|
|
620
|
-
error: false,
|
|
621
|
-
};
|
|
622
|
-
}
|
|
623
|
-
else {
|
|
624
|
-
row.__checkbox.checked = ((_b = this.selectedRows) === null || _b === void 0 ? void 0 : _b.has(row.__rowId)) || false;
|
|
625
|
-
}
|
|
626
|
-
});
|
|
627
|
-
}
|
|
628
|
-
this.rowData = visibleRowData;
|
|
629
536
|
if (this.gridApi) {
|
|
630
537
|
this.gridApi.setGridOption('rowData', visibleRowData);
|
|
631
|
-
// Update header checkbox state for client-side too
|
|
632
|
-
this.updateHeaderCheckboxState();
|
|
633
538
|
}
|
|
634
539
|
}
|
|
635
540
|
}
|
|
@@ -679,9 +584,7 @@ export class Table {
|
|
|
679
584
|
return rows.slice(0, this.paginationPageSize);
|
|
680
585
|
}
|
|
681
586
|
updateCheckboxStates() {
|
|
682
|
-
|
|
683
|
-
const dataToUpdate = this.rowData; // Always update current page
|
|
684
|
-
dataToUpdate.forEach(row => {
|
|
587
|
+
this.allRowData.forEach(row => {
|
|
685
588
|
if (row.__checkbox) {
|
|
686
589
|
row.__checkbox.checked = this.selectedRows.has(row.__rowId);
|
|
687
590
|
}
|
|
@@ -694,21 +597,20 @@ export class Table {
|
|
|
694
597
|
}
|
|
695
598
|
}
|
|
696
599
|
emitSelectionChange() {
|
|
697
|
-
const
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
}
|
|
600
|
+
const selectedRowsData = Array.from(this.selectedRows)
|
|
601
|
+
.map(rowId => {
|
|
602
|
+
const row = this.allRowData.find(r => r.__rowId === rowId);
|
|
603
|
+
if (!row)
|
|
604
|
+
return null;
|
|
605
|
+
const { __checkbox, __rowId } = row, rowData = __rest(row, ["__checkbox", "__rowId"]);
|
|
606
|
+
return rowData;
|
|
607
|
+
})
|
|
608
|
+
.filter(row => row !== null);
|
|
707
609
|
this.host.dispatchEvent(new CustomEvent('ifxSelectionChange', {
|
|
708
610
|
detail: {
|
|
709
|
-
selectedRows:
|
|
710
|
-
selectedCount:
|
|
711
|
-
isSelectAll:
|
|
611
|
+
selectedRows: selectedRowsData,
|
|
612
|
+
selectedCount: selectedRowsData.length,
|
|
613
|
+
isSelectAll: this.selectedRows.size === this.allRowData.length && this.allRowData.length > 0,
|
|
712
614
|
},
|
|
713
615
|
bubbles: true,
|
|
714
616
|
}));
|
|
@@ -832,12 +734,12 @@ export class Table {
|
|
|
832
734
|
};
|
|
833
735
|
}
|
|
834
736
|
const filterClass = this.filterOrientation === 'topbar' ? 'topbar-layout' : this.filterOrientation === 'none' ? '' : 'sidebar-layout';
|
|
835
|
-
return (h(Host, { key: '
|
|
737
|
+
return (h(Host, { key: '66b9e97b36c201f86732fbd1452819419d739fd3' }, h("div", { key: 'a5c54e731669b840a732b9cf4de334a09c37ccb0', class: "table-container" }, this.filterOrientation === 'sidebar' && (h("div", { key: '786e0cdf15170384f5dfb34995db3f5ca3c419d4', class: "sidebar-btn" }, h("ifx-button", { key: '7097db9958849a342a4918dc96441ba4275539b1', type: "button", disabled: false, variant: "secondary", size: "m", target: "_blank", theme: "default", "full-width": "false", onClick: () => this.toggleSidebarFilters() }, h("ifx-icon", { key: '8005336599ce5aa87ddc1973f8005d8bd7a03551', icon: "cross-16" }), this.showSidebarFilters ? 'Hide Filters' : 'Show Filters'))), h("div", { key: '875c2049c9d4745ec5a40f14fab62d4394b8f63a', class: filterClass }, this.filterOrientation === 'sidebar' && this.showSidebarFilters && (h("div", { key: 'c87a5a9a5bb27915e6170ebe139bced53164136f', class: "sidebar-container" }, h("div", { key: '14420330d730046eda3e9049bd6df5fd66222693', class: "filters-title-container" }, h("span", { key: 'a8f006c463b5858daf5f9ff191287a1dc7be24ef', class: "filters-title" }, "Filters")), h("div", { key: '201324d69551491db05dae532a080460527e8a79', class: "set-filter-wrapper-sidebar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && h("slot", { key: '3a3be2bc00d1148fa21cf692a077f85625cafdec', name: "sidebar-filter" })))), this.filterOrientation !== 'none' && this.filterOrientation !== 'sidebar' && (h("div", { key: '3d20934e66c39335c8966599b13be1acc48338b2', class: "set-filter-wrapper-topbar" }, (this.filterOrientation !== 'sidebar' || this.showSidebarFilters) && h("slot", { key: 'b45be18917095b816833ac7ac30260d51a29eb5c', name: "topbar-filter" }))), h("div", { key: '490b41840efb18253618d0a838d7a31ebaac6001', class: "table-pagination-wrapper" }, this.filterOrientation !== 'none' && this.filterOrientation !== 'topbar' && this.showSidebarFilters && (h("div", { key: '51a213af18af7b58e36551239eba437bce8a2b51', class: "filter-chips" }, Object.keys(this.currentFilters).map(name => {
|
|
836
738
|
const filter = this.currentFilters[name];
|
|
837
739
|
const filterValues = filter.filterValues;
|
|
838
740
|
const isMultiSelect = filter.type !== 'text';
|
|
839
741
|
return filterValues.length > 0 ? (h("ifx-chip", { placeholder: name, size: "large", variant: isMultiSelect ? 'multi' : 'single', readOnly: true, value: filterValues, key: name }, filterValues.map(filterValue => (h("ifx-chip-item", { value: filterValue, selected: true, key: filterValue }, filterValue))))) : null;
|
|
840
|
-
}))), h("div", { key: '
|
|
742
|
+
}))), h("div", { key: '4cda426751074f84547a5f6870308ab48dfdab03', class: "headline-wrapper" }, this.filterOrientation !== 'none' && this.headline && (h("div", { key: 'c538c15f038caf9a0ba2c56a2d3e114c40112b01', class: "matching-results-container" }, h("span", { key: '9c263730471d93cfe519e4d2b68c5fbc13f612d1', class: "matching-results-count" }, "(", this.matchingResultsCount, ")"), h("span", { key: '34d9334bce111c93e6e813916a06282f11071fab', class: "matching-results-text" }, this.headline))), h("div", { key: '031ef0ce92afc9ad6fbc2c4c1b8849fcefdf7213', class: "inner-buttons-wrapper" }, h("slot", { key: '4e77698e25702ee13640fac3e24558ce5e5518b7', name: "inner-button" }))), h("div", { key: '36f1cdcd7c9560c3f3f8fbaad2d37b27e99483f5', id: "table-wrapper", class: this.getTableClassNames() }, h("div", { key: '12284c6b014a6fd63b20c8ccb95c0f181ef7557e', id: `ifxTable-${this.uniqueKey}`, class: `ifx-ag-grid ${this.variant === 'zebra' ? 'zebra' : ''}`, style: style, ref: el => (this.container = el) })), h("div", { key: '5a768d894603d010c52deb2867a8bcfd953ddaac', class: "pagination-wrapper" }, this.pagination ? (h("ifx-pagination", { total: this.serverSidePagination ? this.matchingResultsCount : this.allRowData.length, "current-page": this.currentPage, "items-per-page": this.internalItemsPerPage })) : null))))));
|
|
841
743
|
}
|
|
842
744
|
hasButtonCol() {
|
|
843
745
|
return this.getColData().some(column => column.field === 'button');
|
|
@@ -1215,8 +1117,7 @@ export class Table {
|
|
|
1215
1117
|
"showSidebarFilters": {},
|
|
1216
1118
|
"matchingResultsCount": {},
|
|
1217
1119
|
"selectedRows": {},
|
|
1218
|
-
"selectAll": {}
|
|
1219
|
-
"selectedRowsData": {}
|
|
1120
|
+
"selectAll": {}
|
|
1220
1121
|
};
|
|
1221
1122
|
}
|
|
1222
1123
|
static get methods() {
|