@ni/nimble-components 18.0.2 → 18.0.3
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/all-components-bundle.js +758 -56
- package/dist/all-components-bundle.js.map +1 -1
- package/dist/all-components-bundle.min.js +2602 -2483
- package/dist/all-components-bundle.min.js.map +1 -1
- package/dist/esm/table/index.d.ts +11 -0
- package/dist/esm/table/index.js +10 -0
- package/dist/esm/table/index.js.map +1 -1
- package/dist/esm/table/models/virtualizer.d.ts +24 -0
- package/dist/esm/table/models/virtualizer.js +98 -0
- package/dist/esm/table/models/virtualizer.js.map +1 -0
- package/dist/esm/table/styles.js +25 -1
- package/dist/esm/table/styles.js.map +1 -1
- package/dist/esm/table/template.js +18 -14
- package/dist/esm/table/template.js.map +1 -1
- package/package.json +2 -1
|
@@ -22532,7 +22532,7 @@
|
|
|
22532
22532
|
recurse(arr);
|
|
22533
22533
|
return flat;
|
|
22534
22534
|
}
|
|
22535
|
-
function memo(getDeps, fn, opts) {
|
|
22535
|
+
function memo$1(getDeps, fn, opts) {
|
|
22536
22536
|
let deps = [];
|
|
22537
22537
|
let result;
|
|
22538
22538
|
return () => {
|
|
@@ -22611,7 +22611,7 @@
|
|
|
22611
22611
|
depth,
|
|
22612
22612
|
columnDef: resolvedColumnDef,
|
|
22613
22613
|
columns: [],
|
|
22614
|
-
getFlatColumns: memo(() => [true], () => {
|
|
22614
|
+
getFlatColumns: memo$1(() => [true], () => {
|
|
22615
22615
|
var _column$columns;
|
|
22616
22616
|
return [column, ...((_column$columns = column.columns) == null ? void 0 : _column$columns.flatMap(d => d.getFlatColumns()))];
|
|
22617
22617
|
}, {
|
|
@@ -22621,7 +22621,7 @@
|
|
|
22621
22621
|
return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugColumns;
|
|
22622
22622
|
}
|
|
22623
22623
|
}),
|
|
22624
|
-
getLeafColumns: memo(() => [table._getOrderColumnsFn()], orderColumns => {
|
|
22624
|
+
getLeafColumns: memo$1(() => [table._getOrderColumnsFn()], orderColumns => {
|
|
22625
22625
|
var _column$columns2;
|
|
22626
22626
|
if ((_column$columns2 = column.columns) != null && _column$columns2.length) {
|
|
22627
22627
|
let leafColumns = column.columns.flatMap(column => column.getLeafColumns());
|
|
@@ -22687,7 +22687,7 @@
|
|
|
22687
22687
|
return {
|
|
22688
22688
|
// Header Groups
|
|
22689
22689
|
|
|
22690
|
-
getHeaderGroups: memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
|
|
22690
|
+
getHeaderGroups: memo$1(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
|
|
22691
22691
|
var _left$map$filter, _right$map$filter;
|
|
22692
22692
|
const leftColumns = (_left$map$filter = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter : [];
|
|
22693
22693
|
const rightColumns = (_right$map$filter = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter : [];
|
|
@@ -22701,7 +22701,7 @@
|
|
|
22701
22701
|
return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugHeaders;
|
|
22702
22702
|
}
|
|
22703
22703
|
}),
|
|
22704
|
-
getCenterHeaderGroups: memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
|
|
22704
|
+
getCenterHeaderGroups: memo$1(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
|
|
22705
22705
|
leafColumns = leafColumns.filter(column => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
|
|
22706
22706
|
return buildHeaderGroups(allColumns, leafColumns, table, 'center');
|
|
22707
22707
|
}, {
|
|
@@ -22711,7 +22711,7 @@
|
|
|
22711
22711
|
return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugHeaders;
|
|
22712
22712
|
}
|
|
22713
22713
|
}),
|
|
22714
|
-
getLeftHeaderGroups: memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left], (allColumns, leafColumns, left) => {
|
|
22714
|
+
getLeftHeaderGroups: memo$1(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left], (allColumns, leafColumns, left) => {
|
|
22715
22715
|
var _left$map$filter2;
|
|
22716
22716
|
const orderedLeafColumns = (_left$map$filter2 = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter2 : [];
|
|
22717
22717
|
return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'left');
|
|
@@ -22722,7 +22722,7 @@
|
|
|
22722
22722
|
return (_table$options$debugA3 = table.options.debugAll) != null ? _table$options$debugA3 : table.options.debugHeaders;
|
|
22723
22723
|
}
|
|
22724
22724
|
}),
|
|
22725
|
-
getRightHeaderGroups: memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.right], (allColumns, leafColumns, right) => {
|
|
22725
|
+
getRightHeaderGroups: memo$1(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.right], (allColumns, leafColumns, right) => {
|
|
22726
22726
|
var _right$map$filter2;
|
|
22727
22727
|
const orderedLeafColumns = (_right$map$filter2 = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter2 : [];
|
|
22728
22728
|
return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'right');
|
|
@@ -22735,7 +22735,7 @@
|
|
|
22735
22735
|
}),
|
|
22736
22736
|
// Footer Groups
|
|
22737
22737
|
|
|
22738
|
-
getFooterGroups: memo(() => [table.getHeaderGroups()], headerGroups => {
|
|
22738
|
+
getFooterGroups: memo$1(() => [table.getHeaderGroups()], headerGroups => {
|
|
22739
22739
|
return [...headerGroups].reverse();
|
|
22740
22740
|
}, {
|
|
22741
22741
|
key: 'getFooterGroups',
|
|
@@ -22744,7 +22744,7 @@
|
|
|
22744
22744
|
return (_table$options$debugA5 = table.options.debugAll) != null ? _table$options$debugA5 : table.options.debugHeaders;
|
|
22745
22745
|
}
|
|
22746
22746
|
}),
|
|
22747
|
-
getLeftFooterGroups: memo(() => [table.getLeftHeaderGroups()], headerGroups => {
|
|
22747
|
+
getLeftFooterGroups: memo$1(() => [table.getLeftHeaderGroups()], headerGroups => {
|
|
22748
22748
|
return [...headerGroups].reverse();
|
|
22749
22749
|
}, {
|
|
22750
22750
|
key: 'getLeftFooterGroups',
|
|
@@ -22753,7 +22753,7 @@
|
|
|
22753
22753
|
return (_table$options$debugA6 = table.options.debugAll) != null ? _table$options$debugA6 : table.options.debugHeaders;
|
|
22754
22754
|
}
|
|
22755
22755
|
}),
|
|
22756
|
-
getCenterFooterGroups: memo(() => [table.getCenterHeaderGroups()], headerGroups => {
|
|
22756
|
+
getCenterFooterGroups: memo$1(() => [table.getCenterHeaderGroups()], headerGroups => {
|
|
22757
22757
|
return [...headerGroups].reverse();
|
|
22758
22758
|
}, {
|
|
22759
22759
|
key: 'getCenterFooterGroups',
|
|
@@ -22762,7 +22762,7 @@
|
|
|
22762
22762
|
return (_table$options$debugA7 = table.options.debugAll) != null ? _table$options$debugA7 : table.options.debugHeaders;
|
|
22763
22763
|
}
|
|
22764
22764
|
}),
|
|
22765
|
-
getRightFooterGroups: memo(() => [table.getRightHeaderGroups()], headerGroups => {
|
|
22765
|
+
getRightFooterGroups: memo$1(() => [table.getRightHeaderGroups()], headerGroups => {
|
|
22766
22766
|
return [...headerGroups].reverse();
|
|
22767
22767
|
}, {
|
|
22768
22768
|
key: 'getRightFooterGroups',
|
|
@@ -22773,7 +22773,7 @@
|
|
|
22773
22773
|
}),
|
|
22774
22774
|
// Flat Headers
|
|
22775
22775
|
|
|
22776
|
-
getFlatHeaders: memo(() => [table.getHeaderGroups()], headerGroups => {
|
|
22776
|
+
getFlatHeaders: memo$1(() => [table.getHeaderGroups()], headerGroups => {
|
|
22777
22777
|
return headerGroups.map(headerGroup => {
|
|
22778
22778
|
return headerGroup.headers;
|
|
22779
22779
|
}).flat();
|
|
@@ -22784,7 +22784,7 @@
|
|
|
22784
22784
|
return (_table$options$debugA9 = table.options.debugAll) != null ? _table$options$debugA9 : table.options.debugHeaders;
|
|
22785
22785
|
}
|
|
22786
22786
|
}),
|
|
22787
|
-
getLeftFlatHeaders: memo(() => [table.getLeftHeaderGroups()], left => {
|
|
22787
|
+
getLeftFlatHeaders: memo$1(() => [table.getLeftHeaderGroups()], left => {
|
|
22788
22788
|
return left.map(headerGroup => {
|
|
22789
22789
|
return headerGroup.headers;
|
|
22790
22790
|
}).flat();
|
|
@@ -22795,7 +22795,7 @@
|
|
|
22795
22795
|
return (_table$options$debugA10 = table.options.debugAll) != null ? _table$options$debugA10 : table.options.debugHeaders;
|
|
22796
22796
|
}
|
|
22797
22797
|
}),
|
|
22798
|
-
getCenterFlatHeaders: memo(() => [table.getCenterHeaderGroups()], left => {
|
|
22798
|
+
getCenterFlatHeaders: memo$1(() => [table.getCenterHeaderGroups()], left => {
|
|
22799
22799
|
return left.map(headerGroup => {
|
|
22800
22800
|
return headerGroup.headers;
|
|
22801
22801
|
}).flat();
|
|
@@ -22806,7 +22806,7 @@
|
|
|
22806
22806
|
return (_table$options$debugA11 = table.options.debugAll) != null ? _table$options$debugA11 : table.options.debugHeaders;
|
|
22807
22807
|
}
|
|
22808
22808
|
}),
|
|
22809
|
-
getRightFlatHeaders: memo(() => [table.getRightHeaderGroups()], left => {
|
|
22809
|
+
getRightFlatHeaders: memo$1(() => [table.getRightHeaderGroups()], left => {
|
|
22810
22810
|
return left.map(headerGroup => {
|
|
22811
22811
|
return headerGroup.headers;
|
|
22812
22812
|
}).flat();
|
|
@@ -22819,7 +22819,7 @@
|
|
|
22819
22819
|
}),
|
|
22820
22820
|
// Leaf Headers
|
|
22821
22821
|
|
|
22822
|
-
getCenterLeafHeaders: memo(() => [table.getCenterFlatHeaders()], flatHeaders => {
|
|
22822
|
+
getCenterLeafHeaders: memo$1(() => [table.getCenterFlatHeaders()], flatHeaders => {
|
|
22823
22823
|
return flatHeaders.filter(header => {
|
|
22824
22824
|
var _header$subHeaders;
|
|
22825
22825
|
return !((_header$subHeaders = header.subHeaders) != null && _header$subHeaders.length);
|
|
@@ -22831,7 +22831,7 @@
|
|
|
22831
22831
|
return (_table$options$debugA13 = table.options.debugAll) != null ? _table$options$debugA13 : table.options.debugHeaders;
|
|
22832
22832
|
}
|
|
22833
22833
|
}),
|
|
22834
|
-
getLeftLeafHeaders: memo(() => [table.getLeftFlatHeaders()], flatHeaders => {
|
|
22834
|
+
getLeftLeafHeaders: memo$1(() => [table.getLeftFlatHeaders()], flatHeaders => {
|
|
22835
22835
|
return flatHeaders.filter(header => {
|
|
22836
22836
|
var _header$subHeaders2;
|
|
22837
22837
|
return !((_header$subHeaders2 = header.subHeaders) != null && _header$subHeaders2.length);
|
|
@@ -22843,7 +22843,7 @@
|
|
|
22843
22843
|
return (_table$options$debugA14 = table.options.debugAll) != null ? _table$options$debugA14 : table.options.debugHeaders;
|
|
22844
22844
|
}
|
|
22845
22845
|
}),
|
|
22846
|
-
getRightLeafHeaders: memo(() => [table.getRightFlatHeaders()], flatHeaders => {
|
|
22846
|
+
getRightLeafHeaders: memo$1(() => [table.getRightFlatHeaders()], flatHeaders => {
|
|
22847
22847
|
return flatHeaders.filter(header => {
|
|
22848
22848
|
var _header$subHeaders3;
|
|
22849
22849
|
return !((_header$subHeaders3 = header.subHeaders) != null && _header$subHeaders3.length);
|
|
@@ -22855,7 +22855,7 @@
|
|
|
22855
22855
|
return (_table$options$debugA15 = table.options.debugAll) != null ? _table$options$debugA15 : table.options.debugHeaders;
|
|
22856
22856
|
}
|
|
22857
22857
|
}),
|
|
22858
|
-
getLeafHeaders: memo(() => [table.getLeftHeaderGroups(), table.getCenterHeaderGroups(), table.getRightHeaderGroups()], (left, center, right) => {
|
|
22858
|
+
getLeafHeaders: memo$1(() => [table.getLeftHeaderGroups(), table.getCenterHeaderGroups(), table.getRightHeaderGroups()], (left, center, right) => {
|
|
22859
22859
|
var _left$0$headers, _left$, _center$0$headers, _center$, _right$0$headers, _right$;
|
|
22860
22860
|
return [...((_left$0$headers = (_left$ = left[0]) == null ? void 0 : _left$.headers) != null ? _left$0$headers : []), ...((_center$0$headers = (_center$ = center[0]) == null ? void 0 : _center$.headers) != null ? _center$0$headers : []), ...((_right$0$headers = (_right$ = right[0]) == null ? void 0 : _right$.headers) != null ? _right$0$headers : [])].map(header => {
|
|
22861
22861
|
return header.getLeafHeaders();
|
|
@@ -23935,7 +23935,7 @@
|
|
|
23935
23935
|
var _table$initialState$c;
|
|
23936
23936
|
table.setColumnOrder(defaultState ? [] : (_table$initialState$c = table.initialState.columnOrder) != null ? _table$initialState$c : []);
|
|
23937
23937
|
},
|
|
23938
|
-
_getOrderColumnsFn: memo(() => [table.getState().columnOrder, table.getState().grouping, table.options.groupedColumnMode], (columnOrder, grouping, groupedColumnMode) => columns => {
|
|
23938
|
+
_getOrderColumnsFn: memo$1(() => [table.getState().columnOrder, table.getState().grouping, table.options.groupedColumnMode], (columnOrder, grouping, groupedColumnMode) => columns => {
|
|
23939
23939
|
// Sort grouped columns to the start of the column list
|
|
23940
23940
|
// before the headers are built
|
|
23941
23941
|
let orderedColumns = [];
|
|
@@ -24069,7 +24069,7 @@
|
|
|
24069
24069
|
pageCount: newPageCount
|
|
24070
24070
|
};
|
|
24071
24071
|
}),
|
|
24072
|
-
getPageOptions: memo(() => [table.getPageCount()], pageCount => {
|
|
24072
|
+
getPageOptions: memo$1(() => [table.getPageCount()], pageCount => {
|
|
24073
24073
|
let pageOptions = [];
|
|
24074
24074
|
if (pageCount && pageCount > 0) {
|
|
24075
24075
|
pageOptions = [...new Array(pageCount)].fill(null).map((_, i) => i);
|
|
@@ -24192,7 +24192,7 @@
|
|
|
24192
24192
|
},
|
|
24193
24193
|
createRow: (row, table) => {
|
|
24194
24194
|
return {
|
|
24195
|
-
getCenterVisibleCells: memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allCells, left, right) => {
|
|
24195
|
+
getCenterVisibleCells: memo$1(() => [row._getAllVisibleCells(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allCells, left, right) => {
|
|
24196
24196
|
const leftAndRight = [...(left != null ? left : []), ...(right != null ? right : [])];
|
|
24197
24197
|
return allCells.filter(d => !leftAndRight.includes(d.column.id));
|
|
24198
24198
|
}, {
|
|
@@ -24202,7 +24202,7 @@
|
|
|
24202
24202
|
return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugRows;
|
|
24203
24203
|
}
|
|
24204
24204
|
}),
|
|
24205
|
-
getLeftVisibleCells: memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.left,,], (allCells, left) => {
|
|
24205
|
+
getLeftVisibleCells: memo$1(() => [row._getAllVisibleCells(), table.getState().columnPinning.left,,], (allCells, left) => {
|
|
24206
24206
|
const cells = (left != null ? left : []).map(columnId => allCells.find(cell => cell.column.id === columnId)).filter(Boolean).map(d => ({
|
|
24207
24207
|
...d,
|
|
24208
24208
|
position: 'left'
|
|
@@ -24215,7 +24215,7 @@
|
|
|
24215
24215
|
return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugRows;
|
|
24216
24216
|
}
|
|
24217
24217
|
}),
|
|
24218
|
-
getRightVisibleCells: memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.right], (allCells, right) => {
|
|
24218
|
+
getRightVisibleCells: memo$1(() => [row._getAllVisibleCells(), table.getState().columnPinning.right], (allCells, right) => {
|
|
24219
24219
|
const cells = (right != null ? right : []).map(columnId => allCells.find(cell => cell.column.id === columnId)).filter(Boolean).map(d => ({
|
|
24220
24220
|
...d,
|
|
24221
24221
|
position: 'right'
|
|
@@ -24246,7 +24246,7 @@
|
|
|
24246
24246
|
}
|
|
24247
24247
|
return Boolean((_pinningState$positio = pinningState[position]) == null ? void 0 : _pinningState$positio.length);
|
|
24248
24248
|
},
|
|
24249
|
-
getLeftLeafColumns: memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.left], (allColumns, left) => {
|
|
24249
|
+
getLeftLeafColumns: memo$1(() => [table.getAllLeafColumns(), table.getState().columnPinning.left], (allColumns, left) => {
|
|
24250
24250
|
return (left != null ? left : []).map(columnId => allColumns.find(column => column.id === columnId)).filter(Boolean);
|
|
24251
24251
|
}, {
|
|
24252
24252
|
key: 'getLeftLeafColumns',
|
|
@@ -24255,7 +24255,7 @@
|
|
|
24255
24255
|
return (_table$options$debugA4 = table.options.debugAll) != null ? _table$options$debugA4 : table.options.debugColumns;
|
|
24256
24256
|
}
|
|
24257
24257
|
}),
|
|
24258
|
-
getRightLeafColumns: memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.right], (allColumns, right) => {
|
|
24258
|
+
getRightLeafColumns: memo$1(() => [table.getAllLeafColumns(), table.getState().columnPinning.right], (allColumns, right) => {
|
|
24259
24259
|
return (right != null ? right : []).map(columnId => allColumns.find(column => column.id === columnId)).filter(Boolean);
|
|
24260
24260
|
}, {
|
|
24261
24261
|
key: 'getRightLeafColumns',
|
|
@@ -24264,7 +24264,7 @@
|
|
|
24264
24264
|
return (_table$options$debugA5 = table.options.debugAll) != null ? _table$options$debugA5 : table.options.debugColumns;
|
|
24265
24265
|
}
|
|
24266
24266
|
}),
|
|
24267
|
-
getCenterLeafColumns: memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, left, right) => {
|
|
24267
|
+
getCenterLeafColumns: memo$1(() => [table.getAllLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, left, right) => {
|
|
24268
24268
|
const leftAndRight = [...(left != null ? left : []), ...(right != null ? right : [])];
|
|
24269
24269
|
return allColumns.filter(d => !leftAndRight.includes(d.id));
|
|
24270
24270
|
}, {
|
|
@@ -24400,7 +24400,7 @@
|
|
|
24400
24400
|
// table.setRowSelection(selectedRowIds)
|
|
24401
24401
|
// },
|
|
24402
24402
|
getPreSelectedRowModel: () => table.getCoreRowModel(),
|
|
24403
|
-
getSelectedRowModel: memo(() => [table.getState().rowSelection, table.getCoreRowModel()], (rowSelection, rowModel) => {
|
|
24403
|
+
getSelectedRowModel: memo$1(() => [table.getState().rowSelection, table.getCoreRowModel()], (rowSelection, rowModel) => {
|
|
24404
24404
|
if (!Object.keys(rowSelection).length) {
|
|
24405
24405
|
return {
|
|
24406
24406
|
rows: [],
|
|
@@ -24416,7 +24416,7 @@
|
|
|
24416
24416
|
return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
|
|
24417
24417
|
}
|
|
24418
24418
|
}),
|
|
24419
|
-
getFilteredSelectedRowModel: memo(() => [table.getState().rowSelection, table.getFilteredRowModel()], (rowSelection, rowModel) => {
|
|
24419
|
+
getFilteredSelectedRowModel: memo$1(() => [table.getState().rowSelection, table.getFilteredRowModel()], (rowSelection, rowModel) => {
|
|
24420
24420
|
if (!Object.keys(rowSelection).length) {
|
|
24421
24421
|
return {
|
|
24422
24422
|
rows: [],
|
|
@@ -24432,7 +24432,7 @@
|
|
|
24432
24432
|
return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugTable;
|
|
24433
24433
|
}
|
|
24434
24434
|
}),
|
|
24435
|
-
getGroupedSelectedRowModel: memo(() => [table.getState().rowSelection, table.getSortedRowModel()], (rowSelection, rowModel) => {
|
|
24435
|
+
getGroupedSelectedRowModel: memo$1(() => [table.getState().rowSelection, table.getSortedRowModel()], (rowSelection, rowModel) => {
|
|
24436
24436
|
if (!Object.keys(rowSelection).length) {
|
|
24437
24437
|
return {
|
|
24438
24438
|
rows: [],
|
|
@@ -25014,7 +25014,7 @@
|
|
|
25014
25014
|
},
|
|
25015
25015
|
createRow: (row, table) => {
|
|
25016
25016
|
return {
|
|
25017
|
-
_getAllVisibleCells: memo(() => [row.getAllCells(), table.getState().columnVisibility], cells => {
|
|
25017
|
+
_getAllVisibleCells: memo$1(() => [row.getAllCells(), table.getState().columnVisibility], cells => {
|
|
25018
25018
|
return cells.filter(cell => cell.column.getIsVisible());
|
|
25019
25019
|
}, {
|
|
25020
25020
|
key: "development" === 'production' ,
|
|
@@ -25023,7 +25023,7 @@
|
|
|
25023
25023
|
return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugRows;
|
|
25024
25024
|
}
|
|
25025
25025
|
}),
|
|
25026
|
-
getVisibleCells: memo(() => [row.getLeftVisibleCells(), row.getCenterVisibleCells(), row.getRightVisibleCells()], (left, center, right) => [...left, ...center, ...right], {
|
|
25026
|
+
getVisibleCells: memo$1(() => [row.getLeftVisibleCells(), row.getCenterVisibleCells(), row.getRightVisibleCells()], (left, center, right) => [...left, ...center, ...right], {
|
|
25027
25027
|
key: 'row.getVisibleCells',
|
|
25028
25028
|
debug: () => {
|
|
25029
25029
|
var _table$options$debugA2;
|
|
@@ -25034,7 +25034,7 @@
|
|
|
25034
25034
|
},
|
|
25035
25035
|
createTable: table => {
|
|
25036
25036
|
const makeVisibleColumnsMethod = (key, getColumns) => {
|
|
25037
|
-
return memo(() => [getColumns(), getColumns().filter(d => d.getIsVisible()).map(d => d.id).join('_')], columns => {
|
|
25037
|
+
return memo$1(() => [getColumns(), getColumns().filter(d => d.getIsVisible()).map(d => d.id).join('_')], columns => {
|
|
25038
25038
|
return columns.filter(d => d.getIsVisible == null ? void 0 : d.getIsVisible());
|
|
25039
25039
|
}, {
|
|
25040
25040
|
key,
|
|
@@ -25172,7 +25172,7 @@
|
|
|
25172
25172
|
}
|
|
25173
25173
|
return row;
|
|
25174
25174
|
},
|
|
25175
|
-
_getDefaultColumnDef: memo(() => [table.options.defaultColumn], defaultColumn => {
|
|
25175
|
+
_getDefaultColumnDef: memo$1(() => [table.options.defaultColumn], defaultColumn => {
|
|
25176
25176
|
var _defaultColumn;
|
|
25177
25177
|
defaultColumn = (_defaultColumn = defaultColumn) != null ? _defaultColumn : {};
|
|
25178
25178
|
return {
|
|
@@ -25204,7 +25204,7 @@
|
|
|
25204
25204
|
key: 'getDefaultColumnDef'
|
|
25205
25205
|
}),
|
|
25206
25206
|
_getColumnDefs: () => table.options.columns,
|
|
25207
|
-
getAllColumns: memo(() => [table._getColumnDefs()], columnDefs => {
|
|
25207
|
+
getAllColumns: memo$1(() => [table._getColumnDefs()], columnDefs => {
|
|
25208
25208
|
const recurseColumns = function (columnDefs, parent, depth) {
|
|
25209
25209
|
if (depth === void 0) {
|
|
25210
25210
|
depth = 0;
|
|
@@ -25224,7 +25224,7 @@
|
|
|
25224
25224
|
return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugColumns;
|
|
25225
25225
|
}
|
|
25226
25226
|
}),
|
|
25227
|
-
getAllFlatColumns: memo(() => [table.getAllColumns()], allColumns => {
|
|
25227
|
+
getAllFlatColumns: memo$1(() => [table.getAllColumns()], allColumns => {
|
|
25228
25228
|
return allColumns.flatMap(column => {
|
|
25229
25229
|
return column.getFlatColumns();
|
|
25230
25230
|
});
|
|
@@ -25235,7 +25235,7 @@
|
|
|
25235
25235
|
return (_table$options$debugA3 = table.options.debugAll) != null ? _table$options$debugA3 : table.options.debugColumns;
|
|
25236
25236
|
}
|
|
25237
25237
|
}),
|
|
25238
|
-
_getAllFlatColumnsById: memo(() => [table.getAllFlatColumns()], flatColumns => {
|
|
25238
|
+
_getAllFlatColumnsById: memo$1(() => [table.getAllFlatColumns()], flatColumns => {
|
|
25239
25239
|
return flatColumns.reduce((acc, column) => {
|
|
25240
25240
|
acc[column.id] = column;
|
|
25241
25241
|
return acc;
|
|
@@ -25247,7 +25247,7 @@
|
|
|
25247
25247
|
return (_table$options$debugA4 = table.options.debugAll) != null ? _table$options$debugA4 : table.options.debugColumns;
|
|
25248
25248
|
}
|
|
25249
25249
|
}),
|
|
25250
|
-
getAllLeafColumns: memo(() => [table.getAllColumns(), table._getOrderColumnsFn()], (allColumns, orderColumns) => {
|
|
25250
|
+
getAllLeafColumns: memo$1(() => [table.getAllColumns(), table._getOrderColumnsFn()], (allColumns, orderColumns) => {
|
|
25251
25251
|
let leafColumns = allColumns.flatMap(column => column.getLeafColumns());
|
|
25252
25252
|
return orderColumns(leafColumns);
|
|
25253
25253
|
}, {
|
|
@@ -25286,7 +25286,7 @@
|
|
|
25286
25286
|
column,
|
|
25287
25287
|
getValue: () => row.getValue(columnId),
|
|
25288
25288
|
renderValue: getRenderValue,
|
|
25289
|
-
getContext: memo(() => [table, column, row, cell], (table, column, row, cell) => ({
|
|
25289
|
+
getContext: memo$1(() => [table, column, row, cell], (table, column, row, cell) => ({
|
|
25290
25290
|
table,
|
|
25291
25291
|
column,
|
|
25292
25292
|
row,
|
|
@@ -25344,7 +25344,7 @@
|
|
|
25344
25344
|
},
|
|
25345
25345
|
subRows: subRows != null ? subRows : [],
|
|
25346
25346
|
getLeafRows: () => flattenBy(row.subRows, d => d.subRows),
|
|
25347
|
-
getAllCells: memo(() => [table.getAllLeafColumns()], leafColumns => {
|
|
25347
|
+
getAllCells: memo$1(() => [table.getAllLeafColumns()], leafColumns => {
|
|
25348
25348
|
return leafColumns.map(column => {
|
|
25349
25349
|
return createCell(table, row, column, column.id);
|
|
25350
25350
|
});
|
|
@@ -25355,7 +25355,7 @@
|
|
|
25355
25355
|
return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugRows;
|
|
25356
25356
|
}
|
|
25357
25357
|
}),
|
|
25358
|
-
_getAllCellsByColumnId: memo(() => [row.getAllCells()], allCells => {
|
|
25358
|
+
_getAllCellsByColumnId: memo$1(() => [row.getAllCells()], allCells => {
|
|
25359
25359
|
return allCells.reduce((acc, cell) => {
|
|
25360
25360
|
acc[cell.column.id] = cell;
|
|
25361
25361
|
return acc;
|
|
@@ -25376,7 +25376,7 @@
|
|
|
25376
25376
|
};
|
|
25377
25377
|
|
|
25378
25378
|
function getCoreRowModel() {
|
|
25379
|
-
return table => memo(() => [table.options.data], data => {
|
|
25379
|
+
return table => memo$1(() => [table.options.data], data => {
|
|
25380
25380
|
const rowModel = {
|
|
25381
25381
|
rows: [],
|
|
25382
25382
|
flatRows: [],
|
|
@@ -25485,13 +25485,37 @@
|
|
|
25485
25485
|
const styles$d = css `
|
|
25486
25486
|
${display('flex')}
|
|
25487
25487
|
|
|
25488
|
+
:host {
|
|
25489
|
+
height: 480px;
|
|
25490
|
+
}
|
|
25491
|
+
|
|
25488
25492
|
.table-container {
|
|
25489
25493
|
display: flex;
|
|
25490
25494
|
flex-direction: column;
|
|
25491
25495
|
width: 100%;
|
|
25492
25496
|
font: ${bodyFont};
|
|
25493
25497
|
color: ${bodyFontColor};
|
|
25494
|
-
|
|
25498
|
+
}
|
|
25499
|
+
|
|
25500
|
+
.table-viewport {
|
|
25501
|
+
overflow-y: auto;
|
|
25502
|
+
display: block;
|
|
25503
|
+
height: 100%;
|
|
25504
|
+
position: relative;
|
|
25505
|
+
}
|
|
25506
|
+
|
|
25507
|
+
.table-scroll {
|
|
25508
|
+
pointer-events: none;
|
|
25509
|
+
position: absolute;
|
|
25510
|
+
top: 0px;
|
|
25511
|
+
width: 100%;
|
|
25512
|
+
}
|
|
25513
|
+
|
|
25514
|
+
.table-row-container {
|
|
25515
|
+
width: 100%;
|
|
25516
|
+
position: sticky;
|
|
25517
|
+
overflow: hidden;
|
|
25518
|
+
top: 0px;
|
|
25495
25519
|
}
|
|
25496
25520
|
|
|
25497
25521
|
.header-container {
|
|
@@ -25741,7 +25765,7 @@
|
|
|
25741
25765
|
const template$4 = html `
|
|
25742
25766
|
<template role="table">
|
|
25743
25767
|
<div class="table-container">
|
|
25744
|
-
<div role="rowgroup" class="header-container">
|
|
25768
|
+
<div role="rowgroup" class="header-container" style="margin-right: ${x => x.virtualizer.headerContainerMarginRight}px;">
|
|
25745
25769
|
<div class="header-row" role="row">
|
|
25746
25770
|
${repeat(x => x.columns, html `
|
|
25747
25771
|
<${DesignSystem.tagFor(TableHeader)} class="header">
|
|
@@ -25750,24 +25774,693 @@
|
|
|
25750
25774
|
`)}
|
|
25751
25775
|
</div>
|
|
25752
25776
|
</div>
|
|
25753
|
-
<div class="table-viewport"
|
|
25754
|
-
|
|
25755
|
-
${
|
|
25756
|
-
|
|
25757
|
-
|
|
25758
|
-
|
|
25759
|
-
|
|
25760
|
-
|
|
25761
|
-
|
|
25762
|
-
|
|
25763
|
-
|
|
25764
|
-
|
|
25777
|
+
<div class="table-viewport" ${ref('viewport')}>
|
|
25778
|
+
<div class="table-scroll" style="height: ${x => x.virtualizer.allRowsHeight}px;"></div>
|
|
25779
|
+
<div class="table-row-container" role="rowgroup" style="transform: ${x => (x.virtualizer.rowContainerYOffset === 0 ? 'none' : `translateY(${x.virtualizer.rowContainerYOffset}px)`)};">
|
|
25780
|
+
${when(x => x.columns.length > 0 && x.canRenderRows, html `
|
|
25781
|
+
${repeat(x => x.virtualizer.visibleItems, html `
|
|
25782
|
+
<${DesignSystem.tagFor(TableRow)}
|
|
25783
|
+
class="row"
|
|
25784
|
+
record-id="${(x, c) => c.parent.tableData[x.index]?.id}"
|
|
25785
|
+
:dataRecord="${(x, c) => c.parent.tableData[x.index]?.record}"
|
|
25786
|
+
:columns="${(_, c) => c.parent.columns}"
|
|
25787
|
+
style="height: ${x => x.size}px;"
|
|
25788
|
+
>
|
|
25789
|
+
</${DesignSystem.tagFor(TableRow)}>
|
|
25790
|
+
`)}
|
|
25791
|
+
`)}
|
|
25792
|
+
</div>
|
|
25765
25793
|
</div>
|
|
25766
25794
|
</div>
|
|
25767
25795
|
<slot ${slotted({ property: 'columns', filter: isTableColumn() })}></slot>
|
|
25768
25796
|
</template>
|
|
25769
25797
|
`;
|
|
25770
25798
|
|
|
25799
|
+
/**
|
|
25800
|
+
* virtual-core
|
|
25801
|
+
*
|
|
25802
|
+
* Copyright (c) TanStack
|
|
25803
|
+
*
|
|
25804
|
+
* This source code is licensed under the MIT license found in the
|
|
25805
|
+
* LICENSE.md file in the root directory of this source tree.
|
|
25806
|
+
*
|
|
25807
|
+
* @license MIT
|
|
25808
|
+
*/
|
|
25809
|
+
function _extends() {
|
|
25810
|
+
_extends = Object.assign ? Object.assign.bind() : function (target) {
|
|
25811
|
+
for (var i = 1; i < arguments.length; i++) {
|
|
25812
|
+
var source = arguments[i];
|
|
25813
|
+
for (var key in source) {
|
|
25814
|
+
if (Object.prototype.hasOwnProperty.call(source, key)) {
|
|
25815
|
+
target[key] = source[key];
|
|
25816
|
+
}
|
|
25817
|
+
}
|
|
25818
|
+
}
|
|
25819
|
+
return target;
|
|
25820
|
+
};
|
|
25821
|
+
return _extends.apply(this, arguments);
|
|
25822
|
+
}
|
|
25823
|
+
|
|
25824
|
+
/**
|
|
25825
|
+
* virtual-core
|
|
25826
|
+
*
|
|
25827
|
+
* Copyright (c) TanStack
|
|
25828
|
+
*
|
|
25829
|
+
* This source code is licensed under the MIT license found in the
|
|
25830
|
+
* LICENSE.md file in the root directory of this source tree.
|
|
25831
|
+
*
|
|
25832
|
+
* @license MIT
|
|
25833
|
+
*/
|
|
25834
|
+
function memo(getDeps, fn, opts) {
|
|
25835
|
+
var deps = [];
|
|
25836
|
+
var result;
|
|
25837
|
+
return function () {
|
|
25838
|
+
var depTime;
|
|
25839
|
+
if (opts.key && opts.debug != null && opts.debug()) depTime = Date.now();
|
|
25840
|
+
var newDeps = getDeps();
|
|
25841
|
+
var depsChanged = newDeps.length !== deps.length || newDeps.some(function (dep, index) {
|
|
25842
|
+
return deps[index] !== dep;
|
|
25843
|
+
});
|
|
25844
|
+
if (!depsChanged) {
|
|
25845
|
+
return result;
|
|
25846
|
+
}
|
|
25847
|
+
deps = newDeps;
|
|
25848
|
+
var resultTime;
|
|
25849
|
+
if (opts.key && opts.debug != null && opts.debug()) resultTime = Date.now();
|
|
25850
|
+
result = fn.apply(void 0, newDeps);
|
|
25851
|
+
opts == null ? void 0 : opts.onChange == null ? void 0 : opts.onChange(result);
|
|
25852
|
+
if (opts.key && opts.debug != null && opts.debug()) {
|
|
25853
|
+
var depEndTime = Math.round((Date.now() - depTime) * 100) / 100;
|
|
25854
|
+
var resultEndTime = Math.round((Date.now() - resultTime) * 100) / 100;
|
|
25855
|
+
var resultFpsPercentage = resultEndTime / 16;
|
|
25856
|
+
var pad = function pad(str, num) {
|
|
25857
|
+
str = String(str);
|
|
25858
|
+
while (str.length < num) {
|
|
25859
|
+
str = ' ' + str;
|
|
25860
|
+
}
|
|
25861
|
+
return str;
|
|
25862
|
+
};
|
|
25863
|
+
console.info("%c\u23F1 " + pad(resultEndTime, 5) + " /" + pad(depEndTime, 5) + " ms", "\n font-size: .6rem;\n font-weight: bold;\n color: hsl(" + Math.max(0, Math.min(120 - 120 * resultFpsPercentage, 120)) + "deg 100% 31%);", opts == null ? void 0 : opts.key);
|
|
25864
|
+
}
|
|
25865
|
+
return result;
|
|
25866
|
+
};
|
|
25867
|
+
}
|
|
25868
|
+
|
|
25869
|
+
/**
|
|
25870
|
+
* virtual-core
|
|
25871
|
+
*
|
|
25872
|
+
* Copyright (c) TanStack
|
|
25873
|
+
*
|
|
25874
|
+
* This source code is licensed under the MIT license found in the
|
|
25875
|
+
* LICENSE.md file in the root directory of this source tree.
|
|
25876
|
+
*
|
|
25877
|
+
* @license MIT
|
|
25878
|
+
*/
|
|
25879
|
+
|
|
25880
|
+
//
|
|
25881
|
+
|
|
25882
|
+
//
|
|
25883
|
+
|
|
25884
|
+
var defaultKeyExtractor = function defaultKeyExtractor(index) {
|
|
25885
|
+
return index;
|
|
25886
|
+
};
|
|
25887
|
+
var defaultRangeExtractor = function defaultRangeExtractor(range) {
|
|
25888
|
+
var start = Math.max(range.startIndex - range.overscan, 0);
|
|
25889
|
+
var end = Math.min(range.endIndex + range.overscan, range.count - 1);
|
|
25890
|
+
var arr = [];
|
|
25891
|
+
for (var _i = start; _i <= end; _i++) {
|
|
25892
|
+
arr.push(_i);
|
|
25893
|
+
}
|
|
25894
|
+
return arr;
|
|
25895
|
+
};
|
|
25896
|
+
var observeElementRect = function observeElementRect(instance, cb) {
|
|
25897
|
+
var observer = new ResizeObserver(function (entries) {
|
|
25898
|
+
var _entries$, _entries$2;
|
|
25899
|
+
cb({
|
|
25900
|
+
width: (_entries$ = entries[0]) == null ? void 0 : _entries$.contentRect.width,
|
|
25901
|
+
height: (_entries$2 = entries[0]) == null ? void 0 : _entries$2.contentRect.height
|
|
25902
|
+
});
|
|
25903
|
+
});
|
|
25904
|
+
if (!instance.scrollElement) {
|
|
25905
|
+
return;
|
|
25906
|
+
}
|
|
25907
|
+
cb(instance.scrollElement.getBoundingClientRect());
|
|
25908
|
+
observer.observe(instance.scrollElement);
|
|
25909
|
+
return function () {
|
|
25910
|
+
observer.unobserve(instance.scrollElement);
|
|
25911
|
+
};
|
|
25912
|
+
};
|
|
25913
|
+
var scrollProps = {
|
|
25914
|
+
element: ['scrollLeft', 'scrollTop'],
|
|
25915
|
+
window: ['scrollX', 'scrollY']
|
|
25916
|
+
};
|
|
25917
|
+
var createOffsetObserver = function createOffsetObserver(mode) {
|
|
25918
|
+
return function (instance, cb) {
|
|
25919
|
+
if (!instance.scrollElement) {
|
|
25920
|
+
return;
|
|
25921
|
+
}
|
|
25922
|
+
var propX = scrollProps[mode][0];
|
|
25923
|
+
var propY = scrollProps[mode][1];
|
|
25924
|
+
var prevX = instance.scrollElement[propX];
|
|
25925
|
+
var prevY = instance.scrollElement[propY];
|
|
25926
|
+
var scroll = function scroll() {
|
|
25927
|
+
var offset = instance.scrollElement[instance.options.horizontal ? propX : propY];
|
|
25928
|
+
cb(offset);
|
|
25929
|
+
};
|
|
25930
|
+
scroll();
|
|
25931
|
+
var onScroll = function onScroll(e) {
|
|
25932
|
+
var target = e.currentTarget;
|
|
25933
|
+
var scrollX = target[propX];
|
|
25934
|
+
var scrollY = target[propY];
|
|
25935
|
+
if (instance.options.horizontal ? prevX - scrollX : prevY - scrollY) {
|
|
25936
|
+
scroll();
|
|
25937
|
+
}
|
|
25938
|
+
prevX = scrollX;
|
|
25939
|
+
prevY = scrollY;
|
|
25940
|
+
};
|
|
25941
|
+
instance.scrollElement.addEventListener('scroll', onScroll, {
|
|
25942
|
+
capture: false,
|
|
25943
|
+
passive: true
|
|
25944
|
+
});
|
|
25945
|
+
return function () {
|
|
25946
|
+
instance.scrollElement.removeEventListener('scroll', onScroll);
|
|
25947
|
+
};
|
|
25948
|
+
};
|
|
25949
|
+
};
|
|
25950
|
+
var observeElementOffset = createOffsetObserver('element');
|
|
25951
|
+
var measureElement = function measureElement(element, instance) {
|
|
25952
|
+
return Math.round(element.getBoundingClientRect()[instance.options.horizontal ? 'width' : 'height']);
|
|
25953
|
+
};
|
|
25954
|
+
var elementScroll = function elementScroll(offset, _ref2, instance) {
|
|
25955
|
+
var _instance$scrollEleme3, _instance$scrollEleme4;
|
|
25956
|
+
var _ref2$adjustments = _ref2.adjustments,
|
|
25957
|
+
adjustments = _ref2$adjustments === void 0 ? 0 : _ref2$adjustments,
|
|
25958
|
+
behavior = _ref2.behavior;
|
|
25959
|
+
var toOffset = offset + adjustments;
|
|
25960
|
+
(_instance$scrollEleme3 = instance.scrollElement) == null ? void 0 : _instance$scrollEleme3.scrollTo == null ? void 0 : _instance$scrollEleme3.scrollTo((_instance$scrollEleme4 = {}, _instance$scrollEleme4[instance.options.horizontal ? 'left' : 'top'] = toOffset, _instance$scrollEleme4.behavior = behavior, _instance$scrollEleme4));
|
|
25961
|
+
};
|
|
25962
|
+
var Virtualizer$1 = function Virtualizer(_opts) {
|
|
25963
|
+
var _this = this;
|
|
25964
|
+
this.unsubs = [];
|
|
25965
|
+
this.scrollElement = null;
|
|
25966
|
+
this.isScrolling = false;
|
|
25967
|
+
this.isScrollingTimeoutId = null;
|
|
25968
|
+
this.measurementsCache = [];
|
|
25969
|
+
this.itemSizeCache = {};
|
|
25970
|
+
this.pendingMeasuredCacheIndexes = [];
|
|
25971
|
+
this.scrollDirection = null;
|
|
25972
|
+
this.scrollAdjustments = 0;
|
|
25973
|
+
this.measureElementCache = {};
|
|
25974
|
+
this.pendingScrollToIndexCallback = null;
|
|
25975
|
+
this.getResizeObserver = function () {
|
|
25976
|
+
var _ro = null;
|
|
25977
|
+
return function () {
|
|
25978
|
+
if (_ro) {
|
|
25979
|
+
return _ro;
|
|
25980
|
+
} else if (typeof ResizeObserver !== 'undefined') {
|
|
25981
|
+
return _ro = new ResizeObserver(function (entries) {
|
|
25982
|
+
entries.forEach(function (entry) {
|
|
25983
|
+
_this._measureElement(entry.target, false);
|
|
25984
|
+
});
|
|
25985
|
+
});
|
|
25986
|
+
} else {
|
|
25987
|
+
return null;
|
|
25988
|
+
}
|
|
25989
|
+
};
|
|
25990
|
+
}();
|
|
25991
|
+
this.range = {
|
|
25992
|
+
startIndex: 0,
|
|
25993
|
+
endIndex: 0
|
|
25994
|
+
};
|
|
25995
|
+
this.setOptions = function (opts) {
|
|
25996
|
+
Object.entries(opts).forEach(function (_ref3) {
|
|
25997
|
+
var key = _ref3[0],
|
|
25998
|
+
value = _ref3[1];
|
|
25999
|
+
if (typeof value === 'undefined') delete opts[key];
|
|
26000
|
+
});
|
|
26001
|
+
_this.options = _extends({
|
|
26002
|
+
debug: false,
|
|
26003
|
+
initialOffset: 0,
|
|
26004
|
+
overscan: 1,
|
|
26005
|
+
paddingStart: 0,
|
|
26006
|
+
paddingEnd: 0,
|
|
26007
|
+
scrollPaddingStart: 0,
|
|
26008
|
+
scrollPaddingEnd: 0,
|
|
26009
|
+
horizontal: false,
|
|
26010
|
+
getItemKey: defaultKeyExtractor,
|
|
26011
|
+
rangeExtractor: defaultRangeExtractor,
|
|
26012
|
+
onChange: function onChange() {},
|
|
26013
|
+
measureElement: measureElement,
|
|
26014
|
+
initialRect: {
|
|
26015
|
+
width: 0,
|
|
26016
|
+
height: 0
|
|
26017
|
+
},
|
|
26018
|
+
scrollMargin: 0,
|
|
26019
|
+
scrollingDelay: 150,
|
|
26020
|
+
indexAttribute: 'data-index',
|
|
26021
|
+
initialMeasurementsCache: []
|
|
26022
|
+
}, opts);
|
|
26023
|
+
};
|
|
26024
|
+
this.notify = function () {
|
|
26025
|
+
_this.options.onChange == null ? void 0 : _this.options.onChange(_this);
|
|
26026
|
+
};
|
|
26027
|
+
this.cleanup = function () {
|
|
26028
|
+
_this.unsubs.filter(Boolean).forEach(function (d) {
|
|
26029
|
+
return d();
|
|
26030
|
+
});
|
|
26031
|
+
_this.unsubs = [];
|
|
26032
|
+
_this.scrollElement = null;
|
|
26033
|
+
};
|
|
26034
|
+
this._didMount = function () {
|
|
26035
|
+
var ro = _this.getResizeObserver();
|
|
26036
|
+
Object.values(_this.measureElementCache).forEach(function (node) {
|
|
26037
|
+
return ro == null ? void 0 : ro.observe(node);
|
|
26038
|
+
});
|
|
26039
|
+
return function () {
|
|
26040
|
+
ro == null ? void 0 : ro.disconnect();
|
|
26041
|
+
_this.cleanup();
|
|
26042
|
+
};
|
|
26043
|
+
};
|
|
26044
|
+
this._willUpdate = function () {
|
|
26045
|
+
_this.pendingScrollToIndexCallback == null ? void 0 : _this.pendingScrollToIndexCallback();
|
|
26046
|
+
var scrollElement = _this.options.getScrollElement();
|
|
26047
|
+
if (_this.scrollElement !== scrollElement) {
|
|
26048
|
+
_this.cleanup();
|
|
26049
|
+
_this.scrollElement = scrollElement;
|
|
26050
|
+
_this._scrollToOffset(_this.scrollOffset, {
|
|
26051
|
+
adjustments: undefined,
|
|
26052
|
+
behavior: undefined
|
|
26053
|
+
});
|
|
26054
|
+
_this.unsubs.push(_this.options.observeElementRect(_this, function (rect) {
|
|
26055
|
+
_this.scrollRect = rect;
|
|
26056
|
+
_this.calculateRange();
|
|
26057
|
+
}));
|
|
26058
|
+
_this.unsubs.push(_this.options.observeElementOffset(_this, function (offset) {
|
|
26059
|
+
_this.scrollAdjustments = 0;
|
|
26060
|
+
if (_this.scrollOffset === offset) {
|
|
26061
|
+
return;
|
|
26062
|
+
}
|
|
26063
|
+
if (_this.isScrollingTimeoutId !== null) {
|
|
26064
|
+
clearTimeout(_this.isScrollingTimeoutId);
|
|
26065
|
+
_this.isScrollingTimeoutId = null;
|
|
26066
|
+
}
|
|
26067
|
+
var onIsScrollingChange = function onIsScrollingChange(isScrolling) {
|
|
26068
|
+
if (_this.isScrolling !== isScrolling) {
|
|
26069
|
+
_this.isScrolling = isScrolling;
|
|
26070
|
+
_this.notify();
|
|
26071
|
+
}
|
|
26072
|
+
};
|
|
26073
|
+
_this.scrollDirection = _this.scrollOffset < offset ? 'forward' : 'backward';
|
|
26074
|
+
_this.scrollOffset = offset;
|
|
26075
|
+
_this.calculateRange();
|
|
26076
|
+
onIsScrollingChange(true);
|
|
26077
|
+
_this.isScrollingTimeoutId = setTimeout(function () {
|
|
26078
|
+
_this.isScrollingTimeoutId = null;
|
|
26079
|
+
_this.scrollDirection = null;
|
|
26080
|
+
onIsScrollingChange(false);
|
|
26081
|
+
}, _this.options.scrollingDelay);
|
|
26082
|
+
}));
|
|
26083
|
+
} else if (!_this.isScrolling) {
|
|
26084
|
+
_this.calculateRange();
|
|
26085
|
+
}
|
|
26086
|
+
};
|
|
26087
|
+
this.getSize = function () {
|
|
26088
|
+
return _this.scrollRect[_this.options.horizontal ? 'width' : 'height'];
|
|
26089
|
+
};
|
|
26090
|
+
this.getMeasurements = memo(function () {
|
|
26091
|
+
return [_this.options.count, _this.options.paddingStart, _this.options.scrollMargin, _this.options.getItemKey, _this.itemSizeCache];
|
|
26092
|
+
}, function (count, paddingStart, scrollMargin, getItemKey, itemSizeCache) {
|
|
26093
|
+
var min = _this.pendingMeasuredCacheIndexes.length > 0 ? Math.min.apply(Math, _this.pendingMeasuredCacheIndexes) : 0;
|
|
26094
|
+
_this.pendingMeasuredCacheIndexes = [];
|
|
26095
|
+
var measurements = _this.measurementsCache.slice(0, min);
|
|
26096
|
+
for (var _i2 = min; _i2 < count; _i2++) {
|
|
26097
|
+
var key = getItemKey(_i2);
|
|
26098
|
+
var measuredSize = itemSizeCache[key];
|
|
26099
|
+
var start = measurements[_i2 - 1] ? measurements[_i2 - 1].end : paddingStart + scrollMargin;
|
|
26100
|
+
var size = typeof measuredSize === 'number' ? measuredSize : _this.options.estimateSize(_i2);
|
|
26101
|
+
var end = start + size;
|
|
26102
|
+
measurements[_i2] = {
|
|
26103
|
+
index: _i2,
|
|
26104
|
+
start: start,
|
|
26105
|
+
size: size,
|
|
26106
|
+
end: end,
|
|
26107
|
+
key: key
|
|
26108
|
+
};
|
|
26109
|
+
}
|
|
26110
|
+
_this.measurementsCache = measurements;
|
|
26111
|
+
return measurements;
|
|
26112
|
+
}, {
|
|
26113
|
+
key: 'getMeasurements',
|
|
26114
|
+
debug: function debug() {
|
|
26115
|
+
return _this.options.debug;
|
|
26116
|
+
}
|
|
26117
|
+
});
|
|
26118
|
+
this.calculateRange = memo(function () {
|
|
26119
|
+
return [_this.getMeasurements(), _this.getSize(), _this.scrollOffset];
|
|
26120
|
+
}, function (measurements, outerSize, scrollOffset) {
|
|
26121
|
+
var range = calculateRange({
|
|
26122
|
+
measurements: measurements,
|
|
26123
|
+
outerSize: outerSize,
|
|
26124
|
+
scrollOffset: scrollOffset
|
|
26125
|
+
});
|
|
26126
|
+
if (range.startIndex !== _this.range.startIndex || range.endIndex !== _this.range.endIndex) {
|
|
26127
|
+
_this.range = range;
|
|
26128
|
+
_this.notify();
|
|
26129
|
+
}
|
|
26130
|
+
return _this.range;
|
|
26131
|
+
}, {
|
|
26132
|
+
key: 'calculateRange',
|
|
26133
|
+
debug: function debug() {
|
|
26134
|
+
return _this.options.debug;
|
|
26135
|
+
}
|
|
26136
|
+
});
|
|
26137
|
+
this.getIndexes = memo(function () {
|
|
26138
|
+
return [_this.options.rangeExtractor, _this.range, _this.options.overscan, _this.options.count];
|
|
26139
|
+
}, function (rangeExtractor, range, overscan, count) {
|
|
26140
|
+
return rangeExtractor(_extends({}, range, {
|
|
26141
|
+
overscan: overscan,
|
|
26142
|
+
count: count
|
|
26143
|
+
}));
|
|
26144
|
+
}, {
|
|
26145
|
+
key: 'getIndexes',
|
|
26146
|
+
debug: function debug() {
|
|
26147
|
+
return _this.options.debug;
|
|
26148
|
+
}
|
|
26149
|
+
});
|
|
26150
|
+
this.indexFromElement = function (node) {
|
|
26151
|
+
var attributeName = _this.options.indexAttribute;
|
|
26152
|
+
var indexStr = node.getAttribute(attributeName);
|
|
26153
|
+
if (!indexStr) {
|
|
26154
|
+
console.warn("Missing attribute name '" + attributeName + "={index}' on measured element.");
|
|
26155
|
+
return -1;
|
|
26156
|
+
}
|
|
26157
|
+
return parseInt(indexStr, 10);
|
|
26158
|
+
};
|
|
26159
|
+
this._measureElement = function (node, _sync) {
|
|
26160
|
+
var _this$itemSizeCache$i;
|
|
26161
|
+
var index = _this.indexFromElement(node);
|
|
26162
|
+
var item = _this.measurementsCache[index];
|
|
26163
|
+
if (!item) {
|
|
26164
|
+
return;
|
|
26165
|
+
}
|
|
26166
|
+
var prevNode = _this.measureElementCache[item.key];
|
|
26167
|
+
var ro = _this.getResizeObserver();
|
|
26168
|
+
if (!node.isConnected) {
|
|
26169
|
+
if (prevNode) {
|
|
26170
|
+
ro == null ? void 0 : ro.unobserve(prevNode);
|
|
26171
|
+
delete _this.measureElementCache[item.key];
|
|
26172
|
+
}
|
|
26173
|
+
return;
|
|
26174
|
+
}
|
|
26175
|
+
if (!prevNode || prevNode !== node) {
|
|
26176
|
+
if (prevNode) {
|
|
26177
|
+
ro == null ? void 0 : ro.unobserve(prevNode);
|
|
26178
|
+
}
|
|
26179
|
+
_this.measureElementCache[item.key] = node;
|
|
26180
|
+
ro == null ? void 0 : ro.observe(node);
|
|
26181
|
+
}
|
|
26182
|
+
var measuredItemSize = _this.options.measureElement(node, _this);
|
|
26183
|
+
var itemSize = (_this$itemSizeCache$i = _this.itemSizeCache[item.key]) != null ? _this$itemSizeCache$i : item.size;
|
|
26184
|
+
var delta = measuredItemSize - itemSize;
|
|
26185
|
+
if (delta !== 0) {
|
|
26186
|
+
var _extends2;
|
|
26187
|
+
if (item.start < _this.scrollOffset && _this.isScrolling && _this.scrollDirection === 'backward') {
|
|
26188
|
+
if (_this.options.debug) {
|
|
26189
|
+
console.info('correction', delta);
|
|
26190
|
+
}
|
|
26191
|
+
_this._scrollToOffset(_this.scrollOffset, {
|
|
26192
|
+
adjustments: _this.scrollAdjustments += delta,
|
|
26193
|
+
behavior: undefined
|
|
26194
|
+
});
|
|
26195
|
+
}
|
|
26196
|
+
_this.pendingMeasuredCacheIndexes.push(index);
|
|
26197
|
+
_this.itemSizeCache = _extends({}, _this.itemSizeCache, (_extends2 = {}, _extends2[item.key] = measuredItemSize, _extends2));
|
|
26198
|
+
_this.notify();
|
|
26199
|
+
}
|
|
26200
|
+
};
|
|
26201
|
+
this.measureElement = function (node) {
|
|
26202
|
+
if (!node) {
|
|
26203
|
+
return;
|
|
26204
|
+
}
|
|
26205
|
+
_this._measureElement(node, true);
|
|
26206
|
+
};
|
|
26207
|
+
this.getVirtualItems = memo(function () {
|
|
26208
|
+
return [_this.getIndexes(), _this.getMeasurements()];
|
|
26209
|
+
}, function (indexes, measurements) {
|
|
26210
|
+
var virtualItems = [];
|
|
26211
|
+
for (var k = 0, len = indexes.length; k < len; k++) {
|
|
26212
|
+
var _i3 = indexes[k];
|
|
26213
|
+
var measurement = measurements[_i3];
|
|
26214
|
+
virtualItems.push(measurement);
|
|
26215
|
+
}
|
|
26216
|
+
return virtualItems;
|
|
26217
|
+
}, {
|
|
26218
|
+
key: 'getIndexes',
|
|
26219
|
+
debug: function debug() {
|
|
26220
|
+
return _this.options.debug;
|
|
26221
|
+
}
|
|
26222
|
+
});
|
|
26223
|
+
this.getOffsetForAlignment = function (toOffset, align) {
|
|
26224
|
+
var offset = _this.scrollOffset;
|
|
26225
|
+
var size = _this.getSize();
|
|
26226
|
+
if (align === 'auto') {
|
|
26227
|
+
if (toOffset <= offset) {
|
|
26228
|
+
align = 'start';
|
|
26229
|
+
} else if (toOffset >= offset + size) {
|
|
26230
|
+
align = 'end';
|
|
26231
|
+
} else {
|
|
26232
|
+
align = 'start';
|
|
26233
|
+
}
|
|
26234
|
+
}
|
|
26235
|
+
if (align === 'start') {
|
|
26236
|
+
return toOffset;
|
|
26237
|
+
} else if (align === 'end') {
|
|
26238
|
+
return toOffset - size;
|
|
26239
|
+
} else if (align === 'center') {
|
|
26240
|
+
return toOffset - size / 2;
|
|
26241
|
+
}
|
|
26242
|
+
return toOffset;
|
|
26243
|
+
};
|
|
26244
|
+
this.scrollToOffset = function (toOffset, _temp) {
|
|
26245
|
+
var _ref4 = _temp === void 0 ? {} : _temp,
|
|
26246
|
+
_ref4$align = _ref4.align,
|
|
26247
|
+
align = _ref4$align === void 0 ? 'start' : _ref4$align,
|
|
26248
|
+
behavior = _ref4.behavior;
|
|
26249
|
+
var options = {
|
|
26250
|
+
adjustments: undefined,
|
|
26251
|
+
behavior: behavior,
|
|
26252
|
+
sync: false
|
|
26253
|
+
};
|
|
26254
|
+
_this._scrollToOffset(_this.getOffsetForAlignment(toOffset, align), options);
|
|
26255
|
+
};
|
|
26256
|
+
this.scrollToIndex = function (index, _temp2) {
|
|
26257
|
+
var _ref5 = _temp2 === void 0 ? {} : _temp2,
|
|
26258
|
+
_ref5$align = _ref5.align,
|
|
26259
|
+
align = _ref5$align === void 0 ? 'auto' : _ref5$align,
|
|
26260
|
+
behavior = _ref5.behavior;
|
|
26261
|
+
_this.pendingScrollToIndexCallback = null;
|
|
26262
|
+
var offset = _this.scrollOffset;
|
|
26263
|
+
var size = _this.getSize();
|
|
26264
|
+
var count = _this.options.count;
|
|
26265
|
+
var measurements = _this.getMeasurements();
|
|
26266
|
+
var measurement = measurements[Math.max(0, Math.min(index, count - 1))];
|
|
26267
|
+
if (!measurement) {
|
|
26268
|
+
throw new Error("VirtualItem not found for index = " + index);
|
|
26269
|
+
}
|
|
26270
|
+
if (align === 'auto') {
|
|
26271
|
+
if (measurement.end >= offset + size - _this.options.scrollPaddingEnd) {
|
|
26272
|
+
align = 'end';
|
|
26273
|
+
} else if (measurement.start <= offset + _this.options.scrollPaddingStart) {
|
|
26274
|
+
align = 'start';
|
|
26275
|
+
} else {
|
|
26276
|
+
return;
|
|
26277
|
+
}
|
|
26278
|
+
}
|
|
26279
|
+
var getOffsetForIndexAndAlignment = function getOffsetForIndexAndAlignment(measurement) {
|
|
26280
|
+
var toOffset = align === 'end' ? measurement.end + _this.options.scrollPaddingEnd : measurement.start - _this.options.scrollPaddingStart;
|
|
26281
|
+
return _this.getOffsetForAlignment(toOffset, align);
|
|
26282
|
+
};
|
|
26283
|
+
var toOffset = getOffsetForIndexAndAlignment(measurement);
|
|
26284
|
+
if (Math.round(toOffset) === Math.round(offset)) {
|
|
26285
|
+
return;
|
|
26286
|
+
}
|
|
26287
|
+
var options = {
|
|
26288
|
+
adjustments: undefined,
|
|
26289
|
+
behavior: behavior
|
|
26290
|
+
};
|
|
26291
|
+
_this._scrollToOffset(toOffset, options);
|
|
26292
|
+
var isDynamic = Object.keys(_this.measureElementCache).length > 0;
|
|
26293
|
+
if (isDynamic) {
|
|
26294
|
+
_this.pendingScrollToIndexCallback = function () {
|
|
26295
|
+
_this.scrollToIndex(index, {
|
|
26296
|
+
align: align,
|
|
26297
|
+
behavior: behavior
|
|
26298
|
+
});
|
|
26299
|
+
};
|
|
26300
|
+
}
|
|
26301
|
+
};
|
|
26302
|
+
this.scrollBy = function (adjustments, options) {
|
|
26303
|
+
_this._scrollToOffset(_this.scrollOffset, {
|
|
26304
|
+
adjustments: adjustments,
|
|
26305
|
+
behavior: options == null ? void 0 : options.behavior
|
|
26306
|
+
});
|
|
26307
|
+
};
|
|
26308
|
+
this.getTotalSize = function () {
|
|
26309
|
+
var _this$getMeasurements;
|
|
26310
|
+
return (((_this$getMeasurements = _this.getMeasurements()[_this.options.count - 1]) == null ? void 0 : _this$getMeasurements.end) || _this.options.paddingStart) - _this.options.scrollMargin + _this.options.paddingEnd;
|
|
26311
|
+
};
|
|
26312
|
+
this._scrollToOffset = function (offset, _ref6) {
|
|
26313
|
+
var adjustments = _ref6.adjustments,
|
|
26314
|
+
behavior = _ref6.behavior;
|
|
26315
|
+
_this.options.scrollToFn(offset, {
|
|
26316
|
+
behavior: behavior,
|
|
26317
|
+
adjustments: adjustments
|
|
26318
|
+
}, _this);
|
|
26319
|
+
};
|
|
26320
|
+
this.measure = function () {
|
|
26321
|
+
_this.itemSizeCache = {};
|
|
26322
|
+
_this.notify();
|
|
26323
|
+
};
|
|
26324
|
+
this.setOptions(_opts);
|
|
26325
|
+
this.scrollRect = this.options.initialRect;
|
|
26326
|
+
this.scrollOffset = this.options.initialOffset;
|
|
26327
|
+
this.measurementsCache = this.options.initialMeasurementsCache;
|
|
26328
|
+
this.measurementsCache.forEach(function (item) {
|
|
26329
|
+
_this.itemSizeCache[item.key] = item.size;
|
|
26330
|
+
});
|
|
26331
|
+
this.calculateRange();
|
|
26332
|
+
};
|
|
26333
|
+
var findNearestBinarySearch = function findNearestBinarySearch(low, high, getCurrentValue, value) {
|
|
26334
|
+
while (low <= high) {
|
|
26335
|
+
var middle = (low + high) / 2 | 0;
|
|
26336
|
+
var currentValue = getCurrentValue(middle);
|
|
26337
|
+
if (currentValue < value) {
|
|
26338
|
+
low = middle + 1;
|
|
26339
|
+
} else if (currentValue > value) {
|
|
26340
|
+
high = middle - 1;
|
|
26341
|
+
} else {
|
|
26342
|
+
return middle;
|
|
26343
|
+
}
|
|
26344
|
+
}
|
|
26345
|
+
if (low > 0) {
|
|
26346
|
+
return low - 1;
|
|
26347
|
+
} else {
|
|
26348
|
+
return 0;
|
|
26349
|
+
}
|
|
26350
|
+
};
|
|
26351
|
+
function calculateRange(_ref7) {
|
|
26352
|
+
var measurements = _ref7.measurements,
|
|
26353
|
+
outerSize = _ref7.outerSize,
|
|
26354
|
+
scrollOffset = _ref7.scrollOffset;
|
|
26355
|
+
var count = measurements.length - 1;
|
|
26356
|
+
var getOffset = function getOffset(index) {
|
|
26357
|
+
return measurements[index].start;
|
|
26358
|
+
};
|
|
26359
|
+
var startIndex = findNearestBinarySearch(0, count, getOffset, scrollOffset);
|
|
26360
|
+
var endIndex = startIndex;
|
|
26361
|
+
while (endIndex < count && measurements[endIndex].end < scrollOffset + outerSize) {
|
|
26362
|
+
endIndex++;
|
|
26363
|
+
}
|
|
26364
|
+
return {
|
|
26365
|
+
startIndex: startIndex,
|
|
26366
|
+
endIndex: endIndex
|
|
26367
|
+
};
|
|
26368
|
+
}
|
|
26369
|
+
|
|
26370
|
+
/**
|
|
26371
|
+
* Helper class for the nimble-table for row virtualization.
|
|
26372
|
+
*
|
|
26373
|
+
* @internal
|
|
26374
|
+
*/
|
|
26375
|
+
class Virtualizer {
|
|
26376
|
+
constructor(table) {
|
|
26377
|
+
this.visibleItems = [];
|
|
26378
|
+
this.allRowsHeight = 0;
|
|
26379
|
+
this.headerContainerMarginRight = 0;
|
|
26380
|
+
this.rowContainerYOffset = 0;
|
|
26381
|
+
this.table = table;
|
|
26382
|
+
this.viewportResizeObserver = new ResizeObserver(entries => {
|
|
26383
|
+
const borderBoxSize = entries[0]?.borderBoxSize[0];
|
|
26384
|
+
if (borderBoxSize) {
|
|
26385
|
+
// If we have enough rows that a vertical scrollbar is shown, we need to offset the header widths
|
|
26386
|
+
// by the same margin so the column headers align with the corresponding rendered cells
|
|
26387
|
+
const viewportBoundingWidth = borderBoxSize.inlineSize;
|
|
26388
|
+
this.headerContainerMarginRight = viewportBoundingWidth - this.table.viewport.scrollWidth;
|
|
26389
|
+
}
|
|
26390
|
+
});
|
|
26391
|
+
}
|
|
26392
|
+
connectedCallback() {
|
|
26393
|
+
this.viewportResizeObserver.observe(this.table.viewport);
|
|
26394
|
+
this.updateVirtualizer();
|
|
26395
|
+
}
|
|
26396
|
+
disconnectedCallback() {
|
|
26397
|
+
this.viewportResizeObserver.disconnect();
|
|
26398
|
+
}
|
|
26399
|
+
dataChanged() {
|
|
26400
|
+
if (this.table.$fastController.isConnected) {
|
|
26401
|
+
this.updateVirtualizer();
|
|
26402
|
+
}
|
|
26403
|
+
}
|
|
26404
|
+
updateVirtualizer() {
|
|
26405
|
+
const options = this.createVirtualizerOptions();
|
|
26406
|
+
if (this.virtualizer) {
|
|
26407
|
+
this.virtualizer.setOptions(options);
|
|
26408
|
+
}
|
|
26409
|
+
else {
|
|
26410
|
+
this.virtualizer = new Virtualizer$1(options);
|
|
26411
|
+
}
|
|
26412
|
+
this.virtualizer._willUpdate();
|
|
26413
|
+
this.handleVirtualizerChange();
|
|
26414
|
+
}
|
|
26415
|
+
createVirtualizerOptions() {
|
|
26416
|
+
const rowHeight = parseFloat(controlHeight.getValueFor(this.table));
|
|
26417
|
+
return {
|
|
26418
|
+
count: this.table.tableData.length,
|
|
26419
|
+
getScrollElement: () => {
|
|
26420
|
+
return this.table.viewport;
|
|
26421
|
+
},
|
|
26422
|
+
estimateSize: (_) => rowHeight,
|
|
26423
|
+
enableSmoothScroll: true,
|
|
26424
|
+
overscan: 3,
|
|
26425
|
+
scrollingDelay: 5,
|
|
26426
|
+
scrollToFn: elementScroll,
|
|
26427
|
+
observeElementOffset,
|
|
26428
|
+
observeElementRect,
|
|
26429
|
+
onChange: () => this.handleVirtualizerChange()
|
|
26430
|
+
};
|
|
26431
|
+
}
|
|
26432
|
+
handleVirtualizerChange() {
|
|
26433
|
+
const virtualizer = this.virtualizer;
|
|
26434
|
+
this.visibleItems = virtualizer.getVirtualItems();
|
|
26435
|
+
this.allRowsHeight = virtualizer.getTotalSize();
|
|
26436
|
+
// We're using a separate div ('table-scroll') to represent the full height of all rows, and
|
|
26437
|
+
// the row container's height is only big enough to hold the virtualized rows. So we don't
|
|
26438
|
+
// use the TanStackVirtual-provided 'start' offset (which is in terms of the full height)
|
|
26439
|
+
// to translate every individual row, we just translate the row container.
|
|
26440
|
+
let rowContainerYOffset = 0;
|
|
26441
|
+
if (this.visibleItems.length > 0) {
|
|
26442
|
+
const firstItem = this.visibleItems[0];
|
|
26443
|
+
const lastItem = this.visibleItems[this.visibleItems.length - 1];
|
|
26444
|
+
if (lastItem.end < this.allRowsHeight) {
|
|
26445
|
+
rowContainerYOffset = firstItem.start - virtualizer.scrollOffset;
|
|
26446
|
+
}
|
|
26447
|
+
}
|
|
26448
|
+
this.rowContainerYOffset = rowContainerYOffset;
|
|
26449
|
+
}
|
|
26450
|
+
}
|
|
26451
|
+
__decorate$1([
|
|
26452
|
+
observable
|
|
26453
|
+
], Virtualizer.prototype, "visibleItems", void 0);
|
|
26454
|
+
__decorate$1([
|
|
26455
|
+
observable
|
|
26456
|
+
], Virtualizer.prototype, "allRowsHeight", void 0);
|
|
26457
|
+
__decorate$1([
|
|
26458
|
+
observable
|
|
26459
|
+
], Virtualizer.prototype, "headerContainerMarginRight", void 0);
|
|
26460
|
+
__decorate$1([
|
|
26461
|
+
observable
|
|
26462
|
+
], Virtualizer.prototype, "rowContainerYOffset", void 0);
|
|
26463
|
+
|
|
25771
26464
|
/**
|
|
25772
26465
|
* A nimble-styled table.
|
|
25773
26466
|
*/
|
|
@@ -25807,6 +26500,7 @@
|
|
|
25807
26500
|
autoResetAll: false
|
|
25808
26501
|
};
|
|
25809
26502
|
this.table = createTable(this.options);
|
|
26503
|
+
this.virtualizer = new Virtualizer(this);
|
|
25810
26504
|
}
|
|
25811
26505
|
get validity() {
|
|
25812
26506
|
return this.tableValidator.getValidity();
|
|
@@ -25820,6 +26514,13 @@
|
|
|
25820
26514
|
// generated when creating a new row model.
|
|
25821
26515
|
this.setTableData(this.table.options.data);
|
|
25822
26516
|
}
|
|
26517
|
+
connectedCallback() {
|
|
26518
|
+
super.connectedCallback();
|
|
26519
|
+
this.virtualizer.connectedCallback();
|
|
26520
|
+
}
|
|
26521
|
+
disconnectedCallback() {
|
|
26522
|
+
this.virtualizer.disconnectedCallback();
|
|
26523
|
+
}
|
|
25823
26524
|
checkValidity() {
|
|
25824
26525
|
return this.tableValidator.isValid();
|
|
25825
26526
|
}
|
|
@@ -25846,6 +26547,7 @@
|
|
|
25846
26547
|
};
|
|
25847
26548
|
return rowState;
|
|
25848
26549
|
});
|
|
26550
|
+
this.virtualizer.dataChanged();
|
|
25849
26551
|
}
|
|
25850
26552
|
updateTableOptions(updatedOptions) {
|
|
25851
26553
|
this.options = { ...this.options, ...updatedOptions };
|