@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
@@ -1,10 +1,12 @@
1
1
  import {
2
2
  column_getIsVisible,
3
- row_getAllVisibleCells,
3
+ row_getVisibleCells,
4
+ row_getVisibleCellsByColumnId,
4
5
  table_getVisibleLeafColumns,
5
6
  } from '../column-visibility/columnVisibilityFeature.utils'
6
7
  import { buildHeaderGroups } from '../../core/headers/buildHeaderGroups'
7
8
  import { callMemoOrStaticFn, cloneState } from '../../utils'
9
+ import type { Header } from '../../types/Header'
8
10
  import type { HeaderGroup } from '../../types/HeaderGroup'
9
11
  import type { Cell } from '../../types/Cell'
10
12
  import type { Row } from '../../types/Row'
@@ -19,6 +21,16 @@ import type {
19
21
 
20
22
  // State
21
23
 
24
+ /**
25
+ * Returns the default column pinning state.
26
+ *
27
+ * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.
28
+ *
29
+ * @example
30
+ * ```ts
31
+ * const initialValue = getDefaultColumnPinningState()
32
+ * ```
33
+ */
22
34
  export function getDefaultColumnPinningState(): ColumnPinningState {
23
35
  return {
24
36
  left: [],
@@ -28,6 +40,16 @@ export function getDefaultColumnPinningState(): ColumnPinningState {
28
40
 
29
41
  // Column APIs
30
42
 
43
+ /**
44
+ * Pin. for a column.
45
+ *
46
+ * This is the static implementation behind the matching column instance API.
47
+ *
48
+ * @example
49
+ * ```ts
50
+ * column_pin(column, 'left')
51
+ * ```
52
+ */
31
53
  export function column_pin<
32
54
  TFeatures extends TableFeatures,
33
55
  TData extends RowData,
@@ -36,10 +58,13 @@ export function column_pin<
36
58
  column: Column_Internal<TFeatures, TData, TValue>,
37
59
  position: ColumnPinningPosition,
38
60
  ) {
39
- const columnIds = column
40
- .getLeafColumns()
41
- .map((d) => d.id)
42
- .filter(Boolean)
61
+ // Single pass: collect non-empty leaf-column ids.
62
+ const leafColumns = column.getLeafColumns()
63
+ const columnIds: Array<string> = []
64
+ for (let i = 0; i < leafColumns.length; i++) {
65
+ const id = leafColumns[i]!.id
66
+ if (id) columnIds.push(id)
67
+ }
43
68
 
44
69
  table_setColumnPinning(column.table, (old) => {
45
70
  if (position === 'right') {
@@ -66,6 +91,16 @@ export function column_pin<
66
91
  })
67
92
  }
68
93
 
94
+ /**
95
+ * Returns whether a column can use pin.
96
+ *
97
+ * This combines column options, table options, and any required accessor or feature state for the capability.
98
+ *
99
+ * @example
100
+ * ```ts
101
+ * const value = column_getCanPin(column)
102
+ * ```
103
+ */
69
104
  export function column_getCanPin<
70
105
  TFeatures extends TableFeatures,
71
106
  TData extends RowData,
@@ -82,6 +117,16 @@ export function column_getCanPin<
82
117
  )
83
118
  }
84
119
 
120
+ /**
121
+ * Returns is pinned for a column.
122
+ *
123
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
124
+ *
125
+ * @example
126
+ * ```ts
127
+ * const value = column_getIsPinned(column)
128
+ * ```
129
+ */
85
130
  export function column_getIsPinned<
86
131
  TFeatures extends TableFeatures,
87
132
  TData extends RowData,
@@ -100,6 +145,16 @@ export function column_getIsPinned<
100
145
  return isLeft ? 'left' : isRight ? 'right' : false
101
146
  }
102
147
 
148
+ /**
149
+ * Returns pinned index for a column.
150
+ *
151
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
152
+ *
153
+ * @example
154
+ * ```ts
155
+ * const value = column_getPinnedIndex(column)
156
+ * ```
157
+ */
103
158
  export function column_getPinnedIndex<
104
159
  TFeatures extends TableFeatures,
105
160
  TData extends RowData,
@@ -115,14 +170,24 @@ export function column_getPinnedIndex<
115
170
 
116
171
  // Row APIs
117
172
 
173
+ /**
174
+ * Returns center visible cells for a row.
175
+ *
176
+ * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
177
+ *
178
+ * @example
179
+ * ```ts
180
+ * const value = row_getCenterVisibleCells(row)
181
+ * ```
182
+ */
118
183
  export function row_getCenterVisibleCells<
119
184
  TFeatures extends TableFeatures,
120
185
  TData extends RowData,
121
186
  >(row: Row<TFeatures, TData>) {
122
187
  const allCells = callMemoOrStaticFn(
123
188
  row,
124
- 'getAllVisibleCells',
125
- row_getAllVisibleCells,
189
+ 'getVisibleCells',
190
+ row_getVisibleCells,
126
191
  )
127
192
  const { left, right } =
128
193
  row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
@@ -130,50 +195,88 @@ export function row_getCenterVisibleCells<
130
195
  return allCells.filter((d) => !leftAndRight.includes(d.column.id))
131
196
  }
132
197
 
198
+ /**
199
+ * Returns left visible cells for a row.
200
+ *
201
+ * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
202
+ *
203
+ * @example
204
+ * ```ts
205
+ * const value = row_getLeftVisibleCells(row)
206
+ * ```
207
+ */
133
208
  export function row_getLeftVisibleCells<
134
209
  TFeatures extends TableFeatures,
135
210
  TData extends RowData,
136
211
  >(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>> {
137
- const allCells = callMemoOrStaticFn(
138
- row,
139
- 'getAllVisibleCells',
140
- row_getAllVisibleCells,
141
- )
142
212
  const { left } =
143
213
  row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
144
- const cells = left
145
- .map((columnId) => allCells.find((cell) => cell.column.id === columnId)!)
146
- .filter(Boolean)
147
- // Assign position property directly to preserve prototype chain
148
- cells.forEach((cell) => {
149
- cell.position = 'left'
150
- })
151
- return cells as any
214
+ if (!left.length) return []
215
+ const allVisibleCells = callMemoOrStaticFn(
216
+ row,
217
+ 'getVisibleCellsByColumnId',
218
+ row_getVisibleCellsByColumnId,
219
+ )
220
+ const cells: Array<Cell<TFeatures, TData, unknown>> = []
221
+ for (let i = 0; i < left.length; i++) {
222
+ const columnId = left[i]!
223
+ const cell = allVisibleCells[columnId]
224
+ if (cell) {
225
+ // Assign position property directly to preserve prototype chain
226
+ cell.position = 'left'
227
+ cells.push(cell)
228
+ }
229
+ }
230
+ return cells
152
231
  }
153
232
 
233
+ /**
234
+ * Returns right visible cells for a row.
235
+ *
236
+ * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
237
+ *
238
+ * @example
239
+ * ```ts
240
+ * const value = row_getRightVisibleCells(row)
241
+ * ```
242
+ */
154
243
  export function row_getRightVisibleCells<
155
244
  TFeatures extends TableFeatures,
156
245
  TData extends RowData,
157
246
  >(row: Row<TFeatures, TData>) {
158
- const allCells = callMemoOrStaticFn(
159
- row,
160
- 'getAllVisibleCells',
161
- row_getAllVisibleCells,
162
- )
163
247
  const { right } =
164
248
  row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
165
- const cells = right
166
- .map((columnId) => allCells.find((cell) => cell.column.id === columnId)!)
167
- .filter(Boolean)
168
- // Assign position property directly to preserve prototype chain
169
- cells.forEach((cell) => {
170
- cell.position = 'right'
171
- })
172
- return cells as any
249
+ if (!right.length) return [] as Array<Cell<TFeatures, TData, unknown>>
250
+ const allVisibleCells = callMemoOrStaticFn(
251
+ row,
252
+ 'getVisibleCellsByColumnId',
253
+ row_getVisibleCellsByColumnId,
254
+ )
255
+ const cells: Array<Cell<TFeatures, TData, unknown>> = []
256
+ for (let i = 0; i < right.length; i++) {
257
+ const columnId = right[i]!
258
+ const cell = allVisibleCells[columnId]
259
+ if (cell) {
260
+ // Assign position property directly to preserve prototype chain
261
+ cell.position = 'right'
262
+ cells.push(cell)
263
+ }
264
+ }
265
+ return cells
173
266
  }
174
267
 
175
268
  // Table APIs
176
269
 
270
+ /**
271
+ * Updates the table's column pinning state slice.
272
+ *
273
+ * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
274
+ *
275
+ * @example
276
+ * ```ts
277
+ * table_setColumnPinning(table, (old) => old)
278
+ * ```
279
+ */
177
280
  export function table_setColumnPinning<
178
281
  TFeatures extends TableFeatures,
179
282
  TData extends RowData,
@@ -184,6 +287,17 @@ export function table_setColumnPinning<
184
287
  table.options.onColumnPinningChange?.(updater)
185
288
  }
186
289
 
290
+ /**
291
+ * Resets the table's column pinning state slice.
292
+ *
293
+ * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
294
+ *
295
+ * @example
296
+ * ```ts
297
+ * table_resetColumnPinning(table)
298
+ * table_resetColumnPinning(table, true)
299
+ * ```
300
+ */
187
301
  export function table_resetColumnPinning<
188
302
  TFeatures extends TableFeatures,
189
303
  TData extends RowData,
@@ -198,6 +312,16 @@ export function table_resetColumnPinning<
198
312
  )
199
313
  }
200
314
 
315
+ /**
316
+ * Returns is some columns pinned for the table.
317
+ *
318
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
319
+ *
320
+ * @example
321
+ * ```ts
322
+ * const value = table_getIsSomeColumnsPinned(table)
323
+ * ```
324
+ */
201
325
  export function table_getIsSomeColumnsPinned<
202
326
  TFeatures extends TableFeatures,
203
327
  TData extends RowData,
@@ -212,46 +336,90 @@ export function table_getIsSomeColumnsPinned<
212
336
 
213
337
  // header groups
214
338
 
339
+ /**
340
+ * Returns left header groups for the table.
341
+ *
342
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
343
+ *
344
+ * @example
345
+ * ```ts
346
+ * const value = table_getLeftHeaderGroups(table)
347
+ * ```
348
+ */
215
349
  export function table_getLeftHeaderGroups<
216
350
  TFeatures extends TableFeatures,
217
351
  TData extends RowData,
218
352
  >(table: Table_Internal<TFeatures, TData>) {
219
353
  const allColumns = table.getAllColumns()
220
- const leafColumns = callMemoOrStaticFn(
221
- table,
222
- 'getVisibleLeafColumns',
223
- table_getVisibleLeafColumns,
224
- ) as Array<Column_Internal<TFeatures, TData, unknown>>
354
+ const leafColumnsById = table.getAllLeafColumnsById() as Record<
355
+ string,
356
+ Column_Internal<TFeatures, TData, unknown>
357
+ >
225
358
  const { left } =
226
359
  table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
227
360
 
228
- const orderedLeafColumns = left
229
- .map((columnId) => leafColumns.find((d) => d.id === columnId)!)
230
- .filter(Boolean)
361
+ const orderedLeafColumns: Array<Column_Internal<TFeatures, TData, unknown>> =
362
+ []
363
+ for (let i = 0; i < left.length; i++) {
364
+ const column = leafColumnsById[left[i]!]
365
+ if (
366
+ column &&
367
+ callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible)
368
+ ) {
369
+ orderedLeafColumns.push(column)
370
+ }
371
+ }
231
372
 
232
373
  return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'left')
233
374
  }
234
375
 
376
+ /**
377
+ * Returns right header groups for the table.
378
+ *
379
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
380
+ *
381
+ * @example
382
+ * ```ts
383
+ * const value = table_getRightHeaderGroups(table)
384
+ * ```
385
+ */
235
386
  export function table_getRightHeaderGroups<
236
387
  TFeatures extends TableFeatures,
237
388
  TData extends RowData,
238
389
  >(table: Table_Internal<TFeatures, TData>) {
239
390
  const allColumns = table.getAllColumns()
240
- const leafColumns = callMemoOrStaticFn(
241
- table,
242
- 'getVisibleLeafColumns',
243
- table_getVisibleLeafColumns,
244
- ) as unknown as Array<Column_Internal<TFeatures, TData, unknown>>
391
+ const leafColumnsById = table.getAllLeafColumnsById() as Record<
392
+ string,
393
+ Column_Internal<TFeatures, TData, unknown>
394
+ >
245
395
  const { right } =
246
396
  table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
247
397
 
248
- const orderedLeafColumns = right
249
- .map((columnId) => leafColumns.find((d) => d.id === columnId)!)
250
- .filter(Boolean)
398
+ const orderedLeafColumns: Array<Column_Internal<TFeatures, TData, unknown>> =
399
+ []
400
+ for (let i = 0; i < right.length; i++) {
401
+ const column = leafColumnsById[right[i]!]
402
+ if (
403
+ column &&
404
+ callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible)
405
+ ) {
406
+ orderedLeafColumns.push(column)
407
+ }
408
+ }
251
409
 
252
410
  return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'right')
253
411
  }
254
412
 
413
+ /**
414
+ * Returns center header groups for the table.
415
+ *
416
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
417
+ *
418
+ * @example
419
+ * ```ts
420
+ * const value = table_getCenterHeaderGroups(table)
421
+ * ```
422
+ */
255
423
  export function table_getCenterHeaderGroups<
256
424
  TFeatures extends TableFeatures,
257
425
  TData extends RowData,
@@ -276,6 +444,16 @@ export function table_getCenterHeaderGroups<
276
444
 
277
445
  // footer groups
278
446
 
447
+ /**
448
+ * Returns left footer groups for the table.
449
+ *
450
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
451
+ *
452
+ * @example
453
+ * ```ts
454
+ * const value = table_getLeftFooterGroups(table)
455
+ * ```
456
+ */
279
457
  export function table_getLeftFooterGroups<
280
458
  TFeatures extends TableFeatures,
281
459
  TData extends RowData,
@@ -288,6 +466,16 @@ export function table_getLeftFooterGroups<
288
466
  return [...headerGroups].reverse()
289
467
  }
290
468
 
469
+ /**
470
+ * Returns right footer groups for the table.
471
+ *
472
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
473
+ *
474
+ * @example
475
+ * ```ts
476
+ * const value = table_getRightFooterGroups(table)
477
+ * ```
478
+ */
291
479
  export function table_getRightFooterGroups<
292
480
  TFeatures extends TableFeatures,
293
481
  TData extends RowData,
@@ -300,6 +488,16 @@ export function table_getRightFooterGroups<
300
488
  return [...headerGroups].reverse()
301
489
  }
302
490
 
491
+ /**
492
+ * Returns center footer groups for the table.
493
+ *
494
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
495
+ *
496
+ * @example
497
+ * ```ts
498
+ * const value = table_getCenterFooterGroups(table)
499
+ * ```
500
+ */
303
501
  export function table_getCenterFooterGroups<
304
502
  TFeatures extends TableFeatures,
305
503
  TData extends RowData,
@@ -314,6 +512,16 @@ export function table_getCenterFooterGroups<
314
512
 
315
513
  // flat headers
316
514
 
515
+ /**
516
+ * Returns left flat headers for the table.
517
+ *
518
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
519
+ *
520
+ * @example
521
+ * ```ts
522
+ * const value = table_getLeftFlatHeaders(table)
523
+ * ```
524
+ */
317
525
  export function table_getLeftFlatHeaders<
318
526
  TFeatures extends TableFeatures,
319
527
  TData extends RowData,
@@ -323,13 +531,26 @@ export function table_getLeftFlatHeaders<
323
531
  'getLeftHeaderGroups',
324
532
  table_getLeftHeaderGroups,
325
533
  )
326
- return leftHeaderGroups
327
- .map((headerGroup) => {
328
- return headerGroup.headers
329
- })
330
- .flat()
534
+ const result: Array<Header<TFeatures, TData, unknown>> = []
535
+ for (let i = 0; i < leftHeaderGroups.length; i++) {
536
+ const headers = leftHeaderGroups[i]!.headers
537
+ for (let j = 0; j < headers.length; j++) {
538
+ result.push(headers[j])
539
+ }
540
+ }
541
+ return result
331
542
  }
332
543
 
544
+ /**
545
+ * Returns right flat headers for the table.
546
+ *
547
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
548
+ *
549
+ * @example
550
+ * ```ts
551
+ * const value = table_getRightFlatHeaders(table)
552
+ * ```
553
+ */
333
554
  export function table_getRightFlatHeaders<
334
555
  TFeatures extends TableFeatures,
335
556
  TData extends RowData,
@@ -339,13 +560,26 @@ export function table_getRightFlatHeaders<
339
560
  'getRightHeaderGroups',
340
561
  table_getRightHeaderGroups,
341
562
  )
342
- return rightHeaderGroups
343
- .map((headerGroup) => {
344
- return headerGroup.headers
345
- })
346
- .flat()
563
+ const result: Array<Header<TFeatures, TData, unknown>> = []
564
+ for (let i = 0; i < rightHeaderGroups.length; i++) {
565
+ const headers = rightHeaderGroups[i]!.headers
566
+ for (let j = 0; j < headers.length; j++) {
567
+ result.push(headers[j])
568
+ }
569
+ }
570
+ return result
347
571
  }
348
572
 
573
+ /**
574
+ * Returns center flat headers for the table.
575
+ *
576
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
577
+ *
578
+ * @example
579
+ * ```ts
580
+ * const value = table_getCenterFlatHeaders(table)
581
+ * ```
582
+ */
349
583
  export function table_getCenterFlatHeaders<
350
584
  TFeatures extends TableFeatures,
351
585
  TData extends RowData,
@@ -355,15 +589,28 @@ export function table_getCenterFlatHeaders<
355
589
  'getCenterHeaderGroups',
356
590
  table_getCenterHeaderGroups,
357
591
  )
358
- return centerHeaderGroups
359
- .map((headerGroup) => {
360
- return headerGroup.headers
361
- })
362
- .flat()
592
+ const result: Array<Header<TFeatures, TData, unknown>> = []
593
+ for (let i = 0; i < centerHeaderGroups.length; i++) {
594
+ const headers = centerHeaderGroups[i]!.headers
595
+ for (let j = 0; j < headers.length; j++) {
596
+ result.push(headers[j])
597
+ }
598
+ }
599
+ return result
363
600
  }
364
601
 
365
602
  // leaf headers
366
603
 
604
+ /**
605
+ * Returns left leaf headers for the table.
606
+ *
607
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
608
+ *
609
+ * @example
610
+ * ```ts
611
+ * const value = table_getLeftLeafHeaders(table)
612
+ * ```
613
+ */
367
614
  export function table_getLeftLeafHeaders<
368
615
  TFeatures extends TableFeatures,
369
616
  TData extends RowData,
@@ -375,6 +622,16 @@ export function table_getLeftLeafHeaders<
375
622
  ).filter((header) => !header.subHeaders.length)
376
623
  }
377
624
 
625
+ /**
626
+ * Returns right leaf headers for the table.
627
+ *
628
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
629
+ *
630
+ * @example
631
+ * ```ts
632
+ * const value = table_getRightLeafHeaders(table)
633
+ * ```
634
+ */
378
635
  export function table_getRightLeafHeaders<
379
636
  TFeatures extends TableFeatures,
380
637
  TData extends RowData,
@@ -386,6 +643,16 @@ export function table_getRightLeafHeaders<
386
643
  ).filter((header) => !header.subHeaders.length)
387
644
  }
388
645
 
646
+ /**
647
+ * Returns center leaf headers for the table.
648
+ *
649
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
650
+ *
651
+ * @example
652
+ * ```ts
653
+ * const value = table_getCenterLeafHeaders(table)
654
+ * ```
655
+ */
389
656
  export function table_getCenterLeafHeaders<
390
657
  TFeatures extends TableFeatures,
391
658
  TData extends RowData,
@@ -399,34 +666,66 @@ export function table_getCenterLeafHeaders<
399
666
 
400
667
  // leaf columns
401
668
 
669
+ /**
670
+ * Returns left leaf columns for the table.
671
+ *
672
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
673
+ *
674
+ * @example
675
+ * ```ts
676
+ * const value = table_getLeftLeafColumns(table)
677
+ * ```
678
+ */
402
679
  export function table_getLeftLeafColumns<
403
680
  TFeatures extends TableFeatures,
404
681
  TData extends RowData,
405
682
  >(table: Table_Internal<TFeatures, TData>) {
406
683
  const { left } =
407
684
  table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
408
- return left
409
- .map(
410
- (columnId) =>
411
- table.getAllLeafColumns().find((column) => column.id === columnId)!,
412
- )
413
- .filter(Boolean)
685
+ const leafColumnsById = table.getAllLeafColumnsById()
686
+ const result: Array<Column_Internal<TFeatures, TData, unknown>> = []
687
+ for (let i = 0; i < left.length; i++) {
688
+ const column = leafColumnsById[left[i]!]
689
+ if (column) result.push(column)
690
+ }
691
+ return result
414
692
  }
415
693
 
694
+ /**
695
+ * Returns right leaf columns for the table.
696
+ *
697
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
698
+ *
699
+ * @example
700
+ * ```ts
701
+ * const value = table_getRightLeafColumns(table)
702
+ * ```
703
+ */
416
704
  export function table_getRightLeafColumns<
417
705
  TFeatures extends TableFeatures,
418
706
  TData extends RowData,
419
707
  >(table: Table_Internal<TFeatures, TData>) {
420
708
  const { right } =
421
709
  table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
422
- return right
423
- .map(
424
- (columnId) =>
425
- table.getAllLeafColumns().find((column) => column.id === columnId)!,
426
- )
427
- .filter(Boolean)
710
+ const leafColumnsById = table.getAllLeafColumnsById()
711
+ const result: Array<Column_Internal<TFeatures, TData, unknown>> = []
712
+ for (let i = 0; i < right.length; i++) {
713
+ const column = leafColumnsById[right[i]!]
714
+ if (column) result.push(column)
715
+ }
716
+ return result
428
717
  }
429
718
 
719
+ /**
720
+ * Returns center leaf columns for the table.
721
+ *
722
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
723
+ *
724
+ * @example
725
+ * ```ts
726
+ * const value = table_getCenterLeafColumns(table)
727
+ * ```
728
+ */
430
729
  export function table_getCenterLeafColumns<
431
730
  TFeatures extends TableFeatures,
432
731
  TData extends RowData,
@@ -437,6 +736,16 @@ export function table_getCenterLeafColumns<
437
736
  return table.getAllLeafColumns().filter((d) => !leftAndRight.includes(d.id))
438
737
  }
439
738
 
739
+ /**
740
+ * Returns pinned leaf columns for the table.
741
+ *
742
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
743
+ *
744
+ * @example
745
+ * ```ts
746
+ * const value = table_getPinnedLeafColumns(table)
747
+ * ```
748
+ */
440
749
  export function table_getPinnedLeafColumns<
441
750
  TFeatures extends TableFeatures,
442
751
  TData extends RowData,
@@ -467,6 +776,16 @@ export function table_getPinnedLeafColumns<
467
776
 
468
777
  // visible leaf columns
469
778
 
779
+ /**
780
+ * Returns left visible leaf columns for the table.
781
+ *
782
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
783
+ *
784
+ * @example
785
+ * ```ts
786
+ * const value = table_getLeftVisibleLeafColumns(table)
787
+ * ```
788
+ */
470
789
  export function table_getLeftVisibleLeafColumns<
471
790
  TFeatures extends TableFeatures,
472
791
  TData extends RowData,
@@ -480,6 +799,16 @@ export function table_getLeftVisibleLeafColumns<
480
799
  )
481
800
  }
482
801
 
802
+ /**
803
+ * Returns right visible leaf columns for the table.
804
+ *
805
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
806
+ *
807
+ * @example
808
+ * ```ts
809
+ * const value = table_getRightVisibleLeafColumns(table)
810
+ * ```
811
+ */
483
812
  export function table_getRightVisibleLeafColumns<
484
813
  TFeatures extends TableFeatures,
485
814
  TData extends RowData,
@@ -493,6 +822,16 @@ export function table_getRightVisibleLeafColumns<
493
822
  )
494
823
  }
495
824
 
825
+ /**
826
+ * Returns center visible leaf columns for the table.
827
+ *
828
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
829
+ *
830
+ * @example
831
+ * ```ts
832
+ * const value = table_getCenterVisibleLeafColumns(table)
833
+ * ```
834
+ */
496
835
  export function table_getCenterVisibleLeafColumns<
497
836
  TFeatures extends TableFeatures,
498
837
  TData extends RowData,
@@ -506,6 +845,16 @@ export function table_getCenterVisibleLeafColumns<
506
845
  )
507
846
  }
508
847
 
848
+ /**
849
+ * Returns pinned visible leaf columns for the table.
850
+ *
851
+ * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
852
+ *
853
+ * @example
854
+ * ```ts
855
+ * const value = table_getPinnedVisibleLeafColumns(table)
856
+ * ```
857
+ */
509
858
  export function table_getPinnedVisibleLeafColumns<
510
859
  TFeatures extends TableFeatures,
511
860
  TData extends RowData,