@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
@@ -8,10 +8,30 @@ import type { RowSelectionState } from './rowSelectionFeature.types'
8
8
 
9
9
  // State APIs
10
10
 
11
+ /**
12
+ * Returns the default row selection 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 = getDefaultRowSelectionState()
19
+ * ```
20
+ */
11
21
  export function getDefaultRowSelectionState(): RowSelectionState {
12
22
  return {}
13
23
  }
14
24
 
25
+ /**
26
+ * Updates the table's row selection state slice.
27
+ *
28
+ * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * table_setRowSelection(table, (old) => old)
33
+ * ```
34
+ */
15
35
  export function table_setRowSelection<
16
36
  TFeatures extends TableFeatures,
17
37
  TData extends RowData,
@@ -22,6 +42,17 @@ export function table_setRowSelection<
22
42
  table.options.onRowSelectionChange?.(updater)
23
43
  }
24
44
 
45
+ /**
46
+ * Resets the table's row selection state slice.
47
+ *
48
+ * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
49
+ *
50
+ * @example
51
+ * ```ts
52
+ * table_resetRowSelection(table)
53
+ * table_resetRowSelection(table, true)
54
+ * ```
55
+ */
25
56
  export function table_resetRowSelection<
26
57
  TFeatures extends TableFeatures,
27
58
  TData extends RowData,
@@ -34,6 +65,16 @@ export function table_resetRowSelection<
34
65
 
35
66
  // Table APIs
36
67
 
68
+ /**
69
+ * Toggles all rows selected for the table.
70
+ *
71
+ * This is the table-level convenience API used by UI controls that affect many columns or rows at once.
72
+ *
73
+ * @example
74
+ * ```ts
75
+ * table_toggleAllRowsSelected(table)
76
+ * ```
77
+ */
37
78
  export function table_toggleAllRowsSelected<
38
79
  TFeatures extends TableFeatures,
39
80
  TData extends RowData,
@@ -65,6 +106,16 @@ export function table_toggleAllRowsSelected<
65
106
  })
66
107
  }
67
108
 
109
+ /**
110
+ * Toggles all page rows selected for the table.
111
+ *
112
+ * This is the table-level convenience API used by UI controls that affect many columns or rows at once.
113
+ *
114
+ * @example
115
+ * ```ts
116
+ * table_toggleAllPageRowsSelected(table)
117
+ * ```
118
+ */
68
119
  export function table_toggleAllPageRowsSelected<
69
120
  TFeatures extends TableFeatures,
70
121
  TData extends RowData,
@@ -85,6 +136,16 @@ export function table_toggleAllPageRowsSelected<
85
136
  })
86
137
  }
87
138
 
139
+ /**
140
+ * Returns pre selected row model for the table.
141
+ *
142
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
143
+ *
144
+ * @example
145
+ * ```ts
146
+ * const value = table_getPreSelectedRowModel(table)
147
+ * ```
148
+ */
88
149
  export function table_getPreSelectedRowModel<
89
150
  TFeatures extends TableFeatures,
90
151
  TData extends RowData,
@@ -92,6 +153,16 @@ export function table_getPreSelectedRowModel<
92
153
  return table.getCoreRowModel()
93
154
  }
94
155
 
156
+ /**
157
+ * Returns selected row model for the table.
158
+ *
159
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
160
+ *
161
+ * @example
162
+ * ```ts
163
+ * const value = table_getSelectedRowModel(table)
164
+ * ```
165
+ */
95
166
  export function table_getSelectedRowModel<
96
167
  TFeatures extends TableFeatures,
97
168
  TData extends RowData,
@@ -109,6 +180,16 @@ export function table_getSelectedRowModel<
109
180
  return selectRowsFn(rowModel)
110
181
  }
111
182
 
183
+ /**
184
+ * Returns filtered selected row model for the table.
185
+ *
186
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
187
+ *
188
+ * @example
189
+ * ```ts
190
+ * const value = table_getFilteredSelectedRowModel(table)
191
+ * ```
192
+ */
112
193
  export function table_getFilteredSelectedRowModel<
113
194
  TFeatures extends TableFeatures,
114
195
  TData extends RowData,
@@ -126,6 +207,16 @@ export function table_getFilteredSelectedRowModel<
126
207
  return selectRowsFn(rowModel)
127
208
  }
128
209
 
210
+ /**
211
+ * Returns grouped selected row model for the table.
212
+ *
213
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
214
+ *
215
+ * @example
216
+ * ```ts
217
+ * const value = table_getGroupedSelectedRowModel(table)
218
+ * ```
219
+ */
129
220
  export function table_getGroupedSelectedRowModel<
130
221
  TFeatures extends TableFeatures,
131
222
  TData extends RowData,
@@ -143,6 +234,16 @@ export function table_getGroupedSelectedRowModel<
143
234
  return selectRowsFn(rowModel)
144
235
  }
145
236
 
237
+ /**
238
+ * Returns is all rows selected for the table.
239
+ *
240
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
241
+ *
242
+ * @example
243
+ * ```ts
244
+ * const value = table_getIsAllRowsSelected(table)
245
+ * ```
246
+ */
146
247
  export function table_getIsAllRowsSelected<
147
248
  TFeatures extends TableFeatures,
148
249
  TData extends RowData,
@@ -167,6 +268,16 @@ export function table_getIsAllRowsSelected<
167
268
  return isAllRowsSelected
168
269
  }
169
270
 
271
+ /**
272
+ * Returns is all page rows selected for the table.
273
+ *
274
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
275
+ *
276
+ * @example
277
+ * ```ts
278
+ * const value = table_getIsAllPageRowsSelected(table)
279
+ * ```
280
+ */
170
281
  export function table_getIsAllPageRowsSelected<
171
282
  TFeatures extends TableFeatures,
172
283
  TData extends RowData,
@@ -188,6 +299,16 @@ export function table_getIsAllPageRowsSelected<
188
299
  return isAllPageRowsSelected
189
300
  }
190
301
 
302
+ /**
303
+ * Returns is some rows selected for the table.
304
+ *
305
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
306
+ *
307
+ * @example
308
+ * ```ts
309
+ * const value = table_getIsSomeRowsSelected(table)
310
+ * ```
311
+ */
191
312
  export function table_getIsSomeRowsSelected<
192
313
  TFeatures extends TableFeatures,
193
314
  TData extends RowData,
@@ -201,6 +322,16 @@ export function table_getIsSomeRowsSelected<
201
322
  )
202
323
  }
203
324
 
325
+ /**
326
+ * Returns is some page rows selected for the table.
327
+ *
328
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
329
+ *
330
+ * @example
331
+ * ```ts
332
+ * const value = table_getIsSomePageRowsSelected(table)
333
+ * ```
334
+ */
204
335
  export function table_getIsSomePageRowsSelected<
205
336
  TFeatures extends TableFeatures,
206
337
  TData extends RowData,
@@ -213,6 +344,16 @@ export function table_getIsSomePageRowsSelected<
213
344
  .some((row) => row_getIsSelected(row) || row_getIsSomeSelected(row))
214
345
  }
215
346
 
347
+ /**
348
+ * Returns an event handler for all rows selected handler.
349
+ *
350
+ * The handler calls the matching table toggle API and can be attached directly to checkbox or button UI.
351
+ *
352
+ * @example
353
+ * ```ts
354
+ * const value = table_getToggleAllRowsSelectedHandler(table)
355
+ * ```
356
+ */
216
357
  export function table_getToggleAllRowsSelectedHandler<
217
358
  TFeatures extends TableFeatures,
218
359
  TData extends RowData,
@@ -225,6 +366,16 @@ export function table_getToggleAllRowsSelectedHandler<
225
366
  }
226
367
  }
227
368
 
369
+ /**
370
+ * Returns an event handler for all page rows selected handler.
371
+ *
372
+ * The handler calls the matching table toggle API and can be attached directly to checkbox or button UI.
373
+ *
374
+ * @example
375
+ * ```ts
376
+ * const value = table_getToggleAllPageRowsSelectedHandler(table)
377
+ * ```
378
+ */
228
379
  export function table_getToggleAllPageRowsSelectedHandler<
229
380
  TFeatures extends TableFeatures,
230
381
  TData extends RowData,
@@ -239,6 +390,16 @@ export function table_getToggleAllPageRowsSelectedHandler<
239
390
 
240
391
  // Row APIs
241
392
 
393
+ /**
394
+ * Toggles selected for a row.
395
+ *
396
+ * The update is routed through the table state updater for the owning feature state slice.
397
+ *
398
+ * @example
399
+ * ```ts
400
+ * row_toggleSelected(row)
401
+ * ```
402
+ */
242
403
  export function row_toggleSelected<
243
404
  TFeatures extends TableFeatures,
244
405
  TData extends RowData,
@@ -272,6 +433,16 @@ export function row_toggleSelected<
272
433
  })
273
434
  }
274
435
 
436
+ /**
437
+ * Returns is selected for a row.
438
+ *
439
+ * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
440
+ *
441
+ * @example
442
+ * ```ts
443
+ * const value = row_getIsSelected(row)
444
+ * ```
445
+ */
275
446
  export function row_getIsSelected<
276
447
  TFeatures extends TableFeatures,
277
448
  TData extends RowData,
@@ -279,6 +450,16 @@ export function row_getIsSelected<
279
450
  return isRowSelected(row)
280
451
  }
281
452
 
453
+ /**
454
+ * Returns is some selected for a row.
455
+ *
456
+ * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
457
+ *
458
+ * @example
459
+ * ```ts
460
+ * const value = row_getIsSomeSelected(row)
461
+ * ```
462
+ */
282
463
  export function row_getIsSomeSelected<
283
464
  TFeatures extends TableFeatures,
284
465
  TData extends RowData,
@@ -286,6 +467,16 @@ export function row_getIsSomeSelected<
286
467
  return isSubRowSelected(row) === 'some'
287
468
  }
288
469
 
470
+ /**
471
+ * Returns is all sub rows selected for a row.
472
+ *
473
+ * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
474
+ *
475
+ * @example
476
+ * ```ts
477
+ * const value = row_getIsAllSubRowsSelected(row)
478
+ * ```
479
+ */
289
480
  export function row_getIsAllSubRowsSelected<
290
481
  TFeatures extends TableFeatures,
291
482
  TData extends RowData,
@@ -293,6 +484,16 @@ export function row_getIsAllSubRowsSelected<
293
484
  return isSubRowSelected(row) === 'all'
294
485
  }
295
486
 
487
+ /**
488
+ * Returns whether a row can use select.
489
+ *
490
+ * This evaluates row data, table options, and feature-specific enablement rules.
491
+ *
492
+ * @example
493
+ * ```ts
494
+ * const value = row_getCanSelect(row)
495
+ * ```
496
+ */
296
497
  export function row_getCanSelect<
297
498
  TFeatures extends TableFeatures,
298
499
  TData extends RowData,
@@ -305,6 +506,16 @@ export function row_getCanSelect<
305
506
  return options.enableRowSelection ?? true
306
507
  }
307
508
 
509
+ /**
510
+ * Returns whether a row can use select sub rows.
511
+ *
512
+ * This evaluates row data, table options, and feature-specific enablement rules.
513
+ *
514
+ * @example
515
+ * ```ts
516
+ * const value = row_getCanSelectSubRows(row)
517
+ * ```
518
+ */
308
519
  export function row_getCanSelectSubRows<
309
520
  TFeatures extends TableFeatures,
310
521
  TData extends RowData,
@@ -317,6 +528,16 @@ export function row_getCanSelectSubRows<
317
528
  return options.enableSubRowSelection ?? true
318
529
  }
319
530
 
531
+ /**
532
+ * Returns whether a row can use multi select.
533
+ *
534
+ * This evaluates row data, table options, and feature-specific enablement rules.
535
+ *
536
+ * @example
537
+ * ```ts
538
+ * const value = row_getCanMultiSelect(row)
539
+ * ```
540
+ */
320
541
  export function row_getCanMultiSelect<
321
542
  TFeatures extends TableFeatures,
322
543
  TData extends RowData,
@@ -329,6 +550,16 @@ export function row_getCanMultiSelect<
329
550
  return options.enableMultiRowSelection ?? true
330
551
  }
331
552
 
553
+ /**
554
+ * Returns an event handler for toggling selected handler.
555
+ *
556
+ * The handler is intended for direct use in row-level controls such as expansion or selection buttons.
557
+ *
558
+ * @example
559
+ * ```ts
560
+ * const value = row_getToggleSelectedHandler(row)
561
+ * ```
562
+ */
332
563
  export function row_getToggleSelectedHandler<
333
564
  TFeatures extends TableFeatures,
334
565
  TData extends RowData,
@@ -374,6 +605,16 @@ const mutateRowIsSelected = <
374
605
  }
375
606
  }
376
607
 
608
+ /**
609
+ * Builds a row model containing rows selected by the current row selection state.
610
+ *
611
+ * The result is derived from the supplied row model, so selected ids absent from the current data are not materialized as rows.
612
+ *
613
+ * @example
614
+ * ```ts
615
+ * const selectedRows = selectRowsFn(table, rowModel)
616
+ * ```
617
+ */
377
618
  export function selectRowsFn<
378
619
  TFeatures extends TableFeatures,
379
620
  TData extends RowData,
@@ -381,32 +622,33 @@ export function selectRowsFn<
381
622
  const newSelectedFlatRows: Array<Row<TFeatures, TData>> = []
382
623
  const newSelectedRowsById: Record<string, Row<TFeatures, TData>> = {}
383
624
 
384
- // Filters top level and nested rows
625
+ // Filters top level and nested rows.
385
626
  const recurseRows = (
386
627
  rows: Array<Row<TFeatures, TData>>,
387
628
  depth = 0,
388
629
  ): Array<Row<TFeatures, TData>> => {
389
- return rows
390
- .map((row) => {
391
- const isSelected = isRowSelected(row)
392
-
393
- if (isSelected) {
394
- newSelectedFlatRows.push(row)
395
- newSelectedRowsById[row.id] = row
396
- }
630
+ const result: Array<Row<TFeatures, TData>> = []
631
+ for (let i = 0; i < rows.length; i++) {
632
+ let row = rows[i]!
633
+ const isSelected = isRowSelected(row)
634
+
635
+ if (isSelected) {
636
+ newSelectedFlatRows.push(row)
637
+ newSelectedRowsById[row.id] = row
638
+ }
397
639
 
398
- if (row.subRows.length) {
399
- row = {
400
- ...row,
401
- subRows: recurseRows(row.subRows, depth + 1),
402
- }
640
+ if (row.subRows.length) {
641
+ row = {
642
+ ...row,
643
+ subRows: recurseRows(row.subRows, depth + 1),
403
644
  }
645
+ }
404
646
 
405
- if (isSelected) {
406
- return row
407
- }
408
- })
409
- .filter((x) => !!x)
647
+ if (isSelected) {
648
+ result.push(row)
649
+ }
650
+ }
651
+ return result
410
652
  }
411
653
 
412
654
  return {
@@ -416,6 +658,14 @@ export function selectRowsFn<
416
658
  }
417
659
  }
418
660
 
661
+ /**
662
+ * Returns whether a row id is selected in the current row selection state.
663
+ *
664
+ * @example
665
+ * ```ts
666
+ * const selected = isRowSelected(row, selection)
667
+ * ```
668
+ */
419
669
  export function isRowSelected<
420
670
  TFeatures extends TableFeatures,
421
671
  TData extends RowData,
@@ -423,6 +673,16 @@ export function isRowSelected<
423
673
  return (row.table.atoms.rowSelection?.get() ?? {})[row.id] ?? false
424
674
  }
425
675
 
676
+ /**
677
+ * Returns whether all, some, or none of a row's selectable descendants are selected.
678
+ *
679
+ * The result is used to drive indeterminate row selection UI.
680
+ *
681
+ * @example
682
+ * ```ts
683
+ * const selectedState = isSubRowSelected(row, selection, table)
684
+ * ```
685
+ */
426
686
  export function isSubRowSelected<
427
687
  TFeatures extends TableFeatures,
428
688
  TData extends RowData,
@@ -9,6 +9,11 @@ import type { Row } from '../../types/Row'
9
9
  import type { SortFn, SortFns } from './rowSortingFeature.types'
10
10
  import type { RowData } from '../../types/type-utils'
11
11
 
12
+ /**
13
+ * Creates a memoized sorted row model factory.
14
+ *
15
+ * The factory reads the relevant table state atoms and options, then returns a row model function used by the table row-model pipeline.
16
+ */
12
17
  export function createSortedRowModel<
13
18
  TFeatures extends TableFeatures,
14
19
  TData extends RowData,
@@ -74,16 +79,11 @@ function _createSortedRowModel<
74
79
  })
75
80
 
76
81
  const sortData = (rows: Array<Row<TFeatures, TData>>) => {
77
- // This will also perform a stable sorting using the row index
78
- // if needed.
79
- // Preserve prototype chain so methods like getValue() remain accessible
80
- const sortedData = rows.map((row) => {
81
- const cloned = Object.create(Object.getPrototypeOf(row))
82
- return Object.assign(cloned, row)
83
- })
82
+ const sortedData = rows.slice()
84
83
 
85
84
  sortedData.sort((rowA, rowB) => {
86
- for (const sortEntry of availableSorting) {
85
+ for (let i = 0; i < availableSorting.length; i++) {
86
+ const sortEntry = availableSorting[i]!
87
87
  const columnInfo = columnInfoById[sortEntry.id]!
88
88
  const sortUndefined = columnInfo.sortUndefined
89
89
  const isDesc = sortEntry.desc
@@ -130,13 +130,21 @@ function _createSortedRowModel<
130
130
  return rowA.index - rowB.index
131
131
  })
132
132
 
133
- // If there are sub-rows, sort them
134
- sortedData.forEach((row) => {
135
- sortedFlatRows.push(row)
133
+ // If there are sub-rows, sort them. Clone only rows that need mutation
134
+ // (i.e. have subRows) so we don't corrupt the source row model.
135
+ for (let i = 0; i < sortedData.length; i++) {
136
+ const row = sortedData[i]!
136
137
  if (row.subRows.length) {
137
- row.subRows = sortData(row.subRows)
138
+ // Preserve prototype chain so methods like getValue() remain accessible
139
+ const cloned = Object.create(Object.getPrototypeOf(row))
140
+ Object.assign(cloned, row)
141
+ cloned.subRows = sortData(row.subRows)
142
+ sortedData[i] = cloned
143
+ sortedFlatRows.push(cloned)
144
+ } else {
145
+ sortedFlatRows.push(row)
138
146
  }
139
- })
147
+ }
140
148
 
141
149
  return sortedData
142
150
  }
@@ -47,6 +47,11 @@ export interface RowSortingFeatureConstructors<
47
47
  // TableState: TableState_RowSorting
48
48
  }
49
49
 
50
+ /**
51
+ * Creates the stock row sorting feature.
52
+ *
53
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
54
+ */
50
55
  export function constructRowSortingFeature<
51
56
  TFeatures extends TableFeatures,
52
57
  TData extends RowData,
@@ -77,10 +82,10 @@ export function constructRowSortingFeature<
77
82
 
78
83
  assignColumnPrototype(prototype, table) {
79
84
  assignPrototypeAPIs('rowSortingFeature', prototype, table, {
80
- 'column.getAutoSortFn': {
85
+ column_getAutoSortFn: {
81
86
  fn: (column) => column_getAutoSortFn(column),
82
87
  },
83
- 'column.getAutoSortDir': {
88
+ column_getAutoSortDir: {
84
89
  fn: (column) => column_getAutoSortDir(column),
85
90
  },
86
91
  column_getSortFn: {
@@ -131,6 +136,9 @@ export function constructRowSortingFeature<
131
136
  }
132
137
 
133
138
  /**
134
- * The (Row) Sorting feature adds sorting state and APIs to the table and column objects.
139
+ * The stock row sorting feature.
140
+ *
141
+ * Register this feature to add sorting state, column sorting APIs, and sorted
142
+ * row-model support for client-side or manual sorting.
135
143
  */
136
144
  export const rowSortingFeature = constructRowSortingFeature()
@@ -172,7 +172,9 @@ export interface TableOptions_RowSorting {
172
172
  */
173
173
  maxMultiSortColCount?: number
174
174
  /**
175
- * If provided, this function will be called with an `updaterFn` when `state.sorting` 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.
175
+ * Called with an updater when sorting state changes. Pair this with
176
+ * `state.sorting` when using external state; external atoms can own the slice
177
+ * without this callback.
176
178
  */
177
179
  onSortingChange?: OnChangeFn<SortingState>
178
180
  /**
@@ -190,7 +192,7 @@ export interface Table_RowSorting<
190
192
  */
191
193
  resetSorting: (defaultState?: boolean) => void
192
194
  /**
193
- * Sets or updates the `state.sorting` state.
195
+ * Sets sorting state using a value or updater.
194
196
  */
195
197
  setSorting: (updater: Updater<SortingState>) => void
196
198
  }
@@ -214,7 +216,9 @@ export interface CreateRowModel_Sorted<
214
216
  TData extends RowData,
215
217
  > {
216
218
  /**
217
- * This function is used to retrieve the sorted row model. If using server-side sorting, this function is not required. To use client-side sorting, pass the exported `getSortedRowModel()` from your adapter to your table or implement your own.
219
+ * Factory used to retrieve the sorted row model. If using server-side
220
+ * sorting, this is not required. To use client-side sorting, pass the
221
+ * exported `createSortedRowModel()` or implement your own factory.
218
222
  */
219
223
  sortedRowModel?: (
220
224
  table: Table<TFeatures, TData>,