@tanstack/table-core 8.9.7 → 8.9.8

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 (54) hide show
  1. package/build/lib/core/cell.js +1 -1
  2. package/build/lib/core/cell.js.map +1 -1
  3. package/build/lib/core/column.js +3 -3
  4. package/build/lib/core/column.js.map +1 -1
  5. package/build/lib/core/headers.js +182 -181
  6. package/build/lib/core/headers.js.map +1 -1
  7. package/build/lib/core/row.js +1 -1
  8. package/build/lib/core/row.js.map +1 -1
  9. package/build/lib/core/table.js +4 -3
  10. package/build/lib/core/table.js.map +1 -1
  11. package/build/lib/features/ColumnSizing.js +173 -179
  12. package/build/lib/features/ColumnSizing.js.map +1 -1
  13. package/build/lib/features/Expanding.js +119 -123
  14. package/build/lib/features/Expanding.js.map +1 -1
  15. package/build/lib/features/Filters.js +157 -165
  16. package/build/lib/features/Filters.js.map +1 -1
  17. package/build/lib/features/Grouping.js +71 -79
  18. package/build/lib/features/Grouping.js.map +1 -1
  19. package/build/lib/features/Ordering.js +32 -34
  20. package/build/lib/features/Ordering.js.map +1 -1
  21. package/build/lib/features/Pagination.js +112 -114
  22. package/build/lib/features/Pagination.js.map +1 -1
  23. package/build/lib/features/Pinning.js +120 -126
  24. package/build/lib/features/Pinning.js.map +1 -1
  25. package/build/lib/features/RowSelection.js +245 -247
  26. package/build/lib/features/RowSelection.js.map +1 -1
  27. package/build/lib/features/Sorting.js +163 -167
  28. package/build/lib/features/Sorting.js.map +1 -1
  29. package/build/lib/features/Visibility.js +60 -66
  30. package/build/lib/features/Visibility.js.map +1 -1
  31. package/build/lib/index.esm.js +1469 -1515
  32. package/build/lib/index.esm.js.map +1 -1
  33. package/build/lib/index.mjs +1469 -1515
  34. package/build/lib/index.mjs.map +1 -1
  35. package/build/umd/index.development.js +1469 -1515
  36. package/build/umd/index.development.js.map +1 -1
  37. package/build/umd/index.production.js +1 -1
  38. package/build/umd/index.production.js.map +1 -1
  39. package/package.json +1 -1
  40. package/src/core/cell.ts +5 -8
  41. package/src/core/column.ts +3 -3
  42. package/src/core/headers.ts +264 -280
  43. package/src/core/row.ts +1 -1
  44. package/src/core/table.ts +4 -3
  45. package/src/features/ColumnSizing.ts +220 -231
  46. package/src/features/Expanding.ts +132 -140
  47. package/src/features/Filters.ts +193 -206
  48. package/src/features/Grouping.ts +94 -110
  49. package/src/features/Ordering.ts +48 -51
  50. package/src/features/Pagination.ts +150 -154
  51. package/src/features/Pinning.ts +158 -178
  52. package/src/features/RowSelection.ts +280 -286
  53. package/src/features/Sorting.ts +196 -206
  54. package/src/features/Visibility.ts +98 -107
@@ -156,9 +156,9 @@ function createColumn(table, columnDef, depth, parent) {
156
156
  }
157
157
  })
158
158
  };
159
- column = table._features.reduce((obj, feature) => {
160
- return Object.assign(obj, feature.createColumn == null ? void 0 : feature.createColumn(column, table));
161
- }, column);
159
+ for (const feature of table._features) {
160
+ feature.createColumn == null || feature.createColumn(column, table);
161
+ }
162
162
 
163
163
  // Yes, we have to convert table to uknown, because we know more than the compiler here.
164
164
  return column;
@@ -198,196 +198,197 @@ function createHeader(table, column, options) {
198
198
  })
199
199
  };
200
200
  table._features.forEach(feature => {
201
- Object.assign(header, feature.createHeader == null ? void 0 : feature.createHeader(header, table));
201
+ feature.createHeader == null || feature.createHeader(header, table);
202
202
  });
203
203
  return header;
204
204
  }
205
205
  const Headers = {
206
206
  createTable: table => {
207
- return {
208
- // Header Groups
209
-
210
- getHeaderGroups: memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
211
- var _left$map$filter, _right$map$filter;
212
- const leftColumns = (_left$map$filter = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter : [];
213
- const rightColumns = (_right$map$filter = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter : [];
214
- const centerColumns = leafColumns.filter(column => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
215
- const headerGroups = buildHeaderGroups(allColumns, [...leftColumns, ...centerColumns, ...rightColumns], table);
216
- return headerGroups;
217
- }, {
218
- key: process.env.NODE_ENV === 'development' && 'getHeaderGroups',
219
- debug: () => {
220
- var _table$options$debugA;
221
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugHeaders;
222
- }
223
- }),
224
- getCenterHeaderGroups: memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
225
- leafColumns = leafColumns.filter(column => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
226
- return buildHeaderGroups(allColumns, leafColumns, table, 'center');
227
- }, {
228
- key: process.env.NODE_ENV === 'development' && 'getCenterHeaderGroups',
229
- debug: () => {
230
- var _table$options$debugA2;
231
- return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugHeaders;
232
- }
233
- }),
234
- getLeftHeaderGroups: memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left], (allColumns, leafColumns, left) => {
235
- var _left$map$filter2;
236
- const orderedLeafColumns = (_left$map$filter2 = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter2 : [];
237
- return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'left');
238
- }, {
239
- key: process.env.NODE_ENV === 'development' && 'getLeftHeaderGroups',
240
- debug: () => {
241
- var _table$options$debugA3;
242
- return (_table$options$debugA3 = table.options.debugAll) != null ? _table$options$debugA3 : table.options.debugHeaders;
243
- }
244
- }),
245
- getRightHeaderGroups: memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.right], (allColumns, leafColumns, right) => {
246
- var _right$map$filter2;
247
- const orderedLeafColumns = (_right$map$filter2 = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter2 : [];
248
- return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'right');
249
- }, {
250
- key: process.env.NODE_ENV === 'development' && 'getRightHeaderGroups',
251
- debug: () => {
252
- var _table$options$debugA4;
253
- return (_table$options$debugA4 = table.options.debugAll) != null ? _table$options$debugA4 : table.options.debugHeaders;
254
- }
255
- }),
256
- // Footer Groups
207
+ // Header Groups
208
+
209
+ table.getHeaderGroups = memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
210
+ var _left$map$filter, _right$map$filter;
211
+ const leftColumns = (_left$map$filter = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter : [];
212
+ const rightColumns = (_right$map$filter = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter : [];
213
+ const centerColumns = leafColumns.filter(column => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
214
+ const headerGroups = buildHeaderGroups(allColumns, [...leftColumns, ...centerColumns, ...rightColumns], table);
215
+ return headerGroups;
216
+ }, {
217
+ key: process.env.NODE_ENV === 'development' && 'getHeaderGroups',
218
+ debug: () => {
219
+ var _table$options$debugA;
220
+ return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugHeaders;
221
+ }
222
+ });
223
+ table.getCenterHeaderGroups = memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
224
+ leafColumns = leafColumns.filter(column => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
225
+ return buildHeaderGroups(allColumns, leafColumns, table, 'center');
226
+ }, {
227
+ key: process.env.NODE_ENV === 'development' && 'getCenterHeaderGroups',
228
+ debug: () => {
229
+ var _table$options$debugA2;
230
+ return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugHeaders;
231
+ }
232
+ });
233
+ table.getLeftHeaderGroups = memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.left], (allColumns, leafColumns, left) => {
234
+ var _left$map$filter2;
235
+ const orderedLeafColumns = (_left$map$filter2 = left == null ? void 0 : left.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _left$map$filter2 : [];
236
+ return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'left');
237
+ }, {
238
+ key: process.env.NODE_ENV === 'development' && 'getLeftHeaderGroups',
239
+ debug: () => {
240
+ var _table$options$debugA3;
241
+ return (_table$options$debugA3 = table.options.debugAll) != null ? _table$options$debugA3 : table.options.debugHeaders;
242
+ }
243
+ });
244
+ table.getRightHeaderGroups = memo(() => [table.getAllColumns(), table.getVisibleLeafColumns(), table.getState().columnPinning.right], (allColumns, leafColumns, right) => {
245
+ var _right$map$filter2;
246
+ const orderedLeafColumns = (_right$map$filter2 = right == null ? void 0 : right.map(columnId => leafColumns.find(d => d.id === columnId)).filter(Boolean)) != null ? _right$map$filter2 : [];
247
+ return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'right');
248
+ }, {
249
+ key: process.env.NODE_ENV === 'development' && 'getRightHeaderGroups',
250
+ debug: () => {
251
+ var _table$options$debugA4;
252
+ return (_table$options$debugA4 = table.options.debugAll) != null ? _table$options$debugA4 : table.options.debugHeaders;
253
+ }
254
+ });
257
255
 
258
- getFooterGroups: memo(() => [table.getHeaderGroups()], headerGroups => {
259
- return [...headerGroups].reverse();
260
- }, {
261
- key: process.env.NODE_ENV === 'development' && 'getFooterGroups',
262
- debug: () => {
263
- var _table$options$debugA5;
264
- return (_table$options$debugA5 = table.options.debugAll) != null ? _table$options$debugA5 : table.options.debugHeaders;
265
- }
266
- }),
267
- getLeftFooterGroups: memo(() => [table.getLeftHeaderGroups()], headerGroups => {
268
- return [...headerGroups].reverse();
269
- }, {
270
- key: process.env.NODE_ENV === 'development' && 'getLeftFooterGroups',
271
- debug: () => {
272
- var _table$options$debugA6;
273
- return (_table$options$debugA6 = table.options.debugAll) != null ? _table$options$debugA6 : table.options.debugHeaders;
274
- }
275
- }),
276
- getCenterFooterGroups: memo(() => [table.getCenterHeaderGroups()], headerGroups => {
277
- return [...headerGroups].reverse();
278
- }, {
279
- key: process.env.NODE_ENV === 'development' && 'getCenterFooterGroups',
280
- debug: () => {
281
- var _table$options$debugA7;
282
- return (_table$options$debugA7 = table.options.debugAll) != null ? _table$options$debugA7 : table.options.debugHeaders;
283
- }
284
- }),
285
- getRightFooterGroups: memo(() => [table.getRightHeaderGroups()], headerGroups => {
286
- return [...headerGroups].reverse();
287
- }, {
288
- key: process.env.NODE_ENV === 'development' && 'getRightFooterGroups',
289
- debug: () => {
290
- var _table$options$debugA8;
291
- return (_table$options$debugA8 = table.options.debugAll) != null ? _table$options$debugA8 : table.options.debugHeaders;
292
- }
293
- }),
294
- // Flat Headers
256
+ // Footer Groups
295
257
 
296
- getFlatHeaders: memo(() => [table.getHeaderGroups()], headerGroups => {
297
- return headerGroups.map(headerGroup => {
298
- return headerGroup.headers;
299
- }).flat();
300
- }, {
301
- key: process.env.NODE_ENV === 'development' && 'getFlatHeaders',
302
- debug: () => {
303
- var _table$options$debugA9;
304
- return (_table$options$debugA9 = table.options.debugAll) != null ? _table$options$debugA9 : table.options.debugHeaders;
305
- }
306
- }),
307
- getLeftFlatHeaders: memo(() => [table.getLeftHeaderGroups()], left => {
308
- return left.map(headerGroup => {
309
- return headerGroup.headers;
310
- }).flat();
311
- }, {
312
- key: process.env.NODE_ENV === 'development' && 'getLeftFlatHeaders',
313
- debug: () => {
314
- var _table$options$debugA10;
315
- return (_table$options$debugA10 = table.options.debugAll) != null ? _table$options$debugA10 : table.options.debugHeaders;
316
- }
317
- }),
318
- getCenterFlatHeaders: memo(() => [table.getCenterHeaderGroups()], left => {
319
- return left.map(headerGroup => {
320
- return headerGroup.headers;
321
- }).flat();
322
- }, {
323
- key: process.env.NODE_ENV === 'development' && 'getCenterFlatHeaders',
324
- debug: () => {
325
- var _table$options$debugA11;
326
- return (_table$options$debugA11 = table.options.debugAll) != null ? _table$options$debugA11 : table.options.debugHeaders;
327
- }
328
- }),
329
- getRightFlatHeaders: memo(() => [table.getRightHeaderGroups()], left => {
330
- return left.map(headerGroup => {
331
- return headerGroup.headers;
332
- }).flat();
333
- }, {
334
- key: process.env.NODE_ENV === 'development' && 'getRightFlatHeaders',
335
- debug: () => {
336
- var _table$options$debugA12;
337
- return (_table$options$debugA12 = table.options.debugAll) != null ? _table$options$debugA12 : table.options.debugHeaders;
338
- }
339
- }),
340
- // Leaf Headers
258
+ table.getFooterGroups = memo(() => [table.getHeaderGroups()], headerGroups => {
259
+ return [...headerGroups].reverse();
260
+ }, {
261
+ key: process.env.NODE_ENV === 'development' && 'getFooterGroups',
262
+ debug: () => {
263
+ var _table$options$debugA5;
264
+ return (_table$options$debugA5 = table.options.debugAll) != null ? _table$options$debugA5 : table.options.debugHeaders;
265
+ }
266
+ });
267
+ table.getLeftFooterGroups = memo(() => [table.getLeftHeaderGroups()], headerGroups => {
268
+ return [...headerGroups].reverse();
269
+ }, {
270
+ key: process.env.NODE_ENV === 'development' && 'getLeftFooterGroups',
271
+ debug: () => {
272
+ var _table$options$debugA6;
273
+ return (_table$options$debugA6 = table.options.debugAll) != null ? _table$options$debugA6 : table.options.debugHeaders;
274
+ }
275
+ });
276
+ table.getCenterFooterGroups = memo(() => [table.getCenterHeaderGroups()], headerGroups => {
277
+ return [...headerGroups].reverse();
278
+ }, {
279
+ key: process.env.NODE_ENV === 'development' && 'getCenterFooterGroups',
280
+ debug: () => {
281
+ var _table$options$debugA7;
282
+ return (_table$options$debugA7 = table.options.debugAll) != null ? _table$options$debugA7 : table.options.debugHeaders;
283
+ }
284
+ });
285
+ table.getRightFooterGroups = memo(() => [table.getRightHeaderGroups()], headerGroups => {
286
+ return [...headerGroups].reverse();
287
+ }, {
288
+ key: process.env.NODE_ENV === 'development' && 'getRightFooterGroups',
289
+ debug: () => {
290
+ var _table$options$debugA8;
291
+ return (_table$options$debugA8 = table.options.debugAll) != null ? _table$options$debugA8 : table.options.debugHeaders;
292
+ }
293
+ });
341
294
 
342
- getCenterLeafHeaders: memo(() => [table.getCenterFlatHeaders()], flatHeaders => {
343
- return flatHeaders.filter(header => {
344
- var _header$subHeaders;
345
- return !((_header$subHeaders = header.subHeaders) != null && _header$subHeaders.length);
346
- });
347
- }, {
348
- key: process.env.NODE_ENV === 'development' && 'getCenterLeafHeaders',
349
- debug: () => {
350
- var _table$options$debugA13;
351
- return (_table$options$debugA13 = table.options.debugAll) != null ? _table$options$debugA13 : table.options.debugHeaders;
352
- }
353
- }),
354
- getLeftLeafHeaders: memo(() => [table.getLeftFlatHeaders()], flatHeaders => {
355
- return flatHeaders.filter(header => {
356
- var _header$subHeaders2;
357
- return !((_header$subHeaders2 = header.subHeaders) != null && _header$subHeaders2.length);
358
- });
359
- }, {
360
- key: process.env.NODE_ENV === 'development' && 'getLeftLeafHeaders',
361
- debug: () => {
362
- var _table$options$debugA14;
363
- return (_table$options$debugA14 = table.options.debugAll) != null ? _table$options$debugA14 : table.options.debugHeaders;
364
- }
365
- }),
366
- getRightLeafHeaders: memo(() => [table.getRightFlatHeaders()], flatHeaders => {
367
- return flatHeaders.filter(header => {
368
- var _header$subHeaders3;
369
- return !((_header$subHeaders3 = header.subHeaders) != null && _header$subHeaders3.length);
370
- });
371
- }, {
372
- key: process.env.NODE_ENV === 'development' && 'getRightLeafHeaders',
373
- debug: () => {
374
- var _table$options$debugA15;
375
- return (_table$options$debugA15 = table.options.debugAll) != null ? _table$options$debugA15 : table.options.debugHeaders;
376
- }
377
- }),
378
- getLeafHeaders: memo(() => [table.getLeftHeaderGroups(), table.getCenterHeaderGroups(), table.getRightHeaderGroups()], (left, center, right) => {
379
- var _left$0$headers, _left$, _center$0$headers, _center$, _right$0$headers, _right$;
380
- return [...((_left$0$headers = (_left$ = left[0]) == null ? void 0 : _left$.headers) != null ? _left$0$headers : []), ...((_center$0$headers = (_center$ = center[0]) == null ? void 0 : _center$.headers) != null ? _center$0$headers : []), ...((_right$0$headers = (_right$ = right[0]) == null ? void 0 : _right$.headers) != null ? _right$0$headers : [])].map(header => {
381
- return header.getLeafHeaders();
382
- }).flat();
383
- }, {
384
- key: process.env.NODE_ENV === 'development' && 'getLeafHeaders',
385
- debug: () => {
386
- var _table$options$debugA16;
387
- return (_table$options$debugA16 = table.options.debugAll) != null ? _table$options$debugA16 : table.options.debugHeaders;
388
- }
389
- })
390
- };
295
+ // Flat Headers
296
+
297
+ table.getFlatHeaders = memo(() => [table.getHeaderGroups()], headerGroups => {
298
+ return headerGroups.map(headerGroup => {
299
+ return headerGroup.headers;
300
+ }).flat();
301
+ }, {
302
+ key: process.env.NODE_ENV === 'development' && 'getFlatHeaders',
303
+ debug: () => {
304
+ var _table$options$debugA9;
305
+ return (_table$options$debugA9 = table.options.debugAll) != null ? _table$options$debugA9 : table.options.debugHeaders;
306
+ }
307
+ });
308
+ table.getLeftFlatHeaders = memo(() => [table.getLeftHeaderGroups()], left => {
309
+ return left.map(headerGroup => {
310
+ return headerGroup.headers;
311
+ }).flat();
312
+ }, {
313
+ key: process.env.NODE_ENV === 'development' && 'getLeftFlatHeaders',
314
+ debug: () => {
315
+ var _table$options$debugA10;
316
+ return (_table$options$debugA10 = table.options.debugAll) != null ? _table$options$debugA10 : table.options.debugHeaders;
317
+ }
318
+ });
319
+ table.getCenterFlatHeaders = memo(() => [table.getCenterHeaderGroups()], left => {
320
+ return left.map(headerGroup => {
321
+ return headerGroup.headers;
322
+ }).flat();
323
+ }, {
324
+ key: process.env.NODE_ENV === 'development' && 'getCenterFlatHeaders',
325
+ debug: () => {
326
+ var _table$options$debugA11;
327
+ return (_table$options$debugA11 = table.options.debugAll) != null ? _table$options$debugA11 : table.options.debugHeaders;
328
+ }
329
+ });
330
+ table.getRightFlatHeaders = memo(() => [table.getRightHeaderGroups()], left => {
331
+ return left.map(headerGroup => {
332
+ return headerGroup.headers;
333
+ }).flat();
334
+ }, {
335
+ key: process.env.NODE_ENV === 'development' && 'getRightFlatHeaders',
336
+ debug: () => {
337
+ var _table$options$debugA12;
338
+ return (_table$options$debugA12 = table.options.debugAll) != null ? _table$options$debugA12 : table.options.debugHeaders;
339
+ }
340
+ });
341
+
342
+ // Leaf Headers
343
+
344
+ table.getCenterLeafHeaders = memo(() => [table.getCenterFlatHeaders()], flatHeaders => {
345
+ return flatHeaders.filter(header => {
346
+ var _header$subHeaders;
347
+ return !((_header$subHeaders = header.subHeaders) != null && _header$subHeaders.length);
348
+ });
349
+ }, {
350
+ key: process.env.NODE_ENV === 'development' && 'getCenterLeafHeaders',
351
+ debug: () => {
352
+ var _table$options$debugA13;
353
+ return (_table$options$debugA13 = table.options.debugAll) != null ? _table$options$debugA13 : table.options.debugHeaders;
354
+ }
355
+ });
356
+ table.getLeftLeafHeaders = memo(() => [table.getLeftFlatHeaders()], flatHeaders => {
357
+ return flatHeaders.filter(header => {
358
+ var _header$subHeaders2;
359
+ return !((_header$subHeaders2 = header.subHeaders) != null && _header$subHeaders2.length);
360
+ });
361
+ }, {
362
+ key: process.env.NODE_ENV === 'development' && 'getLeftLeafHeaders',
363
+ debug: () => {
364
+ var _table$options$debugA14;
365
+ return (_table$options$debugA14 = table.options.debugAll) != null ? _table$options$debugA14 : table.options.debugHeaders;
366
+ }
367
+ });
368
+ table.getRightLeafHeaders = memo(() => [table.getRightFlatHeaders()], flatHeaders => {
369
+ return flatHeaders.filter(header => {
370
+ var _header$subHeaders3;
371
+ return !((_header$subHeaders3 = header.subHeaders) != null && _header$subHeaders3.length);
372
+ });
373
+ }, {
374
+ key: process.env.NODE_ENV === 'development' && 'getRightLeafHeaders',
375
+ debug: () => {
376
+ var _table$options$debugA15;
377
+ return (_table$options$debugA15 = table.options.debugAll) != null ? _table$options$debugA15 : table.options.debugHeaders;
378
+ }
379
+ });
380
+ table.getLeafHeaders = memo(() => [table.getLeftHeaderGroups(), table.getCenterHeaderGroups(), table.getRightHeaderGroups()], (left, center, right) => {
381
+ var _left$0$headers, _left$, _center$0$headers, _center$, _right$0$headers, _right$;
382
+ return [...((_left$0$headers = (_left$ = left[0]) == null ? void 0 : _left$.headers) != null ? _left$0$headers : []), ...((_center$0$headers = (_center$ = center[0]) == null ? void 0 : _center$.headers) != null ? _center$0$headers : []), ...((_right$0$headers = (_right$ = right[0]) == null ? void 0 : _right$.headers) != null ? _right$0$headers : [])].map(header => {
383
+ return header.getLeafHeaders();
384
+ }).flat();
385
+ }, {
386
+ key: process.env.NODE_ENV === 'development' && 'getLeafHeaders',
387
+ debug: () => {
388
+ var _table$options$debugA16;
389
+ return (_table$options$debugA16 = table.options.debugAll) != null ? _table$options$debugA16 : table.options.debugHeaders;
390
+ }
391
+ });
391
392
  }
392
393
  };
393
394
  function buildHeaderGroups(allColumns, columnsToGroup, table, headerFamily) {
@@ -547,204 +548,198 @@ const ColumnSizing = {
547
548
  };
548
549
  },
549
550
  createColumn: (column, table) => {
550
- return {
551
- getSize: () => {
552
- var _column$columnDef$min, _ref, _column$columnDef$max;
553
- const columnSize = table.getState().columnSizing[column.id];
554
- return Math.min(Math.max((_column$columnDef$min = column.columnDef.minSize) != null ? _column$columnDef$min : defaultColumnSizing.minSize, (_ref = columnSize != null ? columnSize : column.columnDef.size) != null ? _ref : defaultColumnSizing.size), (_column$columnDef$max = column.columnDef.maxSize) != null ? _column$columnDef$max : defaultColumnSizing.maxSize);
555
- },
556
- getStart: position => {
557
- const columns = !position ? table.getVisibleLeafColumns() : position === 'left' ? table.getLeftVisibleLeafColumns() : table.getRightVisibleLeafColumns();
558
- const index = columns.findIndex(d => d.id === column.id);
559
- if (index > 0) {
560
- const prevSiblingColumn = columns[index - 1];
561
- return prevSiblingColumn.getStart(position) + prevSiblingColumn.getSize();
562
- }
563
- return 0;
564
- },
565
- resetSize: () => {
566
- table.setColumnSizing(_ref2 => {
567
- let {
568
- [column.id]: _,
569
- ...rest
570
- } = _ref2;
571
- return rest;
572
- });
573
- },
574
- getCanResize: () => {
575
- var _column$columnDef$ena, _table$options$enable;
576
- return ((_column$columnDef$ena = column.columnDef.enableResizing) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableColumnResizing) != null ? _table$options$enable : true);
577
- },
578
- getIsResizing: () => {
579
- return table.getState().columnSizingInfo.isResizingColumn === column.id;
580
- }
551
+ column.getSize = () => {
552
+ var _column$columnDef$min, _ref, _column$columnDef$max;
553
+ const columnSize = table.getState().columnSizing[column.id];
554
+ return Math.min(Math.max((_column$columnDef$min = column.columnDef.minSize) != null ? _column$columnDef$min : defaultColumnSizing.minSize, (_ref = columnSize != null ? columnSize : column.columnDef.size) != null ? _ref : defaultColumnSizing.size), (_column$columnDef$max = column.columnDef.maxSize) != null ? _column$columnDef$max : defaultColumnSizing.maxSize);
555
+ };
556
+ column.getStart = position => {
557
+ const columns = !position ? table.getVisibleLeafColumns() : position === 'left' ? table.getLeftVisibleLeafColumns() : table.getRightVisibleLeafColumns();
558
+ const index = columns.findIndex(d => d.id === column.id);
559
+ if (index > 0) {
560
+ const prevSiblingColumn = columns[index - 1];
561
+ return prevSiblingColumn.getStart(position) + prevSiblingColumn.getSize();
562
+ }
563
+ return 0;
564
+ };
565
+ column.resetSize = () => {
566
+ table.setColumnSizing(_ref2 => {
567
+ let {
568
+ [column.id]: _,
569
+ ...rest
570
+ } = _ref2;
571
+ return rest;
572
+ });
573
+ };
574
+ column.getCanResize = () => {
575
+ var _column$columnDef$ena, _table$options$enable;
576
+ return ((_column$columnDef$ena = column.columnDef.enableResizing) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableColumnResizing) != null ? _table$options$enable : true);
577
+ };
578
+ column.getIsResizing = () => {
579
+ return table.getState().columnSizingInfo.isResizingColumn === column.id;
581
580
  };
582
581
  },
583
582
  createHeader: (header, table) => {
584
- return {
585
- getSize: () => {
586
- let sum = 0;
587
- const recurse = header => {
588
- if (header.subHeaders.length) {
589
- header.subHeaders.forEach(recurse);
590
- } else {
591
- var _header$column$getSiz;
592
- sum += (_header$column$getSiz = header.column.getSize()) != null ? _header$column$getSiz : 0;
593
- }
594
- };
595
- recurse(header);
596
- return sum;
597
- },
598
- getStart: () => {
599
- if (header.index > 0) {
600
- const prevSiblingHeader = header.headerGroup.headers[header.index - 1];
601
- return prevSiblingHeader.getStart() + prevSiblingHeader.getSize();
583
+ header.getSize = () => {
584
+ let sum = 0;
585
+ const recurse = header => {
586
+ if (header.subHeaders.length) {
587
+ header.subHeaders.forEach(recurse);
588
+ } else {
589
+ var _header$column$getSiz;
590
+ sum += (_header$column$getSiz = header.column.getSize()) != null ? _header$column$getSiz : 0;
602
591
  }
603
- return 0;
604
- },
605
- getResizeHandler: () => {
606
- const column = table.getColumn(header.column.id);
607
- const canResize = column == null ? void 0 : column.getCanResize();
608
- return e => {
609
- if (!column || !canResize) {
592
+ };
593
+ recurse(header);
594
+ return sum;
595
+ };
596
+ header.getStart = () => {
597
+ if (header.index > 0) {
598
+ const prevSiblingHeader = header.headerGroup.headers[header.index - 1];
599
+ return prevSiblingHeader.getStart() + prevSiblingHeader.getSize();
600
+ }
601
+ return 0;
602
+ };
603
+ header.getResizeHandler = () => {
604
+ const column = table.getColumn(header.column.id);
605
+ const canResize = column == null ? void 0 : column.getCanResize();
606
+ return e => {
607
+ if (!column || !canResize) {
608
+ return;
609
+ }
610
+ e.persist == null || e.persist();
611
+ if (isTouchStartEvent(e)) {
612
+ // lets not respond to multiple touches (e.g. 2 or 3 fingers)
613
+ if (e.touches && e.touches.length > 1) {
610
614
  return;
611
615
  }
612
- e.persist == null || e.persist();
613
- if (isTouchStartEvent(e)) {
614
- // lets not respond to multiple touches (e.g. 2 or 3 fingers)
615
- if (e.touches && e.touches.length > 1) {
616
- return;
617
- }
616
+ }
617
+ const startSize = header.getSize();
618
+ const columnSizingStart = header ? header.getLeafHeaders().map(d => [d.column.id, d.column.getSize()]) : [[column.id, column.getSize()]];
619
+ const clientX = isTouchStartEvent(e) ? Math.round(e.touches[0].clientX) : e.clientX;
620
+ const newColumnSizing = {};
621
+ const updateOffset = (eventType, clientXPos) => {
622
+ if (typeof clientXPos !== 'number') {
623
+ return;
618
624
  }
619
- const startSize = header.getSize();
620
- const columnSizingStart = header ? header.getLeafHeaders().map(d => [d.column.id, d.column.getSize()]) : [[column.id, column.getSize()]];
621
- const clientX = isTouchStartEvent(e) ? Math.round(e.touches[0].clientX) : e.clientX;
622
- const newColumnSizing = {};
623
- const updateOffset = (eventType, clientXPos) => {
624
- if (typeof clientXPos !== 'number') {
625
- return;
626
- }
627
- table.setColumnSizingInfo(old => {
628
- var _old$startOffset, _old$startSize;
629
- const deltaOffset = clientXPos - ((_old$startOffset = old == null ? void 0 : old.startOffset) != null ? _old$startOffset : 0);
630
- const deltaPercentage = Math.max(deltaOffset / ((_old$startSize = old == null ? void 0 : old.startSize) != null ? _old$startSize : 0), -0.999999);
631
- old.columnSizingStart.forEach(_ref3 => {
632
- let [columnId, headerSize] = _ref3;
633
- newColumnSizing[columnId] = Math.round(Math.max(headerSize + headerSize * deltaPercentage, 0) * 100) / 100;
634
- });
635
- return {
636
- ...old,
637
- deltaOffset,
638
- deltaPercentage
639
- };
625
+ table.setColumnSizingInfo(old => {
626
+ var _old$startOffset, _old$startSize;
627
+ const deltaOffset = clientXPos - ((_old$startOffset = old == null ? void 0 : old.startOffset) != null ? _old$startOffset : 0);
628
+ const deltaPercentage = Math.max(deltaOffset / ((_old$startSize = old == null ? void 0 : old.startSize) != null ? _old$startSize : 0), -0.999999);
629
+ old.columnSizingStart.forEach(_ref3 => {
630
+ let [columnId, headerSize] = _ref3;
631
+ newColumnSizing[columnId] = Math.round(Math.max(headerSize + headerSize * deltaPercentage, 0) * 100) / 100;
640
632
  });
641
- if (table.options.columnResizeMode === 'onChange' || eventType === 'end') {
642
- table.setColumnSizing(old => ({
643
- ...old,
644
- ...newColumnSizing
645
- }));
646
- }
647
- };
648
- const onMove = clientXPos => updateOffset('move', clientXPos);
649
- const onEnd = clientXPos => {
650
- updateOffset('end', clientXPos);
651
- table.setColumnSizingInfo(old => ({
633
+ return {
634
+ ...old,
635
+ deltaOffset,
636
+ deltaPercentage
637
+ };
638
+ });
639
+ if (table.options.columnResizeMode === 'onChange' || eventType === 'end') {
640
+ table.setColumnSizing(old => ({
652
641
  ...old,
653
- isResizingColumn: false,
654
- startOffset: null,
655
- startSize: null,
656
- deltaOffset: null,
657
- deltaPercentage: null,
658
- columnSizingStart: []
642
+ ...newColumnSizing
659
643
  }));
660
- };
661
- const mouseEvents = {
662
- moveHandler: e => onMove(e.clientX),
663
- upHandler: e => {
664
- document.removeEventListener('mousemove', mouseEvents.moveHandler);
665
- document.removeEventListener('mouseup', mouseEvents.upHandler);
666
- onEnd(e.clientX);
667
- }
668
- };
669
- const touchEvents = {
670
- moveHandler: e => {
671
- if (e.cancelable) {
672
- e.preventDefault();
673
- e.stopPropagation();
674
- }
675
- onMove(e.touches[0].clientX);
676
- return false;
677
- },
678
- upHandler: e => {
679
- var _e$touches$;
680
- document.removeEventListener('touchmove', touchEvents.moveHandler);
681
- document.removeEventListener('touchend', touchEvents.upHandler);
682
- if (e.cancelable) {
683
- e.preventDefault();
684
- e.stopPropagation();
685
- }
686
- onEnd((_e$touches$ = e.touches[0]) == null ? void 0 : _e$touches$.clientX);
687
- }
688
- };
689
- const passiveIfSupported = passiveEventSupported() ? {
690
- passive: false
691
- } : false;
692
- if (isTouchStartEvent(e)) {
693
- document.addEventListener('touchmove', touchEvents.moveHandler, passiveIfSupported);
694
- document.addEventListener('touchend', touchEvents.upHandler, passiveIfSupported);
695
- } else {
696
- document.addEventListener('mousemove', mouseEvents.moveHandler, passiveIfSupported);
697
- document.addEventListener('mouseup', mouseEvents.upHandler, passiveIfSupported);
698
644
  }
645
+ };
646
+ const onMove = clientXPos => updateOffset('move', clientXPos);
647
+ const onEnd = clientXPos => {
648
+ updateOffset('end', clientXPos);
699
649
  table.setColumnSizingInfo(old => ({
700
650
  ...old,
701
- startOffset: clientX,
702
- startSize,
703
- deltaOffset: 0,
704
- deltaPercentage: 0,
705
- columnSizingStart,
706
- isResizingColumn: column.id
651
+ isResizingColumn: false,
652
+ startOffset: null,
653
+ startSize: null,
654
+ deltaOffset: null,
655
+ deltaPercentage: null,
656
+ columnSizingStart: []
707
657
  }));
708
658
  };
709
- }
659
+ const mouseEvents = {
660
+ moveHandler: e => onMove(e.clientX),
661
+ upHandler: e => {
662
+ document.removeEventListener('mousemove', mouseEvents.moveHandler);
663
+ document.removeEventListener('mouseup', mouseEvents.upHandler);
664
+ onEnd(e.clientX);
665
+ }
666
+ };
667
+ const touchEvents = {
668
+ moveHandler: e => {
669
+ if (e.cancelable) {
670
+ e.preventDefault();
671
+ e.stopPropagation();
672
+ }
673
+ onMove(e.touches[0].clientX);
674
+ return false;
675
+ },
676
+ upHandler: e => {
677
+ var _e$touches$;
678
+ document.removeEventListener('touchmove', touchEvents.moveHandler);
679
+ document.removeEventListener('touchend', touchEvents.upHandler);
680
+ if (e.cancelable) {
681
+ e.preventDefault();
682
+ e.stopPropagation();
683
+ }
684
+ onEnd((_e$touches$ = e.touches[0]) == null ? void 0 : _e$touches$.clientX);
685
+ }
686
+ };
687
+ const passiveIfSupported = passiveEventSupported() ? {
688
+ passive: false
689
+ } : false;
690
+ if (isTouchStartEvent(e)) {
691
+ document.addEventListener('touchmove', touchEvents.moveHandler, passiveIfSupported);
692
+ document.addEventListener('touchend', touchEvents.upHandler, passiveIfSupported);
693
+ } else {
694
+ document.addEventListener('mousemove', mouseEvents.moveHandler, passiveIfSupported);
695
+ document.addEventListener('mouseup', mouseEvents.upHandler, passiveIfSupported);
696
+ }
697
+ table.setColumnSizingInfo(old => ({
698
+ ...old,
699
+ startOffset: clientX,
700
+ startSize,
701
+ deltaOffset: 0,
702
+ deltaPercentage: 0,
703
+ columnSizingStart,
704
+ isResizingColumn: column.id
705
+ }));
706
+ };
710
707
  };
711
708
  },
712
709
  createTable: table => {
713
- return {
714
- setColumnSizing: updater => table.options.onColumnSizingChange == null ? void 0 : table.options.onColumnSizingChange(updater),
715
- setColumnSizingInfo: updater => table.options.onColumnSizingInfoChange == null ? void 0 : table.options.onColumnSizingInfoChange(updater),
716
- resetColumnSizing: defaultState => {
717
- var _table$initialState$c;
718
- table.setColumnSizing(defaultState ? {} : (_table$initialState$c = table.initialState.columnSizing) != null ? _table$initialState$c : {});
719
- },
720
- resetHeaderSizeInfo: defaultState => {
721
- var _table$initialState$c2;
722
- table.setColumnSizingInfo(defaultState ? getDefaultColumnSizingInfoState() : (_table$initialState$c2 = table.initialState.columnSizingInfo) != null ? _table$initialState$c2 : getDefaultColumnSizingInfoState());
723
- },
724
- getTotalSize: () => {
725
- var _table$getHeaderGroup, _table$getHeaderGroup2;
726
- return (_table$getHeaderGroup = (_table$getHeaderGroup2 = table.getHeaderGroups()[0]) == null ? void 0 : _table$getHeaderGroup2.headers.reduce((sum, header) => {
727
- return sum + header.getSize();
728
- }, 0)) != null ? _table$getHeaderGroup : 0;
729
- },
730
- getLeftTotalSize: () => {
731
- var _table$getLeftHeaderG, _table$getLeftHeaderG2;
732
- return (_table$getLeftHeaderG = (_table$getLeftHeaderG2 = table.getLeftHeaderGroups()[0]) == null ? void 0 : _table$getLeftHeaderG2.headers.reduce((sum, header) => {
733
- return sum + header.getSize();
734
- }, 0)) != null ? _table$getLeftHeaderG : 0;
735
- },
736
- getCenterTotalSize: () => {
737
- var _table$getCenterHeade, _table$getCenterHeade2;
738
- return (_table$getCenterHeade = (_table$getCenterHeade2 = table.getCenterHeaderGroups()[0]) == null ? void 0 : _table$getCenterHeade2.headers.reduce((sum, header) => {
739
- return sum + header.getSize();
740
- }, 0)) != null ? _table$getCenterHeade : 0;
741
- },
742
- getRightTotalSize: () => {
743
- var _table$getRightHeader, _table$getRightHeader2;
744
- return (_table$getRightHeader = (_table$getRightHeader2 = table.getRightHeaderGroups()[0]) == null ? void 0 : _table$getRightHeader2.headers.reduce((sum, header) => {
745
- return sum + header.getSize();
746
- }, 0)) != null ? _table$getRightHeader : 0;
747
- }
710
+ table.setColumnSizing = updater => table.options.onColumnSizingChange == null ? void 0 : table.options.onColumnSizingChange(updater);
711
+ table.setColumnSizingInfo = updater => table.options.onColumnSizingInfoChange == null ? void 0 : table.options.onColumnSizingInfoChange(updater);
712
+ table.resetColumnSizing = defaultState => {
713
+ var _table$initialState$c;
714
+ table.setColumnSizing(defaultState ? {} : (_table$initialState$c = table.initialState.columnSizing) != null ? _table$initialState$c : {});
715
+ };
716
+ table.resetHeaderSizeInfo = defaultState => {
717
+ var _table$initialState$c2;
718
+ table.setColumnSizingInfo(defaultState ? getDefaultColumnSizingInfoState() : (_table$initialState$c2 = table.initialState.columnSizingInfo) != null ? _table$initialState$c2 : getDefaultColumnSizingInfoState());
719
+ };
720
+ table.getTotalSize = () => {
721
+ var _table$getHeaderGroup, _table$getHeaderGroup2;
722
+ return (_table$getHeaderGroup = (_table$getHeaderGroup2 = table.getHeaderGroups()[0]) == null ? void 0 : _table$getHeaderGroup2.headers.reduce((sum, header) => {
723
+ return sum + header.getSize();
724
+ }, 0)) != null ? _table$getHeaderGroup : 0;
725
+ };
726
+ table.getLeftTotalSize = () => {
727
+ var _table$getLeftHeaderG, _table$getLeftHeaderG2;
728
+ return (_table$getLeftHeaderG = (_table$getLeftHeaderG2 = table.getLeftHeaderGroups()[0]) == null ? void 0 : _table$getLeftHeaderG2.headers.reduce((sum, header) => {
729
+ return sum + header.getSize();
730
+ }, 0)) != null ? _table$getLeftHeaderG : 0;
731
+ };
732
+ table.getCenterTotalSize = () => {
733
+ var _table$getCenterHeade, _table$getCenterHeade2;
734
+ return (_table$getCenterHeade = (_table$getCenterHeade2 = table.getCenterHeaderGroups()[0]) == null ? void 0 : _table$getCenterHeade2.headers.reduce((sum, header) => {
735
+ return sum + header.getSize();
736
+ }, 0)) != null ? _table$getCenterHeade : 0;
737
+ };
738
+ table.getRightTotalSize = () => {
739
+ var _table$getRightHeader, _table$getRightHeader2;
740
+ return (_table$getRightHeader = (_table$getRightHeader2 = table.getRightHeaderGroups()[0]) == null ? void 0 : _table$getRightHeader2.headers.reduce((sum, header) => {
741
+ return sum + header.getSize();
742
+ }, 0)) != null ? _table$getRightHeader : 0;
748
743
  };
749
744
  }
750
745
  };
@@ -790,141 +785,137 @@ const Expanding = {
790
785
  createTable: table => {
791
786
  let registered = false;
792
787
  let queued = false;
793
- return {
794
- _autoResetExpanded: () => {
795
- var _ref, _table$options$autoRe;
796
- if (!registered) {
797
- table._queue(() => {
798
- registered = true;
799
- });
800
- return;
801
- }
802
- if ((_ref = (_table$options$autoRe = table.options.autoResetAll) != null ? _table$options$autoRe : table.options.autoResetExpanded) != null ? _ref : !table.options.manualExpanding) {
803
- if (queued) return;
804
- queued = true;
805
- table._queue(() => {
806
- table.resetExpanded();
807
- queued = false;
808
- });
809
- }
810
- },
811
- setExpanded: updater => table.options.onExpandedChange == null ? void 0 : table.options.onExpandedChange(updater),
812
- toggleAllRowsExpanded: expanded => {
813
- if (expanded != null ? expanded : !table.getIsAllRowsExpanded()) {
814
- table.setExpanded(true);
815
- } else {
816
- table.setExpanded({});
817
- }
818
- },
819
- resetExpanded: defaultState => {
820
- var _table$initialState$e, _table$initialState;
821
- table.setExpanded(defaultState ? {} : (_table$initialState$e = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.expanded) != null ? _table$initialState$e : {});
822
- },
823
- getCanSomeRowsExpand: () => {
824
- return table.getPrePaginationRowModel().flatRows.some(row => row.getCanExpand());
825
- },
826
- getToggleAllRowsExpandedHandler: () => {
827
- return e => {
828
- e.persist == null || e.persist();
829
- table.toggleAllRowsExpanded();
830
- };
831
- },
832
- getIsSomeRowsExpanded: () => {
833
- const expanded = table.getState().expanded;
834
- return expanded === true || Object.values(expanded).some(Boolean);
835
- },
836
- getIsAllRowsExpanded: () => {
837
- const expanded = table.getState().expanded;
838
-
839
- // If expanded is true, save some cycles and return true
840
- if (typeof expanded === 'boolean') {
841
- return expanded === true;
842
- }
843
- if (!Object.keys(expanded).length) {
844
- return false;
845
- }
846
-
847
- // If any row is not expanded, return false
848
- if (table.getRowModel().flatRows.some(row => !row.getIsExpanded())) {
849
- return false;
850
- }
851
-
852
- // They must all be expanded :shrug:
853
- return true;
854
- },
855
- getExpandedDepth: () => {
856
- let maxDepth = 0;
857
- const rowIds = table.getState().expanded === true ? Object.keys(table.getRowModel().rowsById) : Object.keys(table.getState().expanded);
858
- rowIds.forEach(id => {
859
- const splitId = id.split('.');
860
- maxDepth = Math.max(maxDepth, splitId.length);
788
+ table._autoResetExpanded = () => {
789
+ var _ref, _table$options$autoRe;
790
+ if (!registered) {
791
+ table._queue(() => {
792
+ registered = true;
861
793
  });
862
- return maxDepth;
863
- },
864
- getPreExpandedRowModel: () => table.getSortedRowModel(),
865
- getExpandedRowModel: () => {
866
- if (!table._getExpandedRowModel && table.options.getExpandedRowModel) {
867
- table._getExpandedRowModel = table.options.getExpandedRowModel(table);
868
- }
869
- if (table.options.manualExpanding || !table._getExpandedRowModel) {
870
- return table.getPreExpandedRowModel();
871
- }
872
- return table._getExpandedRowModel();
794
+ return;
873
795
  }
874
- };
875
- },
876
- createRow: (row, table) => {
877
- return {
878
- toggleExpanded: expanded => {
879
- table.setExpanded(old => {
880
- var _expanded;
881
- const exists = old === true ? true : !!(old != null && old[row.id]);
882
- let oldExpanded = {};
883
- if (old === true) {
884
- Object.keys(table.getRowModel().rowsById).forEach(rowId => {
885
- oldExpanded[rowId] = true;
886
- });
887
- } else {
888
- oldExpanded = old;
889
- }
890
- expanded = (_expanded = expanded) != null ? _expanded : !exists;
891
- if (!exists && expanded) {
892
- return {
893
- ...oldExpanded,
894
- [row.id]: true
895
- };
896
- }
897
- if (exists && !expanded) {
898
- const {
899
- [row.id]: _,
900
- ...rest
901
- } = oldExpanded;
902
- return rest;
903
- }
904
- return old;
796
+ if ((_ref = (_table$options$autoRe = table.options.autoResetAll) != null ? _table$options$autoRe : table.options.autoResetExpanded) != null ? _ref : !table.options.manualExpanding) {
797
+ if (queued) return;
798
+ queued = true;
799
+ table._queue(() => {
800
+ table.resetExpanded();
801
+ queued = false;
905
802
  });
906
- },
907
- getIsExpanded: () => {
908
- var _table$options$getIsR;
909
- const expanded = table.getState().expanded;
910
- return !!((_table$options$getIsR = table.options.getIsRowExpanded == null ? void 0 : table.options.getIsRowExpanded(row)) != null ? _table$options$getIsR : expanded === true || (expanded == null ? void 0 : expanded[row.id]));
911
- },
912
- getCanExpand: () => {
913
- var _table$options$getRow, _table$options$enable, _row$subRows;
914
- return (_table$options$getRow = table.options.getRowCanExpand == null ? void 0 : table.options.getRowCanExpand(row)) != null ? _table$options$getRow : ((_table$options$enable = table.options.enableExpanding) != null ? _table$options$enable : true) && !!((_row$subRows = row.subRows) != null && _row$subRows.length);
915
- },
916
- getToggleExpandedHandler: () => {
917
- const canExpand = row.getCanExpand();
918
- return () => {
919
- if (!canExpand) return;
920
- row.toggleExpanded();
921
- };
922
803
  }
923
804
  };
924
- }
925
- };
926
-
927
- const includesString = (row, columnId, filterValue) => {
805
+ table.setExpanded = updater => table.options.onExpandedChange == null ? void 0 : table.options.onExpandedChange(updater);
806
+ table.toggleAllRowsExpanded = expanded => {
807
+ if (expanded != null ? expanded : !table.getIsAllRowsExpanded()) {
808
+ table.setExpanded(true);
809
+ } else {
810
+ table.setExpanded({});
811
+ }
812
+ };
813
+ table.resetExpanded = defaultState => {
814
+ var _table$initialState$e, _table$initialState;
815
+ table.setExpanded(defaultState ? {} : (_table$initialState$e = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.expanded) != null ? _table$initialState$e : {});
816
+ };
817
+ table.getCanSomeRowsExpand = () => {
818
+ return table.getPrePaginationRowModel().flatRows.some(row => row.getCanExpand());
819
+ };
820
+ table.getToggleAllRowsExpandedHandler = () => {
821
+ return e => {
822
+ e.persist == null || e.persist();
823
+ table.toggleAllRowsExpanded();
824
+ };
825
+ };
826
+ table.getIsSomeRowsExpanded = () => {
827
+ const expanded = table.getState().expanded;
828
+ return expanded === true || Object.values(expanded).some(Boolean);
829
+ };
830
+ table.getIsAllRowsExpanded = () => {
831
+ const expanded = table.getState().expanded;
832
+
833
+ // If expanded is true, save some cycles and return true
834
+ if (typeof expanded === 'boolean') {
835
+ return expanded === true;
836
+ }
837
+ if (!Object.keys(expanded).length) {
838
+ return false;
839
+ }
840
+
841
+ // If any row is not expanded, return false
842
+ if (table.getRowModel().flatRows.some(row => !row.getIsExpanded())) {
843
+ return false;
844
+ }
845
+
846
+ // They must all be expanded :shrug:
847
+ return true;
848
+ };
849
+ table.getExpandedDepth = () => {
850
+ let maxDepth = 0;
851
+ const rowIds = table.getState().expanded === true ? Object.keys(table.getRowModel().rowsById) : Object.keys(table.getState().expanded);
852
+ rowIds.forEach(id => {
853
+ const splitId = id.split('.');
854
+ maxDepth = Math.max(maxDepth, splitId.length);
855
+ });
856
+ return maxDepth;
857
+ };
858
+ table.getPreExpandedRowModel = () => table.getSortedRowModel();
859
+ table.getExpandedRowModel = () => {
860
+ if (!table._getExpandedRowModel && table.options.getExpandedRowModel) {
861
+ table._getExpandedRowModel = table.options.getExpandedRowModel(table);
862
+ }
863
+ if (table.options.manualExpanding || !table._getExpandedRowModel) {
864
+ return table.getPreExpandedRowModel();
865
+ }
866
+ return table._getExpandedRowModel();
867
+ };
868
+ },
869
+ createRow: (row, table) => {
870
+ row.toggleExpanded = expanded => {
871
+ table.setExpanded(old => {
872
+ var _expanded;
873
+ const exists = old === true ? true : !!(old != null && old[row.id]);
874
+ let oldExpanded = {};
875
+ if (old === true) {
876
+ Object.keys(table.getRowModel().rowsById).forEach(rowId => {
877
+ oldExpanded[rowId] = true;
878
+ });
879
+ } else {
880
+ oldExpanded = old;
881
+ }
882
+ expanded = (_expanded = expanded) != null ? _expanded : !exists;
883
+ if (!exists && expanded) {
884
+ return {
885
+ ...oldExpanded,
886
+ [row.id]: true
887
+ };
888
+ }
889
+ if (exists && !expanded) {
890
+ const {
891
+ [row.id]: _,
892
+ ...rest
893
+ } = oldExpanded;
894
+ return rest;
895
+ }
896
+ return old;
897
+ });
898
+ };
899
+ row.getIsExpanded = () => {
900
+ var _table$options$getIsR;
901
+ const expanded = table.getState().expanded;
902
+ return !!((_table$options$getIsR = table.options.getIsRowExpanded == null ? void 0 : table.options.getIsRowExpanded(row)) != null ? _table$options$getIsR : expanded === true || (expanded == null ? void 0 : expanded[row.id]));
903
+ };
904
+ row.getCanExpand = () => {
905
+ var _table$options$getRow, _table$options$enable, _row$subRows;
906
+ return (_table$options$getRow = table.options.getRowCanExpand == null ? void 0 : table.options.getRowCanExpand(row)) != null ? _table$options$getRow : ((_table$options$enable = table.options.enableExpanding) != null ? _table$options$enable : true) && !!((_row$subRows = row.subRows) != null && _row$subRows.length);
907
+ };
908
+ row.getToggleExpandedHandler = () => {
909
+ const canExpand = row.getCanExpand();
910
+ return () => {
911
+ if (!canExpand) return;
912
+ row.toggleExpanded();
913
+ };
914
+ };
915
+ }
916
+ };
917
+
918
+ const includesString = (row, columnId, filterValue) => {
928
919
  var _row$getValue;
929
920
  const search = filterValue.toLowerCase();
930
921
  return Boolean((_row$getValue = row.getValue(columnId)) == null || (_row$getValue = _row$getValue.toString()) == null || (_row$getValue = _row$getValue.toLowerCase()) == null ? void 0 : _row$getValue.includes(search));
@@ -1038,184 +1029,176 @@ const Filters = {
1038
1029
  };
1039
1030
  },
1040
1031
  createColumn: (column, table) => {
1041
- return {
1042
- getAutoFilterFn: () => {
1043
- const firstRow = table.getCoreRowModel().flatRows[0];
1044
- const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
1045
- if (typeof value === 'string') {
1046
- return filterFns.includesString;
1047
- }
1048
- if (typeof value === 'number') {
1049
- return filterFns.inNumberRange;
1050
- }
1051
- if (typeof value === 'boolean') {
1052
- return filterFns.equals;
1053
- }
1054
- if (value !== null && typeof value === 'object') {
1055
- return filterFns.equals;
1056
- }
1057
- if (Array.isArray(value)) {
1058
- return filterFns.arrIncludes;
1059
- }
1060
- return filterFns.weakEquals;
1061
- },
1062
- getFilterFn: () => {
1063
- var _table$options$filter, _table$options$filter2;
1064
- return isFunction(column.columnDef.filterFn) ? column.columnDef.filterFn : column.columnDef.filterFn === 'auto' ? column.getAutoFilterFn()
1065
- // @ts-ignore
1066
- : (_table$options$filter = (_table$options$filter2 = table.options.filterFns) == null ? void 0 : _table$options$filter2[column.columnDef.filterFn]) != null ? _table$options$filter : filterFns[column.columnDef.filterFn];
1067
- },
1068
- getCanFilter: () => {
1069
- var _column$columnDef$ena, _table$options$enable, _table$options$enable2;
1070
- return ((_column$columnDef$ena = column.columnDef.enableColumnFilter) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableColumnFilters) != null ? _table$options$enable : true) && ((_table$options$enable2 = table.options.enableFilters) != null ? _table$options$enable2 : true) && !!column.accessorFn;
1071
- },
1072
- getCanGlobalFilter: () => {
1073
- var _column$columnDef$ena2, _table$options$enable3, _table$options$enable4, _table$options$getCol;
1074
- return ((_column$columnDef$ena2 = column.columnDef.enableGlobalFilter) != null ? _column$columnDef$ena2 : true) && ((_table$options$enable3 = table.options.enableGlobalFilter) != null ? _table$options$enable3 : true) && ((_table$options$enable4 = table.options.enableFilters) != null ? _table$options$enable4 : true) && ((_table$options$getCol = table.options.getColumnCanGlobalFilter == null ? void 0 : table.options.getColumnCanGlobalFilter(column)) != null ? _table$options$getCol : true) && !!column.accessorFn;
1075
- },
1076
- getIsFiltered: () => column.getFilterIndex() > -1,
1077
- getFilterValue: () => {
1078
- var _table$getState$colum;
1079
- return (_table$getState$colum = table.getState().columnFilters) == null || (_table$getState$colum = _table$getState$colum.find(d => d.id === column.id)) == null ? void 0 : _table$getState$colum.value;
1080
- },
1081
- getFilterIndex: () => {
1082
- var _table$getState$colum2, _table$getState$colum3;
1083
- return (_table$getState$colum2 = (_table$getState$colum3 = table.getState().columnFilters) == null ? void 0 : _table$getState$colum3.findIndex(d => d.id === column.id)) != null ? _table$getState$colum2 : -1;
1084
- },
1085
- setFilterValue: value => {
1086
- table.setColumnFilters(old => {
1087
- const filterFn = column.getFilterFn();
1088
- const previousfilter = old == null ? void 0 : old.find(d => d.id === column.id);
1089
- const newFilter = functionalUpdate(value, previousfilter ? previousfilter.value : undefined);
1090
-
1091
- //
1092
- if (shouldAutoRemoveFilter(filterFn, newFilter, column)) {
1093
- var _old$filter;
1094
- return (_old$filter = old == null ? void 0 : old.filter(d => d.id !== column.id)) != null ? _old$filter : [];
1095
- }
1096
- const newFilterObj = {
1097
- id: column.id,
1098
- value: newFilter
1099
- };
1100
- if (previousfilter) {
1101
- var _old$map;
1102
- return (_old$map = old == null ? void 0 : old.map(d => {
1103
- if (d.id === column.id) {
1104
- return newFilterObj;
1105
- }
1106
- return d;
1107
- })) != null ? _old$map : [];
1108
- }
1109
- if (old != null && old.length) {
1110
- return [...old, newFilterObj];
1111
- }
1112
- return [newFilterObj];
1113
- });
1114
- },
1115
- _getFacetedRowModel: table.options.getFacetedRowModel && table.options.getFacetedRowModel(table, column.id),
1116
- getFacetedRowModel: () => {
1117
- if (!column._getFacetedRowModel) {
1118
- return table.getPreFilteredRowModel();
1119
- }
1120
- return column._getFacetedRowModel();
1121
- },
1122
- _getFacetedUniqueValues: table.options.getFacetedUniqueValues && table.options.getFacetedUniqueValues(table, column.id),
1123
- getFacetedUniqueValues: () => {
1124
- if (!column._getFacetedUniqueValues) {
1125
- return new Map();
1032
+ column.getAutoFilterFn = () => {
1033
+ const firstRow = table.getCoreRowModel().flatRows[0];
1034
+ const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
1035
+ if (typeof value === 'string') {
1036
+ return filterFns.includesString;
1037
+ }
1038
+ if (typeof value === 'number') {
1039
+ return filterFns.inNumberRange;
1040
+ }
1041
+ if (typeof value === 'boolean') {
1042
+ return filterFns.equals;
1043
+ }
1044
+ if (value !== null && typeof value === 'object') {
1045
+ return filterFns.equals;
1046
+ }
1047
+ if (Array.isArray(value)) {
1048
+ return filterFns.arrIncludes;
1049
+ }
1050
+ return filterFns.weakEquals;
1051
+ };
1052
+ column.getFilterFn = () => {
1053
+ var _table$options$filter, _table$options$filter2;
1054
+ return isFunction(column.columnDef.filterFn) ? column.columnDef.filterFn : column.columnDef.filterFn === 'auto' ? column.getAutoFilterFn() : // @ts-ignore
1055
+ (_table$options$filter = (_table$options$filter2 = table.options.filterFns) == null ? void 0 : _table$options$filter2[column.columnDef.filterFn]) != null ? _table$options$filter : filterFns[column.columnDef.filterFn];
1056
+ };
1057
+ column.getCanFilter = () => {
1058
+ var _column$columnDef$ena, _table$options$enable, _table$options$enable2;
1059
+ return ((_column$columnDef$ena = column.columnDef.enableColumnFilter) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableColumnFilters) != null ? _table$options$enable : true) && ((_table$options$enable2 = table.options.enableFilters) != null ? _table$options$enable2 : true) && !!column.accessorFn;
1060
+ };
1061
+ column.getCanGlobalFilter = () => {
1062
+ var _column$columnDef$ena2, _table$options$enable3, _table$options$enable4, _table$options$getCol;
1063
+ return ((_column$columnDef$ena2 = column.columnDef.enableGlobalFilter) != null ? _column$columnDef$ena2 : true) && ((_table$options$enable3 = table.options.enableGlobalFilter) != null ? _table$options$enable3 : true) && ((_table$options$enable4 = table.options.enableFilters) != null ? _table$options$enable4 : true) && ((_table$options$getCol = table.options.getColumnCanGlobalFilter == null ? void 0 : table.options.getColumnCanGlobalFilter(column)) != null ? _table$options$getCol : true) && !!column.accessorFn;
1064
+ };
1065
+ column.getIsFiltered = () => column.getFilterIndex() > -1;
1066
+ column.getFilterValue = () => {
1067
+ var _table$getState$colum;
1068
+ return (_table$getState$colum = table.getState().columnFilters) == null || (_table$getState$colum = _table$getState$colum.find(d => d.id === column.id)) == null ? void 0 : _table$getState$colum.value;
1069
+ };
1070
+ column.getFilterIndex = () => {
1071
+ var _table$getState$colum2, _table$getState$colum3;
1072
+ return (_table$getState$colum2 = (_table$getState$colum3 = table.getState().columnFilters) == null ? void 0 : _table$getState$colum3.findIndex(d => d.id === column.id)) != null ? _table$getState$colum2 : -1;
1073
+ };
1074
+ column.setFilterValue = value => {
1075
+ table.setColumnFilters(old => {
1076
+ const filterFn = column.getFilterFn();
1077
+ const previousfilter = old == null ? void 0 : old.find(d => d.id === column.id);
1078
+ const newFilter = functionalUpdate(value, previousfilter ? previousfilter.value : undefined);
1079
+
1080
+ //
1081
+ if (shouldAutoRemoveFilter(filterFn, newFilter, column)) {
1082
+ var _old$filter;
1083
+ return (_old$filter = old == null ? void 0 : old.filter(d => d.id !== column.id)) != null ? _old$filter : [];
1084
+ }
1085
+ const newFilterObj = {
1086
+ id: column.id,
1087
+ value: newFilter
1088
+ };
1089
+ if (previousfilter) {
1090
+ var _old$map;
1091
+ return (_old$map = old == null ? void 0 : old.map(d => {
1092
+ if (d.id === column.id) {
1093
+ return newFilterObj;
1094
+ }
1095
+ return d;
1096
+ })) != null ? _old$map : [];
1126
1097
  }
1127
- return column._getFacetedUniqueValues();
1128
- },
1129
- _getFacetedMinMaxValues: table.options.getFacetedMinMaxValues && table.options.getFacetedMinMaxValues(table, column.id),
1130
- getFacetedMinMaxValues: () => {
1131
- if (!column._getFacetedMinMaxValues) {
1132
- return undefined;
1098
+ if (old != null && old.length) {
1099
+ return [...old, newFilterObj];
1133
1100
  }
1134
- return column._getFacetedMinMaxValues();
1101
+ return [newFilterObj];
1102
+ });
1103
+ };
1104
+ column._getFacetedRowModel = table.options.getFacetedRowModel && table.options.getFacetedRowModel(table, column.id);
1105
+ column.getFacetedRowModel = () => {
1106
+ if (!column._getFacetedRowModel) {
1107
+ return table.getPreFilteredRowModel();
1108
+ }
1109
+ return column._getFacetedRowModel();
1110
+ };
1111
+ column._getFacetedUniqueValues = table.options.getFacetedUniqueValues && table.options.getFacetedUniqueValues(table, column.id);
1112
+ column.getFacetedUniqueValues = () => {
1113
+ if (!column._getFacetedUniqueValues) {
1114
+ return new Map();
1135
1115
  }
1136
- // () => [column.getFacetedRowModel()],
1137
- // facetedRowModel => getRowModelMinMaxValues(facetedRowModel, column.id),
1116
+ return column._getFacetedUniqueValues();
1138
1117
  };
1118
+ column._getFacetedMinMaxValues = table.options.getFacetedMinMaxValues && table.options.getFacetedMinMaxValues(table, column.id);
1119
+ column.getFacetedMinMaxValues = () => {
1120
+ if (!column._getFacetedMinMaxValues) {
1121
+ return undefined;
1122
+ }
1123
+ return column._getFacetedMinMaxValues();
1124
+ };
1125
+ // () => [column.getFacetedRowModel()],
1126
+ // facetedRowModel => getRowModelMinMaxValues(facetedRowModel, column.id),
1139
1127
  },
1140
1128
 
1141
1129
  createRow: (row, table) => {
1142
- return {
1143
- columnFilters: {},
1144
- columnFiltersMeta: {}
1145
- };
1130
+ row.columnFilters = {};
1131
+ row.columnFiltersMeta = {};
1146
1132
  },
1147
1133
  createTable: table => {
1148
- return {
1149
- getGlobalAutoFilterFn: () => {
1150
- return filterFns.includesString;
1151
- },
1152
- getGlobalFilterFn: () => {
1153
- var _table$options$filter3, _table$options$filter4;
1154
- const {
1155
- globalFilterFn: globalFilterFn
1156
- } = table.options;
1157
- return isFunction(globalFilterFn) ? globalFilterFn : globalFilterFn === 'auto' ? table.getGlobalAutoFilterFn()
1158
- // @ts-ignore
1159
- : (_table$options$filter3 = (_table$options$filter4 = table.options.filterFns) == null ? void 0 : _table$options$filter4[globalFilterFn]) != null ? _table$options$filter3 : filterFns[globalFilterFn];
1160
- },
1161
- setColumnFilters: updater => {
1162
- const leafColumns = table.getAllLeafColumns();
1163
- const updateFn = old => {
1164
- var _functionalUpdate;
1165
- return (_functionalUpdate = functionalUpdate(updater, old)) == null ? void 0 : _functionalUpdate.filter(filter => {
1166
- const column = leafColumns.find(d => d.id === filter.id);
1167
- if (column) {
1168
- const filterFn = column.getFilterFn();
1169
- if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {
1170
- return false;
1171
- }
1134
+ table.getGlobalAutoFilterFn = () => {
1135
+ return filterFns.includesString;
1136
+ };
1137
+ table.getGlobalFilterFn = () => {
1138
+ var _table$options$filter3, _table$options$filter4;
1139
+ const {
1140
+ globalFilterFn: globalFilterFn
1141
+ } = table.options;
1142
+ return isFunction(globalFilterFn) ? globalFilterFn : globalFilterFn === 'auto' ? table.getGlobalAutoFilterFn() : // @ts-ignore
1143
+ (_table$options$filter3 = (_table$options$filter4 = table.options.filterFns) == null ? void 0 : _table$options$filter4[globalFilterFn]) != null ? _table$options$filter3 : filterFns[globalFilterFn];
1144
+ };
1145
+ table.setColumnFilters = updater => {
1146
+ const leafColumns = table.getAllLeafColumns();
1147
+ const updateFn = old => {
1148
+ var _functionalUpdate;
1149
+ return (_functionalUpdate = functionalUpdate(updater, old)) == null ? void 0 : _functionalUpdate.filter(filter => {
1150
+ const column = leafColumns.find(d => d.id === filter.id);
1151
+ if (column) {
1152
+ const filterFn = column.getFilterFn();
1153
+ if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {
1154
+ return false;
1172
1155
  }
1173
- return true;
1174
- });
1175
- };
1176
- table.options.onColumnFiltersChange == null || table.options.onColumnFiltersChange(updateFn);
1177
- },
1178
- setGlobalFilter: updater => {
1179
- table.options.onGlobalFilterChange == null || table.options.onGlobalFilterChange(updater);
1180
- },
1181
- resetGlobalFilter: defaultState => {
1182
- table.setGlobalFilter(defaultState ? undefined : table.initialState.globalFilter);
1183
- },
1184
- resetColumnFilters: defaultState => {
1185
- var _table$initialState$c, _table$initialState;
1186
- table.setColumnFilters(defaultState ? [] : (_table$initialState$c = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.columnFilters) != null ? _table$initialState$c : []);
1187
- },
1188
- getPreFilteredRowModel: () => table.getCoreRowModel(),
1189
- getFilteredRowModel: () => {
1190
- if (!table._getFilteredRowModel && table.options.getFilteredRowModel) {
1191
- table._getFilteredRowModel = table.options.getFilteredRowModel(table);
1192
- }
1193
- if (table.options.manualFiltering || !table._getFilteredRowModel) {
1194
- return table.getPreFilteredRowModel();
1195
- }
1196
- return table._getFilteredRowModel();
1197
- },
1198
- _getGlobalFacetedRowModel: table.options.getFacetedRowModel && table.options.getFacetedRowModel(table, '__global__'),
1199
- getGlobalFacetedRowModel: () => {
1200
- if (table.options.manualFiltering || !table._getGlobalFacetedRowModel) {
1201
- return table.getPreFilteredRowModel();
1202
- }
1203
- return table._getGlobalFacetedRowModel();
1204
- },
1205
- _getGlobalFacetedUniqueValues: table.options.getFacetedUniqueValues && table.options.getFacetedUniqueValues(table, '__global__'),
1206
- getGlobalFacetedUniqueValues: () => {
1207
- if (!table._getGlobalFacetedUniqueValues) {
1208
- return new Map();
1209
- }
1210
- return table._getGlobalFacetedUniqueValues();
1211
- },
1212
- _getGlobalFacetedMinMaxValues: table.options.getFacetedMinMaxValues && table.options.getFacetedMinMaxValues(table, '__global__'),
1213
- getGlobalFacetedMinMaxValues: () => {
1214
- if (!table._getGlobalFacetedMinMaxValues) {
1215
- return;
1216
- }
1217
- return table._getGlobalFacetedMinMaxValues();
1156
+ }
1157
+ return true;
1158
+ });
1159
+ };
1160
+ table.options.onColumnFiltersChange == null || table.options.onColumnFiltersChange(updateFn);
1161
+ };
1162
+ table.setGlobalFilter = updater => {
1163
+ table.options.onGlobalFilterChange == null || table.options.onGlobalFilterChange(updater);
1164
+ };
1165
+ table.resetGlobalFilter = defaultState => {
1166
+ table.setGlobalFilter(defaultState ? undefined : table.initialState.globalFilter);
1167
+ };
1168
+ table.resetColumnFilters = defaultState => {
1169
+ var _table$initialState$c, _table$initialState;
1170
+ table.setColumnFilters(defaultState ? [] : (_table$initialState$c = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.columnFilters) != null ? _table$initialState$c : []);
1171
+ };
1172
+ table.getPreFilteredRowModel = () => table.getCoreRowModel();
1173
+ table.getFilteredRowModel = () => {
1174
+ if (!table._getFilteredRowModel && table.options.getFilteredRowModel) {
1175
+ table._getFilteredRowModel = table.options.getFilteredRowModel(table);
1176
+ }
1177
+ if (table.options.manualFiltering || !table._getFilteredRowModel) {
1178
+ return table.getPreFilteredRowModel();
1179
+ }
1180
+ return table._getFilteredRowModel();
1181
+ };
1182
+ table._getGlobalFacetedRowModel = table.options.getFacetedRowModel && table.options.getFacetedRowModel(table, '__global__');
1183
+ table.getGlobalFacetedRowModel = () => {
1184
+ if (table.options.manualFiltering || !table._getGlobalFacetedRowModel) {
1185
+ return table.getPreFilteredRowModel();
1186
+ }
1187
+ return table._getGlobalFacetedRowModel();
1188
+ };
1189
+ table._getGlobalFacetedUniqueValues = table.options.getFacetedUniqueValues && table.options.getFacetedUniqueValues(table, '__global__');
1190
+ table.getGlobalFacetedUniqueValues = () => {
1191
+ if (!table._getGlobalFacetedUniqueValues) {
1192
+ return new Map();
1193
+ }
1194
+ return table._getGlobalFacetedUniqueValues();
1195
+ };
1196
+ table._getGlobalFacetedMinMaxValues = table.options.getFacetedMinMaxValues && table.options.getFacetedMinMaxValues(table, '__global__');
1197
+ table.getGlobalFacetedMinMaxValues = () => {
1198
+ if (!table._getGlobalFacetedMinMaxValues) {
1199
+ return;
1218
1200
  }
1201
+ return table._getGlobalFacetedMinMaxValues();
1219
1202
  };
1220
1203
  }
1221
1204
  };
@@ -1340,98 +1323,90 @@ const Grouping = {
1340
1323
  };
1341
1324
  },
1342
1325
  createColumn: (column, table) => {
1343
- return {
1344
- toggleGrouping: () => {
1345
- table.setGrouping(old => {
1346
- // Find any existing grouping for this column
1347
- if (old != null && old.includes(column.id)) {
1348
- return old.filter(d => d !== column.id);
1349
- }
1350
- return [...(old != null ? old : []), column.id];
1351
- });
1352
- },
1353
- getCanGroup: () => {
1354
- var _ref, _ref2, _ref3, _column$columnDef$ena;
1355
- return (_ref = (_ref2 = (_ref3 = (_column$columnDef$ena = column.columnDef.enableGrouping) != null ? _column$columnDef$ena : true) != null ? _ref3 : table.options.enableGrouping) != null ? _ref2 : true) != null ? _ref : !!column.accessorFn;
1356
- },
1357
- getIsGrouped: () => {
1358
- var _table$getState$group;
1359
- return (_table$getState$group = table.getState().grouping) == null ? void 0 : _table$getState$group.includes(column.id);
1360
- },
1361
- getGroupedIndex: () => {
1362
- var _table$getState$group2;
1363
- return (_table$getState$group2 = table.getState().grouping) == null ? void 0 : _table$getState$group2.indexOf(column.id);
1364
- },
1365
- getToggleGroupingHandler: () => {
1366
- const canGroup = column.getCanGroup();
1367
- return () => {
1368
- if (!canGroup) return;
1369
- column.toggleGrouping();
1370
- };
1371
- },
1372
- getAutoAggregationFn: () => {
1373
- const firstRow = table.getCoreRowModel().flatRows[0];
1374
- const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
1375
- if (typeof value === 'number') {
1376
- return aggregationFns.sum;
1377
- }
1378
- if (Object.prototype.toString.call(value) === '[object Date]') {
1379
- return aggregationFns.extent;
1380
- }
1381
- },
1382
- getAggregationFn: () => {
1383
- var _table$options$aggreg, _table$options$aggreg2;
1384
- if (!column) {
1385
- throw new Error();
1326
+ column.toggleGrouping = () => {
1327
+ table.setGrouping(old => {
1328
+ // Find any existing grouping for this column
1329
+ if (old != null && old.includes(column.id)) {
1330
+ return old.filter(d => d !== column.id);
1386
1331
  }
1387
- return isFunction(column.columnDef.aggregationFn) ? column.columnDef.aggregationFn : column.columnDef.aggregationFn === 'auto' ? column.getAutoAggregationFn() : (_table$options$aggreg = (_table$options$aggreg2 = table.options.aggregationFns) == null ? void 0 : _table$options$aggreg2[column.columnDef.aggregationFn]) != null ? _table$options$aggreg : aggregationFns[column.columnDef.aggregationFn];
1332
+ return [...(old != null ? old : []), column.id];
1333
+ });
1334
+ };
1335
+ column.getCanGroup = () => {
1336
+ var _ref, _ref2, _ref3, _column$columnDef$ena;
1337
+ return (_ref = (_ref2 = (_ref3 = (_column$columnDef$ena = column.columnDef.enableGrouping) != null ? _column$columnDef$ena : true) != null ? _ref3 : table.options.enableGrouping) != null ? _ref2 : true) != null ? _ref : !!column.accessorFn;
1338
+ };
1339
+ column.getIsGrouped = () => {
1340
+ var _table$getState$group;
1341
+ return (_table$getState$group = table.getState().grouping) == null ? void 0 : _table$getState$group.includes(column.id);
1342
+ };
1343
+ column.getGroupedIndex = () => {
1344
+ var _table$getState$group2;
1345
+ return (_table$getState$group2 = table.getState().grouping) == null ? void 0 : _table$getState$group2.indexOf(column.id);
1346
+ };
1347
+ column.getToggleGroupingHandler = () => {
1348
+ const canGroup = column.getCanGroup();
1349
+ return () => {
1350
+ if (!canGroup) return;
1351
+ column.toggleGrouping();
1352
+ };
1353
+ };
1354
+ column.getAutoAggregationFn = () => {
1355
+ const firstRow = table.getCoreRowModel().flatRows[0];
1356
+ const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
1357
+ if (typeof value === 'number') {
1358
+ return aggregationFns.sum;
1388
1359
  }
1360
+ if (Object.prototype.toString.call(value) === '[object Date]') {
1361
+ return aggregationFns.extent;
1362
+ }
1363
+ };
1364
+ column.getAggregationFn = () => {
1365
+ var _table$options$aggreg, _table$options$aggreg2;
1366
+ if (!column) {
1367
+ throw new Error();
1368
+ }
1369
+ return isFunction(column.columnDef.aggregationFn) ? column.columnDef.aggregationFn : column.columnDef.aggregationFn === 'auto' ? column.getAutoAggregationFn() : (_table$options$aggreg = (_table$options$aggreg2 = table.options.aggregationFns) == null ? void 0 : _table$options$aggreg2[column.columnDef.aggregationFn]) != null ? _table$options$aggreg : aggregationFns[column.columnDef.aggregationFn];
1389
1370
  };
1390
1371
  },
1391
1372
  createTable: table => {
1392
- return {
1393
- setGrouping: updater => table.options.onGroupingChange == null ? void 0 : table.options.onGroupingChange(updater),
1394
- resetGrouping: defaultState => {
1395
- var _table$initialState$g, _table$initialState;
1396
- table.setGrouping(defaultState ? [] : (_table$initialState$g = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.grouping) != null ? _table$initialState$g : []);
1397
- },
1398
- getPreGroupedRowModel: () => table.getFilteredRowModel(),
1399
- getGroupedRowModel: () => {
1400
- if (!table._getGroupedRowModel && table.options.getGroupedRowModel) {
1401
- table._getGroupedRowModel = table.options.getGroupedRowModel(table);
1402
- }
1403
- if (table.options.manualGrouping || !table._getGroupedRowModel) {
1404
- return table.getPreGroupedRowModel();
1405
- }
1406
- return table._getGroupedRowModel();
1373
+ table.setGrouping = updater => table.options.onGroupingChange == null ? void 0 : table.options.onGroupingChange(updater);
1374
+ table.resetGrouping = defaultState => {
1375
+ var _table$initialState$g, _table$initialState;
1376
+ table.setGrouping(defaultState ? [] : (_table$initialState$g = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.grouping) != null ? _table$initialState$g : []);
1377
+ };
1378
+ table.getPreGroupedRowModel = () => table.getFilteredRowModel();
1379
+ table.getGroupedRowModel = () => {
1380
+ if (!table._getGroupedRowModel && table.options.getGroupedRowModel) {
1381
+ table._getGroupedRowModel = table.options.getGroupedRowModel(table);
1407
1382
  }
1383
+ if (table.options.manualGrouping || !table._getGroupedRowModel) {
1384
+ return table.getPreGroupedRowModel();
1385
+ }
1386
+ return table._getGroupedRowModel();
1408
1387
  };
1409
1388
  },
1410
1389
  createRow: (row, table) => {
1411
- return {
1412
- getIsGrouped: () => !!row.groupingColumnId,
1413
- getGroupingValue: columnId => {
1414
- if (row._groupingValuesCache.hasOwnProperty(columnId)) {
1415
- return row._groupingValuesCache[columnId];
1416
- }
1417
- const column = table.getColumn(columnId);
1418
- if (!(column != null && column.columnDef.getGroupingValue)) {
1419
- return row.getValue(columnId);
1420
- }
1421
- row._groupingValuesCache[columnId] = column.columnDef.getGroupingValue(row.original);
1390
+ row.getIsGrouped = () => !!row.groupingColumnId;
1391
+ row.getGroupingValue = columnId => {
1392
+ if (row._groupingValuesCache.hasOwnProperty(columnId)) {
1422
1393
  return row._groupingValuesCache[columnId];
1423
- },
1424
- _groupingValuesCache: {}
1394
+ }
1395
+ const column = table.getColumn(columnId);
1396
+ if (!(column != null && column.columnDef.getGroupingValue)) {
1397
+ return row.getValue(columnId);
1398
+ }
1399
+ row._groupingValuesCache[columnId] = column.columnDef.getGroupingValue(row.original);
1400
+ return row._groupingValuesCache[columnId];
1425
1401
  };
1402
+ row._groupingValuesCache = {};
1426
1403
  },
1427
1404
  createCell: (cell, column, row, table) => {
1428
- return {
1429
- getIsGrouped: () => column.getIsGrouped() && column.id === row.groupingColumnId,
1430
- getIsPlaceholder: () => !cell.getIsGrouped() && column.getIsGrouped(),
1431
- getIsAggregated: () => {
1432
- var _row$subRows;
1433
- return !cell.getIsGrouped() && !cell.getIsPlaceholder() && !!((_row$subRows = row.subRows) != null && _row$subRows.length);
1434
- }
1405
+ cell.getIsGrouped = () => column.getIsGrouped() && column.id === row.groupingColumnId;
1406
+ cell.getIsPlaceholder = () => !cell.getIsGrouped() && column.getIsGrouped();
1407
+ cell.getIsAggregated = () => {
1408
+ var _row$subRows;
1409
+ return !cell.getIsGrouped() && !cell.getIsPlaceholder() && !!((_row$subRows = row.subRows) != null && _row$subRows.length);
1435
1410
  };
1436
1411
  }
1437
1412
  };
@@ -1462,46 +1437,44 @@ const Ordering = {
1462
1437
  };
1463
1438
  },
1464
1439
  createTable: table => {
1465
- return {
1466
- setColumnOrder: updater => table.options.onColumnOrderChange == null ? void 0 : table.options.onColumnOrderChange(updater),
1467
- resetColumnOrder: defaultState => {
1468
- var _table$initialState$c;
1469
- table.setColumnOrder(defaultState ? [] : (_table$initialState$c = table.initialState.columnOrder) != null ? _table$initialState$c : []);
1470
- },
1471
- _getOrderColumnsFn: memo(() => [table.getState().columnOrder, table.getState().grouping, table.options.groupedColumnMode], (columnOrder, grouping, groupedColumnMode) => columns => {
1472
- // Sort grouped columns to the start of the column list
1473
- // before the headers are built
1474
- let orderedColumns = [];
1475
-
1476
- // If there is no order, return the normal columns
1477
- if (!(columnOrder != null && columnOrder.length)) {
1478
- orderedColumns = columns;
1479
- } else {
1480
- const columnOrderCopy = [...columnOrder];
1440
+ table.setColumnOrder = updater => table.options.onColumnOrderChange == null ? void 0 : table.options.onColumnOrderChange(updater);
1441
+ table.resetColumnOrder = defaultState => {
1442
+ var _table$initialState$c;
1443
+ table.setColumnOrder(defaultState ? [] : (_table$initialState$c = table.initialState.columnOrder) != null ? _table$initialState$c : []);
1444
+ };
1445
+ table._getOrderColumnsFn = memo(() => [table.getState().columnOrder, table.getState().grouping, table.options.groupedColumnMode], (columnOrder, grouping, groupedColumnMode) => columns => {
1446
+ // Sort grouped columns to the start of the column list
1447
+ // before the headers are built
1448
+ let orderedColumns = [];
1449
+
1450
+ // If there is no order, return the normal columns
1451
+ if (!(columnOrder != null && columnOrder.length)) {
1452
+ orderedColumns = columns;
1453
+ } else {
1454
+ const columnOrderCopy = [...columnOrder];
1481
1455
 
1482
- // If there is an order, make a copy of the columns
1483
- const columnsCopy = [...columns];
1456
+ // If there is an order, make a copy of the columns
1457
+ const columnsCopy = [...columns];
1484
1458
 
1485
- // And make a new ordered array of the columns
1459
+ // And make a new ordered array of the columns
1486
1460
 
1487
- // Loop over the columns and place them in order into the new array
1488
- while (columnsCopy.length && columnOrderCopy.length) {
1489
- const targetColumnId = columnOrderCopy.shift();
1490
- const foundIndex = columnsCopy.findIndex(d => d.id === targetColumnId);
1491
- if (foundIndex > -1) {
1492
- orderedColumns.push(columnsCopy.splice(foundIndex, 1)[0]);
1493
- }
1461
+ // Loop over the columns and place them in order into the new array
1462
+ while (columnsCopy.length && columnOrderCopy.length) {
1463
+ const targetColumnId = columnOrderCopy.shift();
1464
+ const foundIndex = columnsCopy.findIndex(d => d.id === targetColumnId);
1465
+ if (foundIndex > -1) {
1466
+ orderedColumns.push(columnsCopy.splice(foundIndex, 1)[0]);
1494
1467
  }
1495
-
1496
- // If there are any columns left, add them to the end
1497
- orderedColumns = [...orderedColumns, ...columnsCopy];
1498
1468
  }
1499
- return orderColumns(orderedColumns, grouping, groupedColumnMode);
1500
- }, {
1501
- key: process.env.NODE_ENV === 'development' && 'getOrderColumnsFn'
1502
- // debug: () => table.options.debugAll ?? table.options.debugTable,
1503
- })
1504
- };
1469
+
1470
+ // If there are any columns left, add them to the end
1471
+ orderedColumns = [...orderedColumns, ...columnsCopy];
1472
+ }
1473
+ return orderColumns(orderedColumns, grouping, groupedColumnMode);
1474
+ }, {
1475
+ key: process.env.NODE_ENV === 'development' && 'getOrderColumnsFn'
1476
+ // debug: () => table.options.debugAll ?? table.options.debugTable,
1477
+ });
1505
1478
  }
1506
1479
  };
1507
1480
 
@@ -1531,126 +1504,124 @@ const Pagination = {
1531
1504
  createTable: table => {
1532
1505
  let registered = false;
1533
1506
  let queued = false;
1534
- return {
1535
- _autoResetPageIndex: () => {
1536
- var _ref, _table$options$autoRe;
1537
- if (!registered) {
1538
- table._queue(() => {
1539
- registered = true;
1540
- });
1541
- return;
1542
- }
1543
- if ((_ref = (_table$options$autoRe = table.options.autoResetAll) != null ? _table$options$autoRe : table.options.autoResetPageIndex) != null ? _ref : !table.options.manualPagination) {
1544
- if (queued) return;
1545
- queued = true;
1546
- table._queue(() => {
1547
- table.resetPageIndex();
1548
- queued = false;
1549
- });
1550
- }
1551
- },
1552
- setPagination: updater => {
1553
- const safeUpdater = old => {
1554
- let newState = functionalUpdate(updater, old);
1555
- return newState;
1556
- };
1557
- return table.options.onPaginationChange == null ? void 0 : table.options.onPaginationChange(safeUpdater);
1558
- },
1559
- resetPagination: defaultState => {
1560
- var _table$initialState$p;
1561
- table.setPagination(defaultState ? getDefaultPaginationState() : (_table$initialState$p = table.initialState.pagination) != null ? _table$initialState$p : getDefaultPaginationState());
1562
- },
1563
- setPageIndex: updater => {
1564
- table.setPagination(old => {
1565
- let pageIndex = functionalUpdate(updater, old.pageIndex);
1566
- const maxPageIndex = typeof table.options.pageCount === 'undefined' || table.options.pageCount === -1 ? Number.MAX_SAFE_INTEGER : table.options.pageCount - 1;
1567
- pageIndex = Math.max(0, Math.min(pageIndex, maxPageIndex));
1568
- return {
1569
- ...old,
1570
- pageIndex
1571
- };
1507
+ table._autoResetPageIndex = () => {
1508
+ var _ref, _table$options$autoRe;
1509
+ if (!registered) {
1510
+ table._queue(() => {
1511
+ registered = true;
1572
1512
  });
1573
- },
1574
- resetPageIndex: defaultState => {
1575
- var _table$initialState$p2, _table$initialState;
1576
- table.setPageIndex(defaultState ? defaultPageIndex : (_table$initialState$p2 = (_table$initialState = table.initialState) == null || (_table$initialState = _table$initialState.pagination) == null ? void 0 : _table$initialState.pageIndex) != null ? _table$initialState$p2 : defaultPageIndex);
1577
- },
1578
- resetPageSize: defaultState => {
1579
- var _table$initialState$p3, _table$initialState2;
1580
- table.setPageSize(defaultState ? defaultPageSize : (_table$initialState$p3 = (_table$initialState2 = table.initialState) == null || (_table$initialState2 = _table$initialState2.pagination) == null ? void 0 : _table$initialState2.pageSize) != null ? _table$initialState$p3 : defaultPageSize);
1581
- },
1582
- setPageSize: updater => {
1583
- table.setPagination(old => {
1584
- const pageSize = Math.max(1, functionalUpdate(updater, old.pageSize));
1585
- const topRowIndex = old.pageSize * old.pageIndex;
1586
- const pageIndex = Math.floor(topRowIndex / pageSize);
1587
- return {
1588
- ...old,
1589
- pageIndex,
1590
- pageSize
1591
- };
1513
+ return;
1514
+ }
1515
+ if ((_ref = (_table$options$autoRe = table.options.autoResetAll) != null ? _table$options$autoRe : table.options.autoResetPageIndex) != null ? _ref : !table.options.manualPagination) {
1516
+ if (queued) return;
1517
+ queued = true;
1518
+ table._queue(() => {
1519
+ table.resetPageIndex();
1520
+ queued = false;
1592
1521
  });
1593
- },
1594
- setPageCount: updater => table.setPagination(old => {
1595
- var _table$options$pageCo;
1596
- let newPageCount = functionalUpdate(updater, (_table$options$pageCo = table.options.pageCount) != null ? _table$options$pageCo : -1);
1597
- if (typeof newPageCount === 'number') {
1598
- newPageCount = Math.max(-1, newPageCount);
1599
- }
1522
+ }
1523
+ };
1524
+ table.setPagination = updater => {
1525
+ const safeUpdater = old => {
1526
+ let newState = functionalUpdate(updater, old);
1527
+ return newState;
1528
+ };
1529
+ return table.options.onPaginationChange == null ? void 0 : table.options.onPaginationChange(safeUpdater);
1530
+ };
1531
+ table.resetPagination = defaultState => {
1532
+ var _table$initialState$p;
1533
+ table.setPagination(defaultState ? getDefaultPaginationState() : (_table$initialState$p = table.initialState.pagination) != null ? _table$initialState$p : getDefaultPaginationState());
1534
+ };
1535
+ table.setPageIndex = updater => {
1536
+ table.setPagination(old => {
1537
+ let pageIndex = functionalUpdate(updater, old.pageIndex);
1538
+ const maxPageIndex = typeof table.options.pageCount === 'undefined' || table.options.pageCount === -1 ? Number.MAX_SAFE_INTEGER : table.options.pageCount - 1;
1539
+ pageIndex = Math.max(0, Math.min(pageIndex, maxPageIndex));
1600
1540
  return {
1601
1541
  ...old,
1602
- pageCount: newPageCount
1603
- };
1604
- }),
1605
- getPageOptions: memo(() => [table.getPageCount()], pageCount => {
1606
- let pageOptions = [];
1607
- if (pageCount && pageCount > 0) {
1608
- pageOptions = [...new Array(pageCount)].fill(null).map((_, i) => i);
1609
- }
1610
- return pageOptions;
1611
- }, {
1612
- key: process.env.NODE_ENV === 'development' && 'getPageOptions',
1613
- debug: () => {
1614
- var _table$options$debugA;
1615
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
1616
- }
1617
- }),
1618
- getCanPreviousPage: () => table.getState().pagination.pageIndex > 0,
1619
- getCanNextPage: () => {
1620
- const {
1621
1542
  pageIndex
1622
- } = table.getState().pagination;
1623
- const pageCount = table.getPageCount();
1624
- if (pageCount === -1) {
1625
- return true;
1626
- }
1627
- if (pageCount === 0) {
1628
- return false;
1629
- }
1630
- return pageIndex < pageCount - 1;
1631
- },
1632
- previousPage: () => {
1633
- return table.setPageIndex(old => old - 1);
1634
- },
1635
- nextPage: () => {
1636
- return table.setPageIndex(old => {
1637
- return old + 1;
1638
- });
1639
- },
1640
- getPrePaginationRowModel: () => table.getExpandedRowModel(),
1641
- getPaginationRowModel: () => {
1642
- if (!table._getPaginationRowModel && table.options.getPaginationRowModel) {
1643
- table._getPaginationRowModel = table.options.getPaginationRowModel(table);
1644
- }
1645
- if (table.options.manualPagination || !table._getPaginationRowModel) {
1646
- return table.getPrePaginationRowModel();
1647
- }
1648
- return table._getPaginationRowModel();
1649
- },
1650
- getPageCount: () => {
1651
- var _table$options$pageCo2;
1652
- return (_table$options$pageCo2 = table.options.pageCount) != null ? _table$options$pageCo2 : Math.ceil(table.getPrePaginationRowModel().rows.length / table.getState().pagination.pageSize);
1543
+ };
1544
+ });
1545
+ };
1546
+ table.resetPageIndex = defaultState => {
1547
+ var _table$initialState$p2, _table$initialState;
1548
+ table.setPageIndex(defaultState ? defaultPageIndex : (_table$initialState$p2 = (_table$initialState = table.initialState) == null || (_table$initialState = _table$initialState.pagination) == null ? void 0 : _table$initialState.pageIndex) != null ? _table$initialState$p2 : defaultPageIndex);
1549
+ };
1550
+ table.resetPageSize = defaultState => {
1551
+ var _table$initialState$p3, _table$initialState2;
1552
+ table.setPageSize(defaultState ? defaultPageSize : (_table$initialState$p3 = (_table$initialState2 = table.initialState) == null || (_table$initialState2 = _table$initialState2.pagination) == null ? void 0 : _table$initialState2.pageSize) != null ? _table$initialState$p3 : defaultPageSize);
1553
+ };
1554
+ table.setPageSize = updater => {
1555
+ table.setPagination(old => {
1556
+ const pageSize = Math.max(1, functionalUpdate(updater, old.pageSize));
1557
+ const topRowIndex = old.pageSize * old.pageIndex;
1558
+ const pageIndex = Math.floor(topRowIndex / pageSize);
1559
+ return {
1560
+ ...old,
1561
+ pageIndex,
1562
+ pageSize
1563
+ };
1564
+ });
1565
+ };
1566
+ table.setPageCount = updater => table.setPagination(old => {
1567
+ var _table$options$pageCo;
1568
+ let newPageCount = functionalUpdate(updater, (_table$options$pageCo = table.options.pageCount) != null ? _table$options$pageCo : -1);
1569
+ if (typeof newPageCount === 'number') {
1570
+ newPageCount = Math.max(-1, newPageCount);
1653
1571
  }
1572
+ return {
1573
+ ...old,
1574
+ pageCount: newPageCount
1575
+ };
1576
+ });
1577
+ table.getPageOptions = memo(() => [table.getPageCount()], pageCount => {
1578
+ let pageOptions = [];
1579
+ if (pageCount && pageCount > 0) {
1580
+ pageOptions = [...new Array(pageCount)].fill(null).map((_, i) => i);
1581
+ }
1582
+ return pageOptions;
1583
+ }, {
1584
+ key: process.env.NODE_ENV === 'development' && 'getPageOptions',
1585
+ debug: () => {
1586
+ var _table$options$debugA;
1587
+ return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
1588
+ }
1589
+ });
1590
+ table.getCanPreviousPage = () => table.getState().pagination.pageIndex > 0;
1591
+ table.getCanNextPage = () => {
1592
+ const {
1593
+ pageIndex
1594
+ } = table.getState().pagination;
1595
+ const pageCount = table.getPageCount();
1596
+ if (pageCount === -1) {
1597
+ return true;
1598
+ }
1599
+ if (pageCount === 0) {
1600
+ return false;
1601
+ }
1602
+ return pageIndex < pageCount - 1;
1603
+ };
1604
+ table.previousPage = () => {
1605
+ return table.setPageIndex(old => old - 1);
1606
+ };
1607
+ table.nextPage = () => {
1608
+ return table.setPageIndex(old => {
1609
+ return old + 1;
1610
+ });
1611
+ };
1612
+ table.getPrePaginationRowModel = () => table.getExpandedRowModel();
1613
+ table.getPaginationRowModel = () => {
1614
+ if (!table._getPaginationRowModel && table.options.getPaginationRowModel) {
1615
+ table._getPaginationRowModel = table.options.getPaginationRowModel(table);
1616
+ }
1617
+ if (table.options.manualPagination || !table._getPaginationRowModel) {
1618
+ return table.getPrePaginationRowModel();
1619
+ }
1620
+ return table._getPaginationRowModel();
1621
+ };
1622
+ table.getPageCount = () => {
1623
+ var _table$options$pageCo2;
1624
+ return (_table$options$pageCo2 = table.options.pageCount) != null ? _table$options$pageCo2 : Math.ceil(table.getPrePaginationRowModel().rows.length / table.getState().pagination.pageSize);
1654
1625
  };
1655
1626
  }
1656
1627
  };
@@ -1674,140 +1645,134 @@ const Pinning = {
1674
1645
  };
1675
1646
  },
1676
1647
  createColumn: (column, table) => {
1677
- return {
1678
- pin: position => {
1679
- const columnIds = column.getLeafColumns().map(d => d.id).filter(Boolean);
1680
- table.setColumnPinning(old => {
1681
- var _old$left3, _old$right3;
1682
- if (position === 'right') {
1683
- var _old$left, _old$right;
1684
- return {
1685
- left: ((_old$left = old == null ? void 0 : old.left) != null ? _old$left : []).filter(d => !(columnIds != null && columnIds.includes(d))),
1686
- right: [...((_old$right = old == null ? void 0 : old.right) != null ? _old$right : []).filter(d => !(columnIds != null && columnIds.includes(d))), ...columnIds]
1687
- };
1688
- }
1689
- if (position === 'left') {
1690
- var _old$left2, _old$right2;
1691
- return {
1692
- left: [...((_old$left2 = old == null ? void 0 : old.left) != null ? _old$left2 : []).filter(d => !(columnIds != null && columnIds.includes(d))), ...columnIds],
1693
- right: ((_old$right2 = old == null ? void 0 : old.right) != null ? _old$right2 : []).filter(d => !(columnIds != null && columnIds.includes(d)))
1694
- };
1695
- }
1648
+ column.pin = position => {
1649
+ const columnIds = column.getLeafColumns().map(d => d.id).filter(Boolean);
1650
+ table.setColumnPinning(old => {
1651
+ var _old$left3, _old$right3;
1652
+ if (position === 'right') {
1653
+ var _old$left, _old$right;
1696
1654
  return {
1697
- left: ((_old$left3 = old == null ? void 0 : old.left) != null ? _old$left3 : []).filter(d => !(columnIds != null && columnIds.includes(d))),
1698
- right: ((_old$right3 = old == null ? void 0 : old.right) != null ? _old$right3 : []).filter(d => !(columnIds != null && columnIds.includes(d)))
1655
+ left: ((_old$left = old == null ? void 0 : old.left) != null ? _old$left : []).filter(d => !(columnIds != null && columnIds.includes(d))),
1656
+ right: [...((_old$right = old == null ? void 0 : old.right) != null ? _old$right : []).filter(d => !(columnIds != null && columnIds.includes(d))), ...columnIds]
1699
1657
  };
1700
- });
1701
- },
1702
- getCanPin: () => {
1703
- const leafColumns = column.getLeafColumns();
1704
- return leafColumns.some(d => {
1705
- var _d$columnDef$enablePi, _table$options$enable;
1706
- return ((_d$columnDef$enablePi = d.columnDef.enablePinning) != null ? _d$columnDef$enablePi : true) && ((_table$options$enable = table.options.enablePinning) != null ? _table$options$enable : true);
1707
- });
1708
- },
1709
- getIsPinned: () => {
1710
- const leafColumnIds = column.getLeafColumns().map(d => d.id);
1711
- const {
1712
- left,
1713
- right
1714
- } = table.getState().columnPinning;
1715
- const isLeft = leafColumnIds.some(d => left == null ? void 0 : left.includes(d));
1716
- const isRight = leafColumnIds.some(d => right == null ? void 0 : right.includes(d));
1717
- return isLeft ? 'left' : isRight ? 'right' : false;
1718
- },
1719
- getPinnedIndex: () => {
1720
- var _table$getState$colum, _table$getState$colum2;
1721
- const position = column.getIsPinned();
1722
- return position ? (_table$getState$colum = (_table$getState$colum2 = table.getState().columnPinning) == null || (_table$getState$colum2 = _table$getState$colum2[position]) == null ? void 0 : _table$getState$colum2.indexOf(column.id)) != null ? _table$getState$colum : -1 : 0;
1723
- }
1724
- };
1725
- },
1726
- createRow: (row, table) => {
1727
- return {
1728
- getCenterVisibleCells: memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allCells, left, right) => {
1729
- const leftAndRight = [...(left != null ? left : []), ...(right != null ? right : [])];
1730
- return allCells.filter(d => !leftAndRight.includes(d.column.id));
1731
- }, {
1732
- key: process.env.NODE_ENV === 'production' && 'row.getCenterVisibleCells',
1733
- debug: () => {
1734
- var _table$options$debugA;
1735
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugRows;
1736
- }
1737
- }),
1738
- getLeftVisibleCells: memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.left,,], (allCells, left) => {
1739
- const cells = (left != null ? left : []).map(columnId => allCells.find(cell => cell.column.id === columnId)).filter(Boolean).map(d => ({
1740
- ...d,
1741
- position: 'left'
1742
- }));
1743
- return cells;
1744
- }, {
1745
- key: process.env.NODE_ENV === 'production' && 'row.getLeftVisibleCells',
1746
- debug: () => {
1747
- var _table$options$debugA2;
1748
- return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugRows;
1749
1658
  }
1750
- }),
1751
- getRightVisibleCells: memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.right], (allCells, right) => {
1752
- const cells = (right != null ? right : []).map(columnId => allCells.find(cell => cell.column.id === columnId)).filter(Boolean).map(d => ({
1753
- ...d,
1754
- position: 'right'
1755
- }));
1756
- return cells;
1757
- }, {
1758
- key: process.env.NODE_ENV === 'production' && 'row.getRightVisibleCells',
1759
- debug: () => {
1760
- var _table$options$debugA3;
1761
- return (_table$options$debugA3 = table.options.debugAll) != null ? _table$options$debugA3 : table.options.debugRows;
1659
+ if (position === 'left') {
1660
+ var _old$left2, _old$right2;
1661
+ return {
1662
+ left: [...((_old$left2 = old == null ? void 0 : old.left) != null ? _old$left2 : []).filter(d => !(columnIds != null && columnIds.includes(d))), ...columnIds],
1663
+ right: ((_old$right2 = old == null ? void 0 : old.right) != null ? _old$right2 : []).filter(d => !(columnIds != null && columnIds.includes(d)))
1664
+ };
1762
1665
  }
1763
- })
1666
+ return {
1667
+ left: ((_old$left3 = old == null ? void 0 : old.left) != null ? _old$left3 : []).filter(d => !(columnIds != null && columnIds.includes(d))),
1668
+ right: ((_old$right3 = old == null ? void 0 : old.right) != null ? _old$right3 : []).filter(d => !(columnIds != null && columnIds.includes(d)))
1669
+ };
1670
+ });
1671
+ };
1672
+ column.getCanPin = () => {
1673
+ const leafColumns = column.getLeafColumns();
1674
+ return leafColumns.some(d => {
1675
+ var _d$columnDef$enablePi, _table$options$enable;
1676
+ return ((_d$columnDef$enablePi = d.columnDef.enablePinning) != null ? _d$columnDef$enablePi : true) && ((_table$options$enable = table.options.enablePinning) != null ? _table$options$enable : true);
1677
+ });
1678
+ };
1679
+ column.getIsPinned = () => {
1680
+ const leafColumnIds = column.getLeafColumns().map(d => d.id);
1681
+ const {
1682
+ left,
1683
+ right
1684
+ } = table.getState().columnPinning;
1685
+ const isLeft = leafColumnIds.some(d => left == null ? void 0 : left.includes(d));
1686
+ const isRight = leafColumnIds.some(d => right == null ? void 0 : right.includes(d));
1687
+ return isLeft ? 'left' : isRight ? 'right' : false;
1688
+ };
1689
+ column.getPinnedIndex = () => {
1690
+ var _table$getState$colum, _table$getState$colum2;
1691
+ const position = column.getIsPinned();
1692
+ return position ? (_table$getState$colum = (_table$getState$colum2 = table.getState().columnPinning) == null || (_table$getState$colum2 = _table$getState$colum2[position]) == null ? void 0 : _table$getState$colum2.indexOf(column.id)) != null ? _table$getState$colum : -1 : 0;
1764
1693
  };
1765
1694
  },
1766
- createTable: table => {
1767
- return {
1768
- setColumnPinning: updater => table.options.onColumnPinningChange == null ? void 0 : table.options.onColumnPinningChange(updater),
1769
- resetColumnPinning: defaultState => {
1770
- var _table$initialState$c, _table$initialState;
1771
- return table.setColumnPinning(defaultState ? getDefaultPinningState() : (_table$initialState$c = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.columnPinning) != null ? _table$initialState$c : getDefaultPinningState());
1772
- },
1773
- getIsSomeColumnsPinned: position => {
1774
- var _pinningState$positio;
1775
- const pinningState = table.getState().columnPinning;
1776
- if (!position) {
1777
- var _pinningState$left, _pinningState$right;
1778
- return Boolean(((_pinningState$left = pinningState.left) == null ? void 0 : _pinningState$left.length) || ((_pinningState$right = pinningState.right) == null ? void 0 : _pinningState$right.length));
1779
- }
1780
- return Boolean((_pinningState$positio = pinningState[position]) == null ? void 0 : _pinningState$positio.length);
1781
- },
1782
- getLeftLeafColumns: memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.left], (allColumns, left) => {
1783
- return (left != null ? left : []).map(columnId => allColumns.find(column => column.id === columnId)).filter(Boolean);
1784
- }, {
1785
- key: process.env.NODE_ENV === 'development' && 'getLeftLeafColumns',
1786
- debug: () => {
1787
- var _table$options$debugA4;
1788
- return (_table$options$debugA4 = table.options.debugAll) != null ? _table$options$debugA4 : table.options.debugColumns;
1789
- }
1790
- }),
1791
- getRightLeafColumns: memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.right], (allColumns, right) => {
1792
- return (right != null ? right : []).map(columnId => allColumns.find(column => column.id === columnId)).filter(Boolean);
1793
- }, {
1794
- key: process.env.NODE_ENV === 'development' && 'getRightLeafColumns',
1795
- debug: () => {
1796
- var _table$options$debugA5;
1797
- return (_table$options$debugA5 = table.options.debugAll) != null ? _table$options$debugA5 : table.options.debugColumns;
1798
- }
1799
- }),
1800
- getCenterLeafColumns: memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, left, right) => {
1801
- const leftAndRight = [...(left != null ? left : []), ...(right != null ? right : [])];
1802
- return allColumns.filter(d => !leftAndRight.includes(d.id));
1803
- }, {
1804
- key: process.env.NODE_ENV === 'development' && 'getCenterLeafColumns',
1805
- debug: () => {
1806
- var _table$options$debugA6;
1807
- return (_table$options$debugA6 = table.options.debugAll) != null ? _table$options$debugA6 : table.options.debugColumns;
1808
- }
1809
- })
1695
+ createRow: (row, table) => {
1696
+ row.getCenterVisibleCells = memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allCells, left, right) => {
1697
+ const leftAndRight = [...(left != null ? left : []), ...(right != null ? right : [])];
1698
+ return allCells.filter(d => !leftAndRight.includes(d.column.id));
1699
+ }, {
1700
+ key: process.env.NODE_ENV === 'production' && 'row.getCenterVisibleCells',
1701
+ debug: () => {
1702
+ var _table$options$debugA;
1703
+ return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugRows;
1704
+ }
1705
+ });
1706
+ row.getLeftVisibleCells = memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.left,,], (allCells, left) => {
1707
+ const cells = (left != null ? left : []).map(columnId => allCells.find(cell => cell.column.id === columnId)).filter(Boolean).map(d => ({
1708
+ ...d,
1709
+ position: 'left'
1710
+ }));
1711
+ return cells;
1712
+ }, {
1713
+ key: process.env.NODE_ENV === 'production' && 'row.getLeftVisibleCells',
1714
+ debug: () => {
1715
+ var _table$options$debugA2;
1716
+ return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugRows;
1717
+ }
1718
+ });
1719
+ row.getRightVisibleCells = memo(() => [row._getAllVisibleCells(), table.getState().columnPinning.right], (allCells, right) => {
1720
+ const cells = (right != null ? right : []).map(columnId => allCells.find(cell => cell.column.id === columnId)).filter(Boolean).map(d => ({
1721
+ ...d,
1722
+ position: 'right'
1723
+ }));
1724
+ return cells;
1725
+ }, {
1726
+ key: process.env.NODE_ENV === 'production' && 'row.getRightVisibleCells',
1727
+ debug: () => {
1728
+ var _table$options$debugA3;
1729
+ return (_table$options$debugA3 = table.options.debugAll) != null ? _table$options$debugA3 : table.options.debugRows;
1730
+ }
1731
+ });
1732
+ },
1733
+ createTable: table => {
1734
+ table.setColumnPinning = updater => table.options.onColumnPinningChange == null ? void 0 : table.options.onColumnPinningChange(updater);
1735
+ table.resetColumnPinning = defaultState => {
1736
+ var _table$initialState$c, _table$initialState;
1737
+ return table.setColumnPinning(defaultState ? getDefaultPinningState() : (_table$initialState$c = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.columnPinning) != null ? _table$initialState$c : getDefaultPinningState());
1738
+ };
1739
+ table.getIsSomeColumnsPinned = position => {
1740
+ var _pinningState$positio;
1741
+ const pinningState = table.getState().columnPinning;
1742
+ if (!position) {
1743
+ var _pinningState$left, _pinningState$right;
1744
+ return Boolean(((_pinningState$left = pinningState.left) == null ? void 0 : _pinningState$left.length) || ((_pinningState$right = pinningState.right) == null ? void 0 : _pinningState$right.length));
1745
+ }
1746
+ return Boolean((_pinningState$positio = pinningState[position]) == null ? void 0 : _pinningState$positio.length);
1810
1747
  };
1748
+ table.getLeftLeafColumns = memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.left], (allColumns, left) => {
1749
+ return (left != null ? left : []).map(columnId => allColumns.find(column => column.id === columnId)).filter(Boolean);
1750
+ }, {
1751
+ key: process.env.NODE_ENV === 'development' && 'getLeftLeafColumns',
1752
+ debug: () => {
1753
+ var _table$options$debugA4;
1754
+ return (_table$options$debugA4 = table.options.debugAll) != null ? _table$options$debugA4 : table.options.debugColumns;
1755
+ }
1756
+ });
1757
+ table.getRightLeafColumns = memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.right], (allColumns, right) => {
1758
+ return (right != null ? right : []).map(columnId => allColumns.find(column => column.id === columnId)).filter(Boolean);
1759
+ }, {
1760
+ key: process.env.NODE_ENV === 'development' && 'getRightLeafColumns',
1761
+ debug: () => {
1762
+ var _table$options$debugA5;
1763
+ return (_table$options$debugA5 = table.options.debugAll) != null ? _table$options$debugA5 : table.options.debugColumns;
1764
+ }
1765
+ });
1766
+ table.getCenterLeafColumns = memo(() => [table.getAllLeafColumns(), table.getState().columnPinning.left, table.getState().columnPinning.right], (allColumns, left, right) => {
1767
+ const leftAndRight = [...(left != null ? left : []), ...(right != null ? right : [])];
1768
+ return allColumns.filter(d => !leftAndRight.includes(d.id));
1769
+ }, {
1770
+ key: process.env.NODE_ENV === 'development' && 'getCenterLeafColumns',
1771
+ debug: () => {
1772
+ var _table$options$debugA6;
1773
+ return (_table$options$debugA6 = table.options.debugAll) != null ? _table$options$debugA6 : table.options.debugColumns;
1774
+ }
1775
+ });
1811
1776
  }
1812
1777
  };
1813
1778
 
@@ -1833,278 +1798,276 @@ const RowSelection = {
1833
1798
  },
1834
1799
 
1835
1800
  createTable: table => {
1836
- return {
1837
- setRowSelection: updater => table.options.onRowSelectionChange == null ? void 0 : table.options.onRowSelectionChange(updater),
1838
- resetRowSelection: defaultState => {
1839
- var _table$initialState$r;
1840
- return table.setRowSelection(defaultState ? {} : (_table$initialState$r = table.initialState.rowSelection) != null ? _table$initialState$r : {});
1841
- },
1842
- toggleAllRowsSelected: value => {
1843
- table.setRowSelection(old => {
1844
- value = typeof value !== 'undefined' ? value : !table.getIsAllRowsSelected();
1845
- const rowSelection = {
1846
- ...old
1847
- };
1848
- const preGroupedFlatRows = table.getPreGroupedRowModel().flatRows;
1849
-
1850
- // We don't use `mutateRowIsSelected` here for performance reasons.
1851
- // All of the rows are flat already, so it wouldn't be worth it
1852
- if (value) {
1853
- preGroupedFlatRows.forEach(row => {
1854
- if (!row.getCanSelect()) {
1855
- return;
1856
- }
1857
- rowSelection[row.id] = true;
1858
- });
1859
- } else {
1860
- preGroupedFlatRows.forEach(row => {
1861
- delete rowSelection[row.id];
1862
- });
1863
- }
1864
- return rowSelection;
1865
- });
1866
- },
1867
- toggleAllPageRowsSelected: value => table.setRowSelection(old => {
1868
- const resolvedValue = typeof value !== 'undefined' ? value : !table.getIsAllPageRowsSelected();
1801
+ table.setRowSelection = updater => table.options.onRowSelectionChange == null ? void 0 : table.options.onRowSelectionChange(updater);
1802
+ table.resetRowSelection = defaultState => {
1803
+ var _table$initialState$r;
1804
+ return table.setRowSelection(defaultState ? {} : (_table$initialState$r = table.initialState.rowSelection) != null ? _table$initialState$r : {});
1805
+ };
1806
+ table.toggleAllRowsSelected = value => {
1807
+ table.setRowSelection(old => {
1808
+ value = typeof value !== 'undefined' ? value : !table.getIsAllRowsSelected();
1869
1809
  const rowSelection = {
1870
1810
  ...old
1871
1811
  };
1872
- table.getRowModel().rows.forEach(row => {
1873
- mutateRowIsSelected(rowSelection, row.id, resolvedValue, table);
1874
- });
1875
- return rowSelection;
1876
- }),
1877
- // addRowSelectionRange: rowId => {
1878
- // const {
1879
- // rows,
1880
- // rowsById,
1881
- // options: { selectGroupingRows, selectSubRows },
1882
- // } = table
1883
-
1884
- // const findSelectedRow = (rows: Row[]) => {
1885
- // let found
1886
- // rows.find(d => {
1887
- // if (d.getIsSelected()) {
1888
- // found = d
1889
- // return true
1890
- // }
1891
- // const subFound = findSelectedRow(d.subRows || [])
1892
- // if (subFound) {
1893
- // found = subFound
1894
- // return true
1895
- // }
1896
- // return false
1897
- // })
1898
- // return found
1899
- // }
1900
-
1901
- // const firstRow = findSelectedRow(rows) || rows[0]
1902
- // const lastRow = rowsById[rowId]
1903
-
1904
- // let include = false
1905
- // const selectedRowIds = {}
1906
-
1907
- // const addRow = (row: Row) => {
1908
- // mutateRowIsSelected(selectedRowIds, row.id, true, {
1909
- // rowsById,
1910
- // selectGroupingRows: selectGroupingRows!,
1911
- // selectSubRows: selectSubRows!,
1912
- // })
1913
- // }
1914
-
1915
- // table.rows.forEach(row => {
1916
- // const isFirstRow = row.id === firstRow.id
1917
- // const isLastRow = row.id === lastRow.id
1918
-
1919
- // if (isFirstRow || isLastRow) {
1920
- // if (!include) {
1921
- // include = true
1922
- // } else if (include) {
1923
- // addRow(row)
1924
- // include = false
1925
- // }
1926
- // }
1812
+ const preGroupedFlatRows = table.getPreGroupedRowModel().flatRows;
1927
1813
 
1928
- // if (include) {
1929
- // addRow(row)
1930
- // }
1931
- // })
1932
-
1933
- // table.setRowSelection(selectedRowIds)
1934
- // },
1935
- getPreSelectedRowModel: () => table.getCoreRowModel(),
1936
- getSelectedRowModel: memo(() => [table.getState().rowSelection, table.getCoreRowModel()], (rowSelection, rowModel) => {
1937
- if (!Object.keys(rowSelection).length) {
1938
- return {
1939
- rows: [],
1940
- flatRows: [],
1941
- rowsById: {}
1942
- };
1943
- }
1944
- return selectRowsFn(table, rowModel);
1945
- }, {
1946
- key: process.env.NODE_ENV === 'development' && 'getSelectedRowModel',
1947
- debug: () => {
1948
- var _table$options$debugA;
1949
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
1950
- }
1951
- }),
1952
- getFilteredSelectedRowModel: memo(() => [table.getState().rowSelection, table.getFilteredRowModel()], (rowSelection, rowModel) => {
1953
- if (!Object.keys(rowSelection).length) {
1954
- return {
1955
- rows: [],
1956
- flatRows: [],
1957
- rowsById: {}
1958
- };
1959
- }
1960
- return selectRowsFn(table, rowModel);
1961
- }, {
1962
- key: process.env.NODE_ENV === 'production' && 'getFilteredSelectedRowModel',
1963
- debug: () => {
1964
- var _table$options$debugA2;
1965
- return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugTable;
1966
- }
1967
- }),
1968
- getGroupedSelectedRowModel: memo(() => [table.getState().rowSelection, table.getSortedRowModel()], (rowSelection, rowModel) => {
1969
- if (!Object.keys(rowSelection).length) {
1970
- return {
1971
- rows: [],
1972
- flatRows: [],
1973
- rowsById: {}
1974
- };
1975
- }
1976
- return selectRowsFn(table, rowModel);
1977
- }, {
1978
- key: process.env.NODE_ENV === 'production' && 'getGroupedSelectedRowModel',
1979
- debug: () => {
1980
- var _table$options$debugA3;
1981
- return (_table$options$debugA3 = table.options.debugAll) != null ? _table$options$debugA3 : table.options.debugTable;
1982
- }
1983
- }),
1984
- ///
1985
-
1986
- // getGroupingRowCanSelect: rowId => {
1987
- // const row = table.getRow(rowId)
1988
-
1989
- // if (!row) {
1990
- // throw new Error()
1991
- // }
1992
-
1993
- // if (typeof table.options.enableGroupingRowSelection === 'function') {
1994
- // return table.options.enableGroupingRowSelection(row)
1995
- // }
1996
-
1997
- // return table.options.enableGroupingRowSelection ?? false
1998
- // },
1999
-
2000
- getIsAllRowsSelected: () => {
2001
- const preGroupedFlatRows = table.getFilteredRowModel().flatRows;
2002
- const {
2003
- rowSelection
2004
- } = table.getState();
2005
- let isAllRowsSelected = Boolean(preGroupedFlatRows.length && Object.keys(rowSelection).length);
2006
- if (isAllRowsSelected) {
2007
- if (preGroupedFlatRows.some(row => row.getCanSelect() && !rowSelection[row.id])) {
2008
- isAllRowsSelected = false;
2009
- }
2010
- }
2011
- return isAllRowsSelected;
2012
- },
2013
- getIsAllPageRowsSelected: () => {
2014
- const paginationFlatRows = table.getPaginationRowModel().flatRows.filter(row => row.getCanSelect());
2015
- const {
2016
- rowSelection
2017
- } = table.getState();
2018
- let isAllPageRowsSelected = !!paginationFlatRows.length;
2019
- if (isAllPageRowsSelected && paginationFlatRows.some(row => !rowSelection[row.id])) {
2020
- isAllPageRowsSelected = false;
1814
+ // We don't use `mutateRowIsSelected` here for performance reasons.
1815
+ // All of the rows are flat already, so it wouldn't be worth it
1816
+ if (value) {
1817
+ preGroupedFlatRows.forEach(row => {
1818
+ if (!row.getCanSelect()) {
1819
+ return;
1820
+ }
1821
+ rowSelection[row.id] = true;
1822
+ });
1823
+ } else {
1824
+ preGroupedFlatRows.forEach(row => {
1825
+ delete rowSelection[row.id];
1826
+ });
2021
1827
  }
2022
- return isAllPageRowsSelected;
2023
- },
2024
- getIsSomeRowsSelected: () => {
2025
- var _table$getState$rowSe;
2026
- const totalSelected = Object.keys((_table$getState$rowSe = table.getState().rowSelection) != null ? _table$getState$rowSe : {}).length;
2027
- return totalSelected > 0 && totalSelected < table.getFilteredRowModel().flatRows.length;
2028
- },
2029
- getIsSomePageRowsSelected: () => {
2030
- const paginationFlatRows = table.getPaginationRowModel().flatRows;
2031
- return table.getIsAllPageRowsSelected() ? false : paginationFlatRows.filter(row => row.getCanSelect()).some(d => d.getIsSelected() || d.getIsSomeSelected());
2032
- },
2033
- getToggleAllRowsSelectedHandler: () => {
2034
- return e => {
2035
- table.toggleAllRowsSelected(e.target.checked);
1828
+ return rowSelection;
1829
+ });
1830
+ };
1831
+ table.toggleAllPageRowsSelected = value => table.setRowSelection(old => {
1832
+ const resolvedValue = typeof value !== 'undefined' ? value : !table.getIsAllPageRowsSelected();
1833
+ const rowSelection = {
1834
+ ...old
1835
+ };
1836
+ table.getRowModel().rows.forEach(row => {
1837
+ mutateRowIsSelected(rowSelection, row.id, resolvedValue, table);
1838
+ });
1839
+ return rowSelection;
1840
+ });
1841
+
1842
+ // addRowSelectionRange: rowId => {
1843
+ // const {
1844
+ // rows,
1845
+ // rowsById,
1846
+ // options: { selectGroupingRows, selectSubRows },
1847
+ // } = table
1848
+
1849
+ // const findSelectedRow = (rows: Row[]) => {
1850
+ // let found
1851
+ // rows.find(d => {
1852
+ // if (d.getIsSelected()) {
1853
+ // found = d
1854
+ // return true
1855
+ // }
1856
+ // const subFound = findSelectedRow(d.subRows || [])
1857
+ // if (subFound) {
1858
+ // found = subFound
1859
+ // return true
1860
+ // }
1861
+ // return false
1862
+ // })
1863
+ // return found
1864
+ // }
1865
+
1866
+ // const firstRow = findSelectedRow(rows) || rows[0]
1867
+ // const lastRow = rowsById[rowId]
1868
+
1869
+ // let include = false
1870
+ // const selectedRowIds = {}
1871
+
1872
+ // const addRow = (row: Row) => {
1873
+ // mutateRowIsSelected(selectedRowIds, row.id, true, {
1874
+ // rowsById,
1875
+ // selectGroupingRows: selectGroupingRows!,
1876
+ // selectSubRows: selectSubRows!,
1877
+ // })
1878
+ // }
1879
+
1880
+ // table.rows.forEach(row => {
1881
+ // const isFirstRow = row.id === firstRow.id
1882
+ // const isLastRow = row.id === lastRow.id
1883
+
1884
+ // if (isFirstRow || isLastRow) {
1885
+ // if (!include) {
1886
+ // include = true
1887
+ // } else if (include) {
1888
+ // addRow(row)
1889
+ // include = false
1890
+ // }
1891
+ // }
1892
+
1893
+ // if (include) {
1894
+ // addRow(row)
1895
+ // }
1896
+ // })
1897
+
1898
+ // table.setRowSelection(selectedRowIds)
1899
+ // },
1900
+ table.getPreSelectedRowModel = () => table.getCoreRowModel();
1901
+ table.getSelectedRowModel = memo(() => [table.getState().rowSelection, table.getCoreRowModel()], (rowSelection, rowModel) => {
1902
+ if (!Object.keys(rowSelection).length) {
1903
+ return {
1904
+ rows: [],
1905
+ flatRows: [],
1906
+ rowsById: {}
2036
1907
  };
2037
- },
2038
- getToggleAllPageRowsSelectedHandler: () => {
2039
- return e => {
2040
- table.toggleAllPageRowsSelected(e.target.checked);
1908
+ }
1909
+ return selectRowsFn(table, rowModel);
1910
+ }, {
1911
+ key: process.env.NODE_ENV === 'development' && 'getSelectedRowModel',
1912
+ debug: () => {
1913
+ var _table$options$debugA;
1914
+ return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
1915
+ }
1916
+ });
1917
+ table.getFilteredSelectedRowModel = memo(() => [table.getState().rowSelection, table.getFilteredRowModel()], (rowSelection, rowModel) => {
1918
+ if (!Object.keys(rowSelection).length) {
1919
+ return {
1920
+ rows: [],
1921
+ flatRows: [],
1922
+ rowsById: {}
1923
+ };
1924
+ }
1925
+ return selectRowsFn(table, rowModel);
1926
+ }, {
1927
+ key: process.env.NODE_ENV === 'production' && 'getFilteredSelectedRowModel',
1928
+ debug: () => {
1929
+ var _table$options$debugA2;
1930
+ return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugTable;
1931
+ }
1932
+ });
1933
+ table.getGroupedSelectedRowModel = memo(() => [table.getState().rowSelection, table.getSortedRowModel()], (rowSelection, rowModel) => {
1934
+ if (!Object.keys(rowSelection).length) {
1935
+ return {
1936
+ rows: [],
1937
+ flatRows: [],
1938
+ rowsById: {}
2041
1939
  };
2042
1940
  }
1941
+ return selectRowsFn(table, rowModel);
1942
+ }, {
1943
+ key: process.env.NODE_ENV === 'production' && 'getGroupedSelectedRowModel',
1944
+ debug: () => {
1945
+ var _table$options$debugA3;
1946
+ return (_table$options$debugA3 = table.options.debugAll) != null ? _table$options$debugA3 : table.options.debugTable;
1947
+ }
1948
+ });
1949
+
1950
+ ///
1951
+
1952
+ // getGroupingRowCanSelect: rowId => {
1953
+ // const row = table.getRow(rowId)
1954
+
1955
+ // if (!row) {
1956
+ // throw new Error()
1957
+ // }
1958
+
1959
+ // if (typeof table.options.enableGroupingRowSelection === 'function') {
1960
+ // return table.options.enableGroupingRowSelection(row)
1961
+ // }
1962
+
1963
+ // return table.options.enableGroupingRowSelection ?? false
1964
+ // },
1965
+
1966
+ table.getIsAllRowsSelected = () => {
1967
+ const preGroupedFlatRows = table.getFilteredRowModel().flatRows;
1968
+ const {
1969
+ rowSelection
1970
+ } = table.getState();
1971
+ let isAllRowsSelected = Boolean(preGroupedFlatRows.length && Object.keys(rowSelection).length);
1972
+ if (isAllRowsSelected) {
1973
+ if (preGroupedFlatRows.some(row => row.getCanSelect() && !rowSelection[row.id])) {
1974
+ isAllRowsSelected = false;
1975
+ }
1976
+ }
1977
+ return isAllRowsSelected;
1978
+ };
1979
+ table.getIsAllPageRowsSelected = () => {
1980
+ const paginationFlatRows = table.getPaginationRowModel().flatRows.filter(row => row.getCanSelect());
1981
+ const {
1982
+ rowSelection
1983
+ } = table.getState();
1984
+ let isAllPageRowsSelected = !!paginationFlatRows.length;
1985
+ if (isAllPageRowsSelected && paginationFlatRows.some(row => !rowSelection[row.id])) {
1986
+ isAllPageRowsSelected = false;
1987
+ }
1988
+ return isAllPageRowsSelected;
1989
+ };
1990
+ table.getIsSomeRowsSelected = () => {
1991
+ var _table$getState$rowSe;
1992
+ const totalSelected = Object.keys((_table$getState$rowSe = table.getState().rowSelection) != null ? _table$getState$rowSe : {}).length;
1993
+ return totalSelected > 0 && totalSelected < table.getFilteredRowModel().flatRows.length;
1994
+ };
1995
+ table.getIsSomePageRowsSelected = () => {
1996
+ const paginationFlatRows = table.getPaginationRowModel().flatRows;
1997
+ return table.getIsAllPageRowsSelected() ? false : paginationFlatRows.filter(row => row.getCanSelect()).some(d => d.getIsSelected() || d.getIsSomeSelected());
1998
+ };
1999
+ table.getToggleAllRowsSelectedHandler = () => {
2000
+ return e => {
2001
+ table.toggleAllRowsSelected(e.target.checked);
2002
+ };
2003
+ };
2004
+ table.getToggleAllPageRowsSelectedHandler = () => {
2005
+ return e => {
2006
+ table.toggleAllPageRowsSelected(e.target.checked);
2007
+ };
2043
2008
  };
2044
2009
  },
2045
2010
  createRow: (row, table) => {
2046
- return {
2047
- toggleSelected: value => {
2048
- const isSelected = row.getIsSelected();
2049
- table.setRowSelection(old => {
2050
- value = typeof value !== 'undefined' ? value : !isSelected;
2051
- if (isSelected === value) {
2052
- return old;
2053
- }
2054
- const selectedRowIds = {
2055
- ...old
2056
- };
2057
- mutateRowIsSelected(selectedRowIds, row.id, value, table);
2058
- return selectedRowIds;
2059
- });
2060
- },
2061
- getIsSelected: () => {
2062
- const {
2063
- rowSelection
2064
- } = table.getState();
2065
- return isRowSelected(row, rowSelection);
2066
- },
2067
- getIsSomeSelected: () => {
2068
- const {
2069
- rowSelection
2070
- } = table.getState();
2071
- return isSubRowSelected(row, rowSelection) === 'some';
2072
- },
2073
- getIsAllSubRowsSelected: () => {
2074
- const {
2075
- rowSelection
2076
- } = table.getState();
2077
- return isSubRowSelected(row, rowSelection) === 'all';
2078
- },
2079
- getCanSelect: () => {
2080
- var _table$options$enable;
2081
- if (typeof table.options.enableRowSelection === 'function') {
2082
- return table.options.enableRowSelection(row);
2083
- }
2084
- return (_table$options$enable = table.options.enableRowSelection) != null ? _table$options$enable : true;
2085
- },
2086
- getCanSelectSubRows: () => {
2087
- var _table$options$enable2;
2088
- if (typeof table.options.enableSubRowSelection === 'function') {
2089
- return table.options.enableSubRowSelection(row);
2090
- }
2091
- return (_table$options$enable2 = table.options.enableSubRowSelection) != null ? _table$options$enable2 : true;
2092
- },
2093
- getCanMultiSelect: () => {
2094
- var _table$options$enable3;
2095
- if (typeof table.options.enableMultiRowSelection === 'function') {
2096
- return table.options.enableMultiRowSelection(row);
2011
+ row.toggleSelected = value => {
2012
+ const isSelected = row.getIsSelected();
2013
+ table.setRowSelection(old => {
2014
+ value = typeof value !== 'undefined' ? value : !isSelected;
2015
+ if (isSelected === value) {
2016
+ return old;
2097
2017
  }
2098
- return (_table$options$enable3 = table.options.enableMultiRowSelection) != null ? _table$options$enable3 : true;
2099
- },
2100
- getToggleSelectedHandler: () => {
2101
- const canSelect = row.getCanSelect();
2102
- return e => {
2103
- var _target;
2104
- if (!canSelect) return;
2105
- row.toggleSelected((_target = e.target) == null ? void 0 : _target.checked);
2018
+ const selectedRowIds = {
2019
+ ...old
2106
2020
  };
2021
+ mutateRowIsSelected(selectedRowIds, row.id, value, table);
2022
+ return selectedRowIds;
2023
+ });
2024
+ };
2025
+ row.getIsSelected = () => {
2026
+ const {
2027
+ rowSelection
2028
+ } = table.getState();
2029
+ return isRowSelected(row, rowSelection);
2030
+ };
2031
+ row.getIsSomeSelected = () => {
2032
+ const {
2033
+ rowSelection
2034
+ } = table.getState();
2035
+ return isSubRowSelected(row, rowSelection) === 'some';
2036
+ };
2037
+ row.getIsAllSubRowsSelected = () => {
2038
+ const {
2039
+ rowSelection
2040
+ } = table.getState();
2041
+ return isSubRowSelected(row, rowSelection) === 'all';
2042
+ };
2043
+ row.getCanSelect = () => {
2044
+ var _table$options$enable;
2045
+ if (typeof table.options.enableRowSelection === 'function') {
2046
+ return table.options.enableRowSelection(row);
2047
+ }
2048
+ return (_table$options$enable = table.options.enableRowSelection) != null ? _table$options$enable : true;
2049
+ };
2050
+ row.getCanSelectSubRows = () => {
2051
+ var _table$options$enable2;
2052
+ if (typeof table.options.enableSubRowSelection === 'function') {
2053
+ return table.options.enableSubRowSelection(row);
2054
+ }
2055
+ return (_table$options$enable2 = table.options.enableSubRowSelection) != null ? _table$options$enable2 : true;
2056
+ };
2057
+ row.getCanMultiSelect = () => {
2058
+ var _table$options$enable3;
2059
+ if (typeof table.options.enableMultiRowSelection === 'function') {
2060
+ return table.options.enableMultiRowSelection(row);
2107
2061
  }
2062
+ return (_table$options$enable3 = table.options.enableMultiRowSelection) != null ? _table$options$enable3 : true;
2063
+ };
2064
+ row.getToggleSelectedHandler = () => {
2065
+ const canSelect = row.getCanSelect();
2066
+ return e => {
2067
+ var _target;
2068
+ if (!canSelect) return;
2069
+ row.toggleSelected((_target = e.target) == null ? void 0 : _target.checked);
2070
+ };
2108
2071
  };
2109
2072
  }
2110
2073
  };
@@ -2318,191 +2281,187 @@ const Sorting = {
2318
2281
  };
2319
2282
  },
2320
2283
  createColumn: (column, table) => {
2321
- return {
2322
- getAutoSortingFn: () => {
2323
- const firstRows = table.getFilteredRowModel().flatRows.slice(10);
2324
- let isString = false;
2325
- for (const row of firstRows) {
2326
- const value = row == null ? void 0 : row.getValue(column.id);
2327
- if (Object.prototype.toString.call(value) === '[object Date]') {
2328
- return sortingFns.datetime;
2329
- }
2330
- if (typeof value === 'string') {
2331
- isString = true;
2332
- if (value.split(reSplitAlphaNumeric).length > 1) {
2333
- return sortingFns.alphanumeric;
2334
- }
2335
- }
2336
- }
2337
- if (isString) {
2338
- return sortingFns.text;
2284
+ column.getAutoSortingFn = () => {
2285
+ const firstRows = table.getFilteredRowModel().flatRows.slice(10);
2286
+ let isString = false;
2287
+ for (const row of firstRows) {
2288
+ const value = row == null ? void 0 : row.getValue(column.id);
2289
+ if (Object.prototype.toString.call(value) === '[object Date]') {
2290
+ return sortingFns.datetime;
2339
2291
  }
2340
- return sortingFns.basic;
2341
- },
2342
- getAutoSortDir: () => {
2343
- const firstRow = table.getFilteredRowModel().flatRows[0];
2344
- const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
2345
2292
  if (typeof value === 'string') {
2346
- return 'asc';
2347
- }
2348
- return 'desc';
2349
- },
2350
- getSortingFn: () => {
2351
- var _table$options$sortin, _table$options$sortin2;
2352
- if (!column) {
2353
- throw new Error();
2293
+ isString = true;
2294
+ if (value.split(reSplitAlphaNumeric).length > 1) {
2295
+ return sortingFns.alphanumeric;
2296
+ }
2354
2297
  }
2355
- return isFunction(column.columnDef.sortingFn) ? column.columnDef.sortingFn : column.columnDef.sortingFn === 'auto' ? column.getAutoSortingFn() : (_table$options$sortin = (_table$options$sortin2 = table.options.sortingFns) == null ? void 0 : _table$options$sortin2[column.columnDef.sortingFn]) != null ? _table$options$sortin : sortingFns[column.columnDef.sortingFn];
2356
- },
2357
- toggleSorting: (desc, multi) => {
2358
- // if (column.columns.length) {
2359
- // column.columns.forEach((c, i) => {
2360
- // if (c.id) {
2361
- // table.toggleColumnSorting(c.id, undefined, multi || !!i)
2362
- // }
2363
- // })
2364
- // return
2365
- // }
2298
+ }
2299
+ if (isString) {
2300
+ return sortingFns.text;
2301
+ }
2302
+ return sortingFns.basic;
2303
+ };
2304
+ column.getAutoSortDir = () => {
2305
+ const firstRow = table.getFilteredRowModel().flatRows[0];
2306
+ const value = firstRow == null ? void 0 : firstRow.getValue(column.id);
2307
+ if (typeof value === 'string') {
2308
+ return 'asc';
2309
+ }
2310
+ return 'desc';
2311
+ };
2312
+ column.getSortingFn = () => {
2313
+ var _table$options$sortin, _table$options$sortin2;
2314
+ if (!column) {
2315
+ throw new Error();
2316
+ }
2317
+ return isFunction(column.columnDef.sortingFn) ? column.columnDef.sortingFn : column.columnDef.sortingFn === 'auto' ? column.getAutoSortingFn() : (_table$options$sortin = (_table$options$sortin2 = table.options.sortingFns) == null ? void 0 : _table$options$sortin2[column.columnDef.sortingFn]) != null ? _table$options$sortin : sortingFns[column.columnDef.sortingFn];
2318
+ };
2319
+ column.toggleSorting = (desc, multi) => {
2320
+ // if (column.columns.length) {
2321
+ // column.columns.forEach((c, i) => {
2322
+ // if (c.id) {
2323
+ // table.toggleColumnSorting(c.id, undefined, multi || !!i)
2324
+ // }
2325
+ // })
2326
+ // return
2327
+ // }
2366
2328
 
2367
- // this needs to be outside of table.setSorting to be in sync with rerender
2368
- const nextSortingOrder = column.getNextSortingOrder();
2369
- const hasManualValue = typeof desc !== 'undefined' && desc !== null;
2370
- table.setSorting(old => {
2371
- // Find any existing sorting for this column
2372
- const existingSorting = old == null ? void 0 : old.find(d => d.id === column.id);
2373
- const existingIndex = old == null ? void 0 : old.findIndex(d => d.id === column.id);
2374
- let newSorting = [];
2375
-
2376
- // What should we do with this sort action?
2377
- let sortAction;
2378
- let nextDesc = hasManualValue ? desc : nextSortingOrder === 'desc';
2379
-
2380
- // Multi-mode
2381
- if (old != null && old.length && column.getCanMultiSort() && multi) {
2382
- if (existingSorting) {
2383
- sortAction = 'toggle';
2384
- } else {
2385
- sortAction = 'add';
2386
- }
2329
+ // this needs to be outside of table.setSorting to be in sync with rerender
2330
+ const nextSortingOrder = column.getNextSortingOrder();
2331
+ const hasManualValue = typeof desc !== 'undefined' && desc !== null;
2332
+ table.setSorting(old => {
2333
+ // Find any existing sorting for this column
2334
+ const existingSorting = old == null ? void 0 : old.find(d => d.id === column.id);
2335
+ const existingIndex = old == null ? void 0 : old.findIndex(d => d.id === column.id);
2336
+ let newSorting = [];
2337
+
2338
+ // What should we do with this sort action?
2339
+ let sortAction;
2340
+ let nextDesc = hasManualValue ? desc : nextSortingOrder === 'desc';
2341
+
2342
+ // Multi-mode
2343
+ if (old != null && old.length && column.getCanMultiSort() && multi) {
2344
+ if (existingSorting) {
2345
+ sortAction = 'toggle';
2387
2346
  } else {
2388
- // Normal mode
2389
- if (old != null && old.length && existingIndex !== old.length - 1) {
2390
- sortAction = 'replace';
2391
- } else if (existingSorting) {
2392
- sortAction = 'toggle';
2393
- } else {
2394
- sortAction = 'replace';
2395
- }
2347
+ sortAction = 'add';
2348
+ }
2349
+ } else {
2350
+ // Normal mode
2351
+ if (old != null && old.length && existingIndex !== old.length - 1) {
2352
+ sortAction = 'replace';
2353
+ } else if (existingSorting) {
2354
+ sortAction = 'toggle';
2355
+ } else {
2356
+ sortAction = 'replace';
2396
2357
  }
2358
+ }
2397
2359
 
2398
- // Handle toggle states that will remove the sorting
2399
- if (sortAction === 'toggle') {
2400
- // If we are "actually" toggling (not a manual set value), should we remove the sorting?
2401
- if (!hasManualValue) {
2402
- // Is our intention to remove?
2403
- if (!nextSortingOrder) {
2404
- sortAction = 'remove';
2405
- }
2360
+ // Handle toggle states that will remove the sorting
2361
+ if (sortAction === 'toggle') {
2362
+ // If we are "actually" toggling (not a manual set value), should we remove the sorting?
2363
+ if (!hasManualValue) {
2364
+ // Is our intention to remove?
2365
+ if (!nextSortingOrder) {
2366
+ sortAction = 'remove';
2406
2367
  }
2407
2368
  }
2408
- if (sortAction === 'add') {
2409
- var _table$options$maxMul;
2410
- newSorting = [...old, {
2411
- id: column.id,
2412
- desc: nextDesc
2413
- }];
2414
- // Take latest n columns
2415
- newSorting.splice(0, newSorting.length - ((_table$options$maxMul = table.options.maxMultiSortColCount) != null ? _table$options$maxMul : Number.MAX_SAFE_INTEGER));
2416
- } else if (sortAction === 'toggle') {
2417
- // This flips (or sets) the
2418
- newSorting = old.map(d => {
2419
- if (d.id === column.id) {
2420
- return {
2421
- ...d,
2422
- desc: nextDesc
2423
- };
2424
- }
2425
- return d;
2426
- });
2427
- } else if (sortAction === 'remove') {
2428
- newSorting = old.filter(d => d.id !== column.id);
2429
- } else {
2430
- newSorting = [{
2431
- id: column.id,
2432
- desc: nextDesc
2433
- }];
2434
- }
2435
- return newSorting;
2436
- });
2437
- },
2438
- getFirstSortDir: () => {
2439
- var _ref, _column$columnDef$sor;
2440
- const sortDescFirst = (_ref = (_column$columnDef$sor = column.columnDef.sortDescFirst) != null ? _column$columnDef$sor : table.options.sortDescFirst) != null ? _ref : column.getAutoSortDir() === 'desc';
2441
- return sortDescFirst ? 'desc' : 'asc';
2442
- },
2443
- getNextSortingOrder: multi => {
2444
- var _table$options$enable, _table$options$enable2;
2445
- const firstSortDirection = column.getFirstSortDir();
2446
- const isSorted = column.getIsSorted();
2447
- if (!isSorted) {
2448
- return firstSortDirection;
2449
2369
  }
2450
- if (isSorted !== firstSortDirection && ((_table$options$enable = table.options.enableSortingRemoval) != null ? _table$options$enable : true) && (
2451
- // If enableSortRemove, enable in general
2452
- multi ? (_table$options$enable2 = table.options.enableMultiRemove) != null ? _table$options$enable2 : true : true) // If multi, don't allow if enableMultiRemove))
2453
- ) {
2454
- return false;
2370
+ if (sortAction === 'add') {
2371
+ var _table$options$maxMul;
2372
+ newSorting = [...old, {
2373
+ id: column.id,
2374
+ desc: nextDesc
2375
+ }];
2376
+ // Take latest n columns
2377
+ newSorting.splice(0, newSorting.length - ((_table$options$maxMul = table.options.maxMultiSortColCount) != null ? _table$options$maxMul : Number.MAX_SAFE_INTEGER));
2378
+ } else if (sortAction === 'toggle') {
2379
+ // This flips (or sets) the
2380
+ newSorting = old.map(d => {
2381
+ if (d.id === column.id) {
2382
+ return {
2383
+ ...d,
2384
+ desc: nextDesc
2385
+ };
2386
+ }
2387
+ return d;
2388
+ });
2389
+ } else if (sortAction === 'remove') {
2390
+ newSorting = old.filter(d => d.id !== column.id);
2391
+ } else {
2392
+ newSorting = [{
2393
+ id: column.id,
2394
+ desc: nextDesc
2395
+ }];
2455
2396
  }
2456
- return isSorted === 'desc' ? 'asc' : 'desc';
2457
- },
2458
- getCanSort: () => {
2459
- var _column$columnDef$ena, _table$options$enable3;
2460
- return ((_column$columnDef$ena = column.columnDef.enableSorting) != null ? _column$columnDef$ena : true) && ((_table$options$enable3 = table.options.enableSorting) != null ? _table$options$enable3 : true) && !!column.accessorFn;
2461
- },
2462
- getCanMultiSort: () => {
2463
- var _ref2, _column$columnDef$ena2;
2464
- return (_ref2 = (_column$columnDef$ena2 = column.columnDef.enableMultiSort) != null ? _column$columnDef$ena2 : table.options.enableMultiSort) != null ? _ref2 : !!column.accessorFn;
2465
- },
2466
- getIsSorted: () => {
2467
- var _table$getState$sorti;
2468
- const columnSort = (_table$getState$sorti = table.getState().sorting) == null ? void 0 : _table$getState$sorti.find(d => d.id === column.id);
2469
- return !columnSort ? false : columnSort.desc ? 'desc' : 'asc';
2470
- },
2471
- getSortIndex: () => {
2472
- var _table$getState$sorti2, _table$getState$sorti3;
2473
- return (_table$getState$sorti2 = (_table$getState$sorti3 = table.getState().sorting) == null ? void 0 : _table$getState$sorti3.findIndex(d => d.id === column.id)) != null ? _table$getState$sorti2 : -1;
2474
- },
2475
- clearSorting: () => {
2476
- //clear sorting for just 1 column
2477
- table.setSorting(old => old != null && old.length ? old.filter(d => d.id !== column.id) : []);
2478
- },
2479
- getToggleSortingHandler: () => {
2480
- const canSort = column.getCanSort();
2481
- return e => {
2482
- if (!canSort) return;
2483
- e.persist == null || e.persist();
2484
- column.toggleSorting == null || column.toggleSorting(undefined, column.getCanMultiSort() ? table.options.isMultiSortEvent == null ? void 0 : table.options.isMultiSortEvent(e) : false);
2485
- };
2397
+ return newSorting;
2398
+ });
2399
+ };
2400
+ column.getFirstSortDir = () => {
2401
+ var _ref, _column$columnDef$sor;
2402
+ const sortDescFirst = (_ref = (_column$columnDef$sor = column.columnDef.sortDescFirst) != null ? _column$columnDef$sor : table.options.sortDescFirst) != null ? _ref : column.getAutoSortDir() === 'desc';
2403
+ return sortDescFirst ? 'desc' : 'asc';
2404
+ };
2405
+ column.getNextSortingOrder = multi => {
2406
+ var _table$options$enable, _table$options$enable2;
2407
+ const firstSortDirection = column.getFirstSortDir();
2408
+ const isSorted = column.getIsSorted();
2409
+ if (!isSorted) {
2410
+ return firstSortDirection;
2411
+ }
2412
+ if (isSorted !== firstSortDirection && ((_table$options$enable = table.options.enableSortingRemoval) != null ? _table$options$enable : true) && (
2413
+ // If enableSortRemove, enable in general
2414
+ multi ? (_table$options$enable2 = table.options.enableMultiRemove) != null ? _table$options$enable2 : true : true) // If multi, don't allow if enableMultiRemove))
2415
+ ) {
2416
+ return false;
2486
2417
  }
2418
+ return isSorted === 'desc' ? 'asc' : 'desc';
2419
+ };
2420
+ column.getCanSort = () => {
2421
+ var _column$columnDef$ena, _table$options$enable3;
2422
+ return ((_column$columnDef$ena = column.columnDef.enableSorting) != null ? _column$columnDef$ena : true) && ((_table$options$enable3 = table.options.enableSorting) != null ? _table$options$enable3 : true) && !!column.accessorFn;
2423
+ };
2424
+ column.getCanMultiSort = () => {
2425
+ var _ref2, _column$columnDef$ena2;
2426
+ return (_ref2 = (_column$columnDef$ena2 = column.columnDef.enableMultiSort) != null ? _column$columnDef$ena2 : table.options.enableMultiSort) != null ? _ref2 : !!column.accessorFn;
2427
+ };
2428
+ column.getIsSorted = () => {
2429
+ var _table$getState$sorti;
2430
+ const columnSort = (_table$getState$sorti = table.getState().sorting) == null ? void 0 : _table$getState$sorti.find(d => d.id === column.id);
2431
+ return !columnSort ? false : columnSort.desc ? 'desc' : 'asc';
2432
+ };
2433
+ column.getSortIndex = () => {
2434
+ var _table$getState$sorti2, _table$getState$sorti3;
2435
+ return (_table$getState$sorti2 = (_table$getState$sorti3 = table.getState().sorting) == null ? void 0 : _table$getState$sorti3.findIndex(d => d.id === column.id)) != null ? _table$getState$sorti2 : -1;
2436
+ };
2437
+ column.clearSorting = () => {
2438
+ //clear sorting for just 1 column
2439
+ table.setSorting(old => old != null && old.length ? old.filter(d => d.id !== column.id) : []);
2440
+ };
2441
+ column.getToggleSortingHandler = () => {
2442
+ const canSort = column.getCanSort();
2443
+ return e => {
2444
+ if (!canSort) return;
2445
+ e.persist == null || e.persist();
2446
+ column.toggleSorting == null || column.toggleSorting(undefined, column.getCanMultiSort() ? table.options.isMultiSortEvent == null ? void 0 : table.options.isMultiSortEvent(e) : false);
2447
+ };
2487
2448
  };
2488
2449
  },
2489
2450
  createTable: table => {
2490
- return {
2491
- setSorting: updater => table.options.onSortingChange == null ? void 0 : table.options.onSortingChange(updater),
2492
- resetSorting: defaultState => {
2493
- var _table$initialState$s, _table$initialState;
2494
- table.setSorting(defaultState ? [] : (_table$initialState$s = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.sorting) != null ? _table$initialState$s : []);
2495
- },
2496
- getPreSortedRowModel: () => table.getGroupedRowModel(),
2497
- getSortedRowModel: () => {
2498
- if (!table._getSortedRowModel && table.options.getSortedRowModel) {
2499
- table._getSortedRowModel = table.options.getSortedRowModel(table);
2500
- }
2501
- if (table.options.manualSorting || !table._getSortedRowModel) {
2502
- return table.getPreSortedRowModel();
2503
- }
2504
- return table._getSortedRowModel();
2451
+ table.setSorting = updater => table.options.onSortingChange == null ? void 0 : table.options.onSortingChange(updater);
2452
+ table.resetSorting = defaultState => {
2453
+ var _table$initialState$s, _table$initialState;
2454
+ table.setSorting(defaultState ? [] : (_table$initialState$s = (_table$initialState = table.initialState) == null ? void 0 : _table$initialState.sorting) != null ? _table$initialState$s : []);
2455
+ };
2456
+ table.getPreSortedRowModel = () => table.getGroupedRowModel();
2457
+ table.getSortedRowModel = () => {
2458
+ if (!table._getSortedRowModel && table.options.getSortedRowModel) {
2459
+ table._getSortedRowModel = table.options.getSortedRowModel(table);
2505
2460
  }
2461
+ if (table.options.manualSorting || !table._getSortedRowModel) {
2462
+ return table.getPreSortedRowModel();
2463
+ }
2464
+ return table._getSortedRowModel();
2506
2465
  };
2507
2466
  }
2508
2467
  };
@@ -2522,49 +2481,45 @@ const Visibility = {
2522
2481
  };
2523
2482
  },
2524
2483
  createColumn: (column, table) => {
2525
- return {
2526
- toggleVisibility: value => {
2527
- if (column.getCanHide()) {
2528
- table.setColumnVisibility(old => ({
2529
- ...old,
2530
- [column.id]: value != null ? value : !column.getIsVisible()
2531
- }));
2532
- }
2533
- },
2534
- getIsVisible: () => {
2535
- var _table$getState$colum, _table$getState$colum2;
2536
- return (_table$getState$colum = (_table$getState$colum2 = table.getState().columnVisibility) == null ? void 0 : _table$getState$colum2[column.id]) != null ? _table$getState$colum : true;
2537
- },
2538
- getCanHide: () => {
2539
- var _column$columnDef$ena, _table$options$enable;
2540
- return ((_column$columnDef$ena = column.columnDef.enableHiding) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableHiding) != null ? _table$options$enable : true);
2541
- },
2542
- getToggleVisibilityHandler: () => {
2543
- return e => {
2544
- column.toggleVisibility == null || column.toggleVisibility(e.target.checked);
2545
- };
2484
+ column.toggleVisibility = value => {
2485
+ if (column.getCanHide()) {
2486
+ table.setColumnVisibility(old => ({
2487
+ ...old,
2488
+ [column.id]: value != null ? value : !column.getIsVisible()
2489
+ }));
2546
2490
  }
2547
2491
  };
2492
+ column.getIsVisible = () => {
2493
+ var _table$getState$colum, _table$getState$colum2;
2494
+ return (_table$getState$colum = (_table$getState$colum2 = table.getState().columnVisibility) == null ? void 0 : _table$getState$colum2[column.id]) != null ? _table$getState$colum : true;
2495
+ };
2496
+ column.getCanHide = () => {
2497
+ var _column$columnDef$ena, _table$options$enable;
2498
+ return ((_column$columnDef$ena = column.columnDef.enableHiding) != null ? _column$columnDef$ena : true) && ((_table$options$enable = table.options.enableHiding) != null ? _table$options$enable : true);
2499
+ };
2500
+ column.getToggleVisibilityHandler = () => {
2501
+ return e => {
2502
+ column.toggleVisibility == null || column.toggleVisibility(e.target.checked);
2503
+ };
2504
+ };
2548
2505
  },
2549
2506
  createRow: (row, table) => {
2550
- return {
2551
- _getAllVisibleCells: memo(() => [row.getAllCells(), table.getState().columnVisibility], cells => {
2552
- return cells.filter(cell => cell.column.getIsVisible());
2553
- }, {
2554
- key: process.env.NODE_ENV === 'production' && 'row._getAllVisibleCells',
2555
- debug: () => {
2556
- var _table$options$debugA;
2557
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugRows;
2558
- }
2559
- }),
2560
- getVisibleCells: memo(() => [row.getLeftVisibleCells(), row.getCenterVisibleCells(), row.getRightVisibleCells()], (left, center, right) => [...left, ...center, ...right], {
2561
- key: process.env.NODE_ENV === 'development' && 'row.getVisibleCells',
2562
- debug: () => {
2563
- var _table$options$debugA2;
2564
- return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugRows;
2565
- }
2566
- })
2567
- };
2507
+ row._getAllVisibleCells = memo(() => [row.getAllCells(), table.getState().columnVisibility], cells => {
2508
+ return cells.filter(cell => cell.column.getIsVisible());
2509
+ }, {
2510
+ key: process.env.NODE_ENV === 'production' && 'row._getAllVisibleCells',
2511
+ debug: () => {
2512
+ var _table$options$debugA;
2513
+ return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugRows;
2514
+ }
2515
+ });
2516
+ row.getVisibleCells = memo(() => [row.getLeftVisibleCells(), row.getCenterVisibleCells(), row.getRightVisibleCells()], (left, center, right) => [...left, ...center, ...right], {
2517
+ key: process.env.NODE_ENV === 'development' && 'row.getVisibleCells',
2518
+ debug: () => {
2519
+ var _table$options$debugA2;
2520
+ return (_table$options$debugA2 = table.options.debugAll) != null ? _table$options$debugA2 : table.options.debugRows;
2521
+ }
2522
+ });
2568
2523
  },
2569
2524
  createTable: table => {
2570
2525
  const makeVisibleColumnsMethod = (key, getColumns) => {
@@ -2578,33 +2533,31 @@ const Visibility = {
2578
2533
  }
2579
2534
  });
2580
2535
  };
2581
- return {
2582
- getVisibleFlatColumns: makeVisibleColumnsMethod('getVisibleFlatColumns', () => table.getAllFlatColumns()),
2583
- getVisibleLeafColumns: makeVisibleColumnsMethod('getVisibleLeafColumns', () => table.getAllLeafColumns()),
2584
- getLeftVisibleLeafColumns: makeVisibleColumnsMethod('getLeftVisibleLeafColumns', () => table.getLeftLeafColumns()),
2585
- getRightVisibleLeafColumns: makeVisibleColumnsMethod('getRightVisibleLeafColumns', () => table.getRightLeafColumns()),
2586
- getCenterVisibleLeafColumns: makeVisibleColumnsMethod('getCenterVisibleLeafColumns', () => table.getCenterLeafColumns()),
2587
- setColumnVisibility: updater => table.options.onColumnVisibilityChange == null ? void 0 : table.options.onColumnVisibilityChange(updater),
2588
- resetColumnVisibility: defaultState => {
2589
- var _table$initialState$c;
2590
- table.setColumnVisibility(defaultState ? {} : (_table$initialState$c = table.initialState.columnVisibility) != null ? _table$initialState$c : {});
2591
- },
2592
- toggleAllColumnsVisible: value => {
2593
- var _value;
2594
- value = (_value = value) != null ? _value : !table.getIsAllColumnsVisible();
2595
- table.setColumnVisibility(table.getAllLeafColumns().reduce((obj, column) => ({
2596
- ...obj,
2597
- [column.id]: !value ? !(column.getCanHide != null && column.getCanHide()) : value
2598
- }), {}));
2599
- },
2600
- getIsAllColumnsVisible: () => !table.getAllLeafColumns().some(column => !(column.getIsVisible != null && column.getIsVisible())),
2601
- getIsSomeColumnsVisible: () => table.getAllLeafColumns().some(column => column.getIsVisible == null ? void 0 : column.getIsVisible()),
2602
- getToggleAllColumnsVisibilityHandler: () => {
2603
- return e => {
2604
- var _target;
2605
- table.toggleAllColumnsVisible((_target = e.target) == null ? void 0 : _target.checked);
2606
- };
2607
- }
2536
+ table.getVisibleFlatColumns = makeVisibleColumnsMethod('getVisibleFlatColumns', () => table.getAllFlatColumns());
2537
+ table.getVisibleLeafColumns = makeVisibleColumnsMethod('getVisibleLeafColumns', () => table.getAllLeafColumns());
2538
+ table.getLeftVisibleLeafColumns = makeVisibleColumnsMethod('getLeftVisibleLeafColumns', () => table.getLeftLeafColumns());
2539
+ table.getRightVisibleLeafColumns = makeVisibleColumnsMethod('getRightVisibleLeafColumns', () => table.getRightLeafColumns());
2540
+ table.getCenterVisibleLeafColumns = makeVisibleColumnsMethod('getCenterVisibleLeafColumns', () => table.getCenterLeafColumns());
2541
+ table.setColumnVisibility = updater => table.options.onColumnVisibilityChange == null ? void 0 : table.options.onColumnVisibilityChange(updater);
2542
+ table.resetColumnVisibility = defaultState => {
2543
+ var _table$initialState$c;
2544
+ table.setColumnVisibility(defaultState ? {} : (_table$initialState$c = table.initialState.columnVisibility) != null ? _table$initialState$c : {});
2545
+ };
2546
+ table.toggleAllColumnsVisible = value => {
2547
+ var _value;
2548
+ value = (_value = value) != null ? _value : !table.getIsAllColumnsVisible();
2549
+ table.setColumnVisibility(table.getAllLeafColumns().reduce((obj, column) => ({
2550
+ ...obj,
2551
+ [column.id]: !value ? !(column.getCanHide != null && column.getCanHide()) : value
2552
+ }), {}));
2553
+ };
2554
+ table.getIsAllColumnsVisible = () => !table.getAllLeafColumns().some(column => !(column.getIsVisible != null && column.getIsVisible()));
2555
+ table.getIsSomeColumnsVisible = () => table.getAllLeafColumns().some(column => column.getIsVisible == null ? void 0 : column.getIsVisible());
2556
+ table.getToggleAllColumnsVisibilityHandler = () => {
2557
+ return e => {
2558
+ var _target;
2559
+ table.toggleAllColumnsVisible((_target = e.target) == null ? void 0 : _target.checked);
2560
+ };
2608
2561
  };
2609
2562
  }
2610
2563
  };
@@ -2801,9 +2754,10 @@ function createTable(options) {
2801
2754
  }
2802
2755
  };
2803
2756
  Object.assign(table, coreInstance);
2804
- table._features.forEach(feature => {
2805
- return Object.assign(table, feature.createTable == null ? void 0 : feature.createTable(table));
2806
- });
2757
+ for (let index = 0; index < table._features.length; index++) {
2758
+ const feature = table._features[index];
2759
+ feature == null || feature.createTable == null || feature.createTable(table);
2760
+ }
2807
2761
  return table;
2808
2762
  }
2809
2763
 
@@ -2831,7 +2785,7 @@ function createCell(table, row, column, columnId) {
2831
2785
  })
2832
2786
  };
2833
2787
  table._features.forEach(feature => {
2834
- Object.assign(cell, feature.createCell == null ? void 0 : feature.createCell(cell, column, row, table));
2788
+ feature.createCell == null || feature.createCell(cell, column, row, table);
2835
2789
  }, {});
2836
2790
  return cell;
2837
2791
  }
@@ -2915,7 +2869,7 @@ const createRow = (table, id, original, rowIndex, depth, subRows, parentId) => {
2915
2869
  };
2916
2870
  for (let i = 0; i < table._features.length; i++) {
2917
2871
  const feature = table._features[i];
2918
- Object.assign(row, feature == null || feature.createRow == null ? void 0 : feature.createRow(row, table));
2872
+ feature == null || feature.createRow == null || feature.createRow(row, table);
2919
2873
  }
2920
2874
  return row;
2921
2875
  };