@tanstack/react-table 8.0.0-alpha.6 → 8.0.0-alpha.9

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 (96) hide show
  1. package/build/cjs/core.js +66 -73
  2. package/build/cjs/core.js.map +1 -1
  3. package/build/cjs/createTable.js +47 -33
  4. package/build/cjs/createTable.js.map +1 -1
  5. package/build/cjs/features/ColumnSizing.js +23 -22
  6. package/build/cjs/features/ColumnSizing.js.map +1 -1
  7. package/build/cjs/features/Expanding.js +10 -22
  8. package/build/cjs/features/Expanding.js.map +1 -1
  9. package/build/cjs/features/Filters.js +27 -58
  10. package/build/cjs/features/Filters.js.map +1 -1
  11. package/build/cjs/features/Grouping.js +10 -27
  12. package/build/cjs/features/Grouping.js.map +1 -1
  13. package/build/cjs/features/Headers.js +108 -28
  14. package/build/cjs/features/Headers.js.map +1 -1
  15. package/build/cjs/features/Ordering.js +2 -2
  16. package/build/cjs/features/Ordering.js.map +1 -1
  17. package/build/cjs/features/Pagination.js +24 -29
  18. package/build/cjs/features/Pagination.js.map +1 -1
  19. package/build/cjs/features/Pinning.js.map +1 -1
  20. package/build/cjs/features/RowSelection.js +23 -38
  21. package/build/cjs/features/RowSelection.js.map +1 -1
  22. package/build/cjs/features/Sorting.js +10 -22
  23. package/build/cjs/features/Sorting.js.map +1 -1
  24. package/build/cjs/features/Visibility.js +10 -2
  25. package/build/cjs/features/Visibility.js.map +1 -1
  26. package/build/cjs/filterTypes.js.map +1 -1
  27. package/build/cjs/index.js +12 -0
  28. package/build/cjs/index.js.map +1 -1
  29. package/build/cjs/sortTypes.js.map +1 -1
  30. package/build/cjs/types.js +22 -0
  31. package/build/cjs/types.js.map +1 -0
  32. package/build/cjs/utils/columnFilterRowsFn.js.map +1 -1
  33. package/build/cjs/utils/expandRowsFn.js.map +1 -1
  34. package/build/cjs/utils/globalFilterRowsFn.js.map +1 -1
  35. package/build/cjs/utils/groupRowsFn.js.map +1 -1
  36. package/build/cjs/utils/paginateRowsFn.js.map +1 -1
  37. package/build/cjs/utils/sortRowsFn.js.map +1 -1
  38. package/build/cjs/utils.js +44 -18
  39. package/build/cjs/utils.js.map +1 -1
  40. package/build/esm/index.js +1388 -1355
  41. package/build/esm/index.js.map +1 -1
  42. package/build/stats-html.html +1 -1
  43. package/build/stats-react.json +337 -307
  44. package/build/types/core.d.ts +63 -67
  45. package/build/types/createTable.d.ts +34 -44
  46. package/build/types/features/ColumnSizing.d.ts +13 -7
  47. package/build/types/features/Expanding.d.ts +11 -16
  48. package/build/types/features/Filters.d.ts +39 -47
  49. package/build/types/features/Grouping.d.ts +28 -27
  50. package/build/types/features/Headers.d.ts +30 -30
  51. package/build/types/features/Ordering.d.ts +5 -5
  52. package/build/types/features/Pagination.d.ts +11 -16
  53. package/build/types/features/Pinning.d.ts +5 -5
  54. package/build/types/features/RowSelection.d.ts +15 -23
  55. package/build/types/features/Sorting.d.ts +26 -25
  56. package/build/types/features/Visibility.d.ts +9 -9
  57. package/build/types/filterTypes.d.ts +10 -10
  58. package/build/types/index.d.ts +1 -0
  59. package/build/types/sortTypes.d.ts +7 -7
  60. package/build/types/types.d.ts +34 -23
  61. package/build/types/utils/columnFilterRowsFn.d.ts +2 -2
  62. package/build/types/utils/expandRowsFn.d.ts +2 -2
  63. package/build/types/utils/globalFilterRowsFn.d.ts +2 -2
  64. package/build/types/utils/groupRowsFn.d.ts +2 -2
  65. package/build/types/utils/paginateRowsFn.d.ts +2 -2
  66. package/build/types/utils/sortRowsFn.d.ts +2 -2
  67. package/build/types/utils.d.ts +5 -6
  68. package/build/umd/index.development.js +1397 -1354
  69. package/build/umd/index.development.js.map +1 -1
  70. package/build/umd/index.production.js +1 -1
  71. package/build/umd/index.production.js.map +1 -1
  72. package/package.json +1 -1
  73. package/src/core.tsx +192 -520
  74. package/src/createTable.tsx +137 -192
  75. package/src/features/ColumnSizing.ts +48 -77
  76. package/src/features/Expanding.ts +25 -113
  77. package/src/features/Filters.ts +91 -293
  78. package/src/features/Grouping.ts +60 -165
  79. package/src/features/Headers.ts +148 -331
  80. package/src/features/Ordering.ts +19 -42
  81. package/src/features/Pagination.ts +35 -110
  82. package/src/features/Pinning.ts +16 -40
  83. package/src/features/RowSelection.ts +47 -227
  84. package/src/features/Sorting.ts +49 -143
  85. package/src/features/Visibility.ts +23 -64
  86. package/src/filterTypes.ts +19 -82
  87. package/src/index.tsx +1 -0
  88. package/src/sortTypes.ts +19 -31
  89. package/src/types.ts +80 -100
  90. package/src/utils/columnFilterRowsFn.ts +11 -53
  91. package/src/utils/expandRowsFn.ts +7 -27
  92. package/src/utils/globalFilterRowsFn.ts +10 -43
  93. package/src/utils/groupRowsFn.ts +13 -37
  94. package/src/utils/paginateRowsFn.ts +5 -11
  95. package/src/utils/sortRowsFn.ts +8 -28
  96. package/src/utils.tsx +61 -35
@@ -7,8 +7,9 @@ import {
7
7
  Getter,
8
8
  Header,
9
9
  OnChangeFn,
10
+ PartialGenerics,
10
11
  PropGetterValue,
11
- ReactTable,
12
+ TableInstance,
12
13
  Row,
13
14
  Updater,
14
15
  } from '../types'
@@ -18,6 +19,7 @@ import {
18
19
  isFunction,
19
20
  makeStateUpdater,
20
21
  memo,
22
+ Overwrite,
21
23
  propGetter,
22
24
  } from '../utils'
23
25
 
@@ -30,27 +32,27 @@ export type ColumnSort = {
30
32
 
31
33
  export type SortingState = ColumnSort[]
32
34
 
33
- export type SortingFn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> =
34
- {
35
- (
36
- rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,
37
- rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,
38
- columnId: string
39
- ): number
40
- }
35
+ export type SortingFn<TGenerics extends PartialGenerics> = {
36
+ (rowA: Row<TGenerics>, rowB: Row<TGenerics>, columnId: string): number
37
+ }
38
+
39
+ export type CustomSortingTypes<TGenerics extends PartialGenerics> = Record<
40
+ string,
41
+ SortingFn<TGenerics>
42
+ >
41
43
 
42
44
  export type SortingTableState = {
43
45
  sorting: SortingState
44
46
  }
45
47
 
46
- export type SortType<TSortingFns> =
48
+ export type SortType<TGenerics extends PartialGenerics> =
47
49
  | 'auto'
48
50
  | BuiltInSortType
49
- | keyof TSortingFns
50
- | SortingFn<any, any, any, TSortingFns, any>
51
+ | keyof TGenerics['SortingFns']
52
+ | SortingFn<TGenerics>
51
53
 
52
- export type SortingColumnDef<TFilterFns> = {
53
- sortType?: SortType<TFilterFns>
54
+ export type SortingColumnDef<TGenerics extends PartialGenerics> = {
55
+ sortType?: SortType<Overwrite<TGenerics, { Value: any }>>
54
56
  sortDescFirst?: boolean
55
57
  enableSorting?: boolean
56
58
  enableMultiSort?: boolean
@@ -59,14 +61,8 @@ export type SortingColumnDef<TFilterFns> = {
59
61
  sortUndefined?: false | -1 | 1
60
62
  }
61
63
 
62
- export type SortingColumn<
63
- _TData,
64
- _TValue,
65
- TFilterFns,
66
- _TSortingFns,
67
- _TAggregationFns
68
- > = {
69
- sortType: SortType<TFilterFns>
64
+ export type SortingColumn<TGenerics extends PartialGenerics> = {
65
+ sortType: SortType<Overwrite<TGenerics, { Value: any }>>
70
66
  getCanSort: () => boolean
71
67
  getCanMultiSort: () => boolean
72
68
  getSortIndex: () => number
@@ -77,14 +73,8 @@ export type SortingColumn<
77
73
  ) => undefined | PropGetterValue<ToggleSortingProps, TGetter>
78
74
  }
79
75
 
80
- export type SortingOptions<
81
- TData,
82
- TValue,
83
- TFilterFns,
84
- TSortingFns,
85
- TAggregationFns
86
- > = {
87
- sortTypes?: TSortingFns
76
+ export type SortingOptions<TGenerics extends PartialGenerics> = {
77
+ sortTypes?: TGenerics['SortingFns']
88
78
  onSortingChange?: OnChangeFn<SortingState>
89
79
  autoResetSorting?: boolean
90
80
  enableSorting?: boolean
@@ -93,15 +83,9 @@ export type SortingOptions<
93
83
  enableMultiSort?: boolean
94
84
  sortDescFirst?: boolean
95
85
  sortRowsFn?: (
96
- instance: ReactTable<
97
- TData,
98
- TValue,
99
- TFilterFns,
100
- TSortingFns,
101
- TAggregationFns
102
- >,
103
- rowModel: RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
104
- ) => RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
86
+ instance: TableInstance<TGenerics>,
87
+ rowModel: RowModel<TGenerics>
88
+ ) => RowModel<TGenerics>
105
89
  maxMultiSortColCount?: number
106
90
  isMultiSortEvent?: (e: MouseEvent | TouchEvent) => boolean
107
91
  }
@@ -111,22 +95,12 @@ export type ToggleSortingProps = {
111
95
  onClick?: (event: MouseEvent | TouchEvent) => void
112
96
  }
113
97
 
114
- export type SortingInstance<
115
- TData,
116
- TValue,
117
- TFilterFns,
118
- TSortingFns,
119
- TAggregationFns
120
- > = {
98
+ export type SortingInstance<TGenerics extends PartialGenerics> = {
121
99
  _notifySortingReset: () => void
122
- getColumnAutoSortingFn: (
123
- columnId: string
124
- ) => SortingFn<any, any, any, any, any> | undefined
100
+ getColumnAutoSortingFn: (columnId: string) => SortingFn<TGenerics> | undefined
125
101
  getColumnAutoSortDir: (columnId: string) => SortDirection
126
102
 
127
- getColumnSortingFn: (
128
- columnId: string
129
- ) => SortingFn<any, any, any, any, any> | undefined
103
+ getColumnSortingFn: (columnId: string) => SortingFn<TGenerics> | undefined
130
104
 
131
105
  setSorting: (updater: Updater<SortingState>) => void
132
106
  toggleColumnSorting: (
@@ -143,54 +117,15 @@ export type SortingInstance<
143
117
  columnId: string,
144
118
  userProps?: TGetter
145
119
  ) => undefined | PropGetterValue<ToggleSortingProps, TGetter>
146
- getSortedRowModel: () => RowModel<
147
- TData,
148
- TValue,
149
- TFilterFns,
150
- TSortingFns,
151
- TAggregationFns
152
- >
153
- getPreSortedRows: () => Row<
154
- TData,
155
- TValue,
156
- TFilterFns,
157
- TSortingFns,
158
- TAggregationFns
159
- >[]
160
- getPreSortedFlatRows: () => Row<
161
- TData,
162
- TValue,
163
- TFilterFns,
164
- TSortingFns,
165
- TAggregationFns
166
- >[]
167
- getPreSortedRowsById: () => Record<
168
- string,
169
- Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
170
- >
171
- getSortedRows: () => Row<
172
- TData,
173
- TValue,
174
- TFilterFns,
175
- TSortingFns,
176
- TAggregationFns
177
- >[]
178
- getSortedFlatRows: () => Row<
179
- TData,
180
- TValue,
181
- TFilterFns,
182
- TSortingFns,
183
- TAggregationFns
184
- >[]
185
- getSortedRowsById: () => Record<
186
- string,
187
- Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
188
- >
120
+ getPreSortedRowModel: () => RowModel<TGenerics>
121
+ getSortedRowModel: () => RowModel<TGenerics>
189
122
  }
190
123
 
191
124
  //
192
125
 
193
- export function getDefaultColumn<TFilterFns>(): SortingColumnDef<TFilterFns> {
126
+ export function getDefaultColumn<
127
+ TGenerics extends PartialGenerics
128
+ >(): SortingColumnDef<TGenerics> {
194
129
  return {
195
130
  sortType: 'auto',
196
131
  }
@@ -202,15 +137,9 @@ export function getInitialState(): SortingTableState {
202
137
  }
203
138
  }
204
139
 
205
- export function getDefaultOptions<
206
- TData,
207
- TValue,
208
- TFilterFns,
209
- TSortingFns,
210
- TAggregationFns
211
- >(
212
- instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
213
- ): SortingOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> {
140
+ export function getDefaultOptions<TGenerics extends PartialGenerics>(
141
+ instance: TableInstance<TGenerics>
142
+ ): SortingOptions<TGenerics> {
214
143
  return {
215
144
  onSortingChange: makeStateUpdater('sorting', instance),
216
145
  autoResetSorting: true,
@@ -220,16 +149,10 @@ export function getDefaultOptions<
220
149
  }
221
150
  }
222
151
 
223
- export function createColumn<
224
- TData,
225
- TValue,
226
- TFilterFns,
227
- TSortingFns,
228
- TAggregationFns
229
- >(
230
- column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,
231
- instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
232
- ): SortingColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> {
152
+ export function createColumn<TGenerics extends PartialGenerics>(
153
+ column: Column<TGenerics>,
154
+ instance: TableInstance<TGenerics>
155
+ ): SortingColumn<TGenerics> {
233
156
  return {
234
157
  sortType: column.sortType,
235
158
  getCanSort: () => instance.getColumnCanSort(column.id),
@@ -243,15 +166,9 @@ export function createColumn<
243
166
  }
244
167
  }
245
168
 
246
- export function getInstance<
247
- TData,
248
- TValue,
249
- TFilterFns,
250
- TSortingFns,
251
- TAggregationFns
252
- >(
253
- instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
254
- ): SortingInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> {
169
+ export function getInstance<TGenerics extends PartialGenerics>(
170
+ instance: TableInstance<TGenerics>
171
+ ): SortingInstance<TGenerics> {
255
172
  let registered = false
256
173
 
257
174
  return {
@@ -323,13 +240,9 @@ export function getInstance<
323
240
  : column.sortType === 'auto'
324
241
  ? instance.getColumnAutoSortingFn(columnId)
325
242
  : (userSortTypes as Record<string, any>)?.[column.sortType as string] ??
326
- (sortTypes[column.sortType as BuiltInSortType] as SortingFn<
327
- TData,
328
- TValue,
329
- TFilterFns,
330
- TSortingFns,
331
- TAggregationFns
332
- >)
243
+ (sortTypes[
244
+ column.sortType as BuiltInSortType
245
+ ] as SortingFn<TGenerics>)
333
246
  },
334
247
 
335
248
  setSorting: updater =>
@@ -514,6 +427,7 @@ export function getInstance<
514
427
  return propGetter(initialProps, userProps)
515
428
  },
516
429
 
430
+ getPreSortedRowModel: () => instance.getGlobalFilteredRowModel(),
517
431
  getSortedRowModel: memo(
518
432
  () => [
519
433
  instance.getState().sorting,
@@ -525,23 +439,15 @@ export function getInstance<
525
439
  return rowModel
526
440
  }
527
441
 
528
- if (process.env.NODE_ENV !== 'production' && instance.options.debug)
529
- console.info('Sorting...')
530
-
531
442
  return sortingFn(instance, rowModel)
532
443
  },
533
444
  {
534
445
  key: 'getSortedRowModel',
535
- debug: instance.options.debug,
536
- onChange: () => instance._notifyGroupingReset(),
446
+ debug: () => instance.options.debugAll ?? instance.options.debugTable,
447
+ onChange: () => {
448
+ instance._notifyGroupingReset()
449
+ },
537
450
  }
538
451
  ),
539
-
540
- getPreSortedRows: () => instance.getGlobalFilteredRowModel().rows,
541
- getPreSortedFlatRows: () => instance.getGlobalFilteredRowModel().flatRows,
542
- getPreSortedRowsById: () => instance.getGlobalFilteredRowModel().rowsById,
543
- getSortedRows: () => instance.getSortedRowModel().rows,
544
- getSortedFlatRows: () => instance.getSortedRowModel().flatRows,
545
- getSortedRowsById: () => instance.getSortedRowModel().rowsById,
546
452
  }
547
453
  }
@@ -3,8 +3,9 @@ import {
3
3
  Column,
4
4
  Getter,
5
5
  OnChangeFn,
6
+ PartialGenerics,
6
7
  PropGetterValue,
7
- ReactTable,
8
+ TableInstance,
8
9
  Updater,
9
10
  } from '../types'
10
11
  import { functionalUpdate, makeStateUpdater, memo, propGetter } from '../utils'
@@ -24,27 +25,9 @@ export type VisibilityTableState = {
24
25
  columnVisibility: VisibilityState
25
26
  }
26
27
 
27
- export type VisibilityInstance<
28
- TData,
29
- TValue,
30
- TFilterFns,
31
- TSortingFns,
32
- TAggregationFns
33
- > = {
34
- getVisibleFlatColumns: () => Column<
35
- TData,
36
- TValue,
37
- TFilterFns,
38
- TSortingFns,
39
- TAggregationFns
40
- >[]
41
- getVisibleLeafColumns: () => Column<
42
- TData,
43
- TValue,
44
- TFilterFns,
45
- TSortingFns,
46
- TAggregationFns
47
- >[]
28
+ export type VisibilityInstance<TGenerics extends PartialGenerics> = {
29
+ getVisibleFlatColumns: () => Column<TGenerics>[]
30
+ getVisibleLeafColumns: () => Column<TGenerics>[]
48
31
  setColumnVisibility: (updater: Updater<VisibilityState>) => void
49
32
  toggleColumnVisibility: (columnId: string, value?: boolean) => void
50
33
  toggleAllColumnsVisible: (value?: boolean) => void
@@ -67,20 +50,8 @@ export type VisibilityColumnDef = {
67
50
  defaultCanHide?: boolean
68
51
  }
69
52
 
70
- export type VisibilityRow<
71
- TData,
72
- TValue,
73
- TFilterFns,
74
- TSortingFns,
75
- TAggregationFns
76
- > = {
77
- getVisibleCells: () => Cell<
78
- TData,
79
- TValue,
80
- TFilterFns,
81
- TSortingFns,
82
- TAggregationFns
83
- >[]
53
+ export type VisibilityRow<TGenerics extends PartialGenerics> = {
54
+ getVisibleCells: () => Cell<TGenerics>[]
84
55
  }
85
56
 
86
57
  export type VisibilityColumn = {
@@ -100,14 +71,8 @@ export function getInitialState(): VisibilityTableState {
100
71
  }
101
72
  }
102
73
 
103
- export function getDefaultOptions<
104
- TData,
105
- TValue,
106
- TFilterFns,
107
- TSortingFns,
108
- TAggregationFns
109
- >(
110
- instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
74
+ export function getDefaultOptions<TGenerics extends PartialGenerics>(
75
+ instance: TableInstance<TGenerics>
111
76
  ): VisibilityDefaultOptions {
112
77
  return {
113
78
  onColumnVisibilityChange: makeStateUpdater('columnVisibility', instance),
@@ -120,15 +85,9 @@ export function getDefaultColumn() {
120
85
  }
121
86
  }
122
87
 
123
- export function createColumn<
124
- TData,
125
- TValue,
126
- TFilterFns,
127
- TSortingFns,
128
- TAggregationFns
129
- >(
130
- column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>,
131
- instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
88
+ export function createColumn<TGenerics extends PartialGenerics>(
89
+ column: Column<TGenerics>,
90
+ instance: TableInstance<TGenerics>
132
91
  ): VisibilityColumn {
133
92
  return {
134
93
  getCanHide: () => instance.getColumnCanHide(column.id),
@@ -150,15 +109,9 @@ export function createColumn<
150
109
  }
151
110
  }
152
111
 
153
- export function getInstance<
154
- TData,
155
- TValue,
156
- TFilterFns,
157
- TSortingFns,
158
- TAggregationFns
159
- >(
160
- instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>
161
- ): VisibilityInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> {
112
+ export function getInstance<TGenerics extends PartialGenerics>(
113
+ instance: TableInstance<TGenerics>
114
+ ): VisibilityInstance<TGenerics> {
162
115
  return {
163
116
  getVisibleFlatColumns: memo(
164
117
  () => [
@@ -172,7 +125,10 @@ export function getInstance<
172
125
  allFlatColumns => {
173
126
  return allFlatColumns.filter(d => d.getIsVisible?.())
174
127
  },
175
- { key: 'getVisibleFlatColumns', debug: instance.options.debug }
128
+ {
129
+ key: 'getVisibleFlatColumns',
130
+ debug: () => instance.options.debugAll ?? instance.options.debugColumns,
131
+ }
176
132
  ),
177
133
 
178
134
  getVisibleLeafColumns: memo(
@@ -187,7 +143,10 @@ export function getInstance<
187
143
  allFlatColumns => {
188
144
  return allFlatColumns.filter(d => d.getIsVisible?.())
189
145
  },
190
- { key: 'getVisibleLeafColumns', debug: instance.options.debug }
146
+ {
147
+ key: 'getVisibleLeafColumns',
148
+ debug: () => instance.options.debugAll ?? instance.options.debugColumns,
149
+ }
191
150
  ),
192
151
 
193
152
  setColumnVisibility: updater =>
@@ -1,4 +1,4 @@
1
- import { AccessorFn, Row } from './types'
1
+ import { AccessorFn, PartialGenerics, Row } from './types'
2
2
 
3
3
  export const filterTypes = {
4
4
  includesString,
@@ -14,15 +14,8 @@ export const filterTypes = {
14
14
 
15
15
  export type BuiltInFilterType = keyof typeof filterTypes
16
16
 
17
- function includesString<
18
- TData,
19
- TValue,
20
- TAccessor extends AccessorFn<TData>,
21
- TFilterFns,
22
- TSortingFns,
23
- TAggregationFns
24
- >(
25
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],
17
+ function includesString<TGenerics extends PartialGenerics>(
18
+ rows: Row<TGenerics>[],
26
19
  columnIds: string[],
27
20
  filterValue: unknown
28
21
  ) {
@@ -38,15 +31,8 @@ function includesString<
38
31
 
39
32
  includesString.autoRemove = (val: any) => testFalsey(val)
40
33
 
41
- function includesStringSensitive<
42
- TData,
43
- TValue,
44
- TAccessor extends AccessorFn<TData>,
45
- TFilterFns,
46
- TSortingFns,
47
- TAggregationFns
48
- >(
49
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],
34
+ function includesStringSensitive<TGenerics extends PartialGenerics>(
35
+ rows: Row<TGenerics>[],
50
36
  columnIds: string[],
51
37
  filterValue: unknown
52
38
  ) {
@@ -62,15 +48,8 @@ function includesStringSensitive<
62
48
 
63
49
  includesStringSensitive.autoRemove = (val: any) => testFalsey(val)
64
50
 
65
- function equalsString<
66
- TData,
67
- TValue,
68
- TAccessor extends AccessorFn<TData>,
69
- TFilterFns,
70
- TSortingFns,
71
- TAggregationFns
72
- >(
73
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],
51
+ function equalsString<TGenerics extends PartialGenerics>(
52
+ rows: Row<TGenerics>[],
74
53
  columnIds: string[],
75
54
  filterValue: unknown
76
55
  ) {
@@ -88,15 +67,8 @@ function equalsString<
88
67
 
89
68
  equalsString.autoRemove = (val: any) => testFalsey(val)
90
69
 
91
- function equalsStringSensitive<
92
- TData,
93
- TValue,
94
- TAccessor extends AccessorFn<TData>,
95
- TFilterFns,
96
- TSortingFns,
97
- TAggregationFns
98
- >(
99
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],
70
+ function equalsStringSensitive<TGenerics extends PartialGenerics>(
71
+ rows: Row<TGenerics>[],
100
72
  columnIds: string[],
101
73
  filterValue: unknown
102
74
  ) {
@@ -111,15 +83,8 @@ function equalsStringSensitive<
111
83
 
112
84
  equalsStringSensitive.autoRemove = (val: any) => testFalsey(val)
113
85
 
114
- function arrIncludes<
115
- TData,
116
- TValue,
117
- TAccessor extends AccessorFn<TData>,
118
- TFilterFns,
119
- TSortingFns,
120
- TAggregationFns
121
- >(
122
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],
86
+ function arrIncludes<TGenerics extends PartialGenerics>(
87
+ rows: Row<TGenerics>[],
123
88
  columnIds: string[],
124
89
  filterValue: unknown
125
90
  ) {
@@ -133,15 +98,8 @@ function arrIncludes<
133
98
 
134
99
  arrIncludes.autoRemove = (val: any) => testFalsey(val) || !val?.length
135
100
 
136
- function arrIncludesAll<
137
- TData,
138
- TValue,
139
- TAccessor extends AccessorFn<TData>,
140
- TFilterFns,
141
- TSortingFns,
142
- TAggregationFns
143
- >(
144
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],
101
+ function arrIncludesAll<TGenerics extends PartialGenerics>(
102
+ rows: Row<TGenerics>[],
145
103
  columnIds: string[],
146
104
  filterValue: unknown[]
147
105
  ) {
@@ -159,15 +117,8 @@ function arrIncludesAll<
159
117
 
160
118
  arrIncludesAll.autoRemove = (val: any) => testFalsey(val) || !val?.length
161
119
 
162
- function equals<
163
- TData,
164
- TValue,
165
- TAccessor extends AccessorFn<TData>,
166
- TFilterFns,
167
- TSortingFns,
168
- TAggregationFns
169
- >(
170
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],
120
+ function equals<TGenerics extends PartialGenerics>(
121
+ rows: Row<TGenerics>[],
171
122
  columnIds: string[],
172
123
  filterValue: unknown
173
124
  ) {
@@ -181,15 +132,8 @@ function equals<
181
132
 
182
133
  equals.autoRemove = (val: any) => testFalsey(val)
183
134
 
184
- function weakEquals<
185
- TData,
186
- TValue,
187
- TAccessor extends AccessorFn<TData>,
188
- TFilterFns,
189
- TSortingFns,
190
- TAggregationFns
191
- >(
192
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],
135
+ function weakEquals<TGenerics extends PartialGenerics>(
136
+ rows: Row<TGenerics>[],
193
137
  columnIds: string[],
194
138
  filterValue: unknown
195
139
  ) {
@@ -204,15 +148,8 @@ function weakEquals<
204
148
 
205
149
  weakEquals.autoRemove = (val: any) => testFalsey(val)
206
150
 
207
- function betweenNumberRange<
208
- TData,
209
- TValue,
210
- TAccessor extends AccessorFn<TData>,
211
- TFilterFns,
212
- TSortingFns,
213
- TAggregationFns
214
- >(
215
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[],
151
+ function betweenNumberRange<TGenerics extends PartialGenerics>(
152
+ rows: Row<TGenerics>[],
216
153
  columnIds: string[],
217
154
  filterValue: [unknown, unknown]
218
155
  ) {
package/src/index.tsx CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from './types'
2
+ export * from './utils'
2
3
  export * from './utils/columnFilterRowsFn'
3
4
  export * from './utils/globalFilterRowsFn'
4
5
  export * from './utils/sortRowsFn'