@tanstack/react-table 8.0.0-alpha.3 → 8.0.0-alpha.30

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.
Files changed (107) hide show
  1. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -78
  2. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  3. package/build/cjs/index.js +96 -12
  4. package/build/cjs/index.js.map +1 -1
  5. package/build/esm/index.js +39 -4687
  6. package/build/esm/index.js.map +1 -1
  7. package/build/stats-html.html +1 -1
  8. package/build/stats-react.json +28 -746
  9. package/build/types/index.d.ts +13 -7
  10. package/build/umd/index.development.js +49 -4689
  11. package/build/umd/index.development.js.map +1 -1
  12. package/build/umd/index.production.js +1 -1
  13. package/build/umd/index.production.js.map +1 -1
  14. package/package.json +4 -1
  15. package/src/index.tsx +103 -7
  16. package/build/cjs/aggregationTypes.js +0 -130
  17. package/build/cjs/aggregationTypes.js.map +0 -1
  18. package/build/cjs/core.js +0 -552
  19. package/build/cjs/core.js.map +0 -1
  20. package/build/cjs/createTable.js +0 -108
  21. package/build/cjs/createTable.js.map +0 -1
  22. package/build/cjs/features/ColumnSizing.js +0 -317
  23. package/build/cjs/features/ColumnSizing.js.map +0 -1
  24. package/build/cjs/features/Expanding.js +0 -255
  25. package/build/cjs/features/Expanding.js.map +0 -1
  26. package/build/cjs/features/Filters.js +0 -445
  27. package/build/cjs/features/Filters.js.map +0 -1
  28. package/build/cjs/features/Grouping.js +0 -249
  29. package/build/cjs/features/Grouping.js.map +0 -1
  30. package/build/cjs/features/Headers.js +0 -549
  31. package/build/cjs/features/Headers.js.map +0 -1
  32. package/build/cjs/features/Ordering.js +0 -86
  33. package/build/cjs/features/Ordering.js.map +0 -1
  34. package/build/cjs/features/Pagination.js +0 -194
  35. package/build/cjs/features/Pagination.js.map +0 -1
  36. package/build/cjs/features/Pinning.js +0 -149
  37. package/build/cjs/features/Pinning.js.map +0 -1
  38. package/build/cjs/features/RowSelection.js +0 -541
  39. package/build/cjs/features/RowSelection.js.map +0 -1
  40. package/build/cjs/features/Sorting.js +0 -327
  41. package/build/cjs/features/Sorting.js.map +0 -1
  42. package/build/cjs/features/Visibility.js +0 -166
  43. package/build/cjs/features/Visibility.js.map +0 -1
  44. package/build/cjs/filterTypes.js +0 -172
  45. package/build/cjs/filterTypes.js.map +0 -1
  46. package/build/cjs/sortTypes.js +0 -122
  47. package/build/cjs/sortTypes.js.map +0 -1
  48. package/build/cjs/utils/columnFilterRowsFn.js +0 -131
  49. package/build/cjs/utils/columnFilterRowsFn.js.map +0 -1
  50. package/build/cjs/utils/expandRowsFn.js +0 -38
  51. package/build/cjs/utils/expandRowsFn.js.map +0 -1
  52. package/build/cjs/utils/globalFilterRowsFn.js +0 -101
  53. package/build/cjs/utils/globalFilterRowsFn.js.map +0 -1
  54. package/build/cjs/utils/groupRowsFn.js +0 -155
  55. package/build/cjs/utils/groupRowsFn.js.map +0 -1
  56. package/build/cjs/utils/sortRowsFn.js +0 -94
  57. package/build/cjs/utils/sortRowsFn.js.map +0 -1
  58. package/build/cjs/utils.js +0 -146
  59. package/build/cjs/utils.js.map +0 -1
  60. package/build/types/aggregationTypes.d.ts +0 -22
  61. package/build/types/core.d.ts +0 -111
  62. package/build/types/createTable.d.ts +0 -53
  63. package/build/types/features/ColumnSizing.d.ts +0 -67
  64. package/build/types/features/Expanding.d.ts +0 -53
  65. package/build/types/features/Filters.d.ts +0 -98
  66. package/build/types/features/Grouping.d.ts +0 -82
  67. package/build/types/features/Headers.d.ts +0 -41
  68. package/build/types/features/Ordering.d.ts +0 -19
  69. package/build/types/features/Pagination.d.ts +0 -43
  70. package/build/types/features/Pinning.d.ts +0 -39
  71. package/build/types/features/RowSelection.d.ts +0 -66
  72. package/build/types/features/Sorting.d.ts +0 -78
  73. package/build/types/features/Visibility.d.ts +0 -47
  74. package/build/types/filterTypes.d.ts +0 -50
  75. package/build/types/sortTypes.d.ts +0 -18
  76. package/build/types/types.d.ts +0 -127
  77. package/build/types/utils/columnFilterRowsFn.d.ts +0 -2
  78. package/build/types/utils/expandRowsFn.d.ts +0 -2
  79. package/build/types/utils/globalFilterRowsFn.d.ts +0 -2
  80. package/build/types/utils/groupRowsFn.d.ts +0 -2
  81. package/build/types/utils/paginateRowsFn.d.ts +0 -2
  82. package/build/types/utils/sortRowsFn.d.ts +0 -2
  83. package/build/types/utils.d.ts +0 -28
  84. package/src/aggregationTypes.ts +0 -115
  85. package/src/core.tsx +0 -1182
  86. package/src/createTable.tsx +0 -241
  87. package/src/features/ColumnSizing.ts +0 -453
  88. package/src/features/Expanding.ts +0 -404
  89. package/src/features/Filters.ts +0 -762
  90. package/src/features/Grouping.ts +0 -466
  91. package/src/features/Headers.ts +0 -912
  92. package/src/features/Ordering.ts +0 -133
  93. package/src/features/Pagination.ts +0 -314
  94. package/src/features/Pinning.ts +0 -200
  95. package/src/features/RowSelection.ts +0 -831
  96. package/src/features/Sorting.ts +0 -547
  97. package/src/features/Visibility.ts +0 -279
  98. package/src/filterTypes.ts +0 -251
  99. package/src/sortTypes.ts +0 -159
  100. package/src/types.ts +0 -331
  101. package/src/utils/columnFilterRowsFn.ts +0 -155
  102. package/src/utils/expandRowsFn.ts +0 -50
  103. package/src/utils/globalFilterRowsFn.ts +0 -122
  104. package/src/utils/groupRowsFn.ts +0 -194
  105. package/src/utils/paginateRowsFn.ts +0 -34
  106. package/src/utils/sortRowsFn.ts +0 -115
  107. package/src/utils.tsx +0 -257
@@ -1,445 +0,0 @@
1
- /**
2
- * react-table
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
11
- 'use strict';
12
-
13
- Object.defineProperty(exports, '__esModule', { value: true });
14
-
15
- var filterTypes = require('../filterTypes.js');
16
- var utils = require('../utils.js');
17
-
18
- //
19
- function getDefaultColumn() {
20
- return {
21
- filterType: 'auto'
22
- };
23
- }
24
- function getInitialState() {
25
- return {
26
- columnFilters: [],
27
- globalFilter: undefined
28
- };
29
- }
30
- function getDefaultOptions(instance) {
31
- return {
32
- onColumnFiltersChange: utils.makeStateUpdater('columnFilters', instance),
33
- onGlobalFilterChange: utils.makeStateUpdater('globalFilter', instance),
34
- autoResetColumnFilters: true,
35
- filterFromChildrenUp: true,
36
- autoResetGlobalFilter: true,
37
- globalFilterType: 'auto',
38
- getColumnCanGlobalFilterFn: function getColumnCanGlobalFilterFn(column) {
39
- var _instance$getCoreFlat, _instance$getCoreFlat2;
40
-
41
- var value = (_instance$getCoreFlat = instance.getCoreFlatRows()[0]) == null ? void 0 : (_instance$getCoreFlat2 = _instance$getCoreFlat.getAllCellsByColumnId()[column.id]) == null ? void 0 : _instance$getCoreFlat2.value;
42
- return typeof value === 'string';
43
- }
44
- };
45
- }
46
- function createColumn(column, instance) {
47
- var getFacetInfo = utils.memo(function () {
48
- return [column.getPreFilteredRows()];
49
- }, function (rows) {
50
- var _rows$0$values$column, _rows$, _rows$0$values$column2, _rows$2;
51
-
52
- if (rows === void 0) {
53
- rows = [];
54
- }
55
-
56
- var preFilteredUniqueValues = new Map();
57
- var preFilteredMinMaxValues = [(_rows$0$values$column = (_rows$ = rows[0]) == null ? void 0 : _rows$.values[column.id]) != null ? _rows$0$values$column : null, (_rows$0$values$column2 = (_rows$2 = rows[0]) == null ? void 0 : _rows$2.values[column.id]) != null ? _rows$0$values$column2 : null];
58
-
59
- for (var i = 0; i < rows.length; i++) {
60
- var _rows$i;
61
-
62
- var _value = (_rows$i = rows[i]) == null ? void 0 : _rows$i.values[column.id];
63
-
64
- if (preFilteredUniqueValues.has(_value)) {
65
- var _preFilteredUniqueVal;
66
-
67
- preFilteredUniqueValues.set(_value, ((_preFilteredUniqueVal = preFilteredUniqueValues.get(_value)) != null ? _preFilteredUniqueVal : 0) + 1);
68
- } else {
69
- preFilteredUniqueValues.set(_value, 1);
70
- }
71
-
72
- if (_value < preFilteredMinMaxValues[0]) {
73
- preFilteredMinMaxValues[0] = _value;
74
- } else if (_value > preFilteredMinMaxValues[1]) {
75
- preFilteredMinMaxValues[1] = _value;
76
- }
77
- }
78
-
79
- return {
80
- preFilteredUniqueValues: preFilteredUniqueValues,
81
- preFilteredMinMaxValues: preFilteredMinMaxValues
82
- };
83
- }, {
84
- key: 'column.getFacetInfo',
85
- debug: instance.options.debug
86
- });
87
- return {
88
- filterType: column.filterType,
89
- getCanColumnFilter: function getCanColumnFilter() {
90
- return instance.getColumnCanColumnFilter(column.id);
91
- },
92
- getCanGlobalFilter: function getCanGlobalFilter() {
93
- return instance.getColumnCanGlobalFilter(column.id);
94
- },
95
- getColumnFilterIndex: function getColumnFilterIndex() {
96
- return instance.getColumnFilterIndex(column.id);
97
- },
98
- getIsColumnFiltered: function getIsColumnFiltered() {
99
- return instance.getColumnIsFiltered(column.id);
100
- },
101
- getColumnFilterValue: function getColumnFilterValue() {
102
- return instance.getColumnFilterValue(column.id);
103
- },
104
- setColumnFilterValue: function setColumnFilterValue(val) {
105
- return instance.setColumnFilterValue(column.id, val);
106
- },
107
- getPreFilteredUniqueValues: function getPreFilteredUniqueValues() {
108
- return getFacetInfo().preFilteredUniqueValues;
109
- },
110
- getPreFilteredMinMaxValues: function getPreFilteredMinMaxValues() {
111
- return getFacetInfo().preFilteredMinMaxValues;
112
- },
113
- getPreFilteredRows: function getPreFilteredRows() {
114
- return undefined;
115
- }
116
- };
117
- }
118
- function getInstance(instance) {
119
- var registered = false;
120
- return {
121
- _notifyFiltersReset: function _notifyFiltersReset() {
122
- if (!registered) {
123
- registered = true;
124
- return;
125
- }
126
-
127
- if (instance.options.autoResetAll === false) {
128
- return;
129
- }
130
-
131
- if (instance.options.autoResetAll === true) {
132
- instance.resetSorting();
133
- } else {
134
- if (instance.options.autoResetColumnFilters) {
135
- instance.resetColumnFilters();
136
- }
137
-
138
- if (instance.options.autoResetGlobalFilter) {
139
- instance.resetGlobalFilter();
140
- }
141
- }
142
- },
143
- getColumnAutoFilterFn: function getColumnAutoFilterFn(columnId) {
144
- var firstRow = instance.getCoreFlatRows()[0];
145
- var value = firstRow == null ? void 0 : firstRow.values[columnId];
146
-
147
- if (typeof value === 'string') {
148
- return filterTypes.filterTypes.includesString;
149
- }
150
-
151
- if (typeof value === 'number') {
152
- return filterTypes.filterTypes.betweenNumberRange;
153
- }
154
-
155
- if (value !== null && typeof value === 'object') {
156
- return filterTypes.filterTypes.equals;
157
- }
158
-
159
- if (Array.isArray(value)) {
160
- return filterTypes.filterTypes.arrIncludes;
161
- }
162
-
163
- return filterTypes.filterTypes.weakEquals;
164
- },
165
- getGlobalAutoFilterFn: function getGlobalAutoFilterFn() {
166
- return filterTypes.filterTypes.includesString;
167
- },
168
- getColumnFilterFn: function getColumnFilterFn(columnId) {
169
- var _ref;
170
-
171
- var column = instance.getColumn(columnId);
172
- var userFilterTypes = instance.options.filterTypes;
173
-
174
- if (!column) {
175
- throw new Error();
176
- }
177
-
178
- return utils.isFunction(column.filterType) ? column.filterType : column.filterType === 'auto' ? instance.getColumnAutoFilterFn(columnId) : (_ref = userFilterTypes == null ? void 0 : userFilterTypes[column.filterType]) != null ? _ref : filterTypes.filterTypes[column.filterType];
179
- },
180
- getGlobalFilterFn: function getGlobalFilterFn() {
181
- var _ref2;
182
-
183
- var _instance$options = instance.options,
184
- userFilterTypes = _instance$options.filterTypes,
185
- globalFilterType = _instance$options.globalFilterType;
186
- return utils.isFunction(globalFilterType) ? globalFilterType : globalFilterType === 'auto' ? instance.getGlobalAutoFilterFn() : (_ref2 = userFilterTypes == null ? void 0 : userFilterTypes[globalFilterType]) != null ? _ref2 : filterTypes.filterTypes[globalFilterType];
187
- },
188
- setColumnFilters: function setColumnFilters(updater) {
189
- var leafColumns = instance.getAllLeafColumns();
190
-
191
- var updateFn = function updateFn(old) {
192
- var _functionalUpdate;
193
-
194
- return (_functionalUpdate = utils.functionalUpdate(updater, old)) == null ? void 0 : _functionalUpdate.filter(function (filter) {
195
- var column = leafColumns.find(function (d) {
196
- return d.id === filter.id;
197
- });
198
-
199
- if (column) {
200
- var filterFn = instance.getColumnFilterFn(column.id);
201
-
202
- if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {
203
- return false;
204
- }
205
- }
206
-
207
- return true;
208
- });
209
- };
210
-
211
- instance.options.onColumnFiltersChange == null ? void 0 : instance.options.onColumnFiltersChange(updateFn, updateFn(instance.getState().columnFilters));
212
- },
213
- setGlobalFilter: function setGlobalFilter(updater) {
214
- instance.options.onGlobalFilterChange == null ? void 0 : instance.options.onGlobalFilterChange(updater, utils.functionalUpdate(updater, instance.getState().globalFilter));
215
- },
216
- resetGlobalFilter: function resetGlobalFilter() {
217
- instance.setGlobalFilter(undefined);
218
- },
219
- getColumnCanColumnFilter: function getColumnCanColumnFilter(columnId) {
220
- var _ref3, _ref4, _ref5, _ref6, _ref7, _column$enableAllFilt;
221
-
222
- var column = instance.getColumn(columnId);
223
-
224
- if (!column) {
225
- throw new Error();
226
- }
227
-
228
- return (_ref3 = (_ref4 = (_ref5 = (_ref6 = (_ref7 = (_column$enableAllFilt = column.enableAllFilters) != null ? _column$enableAllFilt : column.enableColumnFilter) != null ? _ref7 : instance.options.enableFilters) != null ? _ref6 : instance.options.enableColumnFilters) != null ? _ref5 : column.defaultCanFilter) != null ? _ref4 : column.defaultCanColumnFilter) != null ? _ref3 : !!column.accessorFn;
229
- },
230
- getColumnCanGlobalFilter: function getColumnCanGlobalFilter(columnId) {
231
- var _ref8, _ref9, _ref10, _ref11, _ref12, _ref13, _instance$options$ena;
232
-
233
- var column = instance.getColumn(columnId);
234
-
235
- if (!column) {
236
- throw new Error();
237
- }
238
-
239
- return (_ref8 = ((_ref9 = (_ref10 = (_ref11 = (_ref12 = (_ref13 = (_instance$options$ena = instance.options.enableFilters) != null ? _instance$options$ena : instance.options.enableGlobalFilter) != null ? _ref13 : column.enableAllFilters) != null ? _ref12 : column.enableGlobalFilter) != null ? _ref11 : column.defaultCanFilter) != null ? _ref10 : column.defaultCanGlobalFilter) != null ? _ref9 : !!column.accessorFn) && (instance.options.getColumnCanGlobalFilterFn == null ? void 0 : instance.options.getColumnCanGlobalFilterFn(column))) != null ? _ref8 : true;
240
- },
241
- getColumnIsFiltered: function getColumnIsFiltered(columnId) {
242
- return instance.getColumnFilterIndex(columnId) > -1;
243
- },
244
- getColumnFilterValue: function getColumnFilterValue(columnId) {
245
- var _instance$getState$co, _instance$getState$co2;
246
-
247
- return (_instance$getState$co = instance.getState().columnFilters) == null ? void 0 : (_instance$getState$co2 = _instance$getState$co.find(function (d) {
248
- return d.id === columnId;
249
- })) == null ? void 0 : _instance$getState$co2.value;
250
- },
251
- getColumnFilterIndex: function getColumnFilterIndex(columnId) {
252
- var _instance$getState$co3, _instance$getState$co4;
253
-
254
- return (_instance$getState$co3 = (_instance$getState$co4 = instance.getState().columnFilters) == null ? void 0 : _instance$getState$co4.findIndex(function (d) {
255
- return d.id === columnId;
256
- })) != null ? _instance$getState$co3 : -1;
257
- },
258
- setColumnFilterValue: function setColumnFilterValue(columnId, value) {
259
- if (!columnId) return;
260
- instance.setColumnFilters(function (old) {
261
- var column = instance.getColumn(columnId);
262
-
263
- if (!column) {
264
- if (process.env.NODE_ENV !== 'production') {
265
- console.warn("React-Table: Could not find a column with id: " + columnId);
266
- }
267
-
268
- throw new Error();
269
- }
270
-
271
- var filterFn = instance.getColumnFilterFn(column.id);
272
- var previousfilter = old == null ? void 0 : old.find(function (d) {
273
- return d.id === columnId;
274
- });
275
- var newFilter = utils.functionalUpdate(value, previousfilter ? previousfilter.value : undefined); //
276
-
277
- if (shouldAutoRemoveFilter(filterFn, newFilter, column)) {
278
- var _old$filter;
279
-
280
- return (_old$filter = old == null ? void 0 : old.filter(function (d) {
281
- return d.id !== columnId;
282
- })) != null ? _old$filter : [];
283
- }
284
-
285
- var newFilterObj = {
286
- id: columnId,
287
- value: newFilter
288
- };
289
-
290
- if (previousfilter) {
291
- var _old$map;
292
-
293
- return (_old$map = old == null ? void 0 : old.map(function (d) {
294
- if (d.id === columnId) {
295
- return newFilterObj;
296
- }
297
-
298
- return d;
299
- })) != null ? _old$map : [];
300
- }
301
-
302
- if (old != null && old.length) {
303
- return [].concat(old, [newFilterObj]);
304
- }
305
-
306
- return [newFilterObj];
307
- });
308
- },
309
- resetColumnFilters: function resetColumnFilters() {
310
- var _instance$options$ini, _instance$options2, _instance$options2$in;
311
-
312
- instance.setColumnFilters((_instance$options$ini = (_instance$options2 = instance.options) == null ? void 0 : (_instance$options2$in = _instance$options2.initialState) == null ? void 0 : _instance$options2$in.columnFilters) != null ? _instance$options$ini : []);
313
- },
314
- getColumnFilteredRowModel: utils.memo(function () {
315
- return [instance.getState().columnFilters, instance.getCoreRowModel(), instance.options.columnFilterRowsFn];
316
- }, function (columnFilters, rowModel, columnFiltersFn) {
317
- var columnFilteredRowModel = function () {
318
- if (!(columnFilters != null && columnFilters.length) || !columnFiltersFn) {
319
- return rowModel;
320
- }
321
-
322
- if (process.env.NODE_ENV !== 'production' && instance.options.debug) console.info('Column Filtering...');
323
- return columnFiltersFn(instance, rowModel);
324
- }(); // Now that each filtered column has it's partially filtered rows,
325
- // lets assign the final filtered rows to all of the other columns
326
-
327
-
328
- var nonFilteredColumns = instance.getAllLeafColumns().filter(function (column) {
329
- var _instance$getState$co5;
330
-
331
- return !((_instance$getState$co5 = instance.getState().columnFilters) != null && _instance$getState$co5.find(function (d) {
332
- return d.id === column.id;
333
- }));
334
- }); // This essentially enables faceted filter options to be built easily
335
- // using every column's preFilteredRows value
336
-
337
- nonFilteredColumns.forEach(function (column) {
338
- column.getPreFilteredRows = function () {
339
- return columnFilteredRowModel.rows;
340
- };
341
- });
342
- return columnFilteredRowModel;
343
- }, {
344
- key: 'getColumnFilteredRowModel',
345
- debug: instance.options.debug
346
- }),
347
- // These might be easier to remember than "column" filtered rows
348
- getPreFilteredRowModel: function getPreFilteredRowModel() {
349
- return instance.getCoreRowModel();
350
- },
351
- getPreFilteredRows: function getPreFilteredRows() {
352
- return instance.getCoreRowModel().rows;
353
- },
354
- getPreFilteredFlatRows: function getPreFilteredFlatRows() {
355
- return instance.getCoreRowModel().flatRows;
356
- },
357
- getPreFilteredRowsById: function getPreFilteredRowsById() {
358
- return instance.getCoreRowModel().rowsById;
359
- },
360
- // Pre Column Filter
361
- getPreColumnFilteredRows: function getPreColumnFilteredRows() {
362
- return instance.getCoreRowModel().rows;
363
- },
364
- getPreColumnFilteredFlatRows: function getPreColumnFilteredFlatRows() {
365
- return instance.getCoreRowModel().flatRows;
366
- },
367
- getPreColumnFilteredRowsById: function getPreColumnFilteredRowsById() {
368
- return instance.getCoreRowModel().rowsById;
369
- },
370
- getColumnFilteredRows: function getColumnFilteredRows() {
371
- return instance.getColumnFilteredRowModel().rows;
372
- },
373
- getColumnFilteredFlatRows: function getColumnFilteredFlatRows() {
374
- return instance.getColumnFilteredRowModel().flatRows;
375
- },
376
- getColumnFilteredRowsById: function getColumnFilteredRowsById() {
377
- return instance.getColumnFilteredRowModel().rowsById;
378
- },
379
- getGlobalFilteredRowModel: utils.memo(function () {
380
- return [instance.getState().globalFilter, instance.getColumnFilteredRowModel(), instance.options.globalFilterRowsFn];
381
- }, function (globalFilterValue, columnFilteredRowModel, globalFiltersFn) {
382
- var globalFilteredRowModel = function () {
383
- if (!globalFiltersFn || !globalFilterValue) {
384
- return columnFilteredRowModel;
385
- }
386
-
387
- if (process.env.NODE_ENV !== 'production' && instance.options.debug) console.info('Global Filtering...');
388
- return globalFiltersFn(instance, columnFilteredRowModel);
389
- }(); // Now that each filtered column has it's partially filtered rows,
390
- // lets assign the final filtered rows to all of the other columns
391
-
392
-
393
- var nonFilteredColumns = instance.getAllLeafColumns().filter(function (column) {
394
- var _instance$getState$co6;
395
-
396
- return !((_instance$getState$co6 = instance.getState().columnFilters) != null && _instance$getState$co6.find(function (d) {
397
- return d.id === column.id;
398
- }));
399
- }); // This essentially enables faceted filter options to be built easily
400
- // using every column's preFilteredRows value
401
-
402
- nonFilteredColumns.forEach(function (column) {
403
- column.getPreFilteredRows = function () {
404
- return globalFilteredRowModel.rows;
405
- };
406
- });
407
- return globalFilteredRowModel;
408
- }, {
409
- key: 'getGlobalFilteredRowModel',
410
- debug: instance.options.debug,
411
- onChange: function onChange() {
412
- return instance._notifySortingReset();
413
- }
414
- }),
415
- getPreGlobalFilteredRows: function getPreGlobalFilteredRows() {
416
- return instance.getColumnFilteredRowModel().rows;
417
- },
418
- getPreGlobalFilteredFlatRows: function getPreGlobalFilteredFlatRows() {
419
- return instance.getColumnFilteredRowModel().flatRows;
420
- },
421
- getPreGlobalFilteredRowsById: function getPreGlobalFilteredRowsById() {
422
- return instance.getColumnFilteredRowModel().rowsById;
423
- },
424
- getGlobalFilteredRows: function getGlobalFilteredRows() {
425
- return instance.getGlobalFilteredRowModel().rows;
426
- },
427
- getGlobalFilteredFlatRows: function getGlobalFilteredFlatRows() {
428
- return instance.getGlobalFilteredRowModel().flatRows;
429
- },
430
- getGlobalFilteredRowsById: function getGlobalFilteredRowsById() {
431
- return instance.getGlobalFilteredRowModel().rowsById;
432
- }
433
- };
434
- }
435
- function shouldAutoRemoveFilter(filterFn, value, column) {
436
- return (filterFn && filterFn.autoRemove ? filterFn.autoRemove(value, column) : false) || typeof value === 'undefined' || typeof value === 'string' && !value;
437
- }
438
-
439
- exports.createColumn = createColumn;
440
- exports.getDefaultColumn = getDefaultColumn;
441
- exports.getDefaultOptions = getDefaultOptions;
442
- exports.getInitialState = getInitialState;
443
- exports.getInstance = getInstance;
444
- exports.shouldAutoRemoveFilter = shouldAutoRemoveFilter;
445
- //# sourceMappingURL=Filters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Filters.js","sources":["../../../src/features/Filters.ts"],"sourcesContent":["import { RowModel } from '..'\nimport { BuiltInFilterType, filterTypes } from '../filterTypes'\nimport {\n Column,\n Listener,\n OnChangeFn,\n ReactTable,\n Row,\n Updater,\n} from '../types'\nimport { functionalUpdate, isFunction, makeStateUpdater, memo } from '../utils'\n\nexport type ColumnFilter = {\n id: string\n value: unknown\n}\n\nexport type ColumnFiltersState = ColumnFilter[]\n\nexport type FilterFn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> =\n {\n (\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: any\n ): any\n autoRemove?: ColumnFilterAutoRemoveTestFn<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >\n }\n\nexport type ColumnFilterAutoRemoveTestFn<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n> = (\n value: unknown,\n column?: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n) => boolean\n\nexport type CustomFilterTypes<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n> = Record<\n string,\n FilterFn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n>\n\nexport type FiltersTableState = {\n columnFilters: ColumnFiltersState\n globalFilter: any\n}\n\nexport type FilterType<TFilterFns> =\n | 'auto'\n | BuiltInFilterType\n | keyof TFilterFns\n | FilterFn<unknown, unknown, TFilterFns, any, any>\n\nexport type FiltersColumnDef<TFilterFns> = {\n filterType?: FilterType<TFilterFns>\n enableAllFilters?: boolean\n enableColumnFilter?: boolean\n enableGlobalFilter?: boolean\n defaultCanFilter?: boolean\n defaultCanColumnFilter?: boolean\n defaultCanGlobalFilter?: boolean\n}\n\nexport type FiltersColumn<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n> = {\n filterType: FilterType<TFilterFns>\n getCanColumnFilter: () => boolean\n getCanGlobalFilter: () => boolean\n getColumnFilterIndex: () => number\n getIsColumnFiltered: () => boolean\n getColumnFilterValue: () => unknown\n setColumnFilterValue: (value: any) => void\n getPreFilteredRows: () =>\n | Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[]\n | undefined\n getPreFilteredUniqueValues: () => Map<any, number>\n getPreFilteredMinMaxValues: () => [any, any]\n}\n\nexport type FiltersOptions<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n> = {\n filterFromChildrenUp?: boolean\n filterTypes?: TFilterFns\n enableFilters?: boolean\n // Column\n onColumnFiltersChange?: OnChangeFn<ColumnFiltersState>\n autoResetColumnFilters?: boolean\n enableColumnFilters?: boolean\n columnFilterRowsFn?: (\n instance: ReactTable<any, any, any, any, any>,\n coreRowModel: RowModel<any, any, any, any, any>\n ) => RowModel<any, any, any, any, any>\n // Global\n globalFilterType?: FilterType<TFilterFns>\n onGlobalFilterChange?: OnChangeFn<any>\n enableGlobalFilters?: boolean\n autoResetGlobalFilter?: boolean\n enableGlobalFilter?: boolean\n globalFilterRowsFn?: (\n instance: ReactTable<any, any, any, any, any>,\n rowModel: RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n ) => RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n getColumnCanGlobalFilterFn?: (\n column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n ) => boolean\n}\n\nexport type FiltersInstance<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n> = {\n _notifyFiltersReset: () => void\n getColumnAutoFilterFn: (\n columnId: string\n ) => FilterFn<any, any, any, any, any> | undefined\n\n getColumnFilterFn: (\n columnId: string\n ) => FilterFn<any, any, any, any, any> | undefined\n\n setColumnFilters: (updater: Updater<ColumnFiltersState>) => void\n setColumnFilterValue: (columnId: string, value: any) => void\n resetColumnFilters: () => void\n getColumnCanColumnFilter: (columnId: string) => boolean\n getColumnCanGlobalFilterFn?: (\n column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n ) => boolean\n\n getColumnIsFiltered: (columnId: string) => boolean\n getColumnFilterValue: (columnId: string) => unknown\n getColumnFilterIndex: (columnId: string) => number\n getColumnFilteredRowModel: () => RowModel<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >\n getPreFilteredRowModel: () => RowModel<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >\n getPreFilteredRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getPreFilteredFlatRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getPreFilteredRowsById: () => Record<\n string,\n Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n >\n getPreColumnFilteredRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getPreColumnFilteredFlatRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getPreColumnFilteredRowsById: () => Record<\n string,\n Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n >\n getColumnFilteredRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getColumnFilteredFlatRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getColumnFilteredRowsById: () => Record<\n string,\n Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n >\n\n // Global\n setGlobalFilter: (updater: Updater<any>) => void\n resetGlobalFilter: () => void\n getGlobalAutoFilterFn: () => FilterFn<any, any, any, any, any> | undefined\n getGlobalFilterFn: () => FilterFn<any, any, any, any, any> | undefined\n getColumnCanGlobalFilter: (columnId: string) => boolean\n getGlobalFilteredRowModel: () => RowModel<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >\n getPreGlobalFilteredRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getPreGlobalFilteredFlatRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getPreGlobalFilteredRowsById: () => Record<\n string,\n Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n >\n getGlobalFilteredRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getGlobalFilteredFlatRows: () => Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getGlobalFilteredRowsById: () => Record<\n string,\n Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n >\n}\n\n//\n\nexport function getDefaultColumn<TFilterFns>(): FiltersColumnDef<TFilterFns> {\n return {\n filterType: 'auto',\n }\n}\n\nexport function getInitialState(): FiltersTableState {\n return {\n columnFilters: [],\n globalFilter: undefined,\n }\n}\n\nexport function getDefaultOptions<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n): FiltersOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> {\n return {\n onColumnFiltersChange: makeStateUpdater('columnFilters', instance),\n onGlobalFilterChange: makeStateUpdater('globalFilter', instance),\n autoResetColumnFilters: true,\n filterFromChildrenUp: true,\n autoResetGlobalFilter: true,\n globalFilterType: 'auto',\n getColumnCanGlobalFilterFn: column => {\n const value = instance.getCoreFlatRows()[0]?.getAllCellsByColumnId()[\n column.id\n ]?.value\n\n return typeof value === 'string'\n },\n }\n}\n\nexport function createColumn<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n): FiltersColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> {\n const getFacetInfo = memo(\n () => [column.getPreFilteredRows()],\n (rows = []) => {\n let preFilteredUniqueValues = new Map<any, number>()\n\n let preFilteredMinMaxValues: [any, any] = [\n rows[0]?.values[column.id] ?? null,\n rows[0]?.values[column.id] ?? null,\n ]\n\n for (let i = 0; i < rows.length; i++) {\n const value = rows[i]?.values[column.id]\n\n if (preFilteredUniqueValues.has(value)) {\n preFilteredUniqueValues.set(\n value,\n (preFilteredUniqueValues.get(value) ?? 0) + 1\n )\n } else {\n preFilteredUniqueValues.set(value, 1)\n }\n\n if (value < preFilteredMinMaxValues[0]) {\n preFilteredMinMaxValues[0] = value\n } else if (value > preFilteredMinMaxValues[1]) {\n preFilteredMinMaxValues[1] = value\n }\n }\n\n return {\n preFilteredUniqueValues,\n preFilteredMinMaxValues,\n }\n },\n { key: 'column.getFacetInfo', debug: instance.options.debug }\n )\n\n return {\n filterType: column.filterType,\n getCanColumnFilter: () => instance.getColumnCanColumnFilter(column.id),\n getCanGlobalFilter: () => instance.getColumnCanGlobalFilter(column.id),\n getColumnFilterIndex: () => instance.getColumnFilterIndex(column.id),\n getIsColumnFiltered: () => instance.getColumnIsFiltered(column.id),\n getColumnFilterValue: () => instance.getColumnFilterValue(column.id),\n setColumnFilterValue: val => instance.setColumnFilterValue(column.id, val),\n getPreFilteredUniqueValues: () => getFacetInfo().preFilteredUniqueValues,\n getPreFilteredMinMaxValues: () => getFacetInfo().preFilteredMinMaxValues,\n getPreFilteredRows: () => undefined,\n }\n}\n\nexport function getInstance<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n): FiltersInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> {\n let registered = false\n\n return {\n _notifyFiltersReset: () => {\n if (!registered) {\n registered = true\n return\n }\n\n if (instance.options.autoResetAll === false) {\n return\n }\n\n if (instance.options.autoResetAll === true) {\n instance.resetSorting()\n } else {\n if (instance.options.autoResetColumnFilters) {\n instance.resetColumnFilters()\n }\n if (instance.options.autoResetGlobalFilter) {\n instance.resetGlobalFilter()\n }\n }\n },\n getColumnAutoFilterFn: columnId => {\n const firstRow = instance.getCoreFlatRows()[0]\n\n const value = firstRow?.values[columnId]\n\n if (typeof value === 'string') {\n return filterTypes.includesString\n }\n\n if (typeof value === 'number') {\n return filterTypes.betweenNumberRange\n }\n\n if (value !== null && typeof value === 'object') {\n return filterTypes.equals\n }\n\n if (Array.isArray(value)) {\n return filterTypes.arrIncludes\n }\n\n return filterTypes.weakEquals\n },\n getGlobalAutoFilterFn: () => {\n return filterTypes.includesString\n },\n getColumnFilterFn: columnId => {\n const column = instance.getColumn(columnId)\n const userFilterTypes = instance.options.filterTypes\n\n if (!column) {\n throw new Error()\n }\n\n return isFunction(column.filterType)\n ? column.filterType\n : column.filterType === 'auto'\n ? instance.getColumnAutoFilterFn(columnId)\n : (userFilterTypes as Record<string, any>)?.[\n column.filterType as string\n ] ??\n (filterTypes[column.filterType as BuiltInFilterType] as FilterFn<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >)\n },\n\n getGlobalFilterFn: () => {\n const { filterTypes: userFilterTypes, globalFilterType } =\n instance.options\n\n return isFunction(globalFilterType)\n ? globalFilterType\n : globalFilterType === 'auto'\n ? instance.getGlobalAutoFilterFn()\n : (userFilterTypes as Record<string, any>)?.[\n globalFilterType as string\n ] ??\n (filterTypes[globalFilterType as BuiltInFilterType] as FilterFn<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >)\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 = instance.getColumnFilterFn(column.id)\n\n if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {\n return false\n }\n }\n\n return true\n })\n }\n\n instance.options.onColumnFiltersChange?.(\n updateFn,\n updateFn(instance.getState().columnFilters)\n )\n },\n\n setGlobalFilter: updater => {\n instance.options.onGlobalFilterChange?.(\n updater,\n functionalUpdate(updater, instance.getState().globalFilter)\n )\n },\n\n resetGlobalFilter: () => {\n instance.setGlobalFilter(undefined)\n },\n\n getColumnCanColumnFilter: columnId => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\n return (\n column.enableAllFilters ??\n column.enableColumnFilter ??\n instance.options.enableFilters ??\n instance.options.enableColumnFilters ??\n column.defaultCanFilter ??\n column.defaultCanColumnFilter ??\n !!column.accessorFn\n )\n },\n\n getColumnCanGlobalFilter: columnId => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\n return (\n ((instance.options.enableFilters ??\n instance.options.enableGlobalFilter ??\n column.enableAllFilters ??\n column.enableGlobalFilter ??\n column.defaultCanFilter ??\n column.defaultCanGlobalFilter ??\n !!column.accessorFn) &&\n instance.options.getColumnCanGlobalFilterFn?.(column)) ??\n true\n )\n },\n\n getColumnIsFiltered: columnId =>\n instance.getColumnFilterIndex(columnId) > -1,\n\n getColumnFilterValue: columnId =>\n instance.getState().columnFilters?.find(d => d.id === columnId)?.value,\n\n getColumnFilterIndex: columnId =>\n instance.getState().columnFilters?.findIndex(d => d.id === columnId) ??\n -1,\n\n setColumnFilterValue: (columnId, value) => {\n if (!columnId) return\n\n instance.setColumnFilters(old => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `React-Table: Could not find a column with id: ${columnId}`\n )\n }\n throw new Error()\n }\n\n const filterFn = instance.getColumnFilterFn(column.id)\n const previousfilter = old?.find(d => d.id === columnId)\n\n const newFilter = functionalUpdate(\n value,\n previousfilter ? previousfilter.value : undefined\n )\n\n //\n if (\n shouldAutoRemoveFilter(\n filterFn as FilterFn<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >,\n newFilter,\n column\n )\n ) {\n return old?.filter(d => d.id !== columnId) ?? []\n }\n\n const newFilterObj = { id: columnId, value: newFilter }\n\n if (previousfilter) {\n return (\n old?.map(d => {\n if (d.id === columnId) {\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\n resetColumnFilters: () => {\n instance.setColumnFilters(\n instance.options?.initialState?.columnFilters ?? []\n )\n },\n\n getColumnFilteredRowModel: memo(\n () => [\n instance.getState().columnFilters,\n instance.getCoreRowModel(),\n instance.options.columnFilterRowsFn,\n ],\n (columnFilters, rowModel, columnFiltersFn) => {\n const columnFilteredRowModel = (() => {\n if (!columnFilters?.length || !columnFiltersFn) {\n return rowModel\n }\n\n if (process.env.NODE_ENV !== 'production' && instance.options.debug)\n console.info('Column Filtering...')\n\n return columnFiltersFn(instance as any, rowModel)\n })()\n\n // Now that each filtered column has it's partially filtered rows,\n // lets assign the final filtered rows to all of the other columns\n const nonFilteredColumns = instance\n .getAllLeafColumns()\n .filter(\n column =>\n !instance.getState().columnFilters?.find(d => d.id === column.id)\n )\n\n // This essentially enables faceted filter options to be built easily\n // using every column's preFilteredRows value\n\n nonFilteredColumns.forEach(column => {\n column.getPreFilteredRows = () => columnFilteredRowModel.rows\n })\n\n return columnFilteredRowModel\n },\n { key: 'getColumnFilteredRowModel', debug: instance.options.debug }\n ),\n\n // These might be easier to remember than \"column\" filtered rows\n getPreFilteredRowModel: () => instance.getCoreRowModel(),\n getPreFilteredRows: () => instance.getCoreRowModel().rows,\n getPreFilteredFlatRows: () => instance.getCoreRowModel().flatRows,\n getPreFilteredRowsById: () => instance.getCoreRowModel().rowsById,\n\n // Pre Column Filter\n getPreColumnFilteredRows: () => instance.getCoreRowModel().rows,\n getPreColumnFilteredFlatRows: () => instance.getCoreRowModel().flatRows,\n getPreColumnFilteredRowsById: () => instance.getCoreRowModel().rowsById,\n getColumnFilteredRows: () => instance.getColumnFilteredRowModel().rows,\n\n getColumnFilteredFlatRows: () =>\n instance.getColumnFilteredRowModel().flatRows,\n getColumnFilteredRowsById: () =>\n instance.getColumnFilteredRowModel().rowsById,\n getGlobalFilteredRowModel: memo(\n () => [\n instance.getState().globalFilter,\n instance.getColumnFilteredRowModel(),\n instance.options.globalFilterRowsFn,\n ],\n (globalFilterValue, columnFilteredRowModel, globalFiltersFn) => {\n const globalFilteredRowModel = (() => {\n if (!globalFiltersFn || !globalFilterValue) {\n return columnFilteredRowModel\n }\n\n if (process.env.NODE_ENV !== 'production' && instance.options.debug)\n console.info('Global Filtering...')\n\n return globalFiltersFn(\n instance as ReactTable<any, any, any, any, any>,\n columnFilteredRowModel\n )\n })()\n\n // Now that each filtered column has it's partially filtered rows,\n // lets assign the final filtered rows to all of the other columns\n const nonFilteredColumns = instance\n .getAllLeafColumns()\n .filter(\n column =>\n !instance.getState().columnFilters?.find(d => d.id === column.id)\n )\n\n // This essentially enables faceted filter options to be built easily\n // using every column's preFilteredRows value\n\n nonFilteredColumns.forEach(column => {\n column.getPreFilteredRows = () => globalFilteredRowModel.rows\n })\n\n return globalFilteredRowModel\n },\n {\n key: 'getGlobalFilteredRowModel',\n debug: instance.options.debug,\n onChange: () => instance._notifySortingReset(),\n }\n ),\n\n getPreGlobalFilteredRows: () => instance.getColumnFilteredRowModel().rows,\n getPreGlobalFilteredFlatRows: () =>\n instance.getColumnFilteredRowModel().flatRows,\n getPreGlobalFilteredRowsById: () =>\n instance.getColumnFilteredRowModel().rowsById,\n getGlobalFilteredRows: () => instance.getGlobalFilteredRowModel().rows,\n getGlobalFilteredFlatRows: () =>\n instance.getGlobalFilteredRowModel().flatRows,\n getGlobalFilteredRowsById: () =>\n instance.getGlobalFilteredRowModel().rowsById,\n }\n}\n\nexport function shouldAutoRemoveFilter(\n filterFn?: FilterFn<any, any, any, any, any>,\n value?: any,\n column?: Column<any, any, any, any, any>\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":["getDefaultColumn","filterType","getInitialState","columnFilters","globalFilter","undefined","getDefaultOptions","instance","onColumnFiltersChange","makeStateUpdater","onGlobalFilterChange","autoResetColumnFilters","filterFromChildrenUp","autoResetGlobalFilter","globalFilterType","getColumnCanGlobalFilterFn","column","value","getCoreFlatRows","getAllCellsByColumnId","id","createColumn","getFacetInfo","memo","getPreFilteredRows","rows","preFilteredUniqueValues","Map","preFilteredMinMaxValues","values","i","length","has","set","get","key","debug","options","getCanColumnFilter","getColumnCanColumnFilter","getCanGlobalFilter","getColumnCanGlobalFilter","getColumnFilterIndex","getIsColumnFiltered","getColumnIsFiltered","getColumnFilterValue","setColumnFilterValue","val","getPreFilteredUniqueValues","getPreFilteredMinMaxValues","getInstance","registered","_notifyFiltersReset","autoResetAll","resetSorting","resetColumnFilters","resetGlobalFilter","getColumnAutoFilterFn","columnId","firstRow","filterTypes","includesString","betweenNumberRange","equals","Array","isArray","arrIncludes","weakEquals","getGlobalAutoFilterFn","getColumnFilterFn","getColumn","userFilterTypes","Error","isFunction","getGlobalFilterFn","setColumnFilters","updater","leafColumns","getAllLeafColumns","updateFn","old","functionalUpdate","filter","find","d","filterFn","shouldAutoRemoveFilter","getState","setGlobalFilter","enableAllFilters","enableColumnFilter","enableFilters","enableColumnFilters","defaultCanFilter","defaultCanColumnFilter","accessorFn","enableGlobalFilter","defaultCanGlobalFilter","findIndex","process","env","NODE_ENV","console","warn","previousfilter","newFilter","newFilterObj","map","initialState","getColumnFilteredRowModel","getCoreRowModel","columnFilterRowsFn","rowModel","columnFiltersFn","columnFilteredRowModel","info","nonFilteredColumns","forEach","getPreFilteredRowModel","getPreFilteredFlatRows","flatRows","getPreFilteredRowsById","rowsById","getPreColumnFilteredRows","getPreColumnFilteredFlatRows","getPreColumnFilteredRowsById","getColumnFilteredRows","getColumnFilteredFlatRows","getColumnFilteredRowsById","getGlobalFilteredRowModel","globalFilterRowsFn","globalFilterValue","globalFiltersFn","globalFilteredRowModel","onChange","_notifySortingReset","getPreGlobalFilteredRows","getPreGlobalFilteredFlatRows","getPreGlobalFilteredRowsById","getGlobalFilteredRows","getGlobalFilteredFlatRows","getGlobalFilteredRowsById","autoRemove"],"mappings":"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"}