@tanstack/table-core 8.0.14 → 8.1.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/build/cjs/features/RowSelection.js +20 -8
- package/build/cjs/features/RowSelection.js.map +1 -1
- package/build/cjs/index.js +1 -0
- package/build/cjs/index.js.map +1 -1
- package/build/esm/index.js +20 -9
- package/build/esm/index.js.map +1 -1
- package/build/stats-html.html +1 -1
- package/build/stats-react.json +301 -301
- package/build/types/index.d.ts +4 -2
- package/build/umd/index.development.js +20 -8
- package/build/umd/index.development.js.map +1 -1
- package/build/umd/index.production.js +1 -1
- package/build/umd/index.production.js.map +1 -1
- package/package.json +1 -1
- package/src/features/RowSelection.ts +22 -10
package/build/types/index.d.ts
CHANGED
|
@@ -582,6 +582,7 @@ declare type RowSelectionOptions<TData extends RowData> = {
|
|
|
582
582
|
declare type RowSelectionRow = {
|
|
583
583
|
getIsSelected: () => boolean;
|
|
584
584
|
getIsSomeSelected: () => boolean;
|
|
585
|
+
getIsAllSubRowsSelected: () => boolean;
|
|
585
586
|
getCanSelect: () => boolean;
|
|
586
587
|
getCanMultiSelect: () => boolean;
|
|
587
588
|
getCanSelectSubRows: () => boolean;
|
|
@@ -606,7 +607,8 @@ declare type RowSelectionInstance<TData extends RowData> = {
|
|
|
606
607
|
};
|
|
607
608
|
declare const RowSelection: TableFeature;
|
|
608
609
|
declare function selectRowsFn<TData extends RowData>(table: Table<TData>, rowModel: RowModel<TData>): RowModel<TData>;
|
|
609
|
-
declare function isRowSelected<TData extends RowData>(row: Row<TData>, selection: Record<string, boolean
|
|
610
|
+
declare function isRowSelected<TData extends RowData>(row: Row<TData>, selection: Record<string, boolean>): boolean;
|
|
611
|
+
declare function isSubRowSelected<TData extends RowData>(row: Row<TData>, selection: Record<string, boolean>, table: Table<TData>): boolean | 'some' | 'all';
|
|
610
612
|
|
|
611
613
|
declare type CoreRow<TData extends RowData> = {
|
|
612
614
|
id: string;
|
|
@@ -756,4 +758,4 @@ declare function getPaginationRowModel<TData extends RowData>(opts?: {
|
|
|
756
758
|
initialSync: boolean;
|
|
757
759
|
}): (table: Table<TData>) => () => RowModel<TData>;
|
|
758
760
|
|
|
759
|
-
export { AccessorFn, AggregationFn, AggregationFnOption, AnyRender, BuiltInAggregationFn, BuiltInFilterFn, BuiltInSortingFn, Cell, Column, ColumnDef, ColumnDefTemplate, ColumnDefaultOptions, ColumnFilter, ColumnFilterAutoRemoveTestFn, ColumnFiltersState, ColumnOrderDefaultOptions, ColumnOrderInstance, ColumnOrderOptions, ColumnOrderState, ColumnOrderTableState, ColumnPinningColumn, ColumnPinningColumnDef, ColumnPinningDefaultOptions, ColumnPinningInstance, ColumnPinningOptions, ColumnPinningPosition, ColumnPinningRow, ColumnPinningState, ColumnPinningTableState, ColumnResizeMode, ColumnSizing, ColumnSizingColumn, ColumnSizingColumnDef, ColumnSizingDefaultOptions, ColumnSizingHeader, ColumnSizingInfoState, ColumnSizingInstance, ColumnSizingOptions, ColumnSizingState, ColumnSizingTableState, ColumnSort, CoreColumn, CoreColumnDef, CoreColumnDefResolved, CoreColumnDefType, CoreHeader, CoreHeaderGroup, CoreInstance, CoreOptions, CoreRow, CoreTableState, CustomAggregationFns, CustomFilterFns, CustomSortingFns, ExpandedInstance, ExpandedOptions, ExpandedRow, ExpandedState, ExpandedStateList, ExpandedTableState, Expanding, FilterFn, FilterFnOption, Filters, FiltersColumn, FiltersColumnDef, FiltersInstance, FiltersOptions, FiltersRow, FiltersTableState, Grouping, GroupingCell, GroupingColumn, GroupingColumnDef, GroupingColumnMode, GroupingInstance, GroupingOptions, GroupingRow, GroupingState, GroupingTableState, Header, HeaderGroup, Headers, HeadersInstance, IfDefined, InitialTableState, NoInfer, OnChangeFn, Ordering, Overwrite, Pagination, PaginationDefaultOptions, PaginationInitialTableState, PaginationInstance, PaginationOptions, PaginationState, PaginationTableState, PartialKeys, Pinning, RequiredKeys, ResolvedColumnFilter, Row, RowData, RowModel, RowSelection, RowSelectionInstance, RowSelectionOptions, RowSelectionRow, RowSelectionState, RowSelectionTableState, RowValues, SortDirection, Sorting, SortingColumn, SortingColumnDef, SortingFn, SortingFnOption, SortingInstance, SortingOptions, SortingState, SortingTableState, Table, TableFeature, TableGenerics, TableOptions, TableOptionsResolved, TableState, TransformFilterValueFn, UnionToIntersection, Updater, Visibility, VisibilityColumn, VisibilityColumnDef, VisibilityDefaultOptions, VisibilityInstance, VisibilityOptions, VisibilityRow, VisibilityState, VisibilityTableState, aggregationFns, buildHeaderGroups, createColumn, createRow, createTable, defaultColumnSizing, expandRows, filterFns, flattenBy, functionalUpdate, getCoreRowModel, getExpandedRowModel, getFacetedMinMaxValues, getFacetedRowModel, getFacetedUniqueValues, getFilteredRowModel, getGroupedRowModel, getPaginationRowModel, getSortedRowModel, isFunction, isRowSelected, makeStateUpdater, memo, noop, orderColumns, passiveEventSupported, reSplitAlphaNumeric, selectRowsFn, shouldAutoRemoveFilter, sortingFns };
|
|
761
|
+
export { AccessorFn, AggregationFn, AggregationFnOption, AnyRender, BuiltInAggregationFn, BuiltInFilterFn, BuiltInSortingFn, Cell, Column, ColumnDef, ColumnDefTemplate, ColumnDefaultOptions, ColumnFilter, ColumnFilterAutoRemoveTestFn, ColumnFiltersState, ColumnOrderDefaultOptions, ColumnOrderInstance, ColumnOrderOptions, ColumnOrderState, ColumnOrderTableState, ColumnPinningColumn, ColumnPinningColumnDef, ColumnPinningDefaultOptions, ColumnPinningInstance, ColumnPinningOptions, ColumnPinningPosition, ColumnPinningRow, ColumnPinningState, ColumnPinningTableState, ColumnResizeMode, ColumnSizing, ColumnSizingColumn, ColumnSizingColumnDef, ColumnSizingDefaultOptions, ColumnSizingHeader, ColumnSizingInfoState, ColumnSizingInstance, ColumnSizingOptions, ColumnSizingState, ColumnSizingTableState, ColumnSort, CoreColumn, CoreColumnDef, CoreColumnDefResolved, CoreColumnDefType, CoreHeader, CoreHeaderGroup, CoreInstance, CoreOptions, CoreRow, CoreTableState, CustomAggregationFns, CustomFilterFns, CustomSortingFns, ExpandedInstance, ExpandedOptions, ExpandedRow, ExpandedState, ExpandedStateList, ExpandedTableState, Expanding, FilterFn, FilterFnOption, Filters, FiltersColumn, FiltersColumnDef, FiltersInstance, FiltersOptions, FiltersRow, FiltersTableState, Grouping, GroupingCell, GroupingColumn, GroupingColumnDef, GroupingColumnMode, GroupingInstance, GroupingOptions, GroupingRow, GroupingState, GroupingTableState, Header, HeaderGroup, Headers, HeadersInstance, IfDefined, InitialTableState, NoInfer, OnChangeFn, Ordering, Overwrite, Pagination, PaginationDefaultOptions, PaginationInitialTableState, PaginationInstance, PaginationOptions, PaginationState, PaginationTableState, PartialKeys, Pinning, RequiredKeys, ResolvedColumnFilter, Row, RowData, RowModel, RowSelection, RowSelectionInstance, RowSelectionOptions, RowSelectionRow, RowSelectionState, RowSelectionTableState, RowValues, SortDirection, Sorting, SortingColumn, SortingColumnDef, SortingFn, SortingFnOption, SortingInstance, SortingOptions, SortingState, SortingTableState, Table, TableFeature, TableGenerics, TableOptions, TableOptionsResolved, TableState, TransformFilterValueFn, UnionToIntersection, Updater, Visibility, VisibilityColumn, VisibilityColumnDef, VisibilityDefaultOptions, VisibilityInstance, VisibilityOptions, VisibilityRow, VisibilityState, VisibilityTableState, aggregationFns, buildHeaderGroups, createColumn, createRow, createTable, defaultColumnSizing, expandRows, filterFns, flattenBy, functionalUpdate, getCoreRowModel, getExpandedRowModel, getFacetedMinMaxValues, getFacetedRowModel, getFacetedUniqueValues, getFilteredRowModel, getGroupedRowModel, getPaginationRowModel, getSortedRowModel, isFunction, isRowSelected, isSubRowSelected, makeStateUpdater, memo, noop, orderColumns, passiveEventSupported, reSplitAlphaNumeric, selectRowsFn, shouldAutoRemoveFilter, sortingFns };
|
|
@@ -2189,13 +2189,19 @@
|
|
|
2189
2189
|
const {
|
|
2190
2190
|
rowSelection
|
|
2191
2191
|
} = table.getState();
|
|
2192
|
-
return isRowSelected(row, rowSelection)
|
|
2192
|
+
return isRowSelected(row, rowSelection);
|
|
2193
2193
|
},
|
|
2194
2194
|
getIsSomeSelected: () => {
|
|
2195
2195
|
const {
|
|
2196
2196
|
rowSelection
|
|
2197
2197
|
} = table.getState();
|
|
2198
|
-
return
|
|
2198
|
+
return isSubRowSelected(row, rowSelection) === 'some';
|
|
2199
|
+
},
|
|
2200
|
+
getIsAllSubRowsSelected: () => {
|
|
2201
|
+
const {
|
|
2202
|
+
rowSelection
|
|
2203
|
+
} = table.getState();
|
|
2204
|
+
return isSubRowSelected(row, rowSelection) === 'all';
|
|
2199
2205
|
},
|
|
2200
2206
|
getCanSelect: () => {
|
|
2201
2207
|
var _table$options$enable;
|
|
@@ -2247,6 +2253,10 @@
|
|
|
2247
2253
|
// ) {
|
|
2248
2254
|
|
|
2249
2255
|
if (value) {
|
|
2256
|
+
if (!row.getCanMultiSelect()) {
|
|
2257
|
+
Object.keys(selectedRowIds).forEach(key => delete selectedRowIds[key]);
|
|
2258
|
+
}
|
|
2259
|
+
|
|
2250
2260
|
selectedRowIds[id] = true;
|
|
2251
2261
|
} else {
|
|
2252
2262
|
delete selectedRowIds[id];
|
|
@@ -2268,7 +2278,7 @@
|
|
|
2268
2278
|
return rows.map(row => {
|
|
2269
2279
|
var _row$subRows2;
|
|
2270
2280
|
|
|
2271
|
-
const isSelected = isRowSelected(row, rowSelection)
|
|
2281
|
+
const isSelected = isRowSelected(row, rowSelection);
|
|
2272
2282
|
|
|
2273
2283
|
if (isSelected) {
|
|
2274
2284
|
newSelectedFlatRows.push(row);
|
|
@@ -2293,11 +2303,12 @@
|
|
|
2293
2303
|
rowsById: newSelectedRowsById
|
|
2294
2304
|
};
|
|
2295
2305
|
}
|
|
2296
|
-
function isRowSelected(row, selection
|
|
2297
|
-
|
|
2298
|
-
return true;
|
|
2299
|
-
}
|
|
2306
|
+
function isRowSelected(row, selection) {
|
|
2307
|
+
var _selection$row$id;
|
|
2300
2308
|
|
|
2309
|
+
return (_selection$row$id = selection[row.id]) != null ? _selection$row$id : false;
|
|
2310
|
+
}
|
|
2311
|
+
function isSubRowSelected(row, selection, table) {
|
|
2301
2312
|
if (row.subRows && row.subRows.length) {
|
|
2302
2313
|
let allChildrenSelected = true;
|
|
2303
2314
|
let someSelected = false;
|
|
@@ -2313,7 +2324,7 @@
|
|
|
2313
2324
|
allChildrenSelected = false;
|
|
2314
2325
|
}
|
|
2315
2326
|
});
|
|
2316
|
-
return allChildrenSelected ?
|
|
2327
|
+
return allChildrenSelected ? 'all' : someSelected ? 'some' : false;
|
|
2317
2328
|
}
|
|
2318
2329
|
|
|
2319
2330
|
return false;
|
|
@@ -3780,6 +3791,7 @@
|
|
|
3780
3791
|
exports.getSortedRowModel = getSortedRowModel;
|
|
3781
3792
|
exports.isFunction = isFunction;
|
|
3782
3793
|
exports.isRowSelected = isRowSelected;
|
|
3794
|
+
exports.isSubRowSelected = isSubRowSelected;
|
|
3783
3795
|
exports.makeStateUpdater = makeStateUpdater;
|
|
3784
3796
|
exports.memo = memo;
|
|
3785
3797
|
exports.noop = noop;
|