@tanstack/table-core 9.0.0-beta.2 → 9.0.0-beta.20

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 (524) hide show
  1. package/dist/core/cells/constructCell.d.cts +3 -3
  2. package/dist/core/cells/constructCell.d.ts +3 -3
  3. package/dist/core/cells/coreCellsFeature.cjs +11 -20
  4. package/dist/core/cells/coreCellsFeature.cjs.map +1 -1
  5. package/dist/core/cells/coreCellsFeature.d.cts +4 -12
  6. package/dist/core/cells/coreCellsFeature.d.ts +4 -12
  7. package/dist/core/cells/coreCellsFeature.js +12 -20
  8. package/dist/core/cells/coreCellsFeature.js.map +1 -1
  9. package/dist/core/cells/coreCellsFeature.types.d.cts +6 -6
  10. package/dist/core/cells/coreCellsFeature.types.d.ts +6 -6
  11. package/dist/core/cells/coreCellsFeature.utils.d.cts +3 -3
  12. package/dist/core/cells/coreCellsFeature.utils.d.ts +3 -3
  13. package/dist/core/columns/constructColumn.cjs +5 -0
  14. package/dist/core/columns/constructColumn.cjs.map +1 -1
  15. package/dist/core/columns/constructColumn.d.cts +3 -3
  16. package/dist/core/columns/constructColumn.d.ts +3 -3
  17. package/dist/core/columns/constructColumn.js +5 -0
  18. package/dist/core/columns/constructColumn.js.map +1 -1
  19. package/dist/core/columns/coreColumnsFeature.cjs +59 -68
  20. package/dist/core/columns/coreColumnsFeature.cjs.map +1 -1
  21. package/dist/core/columns/coreColumnsFeature.d.cts +4 -12
  22. package/dist/core/columns/coreColumnsFeature.d.ts +4 -12
  23. package/dist/core/columns/coreColumnsFeature.js +60 -68
  24. package/dist/core/columns/coreColumnsFeature.js.map +1 -1
  25. package/dist/core/columns/coreColumnsFeature.types.d.cts +7 -7
  26. package/dist/core/columns/coreColumnsFeature.types.d.ts +7 -7
  27. package/dist/core/columns/coreColumnsFeature.utils.cjs +2 -2
  28. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -1
  29. package/dist/core/columns/coreColumnsFeature.utils.d.cts +9 -9
  30. package/dist/core/columns/coreColumnsFeature.utils.d.ts +9 -9
  31. package/dist/core/columns/coreColumnsFeature.utils.js +3 -3
  32. package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -1
  33. package/dist/core/coreFeatures.cjs.map +1 -1
  34. package/dist/core/coreFeatures.d.cts +1 -1
  35. package/dist/core/coreFeatures.d.ts +1 -1
  36. package/dist/core/coreFeatures.js.map +1 -1
  37. package/dist/core/headers/buildHeaderGroups.cjs.map +1 -1
  38. package/dist/core/headers/buildHeaderGroups.d.cts +2 -2
  39. package/dist/core/headers/buildHeaderGroups.d.ts +2 -2
  40. package/dist/core/headers/buildHeaderGroups.js.map +1 -1
  41. package/dist/core/headers/constructHeader.d.cts +2 -2
  42. package/dist/core/headers/constructHeader.d.ts +2 -2
  43. package/dist/core/headers/coreHeadersFeature.cjs +44 -53
  44. package/dist/core/headers/coreHeadersFeature.cjs.map +1 -1
  45. package/dist/core/headers/coreHeadersFeature.d.cts +4 -12
  46. package/dist/core/headers/coreHeadersFeature.d.ts +4 -12
  47. package/dist/core/headers/coreHeadersFeature.js +45 -53
  48. package/dist/core/headers/coreHeadersFeature.js.map +1 -1
  49. package/dist/core/headers/coreHeadersFeature.types.d.cts +6 -6
  50. package/dist/core/headers/coreHeadersFeature.types.d.ts +6 -6
  51. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
  52. package/dist/core/headers/coreHeadersFeature.utils.d.cts +6 -6
  53. package/dist/core/headers/coreHeadersFeature.utils.d.ts +6 -6
  54. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
  55. package/dist/core/row-models/coreRowModelsFeature.cjs +17 -26
  56. package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -1
  57. package/dist/core/row-models/coreRowModelsFeature.d.cts +4 -12
  58. package/dist/core/row-models/coreRowModelsFeature.d.ts +4 -12
  59. package/dist/core/row-models/coreRowModelsFeature.js +18 -26
  60. package/dist/core/row-models/coreRowModelsFeature.js.map +1 -1
  61. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +6 -16
  62. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +6 -16
  63. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +13 -13
  64. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -1
  65. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +14 -14
  66. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +14 -14
  67. package/dist/core/row-models/coreRowModelsFeature.utils.js +13 -13
  68. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -1
  69. package/dist/core/row-models/createCoreRowModel.cjs +2 -3
  70. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -1
  71. package/dist/core/row-models/createCoreRowModel.d.cts +1 -1
  72. package/dist/core/row-models/createCoreRowModel.d.ts +1 -1
  73. package/dist/core/row-models/createCoreRowModel.js +3 -4
  74. package/dist/core/row-models/createCoreRowModel.js.map +1 -1
  75. package/dist/core/rows/constructRow.cjs +3 -2
  76. package/dist/core/rows/constructRow.cjs.map +1 -1
  77. package/dist/core/rows/constructRow.d.cts +2 -2
  78. package/dist/core/rows/constructRow.d.ts +2 -2
  79. package/dist/core/rows/constructRow.js +4 -2
  80. package/dist/core/rows/constructRow.js.map +1 -1
  81. package/dist/core/rows/coreRowsFeature.cjs +27 -36
  82. package/dist/core/rows/coreRowsFeature.cjs.map +1 -1
  83. package/dist/core/rows/coreRowsFeature.d.cts +4 -12
  84. package/dist/core/rows/coreRowsFeature.d.ts +4 -12
  85. package/dist/core/rows/coreRowsFeature.js +28 -36
  86. package/dist/core/rows/coreRowsFeature.js.map +1 -1
  87. package/dist/core/rows/coreRowsFeature.types.d.cts +6 -6
  88. package/dist/core/rows/coreRowsFeature.types.d.ts +6 -6
  89. package/dist/core/rows/coreRowsFeature.utils.cjs +3 -3
  90. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -1
  91. package/dist/core/rows/coreRowsFeature.utils.d.cts +3 -3
  92. package/dist/core/rows/coreRowsFeature.utils.d.ts +3 -3
  93. package/dist/core/rows/coreRowsFeature.utils.js +4 -4
  94. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -1
  95. package/dist/core/table/constructTable.cjs +21 -6
  96. package/dist/core/table/constructTable.cjs.map +1 -1
  97. package/dist/core/table/constructTable.d.cts +1 -1
  98. package/dist/core/table/constructTable.d.ts +1 -1
  99. package/dist/core/table/constructTable.js +21 -6
  100. package/dist/core/table/constructTable.js.map +1 -1
  101. package/dist/core/table/coreTablesFeature.cjs +7 -16
  102. package/dist/core/table/coreTablesFeature.cjs.map +1 -1
  103. package/dist/core/table/coreTablesFeature.d.cts +4 -12
  104. package/dist/core/table/coreTablesFeature.d.ts +4 -12
  105. package/dist/core/table/coreTablesFeature.js +8 -16
  106. package/dist/core/table/coreTablesFeature.js.map +1 -1
  107. package/dist/core/table/coreTablesFeature.types.d.cts +28 -16
  108. package/dist/core/table/coreTablesFeature.types.d.ts +28 -16
  109. package/dist/core/table/coreTablesFeature.utils.cjs +33 -12
  110. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
  111. package/dist/core/table/coreTablesFeature.utils.d.cts +8 -6
  112. package/dist/core/table/coreTablesFeature.utils.d.ts +8 -6
  113. package/dist/core/table/coreTablesFeature.utils.js +33 -12
  114. package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
  115. package/dist/features/column-faceting/columnFacetingFeature.cjs +49 -61
  116. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -1
  117. package/dist/features/column-faceting/columnFacetingFeature.d.cts +4 -15
  118. package/dist/features/column-faceting/columnFacetingFeature.d.ts +4 -15
  119. package/dist/features/column-faceting/columnFacetingFeature.js +50 -61
  120. package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -1
  121. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +8 -29
  122. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +8 -29
  123. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +12 -12
  124. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
  125. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +8 -8
  126. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +8 -8
  127. package/dist/features/column-faceting/columnFacetingFeature.utils.js +12 -12
  128. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
  129. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -1
  130. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +1 -1
  131. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +1 -1
  132. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -1
  133. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -1
  134. package/dist/features/column-faceting/createFacetedRowModel.d.cts +1 -1
  135. package/dist/features/column-faceting/createFacetedRowModel.d.ts +1 -1
  136. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -1
  137. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -1
  138. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +1 -1
  139. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +1 -1
  140. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -1
  141. package/dist/features/column-filtering/columnFilteringFeature.cjs +40 -53
  142. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -1
  143. package/dist/features/column-filtering/columnFilteringFeature.d.cts +4 -16
  144. package/dist/features/column-filtering/columnFilteringFeature.d.ts +4 -16
  145. package/dist/features/column-filtering/columnFilteringFeature.js +42 -54
  146. package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -1
  147. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +40 -26
  148. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +40 -26
  149. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +1 -1
  150. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
  151. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +12 -12
  152. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +12 -12
  153. package/dist/features/column-filtering/columnFilteringFeature.utils.js +1 -1
  154. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
  155. package/dist/features/column-filtering/createFilteredRowModel.cjs +12 -7
  156. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -1
  157. package/dist/features/column-filtering/createFilteredRowModel.d.cts +5 -3
  158. package/dist/features/column-filtering/createFilteredRowModel.d.ts +5 -3
  159. package/dist/features/column-filtering/createFilteredRowModel.js +13 -8
  160. package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -1
  161. package/dist/features/column-filtering/filterRowsUtils.cjs +3 -2
  162. package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -1
  163. package/dist/features/column-filtering/filterRowsUtils.js +3 -2
  164. package/dist/features/column-filtering/filterRowsUtils.js.map +1 -1
  165. package/dist/features/column-grouping/columnGroupingFeature.cjs +57 -69
  166. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -1
  167. package/dist/features/column-grouping/columnGroupingFeature.d.cts +4 -15
  168. package/dist/features/column-grouping/columnGroupingFeature.d.ts +4 -15
  169. package/dist/features/column-grouping/columnGroupingFeature.js +59 -70
  170. package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -1
  171. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +23 -19
  172. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +23 -19
  173. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +3 -3
  174. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -1
  175. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +11 -11
  176. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +11 -11
  177. package/dist/features/column-grouping/columnGroupingFeature.utils.js +4 -4
  178. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -1
  179. package/dist/features/column-grouping/createGroupedRowModel.cjs +9 -7
  180. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -1
  181. package/dist/features/column-grouping/createGroupedRowModel.d.cts +6 -3
  182. package/dist/features/column-grouping/createGroupedRowModel.d.ts +6 -3
  183. package/dist/features/column-grouping/createGroupedRowModel.js +10 -8
  184. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -1
  185. package/dist/features/column-ordering/columnOrderingFeature.cjs +47 -59
  186. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
  187. package/dist/features/column-ordering/columnOrderingFeature.d.cts +4 -15
  188. package/dist/features/column-ordering/columnOrderingFeature.d.ts +4 -15
  189. package/dist/features/column-ordering/columnOrderingFeature.js +48 -59
  190. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
  191. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +1 -1
  192. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +1 -1
  193. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +9 -9
  194. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +9 -9
  195. package/dist/features/column-pinning/columnPinningFeature.cjs +209 -221
  196. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
  197. package/dist/features/column-pinning/columnPinningFeature.d.cts +4 -15
  198. package/dist/features/column-pinning/columnPinningFeature.d.ts +4 -15
  199. package/dist/features/column-pinning/columnPinningFeature.js +210 -221
  200. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
  201. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +2 -2
  202. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +2 -2
  203. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
  204. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +31 -30
  205. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +31 -30
  206. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
  207. package/dist/features/column-resizing/columnResizingFeature.cjs +31 -43
  208. package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -1
  209. package/dist/features/column-resizing/columnResizingFeature.d.cts +4 -15
  210. package/dist/features/column-resizing/columnResizingFeature.d.ts +4 -15
  211. package/dist/features/column-resizing/columnResizingFeature.js +32 -43
  212. package/dist/features/column-resizing/columnResizingFeature.js.map +1 -1
  213. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +1 -4
  214. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +1 -4
  215. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +2 -5
  216. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
  217. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +6 -6
  218. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +6 -6
  219. package/dist/features/column-resizing/columnResizingFeature.utils.js +3 -6
  220. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
  221. package/dist/features/column-sizing/columnSizingFeature.cjs +112 -125
  222. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
  223. package/dist/features/column-sizing/columnSizingFeature.d.cts +4 -16
  224. package/dist/features/column-sizing/columnSizingFeature.d.ts +4 -16
  225. package/dist/features/column-sizing/columnSizingFeature.js +113 -125
  226. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
  227. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +11 -4
  228. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
  229. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +12 -12
  230. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +12 -12
  231. package/dist/features/column-sizing/columnSizingFeature.utils.js +12 -5
  232. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
  233. package/dist/features/column-visibility/columnVisibilityFeature.cjs +83 -95
  234. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
  235. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +4 -15
  236. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +4 -15
  237. package/dist/features/column-visibility/columnVisibilityFeature.js +84 -95
  238. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
  239. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +2 -2
  240. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +2 -2
  241. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +12 -9
  242. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
  243. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +14 -14
  244. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +14 -14
  245. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +13 -10
  246. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
  247. package/dist/features/global-filtering/globalFilteringFeature.cjs +31 -43
  248. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -1
  249. package/dist/features/global-filtering/globalFilteringFeature.d.cts +4 -15
  250. package/dist/features/global-filtering/globalFilteringFeature.d.ts +4 -15
  251. package/dist/features/global-filtering/globalFilteringFeature.js +32 -43
  252. package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -1
  253. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +2 -2
  254. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +2 -2
  255. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
  256. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +10 -8
  257. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -8
  258. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
  259. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -1
  260. package/dist/features/row-expanding/createExpandedRowModel.d.cts +1 -1
  261. package/dist/features/row-expanding/createExpandedRowModel.d.ts +1 -1
  262. package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -1
  263. package/dist/features/row-expanding/rowExpandingFeature.cjs +37 -49
  264. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -1
  265. package/dist/features/row-expanding/rowExpandingFeature.d.cts +4 -15
  266. package/dist/features/row-expanding/rowExpandingFeature.d.ts +4 -15
  267. package/dist/features/row-expanding/rowExpandingFeature.js +38 -49
  268. package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -1
  269. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +5 -14
  270. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +5 -14
  271. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +21 -12
  272. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -1
  273. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +10 -10
  274. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +10 -10
  275. package/dist/features/row-expanding/rowExpandingFeature.utils.js +22 -13
  276. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -1
  277. package/dist/features/row-pagination/createPaginatedRowModel.cjs +1 -1
  278. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -1
  279. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +1 -1
  280. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +1 -1
  281. package/dist/features/row-pagination/createPaginatedRowModel.js +1 -1
  282. package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -1
  283. package/dist/features/row-pagination/rowPaginationFeature.cjs +35 -47
  284. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -1
  285. package/dist/features/row-pagination/rowPaginationFeature.d.cts +4 -15
  286. package/dist/features/row-pagination/rowPaginationFeature.d.ts +4 -15
  287. package/dist/features/row-pagination/rowPaginationFeature.js +36 -47
  288. package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -1
  289. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +4 -13
  290. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +4 -13
  291. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +17 -17
  292. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +17 -17
  293. package/dist/features/row-pinning/rowPinningFeature.cjs +55 -67
  294. package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -1
  295. package/dist/features/row-pinning/rowPinningFeature.d.cts +4 -15
  296. package/dist/features/row-pinning/rowPinningFeature.d.ts +4 -15
  297. package/dist/features/row-pinning/rowPinningFeature.js +56 -67
  298. package/dist/features/row-pinning/rowPinningFeature.js.map +1 -1
  299. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +2 -2
  300. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +2 -2
  301. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +2 -2
  302. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -1
  303. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +7 -7
  304. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +7 -7
  305. package/dist/features/row-pinning/rowPinningFeature.utils.js +2 -2
  306. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -1
  307. package/dist/features/row-selection/rowSelectionFeature.cjs +108 -77
  308. package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -1
  309. package/dist/features/row-selection/rowSelectionFeature.d.cts +4 -15
  310. package/dist/features/row-selection/rowSelectionFeature.d.ts +4 -15
  311. package/dist/features/row-selection/rowSelectionFeature.js +110 -78
  312. package/dist/features/row-selection/rowSelectionFeature.js.map +1 -1
  313. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +13 -5
  314. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +13 -5
  315. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +76 -60
  316. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
  317. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +48 -23
  318. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +48 -23
  319. package/dist/features/row-selection/rowSelectionFeature.utils.js +77 -62
  320. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
  321. package/dist/features/row-sorting/createSortedRowModel.cjs +5 -3
  322. package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -1
  323. package/dist/features/row-sorting/createSortedRowModel.d.cts +5 -3
  324. package/dist/features/row-sorting/createSortedRowModel.d.ts +5 -3
  325. package/dist/features/row-sorting/createSortedRowModel.js +6 -4
  326. package/dist/features/row-sorting/createSortedRowModel.js.map +1 -1
  327. package/dist/features/row-sorting/rowSortingFeature.cjs +45 -57
  328. package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -1
  329. package/dist/features/row-sorting/rowSortingFeature.d.cts +4 -15
  330. package/dist/features/row-sorting/rowSortingFeature.d.ts +4 -15
  331. package/dist/features/row-sorting/rowSortingFeature.js +46 -57
  332. package/dist/features/row-sorting/rowSortingFeature.js.map +1 -1
  333. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +24 -21
  334. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +24 -21
  335. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +8 -5
  336. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
  337. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +16 -16
  338. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +16 -16
  339. package/dist/features/row-sorting/rowSortingFeature.utils.js +8 -5
  340. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
  341. package/dist/fns/aggregationFns.cjs +18 -18
  342. package/dist/fns/aggregationFns.cjs.map +1 -1
  343. package/dist/fns/aggregationFns.d.cts +21 -19
  344. package/dist/fns/aggregationFns.d.ts +21 -19
  345. package/dist/fns/aggregationFns.js +18 -18
  346. package/dist/fns/aggregationFns.js.map +1 -1
  347. package/dist/fns/filterFns.cjs +51 -65
  348. package/dist/fns/filterFns.cjs.map +1 -1
  349. package/dist/fns/filterFns.d.cts +82 -28
  350. package/dist/fns/filterFns.d.ts +82 -28
  351. package/dist/fns/filterFns.js +51 -65
  352. package/dist/fns/filterFns.js.map +1 -1
  353. package/dist/fns/sortFns.cjs +18 -6
  354. package/dist/fns/sortFns.cjs.map +1 -1
  355. package/dist/fns/sortFns.d.cts +15 -13
  356. package/dist/fns/sortFns.d.ts +15 -13
  357. package/dist/fns/sortFns.js +18 -6
  358. package/dist/fns/sortFns.js.map +1 -1
  359. package/dist/helpers/columnHelper.cjs.map +1 -1
  360. package/dist/helpers/columnHelper.d.cts +2 -2
  361. package/dist/helpers/columnHelper.d.ts +2 -2
  362. package/dist/helpers/columnHelper.js.map +1 -1
  363. package/dist/helpers/metaHelper.cjs +30 -0
  364. package/dist/helpers/metaHelper.cjs.map +1 -0
  365. package/dist/helpers/metaHelper.d.cts +26 -0
  366. package/dist/helpers/metaHelper.d.ts +26 -0
  367. package/dist/helpers/metaHelper.js +29 -0
  368. package/dist/helpers/metaHelper.js.map +1 -0
  369. package/dist/helpers/tableFeatures.cjs +31 -3
  370. package/dist/helpers/tableFeatures.cjs.map +1 -1
  371. package/dist/helpers/tableFeatures.d.cts +33 -5
  372. package/dist/helpers/tableFeatures.d.ts +33 -5
  373. package/dist/helpers/tableFeatures.js +31 -3
  374. package/dist/helpers/tableFeatures.js.map +1 -1
  375. package/dist/index.cjs +4 -20
  376. package/dist/index.d.cts +50 -49
  377. package/dist/index.d.ts +50 -49
  378. package/dist/index.js +23 -22
  379. package/dist/static-functions.cjs +1 -0
  380. package/dist/static-functions.d.cts +2 -2
  381. package/dist/static-functions.d.ts +2 -2
  382. package/dist/static-functions.js +2 -2
  383. package/dist/store-reactivity-bindings.cjs +1 -1
  384. package/dist/store-reactivity-bindings.cjs.map +1 -1
  385. package/dist/store-reactivity-bindings.d.cts +1 -1
  386. package/dist/store-reactivity-bindings.d.ts +1 -1
  387. package/dist/store-reactivity-bindings.js +1 -1
  388. package/dist/store-reactivity-bindings.js.map +1 -1
  389. package/dist/types/Cell.d.cts +4 -9
  390. package/dist/types/Cell.d.ts +4 -9
  391. package/dist/types/Column.d.cts +11 -18
  392. package/dist/types/Column.d.ts +11 -18
  393. package/dist/types/ColumnDef.d.cts +23 -14
  394. package/dist/types/ColumnDef.d.ts +23 -14
  395. package/dist/types/Header.d.cts +5 -10
  396. package/dist/types/Header.d.ts +5 -10
  397. package/dist/types/HeaderGroup.d.cts +4 -9
  398. package/dist/types/HeaderGroup.d.ts +4 -9
  399. package/dist/types/Row.d.cts +7 -12
  400. package/dist/types/Row.d.ts +7 -12
  401. package/dist/types/RowModel.d.cts +12 -28
  402. package/dist/types/RowModel.d.ts +12 -28
  403. package/dist/types/RowModelFns.d.cts +6 -11
  404. package/dist/types/RowModelFns.d.ts +6 -11
  405. package/dist/types/Table.d.cts +26 -36
  406. package/dist/types/Table.d.ts +26 -36
  407. package/dist/types/TableFeatures.d.cts +328 -54
  408. package/dist/types/TableFeatures.d.ts +328 -54
  409. package/dist/types/TableOptions.d.cts +22 -17
  410. package/dist/types/TableOptions.d.ts +22 -17
  411. package/dist/types/TableState.d.cts +11 -16
  412. package/dist/types/TableState.d.ts +11 -16
  413. package/dist/utils.cjs +24 -2
  414. package/dist/utils.cjs.map +1 -1
  415. package/dist/utils.d.cts +23 -7
  416. package/dist/utils.d.ts +23 -7
  417. package/dist/utils.js +23 -3
  418. package/dist/utils.js.map +1 -1
  419. package/package.json +2 -2
  420. package/skills/column-definitions/SKILL.md +3 -6
  421. package/skills/column-layout/SKILL.md +0 -2
  422. package/skills/customizing-feature-behavior/SKILL.md +63 -56
  423. package/skills/filtering/SKILL.md +60 -42
  424. package/skills/filtering/references/faceting-and-fuzzy.md +59 -32
  425. package/skills/grouping/SKILL.md +49 -54
  426. package/skills/migrate-v8-to-v9/SKILL.md +30 -33
  427. package/skills/pagination/SKILL.md +22 -20
  428. package/skills/row-expanding/SKILL.md +33 -25
  429. package/skills/row-pinning/SKILL.md +11 -7
  430. package/skills/row-selection/SKILL.md +0 -3
  431. package/skills/setup/SKILL.md +55 -65
  432. package/skills/sorting/SKILL.md +21 -21
  433. package/skills/state-management/SKILL.md +40 -25
  434. package/src/core/cells/coreCellsFeature.ts +17 -39
  435. package/src/core/cells/coreCellsFeature.types.ts +6 -6
  436. package/src/core/columns/constructColumn.ts +6 -0
  437. package/src/core/columns/coreColumnsFeature.ts +56 -83
  438. package/src/core/columns/coreColumnsFeature.types.ts +8 -8
  439. package/src/core/columns/coreColumnsFeature.utils.ts +4 -4
  440. package/src/core/coreFeatures.ts +1 -1
  441. package/src/core/headers/buildHeaderGroups.ts +4 -2
  442. package/src/core/headers/coreHeadersFeature.ts +42 -64
  443. package/src/core/headers/coreHeadersFeature.types.ts +12 -12
  444. package/src/core/headers/coreHeadersFeature.utils.ts +1 -1
  445. package/src/core/row-models/coreRowModelsFeature.ts +43 -64
  446. package/src/core/row-models/coreRowModelsFeature.types.ts +7 -24
  447. package/src/core/row-models/coreRowModelsFeature.utils.ts +7 -7
  448. package/src/core/row-models/createCoreRowModel.ts +7 -6
  449. package/src/core/rows/constructRow.ts +3 -2
  450. package/src/core/rows/coreRowsFeature.ts +45 -72
  451. package/src/core/rows/coreRowsFeature.types.ts +8 -8
  452. package/src/core/rows/coreRowsFeature.utils.ts +4 -4
  453. package/src/core/table/constructTable.ts +50 -13
  454. package/src/core/table/coreTablesFeature.ts +13 -35
  455. package/src/core/table/coreTablesFeature.types.ts +40 -17
  456. package/src/core/table/coreTablesFeature.utils.ts +52 -18
  457. package/src/features/column-faceting/columnFacetingFeature.ts +71 -102
  458. package/src/features/column-faceting/columnFacetingFeature.types.ts +11 -44
  459. package/src/features/column-faceting/columnFacetingFeature.utils.ts +6 -6
  460. package/src/features/column-faceting/createFacetedMinMaxValues.ts +1 -1
  461. package/src/features/column-faceting/createFacetedRowModel.ts +1 -1
  462. package/src/features/column-faceting/createFacetedUniqueValues.ts +1 -1
  463. package/src/features/column-filtering/columnFilteringFeature.ts +61 -103
  464. package/src/features/column-filtering/columnFilteringFeature.types.ts +55 -39
  465. package/src/features/column-filtering/columnFilteringFeature.utils.ts +2 -2
  466. package/src/features/column-filtering/createFilteredRowModel.ts +18 -17
  467. package/src/features/column-filtering/filterRowsUtils.ts +3 -2
  468. package/src/features/column-grouping/columnGroupingFeature.ts +83 -126
  469. package/src/features/column-grouping/columnGroupingFeature.types.ts +32 -31
  470. package/src/features/column-grouping/columnGroupingFeature.utils.ts +2 -2
  471. package/src/features/column-grouping/createGroupedRowModel.ts +17 -16
  472. package/src/features/column-ordering/columnOrderingFeature.ts +52 -84
  473. package/src/features/column-ordering/columnOrderingFeature.types.ts +2 -2
  474. package/src/features/column-pinning/columnPinningFeature.ts +268 -304
  475. package/src/features/column-pinning/columnPinningFeature.types.ts +4 -4
  476. package/src/features/column-pinning/columnPinningFeature.utils.ts +11 -19
  477. package/src/features/column-resizing/columnResizingFeature.ts +44 -78
  478. package/src/features/column-resizing/columnResizingFeature.types.ts +1 -4
  479. package/src/features/column-resizing/columnResizingFeature.utils.ts +5 -6
  480. package/src/features/column-sizing/columnSizingFeature.ts +115 -152
  481. package/src/features/column-sizing/columnSizingFeature.utils.ts +27 -5
  482. package/src/features/column-visibility/columnVisibilityFeature.ts +92 -129
  483. package/src/features/column-visibility/columnVisibilityFeature.types.ts +4 -4
  484. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +31 -15
  485. package/src/features/global-filtering/globalFilteringFeature.ts +45 -79
  486. package/src/features/global-filtering/globalFilteringFeature.types.ts +4 -4
  487. package/src/features/global-filtering/globalFilteringFeature.utils.ts +5 -3
  488. package/src/features/row-expanding/createExpandedRowModel.ts +1 -1
  489. package/src/features/row-expanding/rowExpandingFeature.ts +65 -101
  490. package/src/features/row-expanding/rowExpandingFeature.types.ts +8 -22
  491. package/src/features/row-expanding/rowExpandingFeature.utils.ts +38 -13
  492. package/src/features/row-pagination/createPaginatedRowModel.ts +2 -2
  493. package/src/features/row-pagination/rowPaginationFeature.ts +69 -103
  494. package/src/features/row-pagination/rowPaginationFeature.types.ts +6 -20
  495. package/src/features/row-pinning/rowPinningFeature.ts +72 -104
  496. package/src/features/row-pinning/rowPinningFeature.types.ts +4 -4
  497. package/src/features/row-selection/rowSelectionFeature.ts +125 -135
  498. package/src/features/row-selection/rowSelectionFeature.types.ts +17 -7
  499. package/src/features/row-selection/rowSelectionFeature.utils.ts +144 -66
  500. package/src/features/row-sorting/createSortedRowModel.ts +12 -15
  501. package/src/features/row-sorting/rowSortingFeature.ts +73 -114
  502. package/src/features/row-sorting/rowSortingFeature.types.ts +33 -32
  503. package/src/features/row-sorting/rowSortingFeature.utils.ts +8 -6
  504. package/src/fns/aggregationFns.ts +26 -42
  505. package/src/fns/filterFns.ts +237 -264
  506. package/src/fns/sortFns.ts +51 -29
  507. package/src/helpers/columnHelper.ts +4 -4
  508. package/src/helpers/metaHelper.ts +24 -0
  509. package/src/helpers/tableFeatures.ts +36 -5
  510. package/src/index.ts +1 -0
  511. package/src/store-reactivity-bindings.ts +1 -1
  512. package/src/types/Cell.ts +5 -21
  513. package/src/types/Column.ts +12 -26
  514. package/src/types/ColumnDef.ts +28 -18
  515. package/src/types/Header.ts +4 -20
  516. package/src/types/HeaderGroup.ts +7 -18
  517. package/src/types/Row.ts +6 -21
  518. package/src/types/RowModel.ts +15 -88
  519. package/src/types/RowModelFns.ts +9 -24
  520. package/src/types/Table.ts +54 -44
  521. package/src/types/TableFeatures.ts +402 -123
  522. package/src/types/TableOptions.ts +59 -21
  523. package/src/types/TableState.ts +5 -17
  524. package/src/utils.ts +40 -8
@@ -10,91 +10,64 @@ import {
10
10
  table_getColumn,
11
11
  table_getDefaultColumnDef,
12
12
  } from './coreColumnsFeature.utils'
13
- import type { RowData } from '../../types/type-utils'
14
- import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
15
- // import type {
16
- // Column_Column,
17
- // TableOptions_Columns,
18
- // Table_Columns,
19
- // } from './coreColumnsFeature.types'
20
-
21
- export interface CoreColumnsFeatureConstructors<
22
- TFeatures extends TableFeatures,
23
- TData extends RowData,
24
- > {
25
- // Column: Column_Column<TFeatures, TData>
26
- // Table: Table_Columns<TFeatures, TData>
27
- // TableOptions: TableOptions_Columns<TFeatures, TData>
28
- }
13
+ import type { TableFeature } from '../../types/TableFeatures'
29
14
 
30
15
  /**
31
- * Creates the stock core columns feature.
32
- *
33
- * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
16
+ * Core feature that builds the column tree and exposes table/column column APIs.
34
17
  */
35
- export function constructCoreColumnsFeature<
36
- TFeatures extends TableFeatures,
37
- TData extends RowData,
38
- >(): TableFeature<CoreColumnsFeatureConstructors<TFeatures, TData>> {
39
- return {
40
- assignColumnPrototype: (prototype, table) => {
41
- assignPrototypeAPIs('coreColumnsFeature', prototype, table, {
42
- column_getFlatColumns: {
43
- fn: (column) => column_getFlatColumns(column),
44
- memoDeps: (column) => [column.table.options.columns],
45
- },
46
- column_getLeafColumns: {
47
- fn: (column) => column_getLeafColumns(column),
48
- memoDeps: (column) => [
49
- column.table.atoms.columnOrder?.get(),
50
- column.table.atoms.grouping?.get(),
51
- column.table.options.columns,
52
- column.table.options.groupedColumnMode,
53
- ],
54
- },
55
- })
56
- },
18
+ export const coreColumnsFeature: TableFeature = {
19
+ assignColumnPrototype: (prototype, table) => {
20
+ assignPrototypeAPIs('coreColumnsFeature', prototype, table, {
21
+ column_getFlatColumns: {
22
+ fn: (column) => column_getFlatColumns(column),
23
+ memoDeps: (column) => [column.table.options.columns],
24
+ },
25
+ column_getLeafColumns: {
26
+ fn: (column) => column_getLeafColumns(column),
27
+ memoDeps: (column) => [
28
+ column.table.atoms.columnOrder?.get(),
29
+ column.table.atoms.grouping?.get(),
30
+ column.table.options.columns,
31
+ column.table.options.groupedColumnMode,
32
+ ],
33
+ },
34
+ })
35
+ },
57
36
 
58
- constructTableAPIs: (table) => {
59
- assignTableAPIs('coreColumnsFeature', table, {
60
- table_getDefaultColumnDef: {
61
- fn: () => table_getDefaultColumnDef(table),
62
- memoDeps: () => [table.options.defaultColumn],
63
- },
64
- table_getAllColumns: {
65
- fn: () => table_getAllColumns(table),
66
- memoDeps: () => [table.options.columns],
67
- },
68
- table_getAllFlatColumns: {
69
- fn: () => table_getAllFlatColumns(table),
70
- memoDeps: () => [table.options.columns],
71
- },
72
- table_getAllFlatColumnsById: {
73
- fn: () => table_getAllFlatColumnsById(table),
74
- memoDeps: () => [table.options.columns],
75
- },
76
- table_getAllLeafColumns: {
77
- fn: () => table_getAllLeafColumns(table),
78
- memoDeps: () => [
79
- table.atoms.columnOrder?.get(),
80
- table.atoms.grouping?.get(),
81
- table.options.columns,
82
- table.options.groupedColumnMode,
83
- ],
84
- },
85
- table_getAllLeafColumnsById: {
86
- fn: () => table_getAllLeafColumnsById(table),
87
- memoDeps: () => [table.getAllLeafColumns()],
88
- },
89
- table_getColumn: {
90
- fn: (columnId) => table_getColumn(table, columnId),
91
- },
92
- })
93
- },
94
- }
37
+ constructTableAPIs: (table) => {
38
+ assignTableAPIs('coreColumnsFeature', table, {
39
+ table_getDefaultColumnDef: {
40
+ fn: () => table_getDefaultColumnDef(table),
41
+ memoDeps: () => [table.options.defaultColumn],
42
+ },
43
+ table_getAllColumns: {
44
+ fn: () => table_getAllColumns(table),
45
+ memoDeps: () => [table.options.columns],
46
+ },
47
+ table_getAllFlatColumns: {
48
+ fn: () => table_getAllFlatColumns(table),
49
+ memoDeps: () => [table.options.columns],
50
+ },
51
+ table_getAllFlatColumnsById: {
52
+ fn: () => table_getAllFlatColumnsById(table),
53
+ memoDeps: () => [table.options.columns],
54
+ },
55
+ table_getAllLeafColumns: {
56
+ fn: () => table_getAllLeafColumns(table),
57
+ memoDeps: () => [
58
+ table.atoms.columnOrder?.get(),
59
+ table.atoms.grouping?.get(),
60
+ table.options.columns,
61
+ table.options.groupedColumnMode,
62
+ ],
63
+ },
64
+ table_getAllLeafColumnsById: {
65
+ fn: () => table_getAllLeafColumnsById(table),
66
+ memoDeps: () => [table.getAllLeafColumns()],
67
+ },
68
+ table_getColumn: {
69
+ fn: (columnId) => table_getColumn(table, columnId),
70
+ },
71
+ })
72
+ },
95
73
  }
96
-
97
- /**
98
- * The Core Columns feature provides the core column functionality.
99
- */
100
- export const coreColumnsFeature = constructCoreColumnsFeature()
@@ -5,8 +5,8 @@ import type { AccessorFn, ColumnDef } from '../../types/ColumnDef'
5
5
  import type { Column } from '../../types/Column'
6
6
 
7
7
  export interface Column_CoreProperties<
8
- TFeatures extends TableFeatures,
9
- TData extends RowData,
8
+ in out TFeatures extends TableFeatures,
9
+ in out TData extends RowData,
10
10
  TValue extends CellData = CellData,
11
11
  > {
12
12
  /**
@@ -43,8 +43,8 @@ export interface Column_CoreProperties<
43
43
  }
44
44
 
45
45
  export interface Column_Column<
46
- TFeatures extends TableFeatures,
47
- TData extends RowData,
46
+ in out TFeatures extends TableFeatures,
47
+ in out TData extends RowData,
48
48
  TValue extends CellData = CellData,
49
49
  > extends Column_CoreProperties<TFeatures, TData, TValue> {
50
50
  /**
@@ -59,8 +59,8 @@ export interface Column_Column<
59
59
  }
60
60
 
61
61
  export interface TableOptions_Columns<
62
- TFeatures extends TableFeatures,
63
- TData extends RowData,
62
+ in out TFeatures extends TableFeatures,
63
+ in out TData extends RowData,
64
64
  TValue extends CellData = CellData,
65
65
  > {
66
66
  /**
@@ -74,8 +74,8 @@ export interface TableOptions_Columns<
74
74
  }
75
75
 
76
76
  export interface Table_Columns<
77
- TFeatures extends TableFeatures,
78
- TData extends RowData,
77
+ in out TFeatures extends TableFeatures,
78
+ in out TData extends RowData,
79
79
  > {
80
80
  /**
81
81
  * Returns a map of all flat columns by their ID.
@@ -1,4 +1,4 @@
1
- import { callMemoOrStaticFn } from '../../utils'
1
+ import { callMemoOrStaticFn, makeObjectMap } from '../../utils'
2
2
  import { table_getOrderColumnsFn } from '../../features/column-ordering/columnOrderingFeature.utils'
3
3
  import { constructColumn } from './constructColumn'
4
4
  import type { Table_Internal } from '../../types/Table'
@@ -185,7 +185,7 @@ export function table_getAllFlatColumnsById<
185
185
  >(
186
186
  table: Table_Internal<TFeatures, TData>,
187
187
  ): Record<string, Column<TFeatures, TData, unknown>> {
188
- const result: Record<string, Column<TFeatures, TData, unknown>> = {}
188
+ const result = makeObjectMap<Column<TFeatures, TData, unknown>>()
189
189
  const flatColumns = table.getAllFlatColumns()
190
190
  for (let i = 0; i < flatColumns.length; i++) {
191
191
  const column = flatColumns[i]!
@@ -218,7 +218,7 @@ export function table_getAllLeafColumns<
218
218
  table,
219
219
  'getOrderColumns',
220
220
  table_getOrderColumnsFn,
221
- )(leafColumns)
221
+ )(leafColumns) as Array<Column<TFeatures, TData, unknown>>
222
222
  }
223
223
 
224
224
  /**
@@ -238,7 +238,7 @@ export function table_getAllLeafColumnsById<
238
238
  >(
239
239
  table: Table_Internal<TFeatures, TData>,
240
240
  ): Record<string, Column<TFeatures, TData, unknown>> {
241
- const result: Record<string, Column<TFeatures, TData, unknown>> = {}
241
+ const result = makeObjectMap<Column<TFeatures, TData, unknown>>()
242
242
  const leafColumns = table.getAllLeafColumns()
243
243
  for (let i = 0; i < leafColumns.length; i++) {
244
244
  const column = leafColumns[i]!
@@ -7,7 +7,7 @@ import { coreTablesFeature } from './table/coreTablesFeature'
7
7
  import type { TableReactivityBindings } from '../reactivity'
8
8
 
9
9
  export interface CoreFeatures {
10
- coreReativityFeature?: TableReactivityBindings
10
+ coreReactivityFeature?: TableReactivityBindings
11
11
  coreCellsFeature: typeof coreCellsFeature
12
12
  coreColumnsFeature: typeof coreColumnsFeature
13
13
  coreHeadersFeature: typeof coreHeadersFeature
@@ -60,7 +60,7 @@ export function buildHeaderGroups<
60
60
  depth,
61
61
  id: [headerFamily, `${depth}`].filter(Boolean).join('_'),
62
62
  headers: [],
63
- } as any
63
+ }
64
64
 
65
65
  // The parent columns we're going to scan next
66
66
  const pendingParentHeaders: Array<Header<TFeatures, TData, TValue>> = []
@@ -113,7 +113,9 @@ export function buildHeaderGroups<
113
113
  pendingParentHeaders.push(header)
114
114
  }
115
115
 
116
- headerGroup.headers.push(headerToGroup)
116
+ headerGroup.headers.push(
117
+ headerToGroup as Header<TFeatures, TData, unknown>,
118
+ )
117
119
  headerToGroup.headerGroup = headerGroup
118
120
  })
119
121
 
@@ -7,72 +7,50 @@ import {
7
7
  table_getHeaderGroups,
8
8
  table_getLeafHeaders,
9
9
  } from './coreHeadersFeature.utils'
10
- import type { RowData } from '../../types/type-utils'
11
- import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
12
- // import type { Header_Header, Table_Headers } from './coreHeadersFeature.types'
13
-
14
- export interface CoreHeadersFeatureConstructors<
15
- TFeatures extends TableFeatures,
16
- TData extends RowData,
17
- > {
18
- // Header: Header_Header<TFeatures, TData>
19
- // Table: Table_Headers<TFeatures, TData>
20
- }
10
+ import type { TableFeature } from '../../types/TableFeatures'
21
11
 
22
12
  /**
23
- * Creates the stock core headers feature.
24
- *
25
- * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
13
+ * Core feature that builds header groups and exposes header context APIs.
26
14
  */
27
- export function constructCoreHeadersFeature<
28
- TFeatures extends TableFeatures,
29
- TData extends RowData,
30
- >(): TableFeature<CoreHeadersFeatureConstructors<TFeatures, TData>> {
31
- return {
32
- assignHeaderPrototype: (prototype, table) => {
33
- assignPrototypeAPIs('coreHeadersFeature', prototype, table, {
34
- header_getLeafHeaders: {
35
- fn: (header) => header_getLeafHeaders(header),
36
- memoDeps: (header) => [header.column.table.options.columns],
37
- },
38
- header_getContext: {
39
- fn: (header) => header_getContext(header),
40
- memoDeps: (header) => [header.column.table.options.columns],
41
- },
42
- })
43
- },
15
+ export const coreHeadersFeature: TableFeature = {
16
+ assignHeaderPrototype: (prototype, table) => {
17
+ assignPrototypeAPIs('coreHeadersFeature', prototype, table, {
18
+ header_getLeafHeaders: {
19
+ fn: (header) => header_getLeafHeaders(header),
20
+ memoDeps: (header) => [header.column.table.options.columns],
21
+ },
22
+ header_getContext: {
23
+ fn: (header) => header_getContext(header),
24
+ memoDeps: (header) => [header.column.table.options.columns],
25
+ },
26
+ })
27
+ },
44
28
 
45
- constructTableAPIs: (table) => {
46
- assignTableAPIs('coreHeadersFeature', table, {
47
- table_getHeaderGroups: {
48
- fn: () => table_getHeaderGroups(table),
49
- memoDeps: () => [
50
- table.options.columns,
51
- table.atoms.columnOrder?.get(),
52
- table.atoms.grouping?.get(),
53
- table.atoms.columnPinning?.get(),
54
- table.atoms.columnVisibility?.get(),
55
- table.options.groupedColumnMode,
56
- ],
57
- },
58
- table_getFooterGroups: {
59
- fn: () => table_getFooterGroups(table),
60
- memoDeps: () => [table.getHeaderGroups()],
61
- },
62
- table_getFlatHeaders: {
63
- fn: () => table_getFlatHeaders(table),
64
- memoDeps: () => [table.getHeaderGroups()],
65
- },
66
- table_getLeafHeaders: {
67
- fn: () => table_getLeafHeaders(table),
68
- memoDeps: () => [table.getHeaderGroups()],
69
- },
70
- })
71
- },
72
- }
29
+ constructTableAPIs: (table) => {
30
+ assignTableAPIs('coreHeadersFeature', table, {
31
+ table_getHeaderGroups: {
32
+ fn: () => table_getHeaderGroups(table),
33
+ memoDeps: () => [
34
+ table.options.columns,
35
+ table.atoms.columnOrder?.get(),
36
+ table.atoms.grouping?.get(),
37
+ table.atoms.columnPinning?.get(),
38
+ table.atoms.columnVisibility?.get(),
39
+ table.options.groupedColumnMode,
40
+ ],
41
+ },
42
+ table_getFooterGroups: {
43
+ fn: () => table_getFooterGroups(table),
44
+ memoDeps: () => [table.getHeaderGroups()],
45
+ },
46
+ table_getFlatHeaders: {
47
+ fn: () => table_getFlatHeaders(table),
48
+ memoDeps: () => [table.getHeaderGroups()],
49
+ },
50
+ table_getLeafHeaders: {
51
+ fn: () => table_getLeafHeaders(table),
52
+ memoDeps: () => [table.getHeaderGroups()],
53
+ },
54
+ })
55
+ },
73
56
  }
74
-
75
- /**
76
- * The Core Headers feature provides the core header functionality.
77
- */
78
- export const coreHeadersFeature = constructCoreHeadersFeature()
@@ -1,13 +1,13 @@
1
1
  import type { CellData, RowData } from '../../types/type-utils'
2
2
  import type { TableFeatures } from '../../types/TableFeatures'
3
- import type { Table } from '../../types/Table'
3
+ import type { Table, Table_Internal } from '../../types/Table'
4
4
  import type { Header } from '../../types/Header'
5
5
  import type { HeaderGroup } from '../../types/HeaderGroup'
6
6
  import type { Column } from '../../types/Column'
7
7
 
8
8
  export interface Table_Headers<
9
- TFeatures extends TableFeatures,
10
- TData extends RowData,
9
+ in out TFeatures extends TableFeatures,
10
+ in out TData extends RowData,
11
11
  > {
12
12
  /**
13
13
  * Builds the visible header groups for the current column tree, visibility,
@@ -30,8 +30,8 @@ export interface Table_Headers<
30
30
  }
31
31
 
32
32
  export interface HeaderContext<
33
- TFeatures extends TableFeatures,
34
- TData extends RowData,
33
+ in out TFeatures extends TableFeatures,
34
+ in out TData extends RowData,
35
35
  TValue extends CellData = CellData,
36
36
  > {
37
37
  /**
@@ -49,8 +49,8 @@ export interface HeaderContext<
49
49
  }
50
50
 
51
51
  export interface Header_CoreProperties<
52
- TFeatures extends TableFeatures,
53
- TData extends RowData,
52
+ in out TFeatures extends TableFeatures,
53
+ in out TData extends RowData,
54
54
  TValue extends CellData = CellData,
55
55
  > {
56
56
  /**
@@ -96,12 +96,12 @@ export interface Header_CoreProperties<
96
96
  /**
97
97
  * Reference to the parent table instance.
98
98
  */
99
- table: Table<TFeatures, TData>
99
+ table: Table_Internal<TFeatures, TData>
100
100
  }
101
101
 
102
102
  export interface Header_Header<
103
- TFeatures extends TableFeatures,
104
- TData extends RowData,
103
+ in out TFeatures extends TableFeatures,
104
+ in out TData extends RowData,
105
105
  TValue extends CellData = CellData,
106
106
  > extends Header_CoreProperties<TFeatures, TData, TValue> {
107
107
  /**
@@ -115,8 +115,8 @@ export interface Header_Header<
115
115
  }
116
116
 
117
117
  export interface HeaderGroup_Header<
118
- TFeatures extends TableFeatures,
119
- TData extends RowData,
118
+ in out TFeatures extends TableFeatures,
119
+ in out TData extends RowData,
120
120
  TValue extends CellData = CellData,
121
121
  > {
122
122
  depth: number
@@ -86,7 +86,7 @@ export function table_getHeaderGroups<
86
86
  table,
87
87
  'getVisibleLeafColumns',
88
88
  table_getVisibleLeafColumns,
89
- ) as Array<Column<TFeatures, TData, unknown>>
89
+ )
90
90
 
91
91
  // Fast path: no columns are pinned — skip per-side lookups, partition, and spread.
92
92
  if (!left.length && !right.length) {
@@ -13,71 +13,50 @@ import {
13
13
  table_getRowModel,
14
14
  table_getSortedRowModel,
15
15
  } from './coreRowModelsFeature.utils'
16
- import type { RowData } from '../../types/type-utils'
17
- import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
18
- // import type { Table_RowModels } from './coreRowModelsFeature.types'
19
-
20
- export interface CoreRowModelsFeatureConstructors<
21
- TFeatures extends TableFeatures,
22
- TData extends RowData,
23
- > {
24
- // Table: Table_RowModels<TFeatures, TData>
25
- }
16
+ import type { TableFeature } from '../../types/TableFeatures'
26
17
 
27
18
  /**
28
- * Creates the stock core row models feature.
29
- *
30
- * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
19
+ * Core feature that wires table row-model accessors and row-model caches.
31
20
  */
32
- export function constructCoreRowModelsFeature<
33
- TFeatures extends TableFeatures,
34
- TData extends RowData,
35
- >(): TableFeature<CoreRowModelsFeatureConstructors<TFeatures, TData>> {
36
- return {
37
- constructTableAPIs: (table) => {
38
- assignTableAPIs('coreRowModelsFeature', table, {
39
- table_getCoreRowModel: {
40
- fn: () => table_getCoreRowModel(table),
41
- },
42
- table_getPreFilteredRowModel: {
43
- fn: () => table_getPreFilteredRowModel(table),
44
- },
45
- table_getFilteredRowModel: {
46
- fn: () => table_getFilteredRowModel(table),
47
- },
48
- table_getPreGroupedRowModel: {
49
- fn: () => table_getPreGroupedRowModel(table),
50
- },
51
- table_getGroupedRowModel: {
52
- fn: () => table_getGroupedRowModel(table),
53
- },
54
- table_getPreSortedRowModel: {
55
- fn: () => table_getPreSortedRowModel(table),
56
- },
57
- table_getSortedRowModel: {
58
- fn: () => table_getSortedRowModel(table),
59
- },
60
- table_getPreExpandedRowModel: {
61
- fn: () => table_getPreExpandedRowModel(table),
62
- },
63
- table_getExpandedRowModel: {
64
- fn: () => table_getExpandedRowModel(table),
65
- },
66
- table_getPrePaginatedRowModel: {
67
- fn: () => table_getPrePaginatedRowModel(table),
68
- },
69
- table_getPaginatedRowModel: {
70
- fn: () => table_getPaginatedRowModel(table),
71
- },
72
- table_getRowModel: {
73
- fn: () => table_getRowModel(table),
74
- },
75
- })
76
- },
77
- }
21
+ export const coreRowModelsFeature: TableFeature = {
22
+ constructTableAPIs: (table) => {
23
+ assignTableAPIs('coreRowModelsFeature', table, {
24
+ table_getCoreRowModel: {
25
+ fn: () => table_getCoreRowModel(table),
26
+ },
27
+ table_getPreFilteredRowModel: {
28
+ fn: () => table_getPreFilteredRowModel(table),
29
+ },
30
+ table_getFilteredRowModel: {
31
+ fn: () => table_getFilteredRowModel(table),
32
+ },
33
+ table_getPreGroupedRowModel: {
34
+ fn: () => table_getPreGroupedRowModel(table),
35
+ },
36
+ table_getGroupedRowModel: {
37
+ fn: () => table_getGroupedRowModel(table),
38
+ },
39
+ table_getPreSortedRowModel: {
40
+ fn: () => table_getPreSortedRowModel(table),
41
+ },
42
+ table_getSortedRowModel: {
43
+ fn: () => table_getSortedRowModel(table),
44
+ },
45
+ table_getPreExpandedRowModel: {
46
+ fn: () => table_getPreExpandedRowModel(table),
47
+ },
48
+ table_getExpandedRowModel: {
49
+ fn: () => table_getExpandedRowModel(table),
50
+ },
51
+ table_getPrePaginatedRowModel: {
52
+ fn: () => table_getPrePaginatedRowModel(table),
53
+ },
54
+ table_getPaginatedRowModel: {
55
+ fn: () => table_getPaginatedRowModel(table),
56
+ },
57
+ table_getRowModel: {
58
+ fn: () => table_getRowModel(table),
59
+ },
60
+ })
61
+ },
78
62
  }
79
-
80
- /**
81
- * The Core Row Models feature provides the core row model functionality.
82
- */
83
- export const coreRowModelsFeature = constructCoreRowModelsFeature()
@@ -10,41 +10,24 @@ import type { TableFeatures } from '../../types/TableFeatures'
10
10
  import type { RowData } from '../../types/type-utils'
11
11
 
12
12
  export interface RowModel<
13
- TFeatures extends TableFeatures,
14
- TData extends RowData,
13
+ in out TFeatures extends TableFeatures,
14
+ in out TData extends RowData,
15
15
  > {
16
16
  rows: Array<Row<TFeatures, TData>>
17
17
  flatRows: Array<Row<TFeatures, TData>>
18
18
  rowsById: Record<string, Row<TFeatures, TData>>
19
19
  }
20
20
 
21
- export interface CreateRowModel_Plugins {}
22
-
23
- export interface CreateRowModel_Core<
24
- TFeatures extends TableFeatures,
25
- TData extends RowData,
26
- > extends CreateRowModel_Plugins {
27
- /**
28
- * Optional factory for the core row model. When omitted, the built-in
29
- * `createCoreRowModel()` factory is used.
30
- */
31
- coreRowModel?: (
32
- table: Table<TFeatures, TData>,
33
- ) => () => RowModel<TFeatures, TData>
34
- }
35
-
36
- export interface CachedRowModel_Plugins {}
37
-
38
21
  export interface CachedRowModel_Core<
39
- TFeatures extends TableFeatures,
40
- TData extends RowData,
41
- > extends CachedRowModel_Plugins {
22
+ in out TFeatures extends TableFeatures,
23
+ in out TData extends RowData,
24
+ > {
42
25
  coreRowModel: () => RowModel<TFeatures, TData>
43
26
  }
44
27
 
45
28
  export interface Table_RowModels_Core<
46
- TFeatures extends TableFeatures,
47
- TData extends RowData,
29
+ in out TFeatures extends TableFeatures,
30
+ in out TData extends RowData,
48
31
  > {
49
32
  /**
50
33
  * Returns the core row model before any processing has been applied.