@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
@@ -32,6 +32,11 @@ export interface ColumnResizingFeatureConstructors<
32
32
  // TableState: TableState_ColumnResizing
33
33
  }
34
34
 
35
+ /**
36
+ * Creates the stock column resizing feature.
37
+ *
38
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
39
+ */
35
40
  export function constructColumnResizingFeature<
36
41
  TFeatures extends TableFeatures,
37
42
  TData extends RowData,
@@ -86,7 +91,9 @@ export function constructColumnResizingFeature<
86
91
  }
87
92
 
88
93
  /**
89
- * The Column Resizing feature adds column resizing state and APIs to the table and column objects.
90
- * **Note:** This is dependent on the Column Sizing feature.
94
+ * The stock column resizing feature.
95
+ *
96
+ * Register this feature with `columnSizingFeature` to add resize interaction
97
+ * state and APIs for drag-based column resizing.
91
98
  */
92
99
  export const columnResizingFeature = constructColumnResizingFeature()
@@ -19,19 +19,23 @@ export type ColumnResizeDirection = 'ltr' | 'rtl'
19
19
 
20
20
  export interface TableOptions_ColumnResizing {
21
21
  /**
22
- * Determines when the columnSizing state is updated. `onChange` updates the state when the user is dragging the resize handle. `onEnd` updates the state when the user releases the resize handle.
22
+ * Determines when committed `columnSizing` values are updated. `onChange`
23
+ * commits sizes while the resize handle is dragged; `onEnd` commits when the
24
+ * resize interaction finishes.
23
25
  */
24
26
  columnResizeMode?: ColumnResizeMode
25
27
  /**
26
- * Enables or disables column resizing for the column.
28
+ * Enables or disables column resizing for the whole table.
27
29
  */
28
30
  enableColumnResizing?: boolean
29
31
  /**
30
- * Enables or disables right-to-left support for resizing the column. defaults to 'ltr'.
32
+ * Sets the resize direction used to calculate drag offsets. Defaults to `ltr`.
31
33
  */
32
34
  columnResizeDirection?: ColumnResizeDirection
33
35
  /**
34
- * If provided, this function will be called with an `updaterFn` when `state.columnResizing` changes. This overrides the default internal state management, so you will also need to supply `state.columnResizing` from your own managed state.
36
+ * Called with an updater when the transient `columnResizing` state changes.
37
+ * Pair this with `state.columnResizing` when using external state; external
38
+ * atoms can own the slice without this callback.
35
39
  */
36
40
  onColumnResizingChange?: OnChangeFn<columnResizingState>
37
41
  }
@@ -43,11 +47,15 @@ export type ColumnResizingDefaultOptions = Pick<
43
47
 
44
48
  export interface Table_ColumnResizing {
45
49
  /**
46
- * Resets column sizing info to its initial state. If `defaultState` is `true`, the default state for the table will be used instead of the initialValue provided to the table.
50
+ * Resets transient resize interaction state to `initialState.columnResizing`.
51
+ * Pass `true` to reset to the feature's default blank resize state instead.
47
52
  */
48
53
  resetHeaderSizeInfo: (defaultState?: boolean) => void
49
54
  /**
50
- * Sets the column sizing info state using an updater function or a value. This will trigger the underlying `oncolumnResizingChange` function if one is passed to the table options, otherwise the state will be managed automatically by the table.
55
+ * Sets the transient resize interaction state using a value or updater.
56
+ *
57
+ * The lowercase `c` in this API name matches the current generated v9 table
58
+ * API for the `columnResizing` state slice.
51
59
  */
52
60
  setcolumnResizing: (updater: Updater<columnResizingState>) => void
53
61
  }
@@ -13,6 +13,16 @@ import type { Column_Internal } from '../../types/Column'
13
13
  import type { ColumnSizingState } from '../column-sizing/columnSizingFeature.types'
14
14
  import type { columnResizingState } from './columnResizingFeature.types'
15
15
 
16
+ /**
17
+ * Returns the default column resizing state.
18
+ *
19
+ * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.
20
+ *
21
+ * @example
22
+ * ```ts
23
+ * const initialValue = getDefaultColumnResizingState()
24
+ * ```
25
+ */
16
26
  export function getDefaultColumnResizingState(): columnResizingState {
17
27
  return {
18
28
  startOffset: null,
@@ -24,6 +34,16 @@ export function getDefaultColumnResizingState(): columnResizingState {
24
34
  }
25
35
  }
26
36
 
37
+ /**
38
+ * Returns whether a column can use resize.
39
+ *
40
+ * This combines column options, table options, and any required accessor or feature state for the capability.
41
+ *
42
+ * @example
43
+ * ```ts
44
+ * const value = column_getCanResize(column)
45
+ * ```
46
+ */
27
47
  export function column_getCanResize<
28
48
  TFeatures extends TableFeatures,
29
49
  TData extends RowData,
@@ -35,6 +55,16 @@ export function column_getCanResize<
35
55
  )
36
56
  }
37
57
 
58
+ /**
59
+ * Returns is resizing for a column.
60
+ *
61
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
62
+ *
63
+ * @example
64
+ * ```ts
65
+ * const value = column_getIsResizing(column)
66
+ * ```
67
+ */
38
68
  export function column_getIsResizing<
39
69
  TFeatures extends TableFeatures,
40
70
  TData extends RowData,
@@ -45,6 +75,16 @@ export function column_getIsResizing<
45
75
  )
46
76
  }
47
77
 
78
+ /**
79
+ * Returns resize handler for a header.
80
+ *
81
+ * This is the static implementation behind the matching header instance API and can account for nested header groups.
82
+ *
83
+ * @example
84
+ * ```ts
85
+ * const onMouseDown = header_getResizeHandler(header)
86
+ * ```
87
+ */
48
88
  export function header_getResizeHandler<
49
89
  TFeatures extends TableFeatures,
50
90
  TData extends RowData,
@@ -222,6 +262,16 @@ export function header_getResizeHandler<
222
262
  }
223
263
  }
224
264
 
265
+ /**
266
+ * Updates the table's column resizing state slice.
267
+ *
268
+ * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
269
+ *
270
+ * @example
271
+ * ```ts
272
+ * table_setColumnResizing(table, (old) => old)
273
+ * ```
274
+ */
225
275
  export function table_setColumnResizing<
226
276
  TFeatures extends TableFeatures,
227
277
  TData extends RowData,
@@ -232,6 +282,17 @@ export function table_setColumnResizing<
232
282
  table.options.onColumnResizingChange?.(updater)
233
283
  }
234
284
 
285
+ /**
286
+ * Resets the table's header size info state slice.
287
+ *
288
+ * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
289
+ *
290
+ * @example
291
+ * ```ts
292
+ * table_resetHeaderSizeInfo(table)
293
+ * table_resetHeaderSizeInfo(table, true)
294
+ * ```
295
+ */
235
296
  export function table_resetHeaderSizeInfo<
236
297
  TFeatures extends TableFeatures,
237
298
  TData extends RowData,
@@ -246,6 +307,16 @@ export function table_resetHeaderSizeInfo<
246
307
  )
247
308
  }
248
309
 
310
+ /**
311
+ * Detects whether the current environment supports passive event listeners.
312
+ *
313
+ * Column resizing uses this to register pointer and touch listeners with the safest available options.
314
+ *
315
+ * @example
316
+ * ```ts
317
+ * const canUsePassiveListeners = passiveEventSupported()
318
+ * ```
319
+ */
249
320
  export function passiveEventSupported() {
250
321
  let passiveSupported: boolean | null = null
251
322
 
@@ -271,6 +342,16 @@ export function passiveEventSupported() {
271
342
  return passiveSupported
272
343
  }
273
344
 
345
+ /**
346
+ * Returns whether an event is a touch-start event.
347
+ *
348
+ * Column resizing uses this to normalize mouse and touch resize interactions.
349
+ *
350
+ * @example
351
+ * ```ts
352
+ * const isTouch = isTouchStartEvent(event)
353
+ * ```
354
+ */
274
355
  export function isTouchStartEvent(e: unknown): e is TouchEvent {
275
356
  return (e as TouchEvent).type === 'touchstart'
276
357
  }
@@ -1,10 +1,8 @@
1
1
  import {
2
2
  assignPrototypeAPIs,
3
3
  assignTableAPIs,
4
- callMemoOrStaticFn,
5
4
  makeStateUpdater,
6
5
  } from '../../utils'
7
- import { table_getPinnedVisibleLeafColumns } from '../column-pinning/columnPinningFeature.utils'
8
6
  import {
9
7
  column_getAfter,
10
8
  column_getSize,
@@ -44,6 +42,11 @@ export interface ColumnSizingFeatureConstructors<
44
42
  // TableState: TableState_ColumnSizing
45
43
  }
46
44
 
45
+ /**
46
+ * Creates the stock column sizing feature.
47
+ *
48
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
49
+ */
47
50
  export function constructColumnSizingFeature<
48
51
  TFeatures extends TableFeatures,
49
52
  TData extends RowData,
@@ -70,31 +73,31 @@ export function constructColumnSizingFeature<
70
73
  assignPrototypeAPIs('columnSizingFeature', prototype, table, {
71
74
  column_getSize: {
72
75
  fn: (column) => column_getSize(column),
76
+ memoDeps: (column) => [
77
+ table.options.columns,
78
+ table.atoms.columnSizing?.get()?.[column.id], // just this column's size state
79
+ ],
73
80
  },
74
81
  column_getStart: {
75
82
  fn: (column, position) => column_getStart(column, position),
76
83
  memoDeps: (column, position) => [
77
84
  position,
78
- callMemoOrStaticFn(
79
- column.table,
80
- 'getPinnedVisibleLeafColumns',
81
- table_getPinnedVisibleLeafColumns,
82
- position,
83
- ),
84
- column.table.atoms.columnSizing?.get(),
85
+ table.options.columns,
86
+ table.atoms.columnSizing?.get(),
87
+ table.atoms.columnOrder?.get(),
88
+ table.atoms.columnPinning?.get(),
89
+ table.atoms.columnVisibility?.get(),
85
90
  ],
86
91
  },
87
92
  column_getAfter: {
88
93
  fn: (column, position) => column_getAfter(column, position),
89
94
  memoDeps: (column, position) => [
90
95
  position,
91
- callMemoOrStaticFn(
92
- column.table,
93
- 'getPinnedVisibleLeafColumns',
94
- table_getPinnedVisibleLeafColumns,
95
- position,
96
- ),
97
- column.table.atoms.columnSizing?.get(),
96
+ table.options.columns,
97
+ table.atoms.columnSizing?.get(),
98
+ table.atoms.columnOrder?.get(),
99
+ table.atoms.columnPinning?.get(),
100
+ table.atoms.columnVisibility?.get(),
98
101
  ],
99
102
  },
100
103
  column_resetSize: {
@@ -107,9 +110,23 @@ export function constructColumnSizingFeature<
107
110
  assignPrototypeAPIs('columnSizingFeature', prototype, table, {
108
111
  header_getSize: {
109
112
  fn: (header) => header_getSize(header),
113
+ memoDeps: (header) => [
114
+ table.options.columns,
115
+ header.column.columns.length > 0
116
+ ? table.atoms.columnSizing?.get() // must be all columns (sum child columns)
117
+ : table.atoms.columnSizing?.get()?.[header.column.id], // can just check it's associated column size state
118
+ ],
110
119
  },
111
120
  header_getStart: {
112
121
  fn: (header) => header_getStart(header),
122
+ memoDeps: (header, position) => [
123
+ position,
124
+ table.options.columns,
125
+ table.atoms.columnSizing?.get(),
126
+ table.atoms.columnOrder?.get(),
127
+ table.atoms.columnPinning?.get(),
128
+ table.atoms.columnVisibility?.get(),
129
+ ],
113
130
  },
114
131
  })
115
132
  },
@@ -124,15 +141,31 @@ export function constructColumnSizingFeature<
124
141
  },
125
142
  table_getTotalSize: {
126
143
  fn: () => table_getTotalSize(table),
144
+ memoDeps: () => [
145
+ table.atoms.columnSizing?.get(),
146
+ table.getHeaderGroups(),
147
+ ],
127
148
  },
128
149
  table_getLeftTotalSize: {
129
150
  fn: () => table_getLeftTotalSize(table),
151
+ memoDeps: () => [
152
+ table.atoms.columnSizing?.get(),
153
+ table.getHeaderGroups(),
154
+ ],
130
155
  },
131
156
  table_getCenterTotalSize: {
132
157
  fn: () => table_getCenterTotalSize(table),
158
+ memoDeps: () => [
159
+ table.atoms.columnSizing?.get(),
160
+ table.getHeaderGroups(),
161
+ ],
133
162
  },
134
163
  table_getRightTotalSize: {
135
164
  fn: () => table_getRightTotalSize(table),
165
+ memoDeps: () => [
166
+ table.atoms.columnSizing?.get(),
167
+ table.getHeaderGroups(),
168
+ ],
136
169
  },
137
170
  })
138
171
  },
@@ -140,7 +173,10 @@ export function constructColumnSizingFeature<
140
173
  }
141
174
 
142
175
  /**
143
- * The Column Sizing feature adds column sizing state and APIs to the table, header, and column objects.
144
- * **Note:** This does not include column resizing. The columnResizingFeature feature has been split out into its own standalone feature.
176
+ * The stock column sizing feature.
177
+ *
178
+ * Register this feature to add column width state and table, header, and column
179
+ * APIs for reading and resetting sizes. Column drag resizing lives in
180
+ * `columnResizingFeature`.
145
181
  */
146
182
  export const columnSizingFeature = constructColumnSizingFeature()
@@ -9,7 +9,9 @@ export type ColumnSizingState = Record<string, number>
9
9
 
10
10
  export interface TableOptions_ColumnSizing {
11
11
  /**
12
- * If provided, this function will be called with an `updaterFn` when `state.columnSizing` changes. This overrides the default internal state management, so you will also need to supply `state.columnSizing` from your own managed state.
12
+ * Called with an updater when committed column sizing state changes. Pair
13
+ * this with `state.columnSizing` when using external state; external atoms
14
+ * can own the slice without this callback.
13
15
  */
14
16
  onColumnSizingChange?: OnChangeFn<ColumnSizingState>
15
17
  }
@@ -37,11 +39,12 @@ export interface Table_ColumnSizing {
37
39
  */
38
40
  getTotalSize: () => number
39
41
  /**
40
- * Resets column sizing to its initial state. If `defaultState` is `true`, the default state for the table will be used instead of the initialValue provided to the table.
42
+ * Resets column sizing to `initialState.columnSizing`. Pass `true` to reset
43
+ * to the feature default of `{}`.
41
44
  */
42
45
  resetColumnSizing: (defaultState?: boolean) => void
43
46
  /**
44
- * Sets the column sizing state using an updater function or a value. This will trigger the underlying `onColumnSizingChange` function if one is passed to the table options, otherwise the state will be managed automatically by the table.
47
+ * Sets committed column sizing state using a value or updater.
45
48
  */
46
49
  setColumnSizing: (updater: Updater<ColumnSizingState>) => void
47
50
  }
@@ -14,10 +14,30 @@ import type { Header } from '../../types/Header'
14
14
  import type { Column_Internal } from '../../types/Column'
15
15
  import type { ColumnSizingState } from './columnSizingFeature.types'
16
16
 
17
+ /**
18
+ * Returns the default column sizing state.
19
+ *
20
+ * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * const initialValue = getDefaultColumnSizingState()
25
+ * ```
26
+ */
17
27
  export function getDefaultColumnSizingState(): ColumnSizingState {
18
28
  return {}
19
29
  }
20
30
 
31
+ /**
32
+ * Returns the default column sizing column def.
33
+ *
34
+ * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.
35
+ *
36
+ * @example
37
+ * ```ts
38
+ * const initialValue = getDefaultColumnSizingColumnDef()
39
+ * ```
40
+ */
21
41
  export function getDefaultColumnSizingColumnDef() {
22
42
  return {
23
43
  size: 150,
@@ -26,6 +46,16 @@ export function getDefaultColumnSizingColumnDef() {
26
46
  }
27
47
  }
28
48
 
49
+ /**
50
+ * Returns size for a column.
51
+ *
52
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
53
+ *
54
+ * @example
55
+ * ```ts
56
+ * const value = column_getSize(column)
57
+ * ```
58
+ */
29
59
  export function column_getSize<
30
60
  TFeatures extends TableFeatures,
31
61
  TData extends RowData,
@@ -43,6 +73,16 @@ export function column_getSize<
43
73
  )
44
74
  }
45
75
 
76
+ /**
77
+ * Returns start for a column.
78
+ *
79
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
80
+ *
81
+ * @example
82
+ * ```ts
83
+ * const value = column_getStart(column)
84
+ * ```
85
+ */
46
86
  export function column_getStart<
47
87
  TFeatures extends TableFeatures,
48
88
  TData extends RowData,
@@ -51,6 +91,14 @@ export function column_getStart<
51
91
  column: Column_Internal<TFeatures, TData, TValue>,
52
92
  position: ColumnPinningPosition | 'center',
53
93
  ): number {
94
+ const index = callMemoOrStaticFn(
95
+ column,
96
+ 'getIndex',
97
+ column_getIndex,
98
+ position,
99
+ )
100
+ if (index <= 0) return 0
101
+
54
102
  const visibleLeafColumns = callMemoOrStaticFn(
55
103
  column.table,
56
104
  'getPinnedVisibleLeafColumns',
@@ -58,11 +106,23 @@ export function column_getStart<
58
106
  position,
59
107
  )
60
108
 
61
- return visibleLeafColumns
62
- .slice(0, callMemoOrStaticFn(column, 'getIndex', column_getIndex, position))
63
- .reduce((sum: number, c) => sum + column_getSize(c), 0)
109
+ const prevColumn = visibleLeafColumns[index - 1]!
110
+ return (
111
+ callMemoOrStaticFn(prevColumn, 'getStart', column_getStart, position) +
112
+ callMemoOrStaticFn(prevColumn, 'getSize', column_getSize)
113
+ )
64
114
  }
65
115
 
116
+ /**
117
+ * Returns after for a column.
118
+ *
119
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
120
+ *
121
+ * @example
122
+ * ```ts
123
+ * const value = column_getAfter(column)
124
+ * ```
125
+ */
66
126
  export function column_getAfter<
67
127
  TFeatures extends TableFeatures,
68
128
  TData extends RowData,
@@ -77,14 +137,31 @@ export function column_getAfter<
77
137
  table_getPinnedVisibleLeafColumns,
78
138
  position,
79
139
  )
140
+ const index = callMemoOrStaticFn(
141
+ column,
142
+ 'getIndex',
143
+ column_getIndex,
144
+ position,
145
+ )
146
+ if (index < 0 || index >= visibleLeafColumns.length - 1) return 0
80
147
 
81
- return visibleLeafColumns
82
- .slice(
83
- callMemoOrStaticFn(column, 'getIndex', column_getIndex, position) + 1,
84
- )
85
- .reduce((sum: number, c) => sum + column_getSize(c), 0)
148
+ const nextColumn = visibleLeafColumns[index + 1]!
149
+ return (
150
+ callMemoOrStaticFn(nextColumn, 'getSize', column_getSize) +
151
+ callMemoOrStaticFn(nextColumn, 'getAfter', column_getAfter, position)
152
+ )
86
153
  }
87
154
 
155
+ /**
156
+ * Reset Size. for a column.
157
+ *
158
+ * This is the static implementation behind the matching column instance API.
159
+ *
160
+ * @example
161
+ * ```ts
162
+ * const value = column_resetSize(column)
163
+ * ```
164
+ */
88
165
  export function column_resetSize<
89
166
  TFeatures extends TableFeatures,
90
167
  TData extends RowData,
@@ -95,6 +172,16 @@ export function column_resetSize<
95
172
  })
96
173
  }
97
174
 
175
+ /**
176
+ * Returns size for a header.
177
+ *
178
+ * This is the static implementation behind the matching header instance API and can account for nested header groups.
179
+ *
180
+ * @example
181
+ * ```ts
182
+ * const value = header_getSize(header)
183
+ * ```
184
+ */
98
185
  export function header_getSize<
99
186
  TFeatures extends TableFeatures,
100
187
  TData extends RowData,
@@ -115,6 +202,16 @@ export function header_getSize<
115
202
  return sum
116
203
  }
117
204
 
205
+ /**
206
+ * Returns start for a header.
207
+ *
208
+ * This is the static implementation behind the matching header instance API and can account for nested header groups.
209
+ *
210
+ * @example
211
+ * ```ts
212
+ * const value = header_getStart(header)
213
+ * ```
214
+ */
118
215
  export function header_getStart<
119
216
  TFeatures extends TableFeatures,
120
217
  TData extends RowData,
@@ -124,7 +221,8 @@ export function header_getStart<
124
221
  const prevSiblingHeader = header.headerGroup?.headers[header.index - 1]
125
222
  if (prevSiblingHeader) {
126
223
  return (
127
- header_getStart(prevSiblingHeader) + header_getSize(prevSiblingHeader)
224
+ callMemoOrStaticFn(prevSiblingHeader, 'getStart', header_getStart) +
225
+ callMemoOrStaticFn(prevSiblingHeader, 'getSize', header_getSize)
128
226
  )
129
227
  }
130
228
  }
@@ -134,6 +232,16 @@ export function header_getStart<
134
232
 
135
233
  // Table APIs
136
234
 
235
+ /**
236
+ * Updates the table's column sizing state slice.
237
+ *
238
+ * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
239
+ *
240
+ * @example
241
+ * ```ts
242
+ * table_setColumnSizing(table, (old) => old)
243
+ * ```
244
+ */
137
245
  export function table_setColumnSizing<
138
246
  TFeatures extends TableFeatures,
139
247
  TData extends RowData,
@@ -144,6 +252,17 @@ export function table_setColumnSizing<
144
252
  table.options.onColumnSizingChange?.(updater)
145
253
  }
146
254
 
255
+ /**
256
+ * Resets the table's column sizing state slice.
257
+ *
258
+ * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
259
+ *
260
+ * @example
261
+ * ```ts
262
+ * table_resetColumnSizing(table)
263
+ * table_resetColumnSizing(table, true)
264
+ * ```
265
+ */
147
266
  export function table_resetColumnSizing<
148
267
  TFeatures extends TableFeatures,
149
268
  TData extends RowData,
@@ -154,6 +273,16 @@ export function table_resetColumnSizing<
154
273
  )
155
274
  }
156
275
 
276
+ /**
277
+ * Returns total size for the table.
278
+ *
279
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
280
+ *
281
+ * @example
282
+ * ```ts
283
+ * const value = table_getTotalSize(table)
284
+ * ```
285
+ */
157
286
  export function table_getTotalSize<
158
287
  TFeatures extends TableFeatures,
159
288
  TData extends RowData,
@@ -165,6 +294,16 @@ export function table_getTotalSize<
165
294
  )
166
295
  }
167
296
 
297
+ /**
298
+ * Returns left total size for the table.
299
+ *
300
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
301
+ *
302
+ * @example
303
+ * ```ts
304
+ * const value = table_getLeftTotalSize(table)
305
+ * ```
306
+ */
168
307
  export function table_getLeftTotalSize<
169
308
  TFeatures extends TableFeatures,
170
309
  TData extends RowData,
@@ -180,6 +319,16 @@ export function table_getLeftTotalSize<
180
319
  )
181
320
  }
182
321
 
322
+ /**
323
+ * Returns center total size for the table.
324
+ *
325
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
326
+ *
327
+ * @example
328
+ * ```ts
329
+ * const value = table_getCenterTotalSize(table)
330
+ * ```
331
+ */
183
332
  export function table_getCenterTotalSize<
184
333
  TFeatures extends TableFeatures,
185
334
  TData extends RowData,
@@ -195,6 +344,16 @@ export function table_getCenterTotalSize<
195
344
  )
196
345
  }
197
346
 
347
+ /**
348
+ * Returns right total size for the table.
349
+ *
350
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
351
+ *
352
+ * @example
353
+ * ```ts
354
+ * const value = table_getRightTotalSize(table)
355
+ * ```
356
+ */
198
357
  export function table_getRightTotalSize<
199
358
  TFeatures extends TableFeatures,
200
359
  TData extends RowData,