@tanstack/table-core 9.0.0-alpha.47 → 9.0.0-alpha.48

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 (246) hide show
  1. package/README.md +10 -0
  2. package/dist/core/cells/coreCellsFeature.utils.cjs +11 -8
  3. package/dist/core/cells/coreCellsFeature.utils.cjs.map +1 -1
  4. package/dist/core/cells/coreCellsFeature.utils.d.cts +11 -8
  5. package/dist/core/cells/coreCellsFeature.utils.d.ts +11 -8
  6. package/dist/core/cells/coreCellsFeature.utils.js +11 -8
  7. package/dist/core/cells/coreCellsFeature.utils.js.map +1 -1
  8. package/dist/core/columns/coreColumnsFeature.types.d.cts +7 -6
  9. package/dist/core/columns/coreColumnsFeature.types.d.ts +7 -6
  10. package/dist/core/columns/coreColumnsFeature.utils.cjs +37 -27
  11. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -1
  12. package/dist/core/columns/coreColumnsFeature.utils.d.cts +37 -27
  13. package/dist/core/columns/coreColumnsFeature.utils.d.ts +37 -27
  14. package/dist/core/columns/coreColumnsFeature.utils.js +37 -27
  15. package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -1
  16. package/dist/core/headers/coreHeadersFeature.types.d.cts +6 -4
  17. package/dist/core/headers/coreHeadersFeature.types.d.ts +6 -4
  18. package/dist/core/headers/coreHeadersFeature.utils.cjs +23 -18
  19. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
  20. package/dist/core/headers/coreHeadersFeature.utils.d.cts +23 -18
  21. package/dist/core/headers/coreHeadersFeature.utils.d.ts +23 -18
  22. package/dist/core/headers/coreHeadersFeature.utils.js +23 -18
  23. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
  24. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +48 -36
  25. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -1
  26. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +48 -36
  27. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +48 -36
  28. package/dist/core/row-models/coreRowModelsFeature.utils.js +48 -36
  29. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -1
  30. package/dist/core/rows/coreRowsFeature.types.d.cts +4 -4
  31. package/dist/core/rows/coreRowsFeature.types.d.ts +4 -4
  32. package/dist/core/rows/coreRowsFeature.utils.cjs +34 -28
  33. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -1
  34. package/dist/core/rows/coreRowsFeature.utils.d.cts +34 -28
  35. package/dist/core/rows/coreRowsFeature.utils.d.ts +34 -28
  36. package/dist/core/rows/coreRowsFeature.utils.js +34 -28
  37. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -1
  38. package/dist/core/table/coreTablesFeature.types.d.cts +6 -2
  39. package/dist/core/table/coreTablesFeature.types.d.ts +6 -2
  40. package/dist/core/table/coreTablesFeature.utils.cjs +2 -2
  41. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
  42. package/dist/core/table/coreTablesFeature.utils.d.cts +2 -2
  43. package/dist/core/table/coreTablesFeature.utils.d.ts +2 -2
  44. package/dist/core/table/coreTablesFeature.utils.js +2 -2
  45. package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
  46. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +16 -10
  47. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +16 -10
  48. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +26 -18
  49. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
  50. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +26 -18
  51. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +26 -18
  52. package/dist/features/column-faceting/columnFacetingFeature.utils.js +26 -18
  53. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
  54. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +21 -11
  55. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +21 -11
  56. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +39 -28
  57. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
  58. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +39 -28
  59. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +39 -28
  60. package/dist/features/column-filtering/columnFilteringFeature.utils.js +39 -28
  61. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
  62. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +18 -14
  63. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +18 -14
  64. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +55 -43
  65. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -1
  66. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +55 -43
  67. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +55 -43
  68. package/dist/features/column-grouping/columnGroupingFeature.utils.js +55 -43
  69. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -1
  70. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +14 -5
  71. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +14 -5
  72. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +30 -23
  73. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -1
  74. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +30 -23
  75. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +30 -23
  76. package/dist/features/column-ordering/columnOrderingFeature.utils.js +30 -23
  77. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -1
  78. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +43 -31
  79. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +43 -31
  80. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +111 -91
  81. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
  82. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +111 -91
  83. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +111 -91
  84. package/dist/features/column-pinning/columnPinningFeature.utils.js +111 -91
  85. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
  86. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +9 -9
  87. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +9 -9
  88. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +28 -19
  89. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
  90. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +28 -19
  91. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +28 -19
  92. package/dist/features/column-resizing/columnResizingFeature.utils.js +28 -19
  93. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
  94. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +19 -12
  95. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +19 -12
  96. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +52 -41
  97. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
  98. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +52 -41
  99. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +52 -41
  100. package/dist/features/column-sizing/columnSizingFeature.utils.js +52 -41
  101. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
  102. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +16 -13
  103. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +16 -13
  104. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +54 -42
  105. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
  106. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +54 -42
  107. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +54 -42
  108. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +54 -42
  109. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
  110. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +10 -5
  111. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +10 -5
  112. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +20 -14
  113. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
  114. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +20 -14
  115. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +20 -14
  116. package/dist/features/global-filtering/globalFilteringFeature.utils.js +20 -14
  117. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
  118. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +16 -15
  119. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +16 -15
  120. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +56 -41
  121. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -1
  122. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +56 -41
  123. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +56 -41
  124. package/dist/features/row-expanding/rowExpandingFeature.utils.js +56 -41
  125. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -1
  126. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +19 -12
  127. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +19 -12
  128. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +49 -32
  129. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -1
  130. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +49 -32
  131. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +49 -32
  132. package/dist/features/row-pagination/rowPaginationFeature.utils.js +49 -32
  133. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -1
  134. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +12 -8
  135. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +12 -8
  136. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +39 -29
  137. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -1
  138. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +39 -29
  139. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +39 -29
  140. package/dist/features/row-pinning/rowPinningFeature.utils.js +39 -29
  141. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -1
  142. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +30 -24
  143. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +30 -24
  144. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +89 -69
  145. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
  146. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +89 -69
  147. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +89 -69
  148. package/dist/features/row-selection/rowSelectionFeature.utils.js +89 -69
  149. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
  150. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +10 -8
  151. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +10 -8
  152. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +61 -44
  153. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
  154. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +61 -44
  155. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +61 -44
  156. package/dist/features/row-sorting/rowSortingFeature.utils.js +61 -44
  157. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
  158. package/dist/fns/aggregationFns.cjs +33 -9
  159. package/dist/fns/aggregationFns.cjs.map +1 -1
  160. package/dist/fns/aggregationFns.d.cts +33 -9
  161. package/dist/fns/aggregationFns.d.ts +33 -9
  162. package/dist/fns/aggregationFns.js +33 -9
  163. package/dist/fns/aggregationFns.js.map +1 -1
  164. package/dist/fns/filterFns.cjs +48 -17
  165. package/dist/fns/filterFns.cjs.map +1 -1
  166. package/dist/fns/filterFns.d.cts +42 -15
  167. package/dist/fns/filterFns.d.ts +42 -15
  168. package/dist/fns/filterFns.js +48 -17
  169. package/dist/fns/filterFns.js.map +1 -1
  170. package/dist/helpers/columnHelper.cjs +9 -4
  171. package/dist/helpers/columnHelper.cjs.map +1 -1
  172. package/dist/helpers/columnHelper.d.cts +9 -4
  173. package/dist/helpers/columnHelper.d.ts +9 -4
  174. package/dist/helpers/columnHelper.js +9 -4
  175. package/dist/helpers/columnHelper.js.map +1 -1
  176. package/dist/helpers/tableOptions.cjs.map +1 -1
  177. package/dist/helpers/tableOptions.d.cts +12 -9
  178. package/dist/helpers/tableOptions.d.ts +12 -9
  179. package/dist/helpers/tableOptions.js.map +1 -1
  180. package/dist/types/ColumnDef.d.cts +38 -0
  181. package/dist/types/ColumnDef.d.ts +38 -0
  182. package/dist/types/TableOptions.d.cts +15 -0
  183. package/dist/types/TableOptions.d.ts +15 -0
  184. package/dist/types/TableState.d.cts +12 -0
  185. package/dist/types/TableState.d.ts +12 -0
  186. package/package.json +5 -3
  187. package/skills/column-definitions/SKILL.md +333 -0
  188. package/skills/column-layout/SKILL.md +328 -0
  189. package/skills/column-layout/references/subsystems.md +220 -0
  190. package/skills/customizing-feature-behavior/SKILL.md +416 -0
  191. package/skills/filtering/SKILL.md +357 -0
  192. package/skills/filtering/references/faceting-and-fuzzy.md +191 -0
  193. package/skills/grouping/SKILL.md +448 -0
  194. package/skills/migrate-v8-to-v9/SKILL.md +495 -0
  195. package/skills/pagination/SKILL.md +385 -0
  196. package/skills/row-expanding/SKILL.md +348 -0
  197. package/skills/row-pinning/SKILL.md +269 -0
  198. package/skills/row-selection/SKILL.md +391 -0
  199. package/skills/setup/SKILL.md +400 -0
  200. package/skills/sorting/SKILL.md +344 -0
  201. package/skills/state-management/SKILL.md +388 -0
  202. package/src/core/cells/coreCellsFeature.utils.ts +11 -8
  203. package/src/core/columns/coreColumnsFeature.types.ts +7 -6
  204. package/src/core/columns/coreColumnsFeature.utils.ts +37 -27
  205. package/src/core/headers/coreHeadersFeature.types.ts +6 -4
  206. package/src/core/headers/coreHeadersFeature.utils.ts +23 -18
  207. package/src/core/row-models/coreRowModelsFeature.utils.ts +48 -36
  208. package/src/core/rows/coreRowsFeature.types.ts +4 -4
  209. package/src/core/rows/coreRowsFeature.utils.ts +34 -28
  210. package/src/core/table/coreTablesFeature.types.ts +6 -2
  211. package/src/core/table/coreTablesFeature.utils.ts +2 -2
  212. package/src/features/column-faceting/columnFacetingFeature.types.ts +16 -10
  213. package/src/features/column-faceting/columnFacetingFeature.utils.ts +26 -18
  214. package/src/features/column-filtering/columnFilteringFeature.types.ts +21 -11
  215. package/src/features/column-filtering/columnFilteringFeature.utils.ts +39 -28
  216. package/src/features/column-grouping/columnGroupingFeature.types.ts +18 -14
  217. package/src/features/column-grouping/columnGroupingFeature.utils.ts +55 -43
  218. package/src/features/column-ordering/columnOrderingFeature.types.ts +14 -5
  219. package/src/features/column-ordering/columnOrderingFeature.utils.ts +30 -23
  220. package/src/features/column-pinning/columnPinningFeature.types.ts +43 -31
  221. package/src/features/column-pinning/columnPinningFeature.utils.ts +111 -91
  222. package/src/features/column-resizing/columnResizingFeature.types.ts +9 -9
  223. package/src/features/column-resizing/columnResizingFeature.utils.ts +28 -19
  224. package/src/features/column-sizing/columnSizingFeature.types.ts +19 -12
  225. package/src/features/column-sizing/columnSizingFeature.utils.ts +52 -41
  226. package/src/features/column-visibility/columnVisibilityFeature.types.ts +16 -13
  227. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +54 -42
  228. package/src/features/global-filtering/globalFilteringFeature.types.ts +10 -5
  229. package/src/features/global-filtering/globalFilteringFeature.utils.ts +20 -14
  230. package/src/features/row-expanding/rowExpandingFeature.types.ts +16 -15
  231. package/src/features/row-expanding/rowExpandingFeature.utils.ts +56 -41
  232. package/src/features/row-pagination/rowPaginationFeature.types.ts +19 -12
  233. package/src/features/row-pagination/rowPaginationFeature.utils.ts +49 -32
  234. package/src/features/row-pinning/rowPinningFeature.types.ts +12 -8
  235. package/src/features/row-pinning/rowPinningFeature.utils.ts +39 -29
  236. package/src/features/row-selection/rowSelectionFeature.types.ts +30 -24
  237. package/src/features/row-selection/rowSelectionFeature.utils.ts +89 -69
  238. package/src/features/row-sorting/rowSortingFeature.types.ts +10 -8
  239. package/src/features/row-sorting/rowSortingFeature.utils.ts +61 -44
  240. package/src/fns/aggregationFns.ts +33 -9
  241. package/src/fns/filterFns.ts +48 -17
  242. package/src/helpers/columnHelper.ts +9 -4
  243. package/src/helpers/tableOptions.ts +12 -9
  244. package/src/types/ColumnDef.ts +38 -0
  245. package/src/types/TableOptions.ts +15 -0
  246. package/src/types/TableState.ts +12 -0
@@ -9,13 +9,14 @@ import type { ColumnVisibilityState } from './columnVisibilityFeature.types'
9
9
  import type { Row } from '../../types/Row'
10
10
 
11
11
  /**
12
- * Returns the default column visibility state.
12
+ * Creates the default column visibility state.
13
13
  *
14
- * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.
14
+ * The feature default is an empty object, where missing column ids are treated
15
+ * as visible. Reset APIs use this value when `defaultState` is `true`.
15
16
  *
16
17
  * @example
17
18
  * ```ts
18
- * const initialValue = getDefaultColumnVisibilityState()
19
+ * const visibility = getDefaultColumnVisibilityState()
19
20
  * ```
20
21
  */
21
22
  export function getDefaultColumnVisibilityState(): ColumnVisibilityState {
@@ -23,9 +24,10 @@ export function getDefaultColumnVisibilityState(): ColumnVisibilityState {
23
24
  }
24
25
 
25
26
  /**
26
- * Toggles visibility for a column.
27
+ * Updates this column's visibility when hiding is allowed.
27
28
  *
28
- * The update is applied through the owning table state slice and respects the feature options for that column.
29
+ * Passing `visible` stores that value. Omitting it flips the column's current
30
+ * visibility state. Columns that cannot hide are left unchanged.
29
31
  *
30
32
  * @example
31
33
  * ```ts
@@ -48,13 +50,15 @@ export function column_toggleVisibility<
48
50
  }
49
51
 
50
52
  /**
51
- * Returns is visible for a column.
53
+ * Checks whether this column is visible.
52
54
  *
53
- * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
55
+ * Leaf columns read `state.columnVisibility[column.id]`, where missing entries
56
+ * default to visible. Parent columns are visible when at least one child column
57
+ * is visible.
54
58
  *
55
59
  * @example
56
60
  * ```ts
57
- * const value = column_getIsVisible(column)
61
+ * const visible = column_getIsVisible(column)
58
62
  * ```
59
63
  */
60
64
  export function column_getIsVisible<
@@ -73,13 +77,13 @@ export function column_getIsVisible<
73
77
  }
74
78
 
75
79
  /**
76
- * Returns whether a column can use hide.
80
+ * Checks whether this column is allowed to be hidden.
77
81
  *
78
- * This combines column options, table options, and any required accessor or feature state for the capability.
82
+ * Both `columnDef.enableHiding` and table `enableHiding` default to `true`.
79
83
  *
80
84
  * @example
81
85
  * ```ts
82
- * const value = column_getCanHide(column)
86
+ * const canHide = column_getCanHide(column)
83
87
  * ```
84
88
  */
85
89
  export function column_getCanHide<
@@ -94,13 +98,14 @@ export function column_getCanHide<
94
98
  }
95
99
 
96
100
  /**
97
- * Returns an event handler for toggling visibility handler.
101
+ * Creates a checkbox-style handler that writes this column's visibility.
98
102
  *
99
- * The handler is intended for direct use in column header controls such as buttons or checkboxes.
103
+ * The handler reads `event.target.checked`, so it is intended for visibility
104
+ * controls whose checked state means "visible".
100
105
  *
101
106
  * @example
102
107
  * ```ts
103
- * const value = column_getToggleVisibilityHandler(column)
108
+ * const onChange = column_getToggleVisibilityHandler(column)
104
109
  * ```
105
110
  */
106
111
  export function column_getToggleVisibilityHandler<
@@ -117,13 +122,14 @@ export function column_getToggleVisibilityHandler<
117
122
  }
118
123
 
119
124
  /**
120
- * Returns visible cells for a row.
125
+ * Collects the cells from this row whose columns are visible.
121
126
  *
122
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
127
+ * When column pinning is active, the result is ordered as left-pinned cells,
128
+ * center cells, then right-pinned cells.
123
129
  *
124
130
  * @example
125
131
  * ```ts
126
- * const value = row_getVisibleCells(row)
132
+ * const visibleCells = row_getVisibleCells(row)
127
133
  * ```
128
134
  */
129
135
  export function row_getVisibleCells<
@@ -173,13 +179,13 @@ export function row_getVisibleCells<
173
179
  }
174
180
 
175
181
  /**
176
- * Returns visible cells by column id for a row.
182
+ * Builds a lookup map of this row's visible cells keyed by column id.
177
183
  *
178
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
184
+ * Hidden columns are omitted from the map.
179
185
  *
180
186
  * @example
181
187
  * ```ts
182
- * const value = row_getVisibleCellsByColumnId(row)
188
+ * const visibleCellsById = row_getVisibleCellsByColumnId(row)
183
189
  * ```
184
190
  */
185
191
  export function row_getVisibleCellsByColumnId<
@@ -198,13 +204,14 @@ export function row_getVisibleCellsByColumnId<
198
204
  }
199
205
 
200
206
  /**
201
- * Returns visible flat columns for the table.
207
+ * Filters the flat column list down to visible columns.
202
208
  *
203
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
209
+ * Parent/group columns are included when `column_getIsVisible` considers them
210
+ * visible.
204
211
  *
205
212
  * @example
206
213
  * ```ts
207
- * const value = table_getVisibleFlatColumns(table)
214
+ * const columns = table_getVisibleFlatColumns(table)
208
215
  * ```
209
216
  */
210
217
  export function table_getVisibleFlatColumns<
@@ -219,13 +226,14 @@ export function table_getVisibleFlatColumns<
219
226
  }
220
227
 
221
228
  /**
222
- * Returns visible leaf columns for the table.
229
+ * Filters leaf columns down to those currently visible.
223
230
  *
224
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
231
+ * This is the column list most row rendering code uses before pinning-specific
232
+ * partitioning.
225
233
  *
226
234
  * @example
227
235
  * ```ts
228
- * const value = table_getVisibleLeafColumns(table)
236
+ * const columns = table_getVisibleLeafColumns(table)
229
237
  * ```
230
238
  */
231
239
  export function table_getVisibleLeafColumns<
@@ -240,13 +248,14 @@ export function table_getVisibleLeafColumns<
240
248
  }
241
249
 
242
250
  /**
243
- * Updates the table's column visibility state slice.
251
+ * Routes a column visibility updater through the table's visibility change handler.
244
252
  *
245
- * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
253
+ * The updater may be a next visibility map or a function of the previous map,
254
+ * matching the instance `table.setColumnVisibility` behavior.
246
255
  *
247
256
  * @example
248
257
  * ```ts
249
- * table_setColumnVisibility(table, (old) => old)
258
+ * table_setColumnVisibility(table, (old) => ({ ...old, age: false }))
250
259
  * ```
251
260
  */
252
261
  export function table_setColumnVisibility<
@@ -260,9 +269,10 @@ export function table_setColumnVisibility<
260
269
  }
261
270
 
262
271
  /**
263
- * Resets the table's column visibility state slice.
272
+ * Resets `columnVisibility` to the configured initial state or feature default.
264
273
  *
265
- * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
274
+ * With no argument, the reset clones `table.initialState.columnVisibility` when
275
+ * it exists. Passing `true` ignores initial state and resets to `{}`.
266
276
  *
267
277
  * @example
268
278
  * ```ts
@@ -281,9 +291,9 @@ export function table_resetColumnVisibility<
281
291
  }
282
292
 
283
293
  /**
284
- * Toggles all columns visible for the table.
294
+ * Shows or hides every hideable leaf column.
285
295
  *
286
- * This is the table-level convenience API used by UI controls that affect many columns or rows at once.
296
+ * Columns that cannot hide stay visible when toggling all columns off.
287
297
  *
288
298
  * @example
289
299
  * ```ts
@@ -307,13 +317,14 @@ export function table_toggleAllColumnsVisible<
307
317
  }
308
318
 
309
319
  /**
310
- * Returns is all columns visible for the table.
320
+ * Checks whether every leaf column is currently visible.
311
321
  *
312
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
322
+ * Non-hideable columns are naturally visible because missing visibility entries
323
+ * default to `true`.
313
324
  *
314
325
  * @example
315
326
  * ```ts
316
- * const value = table_getIsAllColumnsVisible(table)
327
+ * const allVisible = table_getIsAllColumnsVisible(table)
317
328
  * ```
318
329
  */
319
330
  export function table_getIsAllColumnsVisible<
@@ -329,13 +340,13 @@ export function table_getIsAllColumnsVisible<
329
340
  }
330
341
 
331
342
  /**
332
- * Returns is some columns visible for the table.
343
+ * Checks whether at least one leaf column is currently visible.
333
344
  *
334
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
345
+ * This is useful for tri-state "show all columns" controls.
335
346
  *
336
347
  * @example
337
348
  * ```ts
338
- * const value = table_getIsSomeColumnsVisible(table)
349
+ * const someVisible = table_getIsSomeColumnsVisible(table)
339
350
  * ```
340
351
  */
341
352
  export function table_getIsSomeColumnsVisible<
@@ -350,13 +361,14 @@ export function table_getIsSomeColumnsVisible<
350
361
  }
351
362
 
352
363
  /**
353
- * Returns an event handler for all columns visibility handler.
364
+ * Creates a checkbox-style handler that shows or hides all columns.
354
365
  *
355
- * The handler calls the matching table toggle API and can be attached directly to checkbox or button UI.
366
+ * The handler reads `event.target.checked`, so it is intended for controls whose
367
+ * checked state means "all columns visible".
356
368
  *
357
369
  * @example
358
370
  * ```ts
359
- * const value = table_getToggleAllColumnsVisibilityHandler(table)
371
+ * const onChange = table_getToggleAllColumnsVisibilityHandler(table)
360
372
  * ```
361
373
  */
362
374
  export function table_getToggleAllColumnsVisibilityHandler<
@@ -17,14 +17,17 @@ export interface TableState_GlobalFiltering {
17
17
 
18
18
  export interface ColumnDef_GlobalFiltering {
19
19
  /**
20
- * Enables/disables the **global** filter for this column.
20
+ * Allows this column to be scanned by global filtering.
21
+ *
22
+ * Defaults to `true`; table-level global filtering and `enableFilters` must
23
+ * also allow filtering.
21
24
  */
22
25
  enableGlobalFilter?: boolean
23
26
  }
24
27
 
25
28
  export interface Column_GlobalFiltering {
26
29
  /**
27
- * Returns whether or not the column can be **globally** filtered. Set to `false` to disable a column from being scanned during global filtering.
30
+ * Checks whether this accessor column participates in global filtering.
28
31
  */
29
32
  getCanGlobalFilter: () => boolean
30
33
  }
@@ -34,7 +37,7 @@ export interface TableOptions_GlobalFiltering<
34
37
  TData extends RowData,
35
38
  > {
36
39
  /**
37
- * Enables/disables **global** filtering for all columns.
40
+ * Enables global filtering across columns that allow it.
38
41
  */
39
42
  enableGlobalFilter?: boolean
40
43
  /**
@@ -76,11 +79,13 @@ export interface Table_GlobalFiltering<
76
79
  */
77
80
  getGlobalFilterFn: () => FilterFn<TFeatures, TData> | undefined
78
81
  /**
79
- * Resets the **globalFilter** state to `initialState.globalFilter`, or `true` can be passed to force a default blank state reset to `undefined`.
82
+ * Resets `globalFilter` to `initialState.globalFilter`.
83
+ *
84
+ * Pass `true` to ignore initial state and reset to `undefined`.
80
85
  */
81
86
  resetGlobalFilter: (defaultState?: boolean) => void
82
87
  /**
83
- * Sets global filter state using a value or updater.
88
+ * Updates global filter state with a next value or updater function.
84
89
  */
85
90
  setGlobalFilter: (updater: Updater<any>) => void
86
91
  }
@@ -7,13 +7,14 @@ import type { TableFeatures } from '../../types/TableFeatures'
7
7
  import type { Table_Internal } from '../../types/Table'
8
8
 
9
9
  /**
10
- * Returns whether a column can use global filter.
10
+ * Checks whether this accessor column participates in global filtering.
11
11
  *
12
- * This combines column options, table options, and any required accessor or feature state for the capability.
12
+ * The column must have an accessor and pass column-level, table-level, and
13
+ * optional `getColumnCanGlobalFilter` checks.
13
14
  *
14
15
  * @example
15
16
  * ```ts
16
- * const value = column_getCanGlobalFilter(column)
17
+ * const canGlobalFilter = column_getCanGlobalFilter(column)
17
18
  * ```
18
19
  */
19
20
  export function column_getCanGlobalFilter<
@@ -31,13 +32,14 @@ export function column_getCanGlobalFilter<
31
32
  }
32
33
 
33
34
  /**
34
- * Returns global auto filter fn for the table.
35
+ * Provides the built-in automatic global filter function.
35
36
  *
36
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
37
+ * Global filtering defaults to `includesString`, which gives search-box style
38
+ * matching across globally filterable columns.
37
39
  *
38
40
  * @example
39
41
  * ```ts
40
- * const value = table_getGlobalAutoFilterFn(table)
42
+ * const filterFn = table_getGlobalAutoFilterFn()
41
43
  * ```
42
44
  */
43
45
  export function table_getGlobalAutoFilterFn() {
@@ -45,13 +47,15 @@ export function table_getGlobalAutoFilterFn() {
45
47
  }
46
48
 
47
49
  /**
48
- * Returns global filter fn for the table.
50
+ * Resolves the filter function used for global filtering.
49
51
  *
50
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
52
+ * Function-valued `options.globalFilterFn` is returned directly, `'auto'`
53
+ * delegates to `table_getGlobalAutoFilterFn`, and string values are looked up in
54
+ * the table's filter function registry.
51
55
  *
52
56
  * @example
53
57
  * ```ts
54
- * const value = table_getGlobalFilterFn(table)
58
+ * const filterFn = table_getGlobalFilterFn(table)
55
59
  * ```
56
60
  */
57
61
  export function table_getGlobalFilterFn<
@@ -72,13 +76,14 @@ export function table_getGlobalFilterFn<
72
76
  }
73
77
 
74
78
  /**
75
- * Updates the table's global filter state slice.
79
+ * Routes a global filter updater through the table's global filter handler.
76
80
  *
77
- * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
81
+ * The updater may be a next value or a function of the previous value, matching
82
+ * the instance `table.setGlobalFilter` behavior.
78
83
  *
79
84
  * @example
80
85
  * ```ts
81
- * table_setGlobalFilter(table, (old) => old)
86
+ * table_setGlobalFilter(table, 'search text')
82
87
  * ```
83
88
  */
84
89
  export function table_setGlobalFilter<
@@ -89,9 +94,10 @@ export function table_setGlobalFilter<
89
94
  }
90
95
 
91
96
  /**
92
- * Resets the table's global filter state slice.
97
+ * Resets `globalFilter` to the configured initial state or feature default.
93
98
  *
94
- * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
99
+ * With no argument, the reset clones `table.initialState.globalFilter`. Passing
100
+ * `true` ignores initial state and resets to `undefined`.
95
101
  *
96
102
  * @example
97
103
  * ```ts
@@ -13,19 +13,19 @@ export interface TableState_RowExpanding {
13
13
 
14
14
  export interface Row_RowExpanding {
15
15
  /**
16
- * Returns whether the row can be expanded.
16
+ * Checks whether this row can be expanded.
17
17
  */
18
18
  getCanExpand: () => boolean
19
19
  /**
20
- * Returns whether all parent rows of the row are expanded.
20
+ * Checks whether every ancestor of this row is expanded.
21
21
  */
22
22
  getIsAllParentsExpanded: () => boolean
23
23
  /**
24
- * Returns whether the row is expanded.
24
+ * Checks whether this row is currently expanded.
25
25
  */
26
26
  getIsExpanded: () => boolean
27
27
  /**
28
- * Returns a function that can be used to toggle the expanded state of the row. This function can be used to bind to an event handler to a button.
28
+ * Creates a handler that toggles this row's expanded state.
29
29
  */
30
30
  getToggleExpandedHandler: () => () => void
31
31
  /**
@@ -43,7 +43,7 @@ export interface TableOptions_RowExpanding<
43
43
  */
44
44
  autoResetExpanded?: boolean
45
45
  /**
46
- * Enable/disable expanding for all rows.
46
+ * Allows rows with subRows to be expanded.
47
47
  */
48
48
  enableExpanding?: boolean
49
49
  /**
@@ -76,32 +76,33 @@ export interface Table_RowExpanding<
76
76
  > {
77
77
  autoResetExpanded: () => void
78
78
  /**
79
- * Returns whether there are any rows that can be expanded.
79
+ * Checks whether at least one row can be expanded.
80
80
  */
81
81
  getCanSomeRowsExpand: () => boolean
82
82
  /**
83
- * Returns the maximum depth of the expanded rows.
83
+ * Computes the deepest expanded row id depth.
84
84
  */
85
85
  getExpandedDepth: () => number
86
86
  /**
87
- * Returns whether all rows are currently expanded.
87
+ * Checks whether all rows in the current row model are expanded.
88
88
  */
89
89
  getIsAllRowsExpanded: () => boolean
90
90
  /**
91
- * Returns whether there are any rows that are currently expanded.
91
+ * Checks whether any row is currently expanded.
92
92
  */
93
93
  getIsSomeRowsExpanded: () => boolean
94
94
  /**
95
- * Returns a handler that can be used to toggle the expanded state of all rows. This handler is meant to be used with an `input[type=checkbox]` element.
95
+ * Creates a handler that toggles all rows expanded.
96
96
  */
97
97
  getToggleAllRowsExpandedHandler: () => (event: unknown) => void
98
98
  /**
99
- * Resets expanded state to `initialState.expanded`. Pass `true` to reset to
100
- * the feature default of `{}`.
99
+ * Resets `expanded` to `initialState.expanded`.
100
+ *
101
+ * Pass `true` to ignore initial state and reset to `{}`.
101
102
  */
102
103
  resetExpanded: (defaultState?: boolean) => void
103
104
  /**
104
- * Sets expanded state using a value or updater.
105
+ * Updates expanded state with `true`, a row-id map, or an updater function.
105
106
  */
106
107
  setExpanded: (updater: Updater<ExpandedState>) => void
107
108
  /**
@@ -115,11 +116,11 @@ export interface Table_RowModels_Expanded<
115
116
  TData extends RowData,
116
117
  > {
117
118
  /**
118
- * Returns the row model after expansion has been applied.
119
+ * Resolves the row model after expanded rows have been flattened into view.
119
120
  */
120
121
  getExpandedRowModel: () => RowModel<TFeatures, TData>
121
122
  /**
122
- * Returns the row model before expansion has been applied.
123
+ * Reads the row model immediately before expansion.
123
124
  */
124
125
  getPreExpandedRowModel: () => RowModel<TFeatures, TData>
125
126
  }