@tanstack/table-core 9.0.0-alpha.0 → 9.0.0-alpha.10

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 (152) hide show
  1. package/dist/cjs/aggregationFns.cjs +4 -8
  2. package/dist/cjs/aggregationFns.cjs.map +1 -1
  3. package/dist/cjs/core/cell.cjs +3 -3
  4. package/dist/cjs/core/cell.cjs.map +1 -1
  5. package/dist/cjs/core/cell.d.cts +1 -1
  6. package/dist/cjs/core/column.cjs +3 -3
  7. package/dist/cjs/core/column.cjs.map +1 -1
  8. package/dist/cjs/core/column.d.cts +1 -1
  9. package/dist/cjs/core/headers.cjs +5 -5
  10. package/dist/cjs/core/headers.cjs.map +1 -1
  11. package/dist/cjs/core/row.cjs +5 -6
  12. package/dist/cjs/core/row.cjs.map +1 -1
  13. package/dist/cjs/core/row.d.cts +1 -1
  14. package/dist/cjs/core/table.cjs +11 -7
  15. package/dist/cjs/core/table.cjs.map +1 -1
  16. package/dist/cjs/core/table.d.cts +9 -1
  17. package/dist/cjs/features/ColumnFaceting.cjs +1 -1
  18. package/dist/cjs/features/ColumnFaceting.cjs.map +1 -1
  19. package/dist/cjs/features/ColumnFiltering.cjs +6 -6
  20. package/dist/cjs/features/ColumnFiltering.cjs.map +1 -1
  21. package/dist/cjs/features/ColumnGrouping.cjs +8 -9
  22. package/dist/cjs/features/ColumnGrouping.cjs.map +1 -1
  23. package/dist/cjs/features/ColumnOrdering.cjs +4 -4
  24. package/dist/cjs/features/ColumnOrdering.cjs.map +1 -1
  25. package/dist/cjs/features/ColumnPinning.cjs +5 -5
  26. package/dist/cjs/features/ColumnPinning.cjs.map +1 -1
  27. package/dist/cjs/features/ColumnSizing.cjs +7 -8
  28. package/dist/cjs/features/ColumnSizing.cjs.map +1 -1
  29. package/dist/cjs/features/ColumnVisibility.cjs +5 -5
  30. package/dist/cjs/features/ColumnVisibility.cjs.map +1 -1
  31. package/dist/cjs/features/GlobalFaceting.cjs +1 -1
  32. package/dist/cjs/features/GlobalFaceting.cjs.map +1 -1
  33. package/dist/cjs/features/GlobalFiltering.cjs +4 -4
  34. package/dist/cjs/features/GlobalFiltering.cjs.map +1 -1
  35. package/dist/cjs/features/RowExpanding.cjs +6 -8
  36. package/dist/cjs/features/RowExpanding.cjs.map +1 -1
  37. package/dist/cjs/features/RowPagination.cjs +4 -5
  38. package/dist/cjs/features/RowPagination.cjs.map +1 -1
  39. package/dist/cjs/features/RowPinning.cjs +31 -32
  40. package/dist/cjs/features/RowPinning.cjs.map +1 -1
  41. package/dist/cjs/features/RowPinning.d.cts +1 -1
  42. package/dist/cjs/features/RowSelection.cjs +6 -8
  43. package/dist/cjs/features/RowSelection.cjs.map +1 -1
  44. package/dist/cjs/features/RowSorting.cjs +6 -7
  45. package/dist/cjs/features/RowSorting.cjs.map +1 -1
  46. package/dist/cjs/filterFns.cjs.map +1 -1
  47. package/dist/cjs/index.cjs +5 -4
  48. package/dist/cjs/index.cjs.map +1 -1
  49. package/dist/cjs/types.d.cts +8 -8
  50. package/dist/cjs/utils/filterRowsUtils.cjs +2 -2
  51. package/dist/cjs/utils/filterRowsUtils.cjs.map +1 -1
  52. package/dist/cjs/utils/getCoreRowModel.cjs +1 -1
  53. package/dist/cjs/utils/getCoreRowModel.cjs.map +1 -1
  54. package/dist/cjs/utils/getFacetedMinMaxValues.cjs +1 -2
  55. package/dist/cjs/utils/getFacetedMinMaxValues.cjs.map +1 -1
  56. package/dist/cjs/utils/getFacetedUniqueValues.cjs +1 -2
  57. package/dist/cjs/utils/getFacetedUniqueValues.cjs.map +1 -1
  58. package/dist/cjs/utils/getGroupedRowModel.cjs +1 -1
  59. package/dist/cjs/utils/getGroupedRowModel.cjs.map +1 -1
  60. package/dist/cjs/utils/getSortedRowModel.cjs +3 -6
  61. package/dist/cjs/utils/getSortedRowModel.cjs.map +1 -1
  62. package/dist/cjs/utils.cjs +2 -4
  63. package/dist/cjs/utils.cjs.map +1 -1
  64. package/dist/esm/aggregationFns.js +4 -8
  65. package/dist/esm/aggregationFns.js.map +1 -1
  66. package/dist/esm/core/cell.d.ts +1 -1
  67. package/dist/esm/core/cell.js +3 -3
  68. package/dist/esm/core/cell.js.map +1 -1
  69. package/dist/esm/core/column.d.ts +1 -1
  70. package/dist/esm/core/column.js +3 -3
  71. package/dist/esm/core/column.js.map +1 -1
  72. package/dist/esm/core/headers.js +5 -5
  73. package/dist/esm/core/headers.js.map +1 -1
  74. package/dist/esm/core/row.d.ts +1 -1
  75. package/dist/esm/core/row.js +6 -7
  76. package/dist/esm/core/row.js.map +1 -1
  77. package/dist/esm/core/table.d.ts +9 -1
  78. package/dist/esm/core/table.js +12 -8
  79. package/dist/esm/core/table.js.map +1 -1
  80. package/dist/esm/features/ColumnFaceting.js +1 -1
  81. package/dist/esm/features/ColumnFaceting.js.map +1 -1
  82. package/dist/esm/features/ColumnFiltering.js +6 -6
  83. package/dist/esm/features/ColumnFiltering.js.map +1 -1
  84. package/dist/esm/features/ColumnGrouping.js +8 -9
  85. package/dist/esm/features/ColumnGrouping.js.map +1 -1
  86. package/dist/esm/features/ColumnOrdering.js +4 -4
  87. package/dist/esm/features/ColumnOrdering.js.map +1 -1
  88. package/dist/esm/features/ColumnPinning.js +5 -5
  89. package/dist/esm/features/ColumnPinning.js.map +1 -1
  90. package/dist/esm/features/ColumnSizing.js +7 -8
  91. package/dist/esm/features/ColumnSizing.js.map +1 -1
  92. package/dist/esm/features/ColumnVisibility.js +5 -5
  93. package/dist/esm/features/ColumnVisibility.js.map +1 -1
  94. package/dist/esm/features/GlobalFaceting.js +1 -1
  95. package/dist/esm/features/GlobalFaceting.js.map +1 -1
  96. package/dist/esm/features/GlobalFiltering.js +4 -4
  97. package/dist/esm/features/GlobalFiltering.js.map +1 -1
  98. package/dist/esm/features/RowExpanding.js +6 -8
  99. package/dist/esm/features/RowExpanding.js.map +1 -1
  100. package/dist/esm/features/RowPagination.js +4 -5
  101. package/dist/esm/features/RowPagination.js.map +1 -1
  102. package/dist/esm/features/RowPinning.d.ts +1 -1
  103. package/dist/esm/features/RowPinning.js +31 -32
  104. package/dist/esm/features/RowPinning.js.map +1 -1
  105. package/dist/esm/features/RowSelection.js +6 -8
  106. package/dist/esm/features/RowSelection.js.map +1 -1
  107. package/dist/esm/features/RowSorting.js +6 -7
  108. package/dist/esm/features/RowSorting.js.map +1 -1
  109. package/dist/esm/filterFns.js.map +1 -1
  110. package/dist/esm/index.js +10 -9
  111. package/dist/esm/types.d.ts +8 -8
  112. package/dist/esm/utils/filterRowsUtils.js +3 -3
  113. package/dist/esm/utils/filterRowsUtils.js.map +1 -1
  114. package/dist/esm/utils/getCoreRowModel.js +2 -2
  115. package/dist/esm/utils/getCoreRowModel.js.map +1 -1
  116. package/dist/esm/utils/getFacetedMinMaxValues.js +1 -2
  117. package/dist/esm/utils/getFacetedMinMaxValues.js.map +1 -1
  118. package/dist/esm/utils/getFacetedUniqueValues.js +1 -2
  119. package/dist/esm/utils/getFacetedUniqueValues.js.map +1 -1
  120. package/dist/esm/utils/getGroupedRowModel.js +2 -2
  121. package/dist/esm/utils/getGroupedRowModel.js.map +1 -1
  122. package/dist/esm/utils/getSortedRowModel.js +3 -6
  123. package/dist/esm/utils/getSortedRowModel.js.map +1 -1
  124. package/dist/esm/utils.js +2 -4
  125. package/dist/esm/utils.js.map +1 -1
  126. package/package.json +1 -1
  127. package/src/core/cell.ts +2 -2
  128. package/src/core/column.ts +2 -2
  129. package/src/core/headers.ts +5 -5
  130. package/src/core/row.ts +4 -4
  131. package/src/core/table.ts +43 -7
  132. package/src/features/ColumnFaceting.ts +1 -1
  133. package/src/features/ColumnFiltering.ts +6 -6
  134. package/src/features/ColumnGrouping.ts +7 -7
  135. package/src/features/ColumnOrdering.ts +4 -4
  136. package/src/features/ColumnPinning.ts +5 -5
  137. package/src/features/ColumnSizing.ts +6 -6
  138. package/src/features/ColumnVisibility.ts +5 -5
  139. package/src/features/GlobalFaceting.ts +1 -1
  140. package/src/features/GlobalFiltering.ts +4 -4
  141. package/src/features/RowExpanding.ts +4 -4
  142. package/src/features/RowPagination.ts +3 -3
  143. package/src/features/RowPinning.ts +39 -35
  144. package/src/features/RowSelection.ts +4 -4
  145. package/src/features/RowSorting.ts +5 -5
  146. package/src/filterFns.ts +2 -2
  147. package/src/types.ts +8 -8
  148. package/src/utils/filterRowsUtils.ts +3 -3
  149. package/src/utils/getCoreRowModel.ts +2 -2
  150. package/src/utils/getGroupedRowModel.ts +2 -2
  151. package/src/utils/getSortedRowModel.ts +2 -2
  152. package/src/utils.ts +6 -5
@@ -240,7 +240,7 @@ export interface GroupingInstance<TData extends RowData> {
240
240
  //
241
241
 
242
242
  export const ColumnGrouping: TableFeature = {
243
- getDefaultColumnDef: <TData extends RowData>(): GroupingColumnDef<
243
+ _getDefaultColumnDef: <TData extends RowData>(): GroupingColumnDef<
244
244
  TData,
245
245
  unknown
246
246
  > => {
@@ -250,14 +250,14 @@ export const ColumnGrouping: TableFeature = {
250
250
  }
251
251
  },
252
252
 
253
- getInitialState: (state): GroupingTableState => {
253
+ _getInitialState: (state): GroupingTableState => {
254
254
  return {
255
255
  grouping: [],
256
256
  ...state,
257
257
  }
258
258
  },
259
259
 
260
- getDefaultOptions: <TData extends RowData>(
260
+ _getDefaultOptions: <TData extends RowData>(
261
261
  table: Table<TData>
262
262
  ): GroupingOptions => {
263
263
  return {
@@ -266,7 +266,7 @@ export const ColumnGrouping: TableFeature = {
266
266
  }
267
267
  },
268
268
 
269
- createColumn: <TData extends RowData, TValue>(
269
+ _createColumn: <TData extends RowData, TValue>(
270
270
  column: Column<TData, TValue>,
271
271
  table: Table<TData>
272
272
  ): void => {
@@ -334,7 +334,7 @@ export const ColumnGrouping: TableFeature = {
334
334
  }
335
335
  },
336
336
 
337
- createTable: <TData extends RowData>(table: Table<TData>): void => {
337
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
338
338
  table.setGrouping = updater => table.options.onGroupingChange?.(updater)
339
339
 
340
340
  table.resetGrouping = defaultState => {
@@ -355,7 +355,7 @@ export const ColumnGrouping: TableFeature = {
355
355
  }
356
356
  },
357
357
 
358
- createRow: <TData extends RowData>(
358
+ _createRow: <TData extends RowData>(
359
359
  row: Row<TData>,
360
360
  table: Table<TData>
361
361
  ): void => {
@@ -380,7 +380,7 @@ export const ColumnGrouping: TableFeature = {
380
380
  row._groupingValuesCache = {}
381
381
  },
382
382
 
383
- createCell: <TData extends RowData, TValue>(
383
+ _createCell: <TData extends RowData, TValue>(
384
384
  cell: Cell<TData, TValue>,
385
385
  column: Column<TData, TValue>,
386
386
  row: Row<TData>,
@@ -73,14 +73,14 @@ export interface ColumnOrderInstance<TData extends RowData> {
73
73
  //
74
74
 
75
75
  export const ColumnOrdering: TableFeature = {
76
- getInitialState: (state): ColumnOrderTableState => {
76
+ _getInitialState: (state): ColumnOrderTableState => {
77
77
  return {
78
78
  columnOrder: [],
79
79
  ...state,
80
80
  }
81
81
  },
82
82
 
83
- getDefaultOptions: <TData extends RowData>(
83
+ _getDefaultOptions: <TData extends RowData>(
84
84
  table: Table<TData>
85
85
  ): ColumnOrderDefaultOptions => {
86
86
  return {
@@ -88,7 +88,7 @@ export const ColumnOrdering: TableFeature = {
88
88
  }
89
89
  },
90
90
 
91
- createColumn: <TData extends RowData>(
91
+ _createColumn: <TData extends RowData>(
92
92
  column: Column<TData, unknown>,
93
93
  table: Table<TData>
94
94
  ): void => {
@@ -107,7 +107,7 @@ export const ColumnOrdering: TableFeature = {
107
107
  }
108
108
  },
109
109
 
110
- createTable: <TData extends RowData>(table: Table<TData>): void => {
110
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
111
111
  table.setColumnOrder = updater =>
112
112
  table.options.onColumnOrderChange?.(updater)
113
113
  table.resetColumnOrder = defaultState => {
@@ -151,14 +151,14 @@ const getDefaultColumnPinningState = (): ColumnPinningState => ({
151
151
  })
152
152
 
153
153
  export const ColumnPinning: TableFeature = {
154
- getInitialState: (state): ColumnPinningTableState => {
154
+ _getInitialState: (state): ColumnPinningTableState => {
155
155
  return {
156
156
  columnPinning: getDefaultColumnPinningState(),
157
157
  ...state,
158
158
  }
159
159
  },
160
160
 
161
- getDefaultOptions: <TData extends RowData>(
161
+ _getDefaultOptions: <TData extends RowData>(
162
162
  table: Table<TData>
163
163
  ): ColumnPinningDefaultOptions => {
164
164
  return {
@@ -166,7 +166,7 @@ export const ColumnPinning: TableFeature = {
166
166
  }
167
167
  },
168
168
 
169
- createColumn: <TData extends RowData, TValue>(
169
+ _createColumn: <TData extends RowData, TValue>(
170
170
  column: Column<TData, TValue>,
171
171
  table: Table<TData>
172
172
  ): void => {
@@ -236,7 +236,7 @@ export const ColumnPinning: TableFeature = {
236
236
  }
237
237
  },
238
238
 
239
- createRow: <TData extends RowData>(
239
+ _createRow: <TData extends RowData>(
240
240
  row: Row<TData>,
241
241
  table: Table<TData>
242
242
  ): void => {
@@ -279,7 +279,7 @@ export const ColumnPinning: TableFeature = {
279
279
  )
280
280
  },
281
281
 
282
- createTable: <TData extends RowData>(table: Table<TData>): void => {
282
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
283
283
  table.setColumnPinning = updater =>
284
284
  table.options.onColumnPinningChange?.(updater)
285
285
 
@@ -232,10 +232,10 @@ const getDefaultColumnSizingInfoState = (): ColumnSizingInfoState => ({
232
232
  })
233
233
 
234
234
  export const ColumnSizing: TableFeature = {
235
- getDefaultColumnDef: (): ColumnSizingColumnDef => {
235
+ _getDefaultColumnDef: (): ColumnSizingColumnDef => {
236
236
  return defaultColumnSizing
237
237
  },
238
- getInitialState: (state): ColumnSizingTableState => {
238
+ _getInitialState: (state): ColumnSizingTableState => {
239
239
  return {
240
240
  columnSizing: {},
241
241
  columnSizingInfo: getDefaultColumnSizingInfoState(),
@@ -243,7 +243,7 @@ export const ColumnSizing: TableFeature = {
243
243
  }
244
244
  },
245
245
 
246
- getDefaultOptions: <TData extends RowData>(
246
+ _getDefaultOptions: <TData extends RowData>(
247
247
  table: Table<TData>
248
248
  ): ColumnSizingDefaultOptions => {
249
249
  return {
@@ -254,7 +254,7 @@ export const ColumnSizing: TableFeature = {
254
254
  }
255
255
  },
256
256
 
257
- createColumn: <TData extends RowData, TValue>(
257
+ _createColumn: <TData extends RowData, TValue>(
258
258
  column: Column<TData, TValue>,
259
259
  table: Table<TData>
260
260
  ): void => {
@@ -312,7 +312,7 @@ export const ColumnSizing: TableFeature = {
312
312
  }
313
313
  },
314
314
 
315
- createHeader: <TData extends RowData, TValue>(
315
+ _createHeader: <TData extends RowData, TValue>(
316
316
  header: Header<TData, TValue>,
317
317
  table: Table<TData>
318
318
  ): void => {
@@ -513,7 +513,7 @@ export const ColumnSizing: TableFeature = {
513
513
  }
514
514
  },
515
515
 
516
- createTable: <TData extends RowData>(table: Table<TData>): void => {
516
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
517
517
  table.setColumnSizing = updater =>
518
518
  table.options.onColumnSizingChange?.(updater)
519
519
  table.setColumnSizingInfo = updater =>
@@ -150,14 +150,14 @@ export interface VisibilityColumn {
150
150
  //
151
151
 
152
152
  export const ColumnVisibility: TableFeature = {
153
- getInitialState: (state): VisibilityTableState => {
153
+ _getInitialState: (state): VisibilityTableState => {
154
154
  return {
155
155
  columnVisibility: {},
156
156
  ...state,
157
157
  }
158
158
  },
159
159
 
160
- getDefaultOptions: <TData extends RowData>(
160
+ _getDefaultOptions: <TData extends RowData>(
161
161
  table: Table<TData>
162
162
  ): VisibilityDefaultOptions => {
163
163
  return {
@@ -165,7 +165,7 @@ export const ColumnVisibility: TableFeature = {
165
165
  }
166
166
  },
167
167
 
168
- createColumn: <TData extends RowData, TValue>(
168
+ _createColumn: <TData extends RowData, TValue>(
169
169
  column: Column<TData, TValue>,
170
170
  table: Table<TData>
171
171
  ): void => {
@@ -201,7 +201,7 @@ export const ColumnVisibility: TableFeature = {
201
201
  }
202
202
  },
203
203
 
204
- createRow: <TData extends RowData>(
204
+ _createRow: <TData extends RowData>(
205
205
  row: Row<TData>,
206
206
  table: Table<TData>
207
207
  ): void => {
@@ -223,7 +223,7 @@ export const ColumnVisibility: TableFeature = {
223
223
  )
224
224
  },
225
225
 
226
- createTable: <TData extends RowData>(table: Table<TData>): void => {
226
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
227
227
  const makeVisibleColumnsMethod = (
228
228
  key: string,
229
229
  getColumns: () => Column<TData, unknown>[]
@@ -28,7 +28,7 @@ export interface GlobalFacetingInstance<TData extends RowData> {
28
28
  //
29
29
 
30
30
  export const GlobalFaceting: TableFeature = {
31
- createTable: <TData extends RowData>(table: Table<TData>): void => {
31
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
32
32
  table._getGlobalFacetedRowModel =
33
33
  table.options.getFacetedRowModel &&
34
34
  table.options.getFacetedRowModel(table, '__global__')
@@ -94,14 +94,14 @@ export interface GlobalFilterInstance<TData extends RowData> {
94
94
  //
95
95
 
96
96
  export const GlobalFiltering: TableFeature = {
97
- getInitialState: (state): GlobalFilterTableState => {
97
+ _getInitialState: (state): GlobalFilterTableState => {
98
98
  return {
99
99
  globalFilter: undefined,
100
100
  ...state,
101
101
  }
102
102
  },
103
103
 
104
- getDefaultOptions: <TData extends RowData>(
104
+ _getDefaultOptions: <TData extends RowData>(
105
105
  table: Table<TData>
106
106
  ): GlobalFilterOptions<TData> => {
107
107
  return {
@@ -118,7 +118,7 @@ export const GlobalFiltering: TableFeature = {
118
118
  } as GlobalFilterOptions<TData>
119
119
  },
120
120
 
121
- createColumn: <TData extends RowData>(
121
+ _createColumn: <TData extends RowData>(
122
122
  column: Column<TData, unknown>,
123
123
  table: Table<TData>
124
124
  ): void => {
@@ -133,7 +133,7 @@ export const GlobalFiltering: TableFeature = {
133
133
  }
134
134
  },
135
135
 
136
- createTable: <TData extends RowData>(table: Table<TData>): void => {
136
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
137
137
  table.getGlobalAutoFilterFn = () => {
138
138
  return filterFns.includesString
139
139
  }
@@ -167,14 +167,14 @@ export interface ExpandedInstance<TData extends RowData> {
167
167
  //
168
168
 
169
169
  export const RowExpanding: TableFeature = {
170
- getInitialState: (state): ExpandedTableState => {
170
+ _getInitialState: (state): ExpandedTableState => {
171
171
  return {
172
172
  expanded: {},
173
173
  ...state,
174
174
  }
175
175
  },
176
176
 
177
- getDefaultOptions: <TData extends RowData>(
177
+ _getDefaultOptions: <TData extends RowData>(
178
178
  table: Table<TData>
179
179
  ): ExpandedOptions<TData> => {
180
180
  return {
@@ -183,7 +183,7 @@ export const RowExpanding: TableFeature = {
183
183
  }
184
184
  },
185
185
 
186
- createTable: <TData extends RowData>(table: Table<TData>): void => {
186
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
187
187
  let registered = false
188
188
  let queued = false
189
189
 
@@ -283,7 +283,7 @@ export const RowExpanding: TableFeature = {
283
283
  }
284
284
  },
285
285
 
286
- createRow: <TData extends RowData>(
286
+ _createRow: <TData extends RowData>(
287
287
  row: Row<TData>,
288
288
  table: Table<TData>
289
289
  ): void => {
@@ -193,7 +193,7 @@ const getDefaultPaginationState = (): PaginationState => ({
193
193
  })
194
194
 
195
195
  export const RowPagination: TableFeature = {
196
- getInitialState: (state): PaginationTableState => {
196
+ _getInitialState: (state): PaginationTableState => {
197
197
  return {
198
198
  ...state,
199
199
  pagination: {
@@ -203,7 +203,7 @@ export const RowPagination: TableFeature = {
203
203
  }
204
204
  },
205
205
 
206
- getDefaultOptions: <TData extends RowData>(
206
+ _getDefaultOptions: <TData extends RowData>(
207
207
  table: Table<TData>
208
208
  ): PaginationDefaultOptions => {
209
209
  return {
@@ -211,7 +211,7 @@ export const RowPagination: TableFeature = {
211
211
  }
212
212
  },
213
213
 
214
- createTable: <TData extends RowData>(table: Table<TData>): void => {
214
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
215
215
  let registered = false
216
216
  let queued = false
217
217
 
@@ -76,7 +76,11 @@ export interface RowPinningRow {
76
76
  }
77
77
 
78
78
  export interface RowPinningInstance<TData extends RowData> {
79
- _getPinnedRows: (position: 'top' | 'bottom') => Row<TData>[]
79
+ _getPinnedRows: (
80
+ visiblePinnedRows: Array<Row<TData>>,
81
+ pinnedRowIds: Array<string> | undefined,
82
+ position: 'top' | 'bottom'
83
+ ) => Row<TData>[]
80
84
  /**
81
85
  * Returns all bottom pinned rows.
82
86
  * @link [API Docs](https://tanstack.com/table/v8/docs/api/features/row-pinning#getbottomrows)
@@ -123,14 +127,14 @@ const getDefaultRowPinningState = (): RowPinningState => ({
123
127
  })
124
128
 
125
129
  export const RowPinning: TableFeature = {
126
- getInitialState: (state): RowPinningTableState => {
130
+ _getInitialState: (state): RowPinningTableState => {
127
131
  return {
128
132
  rowPinning: getDefaultRowPinningState(),
129
133
  ...state,
130
134
  }
131
135
  },
132
136
 
133
- getDefaultOptions: <TData extends RowData>(
137
+ _getDefaultOptions: <TData extends RowData>(
134
138
  table: Table<TData>
135
139
  ): RowPinningDefaultOptions => {
136
140
  return {
@@ -138,7 +142,7 @@ export const RowPinning: TableFeature = {
138
142
  }
139
143
  },
140
144
 
141
- createRow: <TData extends RowData>(
145
+ _createRow: <TData extends RowData>(
142
146
  row: Row<TData>,
143
147
  table: Table<TData>
144
148
  ): void => {
@@ -199,15 +203,15 @@ export const RowPinning: TableFeature = {
199
203
  const position = row.getIsPinned()
200
204
  if (!position) return -1
201
205
 
202
- const visiblePinnedRowIds = table
203
- ._getPinnedRows(position)
204
- ?.map(({ id }) => id)
206
+ const visiblePinnedRowIds = (
207
+ position === 'top' ? table.getTopRows() : table.getBottomRows()
208
+ )?.map(({ id }) => id)
205
209
 
206
210
  return visiblePinnedRowIds?.indexOf(row.id) ?? -1
207
211
  }
208
212
  },
209
213
 
210
- createTable: <TData extends RowData>(table: Table<TData>): void => {
214
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
211
215
  table.setRowPinning = updater => table.options.onRowPinningChange?.(updater)
212
216
 
213
217
  table.resetRowPinning = defaultState =>
@@ -226,36 +230,36 @@ export const RowPinning: TableFeature = {
226
230
  return Boolean(pinningState[position]?.length)
227
231
  }
228
232
 
229
- table._getPinnedRows = memo(
230
- position => [
231
- table.getRowModel().rows,
232
- table.getState().rowPinning[position!],
233
- position,
234
- ],
235
- (visibleRows, pinnedRowIds, position) => {
236
- const rows =
237
- table.options.keepPinnedRows ?? true
238
- ? //get all rows that are pinned even if they would not be otherwise visible
239
- //account for expanded parent rows, but not pagination or filtering
240
- (pinnedRowIds ?? []).map(rowId => {
241
- const row = table.getRow(rowId, true)
242
- return row.getIsAllParentsExpanded() ? row : null
243
- })
244
- : //else get only visible rows that are pinned
245
- (pinnedRowIds ?? []).map(
246
- rowId => visibleRows.find(row => row.id === rowId)!
247
- )
233
+ table._getPinnedRows = (visibleRows, pinnedRowIds, position) => {
234
+ const rows =
235
+ table.options.keepPinnedRows ?? true
236
+ ? //get all rows that are pinned even if they would not be otherwise visible
237
+ //account for expanded parent rows, but not pagination or filtering
238
+ (pinnedRowIds ?? []).map(rowId => {
239
+ const row = table.getRow(rowId, true)
240
+ return row.getIsAllParentsExpanded() ? row : null
241
+ })
242
+ : //else get only visible rows that are pinned
243
+ (pinnedRowIds ?? []).map(
244
+ rowId => visibleRows.find(row => row.id === rowId)!
245
+ )
248
246
 
249
- return rows
250
- .filter(Boolean)
251
- .map(d => ({ ...d, position })) as Row<TData>[]
252
- },
253
- getMemoOptions(table.options, 'debugRows', '_getPinnedRows')
254
- )
247
+ return rows.filter(Boolean).map(d => ({ ...d, position })) as Row<TData>[]
248
+ }
255
249
 
256
- table.getTopRows = () => table._getPinnedRows('top')
250
+ table.getTopRows = memo(
251
+ () => [table.getRowModel().rows, table.getState().rowPinning.top],
252
+ (allRows, topPinnedRowIds) =>
253
+ table._getPinnedRows(allRows, topPinnedRowIds, 'top'),
254
+ getMemoOptions(table.options, 'debugRows', 'getTopRows')
255
+ )
257
256
 
258
- table.getBottomRows = () => table._getPinnedRows('bottom')
257
+ table.getBottomRows = memo(
258
+ () => [table.getRowModel().rows, table.getState().rowPinning.bottom],
259
+ (allRows, bottomPinnedRowIds) =>
260
+ table._getPinnedRows(allRows, bottomPinnedRowIds, 'bottom'),
261
+ getMemoOptions(table.options, 'debugRows', 'getBottomRows')
262
+ )
259
263
 
260
264
  table.getCenterRows = memo(
261
265
  () => [
@@ -197,14 +197,14 @@ export interface RowSelectionInstance<TData extends RowData> {
197
197
  //
198
198
 
199
199
  export const RowSelection: TableFeature = {
200
- getInitialState: (state): RowSelectionTableState => {
200
+ _getInitialState: (state): RowSelectionTableState => {
201
201
  return {
202
202
  rowSelection: {},
203
203
  ...state,
204
204
  }
205
205
  },
206
206
 
207
- getDefaultOptions: <TData extends RowData>(
207
+ _getDefaultOptions: <TData extends RowData>(
208
208
  table: Table<TData>
209
209
  ): RowSelectionOptions<TData> => {
210
210
  return {
@@ -218,7 +218,7 @@ export const RowSelection: TableFeature = {
218
218
  }
219
219
  },
220
220
 
221
- createTable: <TData extends RowData>(table: Table<TData>): void => {
221
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
222
222
  table.setRowSelection = updater =>
223
223
  table.options.onRowSelectionChange?.(updater)
224
224
  table.resetRowSelection = defaultState =>
@@ -466,7 +466,7 @@ export const RowSelection: TableFeature = {
466
466
  }
467
467
  },
468
468
 
469
- createRow: <TData extends RowData>(
469
+ _createRow: <TData extends RowData>(
470
470
  row: Row<TData>,
471
471
  table: Table<TData>
472
472
  ): void => {
@@ -276,21 +276,21 @@ export interface SortingInstance<TData extends RowData> {
276
276
  //
277
277
 
278
278
  export const RowSorting: TableFeature = {
279
- getInitialState: (state): SortingTableState => {
279
+ _getInitialState: (state): SortingTableState => {
280
280
  return {
281
281
  sorting: [],
282
282
  ...state,
283
283
  }
284
284
  },
285
285
 
286
- getDefaultColumnDef: <TData extends RowData>(): SortingColumnDef<TData> => {
286
+ _getDefaultColumnDef: <TData extends RowData>(): SortingColumnDef<TData> => {
287
287
  return {
288
288
  sortingFn: 'auto',
289
289
  sortUndefined: 1,
290
290
  }
291
291
  },
292
292
 
293
- getDefaultOptions: <TData extends RowData>(
293
+ _getDefaultOptions: <TData extends RowData>(
294
294
  table: Table<TData>
295
295
  ): SortingOptions<TData> => {
296
296
  return {
@@ -301,7 +301,7 @@ export const RowSorting: TableFeature = {
301
301
  }
302
302
  },
303
303
 
304
- createColumn: <TData extends RowData, TValue>(
304
+ _createColumn: <TData extends RowData, TValue>(
305
305
  column: Column<TData, TValue>,
306
306
  table: Table<TData>
307
307
  ): void => {
@@ -521,7 +521,7 @@ export const RowSorting: TableFeature = {
521
521
  }
522
522
  },
523
523
 
524
- createTable: <TData extends RowData>(table: Table<TData>): void => {
524
+ _createTable: <TData extends RowData>(table: Table<TData>): void => {
525
525
  table.setSorting = updater => table.options.onSortingChange?.(updater)
526
526
  table.resetSorting = defaultState => {
527
527
  table.setSorting(defaultState ? [] : table.initialState?.sorting ?? [])
package/src/filterFns.ts CHANGED
@@ -69,8 +69,8 @@ const arrIncludesSome: FilterFn<any> = (
69
69
  columnId: string,
70
70
  filterValue: unknown[]
71
71
  ) => {
72
- return filterValue.some(
73
- val => row.getValue<unknown[]>(columnId)?.includes(val)
72
+ return filterValue.some(val =>
73
+ row.getValue<unknown[]>(columnId)?.includes(val)
74
74
  )
75
75
  }
76
76
 
package/src/types.ts CHANGED
@@ -98,21 +98,21 @@ import { CellContext, CoreCell } from './core/cell'
98
98
  import { CoreColumn } from './core/column'
99
99
 
100
100
  export interface TableFeature<TData extends RowData = any> {
101
- createCell?: (
101
+ _createCell?: (
102
102
  cell: Cell<TData, unknown>,
103
103
  column: Column<TData>,
104
104
  row: Row<TData>,
105
105
  table: Table<TData>
106
106
  ) => void
107
- createColumn?: (column: Column<TData, unknown>, table: Table<TData>) => void
108
- createHeader?: (header: Header<TData, unknown>, table: Table<TData>) => void
109
- createRow?: (row: Row<TData>, table: Table<TData>) => void
110
- createTable?: (table: Table<TData>) => void
111
- getDefaultColumnDef?: () => Partial<ColumnDef<TData, unknown>>
112
- getDefaultOptions?: (
107
+ _createColumn?: (column: Column<TData, unknown>, table: Table<TData>) => void
108
+ _createHeader?: (header: Header<TData, unknown>, table: Table<TData>) => void
109
+ _createRow?: (row: Row<TData>, table: Table<TData>) => void
110
+ _createTable?: (table: Table<TData>) => void
111
+ _getDefaultColumnDef?: () => Partial<ColumnDef<TData, unknown>>
112
+ _getDefaultOptions?: (
113
113
  table: Table<TData>
114
114
  ) => Partial<TableOptionsResolved<TData>>
115
- getInitialState?: (initialState?: InitialTableState) => Partial<TableState>
115
+ _getInitialState?: (initialState?: InitialTableState) => Partial<TableState>
116
116
  }
117
117
 
118
118
  export interface TableMeta<TData extends RowData> {}
@@ -1,4 +1,4 @@
1
- import { createRow } from '../core/row'
1
+ import { _createRow } from '../core/row'
2
2
  import { Row, RowModel, Table, RowData } from '../types'
3
3
 
4
4
  export function filterRows<TData extends RowData>(
@@ -29,7 +29,7 @@ function filterRowModelFromLeafs<TData extends RowData>(
29
29
  for (let i = 0; i < rowsToFilter.length; i++) {
30
30
  let row = rowsToFilter[i]!
31
31
 
32
- const newRow = createRow(
32
+ const newRow = _createRow(
33
33
  table,
34
34
  row.id,
35
35
  row.original,
@@ -100,7 +100,7 @@ function filterRowModelFromRoot<TData extends RowData>(
100
100
 
101
101
  if (pass) {
102
102
  if (row.subRows?.length && depth < maxDepth) {
103
- const newRow = createRow(
103
+ const newRow = _createRow(
104
104
  table,
105
105
  row.id,
106
106
  row.original,
@@ -1,4 +1,4 @@
1
- import { createRow } from '../core/row'
1
+ import { _createRow } from '../core/row'
2
2
  import { Table, Row, RowModel, RowData } from '../types'
3
3
  import { getMemoOptions, memo } from '../utils'
4
4
 
@@ -37,7 +37,7 @@ export function getCoreRowModel<TData extends RowData>(): (
37
37
  // }
38
38
 
39
39
  // Make the row
40
- const row = createRow(
40
+ const row = _createRow(
41
41
  table,
42
42
  table._getRowId(originalRows[i]!, i, parentRow),
43
43
  originalRows[i]!,
@@ -1,4 +1,4 @@
1
- import { createRow } from '../core/row'
1
+ import { _createRow } from '../core/row'
2
2
  import { Table, Row, RowModel, RowData } from '../types'
3
3
  import { flattenBy, getMemoOptions, memo } from '../utils'
4
4
 
@@ -67,7 +67,7 @@ export function getGroupedRowModel<TData extends RowData>(): (
67
67
  ? flattenBy(groupedRows, row => row.subRows)
68
68
  : groupedRows
69
69
 
70
- const row = createRow(
70
+ const row = _createRow(
71
71
  table,
72
72
  id,
73
73
  leafRows[0]!.original,
@@ -18,8 +18,8 @@ export function getSortedRowModel<TData extends RowData>(): (
18
18
  const sortedFlatRows: Row<TData>[] = []
19
19
 
20
20
  // Filter out sortings that correspond to non existing columns
21
- const availableSorting = sortingState.filter(
22
- sort => table.getColumn(sort.id)?.getCanSort()
21
+ const availableSorting = sortingState.filter(sort =>
22
+ table.getColumn(sort.id)?.getCanSort()
23
23
  )
24
24
 
25
25
  const columnInfoById: Record<
package/src/utils.ts CHANGED
@@ -65,11 +65,12 @@ type DeepKeysPrefix<
65
65
  ? `${TPrefix}.${DeepKeys<T[TPrefix], [...TDepth, any]> & string}`
66
66
  : never
67
67
 
68
- export type DeepValue<T, TProp> = T extends Record<string | number, any>
69
- ? TProp extends `${infer TBranch}.${infer TDeepProp}`
70
- ? DeepValue<T[TBranch], TDeepProp>
71
- : T[TProp & string]
72
- : never
68
+ export type DeepValue<T, TProp> =
69
+ T extends Record<string | number, any>
70
+ ? TProp extends `${infer TBranch}.${infer TDeepProp}`
71
+ ? DeepValue<T[TBranch], TDeepProp>
72
+ : T[TProp & string]
73
+ : never
73
74
 
74
75
  export type NoInfer<T> = [T][T extends any ? 0 : never]
75
76