@tanstack/react-table 8.0.0-alpha.2 → 8.0.0-alpha.20

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 (99) hide show
  1. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -78
  2. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  3. package/build/cjs/index.js +96 -12
  4. package/build/cjs/index.js.map +1 -1
  5. package/build/esm/index.js +40 -3663
  6. package/build/esm/index.js.map +1 -1
  7. package/build/stats-html.html +1 -1
  8. package/build/stats-react.json +28 -676
  9. package/build/types/index.d.ts +13 -7
  10. package/build/umd/index.development.js +50 -3665
  11. package/build/umd/index.development.js.map +1 -1
  12. package/build/umd/index.production.js +1 -1
  13. package/build/umd/index.production.js.map +1 -1
  14. package/package.json +4 -1
  15. package/src/index.tsx +104 -7
  16. package/build/cjs/aggregationTypes.js +0 -130
  17. package/build/cjs/aggregationTypes.js.map +0 -1
  18. package/build/cjs/core.js +0 -519
  19. package/build/cjs/core.js.map +0 -1
  20. package/build/cjs/createTable.js +0 -103
  21. package/build/cjs/createTable.js.map +0 -1
  22. package/build/cjs/features/ColumnSizing.js +0 -331
  23. package/build/cjs/features/ColumnSizing.js.map +0 -1
  24. package/build/cjs/features/Expanding.js +0 -234
  25. package/build/cjs/features/Expanding.js.map +0 -1
  26. package/build/cjs/features/Filters.js +0 -396
  27. package/build/cjs/features/Filters.js.map +0 -1
  28. package/build/cjs/features/Grouping.js +0 -228
  29. package/build/cjs/features/Grouping.js.map +0 -1
  30. package/build/cjs/features/Headers.js +0 -486
  31. package/build/cjs/features/Headers.js.map +0 -1
  32. package/build/cjs/features/Ordering.js +0 -83
  33. package/build/cjs/features/Ordering.js.map +0 -1
  34. package/build/cjs/features/Pinning.js +0 -163
  35. package/build/cjs/features/Pinning.js.map +0 -1
  36. package/build/cjs/features/Sorting.js +0 -269
  37. package/build/cjs/features/Sorting.js.map +0 -1
  38. package/build/cjs/features/Visibility.js +0 -160
  39. package/build/cjs/features/Visibility.js.map +0 -1
  40. package/build/cjs/filterTypes.js +0 -172
  41. package/build/cjs/filterTypes.js.map +0 -1
  42. package/build/cjs/sortTypes.js +0 -121
  43. package/build/cjs/sortTypes.js.map +0 -1
  44. package/build/cjs/utils/columnFilterRowsFn.js +0 -130
  45. package/build/cjs/utils/columnFilterRowsFn.js.map +0 -1
  46. package/build/cjs/utils/expandRowsFn.js +0 -38
  47. package/build/cjs/utils/expandRowsFn.js.map +0 -1
  48. package/build/cjs/utils/globalFilterRowsFn.js +0 -100
  49. package/build/cjs/utils/globalFilterRowsFn.js.map +0 -1
  50. package/build/cjs/utils/groupRowsFn.js +0 -154
  51. package/build/cjs/utils/groupRowsFn.js.map +0 -1
  52. package/build/cjs/utils/sortRowsFn.js +0 -93
  53. package/build/cjs/utils/sortRowsFn.js.map +0 -1
  54. package/build/cjs/utils.js +0 -143
  55. package/build/cjs/utils.js.map +0 -1
  56. package/build/types/aggregationTypes.d.ts +0 -22
  57. package/build/types/core.d.ts +0 -126
  58. package/build/types/createTable.d.ts +0 -35
  59. package/build/types/features/ColumnSizing.d.ts +0 -73
  60. package/build/types/features/Expanding.d.ts +0 -52
  61. package/build/types/features/Filters.d.ts +0 -93
  62. package/build/types/features/Grouping.d.ts +0 -82
  63. package/build/types/features/Headers.d.ts +0 -41
  64. package/build/types/features/Ordering.d.ts +0 -19
  65. package/build/types/features/Pinning.d.ts +0 -39
  66. package/build/types/features/Sorting.d.ts +0 -75
  67. package/build/types/features/Visibility.d.ts +0 -47
  68. package/build/types/filterTypes.d.ts +0 -50
  69. package/build/types/sortTypes.d.ts +0 -17
  70. package/build/types/types.d.ts +0 -124
  71. package/build/types/utils/columnFilterRowsFn.d.ts +0 -2
  72. package/build/types/utils/expandRowsFn.d.ts +0 -2
  73. package/build/types/utils/globalFilterRowsFn.d.ts +0 -2
  74. package/build/types/utils/groupRowsFn.d.ts +0 -2
  75. package/build/types/utils/sortRowsFn.d.ts +0 -2
  76. package/build/types/utils.d.ts +0 -24
  77. package/src/aggregationTypes.ts +0 -115
  78. package/src/core.tsx +0 -1232
  79. package/src/createTable.tsx +0 -181
  80. package/src/features/ColumnSizing.ts +0 -482
  81. package/src/features/Expanding.ts +0 -388
  82. package/src/features/Filters.ts +0 -707
  83. package/src/features/Grouping.ts +0 -451
  84. package/src/features/Headers.ts +0 -944
  85. package/src/features/Ordering.ts +0 -134
  86. package/src/features/Pinning.ts +0 -213
  87. package/src/features/Sorting.ts +0 -487
  88. package/src/features/Visibility.ts +0 -281
  89. package/src/features/withPagination.oldts +0 -208
  90. package/src/features/withRowSelection.oldts +0 -467
  91. package/src/filterTypes.ts +0 -251
  92. package/src/sortTypes.ts +0 -159
  93. package/src/types.ts +0 -314
  94. package/src/utils/columnFilterRowsFn.ts +0 -162
  95. package/src/utils/expandRowsFn.ts +0 -53
  96. package/src/utils/globalFilterRowsFn.ts +0 -129
  97. package/src/utils/groupRowsFn.ts +0 -196
  98. package/src/utils/sortRowsFn.ts +0 -115
  99. package/src/utils.tsx +0 -249
@@ -1,160 +0,0 @@
1
- /**
2
- * react-table
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
11
- 'use strict';
12
-
13
- Object.defineProperty(exports, '__esModule', { value: true });
14
-
15
- var _rollupPluginBabelHelpers = require('../_virtual/_rollupPluginBabelHelpers.js');
16
- var utils = require('../utils.js');
17
-
18
- //
19
- function getInitialState() {
20
- return {
21
- columnVisibility: {}
22
- };
23
- }
24
- function getDefaultOptions(instance) {
25
- return {
26
- onColumnVisibilityChange: utils.makeStateUpdater('columnVisibility', instance)
27
- };
28
- }
29
- function getDefaultColumn() {
30
- return {
31
- defaultIsVisible: true
32
- };
33
- }
34
- function createColumn(column, instance) {
35
- return {
36
- getCanHide: function getCanHide() {
37
- return instance.getColumnCanHide(column.id);
38
- },
39
- getIsVisible: function getIsVisible() {
40
- return instance.getColumnIsVisible(column.id);
41
- },
42
- toggleVisibility: function toggleVisibility(value) {
43
- return instance.toggleColumnVisibility(column.id, value);
44
- },
45
- getToggleVisibilityProps: function getToggleVisibilityProps(userProps) {
46
- var props = {
47
- type: 'checkbox',
48
- checked: column.getIsVisible == null ? void 0 : column.getIsVisible(),
49
- title: 'Toggle Column Visibility',
50
- onChange: function onChange(e) {
51
- column.toggleVisibility == null ? void 0 : column.toggleVisibility(e.target.checked);
52
- }
53
- };
54
- return utils.propGetter(props, userProps);
55
- }
56
- };
57
- }
58
- function getInstance(instance) {
59
- return {
60
- getVisibleFlatColumns: utils.memo(function () {
61
- return [instance.getAllFlatColumns(), instance.getAllFlatColumns().filter(function (d) {
62
- return d.getIsVisible == null ? void 0 : d.getIsVisible();
63
- }).map(function (d) {
64
- return d.id;
65
- }).join('_')];
66
- }, function (allFlatColumns) {
67
- return allFlatColumns.filter(function (d) {
68
- return d.getIsVisible == null ? void 0 : d.getIsVisible();
69
- });
70
- }, 'getVisibleFlatColumns', instance.options.debug),
71
- getVisibleLeafColumns: utils.memo(function () {
72
- return [instance.getAllLeafColumns(), instance.getAllLeafColumns().filter(function (d) {
73
- return d.getIsVisible == null ? void 0 : d.getIsVisible();
74
- }).map(function (d) {
75
- return d.id;
76
- }).join('_')];
77
- }, function (allFlatColumns) {
78
- return allFlatColumns.filter(function (d) {
79
- return d.getIsVisible == null ? void 0 : d.getIsVisible();
80
- });
81
- }, 'getVisibleLeafColumns', instance.options.debug),
82
- setColumnVisibility: function setColumnVisibility(updater) {
83
- return instance.options.onColumnVisibilityChange == null ? void 0 : instance.options.onColumnVisibilityChange(updater, utils.functionalUpdate(updater, instance.getState().columnVisibility));
84
- },
85
- toggleColumnVisibility: function toggleColumnVisibility(columnId, value) {
86
- if (!columnId) return;
87
-
88
- if (instance.getColumnCanHide(columnId)) {
89
- instance.setColumnVisibility(function (old) {
90
- var _extends2;
91
-
92
- return _rollupPluginBabelHelpers["extends"]({}, old, (_extends2 = {}, _extends2[columnId] = value != null ? value : !instance.getColumnIsVisible(columnId), _extends2));
93
- });
94
- }
95
- },
96
- toggleAllColumnsVisible: function toggleAllColumnsVisible(value) {
97
- var _value;
98
-
99
- value = (_value = value) != null ? _value : !instance.getIsAllColumnsVisible();
100
- instance.setColumnVisibility(instance.getAllLeafColumns().reduce(function (obj, column) {
101
- var _extends3;
102
-
103
- return _rollupPluginBabelHelpers["extends"]({}, obj, (_extends3 = {}, _extends3[column.id] = !value ? !(column.getCanHide != null && column.getCanHide()) : value, _extends3));
104
- }, {}));
105
- },
106
- getColumnIsVisible: function getColumnIsVisible(columnId) {
107
- var _ref, _instance$getState$co, _instance$getState$co2;
108
-
109
- var column = instance.getColumn(columnId);
110
-
111
- if (!column) {
112
- throw new Error();
113
- }
114
-
115
- 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;
116
- },
117
- getColumnCanHide: function getColumnCanHide(columnId) {
118
- var _ref2, _ref3, _instance$options$ena;
119
-
120
- var column = instance.getColumn(columnId);
121
-
122
- if (!column) {
123
- throw new Error();
124
- }
125
-
126
- return (_ref2 = (_ref3 = (_instance$options$ena = instance.options.enableHiding) != null ? _instance$options$ena : column.enableHiding) != null ? _ref3 : column.defaultCanHide) != null ? _ref2 : true;
127
- },
128
- getIsAllColumnsVisible: function getIsAllColumnsVisible() {
129
- return !instance.getAllLeafColumns().some(function (column) {
130
- return !(column.getIsVisible != null && column.getIsVisible());
131
- });
132
- },
133
- getIsSomeColumnsVisible: function getIsSomeColumnsVisible() {
134
- return instance.getAllLeafColumns().some(function (column) {
135
- return column.getIsVisible == null ? void 0 : column.getIsVisible();
136
- });
137
- },
138
- getToggleAllColumnsVisibilityProps: function getToggleAllColumnsVisibilityProps(userProps) {
139
- var props = {
140
- onChange: function onChange(e) {
141
- var _e$target;
142
-
143
- instance.toggleAllColumnsVisible((_e$target = e.target) == null ? void 0 : _e$target.checked);
144
- },
145
- type: 'checkbox',
146
- title: 'Toggle visibility for all columns',
147
- checked: instance.getIsAllColumnsVisible(),
148
- indeterminate: !instance.getIsAllColumnsVisible() && instance.getIsSomeColumnsVisible() ? 'indeterminate' : undefined
149
- };
150
- return utils.propGetter(props, userProps);
151
- }
152
- };
153
- }
154
-
155
- exports.createColumn = createColumn;
156
- exports.getDefaultColumn = getDefaultColumn;
157
- exports.getDefaultOptions = getDefaultOptions;
158
- exports.getInitialState = getInitialState;
159
- exports.getInstance = getInstance;
160
- //# sourceMappingURL=Visibility.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Visibility.js","sources":["../../../src/features/Visibility.ts"],"sourcesContent":["import {\n Cell,\n Column,\n Getter,\n OnChangeFn,\n PropGetterValue,\n ReactTable,\n Updater,\n} from '../types'\nimport { functionalUpdate, makeStateUpdater, memo, propGetter } from '../utils'\n\nexport type VisibilityOptions = {\n onColumnVisibilityChange?: OnChangeFn<VisibilityState>\n enableHiding?: boolean\n}\n\nexport type VisibilityDefaultOptions = {\n onColumnVisibilityChange: OnChangeFn<VisibilityState>\n}\n\nexport type VisibilityState = Record<string, boolean>\n\nexport type VisibilityTableState = {\n columnVisibility: VisibilityState\n}\n\nexport type VisibilityInstance<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n> = {\n getVisibleFlatColumns: () => Column<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n getVisibleLeafColumns: () => Column<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n setColumnVisibility: (updater: Updater<VisibilityState>) => void\n toggleColumnVisibility: (columnId: string, value?: boolean) => void\n toggleAllColumnsVisible: (value?: boolean) => void\n getColumnIsVisible: (columId: string) => boolean\n getColumnCanHide: (columnId: string) => boolean\n getIsAllColumnsVisible: () => boolean\n getIsSomeColumnsVisible: () => boolean\n getToggleAllColumnsVisibilityProps: <\n TGetter extends Getter<ToggleAllColumnsVisibilityProps>\n >(\n userProps?: TGetter\n ) => undefined | PropGetterValue<ToggleAllColumnsVisibilityProps, TGetter>\n}\n\ntype ToggleVisibilityProps = {}\ntype ToggleAllColumnsVisibilityProps = {}\n\nexport type VisibilityColumnDef = {\n enableHiding?: boolean\n defaultCanHide?: boolean\n}\n\nexport type VisibilityRow<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n> = {\n getVisibleCells: () => Cell<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[]\n}\n\nexport type VisibilityColumn = {\n getCanHide: () => boolean\n getIsVisible: () => boolean\n toggleVisibility: (value?: boolean) => void\n getToggleVisibilityProps: <TGetter extends Getter<ToggleVisibilityProps>>(\n userProps?: TGetter\n ) => PropGetterValue<ToggleVisibilityProps, TGetter>\n}\n\n//\n\nexport function getInitialState(): VisibilityTableState {\n return {\n columnVisibility: {},\n }\n}\n\nexport function getDefaultOptions<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n): VisibilityDefaultOptions {\n return {\n onColumnVisibilityChange: makeStateUpdater('columnVisibility', instance),\n }\n}\n\nexport function getDefaultColumn() {\n return {\n defaultIsVisible: true,\n }\n}\n\nexport function createColumn<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n): VisibilityColumn {\n return {\n getCanHide: () => instance.getColumnCanHide(column.id),\n getIsVisible: () => instance.getColumnIsVisible(column.id),\n toggleVisibility: value =>\n instance.toggleColumnVisibility(column.id, value),\n getToggleVisibilityProps: userProps => {\n const props: ToggleVisibilityProps = {\n type: 'checkbox',\n checked: column.getIsVisible?.(),\n title: 'Toggle Column Visibility',\n onChange: (e: MouseEvent | TouchEvent) => {\n column.toggleVisibility?.((e.target as HTMLInputElement).checked)\n },\n }\n\n return propGetter(props, userProps)\n },\n }\n}\n\nexport function getInstance<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n): VisibilityInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> {\n return {\n getVisibleFlatColumns: memo(\n () => [\n instance.getAllFlatColumns(),\n instance\n .getAllFlatColumns()\n .filter(d => d.getIsVisible?.())\n .map(d => d.id)\n .join('_'),\n ],\n allFlatColumns => {\n return allFlatColumns.filter(d => d.getIsVisible?.())\n },\n 'getVisibleFlatColumns',\n instance.options.debug\n ),\n\n getVisibleLeafColumns: memo(\n () => [\n instance.getAllLeafColumns(),\n instance\n .getAllLeafColumns()\n .filter(d => d.getIsVisible?.())\n .map(d => d.id)\n .join('_'),\n ],\n allFlatColumns => {\n return allFlatColumns.filter(d => d.getIsVisible?.())\n },\n 'getVisibleLeafColumns',\n instance.options.debug\n ),\n\n setColumnVisibility: updater =>\n instance.options.onColumnVisibilityChange?.(\n updater,\n functionalUpdate(updater, instance.getState().columnVisibility)\n ),\n\n toggleColumnVisibility: (columnId, value) => {\n if (!columnId) return\n\n if (instance.getColumnCanHide(columnId)) {\n instance.setColumnVisibility(old => ({\n ...old,\n [columnId]: value ?? !instance.getColumnIsVisible(columnId),\n }))\n }\n },\n\n toggleAllColumnsVisible: value => {\n value = value ?? !instance.getIsAllColumnsVisible()\n\n instance.setColumnVisibility(\n instance.getAllLeafColumns().reduce(\n (obj, column) => ({\n ...obj,\n [column.id]: !value ? !column.getCanHide?.() : value,\n }),\n {}\n )\n )\n },\n\n getColumnIsVisible: columnId => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\n return (\n instance.getState().columnVisibility?.[columnId] ??\n column.defaultIsVisible ??\n true\n )\n },\n\n getColumnCanHide: columnId => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\n return (\n instance.options.enableHiding ??\n column.enableHiding ??\n column.defaultCanHide ??\n true\n )\n },\n\n getIsAllColumnsVisible: () =>\n !instance.getAllLeafColumns().some(column => !column.getIsVisible?.()),\n\n getIsSomeColumnsVisible: () =>\n instance.getAllLeafColumns().some(column => column.getIsVisible?.()),\n\n getToggleAllColumnsVisibilityProps: userProps => {\n const props: ToggleAllColumnsVisibilityProps = {\n onChange: (e: MouseEvent) => {\n instance.toggleAllColumnsVisible(\n (e.target as HTMLInputElement)?.checked\n )\n },\n type: 'checkbox',\n title: 'Toggle visibility for all columns',\n checked: instance.getIsAllColumnsVisible(),\n indeterminate:\n !instance.getIsAllColumnsVisible() &&\n instance.getIsSomeColumnsVisible()\n ? 'indeterminate'\n : undefined,\n }\n\n return propGetter(props, userProps)\n },\n }\n}\n"],"names":["getInitialState","columnVisibility","getDefaultOptions","instance","onColumnVisibilityChange","makeStateUpdater","getDefaultColumn","defaultIsVisible","createColumn","column","getCanHide","getColumnCanHide","id","getIsVisible","getColumnIsVisible","toggleVisibility","value","toggleColumnVisibility","getToggleVisibilityProps","userProps","props","type","checked","title","onChange","e","target","propGetter","getInstance","getVisibleFlatColumns","memo","getAllFlatColumns","filter","d","map","join","allFlatColumns","options","debug","getVisibleLeafColumns","getAllLeafColumns","setColumnVisibility","updater","functionalUpdate","getState","columnId","old","toggleAllColumnsVisible","getIsAllColumnsVisible","reduce","obj","getColumn","Error","enableHiding","defaultCanHide","some","getIsSomeColumnsVisible","getToggleAllColumnsVisibilityProps","indeterminate","undefined"],"mappings":";;;;;;;;;;;;;;;;;AA8FA;AAEO,SAASA,eAAT,GAAiD;AACtD,SAAO;AACLC,IAAAA,gBAAgB,EAAE;AADb,GAAP;AAGD;AAEM,SAASC,iBAAT,CAOLC,QAPK,EAQqB;AAC1B,SAAO;AACLC,IAAAA,wBAAwB,EAAEC,sBAAgB,CAAC,kBAAD,EAAqBF,QAArB;AADrC,GAAP;AAGD;AAEM,SAASG,gBAAT,GAA4B;AACjC,SAAO;AACLC,IAAAA,gBAAgB,EAAE;AADb,GAAP;AAGD;AAEM,SAASC,YAAT,CAOLC,MAPK,EAQLN,QARK,EASa;AAClB,SAAO;AACLO,IAAAA,UAAU,EAAE;AAAA,aAAMP,QAAQ,CAACQ,gBAAT,CAA0BF,MAAM,CAACG,EAAjC,CAAN;AAAA,KADP;AAELC,IAAAA,YAAY,EAAE;AAAA,aAAMV,QAAQ,CAACW,kBAAT,CAA4BL,MAAM,CAACG,EAAnC,CAAN;AAAA,KAFT;AAGLG,IAAAA,gBAAgB,EAAE,0BAAAC,KAAK;AAAA,aACrBb,QAAQ,CAACc,sBAAT,CAAgCR,MAAM,CAACG,EAAvC,EAA2CI,KAA3C,CADqB;AAAA,KAHlB;AAKLE,IAAAA,wBAAwB,EAAE,kCAAAC,SAAS,EAAI;AACrC,UAAMC,KAA4B,GAAG;AACnCC,QAAAA,IAAI,EAAE,UAD6B;AAEnCC,QAAAA,OAAO,EAAEb,MAAM,CAACI,YAAT,oBAAEJ,MAAM,CAACI,YAAP,EAF0B;AAGnCU,QAAAA,KAAK,EAAE,0BAH4B;AAInCC,QAAAA,QAAQ,EAAE,kBAACC,CAAD,EAAgC;AACxChB,UAAAA,MAAM,CAACM,gBAAP,oBAAAN,MAAM,CAACM,gBAAP,CAA2BU,CAAC,CAACC,MAAH,CAA+BJ,OAAzD;AACD;AANkC,OAArC;AASA,aAAOK,gBAAU,CAACP,KAAD,EAAQD,SAAR,CAAjB;AACD;AAhBI,GAAP;AAkBD;AAEM,SAASS,WAAT,CAOLzB,QAPK,EAQwE;AAC7E,SAAO;AACL0B,IAAAA,qBAAqB,EAAEC,UAAI,CACzB;AAAA,aAAM,CACJ3B,QAAQ,CAAC4B,iBAAT,EADI,EAEJ5B,QAAQ,CACL4B,iBADH,GAEGC,MAFH,CAEU,UAAAC,CAAC;AAAA,eAAIA,CAAC,CAACpB,YAAN,oBAAIoB,CAAC,CAACpB,YAAF,EAAJ;AAAA,OAFX,EAGGqB,GAHH,CAGO,UAAAD,CAAC;AAAA,eAAIA,CAAC,CAACrB,EAAN;AAAA,OAHR,EAIGuB,IAJH,CAIQ,GAJR,CAFI,CAAN;AAAA,KADyB,EASzB,UAAAC,cAAc,EAAI;AAChB,aAAOA,cAAc,CAACJ,MAAf,CAAsB,UAAAC,CAAC;AAAA,eAAIA,CAAC,CAACpB,YAAN,oBAAIoB,CAAC,CAACpB,YAAF,EAAJ;AAAA,OAAvB,CAAP;AACD,KAXwB,EAYzB,uBAZyB,EAazBV,QAAQ,CAACkC,OAAT,CAAiBC,KAbQ,CADtB;AAiBLC,IAAAA,qBAAqB,EAAET,UAAI,CACzB;AAAA,aAAM,CACJ3B,QAAQ,CAACqC,iBAAT,EADI,EAEJrC,QAAQ,CACLqC,iBADH,GAEGR,MAFH,CAEU,UAAAC,CAAC;AAAA,eAAIA,CAAC,CAACpB,YAAN,oBAAIoB,CAAC,CAACpB,YAAF,EAAJ;AAAA,OAFX,EAGGqB,GAHH,CAGO,UAAAD,CAAC;AAAA,eAAIA,CAAC,CAACrB,EAAN;AAAA,OAHR,EAIGuB,IAJH,CAIQ,GAJR,CAFI,CAAN;AAAA,KADyB,EASzB,UAAAC,cAAc,EAAI;AAChB,aAAOA,cAAc,CAACJ,MAAf,CAAsB,UAAAC,CAAC;AAAA,eAAIA,CAAC,CAACpB,YAAN,oBAAIoB,CAAC,CAACpB,YAAF,EAAJ;AAAA,OAAvB,CAAP;AACD,KAXwB,EAYzB,uBAZyB,EAazBV,QAAQ,CAACkC,OAAT,CAAiBC,KAbQ,CAjBtB;AAiCLG,IAAAA,mBAAmB,EAAE,6BAAAC,OAAO;AAAA,aAC1BvC,QAAQ,CAACkC,OAAT,CAAiBjC,wBADS,oBAC1BD,QAAQ,CAACkC,OAAT,CAAiBjC,wBAAjB,CACEsC,OADF,EAEEC,sBAAgB,CAACD,OAAD,EAAUvC,QAAQ,CAACyC,QAAT,GAAoB3C,gBAA9B,CAFlB,CAD0B;AAAA,KAjCvB;AAuCLgB,IAAAA,sBAAsB,EAAE,gCAAC4B,QAAD,EAAW7B,KAAX,EAAqB;AAC3C,UAAI,CAAC6B,QAAL,EAAe;;AAEf,UAAI1C,QAAQ,CAACQ,gBAAT,CAA0BkC,QAA1B,CAAJ,EAAyC;AACvC1C,QAAAA,QAAQ,CAACsC,mBAAT,CAA6B,UAAAK,GAAG;AAAA;;AAAA,0DAC3BA,GAD2B,6BAE7BD,QAF6B,IAElB7B,KAFkB,WAElBA,KAFkB,GAET,CAACb,QAAQ,CAACW,kBAAT,CAA4B+B,QAA5B,CAFQ;AAAA,SAAhC;AAID;AACF,KAhDI;AAkDLE,IAAAA,uBAAuB,EAAE,iCAAA/B,KAAK,EAAI;AAAA;;AAChCA,MAAAA,KAAK,aAAGA,KAAH,qBAAY,CAACb,QAAQ,CAAC6C,sBAAT,EAAlB;AAEA7C,MAAAA,QAAQ,CAACsC,mBAAT,CACEtC,QAAQ,CAACqC,iBAAT,GAA6BS,MAA7B,CACE,UAACC,GAAD,EAAMzC,MAAN;AAAA;;AAAA,wDACKyC,GADL,6BAEGzC,MAAM,CAACG,EAFV,IAEe,CAACI,KAAD,GAAS,EAACP,MAAM,CAACC,UAAR,YAACD,MAAM,CAACC,UAAP,EAAD,CAAT,GAAkCM,KAFjD;AAAA,OADF,EAKE,EALF,CADF;AASD,KA9DI;AAgELF,IAAAA,kBAAkB,EAAE,4BAAA+B,QAAQ,EAAI;AAAA;;AAC9B,UAAMpC,MAAM,GAAGN,QAAQ,CAACgD,SAAT,CAAmBN,QAAnB,CAAf;;AAEA,UAAI,CAACpC,MAAL,EAAa;AACX,cAAM,IAAI2C,KAAJ,EAAN;AACD;;AAED,wEACEjD,QAAQ,CAACyC,QAAT,GAAoB3C,gBADtB,qBACE,uBAAuC4C,QAAvC,CADF,oCAEEpC,MAAM,CAACF,gBAFT,mBAGE,IAHF;AAKD,KA5EI;AA8ELI,IAAAA,gBAAgB,EAAE,0BAAAkC,QAAQ,EAAI;AAAA;;AAC5B,UAAMpC,MAAM,GAAGN,QAAQ,CAACgD,SAAT,CAAmBN,QAAnB,CAAf;;AAEA,UAAI,CAACpC,MAAL,EAAa;AACX,cAAM,IAAI2C,KAAJ,EAAN;AACD;;AAED,wDACEjD,QAAQ,CAACkC,OAAT,CAAiBgB,YADnB,oCAEE5C,MAAM,CAAC4C,YAFT,oBAGE5C,MAAM,CAAC6C,cAHT,oBAIE,IAJF;AAMD,KA3FI;AA6FLN,IAAAA,sBAAsB,EAAE;AAAA,aACtB,CAAC7C,QAAQ,CAACqC,iBAAT,GAA6Be,IAA7B,CAAkC,UAAA9C,MAAM;AAAA,eAAI,EAACA,MAAM,CAACI,YAAR,YAACJ,MAAM,CAACI,YAAP,EAAD,CAAJ;AAAA,OAAxC,CADqB;AAAA,KA7FnB;AAgGL2C,IAAAA,uBAAuB,EAAE;AAAA,aACvBrD,QAAQ,CAACqC,iBAAT,GAA6Be,IAA7B,CAAkC,UAAA9C,MAAM;AAAA,eAAIA,MAAM,CAACI,YAAX,oBAAIJ,MAAM,CAACI,YAAP,EAAJ;AAAA,OAAxC,CADuB;AAAA,KAhGpB;AAmGL4C,IAAAA,kCAAkC,EAAE,4CAAAtC,SAAS,EAAI;AAC/C,UAAMC,KAAsC,GAAG;AAC7CI,QAAAA,QAAQ,EAAE,kBAACC,CAAD,EAAmB;AAAA;;AAC3BtB,UAAAA,QAAQ,CAAC4C,uBAAT,cACGtB,CAAC,CAACC,MADL,qBACE,UAAgCJ,OADlC;AAGD,SAL4C;AAM7CD,QAAAA,IAAI,EAAE,UANuC;AAO7CE,QAAAA,KAAK,EAAE,mCAPsC;AAQ7CD,QAAAA,OAAO,EAAEnB,QAAQ,CAAC6C,sBAAT,EARoC;AAS7CU,QAAAA,aAAa,EACX,CAACvD,QAAQ,CAAC6C,sBAAT,EAAD,IACA7C,QAAQ,CAACqD,uBAAT,EADA,GAEI,eAFJ,GAGIG;AAbuC,OAA/C;AAgBA,aAAOhC,gBAAU,CAACP,KAAD,EAAQD,SAAR,CAAjB;AACD;AArHI,GAAP;AAuHD;;;;;;;;"}
@@ -1,172 +0,0 @@
1
- /**
2
- * react-table
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
11
- 'use strict';
12
-
13
- Object.defineProperty(exports, '__esModule', { value: true });
14
-
15
- var filterTypes = {
16
- includesString: includesString,
17
- includesStringSensitive: includesStringSensitive,
18
- equalsString: equalsString,
19
- equalsStringSensitive: equalsStringSensitive,
20
- arrIncludes: arrIncludes,
21
- arrIncludesAll: arrIncludesAll,
22
- equals: equals,
23
- weakEquals: weakEquals,
24
- betweenNumberRange: betweenNumberRange
25
- };
26
-
27
- function includesString(rows, columnIds, filterValue) {
28
- var search = String(filterValue).toLowerCase();
29
- rows = rows.filter(function (row) {
30
- return columnIds.some(function (id) {
31
- return String(row.values[id]).toLowerCase().includes(search);
32
- });
33
- });
34
- return rows;
35
- }
36
-
37
- includesString.autoRemove = function (val) {
38
- return testFalsey(val);
39
- };
40
-
41
- function includesStringSensitive(rows, columnIds, filterValue) {
42
- var search = String(filterValue);
43
- rows = rows.filter(function (row) {
44
- return columnIds.some(function (id) {
45
- return String(row.values[id]).includes(search);
46
- });
47
- });
48
- return rows;
49
- }
50
-
51
- includesStringSensitive.autoRemove = function (val) {
52
- return testFalsey(val);
53
- };
54
-
55
- function equalsString(rows, columnIds, filterValue) {
56
- var search = String(filterValue).toLowerCase();
57
- return rows.filter(function (row) {
58
- return columnIds.some(function (id) {
59
- var rowValue = row.values[id];
60
- return rowValue !== undefined ? String(rowValue).toLowerCase() === search : true;
61
- });
62
- });
63
- }
64
-
65
- equalsString.autoRemove = function (val) {
66
- return testFalsey(val);
67
- };
68
-
69
- function equalsStringSensitive(rows, columnIds, filterValue) {
70
- var search = String(filterValue);
71
- return rows.filter(function (row) {
72
- return columnIds.some(function (id) {
73
- var rowValue = row.values[id];
74
- return rowValue !== undefined ? String(rowValue) === search : true;
75
- });
76
- });
77
- }
78
-
79
- equalsStringSensitive.autoRemove = function (val) {
80
- return testFalsey(val);
81
- };
82
-
83
- function arrIncludes(rows, columnIds, filterValue) {
84
- return rows.filter(function (row) {
85
- return columnIds.some(function (id) {
86
- var rowValue = row.values[id];
87
- return rowValue.includes(filterValue);
88
- });
89
- });
90
- }
91
-
92
- arrIncludes.autoRemove = function (val) {
93
- return testFalsey(val) || !(val != null && val.length);
94
- };
95
-
96
- function arrIncludesAll(rows, columnIds, filterValue) {
97
- return rows.filter(function (row) {
98
- return columnIds.some(function (id) {
99
- var rowValue = row.values[id];
100
- return rowValue && rowValue.length && filterValue.every(function (val) {
101
- return rowValue.includes(val);
102
- });
103
- });
104
- });
105
- }
106
-
107
- arrIncludesAll.autoRemove = function (val) {
108
- return testFalsey(val) || !(val != null && val.length);
109
- };
110
-
111
- function equals(rows, columnIds, filterValue) {
112
- return rows.filter(function (row) {
113
- return columnIds.some(function (id) {
114
- var rowValue = row.values[id];
115
- return rowValue === filterValue;
116
- });
117
- });
118
- }
119
-
120
- equals.autoRemove = function (val) {
121
- return testFalsey(val);
122
- };
123
-
124
- function weakEquals(rows, columnIds, filterValue) {
125
- return rows.filter(function (row) {
126
- return columnIds.some(function (id) {
127
- var rowValue = row.values[id]; // eslint-disable-next-line eqeqeq
128
-
129
- return rowValue == filterValue;
130
- });
131
- });
132
- }
133
-
134
- weakEquals.autoRemove = function (val) {
135
- return testFalsey(val);
136
- };
137
-
138
- function betweenNumberRange(rows, columnIds, filterValue) {
139
- var _ref = filterValue || [],
140
- unsafeMin = _ref[0],
141
- unsafeMax = _ref[1];
142
-
143
- var parsedMin = typeof unsafeMin !== 'number' ? parseFloat(unsafeMin) : unsafeMin;
144
- var parsedMax = typeof unsafeMax !== 'number' ? parseFloat(unsafeMax) : unsafeMax;
145
- var min = unsafeMin === null || Number.isNaN(parsedMin) ? -Infinity : parsedMin;
146
- var max = unsafeMax === null || Number.isNaN(parsedMax) ? Infinity : parsedMax;
147
-
148
- if (min > max) {
149
- var temp = min;
150
- min = max;
151
- max = temp;
152
- }
153
-
154
- return rows.filter(function (row) {
155
- return columnIds.some(function (id) {
156
- var rowValue = row.values[id];
157
- return rowValue >= min && rowValue <= max;
158
- });
159
- });
160
- }
161
-
162
- betweenNumberRange.autoRemove = function (val) {
163
- return testFalsey(val) || testFalsey(val[0]) && testFalsey(val[1]);
164
- }; // Utils
165
-
166
-
167
- function testFalsey(val) {
168
- return val === undefined || val === null || val === '';
169
- }
170
-
171
- exports.filterTypes = filterTypes;
172
- //# sourceMappingURL=filterTypes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"filterTypes.js","sources":["../../src/filterTypes.ts"],"sourcesContent":["import { AccessorFn, Row } from './types'\n\nexport const filterTypes = {\n includesString,\n includesStringSensitive,\n equalsString,\n equalsStringSensitive,\n arrIncludes,\n arrIncludesAll,\n equals,\n weakEquals,\n betweenNumberRange,\n}\n\nexport type BuiltInFilterType = keyof typeof filterTypes\n\nfunction includesString<\n TData,\n TValue,\n TAccessor extends AccessorFn<TData>,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: unknown\n) {\n const search = String(filterValue).toLowerCase()\n\n rows = rows.filter(row => {\n return columnIds.some(id => {\n return String(row.values[id]).toLowerCase().includes(search)\n })\n })\n return rows\n}\n\nincludesString.autoRemove = (val: any) => testFalsey(val)\n\nfunction includesStringSensitive<\n TData,\n TValue,\n TAccessor extends AccessorFn<TData>,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: unknown\n) {\n const search = String(filterValue)\n\n rows = rows.filter(row => {\n return columnIds.some(id => {\n return String(row.values[id]).includes(search)\n })\n })\n return rows\n}\n\nincludesStringSensitive.autoRemove = (val: any) => testFalsey(val)\n\nfunction equalsString<\n TData,\n TValue,\n TAccessor extends AccessorFn<TData>,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: unknown\n) {\n const search = String(filterValue).toLowerCase()\n\n return rows.filter(row => {\n return columnIds.some(id => {\n const rowValue = row.values[id]\n return rowValue !== undefined\n ? String(rowValue).toLowerCase() === search\n : true\n })\n })\n}\n\nequalsString.autoRemove = (val: any) => testFalsey(val)\n\nfunction equalsStringSensitive<\n TData,\n TValue,\n TAccessor extends AccessorFn<TData>,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: unknown\n) {\n const search = String(filterValue)\n return rows.filter(row => {\n return columnIds.some(id => {\n const rowValue = row.values[id]\n return rowValue !== undefined ? String(rowValue) === search : true\n })\n })\n}\n\nequalsStringSensitive.autoRemove = (val: any) => testFalsey(val)\n\nfunction arrIncludes<\n TData,\n TValue,\n TAccessor extends AccessorFn<TData>,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: unknown\n) {\n return rows.filter(row => {\n return columnIds.some(id => {\n const rowValue = row.values[id]\n return rowValue.includes(filterValue)\n })\n })\n}\n\narrIncludes.autoRemove = (val: any) => testFalsey(val) || !val?.length\n\nfunction arrIncludesAll<\n TData,\n TValue,\n TAccessor extends AccessorFn<TData>,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: unknown[]\n) {\n return rows.filter(row => {\n return columnIds.some(id => {\n const rowValue = row.values[id]\n return (\n rowValue &&\n rowValue.length &&\n filterValue.every(val => rowValue.includes(val))\n )\n })\n })\n}\n\narrIncludesAll.autoRemove = (val: any) => testFalsey(val) || !val?.length\n\nfunction equals<\n TData,\n TValue,\n TAccessor extends AccessorFn<TData>,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: unknown\n) {\n return rows.filter(row => {\n return columnIds.some(id => {\n const rowValue = row.values[id]\n return rowValue === filterValue\n })\n })\n}\n\nequals.autoRemove = (val: any) => testFalsey(val)\n\nfunction weakEquals<\n TData,\n TValue,\n TAccessor extends AccessorFn<TData>,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: unknown\n) {\n return rows.filter(row => {\n return columnIds.some(id => {\n const rowValue = row.values[id]\n // eslint-disable-next-line eqeqeq\n return rowValue == filterValue\n })\n })\n}\n\nweakEquals.autoRemove = (val: any) => testFalsey(val)\n\nfunction betweenNumberRange<\n TData,\n TValue,\n TAccessor extends AccessorFn<TData>,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],\n columnIds: string[],\n filterValue: [unknown, unknown]\n) {\n let [unsafeMin, unsafeMax] = filterValue || []\n\n let parsedMin =\n typeof unsafeMin !== 'number' ? parseFloat(unsafeMin as string) : unsafeMin\n let parsedMax =\n typeof unsafeMax !== 'number' ? parseFloat(unsafeMax as string) : unsafeMax\n\n let min =\n unsafeMin === null || Number.isNaN(parsedMin) ? -Infinity : parsedMin\n let max = unsafeMax === null || Number.isNaN(parsedMax) ? Infinity : parsedMax\n\n if (min > max) {\n const temp = min\n min = max\n max = temp\n }\n\n return rows.filter(row => {\n return columnIds.some(id => {\n const rowValue = row.values[id]\n return rowValue >= min && rowValue <= max\n })\n })\n}\n\nbetweenNumberRange.autoRemove = (val: any) =>\n testFalsey(val) || (testFalsey(val[0]) && testFalsey(val[1]))\n\n// Utils\n\nfunction testFalsey(val: any) {\n return val === undefined || val === null || val === ''\n}\n"],"names":["filterTypes","includesString","includesStringSensitive","equalsString","equalsStringSensitive","arrIncludes","arrIncludesAll","equals","weakEquals","betweenNumberRange","rows","columnIds","filterValue","search","String","toLowerCase","filter","row","some","id","values","includes","autoRemove","val","testFalsey","rowValue","undefined","length","every","unsafeMin","unsafeMax","parsedMin","parseFloat","parsedMax","min","Number","isNaN","Infinity","max","temp"],"mappings":"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"}
@@ -1,121 +0,0 @@
1
- /**
2
- * react-table
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
11
- 'use strict';
12
-
13
- Object.defineProperty(exports, '__esModule', { value: true });
14
-
15
- var reSplitAlphaNumeric = /([0-9]+)/gm;
16
- var sortTypes = {
17
- alphanumeric: alphanumeric,
18
- alphanumericCaseSensitive: alphanumericCaseSensitive,
19
- text: text,
20
- textCaseSensitive: textCaseSensitive,
21
- datetime: datetime,
22
- basic: basic
23
- };
24
-
25
- function alphanumeric(rowA, rowB, columnId) {
26
- return compareAlphanumeric(toString(rowA.values[columnId]).toLowerCase(), toString(rowB.values[columnId]).toLowerCase());
27
- }
28
-
29
- function alphanumericCaseSensitive(rowA, rowB, columnId) {
30
- return compareAlphanumeric(toString(rowA.values[columnId]), toString(rowB.values[columnId]));
31
- } // Mixed sorting is slow, but very inclusive of many edge cases.
32
- // It handles numbers, mixed alphanumeric combinations, and even
33
- // null, undefined, and Infinity
34
-
35
-
36
- function compareAlphanumeric(aStr, bStr) {
37
- // Split on number groups, but keep the delimiter
38
- // Then remove falsey split values
39
- var a = aStr.split(reSplitAlphaNumeric).filter(Boolean);
40
- var b = bStr.split(reSplitAlphaNumeric).filter(Boolean); // While
41
-
42
- while (a.length && b.length) {
43
- var aa = a.shift();
44
- var bb = b.shift();
45
- var an = parseInt(aa, 10);
46
- var bn = parseInt(bb, 10);
47
- var combo = [an, bn].sort(); // Both are string
48
-
49
- if (isNaN(combo[0])) {
50
- if (aa > bb) {
51
- return 1;
52
- }
53
-
54
- if (bb > aa) {
55
- return -1;
56
- }
57
-
58
- continue;
59
- } // One is a string, one is a number
60
-
61
-
62
- if (isNaN(combo[1])) {
63
- return isNaN(an) ? -1 : 1;
64
- } // Both are numbers
65
-
66
-
67
- if (an > bn) {
68
- return 1;
69
- }
70
-
71
- if (bn > an) {
72
- return -1;
73
- }
74
- }
75
-
76
- return a.length - b.length;
77
- } // The text filter is more basic (less numeric support)
78
- // but is much faster
79
-
80
-
81
- function text(rowA, rowB, columnId) {
82
- return compareBasic(toString(rowA.values[columnId]).toLowerCase(), toString(rowB.values[columnId]).toLowerCase());
83
- } // The text filter is more basic (less numeric support)
84
- // but is much faster
85
-
86
-
87
- function textCaseSensitive(rowA, rowB, columnId) {
88
- return compareBasic(toString(rowA.values[columnId]), toString(rowB.values[columnId]));
89
- }
90
-
91
- function datetime(rowA, rowB, columnId) {
92
- return compareBasic(rowA.values[columnId].getTime(), rowB.values[columnId].getTime());
93
- }
94
-
95
- function basic(rowA, rowB, columnId) {
96
- return compareBasic(rowA.values[columnId], rowB.values[columnId]);
97
- } // Utils
98
-
99
-
100
- function compareBasic(a, b) {
101
- return a === b ? 0 : a > b ? 1 : -1;
102
- }
103
-
104
- function toString(a) {
105
- if (typeof a === 'number') {
106
- if (isNaN(a) || a === Infinity || a === -Infinity) {
107
- return '';
108
- }
109
-
110
- return String(a);
111
- }
112
-
113
- if (typeof a === 'string') {
114
- return a;
115
- }
116
-
117
- return '';
118
- }
119
-
120
- exports.sortTypes = sortTypes;
121
- //# sourceMappingURL=sortTypes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sortTypes.js","sources":["../../src/sortTypes.ts"],"sourcesContent":["import { Row } from './types'\n\nconst reSplitAlphaNumeric = /([0-9]+)/gm\n\nexport const sortTypes = {\n alphanumeric,\n alphanumericCaseSensitive,\n text,\n textCaseSensitive,\n datetime,\n basic,\n}\n\nexport type BuiltInSortType = keyof typeof sortTypes\n\nfunction alphanumeric<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(\n rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n columnId: string\n) {\n return compareAlphanumeric(\n toString(rowA.values[columnId]).toLowerCase(),\n toString(rowB.values[columnId]).toLowerCase()\n )\n}\n\nfunction alphanumericCaseSensitive<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n columnId: string\n) {\n return compareAlphanumeric(\n toString(rowA.values[columnId]),\n toString(rowB.values[columnId])\n )\n}\n\n// Mixed sorting is slow, but very inclusive of many edge cases.\n// It handles numbers, mixed alphanumeric combinations, and even\n// null, undefined, and Infinity\nfunction compareAlphanumeric(aStr: string, bStr: string) {\n // Split on number groups, but keep the delimiter\n // Then remove falsey split values\n const a = aStr.split(reSplitAlphaNumeric).filter(Boolean)\n const b = bStr.split(reSplitAlphaNumeric).filter(Boolean)\n\n // While\n while (a.length && b.length) {\n const aa = a.shift()!\n const bb = b.shift()!\n\n const an = parseInt(aa, 10)\n const bn = parseInt(bb, 10)\n\n const combo = [an, bn].sort()\n\n // Both are string\n if (isNaN(combo[0]!)) {\n if (aa > bb) {\n return 1\n }\n if (bb > aa) {\n return -1\n }\n continue\n }\n\n // One is a string, one is a number\n if (isNaN(combo[1]!)) {\n return isNaN(an) ? -1 : 1\n }\n\n // Both are numbers\n if (an > bn) {\n return 1\n }\n if (bn > an) {\n return -1\n }\n }\n\n return a.length - b.length\n}\n\n// The text filter is more basic (less numeric support)\n// but is much faster\nfunction text<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(\n rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n columnId: string\n) {\n return compareBasic(\n toString(rowA.values[columnId]).toLowerCase(),\n toString(rowB.values[columnId]).toLowerCase()\n )\n}\n\n// The text filter is more basic (less numeric support)\n// but is much faster\nfunction textCaseSensitive<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n columnId: string\n) {\n return compareBasic(\n toString(rowA.values[columnId]),\n toString(rowB.values[columnId])\n )\n}\n\nfunction datetime<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(\n rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n columnId: string\n) {\n return compareBasic(\n (rowA.values[columnId] as Date).getTime(),\n (rowB.values[columnId] as Date).getTime()\n )\n}\n\nfunction basic<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(\n rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n columnId: string\n) {\n return compareBasic(rowA.values[columnId], rowB.values[columnId])\n}\n\n// Utils\n\nfunction compareBasic(a: any, b: any) {\n return a === b ? 0 : a > b ? 1 : -1\n}\n\nfunction toString(a: any) {\n if (typeof a === 'number') {\n if (isNaN(a) || a === Infinity || a === -Infinity) {\n return ''\n }\n return String(a)\n }\n if (typeof a === 'string') {\n return a\n }\n return ''\n}\n"],"names":["reSplitAlphaNumeric","sortTypes","alphanumeric","alphanumericCaseSensitive","text","textCaseSensitive","datetime","basic","rowA","rowB","columnId","compareAlphanumeric","toString","values","toLowerCase","aStr","bStr","a","split","filter","Boolean","b","length","aa","shift","bb","an","parseInt","bn","combo","sort","isNaN","compareBasic","getTime","Infinity","String"],"mappings":"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"}
@@ -1,130 +0,0 @@
1
- /**
2
- * react-table
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
11
- 'use strict';
12
-
13
- Object.defineProperty(exports, '__esModule', { value: true });
14
-
15
- var columnFilterRowsFn = function columnFilterRowsFn(instance, columnFilters, rowModel) {
16
- var newFilteredFlatRows = [];
17
- var newFilteredRowsById = {};
18
- var filterFromChildrenUp = instance.options.filterFromChildrenUp;
19
-
20
- var filterRows = function filterRows(rowsToFilter, depth) {
21
- columnFilters.forEach(function (_ref) {
22
- var columnId = _ref.id,
23
- filterValue = _ref.value;
24
- // Find the columnFilters column
25
- var column = instance.getColumn(columnId);
26
-
27
- if (!column) {
28
- if (process.env.NODE_ENV !== 'production') {
29
- console.warn("React-Table: Could not find a column with id: " + columnId);
30
- }
31
-
32
- throw new Error();
33
- }
34
-
35
- if (depth === 0) {
36
- var preFilteredRows = [].concat(rowsToFilter);
37
-
38
- column.getPreFilteredRows = function () {
39
- return preFilteredRows;
40
- };
41
- }
42
-
43
- var filterFn = instance.getColumnFilterFn(column.id);
44
-
45
- if (!filterFn) {
46
- if (process.env.NODE_ENV !== 'production') {
47
- console.warn("Could not find a valid 'column.filterType' for column with the ID: " + column.id + ".");
48
- }
49
-
50
- return;
51
- } // Pass the rows, id, filterValue and column to the filterFn
52
- // to get the filtered rows back
53
-
54
-
55
- rowsToFilter = filterFn(rowsToFilter, [columnId], filterValue);
56
- });
57
- return rowsToFilter;
58
- };
59
-
60
- if (filterFromChildrenUp) {
61
- var _recurseFilterRows = function _recurseFilterRows(rowsToFilter, depth) {
62
- if (depth === void 0) {
63
- depth = 0;
64
- }
65
-
66
- // Filter from children up
67
- rowsToFilter = rowsToFilter.filter(function (row) {
68
- var _row$subRows;
69
-
70
- if (!((_row$subRows = row.subRows) != null && _row$subRows.length)) {
71
- return true;
72
- }
73
-
74
- row.subRows = _recurseFilterRows(row.subRows, depth + 1);
75
- return row.subRows.length;
76
- });
77
- rowsToFilter = filterRows(rowsToFilter, depth); // Apply the filter to any subRows
78
-
79
- rowsToFilter.forEach(function (row) {
80
- newFilteredFlatRows.push(row);
81
- newFilteredRowsById[row.id] = row;
82
- });
83
- return rowsToFilter;
84
- };
85
-
86
- return {
87
- rows: _recurseFilterRows(rowModel.rows),
88
- flatRows: newFilteredFlatRows,
89
- rowsById: newFilteredRowsById
90
- };
91
- } // Filters top level and nested rows
92
-
93
-
94
- var recurseFilterRows = function recurseFilterRows(rowsToFilter, depth) {
95
- if (depth === void 0) {
96
- depth = 0;
97
- }
98
-
99
- // Filter from parents downward
100
- rowsToFilter = filterRows(rowsToFilter, depth); // Apply the filter to any subRows
101
- // We technically could do this recursively in the above loop,
102
- // but that would severely hinder the API for the user, since they
103
- // would be required to do that recursion in some scenarios
104
-
105
- rowsToFilter.forEach(function (row) {
106
- newFilteredFlatRows.push(row);
107
- newFilteredRowsById[row.id] = row;
108
-
109
- if (!filterFromChildrenUp) {
110
- var _row$subRows2;
111
-
112
- if (!((_row$subRows2 = row.subRows) != null && _row$subRows2.length)) {
113
- return;
114
- }
115
-
116
- row.subRows = recurseFilterRows(row.subRows, depth + 1);
117
- }
118
- });
119
- return rowsToFilter;
120
- };
121
-
122
- return {
123
- rows: recurseFilterRows(rowModel.rows),
124
- flatRows: newFilteredFlatRows,
125
- rowsById: newFilteredRowsById
126
- };
127
- };
128
-
129
- exports.columnFilterRowsFn = columnFilterRowsFn;
130
- //# sourceMappingURL=columnFilterRowsFn.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"columnFilterRowsFn.js","sources":["../../../src/utils/columnFilterRowsFn.ts"],"sourcesContent":["import { ReactTable, Row, RowModel } from '../types'\nimport { ColumnFiltersState } from '../features/Filters'\nimport { Options } from '..'\n\nexport const columnFilterRowsFn: Options<\n any,\n any,\n {},\n {},\n {}\n>['columnFilterRowsFn'] = <\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n>(\n instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,\n columnFilters: ColumnFiltersState,\n rowModel: RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n): RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> => {\n const newFilteredFlatRows: Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[] = []\n const newFilteredRowsById: Record<\n string,\n Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>\n > = {}\n\n const filterFromChildrenUp = instance.options.filterFromChildrenUp\n\n const filterRows = (\n rowsToFilter: Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[],\n depth: number\n ) => {\n columnFilters.forEach(({ id: columnId, value: filterValue }) => {\n // Find the columnFilters column\n const column = instance.getColumn(columnId)\n\n if (!column) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `React-Table: Could not find a column with id: ${columnId}`\n )\n }\n throw new Error()\n }\n\n if (depth === 0) {\n const preFilteredRows = [...rowsToFilter]\n column.getPreFilteredRows = () => preFilteredRows\n }\n\n const filterFn = instance.getColumnFilterFn(column.id)\n\n if (!filterFn) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `Could not find a valid 'column.filterType' for column with the ID: ${column.id}.`\n )\n }\n return\n }\n\n // Pass the rows, id, filterValue and column to the filterFn\n // to get the filtered rows back\n rowsToFilter = filterFn(rowsToFilter, [columnId], filterValue)\n })\n\n return rowsToFilter\n }\n\n if (filterFromChildrenUp) {\n const recurseFilterRows = (\n rowsToFilter: Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[],\n depth = 0\n ) => {\n // Filter from children up\n rowsToFilter = rowsToFilter.filter(row => {\n if (!row.subRows?.length) {\n return true\n }\n\n row.subRows = recurseFilterRows(row.subRows, depth + 1)\n\n return row.subRows.length\n })\n\n rowsToFilter = filterRows(rowsToFilter, depth)\n\n // Apply the filter to any subRows\n rowsToFilter.forEach(row => {\n newFilteredFlatRows.push(row)\n newFilteredRowsById[row.id] = row\n })\n\n return rowsToFilter\n }\n\n return {\n rows: recurseFilterRows(rowModel.rows),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n }\n\n // Filters top level and nested rows\n const recurseFilterRows = (\n rowsToFilter: Row<\n TData,\n TValue,\n TFilterFns,\n TSortingFns,\n TAggregationFns\n >[],\n depth = 0\n ) => {\n // Filter from parents downward\n rowsToFilter = filterRows(rowsToFilter, depth)\n\n // Apply the filter to any subRows\n // We technically could do this recursively in the above loop,\n // but that would severely hinder the API for the user, since they\n // would be required to do that recursion in some scenarios\n rowsToFilter.forEach(row => {\n newFilteredFlatRows.push(row)\n newFilteredRowsById[row.id] = row\n\n if (!filterFromChildrenUp) {\n if (!row.subRows?.length) {\n return\n }\n\n row.subRows = recurseFilterRows(row.subRows, depth + 1)\n }\n })\n\n return rowsToFilter\n }\n\n return {\n rows: recurseFilterRows(rowModel.rows),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n"],"names":["columnFilterRowsFn","instance","columnFilters","rowModel","newFilteredFlatRows","newFilteredRowsById","filterFromChildrenUp","options","filterRows","rowsToFilter","depth","forEach","columnId","id","filterValue","value","column","getColumn","process","env","NODE_ENV","console","warn","Error","preFilteredRows","getPreFilteredRows","filterFn","getColumnFilterFn","recurseFilterRows","filter","row","subRows","length","push","rows","flatRows","rowsById"],"mappings":"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"}