@tanstack/table-core 8.0.0-alpha.63 → 8.0.0-alpha.67

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 (114) hide show
  1. package/build/cjs/core.js +7 -4
  2. package/build/cjs/core.js.map +1 -1
  3. package/build/cjs/features/Cells.js +2 -2
  4. package/build/cjs/features/Cells.js.map +1 -1
  5. package/build/cjs/features/ColumnSizing.js +68 -143
  6. package/build/cjs/features/ColumnSizing.js.map +1 -1
  7. package/build/cjs/features/Columns.js +7 -7
  8. package/build/cjs/features/Columns.js.map +1 -1
  9. package/build/cjs/features/Expanding.js +52 -90
  10. package/build/cjs/features/Expanding.js.map +1 -1
  11. package/build/cjs/features/Filters.js +213 -191
  12. package/build/cjs/features/Filters.js.map +1 -1
  13. package/build/cjs/features/Grouping.js +54 -80
  14. package/build/cjs/features/Grouping.js.map +1 -1
  15. package/build/cjs/features/Headers.js +16 -40
  16. package/build/cjs/features/Headers.js.map +1 -1
  17. package/build/cjs/features/Ordering.js +6 -5
  18. package/build/cjs/features/Ordering.js.map +1 -1
  19. package/build/cjs/features/Pagination.js +5 -5
  20. package/build/cjs/features/Pagination.js.map +1 -1
  21. package/build/cjs/features/Pinning.js +82 -168
  22. package/build/cjs/features/Pinning.js.map +1 -1
  23. package/build/cjs/features/RowSelection.js +67 -119
  24. package/build/cjs/features/RowSelection.js.map +1 -1
  25. package/build/cjs/features/Sorting.js +41 -91
  26. package/build/cjs/features/Sorting.js.map +1 -1
  27. package/build/cjs/features/Visibility.js +20 -43
  28. package/build/cjs/features/Visibility.js.map +1 -1
  29. package/build/cjs/filterFns.js +51 -108
  30. package/build/cjs/filterFns.js.map +1 -1
  31. package/build/cjs/index.js +5 -4
  32. package/build/cjs/index.js.map +1 -1
  33. package/build/cjs/utils/filterRowsUtils.js +21 -0
  34. package/build/cjs/utils/filterRowsUtils.js.map +1 -1
  35. package/build/cjs/utils/getCoreRowModelAsync.js +1 -1
  36. package/build/cjs/utils/getCoreRowModelAsync.js.map +1 -1
  37. package/build/cjs/utils/getCoreRowModelSync.js +1 -1
  38. package/build/cjs/utils/getCoreRowModelSync.js.map +1 -1
  39. package/build/cjs/utils/getExpandedRowModel.js +2 -2
  40. package/build/cjs/utils/getExpandedRowModel.js.map +1 -1
  41. package/build/cjs/utils/getFilteredRowModelSync.js +125 -0
  42. package/build/cjs/utils/getFilteredRowModelSync.js.map +1 -0
  43. package/build/cjs/utils/getGroupedRowModel.js +1 -1
  44. package/build/cjs/utils/getGroupedRowModel.js.map +1 -1
  45. package/build/cjs/utils/getPaginationRowModel.js +1 -1
  46. package/build/cjs/utils/getPaginationRowModel.js.map +1 -1
  47. package/build/cjs/utils/getSortedRowModelSync.js +3 -3
  48. package/build/cjs/utils/getSortedRowModelSync.js.map +1 -1
  49. package/build/cjs/utils.js +2 -6
  50. package/build/cjs/utils.js.map +1 -1
  51. package/build/esm/index.js +899 -1357
  52. package/build/esm/index.js.map +1 -1
  53. package/build/stats-html.html +1 -1
  54. package/build/stats-react.json +404 -418
  55. package/build/types/features/ColumnSizing.d.ts +2 -13
  56. package/build/types/features/Expanding.d.ts +3 -13
  57. package/build/types/features/Filters.d.ts +38 -42
  58. package/build/types/features/Grouping.d.ts +3 -18
  59. package/build/types/features/Ordering.d.ts +2 -6
  60. package/build/types/features/Pinning.d.ts +2 -19
  61. package/build/types/features/RowSelection.d.ts +4 -15
  62. package/build/types/features/Sorting.d.ts +5 -22
  63. package/build/types/features/Visibility.d.ts +2 -15
  64. package/build/types/filterFns.d.ts +10 -52
  65. package/build/types/index.d.ts +1 -2
  66. package/build/types/types.d.ts +2 -4
  67. package/build/types/utils/filterRowsUtils.d.ts +1 -0
  68. package/build/types/utils/{getColumnFilteredRowModelAsync.d.ts → getFilteredRowModelAsync.d.ts} +1 -1
  69. package/build/types/utils/getFilteredRowModelSync.d.ts +2 -0
  70. package/build/types/utils.d.ts +2 -2
  71. package/build/umd/index.development.js +867 -1323
  72. package/build/umd/index.development.js.map +1 -1
  73. package/build/umd/index.production.js +1 -1
  74. package/build/umd/index.production.js.map +1 -1
  75. package/package.json +2 -1
  76. package/src/core.ts +5 -5
  77. package/src/features/Cells.ts +4 -2
  78. package/src/features/ColumnSizing.ts +69 -126
  79. package/src/features/Columns.ts +12 -7
  80. package/src/features/Expanding.ts +62 -107
  81. package/src/features/Filters.ts +293 -243
  82. package/src/features/Grouping.ts +59 -81
  83. package/src/features/Headers.ts +18 -40
  84. package/src/features/Ordering.ts +7 -9
  85. package/src/features/Pagination.ts +4 -3
  86. package/src/features/Pinning.ts +77 -164
  87. package/src/features/RowSelection.ts +76 -123
  88. package/src/features/Sorting.ts +48 -106
  89. package/src/features/Visibility.ts +25 -52
  90. package/src/filterFns.ts +74 -147
  91. package/src/index.ts +1 -2
  92. package/src/types.ts +2 -2
  93. package/src/utils/filterRowsUtils.ts +24 -0
  94. package/src/utils/getCoreRowModelAsync.ts +1 -1
  95. package/src/utils/getCoreRowModelSync.ts +1 -1
  96. package/src/utils/getExpandedRowModel.ts +2 -2
  97. package/src/utils/getFilteredRowModelAsync.ts +157 -0
  98. package/src/utils/getFilteredRowModelSync.ts +141 -0
  99. package/src/utils/getGroupedRowModel.ts +1 -1
  100. package/src/utils/getPaginationRowModel.ts +1 -1
  101. package/src/utils/getSortedRowModelAsync.ts +1 -1
  102. package/src/utils/getSortedRowModelSync.ts +4 -4
  103. package/src/utils.ts +2 -4
  104. package/build/cjs/utils/getColumnFilteredRowModelSync.js +0 -115
  105. package/build/cjs/utils/getColumnFilteredRowModelSync.js.map +0 -1
  106. package/build/cjs/utils/getGlobalFilteredRowModelSync.js +0 -91
  107. package/build/cjs/utils/getGlobalFilteredRowModelSync.js.map +0 -1
  108. package/build/types/utils/getColumnFilteredRowModelSync.d.ts +0 -2
  109. package/build/types/utils/getGlobalFilteredRowModelAsync.d.ts +0 -4
  110. package/build/types/utils/getGlobalFilteredRowModelSync.d.ts +0 -2
  111. package/src/utils/getColumnFilteredRowModelAsync.ts +0 -118
  112. package/src/utils/getColumnFilteredRowModelSync.ts +0 -102
  113. package/src/utils/getGlobalFilteredRowModelAsync.ts +0 -96
  114. package/src/utils/getGlobalFilteredRowModelSync.ts +0 -79
@@ -207,9 +207,7 @@ function memo(getDeps, fn, opts) {
207
207
  var a = _ref[0],
208
208
  b = _ref[1];
209
209
  return _extends({}, accu, (_extends3 = {}, _extends3[a] = b, _extends3));
210
- }, {}), {
211
- parent: parent
212
- }));
210
+ }, {})));
213
211
  }
214
212
  }
215
213
 
@@ -293,9 +291,7 @@ function incrementalMemo(getDeps, getInitialValue, schedule, opts) {
293
291
  var a = _ref2[0],
294
292
  b = _ref2[1];
295
293
  return _extends({}, accu, (_extends4 = {}, _extends4[a] = b, _extends4));
296
- }, {}), {
297
- parent: parent
298
- }));
294
+ }, {})));
299
295
  }
300
296
  }
301
297
 
@@ -377,7 +373,7 @@ var Columns = {
377
373
 
378
374
  return (_instance$options$deb = instance.options.debugAll) != null ? _instance$options$deb : instance.options.debugColumns;
379
375
  },
380
- key: 'getDefaultColumn'
376
+ key: process.env.NODE_ENV === 'development' && 'getDefaultColumn'
381
377
  }),
382
378
  getColumnDefs: function getColumnDefs() {
383
379
  return instance.options.columns;
@@ -422,7 +418,7 @@ var Columns = {
422
418
  return d.getFlatColumns();
423
419
  }));
424
420
  }, {
425
- key: 'column.getFlatColumns',
421
+ key: process.env.NODE_ENV === 'production' && 'column.getFlatColumns',
426
422
  debug: function debug() {
427
423
  var _instance$options$deb2;
428
424
 
@@ -443,7 +439,7 @@ var Columns = {
443
439
 
444
440
  return [column];
445
441
  }, {
446
- key: 'column.getLeafColumns',
442
+ key: process.env.NODE_ENV === 'production' && 'column.getLeafColumns',
447
443
  debug: function debug() {
448
444
  var _instance$options$deb3;
449
445
 
@@ -475,7 +471,7 @@ var Columns = {
475
471
 
476
472
  return recurseColumns(columnDefs);
477
473
  }, {
478
- key: 'getAllColumns',
474
+ key: process.env.NODE_ENV === 'development' && 'getAllColumns',
479
475
  debug: function debug() {
480
476
  var _instance$options$deb4;
481
477
 
@@ -489,7 +485,7 @@ var Columns = {
489
485
  return column.getFlatColumns();
490
486
  });
491
487
  }, {
492
- key: 'getAllFlatColumns',
488
+ key: process.env.NODE_ENV === 'development' && 'getAllFlatColumns',
493
489
  debug: function debug() {
494
490
  var _instance$options$deb5;
495
491
 
@@ -504,7 +500,7 @@ var Columns = {
504
500
  return acc;
505
501
  }, {});
506
502
  }, {
507
- key: 'getAllFlatColumnsById',
503
+ key: process.env.NODE_ENV === 'development' && 'getAllFlatColumnsById',
508
504
  debug: function debug() {
509
505
  var _instance$options$deb6;
510
506
 
@@ -519,7 +515,7 @@ var Columns = {
519
515
  });
520
516
  return orderColumns(leafColumns);
521
517
  }, {
522
- key: 'getAllLeafColumns',
518
+ key: process.env.NODE_ENV === 'development' && 'getAllLeafColumns',
523
519
  debug: function debug() {
524
520
  var _instance$options$deb7;
525
521
 
@@ -620,7 +616,7 @@ var Cells = {
620
616
  return instance.createCell(row, column, row.values[column.id]);
621
617
  });
622
618
  }, {
623
- key: process.env.NODE_ENV !== 'production' ? 'row.getAllCells' : '',
619
+ key: process.env.NODE_ENV === 'development' ? 'row.getAllCells' : '',
624
620
  debug: function debug() {
625
621
  var _instance$options$deb;
626
622
 
@@ -635,7 +631,7 @@ var Cells = {
635
631
  return acc;
636
632
  }, {});
637
633
  }, {
638
- key: 'row.getAllCellsByColumnId',
634
+ key: process.env.NODE_ENV === 'production' && 'row.getAllCellsByColumnId',
639
635
  debug: function debug() {
640
636
  var _instance$options$deb2;
641
637
 
@@ -708,8 +704,8 @@ var ColumnSizing = {
708
704
  getDefaultColumn: function getDefaultColumn() {
709
705
  return defaultColumnSizing;
710
706
  },
711
- getInitialState: function getInitialState() {
712
- return {
707
+ getInitialState: function getInitialState(state) {
708
+ return _extends({
713
709
  columnSizing: {},
714
710
  columnSizingInfo: {
715
711
  startOffset: null,
@@ -719,7 +715,7 @@ var ColumnSizing = {
719
715
  isResizingColumn: false,
720
716
  columnSizingStart: []
721
717
  }
722
- };
718
+ }, state);
723
719
  },
724
720
  getDefaultOptions: function getDefaultOptions(instance) {
725
721
  return {
@@ -731,139 +727,70 @@ var ColumnSizing = {
731
727
  createColumn: function createColumn(column, instance) {
732
728
  return {
733
729
  getSize: function getSize() {
734
- return instance.getColumnSize(column.id);
735
- },
736
- getStart: function getStart(position) {
737
- return instance.getColumnStart(column.id, position);
738
- },
739
- getIsResizing: function getIsResizing() {
740
- return instance.getColumnIsResizing(column.id);
741
- },
742
- getCanResize: function getCanResize() {
743
- return instance.getColumnCanResize(column.id);
744
- },
745
- resetSize: function resetSize() {
746
- return instance.resetColumnSize(column.id);
747
- }
748
- };
749
- },
750
- createHeader: function createHeader(header, instance) {
751
- return {
752
- getIsResizing: function getIsResizing() {
753
- return instance.getColumnIsResizing(header.column.id);
754
- },
755
- getCanResize: function getCanResize() {
756
- return instance.getColumnCanResize(header.column.id);
757
- },
758
- resetSize: function resetSize() {
759
- return instance.resetColumnSize(header.column.id);
760
- },
761
- getResizeHandler: function getResizeHandler() {
762
- return instance.getResizeHandler(header.id);
763
- }
764
- };
765
- },
766
- createInstance: function createInstance(instance) {
767
- return {
768
- getColumnSize: function getColumnSize(columnId) {
769
730
  var _column$minSize, _ref, _column$maxSize;
770
731
 
771
- var column = instance.getColumn(columnId);
772
-
773
- if (!column) {
774
- throw new Error();
775
- }
776
-
777
732
  var columnSize = instance.getState().columnSizing[column.id];
778
733
  return Math.min(Math.max((_column$minSize = column.minSize) != null ? _column$minSize : defaultColumnSizing.minSize, (_ref = columnSize != null ? columnSize : column.size) != null ? _ref : defaultColumnSizing.size), (_column$maxSize = column.maxSize) != null ? _column$maxSize : defaultColumnSizing.maxSize);
779
734
  },
780
- getColumnStart: function getColumnStart(columnId, position) {
781
- var column = instance.getColumn(columnId);
782
-
783
- if (!column) {
784
- throw new Error();
785
- }
786
-
735
+ getStart: function getStart(position) {
787
736
  var columns = !position ? instance.getVisibleLeafColumns() : position === 'left' ? instance.getLeftVisibleLeafColumns() : instance.getRightVisibleLeafColumns();
788
737
  var index = columns.findIndex(function (d) {
789
- return d.id === columnId;
738
+ return d.id === column.id;
790
739
  });
791
740
 
792
741
  if (index > 0) {
793
742
  var prevSiblingColumn = columns[index - 1];
794
- return instance.getColumnStart(prevSiblingColumn.id, position) + prevSiblingColumn.getSize();
743
+ return prevSiblingColumn.getStart(position) + prevSiblingColumn.getSize();
795
744
  }
796
745
 
797
746
  return 0;
798
747
  },
799
- setColumnSizing: function setColumnSizing(updater) {
800
- return instance.options.onColumnSizingChange == null ? void 0 : instance.options.onColumnSizingChange(updater);
801
- },
802
- setColumnSizingInfo: function setColumnSizingInfo(updater) {
803
- return instance.options.onColumnSizingInfoChange == null ? void 0 : instance.options.onColumnSizingInfoChange(updater);
804
- },
805
- resetColumnSizing: function resetColumnSizing() {
806
- var _instance$initialStat;
807
-
808
- instance.setColumnSizing((_instance$initialStat = instance.initialState.columnSizing) != null ? _instance$initialStat : {});
809
- },
810
- resetHeaderSizeInfo: function resetHeaderSizeInfo() {
811
- var _instance$initialStat2;
812
-
813
- instance.setColumnSizingInfo((_instance$initialStat2 = instance.initialState.columnSizingInfo) != null ? _instance$initialStat2 : {});
814
- },
815
- resetColumnSize: function resetColumnSize(columnId) {
748
+ resetSize: function resetSize() {
816
749
  instance.setColumnSizing(function (_ref2) {
817
- _ref2[columnId];
818
- var rest = _objectWithoutPropertiesLoose(_ref2, [columnId].map(_toPropertyKey));
750
+ var _column$id = column.id;
751
+ _ref2[_column$id];
752
+ var rest = _objectWithoutPropertiesLoose(_ref2, [_column$id].map(_toPropertyKey));
819
753
 
820
754
  return rest;
821
755
  });
822
756
  },
823
- resetHeaderSize: function resetHeaderSize(headerId) {
824
- var header = instance.getHeader(headerId);
825
- return instance.resetColumnSize(header.column.id);
826
- },
827
- getHeaderCanResize: function getHeaderCanResize(headerId) {
828
- var header = instance.getHeader(headerId);
829
-
830
- if (!header) {
831
- throw new Error();
832
- }
757
+ getCanResize: function getCanResize() {
758
+ var _column$enableResizin, _instance$options$ena;
833
759
 
834
- return instance.getColumnCanResize(header.column.id);
760
+ return ((_column$enableResizin = column.enableResizing) != null ? _column$enableResizin : true) && ((_instance$options$ena = instance.options.enableColumnResizing) != null ? _instance$options$ena : true);
835
761
  },
836
- getColumnCanResize: function getColumnCanResize(columnId) {
837
- var _ref3, _ref4, _column$enableResizin;
838
-
839
- var column = instance.getColumn(columnId);
840
-
841
- if (!column) {
842
- throw new Error();
843
- }
762
+ getIsResizing: function getIsResizing() {
763
+ return instance.getState().columnSizingInfo.isResizingColumn === column.id;
764
+ }
765
+ };
766
+ },
767
+ createHeader: function createHeader(header, instance) {
768
+ return {
769
+ getSize: function getSize() {
770
+ var sum = 0;
844
771
 
845
- return (_ref3 = (_ref4 = (_column$enableResizin = column.enableResizing) != null ? _column$enableResizin : instance.options.enableColumnResizing) != null ? _ref4 : column.defaultCanResize) != null ? _ref3 : true;
846
- },
847
- getColumnIsResizing: function getColumnIsResizing(columnId) {
848
- var column = instance.getColumn(columnId);
772
+ var recurse = function recurse(header) {
773
+ if (header.subHeaders.length) {
774
+ header.subHeaders.forEach(recurse);
775
+ } else {
776
+ var _header$column$getSiz;
849
777
 
850
- if (!column) {
851
- throw new Error();
852
- }
778
+ sum += (_header$column$getSiz = header.column.getSize()) != null ? _header$column$getSiz : 0;
779
+ }
780
+ };
853
781
 
854
- return instance.getState().columnSizingInfo.isResizingColumn === columnId;
782
+ recurse(header);
783
+ return sum;
855
784
  },
856
- getHeaderIsResizing: function getHeaderIsResizing(headerId) {
857
- var header = instance.getHeader(headerId);
858
-
859
- if (!header) {
860
- throw new Error();
785
+ getStart: function getStart() {
786
+ if (header.index > 0) {
787
+ var prevSiblingHeader = header.headerGroup.headers[header.index - 1];
788
+ return prevSiblingHeader.getStart() + prevSiblingHeader.getSize();
861
789
  }
862
790
 
863
- return instance.getColumnIsResizing(header.column.id);
791
+ return 0;
864
792
  },
865
- getResizeHandler: function getResizeHandler(headerId) {
866
- var header = instance.getHeader(headerId);
793
+ getResizeHandler: function getResizeHandler() {
867
794
  var column = instance.getColumn(header.column.id);
868
795
  var canResize = column.getCanResize();
869
796
  return function (e) {
@@ -879,10 +806,9 @@ var ColumnSizing = {
879
806
  }
880
807
  }
881
808
 
882
- var header = headerId ? instance.getHeader(headerId) : undefined;
883
- var startSize = header ? header.getSize() : column.getSize();
809
+ var startSize = column.getSize();
884
810
  var columnSizingStart = header ? header.getLeafHeaders().map(function (d) {
885
- return [d.column.id, d.getSize()];
811
+ return [d.column.id, d.column.getSize()];
886
812
  }) : [[column.id, column.getSize()]];
887
813
  var clientX = isTouchStartEvent(e) ? Math.round(e.touches[0].clientX) : e.clientX;
888
814
 
@@ -897,9 +823,9 @@ var ColumnSizing = {
897
823
 
898
824
  var deltaOffset = clientXPos - ((_old$startOffset = old == null ? void 0 : old.startOffset) != null ? _old$startOffset : 0);
899
825
  var deltaPercentage = Math.max(deltaOffset / ((_old$startSize = old == null ? void 0 : old.startSize) != null ? _old$startSize : 0), -0.999999);
900
- old.columnSizingStart.forEach(function (_ref5) {
901
- var columnId = _ref5[0],
902
- headerSize = _ref5[1];
826
+ old.columnSizingStart.forEach(function (_ref3) {
827
+ var columnId = _ref3[0],
828
+ headerSize = _ref3[1];
903
829
  newColumnSizing[columnId] = Math.round(Math.max(headerSize + headerSize * deltaPercentage, 0) * 100) / 100;
904
830
  });
905
831
  return _extends({}, old, {
@@ -943,36 +869,11 @@ var ColumnSizing = {
943
869
  onEnd(e.clientX);
944
870
  }
945
871
  };
946
- var touchEvents = {
947
- moveHandler: function moveHandler(e) {
948
- if (e.cancelable) {
949
- e.preventDefault();
950
- e.stopPropagation();
951
- }
952
-
953
- onMove(e.touches[0].clientX);
954
- return false;
955
- },
956
- upHandler: function upHandler(e) {
957
- document.removeEventListener('touchmove', touchEvents.moveHandler);
958
- document.removeEventListener('touchend', touchEvents.upHandler);
959
-
960
- if (e.cancelable) {
961
- e.preventDefault();
962
- e.stopPropagation();
963
- }
964
-
965
- onEnd(e.touches[0].clientX);
966
- }
967
- };
968
872
  var passiveIfSupported = passiveEventSupported() ? {
969
873
  passive: false
970
874
  } : false;
971
875
 
972
- if (isTouchStartEvent(e)) {
973
- document.addEventListener('touchmove', touchEvents.moveHandler, passiveIfSupported);
974
- document.addEventListener('touchend', touchEvents.upHandler, passiveIfSupported);
975
- } else {
876
+ if (isTouchStartEvent(e)) ; else {
976
877
  document.addEventListener('mousemove', mouseEvents.moveHandler, passiveIfSupported);
977
878
  document.addEventListener('mouseup', mouseEvents.upHandler, passiveIfSupported);
978
879
  }
@@ -988,33 +889,53 @@ var ColumnSizing = {
988
889
  });
989
890
  });
990
891
  };
892
+ }
893
+ };
894
+ },
895
+ createInstance: function createInstance(instance) {
896
+ return {
897
+ setColumnSizing: function setColumnSizing(updater) {
898
+ return instance.options.onColumnSizingChange == null ? void 0 : instance.options.onColumnSizingChange(updater);
899
+ },
900
+ setColumnSizingInfo: function setColumnSizingInfo(updater) {
901
+ return instance.options.onColumnSizingInfoChange == null ? void 0 : instance.options.onColumnSizingInfoChange(updater);
902
+ },
903
+ resetColumnSizing: function resetColumnSizing() {
904
+ var _instance$initialStat;
905
+
906
+ instance.setColumnSizing((_instance$initialStat = instance.initialState.columnSizing) != null ? _instance$initialStat : {});
907
+ },
908
+ resetHeaderSizeInfo: function resetHeaderSizeInfo() {
909
+ var _instance$initialStat2;
910
+
911
+ instance.setColumnSizingInfo((_instance$initialStat2 = instance.initialState.columnSizingInfo) != null ? _instance$initialStat2 : {});
991
912
  },
992
913
  getTotalSize: function getTotalSize() {
993
914
  var _instance$getHeaderGr, _instance$getHeaderGr2;
994
915
 
995
916
  return (_instance$getHeaderGr = (_instance$getHeaderGr2 = instance.getHeaderGroups()[0]) == null ? void 0 : _instance$getHeaderGr2.headers.reduce(function (sum, header) {
996
- return sum + header.getSize();
917
+ return sum + header.column.getSize();
997
918
  }, 0)) != null ? _instance$getHeaderGr : 0;
998
919
  },
999
920
  getLeftTotalSize: function getLeftTotalSize() {
1000
921
  var _instance$getLeftHead, _instance$getLeftHead2;
1001
922
 
1002
923
  return (_instance$getLeftHead = (_instance$getLeftHead2 = instance.getLeftHeaderGroups()[0]) == null ? void 0 : _instance$getLeftHead2.headers.reduce(function (sum, header) {
1003
- return sum + header.getSize();
924
+ return sum + header.column.getSize();
1004
925
  }, 0)) != null ? _instance$getLeftHead : 0;
1005
926
  },
1006
927
  getCenterTotalSize: function getCenterTotalSize() {
1007
928
  var _instance$getCenterHe, _instance$getCenterHe2;
1008
929
 
1009
930
  return (_instance$getCenterHe = (_instance$getCenterHe2 = instance.getCenterHeaderGroups()[0]) == null ? void 0 : _instance$getCenterHe2.headers.reduce(function (sum, header) {
1010
- return sum + header.getSize();
931
+ return sum + header.column.getSize();
1011
932
  }, 0)) != null ? _instance$getCenterHe : 0;
1012
933
  },
1013
934
  getRightTotalSize: function getRightTotalSize() {
1014
935
  var _instance$getRightHea, _instance$getRightHea2;
1015
936
 
1016
937
  return (_instance$getRightHea = (_instance$getRightHea2 = instance.getRightHeaderGroups()[0]) == null ? void 0 : _instance$getRightHea2.headers.reduce(function (sum, header) {
1017
- return sum + header.getSize();
938
+ return sum + header.column.getSize();
1018
939
  }, 0)) != null ? _instance$getRightHea : 0;
1019
940
  }
1020
941
  };
@@ -1052,10 +973,10 @@ function isTouchStartEvent(e) {
1052
973
 
1053
974
  //
1054
975
  var Expanding = {
1055
- getInitialState: function getInitialState() {
1056
- return {
976
+ getInitialState: function getInitialState(state) {
977
+ return _extends({
1057
978
  expanded: {}
1058
- };
979
+ }, state);
1059
980
  },
1060
981
  getDefaultOptions: function getDefaultOptions(instance) {
1061
982
  return {
@@ -1085,41 +1006,6 @@ var Expanding = {
1085
1006
  setExpanded: function setExpanded(updater) {
1086
1007
  return instance.options.onExpandedChange == null ? void 0 : instance.options.onExpandedChange(updater);
1087
1008
  },
1088
- toggleRowExpanded: function toggleRowExpanded(rowId, expanded) {
1089
- if (!rowId) return;
1090
- instance.setExpanded(function (old) {
1091
- var _expanded;
1092
-
1093
- var exists = old === true ? true : !!(old != null && old[rowId]);
1094
- var oldExpanded = {};
1095
-
1096
- if (old === true) {
1097
- Object.keys(instance.getRowModel().rowsById).forEach(function (rowId) {
1098
- oldExpanded[rowId] = true;
1099
- });
1100
- } else {
1101
- oldExpanded = old;
1102
- }
1103
-
1104
- expanded = (_expanded = expanded) != null ? _expanded : !exists;
1105
-
1106
- if (!exists && expanded) {
1107
- var _extends2;
1108
-
1109
- return _extends({}, oldExpanded, (_extends2 = {}, _extends2[rowId] = true, _extends2));
1110
- }
1111
-
1112
- if (exists && !expanded) {
1113
- var _oldExpanded = oldExpanded;
1114
- _oldExpanded[rowId];
1115
- var rest = _objectWithoutPropertiesLoose(_oldExpanded, [rowId].map(_toPropertyKey));
1116
-
1117
- return rest;
1118
- }
1119
-
1120
- return old;
1121
- });
1122
- },
1123
1009
  toggleAllRowsExpanded: function toggleAllRowsExpanded(expanded) {
1124
1010
  if (expanded != null ? expanded : !instance.getIsAllRowsExpanded()) {
1125
1011
  instance.setExpanded(true);
@@ -1132,55 +1018,11 @@ var Expanding = {
1132
1018
 
1133
1019
  instance.setExpanded((_instance$initialStat = (_instance$initialStat2 = instance.initialState) == null ? void 0 : _instance$initialStat2.expanded) != null ? _instance$initialStat : {});
1134
1020
  },
1135
- getIsRowExpanded: function getIsRowExpanded(rowId) {
1136
- var _instance$options$get;
1137
-
1138
- var row = instance.getPreExpandedRowModel().rowsById[rowId];
1139
-
1140
- if (!row) {
1141
- if (process.env.NODE_ENV !== 'production') {
1142
- console.warn("[Table] getIsRowExpanded: no row found with id " + rowId);
1143
- }
1144
-
1145
- throw new Error();
1146
- }
1147
-
1148
- var expanded = instance.getState().expanded;
1149
- return !!((_instance$options$get = instance.options.getIsRowExpanded == null ? void 0 : instance.options.getIsRowExpanded(row)) != null ? _instance$options$get : expanded === true || (expanded == null ? void 0 : expanded[rowId]));
1150
- },
1151
- getRowCanExpand: function getRowCanExpand(rowId) {
1152
- var _ref, _ref2, _instance$options$get2, _row$subRows;
1153
-
1154
- var row = instance.getRow(rowId);
1155
-
1156
- if (!row) {
1157
- if (process.env.NODE_ENV !== 'production') {
1158
- console.warn("[Table] getRowCanExpand: no row found with id " + rowId);
1159
- }
1160
-
1161
- throw new Error();
1162
- }
1163
-
1164
- return (_ref = (_ref2 = (_instance$options$get2 = instance.options.getRowCanExpand == null ? void 0 : instance.options.getRowCanExpand(row)) != null ? _instance$options$get2 : instance.options.enableExpanded) != null ? _ref2 : instance.options.defaultCanExpand) != null ? _ref : !!((_row$subRows = row.subRows) != null && _row$subRows.length);
1165
- },
1166
1021
  getCanSomeRowsExpand: function getCanSomeRowsExpand() {
1167
- return Object.keys(instance.getRowModel().rowsById).some(function (id) {
1168
- return instance.getRowCanExpand(id);
1022
+ return instance.getRowModel().flatRows.some(function (row) {
1023
+ return row.getCanExpand();
1169
1024
  });
1170
1025
  },
1171
- getToggleExpandedHandler: function getToggleExpandedHandler(rowId) {
1172
- var row = instance.getRow(rowId);
1173
-
1174
- if (!row) {
1175
- return;
1176
- }
1177
-
1178
- var canExpand = instance.getRowCanExpand(rowId);
1179
- return function () {
1180
- if (!canExpand) return;
1181
- instance.toggleRowExpanded(rowId);
1182
- };
1183
- },
1184
1026
  getToggleAllRowsExpandedHandler: function getToggleAllRowsExpandedHandler() {
1185
1027
  return function (e) {
1186
1028
  e.persist == null ? void 0 : e.persist();
@@ -1199,8 +1041,8 @@ var Expanding = {
1199
1041
  } // If any row is not expanded, return false
1200
1042
 
1201
1043
 
1202
- if (Object.keys(instance.getRowModel().rowsById).some(function (id) {
1203
- return !instance.getIsRowExpanded(id);
1044
+ if (instance.getRowModel().flatRows.some(function (row) {
1045
+ return row.getIsExpanded();
1204
1046
  })) {
1205
1047
  return false;
1206
1048
  } // They must all be expanded :shrug:
@@ -1236,165 +1078,141 @@ var Expanding = {
1236
1078
  createRow: function createRow(row, instance) {
1237
1079
  return {
1238
1080
  toggleExpanded: function toggleExpanded(expanded) {
1239
- return void instance.toggleRowExpanded(row.id, expanded);
1081
+ instance.setExpanded(function (old) {
1082
+ var _expanded;
1083
+
1084
+ var exists = old === true ? true : !!(old != null && old[row.id]);
1085
+ var oldExpanded = {};
1086
+
1087
+ if (old === true) {
1088
+ Object.keys(instance.getRowModel().rowsById).forEach(function (rowId) {
1089
+ oldExpanded[rowId] = true;
1090
+ });
1091
+ } else {
1092
+ oldExpanded = old;
1093
+ }
1094
+
1095
+ expanded = (_expanded = expanded) != null ? _expanded : !exists;
1096
+
1097
+ if (!exists && expanded) {
1098
+ var _extends2;
1099
+
1100
+ return _extends({}, oldExpanded, (_extends2 = {}, _extends2[row.id] = true, _extends2));
1101
+ }
1102
+
1103
+ if (exists && !expanded) {
1104
+ var _oldExpanded = oldExpanded,
1105
+ _row$id = row.id;
1106
+ _oldExpanded[_row$id];
1107
+ var rest = _objectWithoutPropertiesLoose(_oldExpanded, [_row$id].map(_toPropertyKey));
1108
+
1109
+ return rest;
1110
+ }
1111
+
1112
+ return old;
1113
+ });
1240
1114
  },
1241
1115
  getIsExpanded: function getIsExpanded() {
1242
- return instance.getIsRowExpanded(row.id);
1116
+ var _instance$options$get;
1117
+
1118
+ var expanded = instance.getState().expanded;
1119
+ return !!((_instance$options$get = instance.options.getIsRowExpanded == null ? void 0 : instance.options.getIsRowExpanded(row)) != null ? _instance$options$get : expanded === true || (expanded == null ? void 0 : expanded[row.id]));
1243
1120
  },
1244
1121
  getCanExpand: function getCanExpand() {
1245
- return row.subRows && !!row.subRows.length;
1122
+ var _instance$options$get2, _instance$options$ena, _row$subRows;
1123
+
1124
+ return ((_instance$options$get2 = instance.options.getRowCanExpand == null ? void 0 : instance.options.getRowCanExpand(row)) != null ? _instance$options$get2 : true) && ((_instance$options$ena = instance.options.enableExpanding) != null ? _instance$options$ena : true) && !!((_row$subRows = row.subRows) != null && _row$subRows.length);
1246
1125
  },
1247
1126
  getToggleExpandedHandler: function getToggleExpandedHandler() {
1248
- return instance.getToggleExpandedHandler(row.id);
1127
+ var canExpand = row.getCanExpand();
1128
+ return function () {
1129
+ if (!canExpand) return;
1130
+ row.toggleExpanded();
1131
+ };
1249
1132
  }
1250
1133
  };
1251
1134
  }
1252
1135
  };
1253
1136
 
1254
- var filterFns = {
1255
- includesString: includesString,
1256
- includesStringSensitive: includesStringSensitive,
1257
- equalsString: equalsString,
1258
- equalsStringSensitive: equalsStringSensitive,
1259
- arrIncludes: arrIncludes,
1260
- arrIncludesAll: arrIncludesAll,
1261
- arrIncludesSome: arrIncludesSome,
1262
- equals: equals,
1263
- weakEquals: weakEquals,
1264
- betweenNumberRange: betweenNumberRange
1137
+ var includesString = function includesString(row, columnId, filterValue) {
1138
+ var search = filterValue.toLowerCase();
1139
+ return row.values[columnId].toLowerCase().includes(search);
1265
1140
  };
1266
1141
 
1267
- function includesString(rows, columnIds, filterValue) {
1268
- var search = String(filterValue).toLowerCase();
1269
- rows = rows.filter(function (row) {
1270
- return columnIds.some(function (id) {
1271
- return String(row.values[id]).toLowerCase().includes(search);
1272
- });
1273
- });
1274
- return rows;
1275
- }
1276
-
1277
1142
  includesString.autoRemove = function (val) {
1278
1143
  return testFalsey(val);
1279
1144
  };
1280
1145
 
1281
- function includesStringSensitive(rows, columnIds, filterValue) {
1282
- var search = String(filterValue);
1283
- rows = rows.filter(function (row) {
1284
- return columnIds.some(function (id) {
1285
- return String(row.values[id]).includes(search);
1286
- });
1287
- });
1288
- return rows;
1289
- }
1146
+ var includesStringSensitive = function includesStringSensitive(row, columnId, filterValue) {
1147
+ return row.values[columnId].includes(filterValue);
1148
+ };
1290
1149
 
1291
1150
  includesStringSensitive.autoRemove = function (val) {
1292
1151
  return testFalsey(val);
1293
1152
  };
1294
1153
 
1295
- function equalsString(rows, columnIds, filterValue) {
1296
- var search = String(filterValue).toLowerCase();
1297
- return rows.filter(function (row) {
1298
- return columnIds.some(function (id) {
1299
- var rowValue = row.values[id];
1300
- return rowValue !== undefined ? String(rowValue).toLowerCase() === search : true;
1301
- });
1302
- });
1303
- }
1154
+ var equalsString = function equalsString(row, columnId, filterValue) {
1155
+ return row.values[columnId].toLowerCase() === filterValue.toLowerCase();
1156
+ };
1304
1157
 
1305
1158
  equalsString.autoRemove = function (val) {
1306
1159
  return testFalsey(val);
1307
1160
  };
1308
1161
 
1309
- function equalsStringSensitive(rows, columnIds, filterValue) {
1310
- var search = String(filterValue);
1311
- return rows.filter(function (row) {
1312
- return columnIds.some(function (id) {
1313
- var rowValue = row.values[id];
1314
- return rowValue !== undefined ? String(rowValue) === search : true;
1315
- });
1316
- });
1317
- }
1318
-
1319
- equalsStringSensitive.autoRemove = function (val) {
1320
- return testFalsey(val);
1162
+ var arrIncludes = function arrIncludes(row, columnId, filterValue) {
1163
+ return row.values[columnId].includes(filterValue);
1321
1164
  };
1322
1165
 
1323
- function arrIncludes(rows, columnIds, filterValue) {
1324
- return rows.filter(function (row) {
1325
- return columnIds.some(function (id) {
1326
- var rowValue = row.values[id];
1327
- return rowValue.includes(filterValue);
1328
- });
1329
- });
1330
- }
1331
-
1332
1166
  arrIncludes.autoRemove = function (val) {
1333
1167
  return testFalsey(val) || !(val != null && val.length);
1334
1168
  };
1335
1169
 
1336
- function arrIncludesAll(rows, columnIds, filterValue) {
1337
- return rows.filter(function (row) {
1338
- return columnIds.some(function (id) {
1339
- var rowValue = row.values[id];
1340
- return rowValue && rowValue.length && filterValue.every(function (val) {
1341
- return rowValue.includes(val);
1342
- });
1343
- });
1170
+ var arrIncludesAll = function arrIncludesAll(row, columnId, filterValue) {
1171
+ return !filterValue.some(function (val) {
1172
+ return !row.values[columnId].includes(val);
1344
1173
  });
1345
- }
1174
+ };
1346
1175
 
1347
1176
  arrIncludesAll.autoRemove = function (val) {
1348
1177
  return testFalsey(val) || !(val != null && val.length);
1349
1178
  };
1350
1179
 
1351
- function arrIncludesSome(rows, columnIds, filterValue) {
1352
- return rows.filter(function (row) {
1353
- return columnIds.some(function (id) {
1354
- var rowValue = row.values[id];
1355
- return rowValue && rowValue.length && filterValue.some(function (val) {
1356
- return rowValue.includes(val);
1357
- });
1358
- });
1180
+ var arrIncludesSome = function arrIncludesSome(row, columnId, filterValue) {
1181
+ return filterValue.some(function (val) {
1182
+ return row.values[columnId].includes(val);
1359
1183
  });
1360
- }
1184
+ };
1361
1185
 
1362
1186
  arrIncludesSome.autoRemove = function (val) {
1363
1187
  return testFalsey(val) || !(val != null && val.length);
1364
1188
  };
1365
1189
 
1366
- function equals(rows, columnIds, filterValue) {
1367
- return rows.filter(function (row) {
1368
- return columnIds.some(function (id) {
1369
- var rowValue = row.values[id];
1370
- return rowValue === filterValue;
1371
- });
1372
- });
1373
- }
1190
+ var equals = function equals(row, columnId, filterValue) {
1191
+ return row.values[columnId] === filterValue;
1192
+ };
1374
1193
 
1375
1194
  equals.autoRemove = function (val) {
1376
1195
  return testFalsey(val);
1377
1196
  };
1378
1197
 
1379
- function weakEquals(rows, columnIds, filterValue) {
1380
- return rows.filter(function (row) {
1381
- return columnIds.some(function (id) {
1382
- var rowValue = row.values[id]; // eslint-disable-next-line eqeqeq
1383
-
1384
- return rowValue == filterValue;
1385
- });
1386
- });
1387
- }
1198
+ var weakEquals = function weakEquals(row, columnId, filterValue) {
1199
+ return row.values[columnId] == filterValue;
1200
+ };
1388
1201
 
1389
1202
  weakEquals.autoRemove = function (val) {
1390
1203
  return testFalsey(val);
1391
1204
  };
1392
1205
 
1393
- function betweenNumberRange(rows, columnIds, filterValue) {
1394
- var _ref = filterValue || [],
1395
- unsafeMin = _ref[0],
1396
- unsafeMax = _ref[1];
1206
+ var inNumberRange = function inNumberRange(row, columnId, filterValue) {
1207
+ var min = filterValue[0],
1208
+ max = filterValue[1];
1209
+ var rowValue = row.values[columnId];
1210
+ return rowValue >= min && rowValue <= max;
1211
+ };
1397
1212
 
1213
+ inNumberRange.resolveFilterValue = function (val) {
1214
+ var unsafeMin = val[0],
1215
+ unsafeMax = val[1];
1398
1216
  var parsedMin = typeof unsafeMin !== 'number' ? parseFloat(unsafeMin) : unsafeMin;
1399
1217
  var parsedMax = typeof unsafeMax !== 'number' ? parseFloat(unsafeMax) : unsafeMax;
1400
1218
  var min = unsafeMin === null || Number.isNaN(parsedMin) ? -Infinity : parsedMin;
@@ -1406,23 +1224,134 @@ function betweenNumberRange(rows, columnIds, filterValue) {
1406
1224
  max = temp;
1407
1225
  }
1408
1226
 
1409
- return rows.filter(function (row) {
1410
- return columnIds.some(function (id) {
1411
- var rowValue = row.values[id];
1412
- return rowValue >= min && rowValue <= max;
1413
- });
1414
- });
1415
- }
1227
+ return [min, max];
1228
+ };
1416
1229
 
1417
- betweenNumberRange.autoRemove = function (val) {
1230
+ inNumberRange.autoRemove = function (val) {
1418
1231
  return testFalsey(val) || testFalsey(val[0]) && testFalsey(val[1]);
1419
- }; // Utils
1232
+ }; // Export
1420
1233
 
1421
1234
 
1235
+ var filterFns = {
1236
+ includesString: includesString,
1237
+ includesStringSensitive: includesStringSensitive,
1238
+ equalsString: equalsString,
1239
+ arrIncludes: arrIncludes,
1240
+ arrIncludesAll: arrIncludesAll,
1241
+ arrIncludesSome: arrIncludesSome,
1242
+ equals: equals,
1243
+ weakEquals: weakEquals,
1244
+ inNumberRange: inNumberRange
1245
+ };
1246
+
1247
+ // Utils
1422
1248
  function testFalsey(val) {
1423
1249
  return val === undefined || val === null || val === '';
1424
1250
  }
1425
1251
 
1252
+ function filterRows(rows, columnIds, instance) {
1253
+ var filterRowImpl = function filterRowImpl(rowsToFilter) {
1254
+ // Horizontally filter rows through each column
1255
+ return rowsToFilter.filter(function (row) {
1256
+ for (var i = 0; i < columnIds.length; i++) {
1257
+ if (row.columnFilterMap[columnIds[i]] === false) {
1258
+ return false;
1259
+ }
1260
+ }
1261
+
1262
+ return true;
1263
+ });
1264
+ };
1265
+
1266
+ if (instance.options.filterFromLeafRows) {
1267
+ return filterRowModelFromLeafs(rows, filterRowImpl, instance);
1268
+ }
1269
+
1270
+ return filterRowModelFromRoot(rows, filterRowImpl, instance);
1271
+ }
1272
+ function filterRowModelFromLeafs(rowsToFilter, filterRows, instance) {
1273
+ var newFilteredFlatRows = [];
1274
+ var newFilteredRowsById = {};
1275
+
1276
+ var recurseFilterRows = function recurseFilterRows(rowsToFilter, depth) {
1277
+ if (depth === void 0) {
1278
+ depth = 0;
1279
+ }
1280
+
1281
+ rowsToFilter = rowsToFilter.slice(); // Filter from children up first
1282
+
1283
+ for (var i = 0; i < rowsToFilter.length; i++) {
1284
+ var _row$subRows;
1285
+
1286
+ var row = rowsToFilter[i];
1287
+
1288
+ if (!((_row$subRows = row.subRows) != null && _row$subRows.length)) {
1289
+ continue;
1290
+ }
1291
+
1292
+ rowsToFilter[i] = instance.createRow(row.id, row.original, row.index, row.depth, row.values);
1293
+ rowsToFilter[i].subRows = recurseFilterRows(row.subRows, depth + 1);
1294
+
1295
+ if (!rowsToFilter[i].subRows.length) {
1296
+ rowsToFilter.splice(i, 1);
1297
+ i--;
1298
+ }
1299
+ }
1300
+
1301
+ rowsToFilter = filterRows(rowsToFilter, depth); // Apply the filter to any subRows
1302
+
1303
+ rowsToFilter.forEach(function (row) {
1304
+ newFilteredFlatRows.push(row);
1305
+ newFilteredRowsById[row.id] = row;
1306
+ });
1307
+ return rowsToFilter;
1308
+ };
1309
+
1310
+ return {
1311
+ rows: recurseFilterRows(rowsToFilter),
1312
+ flatRows: newFilteredFlatRows,
1313
+ rowsById: newFilteredRowsById
1314
+ };
1315
+ }
1316
+ function filterRowModelFromRoot(rowsToFilter, filterRows, instance) {
1317
+ var newFilteredFlatRows = [];
1318
+ var newFilteredRowsById = {}; // Filters top level and nested rows
1319
+
1320
+ var recurseFilterRows = function recurseFilterRows(rowsToFilter, depth) {
1321
+ if (depth === void 0) {
1322
+ depth = 0;
1323
+ }
1324
+
1325
+ // Filter from parents downward first
1326
+ rowsToFilter = filterRows(rowsToFilter, depth); // Apply the filter to any subRows
1327
+
1328
+ for (var i = 0; i < rowsToFilter.length; i++) {
1329
+ var _row$subRows2;
1330
+
1331
+ var row = rowsToFilter[i];
1332
+ newFilteredFlatRows.push(row);
1333
+ newFilteredRowsById[row.id] = row;
1334
+
1335
+ if (!((_row$subRows2 = row.subRows) != null && _row$subRows2.length)) {
1336
+ rowsToFilter.splice(i, 1);
1337
+ i--;
1338
+ continue;
1339
+ }
1340
+
1341
+ rowsToFilter[i] = instance.createRow(row.id, row.original, row.index, row.depth, row.values);
1342
+ rowsToFilter[i].subRows = recurseFilterRows(row.subRows, depth + 1);
1343
+ }
1344
+
1345
+ return rowsToFilter;
1346
+ };
1347
+
1348
+ return {
1349
+ rows: recurseFilterRows(rowsToFilter),
1350
+ flatRows: newFilteredFlatRows,
1351
+ rowsById: newFilteredRowsById
1352
+ };
1353
+ }
1354
+
1426
1355
  //
1427
1356
  var Filters = {
1428
1357
  getDefaultColumn: function getDefaultColumn() {
@@ -1430,13 +1359,13 @@ var Filters = {
1430
1359
  filterFn: 'auto'
1431
1360
  };
1432
1361
  },
1433
- getInitialState: function getInitialState() {
1434
- return {
1362
+ getInitialState: function getInitialState(state) {
1363
+ return _extends({
1435
1364
  columnFilters: [],
1436
1365
  globalFilter: undefined,
1437
1366
  columnFiltersProgress: 1,
1438
1367
  globalFilterProgress: 1
1439
- };
1368
+ }, state);
1440
1369
  },
1441
1370
  getDefaultOptions: function getDefaultOptions(instance) {
1442
1371
  return {
@@ -1444,7 +1373,7 @@ var Filters = {
1444
1373
  onGlobalFilterChange: makeStateUpdater('globalFilter', instance),
1445
1374
  filterFromLeafRows: true,
1446
1375
  globalFilterFn: 'auto',
1447
- getColumnCanGlobalFilterFn: function getColumnCanGlobalFilterFn(column) {
1376
+ getColumnCanGlobalFilter: function getColumnCanGlobalFilter(column) {
1448
1377
  var _instance$getCoreRowM, _instance$getCoreRowM2;
1449
1378
 
1450
1379
  var value = (_instance$getCoreRowM = instance.getCoreRowModel().flatRows[0]) == null ? void 0 : (_instance$getCoreRowM2 = _instance$getCoreRowM.getAllCellsByColumnId()[column.id]) == null ? void 0 : _instance$getCoreRowM2.value;
@@ -1453,93 +1382,18 @@ var Filters = {
1453
1382
  };
1454
1383
  },
1455
1384
  createColumn: function createColumn(column, instance) {
1456
- var getFacetInfo = memo(function () {
1457
- return [column.getPreFilteredRows()];
1458
- }, function (rows) {
1459
- var _rows$0$values$column, _rows$, _rows$0$values$column2, _rows$2;
1460
-
1461
- if (rows === void 0) {
1462
- rows = [];
1463
- }
1464
-
1465
- var preFilteredUniqueValues = new Map();
1466
- var preFilteredMinMaxValues = [(_rows$0$values$column = (_rows$ = rows[0]) == null ? void 0 : _rows$.values[column.id]) != null ? _rows$0$values$column : null, (_rows$0$values$column2 = (_rows$2 = rows[0]) == null ? void 0 : _rows$2.values[column.id]) != null ? _rows$0$values$column2 : null];
1467
-
1468
- for (var i = 0; i < rows.length; i++) {
1469
- var _rows$i;
1470
-
1471
- var _value = (_rows$i = rows[i]) == null ? void 0 : _rows$i.values[column.id];
1472
-
1473
- if (preFilteredUniqueValues.has(_value)) {
1474
- var _preFilteredUniqueVal;
1475
-
1476
- preFilteredUniqueValues.set(_value, ((_preFilteredUniqueVal = preFilteredUniqueValues.get(_value)) != null ? _preFilteredUniqueVal : 0) + 1);
1477
- } else {
1478
- preFilteredUniqueValues.set(_value, 1);
1479
- }
1480
-
1481
- if (_value < preFilteredMinMaxValues[0]) {
1482
- preFilteredMinMaxValues[0] = _value;
1483
- } else if (_value > preFilteredMinMaxValues[1]) {
1484
- preFilteredMinMaxValues[1] = _value;
1485
- }
1486
- }
1487
-
1488
- return {
1489
- preFilteredUniqueValues: preFilteredUniqueValues,
1490
- preFilteredMinMaxValues: preFilteredMinMaxValues
1491
- };
1492
- }, {
1493
- key: 'column.getFacetInfo',
1494
- debug: function debug() {
1495
- var _instance$options$deb;
1496
-
1497
- return (_instance$options$deb = instance.options.debugAll) != null ? _instance$options$deb : instance.options.debugColumns;
1498
- }
1499
- });
1500
1385
  return {
1501
1386
  filterFn: column.filterFn,
1502
- getCanColumnFilter: function getCanColumnFilter() {
1503
- return instance.getColumnCanColumnFilter(column.id);
1504
- },
1505
- getCanGlobalFilter: function getCanGlobalFilter() {
1506
- return instance.getColumnCanGlobalFilter(column.id);
1507
- },
1508
- getColumnFilterIndex: function getColumnFilterIndex() {
1509
- return instance.getColumnFilterIndex(column.id);
1510
- },
1511
- getColumnIsFiltered: function getColumnIsFiltered() {
1512
- return instance.getColumnIsFiltered(column.id);
1513
- },
1514
- getColumnFilterValue: function getColumnFilterValue() {
1515
- return instance.getColumnFilterValue(column.id);
1516
- },
1517
- setColumnFilterValue: function setColumnFilterValue(val) {
1518
- return instance.setColumnFilterValue(column.id, val);
1519
- },
1520
- getPreFilteredUniqueValues: function getPreFilteredUniqueValues() {
1521
- return getFacetInfo().preFilteredUniqueValues;
1522
- },
1523
- getPreFilteredMinMaxValues: function getPreFilteredMinMaxValues() {
1524
- return getFacetInfo().preFilteredMinMaxValues;
1525
- },
1526
- getPreFilteredRows: function getPreFilteredRows() {
1527
- return undefined;
1528
- }
1529
- };
1530
- },
1531
- createInstance: function createInstance(instance) {
1532
- return {
1533
- getColumnAutoFilterFn: function getColumnAutoFilterFn(columnId) {
1387
+ getAutoFilterFn: function getAutoFilterFn() {
1534
1388
  var firstRow = instance.getCoreRowModel().flatRows[0];
1535
- var value = firstRow == null ? void 0 : firstRow.values[columnId];
1389
+ var value = firstRow == null ? void 0 : firstRow.values[column.id];
1536
1390
 
1537
1391
  if (typeof value === 'string') {
1538
1392
  return filterFns.includesString;
1539
1393
  }
1540
1394
 
1541
1395
  if (typeof value === 'number') {
1542
- return filterFns.betweenNumberRange;
1396
+ return filterFns.inNumberRange;
1543
1397
  }
1544
1398
 
1545
1399
  if (value !== null && typeof value === 'object') {
@@ -1552,115 +1406,44 @@ var Filters = {
1552
1406
 
1553
1407
  return filterFns.weakEquals;
1554
1408
  },
1555
- getGlobalAutoFilterFn: function getGlobalAutoFilterFn() {
1556
- return filterFns.includesString;
1557
- },
1558
- getColumnFilterFn: function getColumnFilterFn(columnId) {
1409
+ getFilterFn: function getFilterFn() {
1559
1410
  var _ref;
1560
1411
 
1561
- var column = instance.getColumn(columnId);
1562
1412
  var userFilterFns = instance.options.filterFns;
1563
-
1564
- if (!column) {
1565
- throw new Error();
1566
- }
1567
-
1568
- return isFunction(column.filterFn) ? column.filterFn : column.filterFn === 'auto' ? instance.getColumnAutoFilterFn(columnId) : (_ref = userFilterFns == null ? void 0 : userFilterFns[column.filterFn]) != null ? _ref : filterFns[column.filterFn];
1413
+ return isFunction(column.filterFn) ? column.filterFn : column.filterFn === 'auto' ? column.getAutoFilterFn() : (_ref = userFilterFns == null ? void 0 : userFilterFns[column.filterFn]) != null ? _ref : filterFns[column.filterFn];
1569
1414
  },
1570
- getGlobalFilterFn: function getGlobalFilterFn() {
1571
- var _ref2;
1415
+ getCanFilter: function getCanFilter() {
1416
+ var _column$enableColumnF, _instance$options$ena, _instance$options$ena2;
1572
1417
 
1573
- var _instance$options = instance.options,
1574
- userFilterFns = _instance$options.filterFns,
1575
- globalFilterFn = _instance$options.globalFilterFn;
1576
- return isFunction(globalFilterFn) ? globalFilterFn : globalFilterFn === 'auto' ? instance.getGlobalAutoFilterFn() : (_ref2 = userFilterFns == null ? void 0 : userFilterFns[globalFilterFn]) != null ? _ref2 : filterFns[globalFilterFn];
1418
+ return ((_column$enableColumnF = column.enableColumnFilter) != null ? _column$enableColumnF : true) && ((_instance$options$ena = instance.options.enableColumnFilters) != null ? _instance$options$ena : true) && ((_instance$options$ena2 = instance.options.enableFilters) != null ? _instance$options$ena2 : true) && !!column.accessorFn;
1577
1419
  },
1578
- setColumnFilters: function setColumnFilters(updater) {
1579
- var leafColumns = instance.getAllLeafColumns();
1580
-
1581
- var updateFn = function updateFn(old) {
1582
- var _functionalUpdate;
1583
-
1584
- return (_functionalUpdate = functionalUpdate(updater, old)) == null ? void 0 : _functionalUpdate.filter(function (filter) {
1585
- var column = leafColumns.find(function (d) {
1586
- return d.id === filter.id;
1587
- });
1588
-
1589
- if (column) {
1590
- var filterFn = instance.getColumnFilterFn(column.id);
1591
-
1592
- if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {
1593
- return false;
1594
- }
1595
- }
1596
-
1597
- return true;
1598
- });
1599
- };
1600
-
1601
- instance.options.onColumnFiltersChange == null ? void 0 : instance.options.onColumnFiltersChange(updateFn);
1602
- },
1603
- setGlobalFilter: function setGlobalFilter(updater) {
1604
- instance.options.onGlobalFilterChange == null ? void 0 : instance.options.onGlobalFilterChange(updater);
1605
- },
1606
- resetGlobalFilter: function resetGlobalFilter() {
1607
- instance.setGlobalFilter(instance.initialState.globalFilter);
1608
- },
1609
- getColumnCanColumnFilter: function getColumnCanColumnFilter(columnId) {
1610
- var _ref3, _ref4, _ref5, _ref6, _ref7, _column$enableAllFilt;
1611
-
1612
- var column = instance.getColumn(columnId);
1613
-
1614
- if (!column) {
1615
- throw new Error();
1616
- }
1617
-
1618
- return (_ref3 = (_ref4 = (_ref5 = (_ref6 = (_ref7 = (_column$enableAllFilt = column.enableAllFilters) != null ? _column$enableAllFilt : column.enableColumnFilter) != null ? _ref7 : instance.options.enableFilters) != null ? _ref6 : instance.options.enableColumnFilters) != null ? _ref5 : column.defaultCanColumnFilter) != null ? _ref4 : column.defaultCanFilter) != null ? _ref3 : !!column.accessorFn;
1619
- },
1620
- getColumnCanGlobalFilter: function getColumnCanGlobalFilter(columnId) {
1621
- var _ref8, _ref9, _ref10, _ref11, _ref12, _ref13, _instance$options$ena;
1622
-
1623
- var column = instance.getColumn(columnId);
1624
-
1625
- if (!column) {
1626
- throw new Error();
1627
- }
1420
+ getCanGlobalFilter: function getCanGlobalFilter() {
1421
+ var _column$enableGlobalF, _instance$options$ena3, _instance$options$ena4, _instance$options$get;
1628
1422
 
1629
- return (_ref8 = ((_ref9 = (_ref10 = (_ref11 = (_ref12 = (_ref13 = (_instance$options$ena = instance.options.enableFilters) != null ? _instance$options$ena : instance.options.enableGlobalFilter) != null ? _ref13 : column.enableAllFilters) != null ? _ref12 : column.enableGlobalFilter) != null ? _ref11 : column.defaultCanGlobalFilter) != null ? _ref10 : column.defaultCanFilter) != null ? _ref9 : !!column.accessorFn) && (instance.options.getColumnCanGlobalFilterFn == null ? void 0 : instance.options.getColumnCanGlobalFilterFn(column))) != null ? _ref8 : true;
1423
+ return ((_column$enableGlobalF = column.enableGlobalFilter) != null ? _column$enableGlobalF : true) && ((_instance$options$ena3 = instance.options.enableGlobalFilter) != null ? _instance$options$ena3 : true) && ((_instance$options$ena4 = instance.options.enableFilters) != null ? _instance$options$ena4 : true) && ((_instance$options$get = instance.options.getColumnCanGlobalFilter == null ? void 0 : instance.options.getColumnCanGlobalFilter(column)) != null ? _instance$options$get : true) && !!column.accessorFn;
1630
1424
  },
1631
- getColumnIsFiltered: function getColumnIsFiltered(columnId) {
1632
- return instance.getColumnFilterIndex(columnId) > -1;
1425
+ getIsFiltered: function getIsFiltered() {
1426
+ return column.getFilterIndex() > -1;
1633
1427
  },
1634
- getColumnFilterValue: function getColumnFilterValue(columnId) {
1428
+ getFilterValue: function getFilterValue() {
1635
1429
  var _instance$getState$co, _instance$getState$co2;
1636
1430
 
1637
1431
  return (_instance$getState$co = instance.getState().columnFilters) == null ? void 0 : (_instance$getState$co2 = _instance$getState$co.find(function (d) {
1638
- return d.id === columnId;
1432
+ return d.id === column.id;
1639
1433
  })) == null ? void 0 : _instance$getState$co2.value;
1640
1434
  },
1641
- getColumnFilterIndex: function getColumnFilterIndex(columnId) {
1435
+ getFilterIndex: function getFilterIndex() {
1642
1436
  var _instance$getState$co3, _instance$getState$co4;
1643
1437
 
1644
1438
  return (_instance$getState$co3 = (_instance$getState$co4 = instance.getState().columnFilters) == null ? void 0 : _instance$getState$co4.findIndex(function (d) {
1645
- return d.id === columnId;
1439
+ return d.id === column.id;
1646
1440
  })) != null ? _instance$getState$co3 : -1;
1647
1441
  },
1648
- setColumnFilterValue: function setColumnFilterValue(columnId, value) {
1649
- if (!columnId) return;
1442
+ setFilterValue: function setFilterValue(value) {
1650
1443
  instance.setColumnFilters(function (old) {
1651
- var column = instance.getColumn(columnId);
1652
-
1653
- if (!column) {
1654
- if (process.env.NODE_ENV !== 'production') {
1655
- console.warn("Table: Could not find a column with id: " + columnId);
1656
- }
1657
-
1658
- throw new Error();
1659
- }
1660
-
1661
- var filterFn = instance.getColumnFilterFn(column.id);
1444
+ var filterFn = column.getFilterFn();
1662
1445
  var previousfilter = old == null ? void 0 : old.find(function (d) {
1663
- return d.id === columnId;
1446
+ return d.id === column.id;
1664
1447
  });
1665
1448
  var newFilter = functionalUpdate(value, previousfilter ? previousfilter.value : undefined); //
1666
1449
 
@@ -1668,12 +1451,12 @@ var Filters = {
1668
1451
  var _old$filter;
1669
1452
 
1670
1453
  return (_old$filter = old == null ? void 0 : old.filter(function (d) {
1671
- return d.id !== columnId;
1454
+ return d.id !== column.id;
1672
1455
  })) != null ? _old$filter : [];
1673
1456
  }
1674
1457
 
1675
1458
  var newFilterObj = {
1676
- id: columnId,
1459
+ id: column.id,
1677
1460
  value: newFilter
1678
1461
  };
1679
1462
 
@@ -1681,7 +1464,7 @@ var Filters = {
1681
1464
  var _old$map;
1682
1465
 
1683
1466
  return (_old$map = old == null ? void 0 : old.map(function (d) {
1684
- if (d.id === columnId) {
1467
+ if (d.id === column.id) {
1685
1468
  return newFilterObj;
1686
1469
  }
1687
1470
 
@@ -1696,45 +1479,209 @@ var Filters = {
1696
1479
  return [newFilterObj];
1697
1480
  });
1698
1481
  },
1482
+ getFacetedRowModel: memo(function () {
1483
+ return [instance.getPreFilteredRowModel(), instance.getState().columnFilters, instance.getState().globalFilter, // Include this to force the filtered facet info to be calculated
1484
+ instance.getFilteredRowModel()];
1485
+ }, function (rowModel, columnFilters, globalFilter, _) {
1486
+ if (!(columnFilters != null && columnFilters.length) && !globalFilter) {
1487
+ return rowModel;
1488
+ }
1489
+
1490
+ return filterRows(rowModel.rows, [].concat(columnFilters.map(function (d) {
1491
+ return d.id;
1492
+ }).filter(function (d) {
1493
+ return d !== column.id;
1494
+ }), [globalFilter ? '__global__' : undefined]).filter(Boolean), instance);
1495
+ }, {
1496
+ key: process.env.NODE_ENV === 'production' && 'getFacetedRowModel_' + column.id,
1497
+ debug: function debug() {
1498
+ var _instance$options$deb;
1499
+
1500
+ return (_instance$options$deb = instance.options.debugAll) != null ? _instance$options$deb : instance.options.debugColumns;
1501
+ }
1502
+ }),
1503
+ getFacetedUniqueValues: memo(function () {
1504
+ return [column.getFacetedRowModel()];
1505
+ }, function (facetedRowModel) {
1506
+ return getRowModelUniqueValues(facetedRowModel, column.id);
1507
+ }, {
1508
+ key: process.env.NODE_ENV === 'production' && 'column.getFacetedUniqueValues',
1509
+ debug: function debug() {
1510
+ var _instance$options$deb2;
1511
+
1512
+ return (_instance$options$deb2 = instance.options.debugAll) != null ? _instance$options$deb2 : instance.options.debugColumns;
1513
+ }
1514
+ }),
1515
+ getFacetedMinMaxValues: memo(function () {
1516
+ return [column.getFacetedRowModel()];
1517
+ }, function (facetedRowModel) {
1518
+ return getRowModelMinMaxValues(facetedRowModel, column.id);
1519
+ }, {
1520
+ key: process.env.NODE_ENV === 'production' && 'column.getFacetedMinMaxValues',
1521
+ debug: function debug() {
1522
+ var _instance$options$deb3;
1523
+
1524
+ return (_instance$options$deb3 = instance.options.debugAll) != null ? _instance$options$deb3 : instance.options.debugColumns;
1525
+ }
1526
+ })
1527
+ };
1528
+ },
1529
+ createRow: function createRow(row, instance) {
1530
+ return {
1531
+ columnFilterMap: {},
1532
+ subRowsByFacetId: {}
1533
+ };
1534
+ },
1535
+ createInstance: function createInstance(instance) {
1536
+ return {
1537
+ getGlobalAutoFilterFn: function getGlobalAutoFilterFn() {
1538
+ return filterFns.includesString;
1539
+ },
1540
+ getGlobalFilterFn: function getGlobalFilterFn() {
1541
+ var _ref2;
1542
+
1543
+ var _instance$options = instance.options,
1544
+ userFilterFns = _instance$options.filterFns,
1545
+ globalFilterFn = _instance$options.globalFilterFn;
1546
+ return isFunction(globalFilterFn) ? globalFilterFn : globalFilterFn === 'auto' ? instance.getGlobalAutoFilterFn() : (_ref2 = userFilterFns == null ? void 0 : userFilterFns[globalFilterFn]) != null ? _ref2 : filterFns[globalFilterFn];
1547
+ },
1548
+ setColumnFilters: function setColumnFilters(updater) {
1549
+ var leafColumns = instance.getAllLeafColumns();
1550
+
1551
+ var updateFn = function updateFn(old) {
1552
+ var _functionalUpdate;
1553
+
1554
+ return (_functionalUpdate = functionalUpdate(updater, old)) == null ? void 0 : _functionalUpdate.filter(function (filter) {
1555
+ var column = leafColumns.find(function (d) {
1556
+ return d.id === filter.id;
1557
+ });
1558
+
1559
+ if (column) {
1560
+ var filterFn = column.getFilterFn();
1561
+
1562
+ if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {
1563
+ return false;
1564
+ }
1565
+ }
1566
+
1567
+ return true;
1568
+ });
1569
+ };
1570
+
1571
+ instance.options.onColumnFiltersChange == null ? void 0 : instance.options.onColumnFiltersChange(updateFn);
1572
+ },
1573
+ setGlobalFilter: function setGlobalFilter(updater) {
1574
+ instance.options.onGlobalFilterChange == null ? void 0 : instance.options.onGlobalFilterChange(updater);
1575
+ },
1576
+ resetGlobalFilter: function resetGlobalFilter() {
1577
+ instance.setGlobalFilter(instance.initialState.globalFilter);
1578
+ },
1699
1579
  resetColumnFilters: function resetColumnFilters() {
1700
1580
  var _instance$initialStat, _instance$initialStat2;
1701
1581
 
1702
1582
  instance.setColumnFilters((_instance$initialStat = (_instance$initialStat2 = instance.initialState) == null ? void 0 : _instance$initialStat2.columnFilters) != null ? _instance$initialStat : []);
1703
1583
  },
1704
- getPreColumnFilteredRowModel: function getPreColumnFilteredRowModel() {
1584
+ getPreFilteredRowModel: function getPreFilteredRowModel() {
1705
1585
  return instance.getCoreRowModel();
1706
1586
  },
1707
- getColumnFilteredRowModel: function getColumnFilteredRowModel() {
1708
- if (!instance._getColumnFilteredRowModel && instance.options.getColumnFilteredRowModel) {
1709
- instance._getColumnFilteredRowModel = instance.options.getColumnFilteredRowModel(instance);
1587
+ getFilteredRowModel: function getFilteredRowModel() {
1588
+ if (!instance._getFilteredRowModel && instance.options.getFilteredRowModel) {
1589
+ instance._getFilteredRowModel = instance.options.getFilteredRowModel(instance);
1710
1590
  }
1711
1591
 
1712
- if (instance.options.manualColumnFiltering || !instance._getColumnFilteredRowModel) {
1713
- return instance.getPreColumnFilteredRowModel();
1592
+ if (instance.options.manualFiltering || !instance._getFilteredRowModel) {
1593
+ return instance.getPreFilteredRowModel();
1714
1594
  }
1715
1595
 
1716
- return instance._getColumnFilteredRowModel();
1717
- },
1718
- getPreGlobalFilteredRowModel: function getPreGlobalFilteredRowModel() {
1719
- return instance.getColumnFilteredRowModel();
1596
+ return instance._getFilteredRowModel();
1720
1597
  },
1721
- getGlobalFilteredRowModel: function getGlobalFilteredRowModel() {
1722
- if (!instance._getGlobalFilteredRowModel && instance.options.getGlobalFilteredRowModel) {
1723
- instance._getGlobalFilteredRowModel = instance.options.getGlobalFilteredRowModel(instance);
1598
+ getGlobalFacetedRowModel: memo(function () {
1599
+ return [instance.getPreFilteredRowModel(), instance.getState().columnFilters, instance.getState().globalFilter, // Include this to force the filtered facet info to be calculated
1600
+ instance.getFilteredRowModel()];
1601
+ }, function (rowModel, columnFilters, globalFilter, _) {
1602
+ if (!(columnFilters != null && columnFilters.length) && !globalFilter) {
1603
+ return rowModel;
1724
1604
  }
1725
1605
 
1726
- if (instance.options.manualGlobalFiltering || !instance._getGlobalFilteredRowModel) {
1727
- return instance.getPreGlobalFilteredRowModel();
1606
+ return filterRows(rowModel.rows, columnFilters.map(function (d) {
1607
+ return d.id;
1608
+ }), instance);
1609
+ }, {
1610
+ key: process.env.NODE_ENV === 'production' && 'getGlobalFacetedRowModel',
1611
+ debug: function debug() {
1612
+ var _instance$options$deb4;
1613
+
1614
+ return (_instance$options$deb4 = instance.options.debugAll) != null ? _instance$options$deb4 : instance.options.debugColumns;
1728
1615
  }
1616
+ }),
1617
+ getGlobalFacetedUniqueValues: memo(function () {
1618
+ return [instance.getGlobalFacetedRowModel()];
1619
+ }, function (facetedRowModel) {
1620
+ return getRowModelUniqueValues(facetedRowModel, '__global__');
1621
+ }, {
1622
+ key: process.env.NODE_ENV === 'production' && 'getGlobalFacetedUniqueValues',
1623
+ debug: function debug() {
1624
+ var _instance$options$deb5;
1729
1625
 
1730
- return instance._getGlobalFilteredRowModel();
1731
- }
1626
+ return (_instance$options$deb5 = instance.options.debugAll) != null ? _instance$options$deb5 : instance.options.debugColumns;
1627
+ }
1628
+ }),
1629
+ getGlobalFacetedMinMaxValues: memo(function () {
1630
+ return [instance.getGlobalFacetedRowModel()];
1631
+ }, function (facetedRowModel) {
1632
+ return getRowModelMinMaxValues(facetedRowModel, '__global__');
1633
+ }, {
1634
+ key: process.env.NODE_ENV === 'production' && 'getGlobalFacetedMinMaxValues',
1635
+ debug: function debug() {
1636
+ var _instance$options$deb6;
1637
+
1638
+ return (_instance$options$deb6 = instance.options.debugAll) != null ? _instance$options$deb6 : instance.options.debugColumns;
1639
+ }
1640
+ })
1732
1641
  };
1733
1642
  }
1734
1643
  };
1735
1644
  function shouldAutoRemoveFilter(filterFn, value, column) {
1736
1645
  return (filterFn && filterFn.autoRemove ? filterFn.autoRemove(value, column) : false) || typeof value === 'undefined' || typeof value === 'string' && !value;
1737
1646
  }
1647
+ function getRowModelMinMaxValues(rowModel, columnId) {
1648
+ var _rowModel$flatRows$0$, _rowModel$flatRows$, _rowModel$flatRows$0$2, _rowModel$flatRows$2;
1649
+
1650
+ var facetedMinMaxValues = [(_rowModel$flatRows$0$ = (_rowModel$flatRows$ = rowModel.flatRows[0]) == null ? void 0 : _rowModel$flatRows$.values[columnId]) != null ? _rowModel$flatRows$0$ : null, (_rowModel$flatRows$0$2 = (_rowModel$flatRows$2 = rowModel.flatRows[0]) == null ? void 0 : _rowModel$flatRows$2.values[columnId]) != null ? _rowModel$flatRows$0$2 : null];
1651
+
1652
+ for (var i = 0; i < rowModel.flatRows.length; i++) {
1653
+ var _rowModel$flatRows$i;
1654
+
1655
+ var _value = (_rowModel$flatRows$i = rowModel.flatRows[i]) == null ? void 0 : _rowModel$flatRows$i.values[columnId];
1656
+
1657
+ if (_value < facetedMinMaxValues[0]) {
1658
+ facetedMinMaxValues[0] = _value;
1659
+ } else if (_value > facetedMinMaxValues[1]) {
1660
+ facetedMinMaxValues[1] = _value;
1661
+ }
1662
+ }
1663
+
1664
+ return facetedMinMaxValues;
1665
+ }
1666
+ function getRowModelUniqueValues(rowModel, columnId) {
1667
+ var facetedUniqueValues = new Map();
1668
+
1669
+ for (var i = 0; i < rowModel.flatRows.length; i++) {
1670
+ var _rowModel$flatRows$i2;
1671
+
1672
+ var _value2 = (_rowModel$flatRows$i2 = rowModel.flatRows[i]) == null ? void 0 : _rowModel$flatRows$i2.values[columnId];
1673
+
1674
+ if (facetedUniqueValues.has(_value2)) {
1675
+ var _facetedUniqueValues$;
1676
+
1677
+ facetedUniqueValues.set(_value2, ((_facetedUniqueValues$ = facetedUniqueValues.get(_value2)) != null ? _facetedUniqueValues$ : 0) + 1);
1678
+ } else {
1679
+ facetedUniqueValues.set(_value2, 1);
1680
+ }
1681
+ }
1682
+
1683
+ return facetedUniqueValues;
1684
+ }
1738
1685
 
1739
1686
  var aggregationFns = {
1740
1687
  sum: sum,
@@ -1857,10 +1804,10 @@ var Grouping = {
1857
1804
  aggregationFn: 'auto'
1858
1805
  };
1859
1806
  },
1860
- getInitialState: function getInitialState() {
1861
- return {
1807
+ getInitialState: function getInitialState(state) {
1808
+ return _extends({
1862
1809
  grouping: []
1863
- };
1810
+ }, state);
1864
1811
  },
1865
1812
  getDefaultOptions: function getDefaultOptions(instance) {
1866
1813
  return {
@@ -1870,21 +1817,39 @@ var Grouping = {
1870
1817
  },
1871
1818
  createColumn: function createColumn(column, instance) {
1872
1819
  return {
1873
- aggregationFn: column.aggregationFn,
1874
- getCanGroup: function getCanGroup() {
1875
- return instance.getColumnCanGroup(column.id);
1820
+ toggleGrouping: function toggleGrouping() {
1821
+ instance.setGrouping(function (old) {
1822
+ // Find any existing grouping for this column
1823
+ if (old != null && old.includes(column.id)) {
1824
+ return old.filter(function (d) {
1825
+ return d !== column.id;
1826
+ });
1827
+ }
1828
+
1829
+ return [].concat(old != null ? old : [], [column.id]);
1830
+ });
1876
1831
  },
1877
- getGroupedIndex: function getGroupedIndex() {
1878
- return instance.getColumnGroupedIndex(column.id);
1832
+ getCanGroup: function getCanGroup() {
1833
+ var _ref, _ref2, _ref3, _column$enableGroupin;
1834
+
1835
+ return (_ref = (_ref2 = (_ref3 = (_column$enableGroupin = column.enableGrouping) != null ? _column$enableGroupin : true) != null ? _ref3 : instance.options.enableGrouping) != null ? _ref2 : true) != null ? _ref : !!column.accessorFn;
1879
1836
  },
1880
1837
  getIsGrouped: function getIsGrouped() {
1881
- return instance.getColumnIsGrouped(column.id);
1838
+ var _instance$getState$gr;
1839
+
1840
+ return (_instance$getState$gr = instance.getState().grouping) == null ? void 0 : _instance$getState$gr.includes(column.id);
1882
1841
  },
1883
- toggleGrouping: function toggleGrouping() {
1884
- return instance.toggleColumnGrouping(column.id);
1842
+ getGroupedIndex: function getGroupedIndex() {
1843
+ var _instance$getState$gr2;
1844
+
1845
+ return (_instance$getState$gr2 = instance.getState().grouping) == null ? void 0 : _instance$getState$gr2.indexOf(column.id);
1885
1846
  },
1886
1847
  getToggleGroupingHandler: function getToggleGroupingHandler() {
1887
- return instance.getToggleGroupingHandler(column.id);
1848
+ var canGroup = column.getCanGroup();
1849
+ return function () {
1850
+ if (!canGroup) return;
1851
+ column.toggleGrouping();
1852
+ };
1888
1853
  }
1889
1854
  };
1890
1855
  },
@@ -1905,7 +1870,7 @@ var Grouping = {
1905
1870
  return aggregationFns.count;
1906
1871
  },
1907
1872
  getColumnAggregationFn: function getColumnAggregationFn(columnId) {
1908
- var _ref;
1873
+ var _ref4;
1909
1874
 
1910
1875
  var column = instance.getColumn(columnId);
1911
1876
  var userAggregationFns = instance.options.aggregationFns;
@@ -1914,62 +1879,16 @@ var Grouping = {
1914
1879
  throw new Error();
1915
1880
  }
1916
1881
 
1917
- return isFunction(column.aggregationFn) ? column.aggregationFn : column.aggregationFn === 'auto' ? instance.getColumnAutoAggregationFn(columnId) : (_ref = userAggregationFns == null ? void 0 : userAggregationFns[column.aggregationFn]) != null ? _ref : aggregationFns[column.aggregationFn];
1882
+ return isFunction(column.aggregationFn) ? column.aggregationFn : column.aggregationFn === 'auto' ? instance.getColumnAutoAggregationFn(columnId) : (_ref4 = userAggregationFns == null ? void 0 : userAggregationFns[column.aggregationFn]) != null ? _ref4 : aggregationFns[column.aggregationFn];
1918
1883
  },
1919
1884
  setGrouping: function setGrouping(updater) {
1920
1885
  return instance.options.onGroupingChange == null ? void 0 : instance.options.onGroupingChange(updater);
1921
1886
  },
1922
- toggleColumnGrouping: function toggleColumnGrouping(columnId) {
1923
- instance.setGrouping(function (old) {
1924
- // Find any existing grouping for this column
1925
- if (old != null && old.includes(columnId)) {
1926
- return old.filter(function (d) {
1927
- return d !== columnId;
1928
- });
1929
- }
1930
-
1931
- return [].concat(old != null ? old : [], [columnId]);
1932
- });
1933
- },
1934
- getColumnCanGroup: function getColumnCanGroup(columnId) {
1935
- var _ref2, _ref3, _column$enableGroupin;
1936
-
1937
- var column = instance.getColumn(columnId);
1938
-
1939
- if (!column) {
1940
- throw new Error();
1941
- }
1942
-
1943
- return (_ref2 = (_ref3 = (_column$enableGroupin = column.enableGrouping) != null ? _column$enableGroupin : instance.options.enableGrouping) != null ? _ref3 : column.defaultCanGroup) != null ? _ref2 : !!column.accessorFn;
1944
- },
1945
- getColumnIsGrouped: function getColumnIsGrouped(columnId) {
1946
- var _instance$getState$gr;
1947
-
1948
- return (_instance$getState$gr = instance.getState().grouping) == null ? void 0 : _instance$getState$gr.includes(columnId);
1949
- },
1950
- getColumnGroupedIndex: function getColumnGroupedIndex(columnId) {
1951
- var _instance$getState$gr2;
1952
-
1953
- return (_instance$getState$gr2 = instance.getState().grouping) == null ? void 0 : _instance$getState$gr2.indexOf(columnId);
1954
- },
1955
1887
  resetGrouping: function resetGrouping() {
1956
1888
  var _instance$initialStat, _instance$initialStat2;
1957
1889
 
1958
1890
  instance.setGrouping((_instance$initialStat = (_instance$initialStat2 = instance.initialState) == null ? void 0 : _instance$initialStat2.grouping) != null ? _instance$initialStat : []);
1959
1891
  },
1960
- getToggleGroupingHandler: function getToggleGroupingHandler(columnId) {
1961
- var column = instance.getColumn(columnId);
1962
- var canGroup = column.getCanGroup();
1963
- return function () {
1964
- if (!canGroup) return;
1965
- column.toggleGrouping == null ? void 0 : column.toggleGrouping();
1966
- };
1967
- },
1968
- getRowIsGrouped: function getRowIsGrouped(rowId) {
1969
- var _instance$getRow;
1970
-
1971
- return !!((_instance$getRow = instance.getRow(rowId)) != null && _instance$getRow.groupingColumnId);
1972
- },
1973
1892
  getPreGroupedRowModel: function getPreGroupedRowModel() {
1974
1893
  return instance.getSortedRowModel();
1975
1894
  },
@@ -1989,7 +1908,7 @@ var Grouping = {
1989
1908
  createRow: function createRow(row, instance) {
1990
1909
  return {
1991
1910
  getIsGrouped: function getIsGrouped() {
1992
- return instance.getRowIsGrouped(row.id);
1911
+ return !!row.groupingColumnId;
1993
1912
  }
1994
1913
  };
1995
1914
  },
@@ -2019,35 +1938,35 @@ var Grouping = {
2019
1938
  }) : null;
2020
1939
  }
2021
1940
  };
2022
- },
2023
- orderColumns: function orderColumns(leafColumns, grouping, groupedColumnMode) {
2024
- if (!(grouping != null && grouping.length) || !groupedColumnMode) {
2025
- return leafColumns;
2026
- }
2027
-
2028
- var nonGroupingColumns = leafColumns.filter(function (col) {
2029
- return !grouping.includes(col.id);
2030
- });
1941
+ }
1942
+ };
1943
+ function orderColumns(leafColumns, grouping, groupedColumnMode) {
1944
+ if (!(grouping != null && grouping.length) || !groupedColumnMode) {
1945
+ return leafColumns;
1946
+ }
2031
1947
 
2032
- if (groupedColumnMode === 'remove') {
2033
- return nonGroupingColumns;
2034
- }
1948
+ var nonGroupingColumns = leafColumns.filter(function (col) {
1949
+ return !grouping.includes(col.id);
1950
+ });
2035
1951
 
2036
- var groupingColumns = grouping.map(function (g) {
2037
- return leafColumns.find(function (col) {
2038
- return col.id === g;
2039
- });
2040
- }).filter(Boolean);
2041
- return [].concat(groupingColumns, nonGroupingColumns);
1952
+ if (groupedColumnMode === 'remove') {
1953
+ return nonGroupingColumns;
2042
1954
  }
2043
- };
1955
+
1956
+ var groupingColumns = grouping.map(function (g) {
1957
+ return leafColumns.find(function (col) {
1958
+ return col.id === g;
1959
+ });
1960
+ }).filter(Boolean);
1961
+ return [].concat(groupingColumns, nonGroupingColumns);
1962
+ }
2044
1963
 
2045
1964
  //
2046
1965
  var Ordering = {
2047
- getInitialState: function getInitialState() {
2048
- return {
1966
+ getInitialState: function getInitialState(state) {
1967
+ return _extends({
2049
1968
  columnOrder: []
2050
- };
1969
+ }, state);
2051
1970
  },
2052
1971
  getDefaultOptions: function getDefaultOptions(instance) {
2053
1972
  return {
@@ -2099,10 +2018,10 @@ var Ordering = {
2099
2018
  orderedColumns = [].concat(orderedColumns, columnsCopy);
2100
2019
  }
2101
2020
 
2102
- return Grouping.orderColumns(orderedColumns, grouping, groupedColumnMode);
2021
+ return orderColumns(orderedColumns, grouping, groupedColumnMode);
2103
2022
  };
2104
2023
  }, {
2105
- key: 'getOrderColumnsFn' // debug: () => instance.options.debugAll ?? instance.options.debugTable,
2024
+ key: process.env.NODE_ENV === 'development' && 'getOrderColumnsFn' // debug: () => instance.options.debugAll ?? instance.options.debugTable,
2106
2025
 
2107
2026
  })
2108
2027
  };
@@ -2111,14 +2030,14 @@ var Ordering = {
2111
2030
 
2112
2031
  //
2113
2032
  var Pagination = {
2114
- getInitialState: function getInitialState(initialState) {
2115
- return {
2033
+ getInitialState: function getInitialState(state) {
2034
+ return _extends({}, state, {
2116
2035
  pagination: _extends({
2117
2036
  pageCount: -1,
2118
2037
  pageIndex: 0,
2119
2038
  pageSize: 10
2120
- }, initialState == null ? void 0 : initialState.pagination)
2121
- };
2039
+ }, state == null ? void 0 : state.pagination)
2040
+ });
2122
2041
  },
2123
2042
  getDefaultOptions: function getDefaultOptions(instance) {
2124
2043
  return {
@@ -2215,7 +2134,7 @@ var Pagination = {
2215
2134
 
2216
2135
  return pageOptions;
2217
2136
  }, {
2218
- key: 'getPageOptions',
2137
+ key: process.env.NODE_ENV === 'development' && 'getPageOptions',
2219
2138
  debug: function debug() {
2220
2139
  var _instance$options$deb;
2221
2140
 
@@ -2278,13 +2197,13 @@ var Pagination = {
2278
2197
 
2279
2198
  //
2280
2199
  var Pinning = {
2281
- getInitialState: function getInitialState() {
2282
- return {
2200
+ getInitialState: function getInitialState(state) {
2201
+ return _extends({
2283
2202
  columnPinning: {
2284
2203
  left: [],
2285
2204
  right: []
2286
2205
  }
2287
- };
2206
+ }, state);
2288
2207
  },
2289
2208
  getDefaultOptions: function getDefaultOptions(instance) {
2290
2209
  return {
@@ -2293,155 +2212,8 @@ var Pinning = {
2293
2212
  },
2294
2213
  createColumn: function createColumn(column, instance) {
2295
2214
  return {
2296
- getCanPin: function getCanPin() {
2297
- return instance.getColumnCanPin(column.id);
2298
- },
2299
- getPinnedIndex: function getPinnedIndex() {
2300
- return instance.getColumnPinnedIndex(column.id);
2301
- },
2302
- getIsPinned: function getIsPinned() {
2303
- return instance.getColumnIsPinned(column.id);
2304
- },
2305
2215
  pin: function pin(position) {
2306
- return instance.pinColumn(column.id, position);
2307
- }
2308
- };
2309
- },
2310
- createRow: function createRow(row, instance) {
2311
- return {
2312
- getCenterVisibleCells: memo(function () {
2313
- return [row._getAllVisibleCells(), instance.getState().columnPinning.left, instance.getState().columnPinning.right];
2314
- }, function (allCells, left, right) {
2315
- var leftAndRight = [].concat(left != null ? left : [], right != null ? right : []);
2316
- return allCells.filter(function (d) {
2317
- return !leftAndRight.includes(d.columnId);
2318
- });
2319
- }, {
2320
- key: 'row.getCenterVisibleCells',
2321
- debug: function debug() {
2322
- var _instance$options$deb;
2323
-
2324
- return (_instance$options$deb = instance.options.debugAll) != null ? _instance$options$deb : instance.options.debugRows;
2325
- }
2326
- }),
2327
- getLeftVisibleCells: memo(function () {
2328
- return [row._getAllVisibleCells(), instance.getState().columnPinning.left,,];
2329
- }, function (allCells, left) {
2330
- var cells = (left != null ? left : []).map(function (columnId) {
2331
- return allCells.find(function (cell) {
2332
- return cell.columnId === columnId;
2333
- });
2334
- }).filter(Boolean).map(function (d) {
2335
- return _extends({}, d, {
2336
- position: 'left'
2337
- });
2338
- });
2339
- return cells;
2340
- }, {
2341
- key: 'row.getLeftVisibleCells',
2342
- debug: function debug() {
2343
- var _instance$options$deb2;
2344
-
2345
- return (_instance$options$deb2 = instance.options.debugAll) != null ? _instance$options$deb2 : instance.options.debugRows;
2346
- }
2347
- }),
2348
- getRightVisibleCells: memo(function () {
2349
- return [row._getAllVisibleCells(), instance.getState().columnPinning.right];
2350
- }, function (allCells, right) {
2351
- var cells = (right != null ? right : []).map(function (columnId) {
2352
- return allCells.find(function (cell) {
2353
- return cell.columnId === columnId;
2354
- });
2355
- }).filter(Boolean).map(function (d) {
2356
- return _extends({}, d, {
2357
- position: 'left'
2358
- });
2359
- });
2360
- return cells;
2361
- }, {
2362
- key: 'row.getRightVisibleCells',
2363
- debug: function debug() {
2364
- var _instance$options$deb3;
2365
-
2366
- return (_instance$options$deb3 = instance.options.debugAll) != null ? _instance$options$deb3 : instance.options.debugRows;
2367
- }
2368
- })
2369
- };
2370
- },
2371
- createCell: function createCell(cell, instance) {
2372
- return {
2373
- getCenterVisibleCells: memo(function () {
2374
- return [cell.row._getAllVisibleCells(), instance.getState().columnPinning.left, instance.getState().columnPinning.right];
2375
- }, function (allCells, left, right) {
2376
- var leftAndRight = [].concat(left != null ? left : [], right != null ? right : []);
2377
- return allCells.filter(function (d) {
2378
- return !leftAndRight.includes(d.columnId);
2379
- });
2380
- }, {
2381
- key: 'row.getCenterVisibleCells',
2382
- debug: function debug() {
2383
- var _instance$options$deb4;
2384
-
2385
- return (_instance$options$deb4 = instance.options.debugAll) != null ? _instance$options$deb4 : instance.options.debugRows;
2386
- }
2387
- }),
2388
- getLeftVisibleCells: memo(function () {
2389
- return [cell.row._getAllVisibleCells(), instance.getState().columnPinning.left,,];
2390
- }, function (allCells, left) {
2391
- var cells = (left != null ? left : []).map(function (columnId) {
2392
- return allCells.find(function (cell) {
2393
- return cell.columnId === columnId;
2394
- });
2395
- }).filter(Boolean).map(function (d) {
2396
- return _extends({}, d, {
2397
- position: 'left'
2398
- });
2399
- });
2400
- return cells;
2401
- }, {
2402
- key: 'row.getLeftVisibleCells',
2403
- debug: function debug() {
2404
- var _instance$options$deb5;
2405
-
2406
- return (_instance$options$deb5 = instance.options.debugAll) != null ? _instance$options$deb5 : instance.options.debugRows;
2407
- }
2408
- }),
2409
- getRightVisibleCells: memo(function () {
2410
- return [cell.row._getAllVisibleCells(), instance.getState().columnPinning.right];
2411
- }, function (allCells, right) {
2412
- var cells = (right != null ? right : []).map(function (columnId) {
2413
- return allCells.find(function (cell) {
2414
- return cell.columnId === columnId;
2415
- });
2416
- }).filter(Boolean).map(function (d) {
2417
- return _extends({}, d, {
2418
- position: 'left'
2419
- });
2420
- });
2421
- return cells;
2422
- }, {
2423
- key: 'row.getRightVisibleCells',
2424
- debug: function debug() {
2425
- var _instance$options$deb6;
2426
-
2427
- return (_instance$options$deb6 = instance.options.debugAll) != null ? _instance$options$deb6 : instance.options.debugRows;
2428
- }
2429
- })
2430
- };
2431
- },
2432
- createInstance: function createInstance(instance) {
2433
- return {
2434
- setColumnPinning: function setColumnPinning(updater) {
2435
- return instance.options.onColumnPinningChange == null ? void 0 : instance.options.onColumnPinningChange(updater);
2436
- },
2437
- resetColumnPinning: function resetColumnPinning() {
2438
- var _instance$initialStat, _instance$initialStat2;
2439
-
2440
- return instance.setColumnPinning((_instance$initialStat = (_instance$initialStat2 = instance.initialState) == null ? void 0 : _instance$initialStat2.columnPinning) != null ? _instance$initialStat : {});
2441
- },
2442
- pinColumn: function pinColumn(columnId, position) {
2443
- var column = instance.getColumn(columnId);
2444
- var columnIds = column == null ? void 0 : column.getLeafColumns().map(function (d) {
2216
+ var columnIds = column.getLeafColumns().map(function (d) {
2445
2217
  return d.id;
2446
2218
  }).filter(Boolean);
2447
2219
  instance.setColumnPinning(function (old) {
@@ -2482,47 +2254,108 @@ var Pinning = {
2482
2254
  })
2483
2255
  };
2484
2256
  });
2485
- },
2486
- getColumnCanPin: function getColumnCanPin(columnId) {
2487
- var column = instance.getColumn(columnId);
2257
+ },
2258
+ getCanPin: function getCanPin() {
2259
+ var leafColumns = column.getLeafColumns();
2260
+ return leafColumns.some(function (d) {
2261
+ var _d$enablePinning, _instance$options$ena;
2262
+
2263
+ return ((_d$enablePinning = d.enablePinning) != null ? _d$enablePinning : true) && ((_instance$options$ena = instance.options.enablePinning) != null ? _instance$options$ena : true);
2264
+ });
2265
+ },
2266
+ getIsPinned: function getIsPinned() {
2267
+ var leafColumnIds = column.getLeafColumns().map(function (d) {
2268
+ return d.id;
2269
+ });
2270
+ var _instance$getState$co = instance.getState().columnPinning,
2271
+ left = _instance$getState$co.left,
2272
+ right = _instance$getState$co.right;
2273
+ var isLeft = leafColumnIds.some(function (d) {
2274
+ return left == null ? void 0 : left.includes(d);
2275
+ });
2276
+ var isRight = leafColumnIds.some(function (d) {
2277
+ return right == null ? void 0 : right.includes(d);
2278
+ });
2279
+ return isLeft ? 'left' : isRight ? 'right' : false;
2280
+ },
2281
+ getPinnedIndex: function getPinnedIndex() {
2282
+ var _instance$getState$co2, _instance$getState$co3, _instance$getState$co4;
2283
+
2284
+ var position = column.getIsPinned();
2285
+ return position ? (_instance$getState$co2 = (_instance$getState$co3 = instance.getState().columnPinning) == null ? void 0 : (_instance$getState$co4 = _instance$getState$co3[position]) == null ? void 0 : _instance$getState$co4.indexOf(column.id)) != null ? _instance$getState$co2 : -1 : 0;
2286
+ }
2287
+ };
2288
+ },
2289
+ createRow: function createRow(row, instance) {
2290
+ return {
2291
+ getCenterVisibleCells: memo(function () {
2292
+ return [row._getAllVisibleCells(), instance.getState().columnPinning.left, instance.getState().columnPinning.right];
2293
+ }, function (allCells, left, right) {
2294
+ var leftAndRight = [].concat(left != null ? left : [], right != null ? right : []);
2295
+ return allCells.filter(function (d) {
2296
+ return !leftAndRight.includes(d.columnId);
2297
+ });
2298
+ }, {
2299
+ key: process.env.NODE_ENV === 'production' && 'row.getCenterVisibleCells',
2300
+ debug: function debug() {
2301
+ var _instance$options$deb;
2302
+
2303
+ return (_instance$options$deb = instance.options.debugAll) != null ? _instance$options$deb : instance.options.debugRows;
2304
+ }
2305
+ }),
2306
+ getLeftVisibleCells: memo(function () {
2307
+ return [row._getAllVisibleCells(), instance.getState().columnPinning.left,,];
2308
+ }, function (allCells, left) {
2309
+ var cells = (left != null ? left : []).map(function (columnId) {
2310
+ return allCells.find(function (cell) {
2311
+ return cell.columnId === columnId;
2312
+ });
2313
+ }).filter(Boolean).map(function (d) {
2314
+ return _extends({}, d, {
2315
+ position: 'left'
2316
+ });
2317
+ });
2318
+ return cells;
2319
+ }, {
2320
+ key: process.env.NODE_ENV === 'production' && 'row.getLeftVisibleCells',
2321
+ debug: function debug() {
2322
+ var _instance$options$deb2;
2488
2323
 
2489
- if (!column) {
2490
- throw new Error();
2324
+ return (_instance$options$deb2 = instance.options.debugAll) != null ? _instance$options$deb2 : instance.options.debugRows;
2491
2325
  }
2492
-
2493
- var leafColumns = column.getLeafColumns();
2494
- return leafColumns.some(function (d) {
2495
- var _ref, _ref2, _d$enablePinning;
2496
-
2497
- return (_ref = (_ref2 = (_d$enablePinning = d.enablePinning) != null ? _d$enablePinning : instance.options.enablePinning) != null ? _ref2 : d.defaultCanPin) != null ? _ref : !!d.accessorFn;
2326
+ }),
2327
+ getRightVisibleCells: memo(function () {
2328
+ return [row._getAllVisibleCells(), instance.getState().columnPinning.right];
2329
+ }, function (allCells, right) {
2330
+ var cells = (right != null ? right : []).map(function (columnId) {
2331
+ return allCells.find(function (cell) {
2332
+ return cell.columnId === columnId;
2333
+ });
2334
+ }).filter(Boolean).map(function (d) {
2335
+ return _extends({}, d, {
2336
+ position: 'left'
2337
+ });
2498
2338
  });
2499
- },
2500
- getColumnIsPinned: function getColumnIsPinned(columnId) {
2501
- var column = instance.getColumn(columnId);
2339
+ return cells;
2340
+ }, {
2341
+ key: process.env.NODE_ENV === 'production' && 'row.getRightVisibleCells',
2342
+ debug: function debug() {
2343
+ var _instance$options$deb3;
2502
2344
 
2503
- if (!column) {
2504
- throw new Error();
2345
+ return (_instance$options$deb3 = instance.options.debugAll) != null ? _instance$options$deb3 : instance.options.debugRows;
2505
2346
  }
2506
-
2507
- var leafColumnIds = column.getLeafColumns().map(function (d) {
2508
- return d.id;
2509
- });
2510
- var _instance$getState$co = instance.getState().columnPinning,
2511
- left = _instance$getState$co.left,
2512
- right = _instance$getState$co.right;
2513
- var isLeft = leafColumnIds.some(function (d) {
2514
- return left == null ? void 0 : left.includes(d);
2515
- });
2516
- var isRight = leafColumnIds.some(function (d) {
2517
- return right == null ? void 0 : right.includes(d);
2518
- });
2519
- return isLeft ? 'left' : isRight ? 'right' : false;
2347
+ })
2348
+ };
2349
+ },
2350
+ createInstance: function createInstance(instance) {
2351
+ return {
2352
+ setColumnPinning: function setColumnPinning(updater) {
2353
+ return instance.options.onColumnPinningChange == null ? void 0 : instance.options.onColumnPinningChange(updater);
2520
2354
  },
2521
- getColumnPinnedIndex: function getColumnPinnedIndex(columnId) {
2522
- var _instance$getState$co2, _instance$getState$co3, _instance$getState$co4;
2355
+ resetColumnPinning: function resetColumnPinning() {
2356
+ var _instance$initialStat, _instance$initialStat2;
2523
2357
 
2524
- var position = instance.getColumnIsPinned(columnId);
2525
- return position ? (_instance$getState$co2 = (_instance$getState$co3 = instance.getState().columnPinning) == null ? void 0 : (_instance$getState$co4 = _instance$getState$co3[position]) == null ? void 0 : _instance$getState$co4.indexOf(columnId)) != null ? _instance$getState$co2 : -1 : 0;
2358
+ return instance.setColumnPinning((_instance$initialStat = (_instance$initialStat2 = instance.initialState) == null ? void 0 : _instance$initialStat2.columnPinning) != null ? _instance$initialStat : {});
2526
2359
  },
2527
2360
  getIsSomeColumnsPinned: function getIsSomeColumnsPinned() {
2528
2361
  var _instance$getState$co5 = instance.getState().columnPinning,
@@ -2539,11 +2372,11 @@ var Pinning = {
2539
2372
  });
2540
2373
  }).filter(Boolean);
2541
2374
  }, {
2542
- key: 'getLeftLeafColumns',
2375
+ key: process.env.NODE_ENV === 'development' && 'getLeftLeafColumns',
2543
2376
  debug: function debug() {
2544
- var _instance$options$deb7;
2377
+ var _instance$options$deb4;
2545
2378
 
2546
- return (_instance$options$deb7 = instance.options.debugAll) != null ? _instance$options$deb7 : instance.options.debugColumns;
2379
+ return (_instance$options$deb4 = instance.options.debugAll) != null ? _instance$options$deb4 : instance.options.debugColumns;
2547
2380
  }
2548
2381
  }),
2549
2382
  getRightLeafColumns: memo(function () {
@@ -2555,11 +2388,11 @@ var Pinning = {
2555
2388
  });
2556
2389
  }).filter(Boolean);
2557
2390
  }, {
2558
- key: 'getRightLeafColumns',
2391
+ key: process.env.NODE_ENV === 'development' && 'getRightLeafColumns',
2559
2392
  debug: function debug() {
2560
- var _instance$options$deb8;
2393
+ var _instance$options$deb5;
2561
2394
 
2562
- return (_instance$options$deb8 = instance.options.debugAll) != null ? _instance$options$deb8 : instance.options.debugColumns;
2395
+ return (_instance$options$deb5 = instance.options.debugAll) != null ? _instance$options$deb5 : instance.options.debugColumns;
2563
2396
  }
2564
2397
  }),
2565
2398
  getCenterLeafColumns: memo(function () {
@@ -2570,11 +2403,11 @@ var Pinning = {
2570
2403
  return !leftAndRight.includes(d.id);
2571
2404
  });
2572
2405
  }, {
2573
- key: 'getCenterLeafColumns',
2406
+ key: process.env.NODE_ENV === 'development' && 'getCenterLeafColumns',
2574
2407
  debug: function debug() {
2575
- var _instance$options$deb9;
2408
+ var _instance$options$deb6;
2576
2409
 
2577
- return (_instance$options$deb9 = instance.options.debugAll) != null ? _instance$options$deb9 : instance.options.debugColumns;
2410
+ return (_instance$options$deb6 = instance.options.debugAll) != null ? _instance$options$deb6 : instance.options.debugColumns;
2578
2411
  }
2579
2412
  })
2580
2413
  };
@@ -2583,10 +2416,10 @@ var Pinning = {
2583
2416
 
2584
2417
  //
2585
2418
  var RowSelection = {
2586
- getInitialState: function getInitialState() {
2587
- return {
2419
+ getInitialState: function getInitialState(state) {
2420
+ return _extends({
2588
2421
  rowSelection: {}
2589
- };
2422
+ }, state);
2590
2423
  },
2591
2424
  getDefaultOptions: function getDefaultOptions(instance) {
2592
2425
  return {
@@ -2643,22 +2476,6 @@ var RowSelection = {
2643
2476
  return rowSelection;
2644
2477
  });
2645
2478
  },
2646
- toggleRowSelected: function toggleRowSelected(rowId, value) {
2647
- var row = instance.getRow(rowId);
2648
- var isSelected = row.getIsSelected();
2649
- instance.setRowSelection(function (old) {
2650
- value = typeof value !== 'undefined' ? value : !isSelected;
2651
-
2652
- if (isSelected === value) {
2653
- return old;
2654
- }
2655
-
2656
- var selectedRowIds = _extends({}, old);
2657
-
2658
- mutateRowIsSelected(selectedRowIds, rowId, value, instance);
2659
- return selectedRowIds;
2660
- });
2661
- },
2662
2479
  // addRowSelectionRange: rowId => {
2663
2480
  // const {
2664
2481
  // rows,
@@ -2725,7 +2542,7 @@ var RowSelection = {
2725
2542
 
2726
2543
  return selectRowsFn(instance, rowModel);
2727
2544
  }, {
2728
- key: 'getSelectedRowModel',
2545
+ key: process.env.NODE_ENV === 'development' && 'getSelectedRowModel',
2729
2546
  debug: function debug() {
2730
2547
  var _instance$options$deb;
2731
2548
 
@@ -2733,7 +2550,7 @@ var RowSelection = {
2733
2550
  }
2734
2551
  }),
2735
2552
  getFilteredSelectedRowModel: memo(function () {
2736
- return [instance.getState().rowSelection, instance.getGlobalFilteredRowModel()];
2553
+ return [instance.getState().rowSelection, instance.getFilteredRowModel()];
2737
2554
  }, function (rowSelection, rowModel) {
2738
2555
  if (!Object.keys(rowSelection).length) {
2739
2556
  return {
@@ -2745,7 +2562,7 @@ var RowSelection = {
2745
2562
 
2746
2563
  return selectRowsFn(instance, rowModel);
2747
2564
  }, {
2748
- key: 'getFilteredSelectedRowModel',
2565
+ key: process.env.NODE_ENV === 'production' && 'getFilteredSelectedRowModel',
2749
2566
  debug: function debug() {
2750
2567
  var _instance$options$deb2;
2751
2568
 
@@ -2765,7 +2582,7 @@ var RowSelection = {
2765
2582
 
2766
2583
  return selectRowsFn(instance, rowModel);
2767
2584
  }, {
2768
- key: 'getGroupedSelectedRowModel',
2585
+ key: process.env.NODE_ENV === 'production' && 'getGroupedSelectedRowModel',
2769
2586
  debug: function debug() {
2770
2587
  var _instance$options$deb3;
2771
2588
 
@@ -2773,75 +2590,6 @@ var RowSelection = {
2773
2590
  }
2774
2591
  }),
2775
2592
  ///
2776
- getRowIsSelected: function getRowIsSelected(rowId) {
2777
- var _instance$getState = instance.getState(),
2778
- rowSelection = _instance$getState.rowSelection;
2779
-
2780
- var row = instance.getRow(rowId);
2781
-
2782
- if (!row) {
2783
- throw new Error();
2784
- }
2785
-
2786
- return isRowSelected(row, rowSelection) === true;
2787
- },
2788
- getRowIsSomeSelected: function getRowIsSomeSelected(rowId) {
2789
- var _instance$getState2 = instance.getState(),
2790
- rowSelection = _instance$getState2.rowSelection;
2791
-
2792
- var row = instance.getRow(rowId);
2793
-
2794
- if (!row) {
2795
- throw new Error();
2796
- }
2797
-
2798
- return isRowSelected(row, rowSelection) === 'some';
2799
- },
2800
- getRowCanSelect: function getRowCanSelect(rowId) {
2801
- var _instance$options$ena;
2802
-
2803
- var row = instance.getRow(rowId);
2804
-
2805
- if (!row) {
2806
- throw new Error();
2807
- }
2808
-
2809
- if (typeof instance.options.enableRowSelection === 'function') {
2810
- return instance.options.enableRowSelection(row);
2811
- }
2812
-
2813
- return (_instance$options$ena = instance.options.enableRowSelection) != null ? _instance$options$ena : true;
2814
- },
2815
- getRowCanSelectSubRows: function getRowCanSelectSubRows(rowId) {
2816
- var _instance$options$ena2;
2817
-
2818
- var row = instance.getRow(rowId);
2819
-
2820
- if (!row) {
2821
- throw new Error();
2822
- }
2823
-
2824
- if (typeof instance.options.enableSubRowSelection === 'function') {
2825
- return instance.options.enableSubRowSelection(row);
2826
- }
2827
-
2828
- return (_instance$options$ena2 = instance.options.enableSubRowSelection) != null ? _instance$options$ena2 : true;
2829
- },
2830
- getRowCanMultiSelect: function getRowCanMultiSelect(rowId) {
2831
- var _instance$options$ena3;
2832
-
2833
- var row = instance.getRow(rowId);
2834
-
2835
- if (!row) {
2836
- throw new Error();
2837
- }
2838
-
2839
- if (typeof instance.options.enableMultiRowSelection === 'function') {
2840
- return instance.options.enableMultiRowSelection(row);
2841
- }
2842
-
2843
- return (_instance$options$ena3 = instance.options.enableMultiRowSelection) != null ? _instance$options$ena3 : true;
2844
- },
2845
2593
  // getGroupingRowCanSelect: rowId => {
2846
2594
  // const row = instance.getRow(rowId)
2847
2595
  // if (!row) {
@@ -2853,10 +2601,10 @@ var RowSelection = {
2853
2601
  // return instance.options.enableGroupingRowSelection ?? false
2854
2602
  // },
2855
2603
  getIsAllRowsSelected: function getIsAllRowsSelected() {
2856
- var preFilteredFlatRows = instance.getPreGlobalFilteredRowModel().flatRows;
2604
+ var preFilteredFlatRows = instance.getPreFilteredRowModel().flatRows;
2857
2605
 
2858
- var _instance$getState3 = instance.getState(),
2859
- rowSelection = _instance$getState3.rowSelection;
2606
+ var _instance$getState = instance.getState(),
2607
+ rowSelection = _instance$getState.rowSelection;
2860
2608
 
2861
2609
  var isAllRowsSelected = Boolean(preFilteredFlatRows.length && Object.keys(rowSelection).length);
2862
2610
 
@@ -2873,8 +2621,8 @@ var RowSelection = {
2873
2621
  getIsAllPageRowsSelected: function getIsAllPageRowsSelected() {
2874
2622
  var paginationFlatRows = instance.getPaginationRowModel().flatRows;
2875
2623
 
2876
- var _instance$getState4 = instance.getState(),
2877
- rowSelection = _instance$getState4.rowSelection;
2624
+ var _instance$getState2 = instance.getState(),
2625
+ rowSelection = _instance$getState2.rowSelection;
2878
2626
 
2879
2627
  var isAllPageRowsSelected = !!paginationFlatRows.length;
2880
2628
 
@@ -2895,18 +2643,6 @@ var RowSelection = {
2895
2643
  var paginationFlatRows = instance.getPaginationRowModel().flatRows;
2896
2644
  return instance.getIsAllPageRowsSelected() ? false : !!(paginationFlatRows != null && paginationFlatRows.length);
2897
2645
  },
2898
- getToggleRowSelectedHandler: function getToggleRowSelectedHandler(rowId) {
2899
- var row = instance.getRow(rowId);
2900
- row.getIsSelected();
2901
- row.getIsSomeSelected();
2902
- var canSelect = row.getCanSelect();
2903
- return function (e) {
2904
- var _target;
2905
-
2906
- if (!canSelect) return;
2907
- row.toggleSelected((_target = e.target) == null ? void 0 : _target.checked);
2908
- };
2909
- },
2910
2646
  getToggleAllRowsSelectedHandler: function getToggleAllRowsSelectedHandler() {
2911
2647
  return function (e) {
2912
2648
  instance.toggleAllRowsSelected(e.target.checked);
@@ -2921,23 +2657,68 @@ var RowSelection = {
2921
2657
  },
2922
2658
  createRow: function createRow(row, instance) {
2923
2659
  return {
2660
+ toggleSelected: function toggleSelected(value) {
2661
+ var isSelected = row.getIsSelected();
2662
+ instance.setRowSelection(function (old) {
2663
+ value = typeof value !== 'undefined' ? value : !isSelected;
2664
+
2665
+ if (isSelected === value) {
2666
+ return old;
2667
+ }
2668
+
2669
+ var selectedRowIds = _extends({}, old);
2670
+
2671
+ mutateRowIsSelected(selectedRowIds, row.id, value, instance);
2672
+ return selectedRowIds;
2673
+ });
2674
+ },
2924
2675
  getIsSelected: function getIsSelected() {
2925
- return instance.getRowIsSelected(row.id);
2676
+ var _instance$getState3 = instance.getState(),
2677
+ rowSelection = _instance$getState3.rowSelection;
2678
+
2679
+ return isRowSelected(row, rowSelection) === true;
2926
2680
  },
2927
2681
  getIsSomeSelected: function getIsSomeSelected() {
2928
- return instance.getRowIsSomeSelected(row.id);
2682
+ var _instance$getState4 = instance.getState(),
2683
+ rowSelection = _instance$getState4.rowSelection;
2684
+
2685
+ return isRowSelected(row, rowSelection) === 'some';
2929
2686
  },
2930
- toggleSelected: function toggleSelected(value) {
2931
- return instance.toggleRowSelected(row.id, value);
2687
+ getCanSelect: function getCanSelect() {
2688
+ var _instance$options$ena;
2689
+
2690
+ if (typeof instance.options.enableRowSelection === 'function') {
2691
+ return instance.options.enableRowSelection(row);
2692
+ }
2693
+
2694
+ return (_instance$options$ena = instance.options.enableRowSelection) != null ? _instance$options$ena : true;
2932
2695
  },
2933
- getToggleSelectedHandler: function getToggleSelectedHandler() {
2934
- return instance.getToggleRowSelectedHandler(row.id);
2696
+ getCanSelectSubRows: function getCanSelectSubRows() {
2697
+ var _instance$options$ena2;
2698
+
2699
+ if (typeof instance.options.enableSubRowSelection === 'function') {
2700
+ return instance.options.enableSubRowSelection(row);
2701
+ }
2702
+
2703
+ return (_instance$options$ena2 = instance.options.enableSubRowSelection) != null ? _instance$options$ena2 : true;
2935
2704
  },
2936
2705
  getCanMultiSelect: function getCanMultiSelect() {
2937
- return instance.getRowCanMultiSelect(row.id);
2706
+ var _instance$options$ena3;
2707
+
2708
+ if (typeof instance.options.enableMultiRowSelection === 'function') {
2709
+ return instance.options.enableMultiRowSelection(row);
2710
+ }
2711
+
2712
+ return (_instance$options$ena3 = instance.options.enableMultiRowSelection) != null ? _instance$options$ena3 : true;
2938
2713
  },
2939
- getCanSelect: function getCanSelect() {
2940
- return instance.getRowCanSelect(row.id);
2714
+ getToggleSelectedHandler: function getToggleSelectedHandler() {
2715
+ var canSelect = row.getCanSelect();
2716
+ return function (e) {
2717
+ var _target;
2718
+
2719
+ if (!canSelect) return;
2720
+ row.toggleSelected((_target = e.target) == null ? void 0 : _target.checked);
2721
+ };
2941
2722
  }
2942
2723
  };
2943
2724
  }
@@ -2959,7 +2740,7 @@ var mutateRowIsSelected = function mutateRowIsSelected(selectedRowIds, id, value
2959
2740
  } // }
2960
2741
 
2961
2742
 
2962
- if ((_row$subRows = row.subRows) != null && _row$subRows.length && instance.getRowCanSelectSubRows(row.id)) {
2743
+ if ((_row$subRows = row.subRows) != null && _row$subRows.length && row.getCanSelectSubRows()) {
2963
2744
  row.subRows.forEach(function (row) {
2964
2745
  return mutateRowIsSelected(selectedRowIds, row.id, value, instance);
2965
2746
  });
@@ -3134,59 +2915,33 @@ function toString(a) {
3134
2915
 
3135
2916
  //
3136
2917
  var Sorting = {
3137
- getDefaultColumn: function getDefaultColumn() {
3138
- return {
3139
- sortingFn: 'auto'
3140
- };
3141
- },
3142
- getInitialState: function getInitialState() {
3143
- return {
2918
+ getInitialState: function getInitialState(state) {
2919
+ return _extends({
3144
2920
  sorting: []
3145
- };
3146
- },
3147
- getDefaultOptions: function getDefaultOptions(instance) {
3148
- return {
3149
- onSortingChange: makeStateUpdater('sorting', instance),
3150
- isMultiSortEvent: function isMultiSortEvent(e) {
3151
- return e.shiftKey;
3152
- }
3153
- };
2921
+ }, state);
3154
2922
  },
3155
- createColumn: function createColumn(column, instance) {
3156
- return {
3157
- sortingFn: column.sortingFn,
3158
- getCanSort: function getCanSort() {
3159
- return instance.getColumnCanSort(column.id);
3160
- },
3161
- getCanMultiSort: function getCanMultiSort() {
3162
- return instance.getColumnCanMultiSort(column.id);
3163
- },
3164
- getSortIndex: function getSortIndex() {
3165
- return instance.getColumnSortIndex(column.id);
3166
- },
3167
- getIsSorted: function getIsSorted() {
3168
- return instance.getColumnIsSorted(column.id);
3169
- },
3170
- resetSorting: function resetSorting() {
3171
- return instance.resetSorting(column.id);
3172
- },
3173
- toggleSorting: function toggleSorting(desc, isMulti) {
3174
- return instance.toggleColumnSorting(column.id, desc, isMulti);
3175
- },
3176
- getToggleSortingHandler: function getToggleSortingHandler() {
3177
- return instance.getToggleSortingHandler(column.id);
2923
+ getDefaultColumn: function getDefaultColumn() {
2924
+ return {
2925
+ sortingFn: 'auto'
2926
+ };
2927
+ },
2928
+ getDefaultOptions: function getDefaultOptions(instance) {
2929
+ return {
2930
+ onSortingChange: makeStateUpdater('sorting', instance),
2931
+ isMultiSortEvent: function isMultiSortEvent(e) {
2932
+ return e.shiftKey;
3178
2933
  }
3179
2934
  };
3180
2935
  },
3181
- createInstance: function createInstance(instance) {
2936
+ createColumn: function createColumn(column, instance) {
3182
2937
  return {
3183
- getColumnAutoSortingFn: function getColumnAutoSortingFn(columnId) {
3184
- var firstRows = instance.getGlobalFilteredRowModel().flatRows.slice(100);
2938
+ getAutoSortingFn: function getAutoSortingFn() {
2939
+ var firstRows = instance.getFilteredRowModel().flatRows.slice(100);
3185
2940
  var isString = false;
3186
2941
 
3187
2942
  for (var _iterator = _createForOfIteratorHelperLoose(firstRows), _step; !(_step = _iterator()).done;) {
3188
2943
  var row = _step.value;
3189
- var value = row == null ? void 0 : row.values[columnId];
2944
+ var value = row == null ? void 0 : row.values[column.id];
3190
2945
 
3191
2946
  if (Object.prototype.toString.call(value) === '[object Date]') {
3192
2947
  return sortingFns.datetime;
@@ -3207,9 +2962,9 @@ var Sorting = {
3207
2962
 
3208
2963
  return sortingFns.basic;
3209
2964
  },
3210
- getColumnAutoSortDir: function getColumnAutoSortDir(columnId) {
3211
- var firstRow = instance.getGlobalFilteredRowModel().flatRows[0];
3212
- var value = firstRow == null ? void 0 : firstRow.values[columnId];
2965
+ getAutoSortDir: function getAutoSortDir() {
2966
+ var firstRow = instance.getFilteredRowModel().flatRows[0];
2967
+ var value = firstRow == null ? void 0 : firstRow.values[column.id];
3213
2968
 
3214
2969
  if (typeof value === 'string') {
3215
2970
  return 'asc';
@@ -3217,27 +2972,19 @@ var Sorting = {
3217
2972
 
3218
2973
  return 'desc';
3219
2974
  },
3220
- getColumnSortingFn: function getColumnSortingFn(columnId) {
2975
+ getSortingFn: function getSortingFn() {
3221
2976
  var _ref;
3222
2977
 
3223
- var column = instance.getColumn(columnId);
3224
2978
  var userSortingFn = instance.options.sortingFns;
3225
2979
 
3226
2980
  if (!column) {
3227
2981
  throw new Error();
3228
2982
  }
3229
2983
 
3230
- return isFunction(column.sortingFn) ? column.sortingFn : column.sortingFn === 'auto' ? instance.getColumnAutoSortingFn(columnId) : (_ref = userSortingFn == null ? void 0 : userSortingFn[column.sortingFn]) != null ? _ref : sortingFns[column.sortingFn];
3231
- },
3232
- setSorting: function setSorting(updater) {
3233
- return instance.options.onSortingChange == null ? void 0 : instance.options.onSortingChange(updater);
2984
+ return isFunction(column.sortingFn) ? column.sortingFn : column.sortingFn === 'auto' ? column.getAutoSortingFn() : (_ref = userSortingFn == null ? void 0 : userSortingFn[column.sortingFn]) != null ? _ref : sortingFns[column.sortingFn];
3234
2985
  },
3235
- toggleColumnSorting: function toggleColumnSorting(columnId, desc, multi) {
3236
- var column = instance.getColumn(columnId);
3237
-
3238
- if (!column) {
3239
- throw new Error();
3240
- } // if (column.columns.length) {
2986
+ toggleSorting: function toggleSorting(desc, multi) {
2987
+ // if (column.columns.length) {
3241
2988
  // column.columns.forEach((c, i) => {
3242
2989
  // if (c.id) {
3243
2990
  // instance.toggleColumnSorting(c.id, undefined, multi || !!i)
@@ -3245,17 +2992,15 @@ var Sorting = {
3245
2992
  // })
3246
2993
  // return
3247
2994
  // }
3248
-
3249
-
3250
2995
  instance.setSorting(function (old) {
3251
2996
  var _ref2, _column$sortDescFirst, _instance$options$ena, _instance$options$ena2;
3252
2997
 
3253
2998
  // Find any existing sorting for this column
3254
2999
  var existingSorting = old == null ? void 0 : old.find(function (d) {
3255
- return d.id === columnId;
3000
+ return d.id === column.id;
3256
3001
  });
3257
3002
  var existingIndex = old == null ? void 0 : old.findIndex(function (d) {
3258
- return d.id === columnId;
3003
+ return d.id === column.id;
3259
3004
  });
3260
3005
  var hasDescDefined = typeof desc !== 'undefined' && desc !== null;
3261
3006
  var newSorting = []; // What should we do with this sort action?
@@ -3279,7 +3024,7 @@ var Sorting = {
3279
3024
  }
3280
3025
  }
3281
3026
 
3282
- var sortDescFirst = (_ref2 = (_column$sortDescFirst = column.sortDescFirst) != null ? _column$sortDescFirst : instance.options.sortDescFirst) != null ? _ref2 : instance.getColumnAutoSortDir(columnId) === 'desc'; // Handle toggle states that will remove the sorting
3027
+ var sortDescFirst = (_ref2 = (_column$sortDescFirst = column.sortDescFirst) != null ? _column$sortDescFirst : instance.options.sortDescFirst) != null ? _ref2 : column.getAutoSortDir() === 'desc'; // Handle toggle states that will remove the sorting
3283
3028
 
3284
3029
  if (sortAction === 'toggle' && ( // Must be toggling
3285
3030
  (_instance$options$ena = instance.options.enableSortingRemoval) != null ? _instance$options$ena : true) && // If enableSortRemove, enable in general
@@ -3292,14 +3037,14 @@ var Sorting = {
3292
3037
 
3293
3038
  if (sortAction === 'replace') {
3294
3039
  newSorting = [{
3295
- id: columnId,
3040
+ id: column.id,
3296
3041
  desc: hasDescDefined ? desc : !!sortDescFirst
3297
3042
  }];
3298
3043
  } else if (sortAction === 'add' && old != null && old.length) {
3299
3044
  var _instance$options$max;
3300
3045
 
3301
3046
  newSorting = [].concat(old, [{
3302
- id: columnId,
3047
+ id: column.id,
3303
3048
  desc: hasDescDefined ? desc : !!sortDescFirst
3304
3049
  }]); // Take latest n columns
3305
3050
 
@@ -3307,7 +3052,7 @@ var Sorting = {
3307
3052
  } else if (sortAction === 'toggle' && old != null && old.length) {
3308
3053
  // This flips (or sets) the
3309
3054
  newSorting = old.map(function (d) {
3310
- if (d.id === columnId) {
3055
+ if (d.id === column.id) {
3311
3056
  return _extends({}, d, {
3312
3057
  desc: hasDescDefined ? desc : !(existingSorting != null && existingSorting.desc)
3313
3058
  });
@@ -3317,51 +3062,36 @@ var Sorting = {
3317
3062
  });
3318
3063
  } else if (sortAction === 'remove' && old != null && old.length) {
3319
3064
  newSorting = old.filter(function (d) {
3320
- return d.id !== columnId;
3065
+ return d.id !== column.id;
3321
3066
  });
3322
3067
  }
3323
3068
 
3324
3069
  return newSorting;
3325
3070
  });
3326
3071
  },
3327
- getColumnCanSort: function getColumnCanSort(columnId) {
3328
- var _ref3, _ref4, _column$enableSorting;
3329
-
3330
- var column = instance.getColumn(columnId);
3331
-
3332
- if (!column) {
3333
- throw new Error();
3334
- }
3072
+ getCanSort: function getCanSort() {
3073
+ var _column$enableSorting, _instance$options$ena3;
3335
3074
 
3336
- return (_ref3 = (_ref4 = (_column$enableSorting = column.enableSorting) != null ? _column$enableSorting : instance.options.enableSorting) != null ? _ref4 : column.defaultCanSort) != null ? _ref3 : !!column.accessorFn // (!!column.accessorFn ||
3337
- // column.columns?.some(c => c.id && instance.getColumnCanSort(c.id))) ??
3338
- // false
3339
- ;
3075
+ return ((_column$enableSorting = column.enableSorting) != null ? _column$enableSorting : true) && ((_instance$options$ena3 = instance.options.enableSorting) != null ? _instance$options$ena3 : true) && !!column.accessorFn;
3340
3076
  },
3341
- getColumnCanMultiSort: function getColumnCanMultiSort(columnId) {
3342
- var _ref5, _column$enableMultiSo;
3343
-
3344
- var column = instance.getColumn(columnId);
3345
-
3346
- if (!column) {
3347
- throw new Error();
3348
- }
3077
+ getCanMultiSort: function getCanMultiSort() {
3078
+ var _ref3, _column$enableMultiSo;
3349
3079
 
3350
- return (_ref5 = (_column$enableMultiSo = column.enableMultiSort) != null ? _column$enableMultiSo : instance.options.enableMultiSort) != null ? _ref5 : !!column.accessorFn;
3080
+ return (_ref3 = (_column$enableMultiSo = column.enableMultiSort) != null ? _column$enableMultiSo : instance.options.enableMultiSort) != null ? _ref3 : !!column.accessorFn;
3351
3081
  },
3352
- getColumnIsSorted: function getColumnIsSorted(columnId) {
3082
+ getIsSorted: function getIsSorted() {
3353
3083
  var _instance$getState$so;
3354
3084
 
3355
3085
  var columnSort = (_instance$getState$so = instance.getState().sorting) == null ? void 0 : _instance$getState$so.find(function (d) {
3356
- return d.id === columnId;
3086
+ return d.id === column.id;
3357
3087
  });
3358
3088
  return !columnSort ? false : columnSort.desc ? 'desc' : 'asc';
3359
3089
  },
3360
- getColumnSortIndex: function getColumnSortIndex(columnId) {
3090
+ getSortIndex: function getSortIndex() {
3361
3091
  var _instance$getState$so2, _instance$getState$so3;
3362
3092
 
3363
3093
  return (_instance$getState$so2 = (_instance$getState$so3 = instance.getState().sorting) == null ? void 0 : _instance$getState$so3.findIndex(function (d) {
3364
- return d.id === columnId;
3094
+ return d.id === column.id;
3365
3095
  })) != null ? _instance$getState$so2 : -1;
3366
3096
  },
3367
3097
  resetSorting: function resetSorting(columnId) {
@@ -3377,22 +3107,23 @@ var Sorting = {
3377
3107
  instance.setSorting((_instance$initialStat = (_instance$initialStat2 = instance.initialState) == null ? void 0 : _instance$initialStat2.sorting) != null ? _instance$initialStat : []);
3378
3108
  }
3379
3109
  },
3380
- getToggleSortingHandler: function getToggleSortingHandler(columnId) {
3381
- var column = instance.getColumn(columnId);
3382
-
3383
- if (!column) {
3384
- throw new Error();
3385
- }
3386
-
3110
+ getToggleSortingHandler: function getToggleSortingHandler() {
3387
3111
  var canSort = column.getCanSort();
3388
3112
  return function (e) {
3389
3113
  if (!canSort) return;
3390
3114
  e.persist == null ? void 0 : e.persist();
3391
3115
  column.toggleSorting == null ? void 0 : column.toggleSorting(undefined, column.getCanMultiSort() ? instance.options.isMultiSortEvent == null ? void 0 : instance.options.isMultiSortEvent(e) : false);
3392
3116
  };
3117
+ }
3118
+ };
3119
+ },
3120
+ createInstance: function createInstance(instance) {
3121
+ return {
3122
+ setSorting: function setSorting(updater) {
3123
+ return instance.options.onSortingChange == null ? void 0 : instance.options.onSortingChange(updater);
3393
3124
  },
3394
3125
  getPreSortedRowModel: function getPreSortedRowModel() {
3395
- return instance.getGlobalFilteredRowModel();
3126
+ return instance.getFilteredRowModel();
3396
3127
  },
3397
3128
  getSortedRowModel: function getSortedRowModel() {
3398
3129
  if (!instance._getSortedRowModel && instance.options.getSortedRowModel) {
@@ -3411,10 +3142,10 @@ var Sorting = {
3411
3142
 
3412
3143
  //
3413
3144
  var Visibility = {
3414
- getInitialState: function getInitialState() {
3415
- return {
3145
+ getInitialState: function getInitialState(state) {
3146
+ return _extends({
3416
3147
  columnVisibility: {}
3417
- };
3148
+ }, state);
3418
3149
  },
3419
3150
  getDefaultOptions: function getDefaultOptions(instance) {
3420
3151
  return {
@@ -3428,14 +3159,24 @@ var Visibility = {
3428
3159
  },
3429
3160
  createColumn: function createColumn(column, instance) {
3430
3161
  return {
3431
- getCanHide: function getCanHide() {
3432
- return instance.getColumnCanHide(column.id);
3162
+ toggleVisibility: function toggleVisibility(value) {
3163
+ if (column.getCanHide()) {
3164
+ instance.setColumnVisibility(function (old) {
3165
+ var _extends2;
3166
+
3167
+ return _extends({}, old, (_extends2 = {}, _extends2[column.id] = value != null ? value : !column.getIsVisible(), _extends2));
3168
+ });
3169
+ }
3433
3170
  },
3434
3171
  getIsVisible: function getIsVisible() {
3435
- return instance.getColumnIsVisible(column.id);
3172
+ var _instance$getState$co, _instance$getState$co2;
3173
+
3174
+ return (_instance$getState$co = (_instance$getState$co2 = instance.getState().columnVisibility) == null ? void 0 : _instance$getState$co2[column.id]) != null ? _instance$getState$co : true;
3436
3175
  },
3437
- toggleVisibility: function toggleVisibility(value) {
3438
- return instance.toggleColumnVisibility(column.id, value);
3176
+ getCanHide: function getCanHide() {
3177
+ var _column$enableHiding, _instance$options$ena;
3178
+
3179
+ return ((_column$enableHiding = column.enableHiding) != null ? _column$enableHiding : true) && ((_instance$options$ena = instance.options.enableHiding) != null ? _instance$options$ena : true);
3439
3180
  },
3440
3181
  getToggleVisibilityHandler: function getToggleVisibilityHandler() {
3441
3182
  return function (e) {
@@ -3457,7 +3198,7 @@ var Visibility = {
3457
3198
  return cell.column.getIsVisible();
3458
3199
  });
3459
3200
  }, {
3460
- key: 'row._getAllVisibleCells',
3201
+ key: process.env.NODE_ENV === 'production' && 'row._getAllVisibleCells',
3461
3202
  debug: function debug() {
3462
3203
  var _instance$options$deb;
3463
3204
 
@@ -3469,7 +3210,7 @@ var Visibility = {
3469
3210
  }, function (left, center, right) {
3470
3211
  return [].concat(left, center, right);
3471
3212
  }, {
3472
- key: 'row.getVisibleCells',
3213
+ key: process.env.NODE_ENV === 'development' && 'row.getVisibleCells',
3473
3214
  debug: function debug() {
3474
3215
  var _instance$options$deb2;
3475
3216
 
@@ -3519,17 +3260,6 @@ var Visibility = {
3519
3260
  setColumnVisibility: function setColumnVisibility(updater) {
3520
3261
  return instance.options.onColumnVisibilityChange == null ? void 0 : instance.options.onColumnVisibilityChange(updater);
3521
3262
  },
3522
- toggleColumnVisibility: function toggleColumnVisibility(columnId, value) {
3523
- if (!columnId) return;
3524
-
3525
- if (instance.getColumnCanHide(columnId)) {
3526
- instance.setColumnVisibility(function (old) {
3527
- var _extends2;
3528
-
3529
- return _extends({}, old, (_extends2 = {}, _extends2[columnId] = value != null ? value : !instance.getColumnIsVisible(columnId), _extends2));
3530
- });
3531
- }
3532
- },
3533
3263
  toggleAllColumnsVisible: function toggleAllColumnsVisible(value) {
3534
3264
  var _value;
3535
3265
 
@@ -3540,28 +3270,6 @@ var Visibility = {
3540
3270
  return _extends({}, obj, (_extends3 = {}, _extends3[column.id] = !value ? !(column.getCanHide != null && column.getCanHide()) : value, _extends3));
3541
3271
  }, {}));
3542
3272
  },
3543
- getColumnIsVisible: function getColumnIsVisible(columnId) {
3544
- var _ref, _instance$getState$co, _instance$getState$co2;
3545
-
3546
- var column = instance.getColumn(columnId);
3547
-
3548
- if (!column) {
3549
- throw new Error();
3550
- }
3551
-
3552
- return (_ref = (_instance$getState$co = (_instance$getState$co2 = instance.getState().columnVisibility) == null ? void 0 : _instance$getState$co2[columnId]) != null ? _instance$getState$co : column.defaultIsVisible) != null ? _ref : true;
3553
- },
3554
- getColumnCanHide: function getColumnCanHide(columnId) {
3555
- var _ref2, _ref3, _instance$options$ena;
3556
-
3557
- var column = instance.getColumn(columnId);
3558
-
3559
- if (!column) {
3560
- throw new Error();
3561
- }
3562
-
3563
- return (_ref2 = (_ref3 = (_instance$options$ena = instance.options.enableHiding) != null ? _instance$options$ena : column.enableHiding) != null ? _ref3 : column.defaultCanHide) != null ? _ref2 : true;
3564
- },
3565
3273
  getIsAllColumnsVisible: function getIsAllColumnsVisible() {
3566
3274
  return !instance.getAllLeafColumns().some(function (column) {
3567
3275
  return !(column.getIsVisible != null && column.getIsVisible());
@@ -3602,30 +3310,6 @@ var Headers = {
3602
3310
  colSpan: 0,
3603
3311
  rowSpan: 0,
3604
3312
  headerGroup: null,
3605
- getSize: function getSize() {
3606
- var sum = 0;
3607
-
3608
- var recurse = function recurse(header) {
3609
- if (header.subHeaders.length) {
3610
- header.subHeaders.forEach(recurse);
3611
- } else {
3612
- var _header$column$getSiz;
3613
-
3614
- sum += (_header$column$getSiz = header.column.getSize()) != null ? _header$column$getSiz : 0;
3615
- }
3616
- };
3617
-
3618
- recurse(header);
3619
- return sum;
3620
- },
3621
- getStart: function getStart() {
3622
- if (header.index > 0) {
3623
- var prevSiblingHeader = header.headerGroup.headers[header.index - 1];
3624
- return prevSiblingHeader.getStart() + prevSiblingHeader.getSize();
3625
- }
3626
-
3627
- return 0;
3628
- },
3629
3313
  getLeafHeaders: function getLeafHeaders() {
3630
3314
  var leafHeaders = [];
3631
3315
 
@@ -3678,7 +3362,7 @@ var Headers = {
3678
3362
  var headerGroups = buildHeaderGroups(allColumns, [].concat(leftColumns, centerColumns, rightColumns), instance);
3679
3363
  return headerGroups;
3680
3364
  }, {
3681
- key: 'getHeaderGroups',
3365
+ key: process.env.NODE_ENV === 'development' && 'getHeaderGroups',
3682
3366
  debug: function debug() {
3683
3367
  var _instance$options$deb;
3684
3368
 
@@ -3693,7 +3377,7 @@ var Headers = {
3693
3377
  });
3694
3378
  return buildHeaderGroups(allColumns, leafColumns, instance, 'center');
3695
3379
  }, {
3696
- key: 'getCenterHeaderGroups',
3380
+ key: process.env.NODE_ENV === 'development' && 'getCenterHeaderGroups',
3697
3381
  debug: function debug() {
3698
3382
  var _instance$options$deb2;
3699
3383
 
@@ -3708,7 +3392,7 @@ var Headers = {
3708
3392
  });
3709
3393
  return buildHeaderGroups(allColumns, leafColumns, instance, 'left');
3710
3394
  }, {
3711
- key: 'getLeftHeaderGroups',
3395
+ key: process.env.NODE_ENV === 'development' && 'getLeftHeaderGroups',
3712
3396
  debug: function debug() {
3713
3397
  var _instance$options$deb3;
3714
3398
 
@@ -3723,7 +3407,7 @@ var Headers = {
3723
3407
  });
3724
3408
  return buildHeaderGroups(allColumns, leafColumns, instance, 'right');
3725
3409
  }, {
3726
- key: 'getRightHeaderGroups',
3410
+ key: process.env.NODE_ENV === 'development' && 'getRightHeaderGroups',
3727
3411
  debug: function debug() {
3728
3412
  var _instance$options$deb4;
3729
3413
 
@@ -3736,7 +3420,7 @@ var Headers = {
3736
3420
  }, function (headerGroups) {
3737
3421
  return [].concat(headerGroups).reverse();
3738
3422
  }, {
3739
- key: 'getFooterGroups',
3423
+ key: process.env.NODE_ENV === 'development' && 'getFooterGroups',
3740
3424
  debug: function debug() {
3741
3425
  var _instance$options$deb5;
3742
3426
 
@@ -3748,7 +3432,7 @@ var Headers = {
3748
3432
  }, function (headerGroups) {
3749
3433
  return [].concat(headerGroups).reverse();
3750
3434
  }, {
3751
- key: 'getLeftFooterGroups',
3435
+ key: process.env.NODE_ENV === 'development' && 'getLeftFooterGroups',
3752
3436
  debug: function debug() {
3753
3437
  var _instance$options$deb6;
3754
3438
 
@@ -3760,7 +3444,7 @@ var Headers = {
3760
3444
  }, function (headerGroups) {
3761
3445
  return [].concat(headerGroups).reverse();
3762
3446
  }, {
3763
- key: 'getCenterFooterGroups',
3447
+ key: process.env.NODE_ENV === 'development' && 'getCenterFooterGroups',
3764
3448
  debug: function debug() {
3765
3449
  var _instance$options$deb7;
3766
3450
 
@@ -3772,7 +3456,7 @@ var Headers = {
3772
3456
  }, function (headerGroups) {
3773
3457
  return [].concat(headerGroups).reverse();
3774
3458
  }, {
3775
- key: 'getRightFooterGroups',
3459
+ key: process.env.NODE_ENV === 'development' && 'getRightFooterGroups',
3776
3460
  debug: function debug() {
3777
3461
  var _instance$options$deb8;
3778
3462
 
@@ -3787,7 +3471,7 @@ var Headers = {
3787
3471
  return headerGroup.headers;
3788
3472
  }).flat();
3789
3473
  }, {
3790
- key: 'getFlatHeaders',
3474
+ key: process.env.NODE_ENV === 'development' && 'getFlatHeaders',
3791
3475
  debug: function debug() {
3792
3476
  var _instance$options$deb9;
3793
3477
 
@@ -3801,7 +3485,7 @@ var Headers = {
3801
3485
  return headerGroup.headers;
3802
3486
  }).flat();
3803
3487
  }, {
3804
- key: 'getLeftFlatHeaders',
3488
+ key: process.env.NODE_ENV === 'development' && 'getLeftFlatHeaders',
3805
3489
  debug: function debug() {
3806
3490
  var _instance$options$deb10;
3807
3491
 
@@ -3815,7 +3499,7 @@ var Headers = {
3815
3499
  return headerGroup.headers;
3816
3500
  }).flat();
3817
3501
  }, {
3818
- key: 'getCenterFlatHeaders',
3502
+ key: process.env.NODE_ENV === 'development' && 'getCenterFlatHeaders',
3819
3503
  debug: function debug() {
3820
3504
  var _instance$options$deb11;
3821
3505
 
@@ -3829,7 +3513,7 @@ var Headers = {
3829
3513
  return headerGroup.headers;
3830
3514
  }).flat();
3831
3515
  }, {
3832
- key: 'getRightFlatHeaders',
3516
+ key: process.env.NODE_ENV === 'development' && 'getRightFlatHeaders',
3833
3517
  debug: function debug() {
3834
3518
  var _instance$options$deb12;
3835
3519
 
@@ -3846,7 +3530,7 @@ var Headers = {
3846
3530
  return !((_header$subHeaders = header.subHeaders) != null && _header$subHeaders.length);
3847
3531
  });
3848
3532
  }, {
3849
- key: 'getCenterLeafHeaders',
3533
+ key: process.env.NODE_ENV === 'development' && 'getCenterLeafHeaders',
3850
3534
  debug: function debug() {
3851
3535
  var _instance$options$deb13;
3852
3536
 
@@ -3862,7 +3546,7 @@ var Headers = {
3862
3546
  return !((_header$subHeaders2 = header.subHeaders) != null && _header$subHeaders2.length);
3863
3547
  });
3864
3548
  }, {
3865
- key: 'getLeftLeafHeaders',
3549
+ key: process.env.NODE_ENV === 'development' && 'getLeftLeafHeaders',
3866
3550
  debug: function debug() {
3867
3551
  var _instance$options$deb14;
3868
3552
 
@@ -3878,7 +3562,7 @@ var Headers = {
3878
3562
  return !((_header$subHeaders3 = header.subHeaders) != null && _header$subHeaders3.length);
3879
3563
  });
3880
3564
  }, {
3881
- key: 'getRightLeafHeaders',
3565
+ key: process.env.NODE_ENV === 'development' && 'getRightLeafHeaders',
3882
3566
  debug: function debug() {
3883
3567
  var _instance$options$deb15;
3884
3568
 
@@ -3894,7 +3578,7 @@ var Headers = {
3894
3578
  return header.getLeafHeaders();
3895
3579
  }).flat();
3896
3580
  }, {
3897
- key: 'getLeafHeaders',
3581
+ key: process.env.NODE_ENV === 'development' && 'getLeafHeaders',
3898
3582
  debug: function debug() {
3899
3583
  var _instance$options$deb16;
3900
3584
 
@@ -4080,9 +3764,13 @@ function createTableInstance(options) {
4080
3764
  coreProgress: 1
4081
3765
  };
4082
3766
 
4083
- var initialState = _extends({}, coreInitialState, (_options$initialState = options.initialState) != null ? _options$initialState : {}, instance._features.reduce(function (obj, feature) {
4084
- return Object.assign(obj, feature.getInitialState == null ? void 0 : feature.getInitialState(options.initialState));
4085
- }, {}));
3767
+ var initialState = _extends({}, coreInitialState, (_options$initialState = options.initialState) != null ? _options$initialState : {});
3768
+
3769
+ instance._features.forEach(function (feature) {
3770
+ var _feature$getInitialSt;
3771
+
3772
+ initialState = (_feature$getInitialSt = feature.getInitialState == null ? void 0 : feature.getInitialState(initialState)) != null ? _feature$getInitialSt : initialState;
3773
+ });
4086
3774
 
4087
3775
  var queued = [];
4088
3776
  var queuedTimeout = false;
@@ -4110,7 +3798,6 @@ function createTableInstance(options) {
4110
3798
  });
4111
3799
  }
4112
3800
  },
4113
- // willUpdate: () => {},
4114
3801
  initialState: initialState,
4115
3802
  reset: function reset() {
4116
3803
  instance.setState(instance.initialState);
@@ -4291,7 +3978,7 @@ function getCoreRowModelSync() {
4291
3978
  rowsById: rowsById
4292
3979
  };
4293
3980
  }, {
4294
- key: 'getRowModel',
3981
+ key: process.env.NODE_ENV === 'development' && 'getRowModel',
4295
3982
  debug: function debug() {
4296
3983
  var _instance$options$deb;
4297
3984
 
@@ -4389,7 +4076,7 @@ function getCoreRowModelAsync(opts) {
4389
4076
  };
4390
4077
  };
4391
4078
  }, {
4392
- key: 'getRowModel',
4079
+ key: process.env.NODE_ENV === 'development' && 'getRowModel',
4393
4080
  initialSync: opts == null ? void 0 : opts.initialSync,
4394
4081
  onProgress: function onProgress(progress) {
4395
4082
  instance.setState(function (old) {
@@ -4412,243 +4099,98 @@ function getCoreRowModelAsync(opts) {
4412
4099
  };
4413
4100
  }
4414
4101
 
4415
- function filterRowModelFromLeafs(rowsToFilter, filterRows, instance) {
4416
- var newFilteredFlatRows = [];
4417
- var newFilteredRowsById = {};
4418
-
4419
- var recurseFilterRows = function recurseFilterRows(rowsToFilter, depth) {
4420
- if (depth === void 0) {
4421
- depth = 0;
4422
- }
4423
-
4424
- rowsToFilter = rowsToFilter.slice(); // Filter from children up first
4425
-
4426
- for (var i = 0; i < rowsToFilter.length; i++) {
4427
- var _row$subRows;
4428
-
4429
- var row = rowsToFilter[i];
4430
-
4431
- if (!((_row$subRows = row.subRows) != null && _row$subRows.length)) {
4432
- continue;
4433
- }
4434
-
4435
- rowsToFilter[i] = instance.createRow(row.id, row.original, row.index, row.depth, row.values);
4436
- rowsToFilter[i].subRows = recurseFilterRows(row.subRows, depth + 1);
4437
-
4438
- if (!rowsToFilter[i].subRows.length) {
4439
- rowsToFilter.splice(i, 1);
4440
- i--;
4441
- }
4442
- }
4443
-
4444
- rowsToFilter = filterRows(rowsToFilter, depth); // Apply the filter to any subRows
4445
-
4446
- rowsToFilter.forEach(function (row) {
4447
- newFilteredFlatRows.push(row);
4448
- newFilteredRowsById[row.id] = row;
4449
- });
4450
- return rowsToFilter;
4451
- };
4452
-
4453
- return {
4454
- rows: recurseFilterRows(rowsToFilter),
4455
- flatRows: newFilteredFlatRows,
4456
- rowsById: newFilteredRowsById
4457
- };
4458
- }
4459
- function filterRowModelFromRoot(rowsToFilter, filterRows, instance) {
4460
- var newFilteredFlatRows = [];
4461
- var newFilteredRowsById = {}; // Filters top level and nested rows
4462
-
4463
- var recurseFilterRows = function recurseFilterRows(rowsToFilter, depth) {
4464
- if (depth === void 0) {
4465
- depth = 0;
4466
- }
4467
-
4468
- // Filter from parents downward first
4469
- rowsToFilter = filterRows(rowsToFilter, depth); // Apply the filter to any subRows
4470
-
4471
- for (var i = 0; i < rowsToFilter.length; i++) {
4472
- var _row$subRows2;
4473
-
4474
- var row = rowsToFilter[i];
4475
- newFilteredFlatRows.push(row);
4476
- newFilteredRowsById[row.id] = row;
4477
-
4478
- if (!((_row$subRows2 = row.subRows) != null && _row$subRows2.length)) {
4479
- rowsToFilter.splice(i, 1);
4480
- i--;
4481
- continue;
4482
- }
4483
-
4484
- rowsToFilter[i] = instance.createRow(row.id, row.original, row.index, row.depth, row.values);
4485
- rowsToFilter[i].subRows = recurseFilterRows(row.subRows, depth + 1);
4486
- }
4487
-
4488
- return rowsToFilter;
4489
- };
4490
-
4491
- return {
4492
- rows: recurseFilterRows(rowsToFilter),
4493
- flatRows: newFilteredFlatRows,
4494
- rowsById: newFilteredRowsById
4495
- };
4496
- }
4497
-
4498
- function getColumnFilteredRowModelSync() {
4102
+ function getFilteredRowModelSync() {
4499
4103
  return function (instance) {
4500
4104
  return memo(function () {
4501
- return [instance.getState().columnFilters, instance.getPreColumnFilteredRowModel()];
4502
- }, function (columnFilters, rowModel) {
4503
- var columnFilteredRowModel = function () {
4504
- if (!rowModel.rows.length || !(columnFilters != null && columnFilters.length)) {
4505
- return rowModel;
4506
- }
4507
-
4508
- var filterFromLeafRows = instance.options.filterFromLeafRows;
4509
-
4510
- var filterRows = function filterRows(rowsToFilter, depth) {
4511
- for (var i = 0; i < columnFilters.length; i++) {
4512
- var _columnFilters$i = columnFilters[i],
4513
- columnId = _columnFilters$i.id,
4514
- filterValue = _columnFilters$i.value; // Find the columnFilters column
4515
-
4516
- var column = instance.getColumn(columnId);
4517
-
4518
- if (!column) {
4519
- if (process.env.NODE_ENV !== 'production') {
4520
- console.warn("Table: Could not find a column with id: " + columnId);
4521
- }
4522
-
4523
- throw new Error();
4524
- }
4525
-
4526
- if (depth === 0) {
4527
- (function () {
4528
- var preFilteredRows = [].concat(rowsToFilter);
4529
-
4530
- column.getPreFilteredRows = function () {
4531
- return preFilteredRows;
4532
- };
4533
- })();
4534
- }
4535
-
4536
- var filterFn = instance.getColumnFilterFn(column.id);
4537
-
4538
- if (!filterFn) {
4539
- if (process.env.NODE_ENV !== 'production') {
4540
- console.warn("Could not find a valid 'column.filterFn' for column with the ID: " + column.id + ".");
4541
- }
4105
+ return [instance.getPreFilteredRowModel(), instance.getState().columnFilters, instance.getState().globalFilter];
4106
+ }, function (rowModel, columnFilters, globalFilter) {
4107
+ if (!rowModel.rows.length || !(columnFilters != null && columnFilters.length) && !globalFilter) {
4108
+ return rowModel;
4109
+ }
4542
4110
 
4543
- continue;
4544
- } // Pass the rows, id, filterValue and column to the filterFn
4545
- // to get the filtered rows back
4111
+ var resolvedColumnFilters = [];
4112
+ var resolvedGlobalFilters = [];
4113
+ (columnFilters != null ? columnFilters : []).forEach(function (d) {
4114
+ var _filterFn$resolveFilt;
4546
4115
 
4116
+ var column = instance.getColumn(d.id);
4547
4117
 
4548
- rowsToFilter = filterFn(rowsToFilter, [columnId], filterValue);
4118
+ if (!column) {
4119
+ if (process.env.NODE_ENV !== 'production') {
4120
+ console.warn("Table: Could not find a column to filter with columnId: " + d.id);
4549
4121
  }
4550
-
4551
- return rowsToFilter;
4552
- };
4553
-
4554
- if (filterFromLeafRows) {
4555
- return filterRowModelFromLeafs(rowModel.rows, filterRows, instance);
4556
- }
4557
-
4558
- return filterRowModelFromRoot(rowModel.rows, filterRows, instance);
4559
- }(); // Now that each filtered column has it's partially filtered rows,
4560
- // lets assign the final filtered rows to all of the other columns
4561
-
4562
-
4563
- var nonFilteredColumns = instance.getAllLeafColumns().filter(function (column) {
4564
- var _instance$getState$co;
4565
-
4566
- return !((_instance$getState$co = instance.getState().columnFilters) != null && _instance$getState$co.find(function (d) {
4567
- return d.id === column.id;
4568
- }));
4569
- }); // This essentially enables faceted filter options to be built easily
4570
- // using every column's preFilteredRows value
4571
-
4572
- nonFilteredColumns.forEach(function (column) {
4573
- column.getPreFilteredRows = function () {
4574
- return columnFilteredRowModel.rows;
4575
- };
4576
- });
4577
- return columnFilteredRowModel;
4578
- }, {
4579
- key: 'getColumnFilteredRowModelSync',
4580
- debug: function debug() {
4581
- var _instance$options$deb;
4582
-
4583
- return (_instance$options$deb = instance.options.debugAll) != null ? _instance$options$deb : instance.options.debugTable;
4584
- },
4585
- onChange: function onChange() {
4586
- instance.queue(function () {
4587
- instance._autoResetPageIndex();
4588
- });
4589
- }
4590
- });
4591
- };
4592
- }
4593
-
4594
- function getGlobalFilteredRowModelSync() {
4595
- return function (instance) {
4596
- return memo(function () {
4597
- return [instance.getState().globalFilter, instance.getPreGlobalFilteredRowModel()];
4598
- }, function (globalFilter, rowModel) {
4599
- var globalFilteredRowModel = function () {
4600
- if (!rowModel.rows.length || !globalFilter) {
4601
- return rowModel;
4602
4122
  }
4603
4123
 
4604
- var filterFromLeafRows = instance.options.filterFromLeafRows;
4605
- var filterFn = instance.getGlobalFilterFn();
4124
+ var filterFn = column.getFilterFn();
4606
4125
 
4607
4126
  if (!filterFn) {
4608
4127
  if (process.env.NODE_ENV !== 'production') {
4609
- console.warn("Could not find a valid 'globalFilterType'");
4128
+ console.warn("Could not find a valid 'column.filterFn' for column with the ID: " + column.id + ".");
4610
4129
  }
4611
4130
 
4612
- return rowModel;
4131
+ return;
4613
4132
  }
4614
4133
 
4615
- var filterableColumns = instance.getAllLeafColumns().filter(function (column) {
4616
- return column.getCanGlobalFilter();
4134
+ resolvedColumnFilters.push({
4135
+ id: d.id,
4136
+ filterFn: filterFn,
4137
+ resolvedValue: (_filterFn$resolveFilt = filterFn.resolveFilterValue == null ? void 0 : filterFn.resolveFilterValue(d.value)) != null ? _filterFn$resolveFilt : d.value
4617
4138
  });
4618
- var filterableColumnIds = filterableColumns.map(function (d) {
4619
- return d.id;
4139
+ });
4140
+ var filterableIds = columnFilters.map(function (d) {
4141
+ return d.id;
4142
+ });
4143
+ var globalFilterFn = instance.getGlobalFilterFn();
4144
+ var globallyFilterableColumns = instance.getAllLeafColumns().filter(function (column) {
4145
+ return column.getCanGlobalFilter();
4146
+ });
4147
+
4148
+ if (globalFilter && globalFilterFn && globallyFilterableColumns.length) {
4149
+ filterableIds.push('__global__');
4150
+ globallyFilterableColumns.forEach(function (column) {
4151
+ var _globalFilterFn$resol;
4152
+
4153
+ resolvedGlobalFilters.push({
4154
+ id: column.id,
4155
+ filterFn: globalFilterFn,
4156
+ resolvedValue: (_globalFilterFn$resol = globalFilterFn.resolveFilterValue == null ? void 0 : globalFilterFn.resolveFilterValue(globalFilter)) != null ? _globalFilterFn$resol : globalFilter
4157
+ });
4620
4158
  });
4159
+ } // Flag the prefiltered row model with each filter state
4621
4160
 
4622
- var filterRows = function filterRows(rows) {
4623
- return filterFn(rows, filterableColumnIds, globalFilter);
4624
- };
4625
4161
 
4626
- if (filterFromLeafRows) {
4627
- return filterRowModelFromLeafs(rowModel.rows, filterRows, instance);
4162
+ for (var j = 0; j < rowModel.flatRows.length; j++) {
4163
+ var row = rowModel.flatRows[j];
4164
+ row.columnFilterMap = {};
4165
+
4166
+ if (resolvedColumnFilters.length) {
4167
+ for (var i = 0; i < resolvedColumnFilters.length; i++) {
4168
+ var columnFilter = resolvedColumnFilters[i]; // Tag the row with the column filter state
4169
+
4170
+ row.columnFilterMap[columnFilter.id] = columnFilter.filterFn(row, columnFilter.id, columnFilter.resolvedValue);
4171
+ }
4628
4172
  }
4629
4173
 
4630
- return filterRowModelFromRoot(rowModel.rows, filterRows, instance);
4631
- }(); // Now that each filtered column has it's partially filtered rows,
4632
- // lets assign the final filtered rows to all of the other columns
4174
+ if (resolvedGlobalFilters.length) {
4175
+ for (var _i = 0; _i < resolvedGlobalFilters.length; _i++) {
4176
+ var _globalFilter = resolvedGlobalFilters[_i]; // Tag the row with the first truthy global filter state
4633
4177
 
4178
+ if (_globalFilter.filterFn(row, _globalFilter.id, _globalFilter.resolvedValue)) {
4179
+ row.columnFilterMap.__global__ = true;
4180
+ break;
4181
+ }
4182
+ }
4634
4183
 
4635
- var nonFilteredColumns = instance.getAllLeafColumns().filter(function (column) {
4636
- var _instance$getState$co;
4184
+ if (row.columnFilterMap.__global__ !== true) {
4185
+ row.columnFilterMap.__global__ = false;
4186
+ }
4187
+ }
4188
+ } // Filter final rows using all of the active filters
4637
4189
 
4638
- return !((_instance$getState$co = instance.getState().columnFilters) != null && _instance$getState$co.find(function (d) {
4639
- return d.id === column.id;
4640
- }));
4641
- }); // This essentially enables faceted filter options to be built easily
4642
- // using every column's preFilteredRows value
4643
4190
 
4644
- nonFilteredColumns.forEach(function (column) {
4645
- column.getPreFilteredRows = function () {
4646
- return globalFilteredRowModel.rows;
4647
- };
4648
- });
4649
- return globalFilteredRowModel;
4191
+ return filterRows(rowModel.rows, filterableIds, instance);
4650
4192
  }, {
4651
- key: 'getGlobalFilteredRowModelSync',
4193
+ key: process.env.NODE_ENV === 'development' && 'getFilteredRowModelSync',
4652
4194
  debug: function debug() {
4653
4195
  var _instance$options$deb;
4654
4196
 
@@ -4676,7 +4218,7 @@ function getSortedRowModelSync() {
4676
4218
  var sortedFlatRows = []; // Filter out sortings that correspond to non existing columns
4677
4219
 
4678
4220
  var availableSorting = sortingState.filter(function (sort) {
4679
- return instance.getColumnCanSort(sort.id);
4221
+ return instance.getColumn(sort.id).getCanSort();
4680
4222
  });
4681
4223
  var columnInfoById = {};
4682
4224
  availableSorting.forEach(function (sortEntry) {
@@ -4684,7 +4226,7 @@ function getSortedRowModelSync() {
4684
4226
  columnInfoById[sortEntry.id] = {
4685
4227
  sortUndefined: column.sortUndefined,
4686
4228
  invertSorting: column.invertSorting,
4687
- sortingFn: instance.getColumnSortingFn(sortEntry.id)
4229
+ sortingFn: column.getSortingFn()
4688
4230
  };
4689
4231
  });
4690
4232
 
@@ -4748,7 +4290,7 @@ function getSortedRowModelSync() {
4748
4290
  rowsById: rowModel.rowsById
4749
4291
  };
4750
4292
  }, {
4751
- key: 'getSortedRowModel',
4293
+ key: process.env.NODE_ENV === 'development' && 'getSortedRowModel',
4752
4294
  debug: function debug() {
4753
4295
  var _instance$options$deb;
4754
4296
 
@@ -4890,7 +4432,7 @@ function getGroupedRowModelSync() {
4890
4432
  rowsById: groupedRowsById
4891
4433
  };
4892
4434
  }, {
4893
- key: 'getGroupedRowModel',
4435
+ key: process.env.NODE_ENV === 'development' && 'getGroupedRowModel',
4894
4436
  debug: function debug() {
4895
4437
  var _instance$options$deb;
4896
4438
 
@@ -4935,7 +4477,7 @@ function getExpandedRowModel() {
4935
4477
 
4936
4478
  return expandRows(rowModel, instance);
4937
4479
  }, {
4938
- key: 'getExpandedRowModel',
4480
+ key: process.env.NODE_ENV === 'development' && 'getExpandedRowModel',
4939
4481
  debug: function debug() {
4940
4482
  var _instance$options$deb;
4941
4483
 
@@ -4952,7 +4494,7 @@ function expandRows(rowModel, instance) {
4952
4494
 
4953
4495
  expandedRows.push(row);
4954
4496
 
4955
- if (instance.options.expandSubRows && (_row$subRows = row.subRows) != null && _row$subRows.length && instance.getIsRowExpanded(row.id)) {
4497
+ if (instance.options.expandSubRows && (_row$subRows = row.subRows) != null && _row$subRows.length && row.getIsExpanded()) {
4956
4498
  row.subRows.forEach(handleRow);
4957
4499
  }
4958
4500
  };
@@ -4997,7 +4539,7 @@ function getPaginationRowModel(opts) {
4997
4539
  rowsById: rowsById
4998
4540
  };
4999
4541
  }, {
5000
- key: 'getPaginationRowModel',
4542
+ key: process.env.NODE_ENV === 'development' && 'getPaginationRowModel',
5001
4543
  debug: function debug() {
5002
4544
  var _instance$options$deb;
5003
4545
 
@@ -5007,5 +4549,5 @@ function getPaginationRowModel(opts) {
5007
4549
  };
5008
4550
  }
5009
4551
 
5010
- export { ColumnSizing, Expanding, Filters, Grouping, Headers, Ordering, Pagination, Pinning, RowSelection, Sorting, Visibility, buildHeaderGroups, createTableFactory, createTableInstance, defaultColumnSizing, expandRows, flattenBy, functionalUpdate, getBatchGroups, getColumnFilteredRowModelSync, getCoreRowModelAsync, getCoreRowModelSync, getExpandedRowModel, getGlobalFilteredRowModelSync, getGroupedRowModelSync, getPaginationRowModel, getSortedRowModelSync, incrementalMemo, isFunction, isRowSelected, makeStateUpdater, memo, noop, passiveEventSupported, selectRowsFn, shouldAutoRemoveFilter };
4552
+ export { ColumnSizing, Expanding, Filters, Grouping, Headers, Ordering, Pagination, Pinning, RowSelection, Sorting, Visibility, buildHeaderGroups, createTableFactory, createTableInstance, defaultColumnSizing, expandRows, flattenBy, functionalUpdate, getBatchGroups, getCoreRowModelAsync, getCoreRowModelSync, getExpandedRowModel, getFilteredRowModelSync, getGroupedRowModelSync, getPaginationRowModel, getRowModelMinMaxValues, getRowModelUniqueValues, getSortedRowModelSync, incrementalMemo, isFunction, isRowSelected, makeStateUpdater, memo, noop, orderColumns, passiveEventSupported, selectRowsFn, shouldAutoRemoveFilter };
5011
4553
  //# sourceMappingURL=index.js.map