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

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 (528) hide show
  1. package/dist/core/cells/constructCell.cjs +9 -3
  2. package/dist/core/cells/constructCell.cjs.map +1 -1
  3. package/dist/core/cells/constructCell.d.cts +5 -0
  4. package/dist/core/cells/constructCell.d.ts +5 -0
  5. package/dist/core/cells/constructCell.js +9 -3
  6. package/dist/core/cells/constructCell.js.map +1 -1
  7. package/dist/core/cells/coreCellsFeature.cjs +5 -0
  8. package/dist/core/cells/coreCellsFeature.cjs.map +1 -1
  9. package/dist/core/cells/coreCellsFeature.d.cts +5 -0
  10. package/dist/core/cells/coreCellsFeature.d.ts +5 -0
  11. package/dist/core/cells/coreCellsFeature.js +5 -0
  12. package/dist/core/cells/coreCellsFeature.js.map +1 -1
  13. package/dist/core/cells/coreCellsFeature.utils.cjs +30 -0
  14. package/dist/core/cells/coreCellsFeature.utils.cjs.map +1 -1
  15. package/dist/core/cells/coreCellsFeature.utils.d.cts +30 -0
  16. package/dist/core/cells/coreCellsFeature.utils.d.ts +30 -0
  17. package/dist/core/cells/coreCellsFeature.utils.js +30 -0
  18. package/dist/core/cells/coreCellsFeature.utils.js.map +1 -1
  19. package/dist/core/columns/constructColumn.cjs +21 -12
  20. package/dist/core/columns/constructColumn.cjs.map +1 -1
  21. package/dist/core/columns/constructColumn.d.cts +5 -0
  22. package/dist/core/columns/constructColumn.d.ts +5 -0
  23. package/dist/core/columns/constructColumn.js +21 -12
  24. package/dist/core/columns/constructColumn.js.map +1 -1
  25. package/dist/core/columns/coreColumnsFeature.cjs +9 -0
  26. package/dist/core/columns/coreColumnsFeature.cjs.map +1 -1
  27. package/dist/core/columns/coreColumnsFeature.d.cts +5 -0
  28. package/dist/core/columns/coreColumnsFeature.d.ts +5 -0
  29. package/dist/core/columns/coreColumnsFeature.js +10 -1
  30. package/dist/core/columns/coreColumnsFeature.js.map +1 -1
  31. package/dist/core/columns/coreColumnsFeature.types.d.cts +4 -0
  32. package/dist/core/columns/coreColumnsFeature.types.d.ts +4 -0
  33. package/dist/core/columns/coreColumnsFeature.utils.cjs +107 -4
  34. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -1
  35. package/dist/core/columns/coreColumnsFeature.utils.d.cts +92 -1
  36. package/dist/core/columns/coreColumnsFeature.utils.d.ts +92 -1
  37. package/dist/core/columns/coreColumnsFeature.utils.js +107 -5
  38. package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -1
  39. package/dist/core/coreFeatures.cjs +5 -0
  40. package/dist/core/coreFeatures.cjs.map +1 -1
  41. package/dist/core/coreFeatures.d.cts +5 -0
  42. package/dist/core/coreFeatures.d.ts +5 -0
  43. package/dist/core/coreFeatures.js +5 -0
  44. package/dist/core/coreFeatures.js.map +1 -1
  45. package/dist/core/headers/buildHeaderGroups.cjs +33 -20
  46. package/dist/core/headers/buildHeaderGroups.cjs.map +1 -1
  47. package/dist/core/headers/buildHeaderGroups.d.cts +5 -0
  48. package/dist/core/headers/buildHeaderGroups.d.ts +5 -0
  49. package/dist/core/headers/buildHeaderGroups.js +33 -20
  50. package/dist/core/headers/buildHeaderGroups.js.map +1 -1
  51. package/dist/core/headers/constructHeader.cjs +9 -3
  52. package/dist/core/headers/constructHeader.cjs.map +1 -1
  53. package/dist/core/headers/constructHeader.d.cts +5 -0
  54. package/dist/core/headers/constructHeader.d.ts +5 -0
  55. package/dist/core/headers/constructHeader.js +9 -3
  56. package/dist/core/headers/constructHeader.js.map +1 -1
  57. package/dist/core/headers/coreHeadersFeature.cjs +6 -6
  58. package/dist/core/headers/coreHeadersFeature.cjs.map +1 -1
  59. package/dist/core/headers/coreHeadersFeature.d.cts +5 -0
  60. package/dist/core/headers/coreHeadersFeature.d.ts +5 -0
  61. package/dist/core/headers/coreHeadersFeature.js +7 -7
  62. package/dist/core/headers/coreHeadersFeature.js.map +1 -1
  63. package/dist/core/headers/coreHeadersFeature.utils.cjs +87 -16
  64. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
  65. package/dist/core/headers/coreHeadersFeature.utils.d.cts +61 -1
  66. package/dist/core/headers/coreHeadersFeature.utils.d.ts +61 -1
  67. package/dist/core/headers/coreHeadersFeature.utils.js +89 -18
  68. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
  69. package/dist/core/reactivity/coreReactivityFeature.types.d.cts +4 -0
  70. package/dist/core/reactivity/coreReactivityFeature.types.d.ts +4 -0
  71. package/dist/core/reactivity/coreReactivityFeature.utils.cjs +5 -0
  72. package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +1 -1
  73. package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +10 -0
  74. package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +10 -0
  75. package/dist/core/reactivity/coreReactivityFeature.utils.js +5 -0
  76. package/dist/core/reactivity/coreReactivityFeature.utils.js.map +1 -1
  77. package/dist/core/row-models/coreRowModelsFeature.cjs +5 -0
  78. package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -1
  79. package/dist/core/row-models/coreRowModelsFeature.d.cts +5 -0
  80. package/dist/core/row-models/coreRowModelsFeature.d.ts +5 -0
  81. package/dist/core/row-models/coreRowModelsFeature.js +5 -0
  82. package/dist/core/row-models/coreRowModelsFeature.js.map +1 -1
  83. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +2 -1
  84. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +2 -1
  85. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +120 -0
  86. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -1
  87. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +120 -0
  88. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +120 -0
  89. package/dist/core/row-models/coreRowModelsFeature.utils.js +120 -0
  90. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -1
  91. package/dist/core/row-models/createCoreRowModel.cjs +5 -0
  92. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -1
  93. package/dist/core/row-models/createCoreRowModel.d.cts +5 -0
  94. package/dist/core/row-models/createCoreRowModel.d.ts +5 -0
  95. package/dist/core/row-models/createCoreRowModel.js +5 -0
  96. package/dist/core/row-models/createCoreRowModel.js.map +1 -1
  97. package/dist/core/rows/constructRow.cjs +13 -6
  98. package/dist/core/rows/constructRow.cjs.map +1 -1
  99. package/dist/core/rows/constructRow.d.cts +5 -0
  100. package/dist/core/rows/constructRow.d.ts +5 -0
  101. package/dist/core/rows/constructRow.js +13 -6
  102. package/dist/core/rows/constructRow.js.map +1 -1
  103. package/dist/core/rows/coreRowsFeature.cjs +5 -0
  104. package/dist/core/rows/coreRowsFeature.cjs.map +1 -1
  105. package/dist/core/rows/coreRowsFeature.d.cts +5 -0
  106. package/dist/core/rows/coreRowsFeature.d.ts +5 -0
  107. package/dist/core/rows/coreRowsFeature.js +5 -0
  108. package/dist/core/rows/coreRowsFeature.js.map +1 -1
  109. package/dist/core/rows/coreRowsFeature.types.d.cts +3 -0
  110. package/dist/core/rows/coreRowsFeature.types.d.ts +3 -0
  111. package/dist/core/rows/coreRowsFeature.utils.cjs +112 -7
  112. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -1
  113. package/dist/core/rows/coreRowsFeature.utils.d.cts +101 -0
  114. package/dist/core/rows/coreRowsFeature.utils.d.ts +101 -0
  115. package/dist/core/rows/coreRowsFeature.utils.js +112 -7
  116. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -1
  117. package/dist/core/table/constructTable.cjs +19 -5
  118. package/dist/core/table/constructTable.cjs.map +1 -1
  119. package/dist/core/table/constructTable.d.cts +10 -0
  120. package/dist/core/table/constructTable.d.ts +10 -0
  121. package/dist/core/table/constructTable.js +19 -5
  122. package/dist/core/table/constructTable.js.map +1 -1
  123. package/dist/core/table/coreTablesFeature.cjs +5 -0
  124. package/dist/core/table/coreTablesFeature.cjs.map +1 -1
  125. package/dist/core/table/coreTablesFeature.d.cts +5 -0
  126. package/dist/core/table/coreTablesFeature.d.ts +5 -0
  127. package/dist/core/table/coreTablesFeature.js +5 -0
  128. package/dist/core/table/coreTablesFeature.js.map +1 -1
  129. package/dist/core/table/coreTablesFeature.types.d.cts +22 -12
  130. package/dist/core/table/coreTablesFeature.types.d.ts +22 -12
  131. package/dist/core/table/coreTablesFeature.utils.cjs +49 -1
  132. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
  133. package/dist/core/table/coreTablesFeature.utils.d.cts +44 -0
  134. package/dist/core/table/coreTablesFeature.utils.d.ts +44 -0
  135. package/dist/core/table/coreTablesFeature.utils.js +49 -1
  136. package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
  137. package/dist/features/column-faceting/columnFacetingFeature.cjs +9 -1
  138. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -1
  139. package/dist/features/column-faceting/columnFacetingFeature.d.cts +9 -1
  140. package/dist/features/column-faceting/columnFacetingFeature.d.ts +9 -1
  141. package/dist/features/column-faceting/columnFacetingFeature.js +9 -1
  142. package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -1
  143. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +12 -6
  144. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +12 -6
  145. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +60 -0
  146. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
  147. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +60 -0
  148. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +60 -0
  149. package/dist/features/column-faceting/columnFacetingFeature.utils.js +60 -0
  150. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
  151. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +13 -5
  152. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -1
  153. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +5 -0
  154. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +5 -0
  155. package/dist/features/column-faceting/createFacetedMinMaxValues.js +13 -5
  156. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -1
  157. package/dist/features/column-faceting/createFacetedRowModel.cjs +13 -3
  158. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -1
  159. package/dist/features/column-faceting/createFacetedRowModel.d.cts +5 -0
  160. package/dist/features/column-faceting/createFacetedRowModel.d.ts +5 -0
  161. package/dist/features/column-faceting/createFacetedRowModel.js +13 -3
  162. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -1
  163. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +12 -4
  164. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -1
  165. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +5 -0
  166. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +5 -0
  167. package/dist/features/column-faceting/createFacetedUniqueValues.js +12 -4
  168. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -1
  169. package/dist/features/column-filtering/columnFilteringFeature.cjs +10 -2
  170. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -1
  171. package/dist/features/column-filtering/columnFilteringFeature.d.cts +10 -2
  172. package/dist/features/column-filtering/columnFilteringFeature.d.ts +10 -2
  173. package/dist/features/column-filtering/columnFilteringFeature.js +10 -2
  174. package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -1
  175. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +7 -4
  176. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +7 -4
  177. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +113 -2
  178. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
  179. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +111 -0
  180. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +111 -0
  181. package/dist/features/column-filtering/columnFilteringFeature.utils.js +113 -2
  182. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
  183. package/dist/features/column-filtering/createFilteredRowModel.cjs +16 -5
  184. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -1
  185. package/dist/features/column-filtering/createFilteredRowModel.d.cts +5 -0
  186. package/dist/features/column-filtering/createFilteredRowModel.d.ts +5 -0
  187. package/dist/features/column-filtering/createFilteredRowModel.js +16 -5
  188. package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -1
  189. package/dist/features/column-filtering/filterRowsUtils.cjs +5 -0
  190. package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -1
  191. package/dist/features/column-filtering/filterRowsUtils.js +5 -0
  192. package/dist/features/column-filtering/filterRowsUtils.js.map +1 -1
  193. package/dist/features/column-grouping/columnGroupingFeature.cjs +9 -1
  194. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -1
  195. package/dist/features/column-grouping/columnGroupingFeature.d.cts +9 -1
  196. package/dist/features/column-grouping/columnGroupingFeature.d.ts +9 -1
  197. package/dist/features/column-grouping/columnGroupingFeature.js +9 -1
  198. package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -1
  199. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +7 -3
  200. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +7 -3
  201. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +151 -0
  202. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -1
  203. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +151 -0
  204. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +151 -0
  205. package/dist/features/column-grouping/columnGroupingFeature.utils.js +151 -0
  206. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -1
  207. package/dist/features/column-grouping/createGroupedRowModel.cjs +5 -0
  208. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -1
  209. package/dist/features/column-grouping/createGroupedRowModel.d.cts +5 -0
  210. package/dist/features/column-grouping/createGroupedRowModel.d.ts +5 -0
  211. package/dist/features/column-grouping/createGroupedRowModel.js +5 -0
  212. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -1
  213. package/dist/features/column-ordering/columnOrderingFeature.cjs +12 -3
  214. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
  215. package/dist/features/column-ordering/columnOrderingFeature.d.cts +9 -1
  216. package/dist/features/column-ordering/columnOrderingFeature.d.ts +9 -1
  217. package/dist/features/column-ordering/columnOrderingFeature.js +12 -3
  218. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
  219. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +4 -2
  220. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +4 -2
  221. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +108 -8
  222. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -1
  223. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +81 -0
  224. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +81 -0
  225. package/dist/features/column-ordering/columnOrderingFeature.utils.js +108 -8
  226. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -1
  227. package/dist/features/column-pinning/columnPinningFeature.cjs +17 -30
  228. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
  229. package/dist/features/column-pinning/columnPinningFeature.d.cts +9 -1
  230. package/dist/features/column-pinning/columnPinningFeature.d.ts +9 -1
  231. package/dist/features/column-pinning/columnPinningFeature.js +17 -30
  232. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
  233. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +6 -2
  234. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +6 -2
  235. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +387 -27
  236. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
  237. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +318 -6
  238. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +318 -6
  239. package/dist/features/column-pinning/columnPinningFeature.utils.js +388 -28
  240. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
  241. package/dist/features/column-resizing/columnResizingFeature.cjs +9 -2
  242. package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -1
  243. package/dist/features/column-resizing/columnResizingFeature.d.cts +9 -2
  244. package/dist/features/column-resizing/columnResizingFeature.d.ts +9 -2
  245. package/dist/features/column-resizing/columnResizingFeature.js +9 -2
  246. package/dist/features/column-resizing/columnResizingFeature.js.map +1 -1
  247. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +14 -6
  248. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +14 -6
  249. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +81 -0
  250. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
  251. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +81 -0
  252. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +81 -0
  253. package/dist/features/column-resizing/columnResizingFeature.utils.js +81 -0
  254. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
  255. package/dist/features/column-sizing/columnSizingFeature.cjs +78 -16
  256. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
  257. package/dist/features/column-sizing/columnSizingFeature.d.cts +10 -2
  258. package/dist/features/column-sizing/columnSizingFeature.d.ts +10 -2
  259. package/dist/features/column-sizing/columnSizingFeature.js +79 -17
  260. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
  261. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +6 -3
  262. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +6 -3
  263. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +151 -3
  264. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
  265. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +141 -0
  266. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +141 -0
  267. package/dist/features/column-sizing/columnSizingFeature.utils.js +151 -3
  268. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
  269. package/dist/features/column-visibility/columnVisibilityFeature.cjs +30 -20
  270. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
  271. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +9 -1
  272. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +9 -1
  273. package/dist/features/column-visibility/columnVisibilityFeature.js +31 -21
  274. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
  275. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +8 -3
  276. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +8 -3
  277. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +199 -12
  278. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
  279. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +154 -3
  280. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +154 -3
  281. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +199 -12
  282. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
  283. package/dist/features/global-filtering/globalFilteringFeature.cjs +9 -2
  284. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -1
  285. package/dist/features/global-filtering/globalFilteringFeature.d.cts +9 -2
  286. package/dist/features/global-filtering/globalFilteringFeature.d.ts +9 -2
  287. package/dist/features/global-filtering/globalFilteringFeature.js +9 -2
  288. package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -1
  289. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +4 -2
  290. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -2
  291. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +51 -0
  292. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
  293. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +51 -0
  294. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +51 -0
  295. package/dist/features/global-filtering/globalFilteringFeature.utils.js +51 -0
  296. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
  297. package/dist/features/row-expanding/createExpandedRowModel.cjs +10 -0
  298. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -1
  299. package/dist/features/row-expanding/createExpandedRowModel.d.cts +10 -0
  300. package/dist/features/row-expanding/createExpandedRowModel.d.ts +10 -0
  301. package/dist/features/row-expanding/createExpandedRowModel.js +10 -0
  302. package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -1
  303. package/dist/features/row-expanding/rowExpandingFeature.cjs +9 -1
  304. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -1
  305. package/dist/features/row-expanding/rowExpandingFeature.d.cts +9 -1
  306. package/dist/features/row-expanding/rowExpandingFeature.d.ts +9 -1
  307. package/dist/features/row-expanding/rowExpandingFeature.js +9 -1
  308. package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -1
  309. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +10 -5
  310. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +10 -5
  311. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +153 -2
  312. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -1
  313. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +151 -0
  314. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +151 -0
  315. package/dist/features/row-expanding/rowExpandingFeature.utils.js +153 -2
  316. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -1
  317. package/dist/features/row-pagination/createPaginatedRowModel.cjs +5 -0
  318. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -1
  319. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +5 -0
  320. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +5 -0
  321. package/dist/features/row-pagination/createPaginatedRowModel.js +5 -0
  322. package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -1
  323. package/dist/features/row-pagination/rowPaginationFeature.cjs +9 -1
  324. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -1
  325. package/dist/features/row-pagination/rowPaginationFeature.d.cts +9 -1
  326. package/dist/features/row-pagination/rowPaginationFeature.d.ts +9 -1
  327. package/dist/features/row-pagination/rowPaginationFeature.js +9 -1
  328. package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -1
  329. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +11 -7
  330. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +11 -7
  331. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +175 -0
  332. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -1
  333. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +175 -0
  334. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +175 -0
  335. package/dist/features/row-pagination/rowPaginationFeature.utils.js +175 -0
  336. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -1
  337. package/dist/features/row-pinning/rowPinningFeature.cjs +9 -1
  338. package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -1
  339. package/dist/features/row-pinning/rowPinningFeature.d.cts +9 -1
  340. package/dist/features/row-pinning/rowPinningFeature.d.ts +9 -1
  341. package/dist/features/row-pinning/rowPinningFeature.js +9 -1
  342. package/dist/features/row-pinning/rowPinningFeature.js.map +1 -1
  343. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +4 -2
  344. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +4 -2
  345. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +125 -7
  346. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -1
  347. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +112 -0
  348. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +112 -0
  349. package/dist/features/row-pinning/rowPinningFeature.utils.js +125 -7
  350. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -1
  351. package/dist/features/row-selection/rowSelectionFeature.cjs +9 -1
  352. package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -1
  353. package/dist/features/row-selection/rowSelectionFeature.d.cts +9 -1
  354. package/dist/features/row-selection/rowSelectionFeature.d.ts +9 -1
  355. package/dist/features/row-selection/rowSelectionFeature.js +9 -1
  356. package/dist/features/row-selection/rowSelectionFeature.js.map +1 -1
  357. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +4 -2
  358. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +4 -2
  359. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +265 -3
  360. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
  361. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +259 -0
  362. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +259 -0
  363. package/dist/features/row-selection/rowSelectionFeature.utils.js +265 -3
  364. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
  365. package/dist/features/row-sorting/createSortedRowModel.cjs +18 -8
  366. package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -1
  367. package/dist/features/row-sorting/createSortedRowModel.d.cts +5 -0
  368. package/dist/features/row-sorting/createSortedRowModel.d.ts +5 -0
  369. package/dist/features/row-sorting/createSortedRowModel.js +18 -8
  370. package/dist/features/row-sorting/createSortedRowModel.js.map +1 -1
  371. package/dist/features/row-sorting/rowSortingFeature.cjs +11 -3
  372. package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -1
  373. package/dist/features/row-sorting/rowSortingFeature.d.cts +9 -1
  374. package/dist/features/row-sorting/rowSortingFeature.d.ts +9 -1
  375. package/dist/features/row-sorting/rowSortingFeature.js +11 -3
  376. package/dist/features/row-sorting/rowSortingFeature.js.map +1 -1
  377. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +7 -3
  378. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +7 -3
  379. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +153 -2
  380. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
  381. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +151 -0
  382. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +151 -0
  383. package/dist/features/row-sorting/rowSortingFeature.utils.js +153 -2
  384. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
  385. package/dist/features/stockFeatures.cjs +5 -0
  386. package/dist/features/stockFeatures.cjs.map +1 -1
  387. package/dist/features/stockFeatures.d.cts +5 -0
  388. package/dist/features/stockFeatures.d.ts +5 -0
  389. package/dist/features/stockFeatures.js +5 -0
  390. package/dist/features/stockFeatures.js.map +1 -1
  391. package/dist/flex-render.cjs +10 -0
  392. package/dist/flex-render.cjs.map +1 -1
  393. package/dist/flex-render.d.cts +10 -0
  394. package/dist/flex-render.d.ts +10 -0
  395. package/dist/flex-render.js +10 -0
  396. package/dist/flex-render.js.map +1 -1
  397. package/dist/fns/aggregationFns.cjs +19 -7
  398. package/dist/fns/aggregationFns.cjs.map +1 -1
  399. package/dist/fns/aggregationFns.d.cts +5 -0
  400. package/dist/fns/aggregationFns.d.ts +5 -0
  401. package/dist/fns/aggregationFns.js +19 -8
  402. package/dist/fns/aggregationFns.js.map +1 -1
  403. package/dist/fns/filterFns.cjs +5 -0
  404. package/dist/fns/filterFns.cjs.map +1 -1
  405. package/dist/fns/filterFns.d.cts +5 -0
  406. package/dist/fns/filterFns.d.ts +5 -0
  407. package/dist/fns/filterFns.js +5 -0
  408. package/dist/fns/filterFns.js.map +1 -1
  409. package/dist/fns/sortFns.cjs +49 -4
  410. package/dist/fns/sortFns.cjs.map +1 -1
  411. package/dist/fns/sortFns.d.cts +41 -0
  412. package/dist/fns/sortFns.d.ts +41 -0
  413. package/dist/fns/sortFns.js +49 -4
  414. package/dist/fns/sortFns.js.map +1 -1
  415. package/dist/helpers/columnHelper.cjs.map +1 -1
  416. package/dist/helpers/columnHelper.js.map +1 -1
  417. package/dist/helpers/tableFeatures.cjs.map +1 -1
  418. package/dist/helpers/tableFeatures.js.map +1 -1
  419. package/dist/helpers/tableOptions.cjs +6 -0
  420. package/dist/helpers/tableOptions.cjs.map +1 -1
  421. package/dist/helpers/tableOptions.d.cts +26 -0
  422. package/dist/helpers/tableOptions.d.ts +26 -0
  423. package/dist/helpers/tableOptions.js +6 -0
  424. package/dist/helpers/tableOptions.js.map +1 -1
  425. package/dist/index.cjs +0 -4
  426. package/dist/index.d.cts +2 -2
  427. package/dist/index.d.ts +2 -2
  428. package/dist/index.js +2 -2
  429. package/dist/static-functions.cjs +2 -1
  430. package/dist/static-functions.d.cts +3 -3
  431. package/dist/static-functions.d.ts +3 -3
  432. package/dist/static-functions.js +3 -3
  433. package/dist/store-reactivity-bindings.cjs +1 -0
  434. package/dist/store-reactivity-bindings.cjs.map +1 -1
  435. package/dist/store-reactivity-bindings.js +1 -0
  436. package/dist/store-reactivity-bindings.js.map +1 -1
  437. package/dist/utils.cjs +49 -25
  438. package/dist/utils.cjs.map +1 -1
  439. package/dist/utils.d.cts +33 -10
  440. package/dist/utils.d.ts +33 -10
  441. package/dist/utils.js +50 -22
  442. package/dist/utils.js.map +1 -1
  443. package/package.json +1 -1
  444. package/src/core/cells/constructCell.ts +8 -2
  445. package/src/core/cells/coreCellsFeature.ts +5 -0
  446. package/src/core/cells/coreCellsFeature.utils.ts +30 -0
  447. package/src/core/columns/constructColumn.ts +11 -3
  448. package/src/core/columns/coreColumnsFeature.ts +10 -0
  449. package/src/core/columns/coreColumnsFeature.types.ts +4 -0
  450. package/src/core/columns/coreColumnsFeature.utils.ts +113 -8
  451. package/src/core/coreFeatures.ts +5 -0
  452. package/src/core/headers/buildHeaderGroups.ts +36 -31
  453. package/src/core/headers/constructHeader.ts +8 -2
  454. package/src/core/headers/coreHeadersFeature.ts +7 -27
  455. package/src/core/headers/coreHeadersFeature.utils.ts +110 -46
  456. package/src/core/reactivity/coreReactivityFeature.types.ts +4 -0
  457. package/src/core/reactivity/coreReactivityFeature.utils.ts +15 -0
  458. package/src/core/row-models/coreRowModelsFeature.ts +5 -0
  459. package/src/core/row-models/coreRowModelsFeature.types.ts +2 -1
  460. package/src/core/row-models/coreRowModelsFeature.utils.ts +120 -0
  461. package/src/core/row-models/createCoreRowModel.ts +5 -0
  462. package/src/core/rows/constructRow.ts +11 -4
  463. package/src/core/rows/coreRowsFeature.ts +5 -0
  464. package/src/core/rows/coreRowsFeature.types.ts +3 -0
  465. package/src/core/rows/coreRowsFeature.utils.ts +116 -10
  466. package/src/core/table/constructTable.ts +16 -4
  467. package/src/core/table/coreTablesFeature.ts +5 -0
  468. package/src/core/table/coreTablesFeature.types.ts +22 -12
  469. package/src/core/table/coreTablesFeature.utils.ts +47 -1
  470. package/src/features/column-faceting/columnFacetingFeature.ts +9 -1
  471. package/src/features/column-faceting/columnFacetingFeature.types.ts +12 -6
  472. package/src/features/column-faceting/columnFacetingFeature.utils.ts +60 -0
  473. package/src/features/column-faceting/createFacetedMinMaxValues.ts +13 -10
  474. package/src/features/column-faceting/createFacetedRowModel.ts +15 -6
  475. package/src/features/column-faceting/createFacetedUniqueValues.ts +9 -3
  476. package/src/features/column-filtering/columnFilteringFeature.ts +10 -2
  477. package/src/features/column-filtering/columnFilteringFeature.types.ts +7 -4
  478. package/src/features/column-filtering/columnFilteringFeature.utils.ts +113 -2
  479. package/src/features/column-filtering/createFilteredRowModel.ts +19 -8
  480. package/src/features/column-filtering/filterRowsUtils.ts +5 -0
  481. package/src/features/column-grouping/columnGroupingFeature.ts +9 -1
  482. package/src/features/column-grouping/columnGroupingFeature.types.ts +7 -3
  483. package/src/features/column-grouping/columnGroupingFeature.utils.ts +151 -0
  484. package/src/features/column-grouping/createGroupedRowModel.ts +5 -0
  485. package/src/features/column-ordering/columnOrderingFeature.ts +10 -1
  486. package/src/features/column-ordering/columnOrderingFeature.types.ts +4 -2
  487. package/src/features/column-ordering/columnOrderingFeature.utils.ts +117 -17
  488. package/src/features/column-pinning/columnPinningFeature.ts +11 -12
  489. package/src/features/column-pinning/columnPinningFeature.types.ts +6 -2
  490. package/src/features/column-pinning/columnPinningFeature.utils.ts +425 -76
  491. package/src/features/column-resizing/columnResizingFeature.ts +9 -2
  492. package/src/features/column-resizing/columnResizingFeature.types.ts +14 -6
  493. package/src/features/column-resizing/columnResizingFeature.utils.ts +81 -0
  494. package/src/features/column-sizing/columnSizingFeature.ts +54 -18
  495. package/src/features/column-sizing/columnSizingFeature.types.ts +6 -3
  496. package/src/features/column-sizing/columnSizingFeature.utils.ts +168 -9
  497. package/src/features/column-visibility/columnVisibilityFeature.ts +20 -18
  498. package/src/features/column-visibility/columnVisibilityFeature.types.ts +11 -3
  499. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +213 -24
  500. package/src/features/global-filtering/globalFilteringFeature.ts +9 -2
  501. package/src/features/global-filtering/globalFilteringFeature.types.ts +4 -2
  502. package/src/features/global-filtering/globalFilteringFeature.utils.ts +51 -0
  503. package/src/features/row-expanding/createExpandedRowModel.ts +10 -0
  504. package/src/features/row-expanding/rowExpandingFeature.ts +9 -1
  505. package/src/features/row-expanding/rowExpandingFeature.types.ts +10 -5
  506. package/src/features/row-expanding/rowExpandingFeature.utils.ts +153 -2
  507. package/src/features/row-pagination/createPaginatedRowModel.ts +5 -0
  508. package/src/features/row-pagination/rowPaginationFeature.ts +9 -1
  509. package/src/features/row-pagination/rowPaginationFeature.types.ts +11 -7
  510. package/src/features/row-pagination/rowPaginationFeature.utils.ts +175 -0
  511. package/src/features/row-pinning/rowPinningFeature.ts +9 -1
  512. package/src/features/row-pinning/rowPinningFeature.types.ts +4 -2
  513. package/src/features/row-pinning/rowPinningFeature.utils.ts +132 -18
  514. package/src/features/row-selection/rowSelectionFeature.ts +9 -1
  515. package/src/features/row-selection/rowSelectionFeature.types.ts +4 -2
  516. package/src/features/row-selection/rowSelectionFeature.utils.ts +279 -19
  517. package/src/features/row-sorting/createSortedRowModel.ts +21 -13
  518. package/src/features/row-sorting/rowSortingFeature.ts +11 -3
  519. package/src/features/row-sorting/rowSortingFeature.types.ts +7 -3
  520. package/src/features/row-sorting/rowSortingFeature.utils.ts +153 -2
  521. package/src/features/stockFeatures.ts +5 -0
  522. package/src/flex-render.ts +10 -0
  523. package/src/fns/aggregationFns.ts +25 -8
  524. package/src/fns/filterFns.ts +5 -0
  525. package/src/fns/sortFns.ts +50 -5
  526. package/src/helpers/tableOptions.ts +32 -0
  527. package/src/store-reactivity-bindings.ts +1 -0
  528. package/src/utils.ts +52 -34
@@ -3,19 +3,14 @@ import {
3
3
  assignTableAPIs,
4
4
  makeStateUpdater,
5
5
  } from '../../utils'
6
- import {
7
- row_getCenterVisibleCells,
8
- row_getLeftVisibleCells,
9
- row_getRightVisibleCells,
10
- } from '../column-pinning/columnPinningFeature.utils'
11
6
  import {
12
7
  column_getCanHide,
13
8
  column_getIsVisible,
14
9
  column_getToggleVisibilityHandler,
15
10
  column_toggleVisibility,
16
11
  getDefaultColumnVisibilityState,
17
- row_getAllVisibleCells,
18
12
  row_getVisibleCells,
13
+ row_getVisibleCellsByColumnId,
19
14
  table_getIsAllColumnsVisible,
20
15
  table_getIsSomeColumnsVisible,
21
16
  table_getToggleAllColumnsVisibilityHandler,
@@ -48,6 +43,11 @@ export interface ColumnVisibilityFeatureConstructors<
48
43
  // TableState: TableState_ColumnVisibility
49
44
  }
50
45
 
46
+ /**
47
+ * Creates the stock column visibility feature.
48
+ *
49
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
50
+ */
51
51
  export function constructColumnVisibilityFeature<
52
52
  TFeatures extends TableFeatures,
53
53
  TData extends RowData,
@@ -71,8 +71,8 @@ export function constructColumnVisibilityFeature<
71
71
  column_getIsVisible: {
72
72
  fn: (column) => column_getIsVisible(column),
73
73
  memoDeps: (column) => [
74
- column.table.options.columns,
75
- column.table.atoms.columnVisibility?.get(),
74
+ table.options.columns,
75
+ table.atoms.columnVisibility?.get(),
76
76
  column.columns,
77
77
  ],
78
78
  },
@@ -90,20 +90,19 @@ export function constructColumnVisibilityFeature<
90
90
 
91
91
  assignRowPrototype: (prototype, table) => {
92
92
  assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {
93
- row_getAllVisibleCells: {
94
- fn: (row) => row_getAllVisibleCells(row),
93
+ row_getVisibleCells: {
94
+ fn: (row) => row_getVisibleCells(row),
95
95
  memoDeps: (row) => [
96
96
  row.getAllCells(),
97
- row.table.atoms.columnVisibility?.get(),
97
+ table.atoms.columnPinning?.get(),
98
+ table.atoms.columnVisibility?.get(),
98
99
  ],
99
100
  },
100
- row_getVisibleCells: {
101
- fn: (row, left, center, right) =>
102
- row_getVisibleCells(left, center, right),
101
+ row_getVisibleCellsByColumnId: {
102
+ fn: (row) => row_getVisibleCellsByColumnId(row),
103
103
  memoDeps: (row) => [
104
- row_getLeftVisibleCells(row),
105
- row_getCenterVisibleCells(row),
106
- row_getRightVisibleCells(row),
104
+ row.getAllCells(),
105
+ table.atoms.columnVisibility?.get(),
107
106
  ],
108
107
  },
109
108
  })
@@ -152,6 +151,9 @@ export function constructColumnVisibilityFeature<
152
151
  }
153
152
 
154
153
  /**
155
- * The Column Visibility feature adds column visibility state and APIs to the table, row, and column objects.
154
+ * The stock column visibility feature.
155
+ *
156
+ * Register this feature to add column visibility state and APIs for deriving
157
+ * visible columns and visible row cells.
156
158
  */
157
159
  export const columnVisibilityFeature = constructColumnVisibilityFeature()
@@ -15,7 +15,9 @@ export interface TableOptions_ColumnVisibility {
15
15
  */
16
16
  enableHiding?: boolean
17
17
  /**
18
- * If provided, this function will be called with an `updaterFn` when `state.columnVisibility` changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
18
+ * Called with an updater when column visibility state changes. Pair this with
19
+ * `state.columnVisibility` when using external state; external atoms can own
20
+ * the slice without this callback.
19
21
  */
20
22
  onColumnVisibilityChange?: OnChangeFn<ColumnVisibilityState>
21
23
  }
@@ -54,7 +56,7 @@ export interface Table_ColumnVisibility<
54
56
  */
55
57
  resetColumnVisibility: (defaultState?: boolean) => void
56
58
  /**
57
- * Sets or updates the `state.columnVisibility` state.
59
+ * Sets column visibility state using a value or updater.
58
60
  */
59
61
  setColumnVisibility: (updater: Updater<ColumnVisibilityState>) => void
60
62
  /**
@@ -74,11 +76,17 @@ export interface Row_ColumnVisibility<
74
76
  TFeatures extends TableFeatures,
75
77
  TData extends RowData,
76
78
  > {
77
- getAllVisibleCells: () => Array<Cell<TFeatures, TData, unknown>>
78
79
  /**
79
80
  * Returns an array of cells that account for column visibility for the row.
80
81
  */
81
82
  getVisibleCells: () => Array<Cell<TFeatures, TData, unknown>>
83
+ /**
84
+ * Returns visible cells by column id for the row.
85
+ */
86
+ getVisibleCellsByColumnId: () => Record<
87
+ string,
88
+ Cell<TFeatures, TData, unknown>
89
+ >
82
90
  }
83
91
 
84
92
  export interface Column_ColumnVisibility {
@@ -1,4 +1,5 @@
1
1
  import { callMemoOrStaticFn, cloneState } from '../../utils'
2
+ import { getDefaultColumnPinningState } from '../column-pinning/columnPinningFeature.utils'
2
3
  import type { CellData, RowData, Updater } from '../../types/type-utils'
3
4
  import type { TableFeatures } from '../../types/TableFeatures'
4
5
  import type { Table_Internal } from '../../types/Table'
@@ -7,10 +8,30 @@ import type { Column_Internal } from '../../types/Column'
7
8
  import type { ColumnVisibilityState } from './columnVisibilityFeature.types'
8
9
  import type { Row } from '../../types/Row'
9
10
 
11
+ /**
12
+ * Returns the default column visibility state.
13
+ *
14
+ * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * const initialValue = getDefaultColumnVisibilityState()
19
+ * ```
20
+ */
10
21
  export function getDefaultColumnVisibilityState(): ColumnVisibilityState {
11
22
  return {}
12
23
  }
13
24
 
25
+ /**
26
+ * Toggles visibility for a column.
27
+ *
28
+ * The update is applied through the owning table state slice and respects the feature options for that column.
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * column_toggleVisibility(column)
33
+ * ```
34
+ */
14
35
  export function column_toggleVisibility<
15
36
  TFeatures extends TableFeatures,
16
37
  TData extends RowData,
@@ -26,6 +47,16 @@ export function column_toggleVisibility<
26
47
  }
27
48
  }
28
49
 
50
+ /**
51
+ * Returns is visible for a column.
52
+ *
53
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * const value = column_getIsVisible(column)
58
+ * ```
59
+ */
29
60
  export function column_getIsVisible<
30
61
  TFeatures extends TableFeatures,
31
62
  TData extends RowData,
@@ -41,6 +72,16 @@ export function column_getIsVisible<
41
72
  )
42
73
  }
43
74
 
75
+ /**
76
+ * Returns whether a column can use hide.
77
+ *
78
+ * This combines column options, table options, and any required accessor or feature state for the capability.
79
+ *
80
+ * @example
81
+ * ```ts
82
+ * const value = column_getCanHide(column)
83
+ * ```
84
+ */
44
85
  export function column_getCanHide<
45
86
  TFeatures extends TableFeatures,
46
87
  TData extends RowData,
@@ -52,6 +93,16 @@ export function column_getCanHide<
52
93
  )
53
94
  }
54
95
 
96
+ /**
97
+ * Returns an event handler for toggling visibility handler.
98
+ *
99
+ * The handler is intended for direct use in column header controls such as buttons or checkboxes.
100
+ *
101
+ * @example
102
+ * ```ts
103
+ * const value = column_getToggleVisibilityHandler(column)
104
+ * ```
105
+ */
55
106
  export function column_getToggleVisibilityHandler<
56
107
  TFeatures extends TableFeatures,
57
108
  TData extends RowData,
@@ -65,28 +116,97 @@ export function column_getToggleVisibilityHandler<
65
116
  }
66
117
  }
67
118
 
68
- export function row_getAllVisibleCells<
119
+ /**
120
+ * Returns visible cells for a row.
121
+ *
122
+ * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
123
+ *
124
+ * @example
125
+ * ```ts
126
+ * const value = row_getVisibleCells(row)
127
+ * ```
128
+ */
129
+ export function row_getVisibleCells<
69
130
  TFeatures extends TableFeatures,
70
131
  TData extends RowData,
71
- >(row: Row<TFeatures, TData>) {
72
- return row
73
- .getAllCells()
74
- .filter((cell) =>
75
- callMemoOrStaticFn(cell.column, 'getIsVisible', column_getIsVisible),
76
- )
132
+ >(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>> {
133
+ const allCells = row.getAllCells()
134
+ const visibleCells: Array<Cell<TFeatures, TData, unknown>> = []
135
+ for (let i = 0; i < allCells.length; i++) {
136
+ const cell = allCells[i]!
137
+ if (callMemoOrStaticFn(cell.column, 'getIsVisible', column_getIsVisible)) {
138
+ visibleCells.push(cell)
139
+ }
140
+ }
141
+
142
+ const { left, right } =
143
+ row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
144
+ if (!left.length && !right.length) return visibleCells // no pinning, return early
145
+
146
+ const visibleCellsByColumnId = callMemoOrStaticFn(
147
+ row,
148
+ 'getVisibleCellsByColumnId',
149
+ row_getVisibleCellsByColumnId,
150
+ )
151
+
152
+ const leftCells: Array<Cell<TFeatures, TData, unknown>> = []
153
+ for (let i = 0; i < left.length; i++) {
154
+ const cell = visibleCellsByColumnId[left[i]!]
155
+ if (cell) leftCells.push(cell)
156
+ }
157
+
158
+ const rightCells: Array<Cell<TFeatures, TData, unknown>> = []
159
+ for (let i = 0; i < right.length; i++) {
160
+ const cell = visibleCellsByColumnId[right[i]!]
161
+ if (cell) rightCells.push(cell)
162
+ }
163
+
164
+ // Center cells: visible cells in natural column order, minus pinned ones.
165
+ const centerCells: Array<Cell<TFeatures, TData, unknown>> = []
166
+ for (let i = 0; i < visibleCells.length; i++) {
167
+ const cell = visibleCells[i]!
168
+ const id = cell.column.id
169
+ if (!left.includes(id) && !right.includes(id)) centerCells.push(cell)
170
+ }
171
+
172
+ return [...leftCells, ...centerCells, ...rightCells]
77
173
  }
78
174
 
79
- export function row_getVisibleCells<
175
+ /**
176
+ * Returns visible cells by column id for a row.
177
+ *
178
+ * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
179
+ *
180
+ * @example
181
+ * ```ts
182
+ * const value = row_getVisibleCellsByColumnId(row)
183
+ * ```
184
+ */
185
+ export function row_getVisibleCellsByColumnId<
80
186
  TFeatures extends TableFeatures,
81
187
  TData extends RowData,
82
- >(
83
- left: Array<Cell<TFeatures, TData, unknown>>,
84
- center: Array<Cell<TFeatures, TData, unknown>>,
85
- right: Array<Cell<TFeatures, TData, unknown>>,
86
- ) {
87
- return [...left, ...center, ...right]
188
+ >(row: Row<TFeatures, TData>): Record<string, Cell<TFeatures, TData, unknown>> {
189
+ const result: Record<string, Cell<TFeatures, TData, unknown>> = {}
190
+ const allCells = row.getAllCells()
191
+ for (let i = 0; i < allCells.length; i++) {
192
+ const cell = allCells[i]!
193
+ if (callMemoOrStaticFn(cell.column, 'getIsVisible', column_getIsVisible)) {
194
+ result[cell.column.id] = cell
195
+ }
196
+ }
197
+ return result
88
198
  }
89
199
 
200
+ /**
201
+ * Returns visible flat columns for the table.
202
+ *
203
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
204
+ *
205
+ * @example
206
+ * ```ts
207
+ * const value = table_getVisibleFlatColumns(table)
208
+ * ```
209
+ */
90
210
  export function table_getVisibleFlatColumns<
91
211
  TFeatures extends TableFeatures,
92
212
  TData extends RowData,
@@ -98,6 +218,16 @@ export function table_getVisibleFlatColumns<
98
218
  )
99
219
  }
100
220
 
221
+ /**
222
+ * Returns visible leaf columns for the table.
223
+ *
224
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
225
+ *
226
+ * @example
227
+ * ```ts
228
+ * const value = table_getVisibleLeafColumns(table)
229
+ * ```
230
+ */
101
231
  export function table_getVisibleLeafColumns<
102
232
  TFeatures extends TableFeatures,
103
233
  TData extends RowData,
@@ -109,6 +239,16 @@ export function table_getVisibleLeafColumns<
109
239
  )
110
240
  }
111
241
 
242
+ /**
243
+ * Updates the table's column visibility state slice.
244
+ *
245
+ * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
246
+ *
247
+ * @example
248
+ * ```ts
249
+ * table_setColumnVisibility(table, (old) => old)
250
+ * ```
251
+ */
112
252
  export function table_setColumnVisibility<
113
253
  TFeatures extends TableFeatures,
114
254
  TData extends RowData,
@@ -119,6 +259,17 @@ export function table_setColumnVisibility<
119
259
  table.options.onColumnVisibilityChange?.(updater)
120
260
  }
121
261
 
262
+ /**
263
+ * Resets the table's column visibility state slice.
264
+ *
265
+ * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
266
+ *
267
+ * @example
268
+ * ```ts
269
+ * table_resetColumnVisibility(table)
270
+ * table_resetColumnVisibility(table, true)
271
+ * ```
272
+ */
122
273
  export function table_resetColumnVisibility<
123
274
  TFeatures extends TableFeatures,
124
275
  TData extends RowData,
@@ -129,24 +280,42 @@ export function table_resetColumnVisibility<
129
280
  )
130
281
  }
131
282
 
283
+ /**
284
+ * Toggles all columns visible for the table.
285
+ *
286
+ * This is the table-level convenience API used by UI controls that affect many columns or rows at once.
287
+ *
288
+ * @example
289
+ * ```ts
290
+ * table_toggleAllColumnsVisible(table)
291
+ * ```
292
+ */
132
293
  export function table_toggleAllColumnsVisible<
133
294
  TFeatures extends TableFeatures,
134
295
  TData extends RowData,
135
296
  >(table: Table_Internal<TFeatures, TData>, value?: boolean) {
136
297
  value = value ?? !table_getIsAllColumnsVisible(table)
137
298
 
138
- table_setColumnVisibility(
139
- table,
140
- table.getAllLeafColumns().reduce(
141
- (obj, column) => ({
142
- ...obj,
143
- [column.id]: !value ? !column_getCanHide(column) : value,
144
- }),
145
- {},
146
- ),
147
- )
299
+ const visibility: Record<string, boolean> = {}
300
+ const leafColumns = table.getAllLeafColumns()
301
+ for (let i = 0; i < leafColumns.length; i++) {
302
+ const column = leafColumns[i]!
303
+ visibility[column.id] = !value ? !column_getCanHide(column) : value
304
+ }
305
+
306
+ table_setColumnVisibility(table, visibility)
148
307
  }
149
308
 
309
+ /**
310
+ * Returns is all columns visible for the table.
311
+ *
312
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
313
+ *
314
+ * @example
315
+ * ```ts
316
+ * const value = table_getIsAllColumnsVisible(table)
317
+ * ```
318
+ */
150
319
  export function table_getIsAllColumnsVisible<
151
320
  TFeatures extends TableFeatures,
152
321
  TData extends RowData,
@@ -159,6 +328,16 @@ export function table_getIsAllColumnsVisible<
159
328
  )
160
329
  }
161
330
 
331
+ /**
332
+ * Returns is some columns visible for the table.
333
+ *
334
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
335
+ *
336
+ * @example
337
+ * ```ts
338
+ * const value = table_getIsSomeColumnsVisible(table)
339
+ * ```
340
+ */
162
341
  export function table_getIsSomeColumnsVisible<
163
342
  TFeatures extends TableFeatures,
164
343
  TData extends RowData,
@@ -170,6 +349,16 @@ export function table_getIsSomeColumnsVisible<
170
349
  )
171
350
  }
172
351
 
352
+ /**
353
+ * Returns an event handler for all columns visibility handler.
354
+ *
355
+ * The handler calls the matching table toggle API and can be attached directly to checkbox or button UI.
356
+ *
357
+ * @example
358
+ * ```ts
359
+ * const value = table_getToggleAllColumnsVisibilityHandler(table)
360
+ * ```
361
+ */
173
362
  export function table_getToggleAllColumnsVisibilityHandler<
174
363
  TFeatures extends TableFeatures,
175
364
  TData extends RowData,
@@ -31,6 +31,11 @@ export interface GlobalFilteringFeatureConstructors<
31
31
  // TableState: TableState_GlobalFiltering
32
32
  }
33
33
 
34
+ /**
35
+ * Creates the stock global filtering feature.
36
+ *
37
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
38
+ */
34
39
  export function constructGlobalFilteringFeature<
35
40
  TFeatures extends TableFeatures,
36
41
  TData extends RowData,
@@ -86,7 +91,9 @@ export function constructGlobalFilteringFeature<
86
91
  }
87
92
 
88
93
  /**
89
- * The Global Filtering feature adds global filtering state and APIs to the table and column objects.
90
- * **Note:** This is dependent on the columnFilteringFeature feature.
94
+ * The stock global filtering feature.
95
+ *
96
+ * Register this feature with column filtering support to add global filter
97
+ * state, global filter function resolution, and column eligibility APIs.
91
98
  */
92
99
  export const globalFilteringFeature = constructGlobalFilteringFeature()
@@ -56,7 +56,9 @@ export interface TableOptions_GlobalFiltering<
56
56
  */
57
57
  globalFilterFn?: FilterFnOption<TFeatures, TData>
58
58
  /**
59
- * If provided, this function will be called with an `updaterFn` when `state.globalFilter` changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
59
+ * Called with an updater when global filter state changes. Pair this with
60
+ * `state.globalFilter` when using external state; external atoms can own the
61
+ * slice without this callback.
60
62
  */
61
63
  onGlobalFilterChange?: OnChangeFn<any>
62
64
  }
@@ -78,7 +80,7 @@ export interface Table_GlobalFiltering<
78
80
  */
79
81
  resetGlobalFilter: (defaultState?: boolean) => void
80
82
  /**
81
- * Sets or updates the `state.globalFilter` state.
83
+ * Sets global filter state using a value or updater.
82
84
  */
83
85
  setGlobalFilter: (updater: Updater<any>) => void
84
86
  }
@@ -6,6 +6,16 @@ import type { CellData, RowData } from '../../types/type-utils'
6
6
  import type { TableFeatures } from '../../types/TableFeatures'
7
7
  import type { Table_Internal } from '../../types/Table'
8
8
 
9
+ /**
10
+ * Returns whether a column can use global filter.
11
+ *
12
+ * This combines column options, table options, and any required accessor or feature state for the capability.
13
+ *
14
+ * @example
15
+ * ```ts
16
+ * const value = column_getCanGlobalFilter(column)
17
+ * ```
18
+ */
9
19
  export function column_getCanGlobalFilter<
10
20
  TFeatures extends TableFeatures,
11
21
  TData extends RowData,
@@ -20,10 +30,30 @@ export function column_getCanGlobalFilter<
20
30
  )
21
31
  }
22
32
 
33
+ /**
34
+ * Returns global auto filter fn for the table.
35
+ *
36
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
37
+ *
38
+ * @example
39
+ * ```ts
40
+ * const value = table_getGlobalAutoFilterFn(table)
41
+ * ```
42
+ */
23
43
  export function table_getGlobalAutoFilterFn() {
24
44
  return filterFn_includesString
25
45
  }
26
46
 
47
+ /**
48
+ * Returns global filter fn for the table.
49
+ *
50
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * const value = table_getGlobalFilterFn(table)
55
+ * ```
56
+ */
27
57
  export function table_getGlobalFilterFn<
28
58
  TFeatures extends TableFeatures,
29
59
  TData extends RowData,
@@ -41,6 +71,16 @@ export function table_getGlobalFilterFn<
41
71
  : filterFns?.[globalFilterFn as string]
42
72
  }
43
73
 
74
+ /**
75
+ * Updates the table's global filter state slice.
76
+ *
77
+ * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
78
+ *
79
+ * @example
80
+ * ```ts
81
+ * table_setGlobalFilter(table, (old) => old)
82
+ * ```
83
+ */
44
84
  export function table_setGlobalFilter<
45
85
  TFeatures extends TableFeatures,
46
86
  TData extends RowData,
@@ -48,6 +88,17 @@ export function table_setGlobalFilter<
48
88
  table.options.onGlobalFilterChange?.(updater)
49
89
  }
50
90
 
91
+ /**
92
+ * Resets the table's global filter state slice.
93
+ *
94
+ * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
95
+ *
96
+ * @example
97
+ * ```ts
98
+ * table_resetGlobalFilter(table)
99
+ * table_resetGlobalFilter(table, true)
100
+ * ```
101
+ */
51
102
  export function table_resetGlobalFilter<
52
103
  TFeatures extends TableFeatures,
53
104
  TData extends RowData,
@@ -6,6 +6,11 @@ import type { Table, Table_Internal } from '../../types/Table'
6
6
  import type { Row } from '../../types/Row'
7
7
  import type { RowData } from '../../types/type-utils'
8
8
 
9
+ /**
10
+ * Creates a memoized expanded row model factory.
11
+ *
12
+ * The factory reads the relevant table state atoms and options, then returns a row model function used by the table row-model pipeline.
13
+ */
9
14
  export function createExpandedRowModel<
10
15
  TFeatures extends TableFeatures,
11
16
  TData extends RowData = any,
@@ -48,6 +53,11 @@ function _createExpandedRowModel<
48
53
  return expandRows(rowModel)
49
54
  }
50
55
 
56
+ /**
57
+ * Expands a row model according to the current expanded row state.
58
+ *
59
+ * Expanded sub-rows are inserted into the flattened row order while preserving the original row hierarchy.
60
+ */
51
61
  export function expandRows<
52
62
  TFeatures extends TableFeatures,
53
63
  TData extends RowData = any,
@@ -43,6 +43,11 @@ export interface RowExpandingFeatureConstructors<
43
43
  // TableState: TableState_RowExpanding
44
44
  }
45
45
 
46
+ /**
47
+ * Creates the stock row expanding feature.
48
+ *
49
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
50
+ */
46
51
  export function constructRowExpandingFeature<
47
52
  TFeatures extends TableFeatures,
48
53
  TData extends RowData,
@@ -117,6 +122,9 @@ export function constructRowExpandingFeature<
117
122
  }
118
123
 
119
124
  /**
120
- * The Row Expanding feature adds row expanding state and APIs to the table and row objects.
125
+ * The stock row expanding feature.
126
+ *
127
+ * Register this feature to add expanded row state, row expansion APIs, and
128
+ * helpers for deriving expanded row models and expansion depth.
121
129
  */
122
130
  export const rowExpandingFeature = constructRowExpandingFeature()
@@ -39,7 +39,7 @@ export interface TableOptions_RowExpanding<
39
39
  TData extends RowData,
40
40
  > {
41
41
  /**
42
- * Enable this setting to automatically reset the expanded state of the table when expanding state changes.
42
+ * Enables automatic expanded-state resets when page-altering table state changes.
43
43
  */
44
44
  autoResetExpanded?: boolean
45
45
  /**
@@ -59,7 +59,9 @@ export interface TableOptions_RowExpanding<
59
59
  */
60
60
  manualExpanding?: boolean
61
61
  /**
62
- * This function is called when the `expanded` table state changes. If a function is provided, you will be responsible for managing this state on your own. To pass the managed state back to the table, use the `tableOptions.state.expanded` option.
62
+ * Called with an updater when expanded state changes. Pair this with
63
+ * `state.expanded` when using external state; external atoms can own the
64
+ * slice without this callback.
63
65
  */
64
66
  onExpandedChange?: OnChangeFn<ExpandedState>
65
67
  /**
@@ -94,11 +96,12 @@ export interface Table_RowExpanding<
94
96
  */
95
97
  getToggleAllRowsExpandedHandler: () => (event: unknown) => void
96
98
  /**
97
- * Resets the expanded state of the table to the initial state.
99
+ * Resets expanded state to `initialState.expanded`. Pass `true` to reset to
100
+ * the feature default of `{}`.
98
101
  */
99
102
  resetExpanded: (defaultState?: boolean) => void
100
103
  /**
101
- * Updates the expanded state of the table via an update function or value.
104
+ * Sets expanded state using a value or updater.
102
105
  */
103
106
  setExpanded: (updater: Updater<ExpandedState>) => void
104
107
  /**
@@ -126,7 +129,9 @@ export interface CreateRowModel_Expanded<
126
129
  TData extends RowData,
127
130
  > {
128
131
  /**
129
- * This function is responsible for returning the expanded row model. If this function is not provided, the table will not expand rows. You can use the default exported `getExpandedRowModel` function to get the expanded row model or implement your own.
132
+ * Factory used to retrieve the expanded row model. If this function is not
133
+ * provided, the table will not expand rows. To use client-side expansion,
134
+ * pass `createExpandedRowModel()` or implement your own factory.
130
135
  */
131
136
  expandedRowModel?: (
132
137
  table: Table<TFeatures, TData>,