@tanstack/table-core 8.0.0-alpha.67 → 8.0.0-alpha.70
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/aggregationFns.js +25 -37
- package/build/cjs/aggregationFns.js.map +1 -1
- package/build/cjs/core.js +167 -46
- package/build/cjs/core.js.map +1 -1
- package/build/cjs/createTable.js +24 -40
- package/build/cjs/createTable.js.map +1 -1
- package/build/cjs/features/Cells.js +28 -34
- package/build/cjs/features/Cells.js.map +1 -1
- package/build/cjs/features/ColumnSizing.js +102 -116
- package/build/cjs/features/ColumnSizing.js.map +1 -1
- package/build/cjs/features/Columns.js +52 -79
- package/build/cjs/features/Columns.js.map +1 -1
- package/build/cjs/features/Expanding.js +49 -58
- package/build/cjs/features/Expanding.js.map +1 -1
- package/build/cjs/features/Filters.js +98 -193
- package/build/cjs/features/Filters.js.map +1 -1
- package/build/cjs/features/Grouping.js +53 -71
- package/build/cjs/features/Grouping.js.map +1 -1
- package/build/cjs/features/Headers.js +109 -165
- package/build/cjs/features/Headers.js.map +1 -1
- package/build/cjs/features/Ordering.js +31 -43
- package/build/cjs/features/Ordering.js.map +1 -1
- package/build/cjs/features/Pagination.js +79 -82
- package/build/cjs/features/Pagination.js.map +1 -1
- package/build/cjs/features/Pinning.js +71 -125
- package/build/cjs/features/Pinning.js.map +1 -1
- package/build/cjs/features/RowSelection.js +93 -112
- package/build/cjs/features/RowSelection.js.map +1 -1
- package/build/cjs/features/Rows.js +32 -22
- package/build/cjs/features/Rows.js.map +1 -1
- package/build/cjs/features/Sorting.js +54 -73
- package/build/cjs/features/Sorting.js.map +1 -1
- package/build/cjs/features/Visibility.js +47 -86
- package/build/cjs/features/Visibility.js.map +1 -1
- package/build/cjs/filterFns.js +48 -72
- package/build/cjs/filterFns.js.map +1 -1
- package/build/cjs/index.js +13 -13
- package/build/cjs/sortingFns.js +21 -21
- package/build/cjs/sortingFns.js.map +1 -1
- package/build/cjs/utils/filterRowsUtils.js +49 -55
- package/build/cjs/utils/filterRowsUtils.js.map +1 -1
- package/build/cjs/utils/getCoreRowModel.js +98 -0
- package/build/cjs/utils/getCoreRowModel.js.map +1 -0
- package/build/cjs/utils/getExpandedRowModel.js +17 -21
- package/build/cjs/utils/getExpandedRowModel.js.map +1 -1
- package/build/cjs/utils/getFacetedMinMaxValues.js +48 -0
- package/build/cjs/utils/getFacetedMinMaxValues.js.map +1 -0
- package/build/cjs/utils/getFacetedRowModel.js +50 -0
- package/build/cjs/utils/getFacetedRowModel.js.map +1 -0
- package/build/cjs/utils/getFacetedUniqueValues.js +48 -0
- package/build/cjs/utils/getFacetedUniqueValues.js.map +1 -0
- package/build/cjs/utils/getFilteredRowModel.js +130 -0
- package/build/cjs/utils/getFilteredRowModel.js.map +1 -0
- package/build/cjs/utils/getGroupedRowModel.js +126 -136
- package/build/cjs/utils/getGroupedRowModel.js.map +1 -1
- package/build/cjs/utils/getPaginationRowModel.js +39 -39
- package/build/cjs/utils/getPaginationRowModel.js.map +1 -1
- package/build/cjs/utils/getSortedRowModel.js +112 -0
- package/build/cjs/utils/getSortedRowModel.js.map +1 -0
- package/build/cjs/utils.js +36 -207
- package/build/cjs/utils.js.map +1 -1
- package/build/esm/index.js +1778 -2347
- package/build/esm/index.js.map +1 -1
- package/build/stats-html.html +1 -1
- package/build/stats-react.json +421 -481
- package/build/types/core.d.ts +3 -5
- package/build/types/features/Cells.d.ts +1 -1
- package/build/types/features/ColumnSizing.d.ts +2 -2
- package/build/types/features/Columns.d.ts +1 -1
- package/build/types/features/Expanding.d.ts +1 -1
- package/build/types/features/Filters.d.ts +12 -7
- package/build/types/features/Grouping.d.ts +5 -4
- package/build/types/features/Ordering.d.ts +1 -1
- package/build/types/features/Pagination.d.ts +4 -4
- package/build/types/features/Pinning.d.ts +1 -1
- package/build/types/features/RowSelection.d.ts +1 -1
- package/build/types/features/Rows.d.ts +4 -3
- package/build/types/features/Sorting.d.ts +2 -1
- package/build/types/features/Visibility.d.ts +1 -0
- package/build/types/index.d.ts +6 -4
- package/build/types/types.d.ts +3 -13
- package/build/types/utils/filterRowsUtils.d.ts +3 -3
- package/build/types/utils/getCoreRowModel.d.ts +2 -0
- package/build/types/utils/getFacetedMinMaxValues.d.ts +2 -0
- package/build/types/utils/getFacetedRowModel.d.ts +2 -0
- package/build/types/utils/getFacetedUniqueValues.d.ts +2 -0
- package/build/types/utils/{getCoreRowModelSync.d.ts → getFilteredRowModel.d.ts} +1 -1
- package/build/types/utils/getGroupedRowModel.d.ts +1 -1
- package/build/types/utils/getSortedRowModel.d.ts +2 -0
- package/build/types/utils.d.ts +1 -17
- package/build/umd/index.development.js +1779 -2350
- 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/core.ts +197 -45
- package/src/features/Cells.ts +7 -11
- package/src/features/ColumnSizing.ts +27 -19
- package/src/features/Columns.ts +4 -8
- package/src/features/Expanding.ts +5 -3
- package/src/features/Filters.ts +105 -162
- package/src/features/Grouping.ts +21 -23
- package/src/features/Ordering.ts +5 -3
- package/src/features/Pagination.ts +32 -19
- package/src/features/Pinning.ts +13 -7
- package/src/features/RowSelection.ts +5 -3
- package/src/features/Rows.ts +21 -6
- package/src/features/Sorting.ts +14 -12
- package/src/features/Visibility.ts +7 -0
- package/src/filterFns.ts +9 -9
- package/src/index.ts +12 -4
- package/src/sortingFns.ts +11 -11
- package/src/types.ts +3 -16
- package/src/utils/filterRowsUtils.ts +47 -68
- package/src/utils/{getCoreRowModelSync.ts → getCoreRowModel.ts} +2 -8
- package/src/utils/getFacetedMinMaxValues.ts +37 -0
- package/src/utils/getFacetedRowModel.ts +50 -0
- package/src/utils/getFacetedUniqueValues.ts +37 -0
- package/src/utils/{getFilteredRowModelSync.ts → getFilteredRowModel.ts} +29 -20
- package/src/utils/getGroupedRowModel.ts +52 -61
- package/src/utils/{getSortedRowModelSync.ts → getSortedRowModel.ts} +3 -3
- package/src/utils.ts +28 -236
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -112
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
- package/build/cjs/utils/getCoreRowModelAsync.js +0 -125
- package/build/cjs/utils/getCoreRowModelAsync.js.map +0 -1
- package/build/cjs/utils/getCoreRowModelSync.js +0 -102
- package/build/cjs/utils/getCoreRowModelSync.js.map +0 -1
- package/build/cjs/utils/getFilteredRowModelSync.js +0 -125
- package/build/cjs/utils/getFilteredRowModelSync.js.map +0 -1
- package/build/cjs/utils/getSortedRowModelSync.js +0 -118
- package/build/cjs/utils/getSortedRowModelSync.js.map +0 -1
- package/build/types/utils/getCoreRowModelAsync.d.ts +0 -4
- package/build/types/utils/getFilteredRowModelAsync.d.ts +0 -4
- package/build/types/utils/getFilteredRowModelSync.d.ts +0 -2
- package/build/types/utils/getSortedRowModelAsync.d.ts +0 -13
- package/build/types/utils/getSortedRowModelSync.d.ts +0 -2
- package/src/utils/getCoreRowModelAsync.ts +0 -104
- package/src/utils/getFilteredRowModelAsync.ts +0 -157
- package/src/utils/getSortedRowModelAsync.ts +0 -200
|
@@ -12,46 +12,45 @@
|
|
|
12
12
|
|
|
13
13
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
14
14
|
|
|
15
|
-
var _rollupPluginBabelHelpers = require('../_virtual/_rollupPluginBabelHelpers.js');
|
|
16
15
|
var filterFns = require('../filterFns.js');
|
|
17
16
|
var utils = require('../utils.js');
|
|
18
|
-
var filterRowsUtils = require('../utils/filterRowsUtils.js');
|
|
19
17
|
|
|
20
18
|
//
|
|
21
|
-
|
|
22
|
-
getDefaultColumn:
|
|
19
|
+
const Filters = {
|
|
20
|
+
getDefaultColumn: () => {
|
|
23
21
|
return {
|
|
24
22
|
filterFn: 'auto'
|
|
25
23
|
};
|
|
26
24
|
},
|
|
27
|
-
getInitialState:
|
|
28
|
-
return
|
|
25
|
+
getInitialState: state => {
|
|
26
|
+
return {
|
|
29
27
|
columnFilters: [],
|
|
30
28
|
globalFilter: undefined,
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
// filtersProgress: 1,
|
|
30
|
+
// facetProgress: {},
|
|
31
|
+
...state
|
|
32
|
+
};
|
|
34
33
|
},
|
|
35
|
-
getDefaultOptions:
|
|
34
|
+
getDefaultOptions: instance => {
|
|
36
35
|
return {
|
|
37
36
|
onColumnFiltersChange: utils.makeStateUpdater('columnFilters', instance),
|
|
38
37
|
onGlobalFilterChange: utils.makeStateUpdater('globalFilter', instance),
|
|
39
|
-
filterFromLeafRows:
|
|
38
|
+
filterFromLeafRows: false,
|
|
40
39
|
globalFilterFn: 'auto',
|
|
41
|
-
getColumnCanGlobalFilter:
|
|
40
|
+
getColumnCanGlobalFilter: column => {
|
|
42
41
|
var _instance$getCoreRowM, _instance$getCoreRowM2;
|
|
43
42
|
|
|
44
|
-
|
|
43
|
+
const value = (_instance$getCoreRowM = instance.getCoreRowModel().flatRows[0]) == null ? void 0 : (_instance$getCoreRowM2 = _instance$getCoreRowM.getAllCellsByColumnId()[column.id]) == null ? void 0 : _instance$getCoreRowM2.getValue();
|
|
45
44
|
return typeof value === 'string';
|
|
46
45
|
}
|
|
47
46
|
};
|
|
48
47
|
},
|
|
49
|
-
createColumn:
|
|
48
|
+
createColumn: (column, instance) => {
|
|
50
49
|
return {
|
|
51
50
|
filterFn: column.filterFn,
|
|
52
|
-
getAutoFilterFn:
|
|
53
|
-
|
|
54
|
-
|
|
51
|
+
getAutoFilterFn: () => {
|
|
52
|
+
const firstRow = instance.getCoreRowModel().flatRows[0];
|
|
53
|
+
const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
|
|
55
54
|
|
|
56
55
|
if (typeof value === 'string') {
|
|
57
56
|
return filterFns.filterFns.includesString;
|
|
@@ -71,56 +70,46 @@ var Filters = {
|
|
|
71
70
|
|
|
72
71
|
return filterFns.filterFns.weakEquals;
|
|
73
72
|
},
|
|
74
|
-
getFilterFn:
|
|
73
|
+
getFilterFn: () => {
|
|
75
74
|
var _ref;
|
|
76
75
|
|
|
77
|
-
|
|
76
|
+
const userFilterFns = instance.options.filterFns;
|
|
78
77
|
return utils.isFunction(column.filterFn) ? column.filterFn : column.filterFn === 'auto' ? column.getAutoFilterFn() : (_ref = userFilterFns == null ? void 0 : userFilterFns[column.filterFn]) != null ? _ref : filterFns.filterFns[column.filterFn];
|
|
79
78
|
},
|
|
80
|
-
getCanFilter:
|
|
79
|
+
getCanFilter: () => {
|
|
81
80
|
var _column$enableColumnF, _instance$options$ena, _instance$options$ena2;
|
|
82
81
|
|
|
83
82
|
return ((_column$enableColumnF = column.enableColumnFilter) != null ? _column$enableColumnF : true) && ((_instance$options$ena = instance.options.enableColumnFilters) != null ? _instance$options$ena : true) && ((_instance$options$ena2 = instance.options.enableFilters) != null ? _instance$options$ena2 : true) && !!column.accessorFn;
|
|
84
83
|
},
|
|
85
|
-
getCanGlobalFilter:
|
|
84
|
+
getCanGlobalFilter: () => {
|
|
86
85
|
var _column$enableGlobalF, _instance$options$ena3, _instance$options$ena4, _instance$options$get;
|
|
87
86
|
|
|
88
87
|
return ((_column$enableGlobalF = column.enableGlobalFilter) != null ? _column$enableGlobalF : true) && ((_instance$options$ena3 = instance.options.enableGlobalFilter) != null ? _instance$options$ena3 : true) && ((_instance$options$ena4 = instance.options.enableFilters) != null ? _instance$options$ena4 : true) && ((_instance$options$get = instance.options.getColumnCanGlobalFilter == null ? void 0 : instance.options.getColumnCanGlobalFilter(column)) != null ? _instance$options$get : true) && !!column.accessorFn;
|
|
89
88
|
},
|
|
90
|
-
getIsFiltered:
|
|
91
|
-
|
|
92
|
-
},
|
|
93
|
-
getFilterValue: function getFilterValue() {
|
|
89
|
+
getIsFiltered: () => column.getFilterIndex() > -1,
|
|
90
|
+
getFilterValue: () => {
|
|
94
91
|
var _instance$getState$co, _instance$getState$co2;
|
|
95
92
|
|
|
96
|
-
return (_instance$getState$co = instance.getState().columnFilters) == null ? void 0 : (_instance$getState$co2 = _instance$getState$co.find(
|
|
97
|
-
return d.id === column.id;
|
|
98
|
-
})) == null ? void 0 : _instance$getState$co2.value;
|
|
93
|
+
return (_instance$getState$co = instance.getState().columnFilters) == null ? void 0 : (_instance$getState$co2 = _instance$getState$co.find(d => d.id === column.id)) == null ? void 0 : _instance$getState$co2.value;
|
|
99
94
|
},
|
|
100
|
-
getFilterIndex:
|
|
95
|
+
getFilterIndex: () => {
|
|
101
96
|
var _instance$getState$co3, _instance$getState$co4;
|
|
102
97
|
|
|
103
|
-
return (_instance$getState$co3 = (_instance$getState$co4 = instance.getState().columnFilters) == null ? void 0 : _instance$getState$co4.findIndex(
|
|
104
|
-
return d.id === column.id;
|
|
105
|
-
})) != null ? _instance$getState$co3 : -1;
|
|
98
|
+
return (_instance$getState$co3 = (_instance$getState$co4 = instance.getState().columnFilters) == null ? void 0 : _instance$getState$co4.findIndex(d => d.id === column.id)) != null ? _instance$getState$co3 : -1;
|
|
106
99
|
},
|
|
107
|
-
setFilterValue:
|
|
108
|
-
instance.setColumnFilters(
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
});
|
|
113
|
-
var newFilter = utils.functionalUpdate(value, previousfilter ? previousfilter.value : undefined); //
|
|
100
|
+
setFilterValue: value => {
|
|
101
|
+
instance.setColumnFilters(old => {
|
|
102
|
+
const filterFn = column.getFilterFn();
|
|
103
|
+
const previousfilter = old == null ? void 0 : old.find(d => d.id === column.id);
|
|
104
|
+
const newFilter = utils.functionalUpdate(value, previousfilter ? previousfilter.value : undefined); //
|
|
114
105
|
|
|
115
106
|
if (shouldAutoRemoveFilter(filterFn, newFilter, column)) {
|
|
116
107
|
var _old$filter;
|
|
117
108
|
|
|
118
|
-
return (_old$filter = old == null ? void 0 : old.filter(
|
|
119
|
-
return d.id !== column.id;
|
|
120
|
-
})) != null ? _old$filter : [];
|
|
109
|
+
return (_old$filter = old == null ? void 0 : old.filter(d => d.id !== column.id)) != null ? _old$filter : [];
|
|
121
110
|
}
|
|
122
111
|
|
|
123
|
-
|
|
112
|
+
const newFilterObj = {
|
|
124
113
|
id: column.id,
|
|
125
114
|
value: newFilter
|
|
126
115
|
};
|
|
@@ -128,7 +117,7 @@ var Filters = {
|
|
|
128
117
|
if (previousfilter) {
|
|
129
118
|
var _old$map;
|
|
130
119
|
|
|
131
|
-
return (_old$map = old == null ? void 0 : old.map(
|
|
120
|
+
return (_old$map = old == null ? void 0 : old.map(d => {
|
|
132
121
|
if (d.id === column.id) {
|
|
133
122
|
return newFilterObj;
|
|
134
123
|
}
|
|
@@ -138,91 +127,71 @@ var Filters = {
|
|
|
138
127
|
}
|
|
139
128
|
|
|
140
129
|
if (old != null && old.length) {
|
|
141
|
-
return [
|
|
130
|
+
return [...old, newFilterObj];
|
|
142
131
|
}
|
|
143
132
|
|
|
144
133
|
return [newFilterObj];
|
|
145
134
|
});
|
|
146
135
|
},
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
if (!(columnFilters != null && columnFilters.length) && !globalFilter) {
|
|
152
|
-
return rowModel;
|
|
136
|
+
_getFacetedRowModel: instance.options.getFacetedRowModel && instance.options.getFacetedRowModel(instance, column.id),
|
|
137
|
+
getFacetedRowModel: () => {
|
|
138
|
+
if (!column._getFacetedRowModel) {
|
|
139
|
+
return instance.getPreFilteredRowModel();
|
|
153
140
|
}
|
|
154
141
|
|
|
155
|
-
return
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
key: process.env.NODE_ENV === 'production' && 'getFacetedRowModel_' + column.id,
|
|
162
|
-
debug: function debug() {
|
|
163
|
-
var _instance$options$deb;
|
|
164
|
-
|
|
165
|
-
return (_instance$options$deb = instance.options.debugAll) != null ? _instance$options$deb : instance.options.debugColumns;
|
|
166
|
-
}
|
|
167
|
-
}),
|
|
168
|
-
getFacetedUniqueValues: utils.memo(function () {
|
|
169
|
-
return [column.getFacetedRowModel()];
|
|
170
|
-
}, function (facetedRowModel) {
|
|
171
|
-
return getRowModelUniqueValues(facetedRowModel, column.id);
|
|
172
|
-
}, {
|
|
173
|
-
key: process.env.NODE_ENV === 'production' && 'column.getFacetedUniqueValues',
|
|
174
|
-
debug: function debug() {
|
|
175
|
-
var _instance$options$deb2;
|
|
176
|
-
|
|
177
|
-
return (_instance$options$deb2 = instance.options.debugAll) != null ? _instance$options$deb2 : instance.options.debugColumns;
|
|
142
|
+
return column._getFacetedRowModel();
|
|
143
|
+
},
|
|
144
|
+
_getFacetedUniqueValues: instance.options.getFacetedUniqueValues && instance.options.getFacetedUniqueValues(instance, column.id),
|
|
145
|
+
getFacetedUniqueValues: () => {
|
|
146
|
+
if (!column._getFacetedUniqueValues) {
|
|
147
|
+
return new Map();
|
|
178
148
|
}
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
debug: function debug() {
|
|
187
|
-
var _instance$options$deb3;
|
|
188
|
-
|
|
189
|
-
return (_instance$options$deb3 = instance.options.debugAll) != null ? _instance$options$deb3 : instance.options.debugColumns;
|
|
149
|
+
|
|
150
|
+
return column._getFacetedUniqueValues();
|
|
151
|
+
},
|
|
152
|
+
_getFacetedMinMaxValues: instance.options.getFacetedMinMaxValues && instance.options.getFacetedMinMaxValues(instance, column.id),
|
|
153
|
+
getFacetedMinMaxValues: () => {
|
|
154
|
+
if (!column._getFacetedMinMaxValues) {
|
|
155
|
+
return [NaN, NaN];
|
|
190
156
|
}
|
|
191
|
-
|
|
157
|
+
|
|
158
|
+
return column._getFacetedMinMaxValues();
|
|
159
|
+
} // () => [column.getFacetedRowModel()],
|
|
160
|
+
// facetedRowModel => getRowModelMinMaxValues(facetedRowModel, column.id),
|
|
161
|
+
|
|
192
162
|
};
|
|
193
163
|
},
|
|
194
|
-
createRow:
|
|
164
|
+
createRow: (row, instance) => {
|
|
195
165
|
return {
|
|
196
166
|
columnFilterMap: {},
|
|
197
167
|
subRowsByFacetId: {}
|
|
198
168
|
};
|
|
199
169
|
},
|
|
200
|
-
createInstance:
|
|
170
|
+
createInstance: instance => {
|
|
201
171
|
return {
|
|
202
|
-
getGlobalAutoFilterFn:
|
|
172
|
+
getGlobalAutoFilterFn: () => {
|
|
203
173
|
return filterFns.filterFns.includesString;
|
|
204
174
|
},
|
|
205
|
-
getGlobalFilterFn:
|
|
175
|
+
getGlobalFilterFn: () => {
|
|
206
176
|
var _ref2;
|
|
207
177
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
178
|
+
const {
|
|
179
|
+
filterFns: userFilterFns,
|
|
180
|
+
globalFilterFn: globalFilterFn
|
|
181
|
+
} = instance.options;
|
|
211
182
|
return utils.isFunction(globalFilterFn) ? globalFilterFn : globalFilterFn === 'auto' ? instance.getGlobalAutoFilterFn() : (_ref2 = userFilterFns == null ? void 0 : userFilterFns[globalFilterFn]) != null ? _ref2 : filterFns.filterFns[globalFilterFn];
|
|
212
183
|
},
|
|
213
|
-
setColumnFilters:
|
|
214
|
-
|
|
184
|
+
setColumnFilters: updater => {
|
|
185
|
+
const leafColumns = instance.getAllLeafColumns();
|
|
215
186
|
|
|
216
|
-
|
|
187
|
+
const updateFn = old => {
|
|
217
188
|
var _functionalUpdate;
|
|
218
189
|
|
|
219
|
-
return (_functionalUpdate = utils.functionalUpdate(updater, old)) == null ? void 0 : _functionalUpdate.filter(
|
|
220
|
-
|
|
221
|
-
return d.id === filter.id;
|
|
222
|
-
});
|
|
190
|
+
return (_functionalUpdate = utils.functionalUpdate(updater, old)) == null ? void 0 : _functionalUpdate.filter(filter => {
|
|
191
|
+
const column = leafColumns.find(d => d.id === filter.id);
|
|
223
192
|
|
|
224
193
|
if (column) {
|
|
225
|
-
|
|
194
|
+
const filterFn = column.getFilterFn();
|
|
226
195
|
|
|
227
196
|
if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {
|
|
228
197
|
return false;
|
|
@@ -235,121 +204,57 @@ var Filters = {
|
|
|
235
204
|
|
|
236
205
|
instance.options.onColumnFiltersChange == null ? void 0 : instance.options.onColumnFiltersChange(updateFn);
|
|
237
206
|
},
|
|
238
|
-
setGlobalFilter:
|
|
207
|
+
setGlobalFilter: updater => {
|
|
239
208
|
instance.options.onGlobalFilterChange == null ? void 0 : instance.options.onGlobalFilterChange(updater);
|
|
240
209
|
},
|
|
241
|
-
resetGlobalFilter:
|
|
242
|
-
instance.setGlobalFilter(instance.initialState.globalFilter);
|
|
210
|
+
resetGlobalFilter: defaultState => {
|
|
211
|
+
instance.setGlobalFilter(defaultState ? undefined : instance.initialState.globalFilter);
|
|
243
212
|
},
|
|
244
|
-
resetColumnFilters:
|
|
213
|
+
resetColumnFilters: defaultState => {
|
|
245
214
|
var _instance$initialStat, _instance$initialStat2;
|
|
246
215
|
|
|
247
|
-
instance.setColumnFilters((_instance$initialStat = (_instance$initialStat2 = instance.initialState) == null ? void 0 : _instance$initialStat2.columnFilters) != null ? _instance$initialStat : []);
|
|
248
|
-
},
|
|
249
|
-
getPreFilteredRowModel: function getPreFilteredRowModel() {
|
|
250
|
-
return instance.getCoreRowModel();
|
|
216
|
+
instance.setColumnFilters(defaultState ? [] : (_instance$initialStat = (_instance$initialStat2 = instance.initialState) == null ? void 0 : _instance$initialStat2.columnFilters) != null ? _instance$initialStat : []);
|
|
251
217
|
},
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
}
|
|
256
|
-
|
|
218
|
+
getPreFilteredRowModel: () => instance.getCoreRowModel(),
|
|
219
|
+
_getFilteredRowModel: instance.options.getFilteredRowModel && instance.options.getFilteredRowModel(instance),
|
|
220
|
+
getFilteredRowModel: () => {
|
|
257
221
|
if (instance.options.manualFiltering || !instance._getFilteredRowModel) {
|
|
258
222
|
return instance.getPreFilteredRowModel();
|
|
259
223
|
}
|
|
260
224
|
|
|
261
225
|
return instance._getFilteredRowModel();
|
|
262
226
|
},
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
instance.
|
|
266
|
-
|
|
267
|
-
if (!(columnFilters != null && columnFilters.length) && !globalFilter) {
|
|
268
|
-
return rowModel;
|
|
227
|
+
_getGlobalFacetedRowModel: instance.options.getFacetedRowModel && instance.options.getFacetedRowModel(instance, '__global__'),
|
|
228
|
+
getGlobalFacetedRowModel: () => {
|
|
229
|
+
if (instance.options.manualFiltering || !instance._getGlobalFacetedRowModel) {
|
|
230
|
+
return instance.getPreFilteredRowModel();
|
|
269
231
|
}
|
|
270
232
|
|
|
271
|
-
return
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
var _instance$options$deb4;
|
|
278
|
-
|
|
279
|
-
return (_instance$options$deb4 = instance.options.debugAll) != null ? _instance$options$deb4 : instance.options.debugColumns;
|
|
280
|
-
}
|
|
281
|
-
}),
|
|
282
|
-
getGlobalFacetedUniqueValues: utils.memo(function () {
|
|
283
|
-
return [instance.getGlobalFacetedRowModel()];
|
|
284
|
-
}, function (facetedRowModel) {
|
|
285
|
-
return getRowModelUniqueValues(facetedRowModel, '__global__');
|
|
286
|
-
}, {
|
|
287
|
-
key: process.env.NODE_ENV === 'production' && 'getGlobalFacetedUniqueValues',
|
|
288
|
-
debug: function debug() {
|
|
289
|
-
var _instance$options$deb5;
|
|
290
|
-
|
|
291
|
-
return (_instance$options$deb5 = instance.options.debugAll) != null ? _instance$options$deb5 : instance.options.debugColumns;
|
|
233
|
+
return instance._getGlobalFacetedRowModel();
|
|
234
|
+
},
|
|
235
|
+
_getGlobalFacetedUniqueValues: instance.options.getFacetedUniqueValues && instance.options.getFacetedUniqueValues(instance, '__global__'),
|
|
236
|
+
getGlobalFacetedUniqueValues: () => {
|
|
237
|
+
if (!instance._getGlobalFacetedUniqueValues) {
|
|
238
|
+
return new Map();
|
|
292
239
|
}
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
debug: function debug() {
|
|
301
|
-
var _instance$options$deb6;
|
|
302
|
-
|
|
303
|
-
return (_instance$options$deb6 = instance.options.debugAll) != null ? _instance$options$deb6 : instance.options.debugColumns;
|
|
240
|
+
|
|
241
|
+
return instance._getGlobalFacetedUniqueValues();
|
|
242
|
+
},
|
|
243
|
+
_getGlobalFacetedMinMaxValues: instance.options.getFacetedMinMaxValues && instance.options.getFacetedMinMaxValues(instance, '__global__'),
|
|
244
|
+
getGlobalFacetedMinMaxValues: () => {
|
|
245
|
+
if (!instance._getGlobalFacetedMinMaxValues) {
|
|
246
|
+
return [NaN, NaN];
|
|
304
247
|
}
|
|
305
|
-
|
|
248
|
+
|
|
249
|
+
return instance._getGlobalFacetedMinMaxValues();
|
|
250
|
+
}
|
|
306
251
|
};
|
|
307
252
|
}
|
|
308
253
|
};
|
|
309
254
|
function shouldAutoRemoveFilter(filterFn, value, column) {
|
|
310
255
|
return (filterFn && filterFn.autoRemove ? filterFn.autoRemove(value, column) : false) || typeof value === 'undefined' || typeof value === 'string' && !value;
|
|
311
256
|
}
|
|
312
|
-
function getRowModelMinMaxValues(rowModel, columnId) {
|
|
313
|
-
var _rowModel$flatRows$0$, _rowModel$flatRows$, _rowModel$flatRows$0$2, _rowModel$flatRows$2;
|
|
314
|
-
|
|
315
|
-
var facetedMinMaxValues = [(_rowModel$flatRows$0$ = (_rowModel$flatRows$ = rowModel.flatRows[0]) == null ? void 0 : _rowModel$flatRows$.values[columnId]) != null ? _rowModel$flatRows$0$ : null, (_rowModel$flatRows$0$2 = (_rowModel$flatRows$2 = rowModel.flatRows[0]) == null ? void 0 : _rowModel$flatRows$2.values[columnId]) != null ? _rowModel$flatRows$0$2 : null];
|
|
316
|
-
|
|
317
|
-
for (var i = 0; i < rowModel.flatRows.length; i++) {
|
|
318
|
-
var _rowModel$flatRows$i;
|
|
319
|
-
|
|
320
|
-
var _value = (_rowModel$flatRows$i = rowModel.flatRows[i]) == null ? void 0 : _rowModel$flatRows$i.values[columnId];
|
|
321
|
-
|
|
322
|
-
if (_value < facetedMinMaxValues[0]) {
|
|
323
|
-
facetedMinMaxValues[0] = _value;
|
|
324
|
-
} else if (_value > facetedMinMaxValues[1]) {
|
|
325
|
-
facetedMinMaxValues[1] = _value;
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
|
|
329
|
-
return facetedMinMaxValues;
|
|
330
|
-
}
|
|
331
|
-
function getRowModelUniqueValues(rowModel, columnId) {
|
|
332
|
-
var facetedUniqueValues = new Map();
|
|
333
|
-
|
|
334
|
-
for (var i = 0; i < rowModel.flatRows.length; i++) {
|
|
335
|
-
var _rowModel$flatRows$i2;
|
|
336
|
-
|
|
337
|
-
var _value2 = (_rowModel$flatRows$i2 = rowModel.flatRows[i]) == null ? void 0 : _rowModel$flatRows$i2.values[columnId];
|
|
338
|
-
|
|
339
|
-
if (facetedUniqueValues.has(_value2)) {
|
|
340
|
-
var _facetedUniqueValues$;
|
|
341
|
-
|
|
342
|
-
facetedUniqueValues.set(_value2, ((_facetedUniqueValues$ = facetedUniqueValues.get(_value2)) != null ? _facetedUniqueValues$ : 0) + 1);
|
|
343
|
-
} else {
|
|
344
|
-
facetedUniqueValues.set(_value2, 1);
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
return facetedUniqueValues;
|
|
349
|
-
}
|
|
350
257
|
|
|
351
258
|
exports.Filters = Filters;
|
|
352
|
-
exports.getRowModelMinMaxValues = getRowModelMinMaxValues;
|
|
353
|
-
exports.getRowModelUniqueValues = getRowModelUniqueValues;
|
|
354
259
|
exports.shouldAutoRemoveFilter = shouldAutoRemoveFilter;
|
|
355
260
|
//# sourceMappingURL=Filters.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Filters.js","sources":["../../../src/features/Filters.ts"],"sourcesContent":["import { RowModel } from '..'\nimport { BuiltInFilterFn, filterFns } from '../filterFns'\nimport {\n Column,\n OnChangeFn,\n TableGenerics,\n TableInstance,\n Row,\n Updater,\n TableFeature,\n} from '../types'\nimport {\n functionalUpdate,\n isFunction,\n makeStateUpdater,\n memo,\n Overwrite,\n} from '../utils'\nimport { filterRows } from '../utils/filterRowsUtils'\n\nexport type FiltersTableState = {\n columnFilters: ColumnFiltersState\n globalFilter: any\n columnFiltersProgress: number\n globalFilterProgress: number\n}\n\nexport type ColumnFiltersState = ColumnFilter[]\n\nexport type ColumnFilter = {\n id: string\n value: unknown\n}\n\nexport type ResolvedColumnFilter<TGenerics extends TableGenerics> = {\n id: string\n resolvedValue: unknown\n filterFn: FilterFn<TGenerics>\n}\n\nexport type FilterFn<TGenerics extends TableGenerics> = {\n (row: Row<TGenerics>, columnId: string, filterValue: any): boolean\n resolveFilterValue?: TransformFilterValueFn<TGenerics>\n autoRemove?: ColumnFilterAutoRemoveTestFn<TGenerics>\n}\n\nexport type TransformFilterValueFn<TGenerics extends TableGenerics> = (\n value: any,\n column?: Column<TGenerics>\n) => unknown\n\nexport type ColumnFilterAutoRemoveTestFn<TGenerics extends TableGenerics> = (\n value: any,\n column?: Column<TGenerics>\n) => boolean\n\nexport type CustomFilterFns<TGenerics extends TableGenerics> = Record<\n string,\n FilterFn<TGenerics>\n>\n\nexport type FilterFnOption<TGenerics extends TableGenerics> =\n | 'auto'\n | BuiltInFilterFn\n | keyof TGenerics['FilterFns']\n | FilterFn<TGenerics>\n\nexport type FiltersColumnDef<TGenerics extends TableGenerics> = {\n filterFn?: FilterFnOption<Overwrite<TGenerics, { Value: any }>>\n enableColumnFilter?: boolean\n enableGlobalFilter?: boolean\n enableFaceting?: boolean\n}\n\nexport type FiltersColumn<TGenerics extends TableGenerics> = {\n filterFn: FilterFnOption<Overwrite<TGenerics, { Value: any }>>\n getAutoFilterFn: () => FilterFn<TGenerics> | undefined\n getFilterFn: () => FilterFn<TGenerics> | undefined\n setFilterValue: (updater: Updater<any>) => void\n getCanFilter: () => boolean\n getCanGlobalFilter: () => boolean\n getFacetedRowModel: () => RowModel<TGenerics>\n getIsFiltered: () => boolean\n getFilterValue: () => unknown\n getFilterIndex: () => number\n getFacetedUniqueValues: () => Map<any, number>\n getFacetedMinMaxValues: () => [any, any]\n}\n\nexport type FiltersRow<TGenerics extends TableGenerics> = {\n columnFilterMap: Record<string, boolean>\n subRowsByFacetId: Record<string, Row<TGenerics>[]>\n}\n\nexport type FiltersOptions<TGenerics extends TableGenerics> = {\n enableFilters?: boolean\n manualFiltering?: boolean\n filterFromLeafRows?: boolean\n filterFns?: TGenerics['FilterFns']\n\n // Column\n onColumnFiltersChange?: OnChangeFn<ColumnFiltersState>\n enableColumnFilters?: boolean\n getFilteredRowModel?: (\n instance: TableInstance<TGenerics>\n ) => () => RowModel<TGenerics>\n\n // Global\n globalFilterFn?: FilterFnOption<TGenerics>\n onGlobalFilterChange?: OnChangeFn<any>\n enableGlobalFilter?: boolean\n getColumnCanGlobalFilter?: (column: Column<TGenerics>) => boolean\n}\n\nexport type FiltersInstance<TGenerics extends TableGenerics> = {\n setColumnFilters: (updater: Updater<ColumnFiltersState>) => void\n\n resetColumnFilters: () => void\n\n // Column Filters\n getPreFilteredRowModel: () => RowModel<TGenerics>\n getFilteredRowModel: () => RowModel<TGenerics>\n _getFilteredRowModel?: () => RowModel<TGenerics>\n\n // Global Filters\n setGlobalFilter: (updater: Updater<any>) => void\n resetGlobalFilter: () => void\n getGlobalAutoFilterFn: () => FilterFn<TGenerics> | undefined\n getGlobalFilterFn: () => FilterFn<TGenerics> | undefined\n\n getGlobalFacetedRowModel: () => RowModel<TGenerics>\n getGlobalFacetedUniqueValues: () => Map<any, number>\n getGlobalFacetedMinMaxValues: () => [number, number]\n}\n\n//\n\nexport const Filters: TableFeature = {\n getDefaultColumn: <\n TGenerics extends TableGenerics\n >(): FiltersColumnDef<TGenerics> => {\n return {\n filterFn: 'auto',\n }\n },\n\n getInitialState: (state): FiltersTableState => {\n return {\n columnFilters: [],\n globalFilter: undefined,\n columnFiltersProgress: 1,\n globalFilterProgress: 1,\n ...state,\n }\n },\n\n getDefaultOptions: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): FiltersOptions<TGenerics> => {\n return {\n onColumnFiltersChange: makeStateUpdater('columnFilters', instance),\n onGlobalFilterChange: makeStateUpdater('globalFilter', instance),\n filterFromLeafRows: true,\n globalFilterFn: 'auto',\n getColumnCanGlobalFilter: column => {\n const value = instance\n .getCoreRowModel()\n .flatRows[0]?.getAllCellsByColumnId()[column.id]?.value\n\n return typeof value === 'string'\n },\n }\n },\n\n createColumn: <TGenerics extends TableGenerics>(\n column: Column<TGenerics>,\n instance: TableInstance<TGenerics>\n ): FiltersColumn<TGenerics> => {\n return {\n filterFn: column.filterFn,\n getAutoFilterFn: () => {\n const firstRow = instance.getCoreRowModel().flatRows[0]\n\n const value = firstRow?.values[column.id]\n\n if (typeof value === 'string') {\n return filterFns.includesString\n }\n\n if (typeof value === 'number') {\n return filterFns.inNumberRange\n }\n\n if (value !== null && typeof value === 'object') {\n return filterFns.equals\n }\n\n if (Array.isArray(value)) {\n return filterFns.arrIncludes\n }\n\n return filterFns.weakEquals\n },\n getFilterFn: () => {\n const userFilterFns = instance.options.filterFns\n\n return isFunction(column.filterFn)\n ? column.filterFn\n : column.filterFn === 'auto'\n ? column.getAutoFilterFn()\n : (userFilterFns as Record<string, any>)?.[\n column.filterFn as string\n ] ??\n (filterFns[\n column.filterFn as BuiltInFilterFn\n ] as FilterFn<TGenerics>)\n },\n getCanFilter: () => {\n return (\n (column.enableColumnFilter ?? true) &&\n (instance.options.enableColumnFilters ?? true) &&\n (instance.options.enableFilters ?? true) &&\n !!column.accessorFn\n )\n },\n\n getCanGlobalFilter: () => {\n return (\n (column.enableGlobalFilter ?? true) &&\n (instance.options.enableGlobalFilter ?? true) &&\n (instance.options.enableFilters ?? true) &&\n (instance.options.getColumnCanGlobalFilter?.(column) ?? true) &&\n !!column.accessorFn\n )\n },\n\n getIsFiltered: () => column.getFilterIndex() > -1,\n\n getFilterValue: () =>\n instance.getState().columnFilters?.find(d => d.id === column.id)?.value,\n\n getFilterIndex: () =>\n instance.getState().columnFilters?.findIndex(d => d.id === column.id) ??\n -1,\n\n setFilterValue: value => {\n instance.setColumnFilters(old => {\n const filterFn = column.getFilterFn()\n const previousfilter = old?.find(d => d.id === column.id)\n\n const newFilter = functionalUpdate(\n value,\n previousfilter ? previousfilter.value : undefined\n )\n\n //\n if (\n shouldAutoRemoveFilter(\n filterFn as FilterFn<TGenerics>,\n newFilter,\n column\n )\n ) {\n return old?.filter(d => d.id !== column.id) ?? []\n }\n\n const newFilterObj = { id: column.id, value: newFilter }\n\n if (previousfilter) {\n return (\n old?.map(d => {\n if (d.id === column.id) {\n return newFilterObj\n }\n return d\n }) ?? []\n )\n }\n\n if (old?.length) {\n return [...old, newFilterObj]\n }\n\n return [newFilterObj]\n })\n },\n getFacetedRowModel: memo(\n () => [\n instance.getPreFilteredRowModel(),\n instance.getState().columnFilters,\n instance.getState().globalFilter,\n // Include this to force the filtered facet info to be calculated\n instance.getFilteredRowModel(),\n ],\n (rowModel, columnFilters, globalFilter, _) => {\n if (!columnFilters?.length && !globalFilter) {\n return rowModel\n }\n\n return filterRows(\n rowModel.rows,\n [\n ...columnFilters.map(d => d.id).filter(d => d !== column.id),\n globalFilter ? '__global__' : undefined,\n ].filter(Boolean) as string[],\n instance\n )\n },\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'getFacetedRowModel_' + column.id,\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n getFacetedUniqueValues: memo(\n () => [column.getFacetedRowModel()],\n facetedRowModel => getRowModelUniqueValues(facetedRowModel, column.id),\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'column.getFacetedUniqueValues',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n getFacetedMinMaxValues: memo(\n () => [column.getFacetedRowModel()],\n facetedRowModel => getRowModelMinMaxValues(facetedRowModel, column.id),\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'column.getFacetedMinMaxValues',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n }\n },\n\n createRow: <TGenerics extends TableGenerics>(\n row: Row<TGenerics>,\n instance: TableInstance<TGenerics>\n ): FiltersRow<TGenerics> => {\n return {\n columnFilterMap: {},\n subRowsByFacetId: {},\n }\n },\n\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): FiltersInstance<TGenerics> => {\n return {\n getGlobalAutoFilterFn: () => {\n return filterFns.includesString\n },\n\n getGlobalFilterFn: () => {\n const { filterFns: userFilterFns, globalFilterFn: globalFilterFn } =\n instance.options\n\n return isFunction(globalFilterFn)\n ? globalFilterFn\n : globalFilterFn === 'auto'\n ? instance.getGlobalAutoFilterFn()\n : (userFilterFns as Record<string, any>)?.[\n globalFilterFn as string\n ] ??\n (filterFns[\n globalFilterFn as BuiltInFilterFn\n ] as FilterFn<TGenerics>)\n },\n\n setColumnFilters: (updater: Updater<ColumnFiltersState>) => {\n const leafColumns = instance.getAllLeafColumns()\n\n const updateFn = (old: ColumnFiltersState) => {\n return functionalUpdate(updater, old)?.filter(filter => {\n const column = leafColumns.find(d => d.id === filter.id)\n\n if (column) {\n const filterFn = column.getFilterFn()\n\n if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {\n return false\n }\n }\n\n return true\n })\n }\n\n instance.options.onColumnFiltersChange?.(updateFn)\n },\n\n setGlobalFilter: updater => {\n instance.options.onGlobalFilterChange?.(updater)\n },\n\n resetGlobalFilter: () => {\n instance.setGlobalFilter(instance.initialState.globalFilter)\n },\n\n resetColumnFilters: () => {\n instance.setColumnFilters(instance.initialState?.columnFilters ?? [])\n },\n\n getPreFilteredRowModel: () => instance.getCoreRowModel(),\n getFilteredRowModel: () => {\n if (\n !instance._getFilteredRowModel &&\n instance.options.getFilteredRowModel\n ) {\n instance._getFilteredRowModel =\n instance.options.getFilteredRowModel(instance)\n }\n\n if (\n instance.options.manualFiltering ||\n !instance._getFilteredRowModel\n ) {\n return instance.getPreFilteredRowModel()\n }\n\n return instance._getFilteredRowModel()\n },\n\n getGlobalFacetedRowModel: memo(\n () => [\n instance.getPreFilteredRowModel(),\n instance.getState().columnFilters,\n instance.getState().globalFilter,\n // Include this to force the filtered facet info to be calculated\n instance.getFilteredRowModel(),\n ],\n (rowModel, columnFilters, globalFilter, _) => {\n if (!columnFilters?.length && !globalFilter) {\n return rowModel\n }\n\n return filterRows(\n rowModel.rows,\n columnFilters.map(d => d.id),\n instance\n )\n },\n {\n key:\n process.env.NODE_ENV === 'production' && 'getGlobalFacetedRowModel',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n getGlobalFacetedUniqueValues: memo(\n () => [instance.getGlobalFacetedRowModel()],\n facetedRowModel =>\n getRowModelUniqueValues(facetedRowModel, '__global__'),\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'getGlobalFacetedUniqueValues',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n getGlobalFacetedMinMaxValues: memo(\n () => [instance.getGlobalFacetedRowModel()],\n facetedRowModel =>\n getRowModelMinMaxValues(facetedRowModel, '__global__'),\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'getGlobalFacetedMinMaxValues',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n }\n },\n}\n\nexport function shouldAutoRemoveFilter<TGenerics extends TableGenerics>(\n filterFn?: FilterFn<TGenerics>,\n value?: any,\n column?: Column<TGenerics>\n) {\n return (\n (filterFn && filterFn.autoRemove\n ? filterFn.autoRemove(value, column)\n : false) ||\n typeof value === 'undefined' ||\n (typeof value === 'string' && !value)\n )\n}\n\nexport function getRowModelMinMaxValues<TGenerics extends TableGenerics>(\n rowModel: RowModel<TGenerics>,\n columnId: string\n) {\n let facetedMinMaxValues: [any, any] = [\n rowModel.flatRows[0]?.values[columnId] ?? null,\n rowModel.flatRows[0]?.values[columnId] ?? null,\n ]\n\n for (let i = 0; i < rowModel.flatRows.length; i++) {\n const value = rowModel.flatRows[i]?.values[columnId]\n\n if (value < facetedMinMaxValues[0]) {\n facetedMinMaxValues[0] = value\n } else if (value > facetedMinMaxValues[1]) {\n facetedMinMaxValues[1] = value\n }\n }\n\n return facetedMinMaxValues\n}\n\nexport function getRowModelUniqueValues<TGenerics extends TableGenerics>(\n rowModel: RowModel<TGenerics>,\n columnId: string\n) {\n let facetedUniqueValues = new Map<any, number>()\n\n for (let i = 0; i < rowModel.flatRows.length; i++) {\n const value = rowModel.flatRows[i]?.values[columnId]\n\n if (facetedUniqueValues.has(value)) {\n facetedUniqueValues.set(value, (facetedUniqueValues.get(value) ?? 0) + 1)\n } else {\n facetedUniqueValues.set(value, 1)\n }\n }\n\n return facetedUniqueValues\n}\n"],"names":["Filters","getDefaultColumn","filterFn","getInitialState","state","_extends","columnFilters","globalFilter","undefined","columnFiltersProgress","globalFilterProgress","getDefaultOptions","instance","onColumnFiltersChange","makeStateUpdater","onGlobalFilterChange","filterFromLeafRows","globalFilterFn","getColumnCanGlobalFilter","column","value","getCoreRowModel","flatRows","getAllCellsByColumnId","id","createColumn","getAutoFilterFn","firstRow","values","filterFns","includesString","inNumberRange","equals","Array","isArray","arrIncludes","weakEquals","getFilterFn","userFilterFns","options","isFunction","getCanFilter","enableColumnFilter","enableColumnFilters","enableFilters","accessorFn","getCanGlobalFilter","enableGlobalFilter","getIsFiltered","getFilterIndex","getFilterValue","getState","find","d","findIndex","setFilterValue","setColumnFilters","old","previousfilter","newFilter","functionalUpdate","shouldAutoRemoveFilter","filter","newFilterObj","map","length","getFacetedRowModel","memo","getPreFilteredRowModel","getFilteredRowModel","rowModel","_","filterRows","rows","Boolean","key","process","env","NODE_ENV","debug","debugAll","debugColumns","getFacetedUniqueValues","facetedRowModel","getRowModelUniqueValues","getFacetedMinMaxValues","getRowModelMinMaxValues","createRow","row","columnFilterMap","subRowsByFacetId","createInstance","getGlobalAutoFilterFn","getGlobalFilterFn","updater","leafColumns","getAllLeafColumns","updateFn","setGlobalFilter","resetGlobalFilter","initialState","resetColumnFilters","_getFilteredRowModel","manualFiltering","getGlobalFacetedRowModel","getGlobalFacetedUniqueValues","getGlobalFacetedMinMaxValues","autoRemove","columnId","facetedMinMaxValues","i","facetedUniqueValues","Map","has","set","get"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Filters.js","sources":["../../../src/features/Filters.ts"],"sourcesContent":["import { RowModel } from '..'\nimport { BuiltInFilterFn, filterFns } from '../filterFns'\nimport {\n Column,\n OnChangeFn,\n TableGenerics,\n TableInstance,\n Row,\n Updater,\n TableFeature,\n} from '../types'\nimport {\n functionalUpdate,\n isFunction,\n makeStateUpdater,\n memo,\n Overwrite,\n} from '../utils'\n\nexport type FiltersTableState = {\n columnFilters: ColumnFiltersState\n globalFilter: any\n // filtersProgress: number\n // facetProgress: Record<string, number>\n}\n\nexport type ColumnFiltersState = ColumnFilter[]\n\nexport type ColumnFilter = {\n id: string\n value: unknown\n}\n\nexport type ResolvedColumnFilter<TGenerics extends TableGenerics> = {\n id: string\n resolvedValue: unknown\n filterFn: FilterFn<TGenerics>\n}\n\nexport type FilterFn<TGenerics extends TableGenerics> = {\n (row: Row<TGenerics>, columnId: string, filterValue: any): boolean\n resolveFilterValue?: TransformFilterValueFn<TGenerics>\n autoRemove?: ColumnFilterAutoRemoveTestFn<TGenerics>\n}\n\nexport type TransformFilterValueFn<TGenerics extends TableGenerics> = (\n value: any,\n column?: Column<TGenerics>\n) => unknown\n\nexport type ColumnFilterAutoRemoveTestFn<TGenerics extends TableGenerics> = (\n value: any,\n column?: Column<TGenerics>\n) => boolean\n\nexport type CustomFilterFns<TGenerics extends TableGenerics> = Record<\n string,\n FilterFn<TGenerics>\n>\n\nexport type FilterFnOption<TGenerics extends TableGenerics> =\n | 'auto'\n | BuiltInFilterFn\n | keyof TGenerics['FilterFns']\n | FilterFn<TGenerics>\n\nexport type FiltersColumnDef<TGenerics extends TableGenerics> = {\n filterFn?: FilterFnOption<Overwrite<TGenerics, { Value: any }>>\n enableColumnFilter?: boolean\n enableGlobalFilter?: boolean\n enableFaceting?: boolean\n}\n\nexport type FiltersColumn<TGenerics extends TableGenerics> = {\n filterFn: FilterFnOption<Overwrite<TGenerics, { Value: any }>>\n getAutoFilterFn: () => FilterFn<TGenerics> | undefined\n getFilterFn: () => FilterFn<TGenerics> | undefined\n setFilterValue: (updater: Updater<any>) => void\n getCanFilter: () => boolean\n getCanGlobalFilter: () => boolean\n getFacetedRowModel: () => RowModel<TGenerics>\n _getFacetedRowModel?: () => RowModel<TGenerics>\n getIsFiltered: () => boolean\n getFilterValue: () => unknown\n getFilterIndex: () => number\n getFacetedUniqueValues: () => Map<any, number>\n _getFacetedUniqueValues?: () => Map<any, number>\n getFacetedMinMaxValues: () => [any, any]\n _getFacetedMinMaxValues?: () => [any, any]\n}\n\nexport type FiltersRow<TGenerics extends TableGenerics> = {\n columnFilterMap: Record<string, boolean>\n subRowsByFacetId: Record<string, Row<TGenerics>[]>\n}\n\nexport type FiltersOptions<TGenerics extends TableGenerics> = {\n enableFilters?: boolean\n manualFiltering?: boolean\n filterFromLeafRows?: boolean\n filterFns?: TGenerics['FilterFns']\n getFilteredRowModel?: (\n instance: TableInstance<TGenerics>\n ) => () => RowModel<TGenerics>\n\n // Column\n onColumnFiltersChange?: OnChangeFn<ColumnFiltersState>\n enableColumnFilters?: boolean\n\n // Global\n globalFilterFn?: FilterFnOption<TGenerics>\n onGlobalFilterChange?: OnChangeFn<any>\n enableGlobalFilter?: boolean\n getColumnCanGlobalFilter?: (column: Column<TGenerics>) => boolean\n\n // Faceting\n getFacetedRowModel?: (\n instance: TableInstance<TGenerics>,\n columnId: string\n ) => () => RowModel<TGenerics>\n getFacetedUniqueValues?: (\n instance: TableInstance<TGenerics>,\n columnId: string\n ) => () => Map<any, number>\n getFacetedMinMaxValues?: (\n instance: TableInstance<TGenerics>,\n columnId: string\n ) => () => [number, number]\n}\n\nexport type FiltersInstance<TGenerics extends TableGenerics> = {\n setColumnFilters: (updater: Updater<ColumnFiltersState>) => void\n\n resetColumnFilters: (defaultState?: boolean) => void\n\n // Column Filters\n getPreFilteredRowModel: () => RowModel<TGenerics>\n getFilteredRowModel: () => RowModel<TGenerics>\n _getFilteredRowModel?: () => RowModel<TGenerics>\n\n // Global Filters\n setGlobalFilter: (updater: Updater<any>) => void\n resetGlobalFilter: (defaultState?: boolean) => void\n getGlobalAutoFilterFn: () => FilterFn<TGenerics> | undefined\n getGlobalFilterFn: () => FilterFn<TGenerics> | undefined\n getGlobalFacetedRowModel: () => RowModel<TGenerics>\n _getGlobalFacetedRowModel?: () => RowModel<TGenerics>\n getGlobalFacetedUniqueValues: () => Map<any, number>\n _getGlobalFacetedUniqueValues?: () => Map<any, number>\n getGlobalFacetedMinMaxValues: () => [number, number]\n _getGlobalFacetedMinMaxValues?: () => [number, number]\n}\n\n//\n\nexport const Filters: TableFeature = {\n getDefaultColumn: <\n TGenerics extends TableGenerics\n >(): FiltersColumnDef<TGenerics> => {\n return {\n filterFn: 'auto',\n }\n },\n\n getInitialState: (state): FiltersTableState => {\n return {\n columnFilters: [],\n globalFilter: undefined,\n // filtersProgress: 1,\n // facetProgress: {},\n ...state,\n }\n },\n\n getDefaultOptions: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): FiltersOptions<TGenerics> => {\n return {\n onColumnFiltersChange: makeStateUpdater('columnFilters', instance),\n onGlobalFilterChange: makeStateUpdater('globalFilter', instance),\n filterFromLeafRows: false,\n globalFilterFn: 'auto',\n getColumnCanGlobalFilter: column => {\n const value = instance\n .getCoreRowModel()\n .flatRows[0]?.getAllCellsByColumnId()\n [column.id]?.getValue()\n\n return typeof value === 'string'\n },\n }\n },\n\n createColumn: <TGenerics extends TableGenerics>(\n column: Column<TGenerics>,\n instance: TableInstance<TGenerics>\n ): FiltersColumn<TGenerics> => {\n return {\n filterFn: column.filterFn,\n getAutoFilterFn: () => {\n const firstRow = instance.getCoreRowModel().flatRows[0]\n\n const value = firstRow?.getValue(column.id)\n\n if (typeof value === 'string') {\n return filterFns.includesString\n }\n\n if (typeof value === 'number') {\n return filterFns.inNumberRange\n }\n\n if (value !== null && typeof value === 'object') {\n return filterFns.equals\n }\n\n if (Array.isArray(value)) {\n return filterFns.arrIncludes\n }\n\n return filterFns.weakEquals\n },\n getFilterFn: () => {\n const userFilterFns = instance.options.filterFns\n\n return isFunction(column.filterFn)\n ? column.filterFn\n : column.filterFn === 'auto'\n ? column.getAutoFilterFn()\n : (userFilterFns as Record<string, any>)?.[\n column.filterFn as string\n ] ??\n (filterFns[\n column.filterFn as BuiltInFilterFn\n ] as FilterFn<TGenerics>)\n },\n getCanFilter: () => {\n return (\n (column.enableColumnFilter ?? true) &&\n (instance.options.enableColumnFilters ?? true) &&\n (instance.options.enableFilters ?? true) &&\n !!column.accessorFn\n )\n },\n\n getCanGlobalFilter: () => {\n return (\n (column.enableGlobalFilter ?? true) &&\n (instance.options.enableGlobalFilter ?? true) &&\n (instance.options.enableFilters ?? true) &&\n (instance.options.getColumnCanGlobalFilter?.(column) ?? true) &&\n !!column.accessorFn\n )\n },\n\n getIsFiltered: () => column.getFilterIndex() > -1,\n\n getFilterValue: () =>\n instance.getState().columnFilters?.find(d => d.id === column.id)?.value,\n\n getFilterIndex: () =>\n instance.getState().columnFilters?.findIndex(d => d.id === column.id) ??\n -1,\n\n setFilterValue: value => {\n instance.setColumnFilters(old => {\n const filterFn = column.getFilterFn()\n const previousfilter = old?.find(d => d.id === column.id)\n\n const newFilter = functionalUpdate(\n value,\n previousfilter ? previousfilter.value : undefined\n )\n\n //\n if (\n shouldAutoRemoveFilter(\n filterFn as FilterFn<TGenerics>,\n newFilter,\n column\n )\n ) {\n return old?.filter(d => d.id !== column.id) ?? []\n }\n\n const newFilterObj = { id: column.id, value: newFilter }\n\n if (previousfilter) {\n return (\n old?.map(d => {\n if (d.id === column.id) {\n return newFilterObj\n }\n return d\n }) ?? []\n )\n }\n\n if (old?.length) {\n return [...old, newFilterObj]\n }\n\n return [newFilterObj]\n })\n },\n _getFacetedRowModel:\n instance.options.getFacetedRowModel &&\n instance.options.getFacetedRowModel(instance, column.id),\n getFacetedRowModel: () => {\n if (!column._getFacetedRowModel) {\n return instance.getPreFilteredRowModel()\n }\n\n return column._getFacetedRowModel()\n },\n _getFacetedUniqueValues:\n instance.options.getFacetedUniqueValues &&\n instance.options.getFacetedUniqueValues(instance, column.id),\n getFacetedUniqueValues: () => {\n if (!column._getFacetedUniqueValues) {\n return new Map()\n }\n\n return column._getFacetedUniqueValues()\n },\n _getFacetedMinMaxValues:\n instance.options.getFacetedMinMaxValues &&\n instance.options.getFacetedMinMaxValues(instance, column.id),\n getFacetedMinMaxValues: () => {\n if (!column._getFacetedMinMaxValues) {\n return [NaN, NaN]\n }\n\n return column._getFacetedMinMaxValues()\n },\n // () => [column.getFacetedRowModel()],\n // facetedRowModel => getRowModelMinMaxValues(facetedRowModel, column.id),\n }\n },\n\n createRow: <TGenerics extends TableGenerics>(\n row: Row<TGenerics>,\n instance: TableInstance<TGenerics>\n ): FiltersRow<TGenerics> => {\n return {\n columnFilterMap: {},\n subRowsByFacetId: {},\n }\n },\n\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): FiltersInstance<TGenerics> => {\n return {\n getGlobalAutoFilterFn: () => {\n return filterFns.includesString\n },\n\n getGlobalFilterFn: () => {\n const { filterFns: userFilterFns, globalFilterFn: globalFilterFn } =\n instance.options\n\n return isFunction(globalFilterFn)\n ? globalFilterFn\n : globalFilterFn === 'auto'\n ? instance.getGlobalAutoFilterFn()\n : (userFilterFns as Record<string, any>)?.[\n globalFilterFn as string\n ] ??\n (filterFns[\n globalFilterFn as BuiltInFilterFn\n ] as FilterFn<TGenerics>)\n },\n\n setColumnFilters: (updater: Updater<ColumnFiltersState>) => {\n const leafColumns = instance.getAllLeafColumns()\n\n const updateFn = (old: ColumnFiltersState) => {\n return functionalUpdate(updater, old)?.filter(filter => {\n const column = leafColumns.find(d => d.id === filter.id)\n\n if (column) {\n const filterFn = column.getFilterFn()\n\n if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {\n return false\n }\n }\n\n return true\n })\n }\n\n instance.options.onColumnFiltersChange?.(updateFn)\n },\n\n setGlobalFilter: updater => {\n instance.options.onGlobalFilterChange?.(updater)\n },\n\n resetGlobalFilter: defaultState => {\n instance.setGlobalFilter(\n defaultState ? undefined : instance.initialState.globalFilter\n )\n },\n\n resetColumnFilters: defaultState => {\n instance.setColumnFilters(\n defaultState ? [] : instance.initialState?.columnFilters ?? []\n )\n },\n\n getPreFilteredRowModel: () => instance.getCoreRowModel(),\n _getFilteredRowModel:\n instance.options.getFilteredRowModel &&\n instance.options.getFilteredRowModel(instance),\n getFilteredRowModel: () => {\n if (\n instance.options.manualFiltering ||\n !instance._getFilteredRowModel\n ) {\n return instance.getPreFilteredRowModel()\n }\n\n return instance._getFilteredRowModel()\n },\n\n _getGlobalFacetedRowModel:\n instance.options.getFacetedRowModel &&\n instance.options.getFacetedRowModel(instance, '__global__'),\n\n getGlobalFacetedRowModel: () => {\n if (\n instance.options.manualFiltering ||\n !instance._getGlobalFacetedRowModel\n ) {\n return instance.getPreFilteredRowModel()\n }\n\n return instance._getGlobalFacetedRowModel()\n },\n\n _getGlobalFacetedUniqueValues:\n instance.options.getFacetedUniqueValues &&\n instance.options.getFacetedUniqueValues(instance, '__global__'),\n getGlobalFacetedUniqueValues: () => {\n if (!instance._getGlobalFacetedUniqueValues) {\n return new Map()\n }\n\n return instance._getGlobalFacetedUniqueValues()\n },\n\n _getGlobalFacetedMinMaxValues:\n instance.options.getFacetedMinMaxValues &&\n instance.options.getFacetedMinMaxValues(instance, '__global__'),\n getGlobalFacetedMinMaxValues: () => {\n if (!instance._getGlobalFacetedMinMaxValues) {\n return [NaN, NaN]\n }\n\n return instance._getGlobalFacetedMinMaxValues()\n },\n }\n },\n}\n\nexport function shouldAutoRemoveFilter<TGenerics extends TableGenerics>(\n filterFn?: FilterFn<TGenerics>,\n value?: any,\n column?: Column<TGenerics>\n) {\n return (\n (filterFn && filterFn.autoRemove\n ? filterFn.autoRemove(value, column)\n : false) ||\n typeof value === 'undefined' ||\n (typeof value === 'string' && !value)\n )\n}\n"],"names":["Filters","getDefaultColumn","filterFn","getInitialState","state","columnFilters","globalFilter","undefined","getDefaultOptions","instance","onColumnFiltersChange","makeStateUpdater","onGlobalFilterChange","filterFromLeafRows","globalFilterFn","getColumnCanGlobalFilter","column","value","getCoreRowModel","flatRows","getAllCellsByColumnId","id","getValue","createColumn","getAutoFilterFn","firstRow","filterFns","includesString","inNumberRange","equals","Array","isArray","arrIncludes","weakEquals","getFilterFn","userFilterFns","options","isFunction","getCanFilter","enableColumnFilter","enableColumnFilters","enableFilters","accessorFn","getCanGlobalFilter","enableGlobalFilter","getIsFiltered","getFilterIndex","getFilterValue","getState","find","d","findIndex","setFilterValue","setColumnFilters","old","previousfilter","newFilter","functionalUpdate","shouldAutoRemoveFilter","filter","newFilterObj","map","length","_getFacetedRowModel","getFacetedRowModel","getPreFilteredRowModel","_getFacetedUniqueValues","getFacetedUniqueValues","Map","_getFacetedMinMaxValues","getFacetedMinMaxValues","NaN","createRow","row","columnFilterMap","subRowsByFacetId","createInstance","getGlobalAutoFilterFn","getGlobalFilterFn","updater","leafColumns","getAllLeafColumns","updateFn","setGlobalFilter","resetGlobalFilter","defaultState","initialState","resetColumnFilters","_getFilteredRowModel","getFilteredRowModel","manualFiltering","_getGlobalFacetedRowModel","getGlobalFacetedRowModel","_getGlobalFacetedUniqueValues","getGlobalFacetedUniqueValues","_getGlobalFacetedMinMaxValues","getGlobalFacetedMinMaxValues","autoRemove"],"mappings":"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"}
|