@tanstack/table-core 9.0.0-beta.7 → 9.0.0-beta.70

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 (667) hide show
  1. package/README.md +5 -1
  2. package/dist/core/cells/constructCell.d.ts +4 -6
  3. package/dist/core/cells/constructCell.js +4 -6
  4. package/dist/core/cells/coreCellsFeature.d.ts +1 -3
  5. package/dist/core/cells/coreCellsFeature.js +1 -2
  6. package/dist/core/cells/coreCellsFeature.types.d.ts +7 -9
  7. package/dist/core/cells/coreCellsFeature.utils.d.ts +5 -5
  8. package/dist/core/cells/coreCellsFeature.utils.js +1 -2
  9. package/dist/core/columns/constructColumn.d.ts +4 -6
  10. package/dist/core/columns/constructColumn.js +8 -9
  11. package/dist/core/columns/coreColumnsFeature.d.ts +1 -3
  12. package/dist/core/columns/coreColumnsFeature.js +13 -20
  13. package/dist/core/columns/coreColumnsFeature.types.d.ts +13 -15
  14. package/dist/core/columns/coreColumnsFeature.utils.d.ts +10 -12
  15. package/dist/core/columns/coreColumnsFeature.utils.js +19 -20
  16. package/dist/core/coreFeatures.d.ts +3 -3
  17. package/dist/core/coreFeatures.js +1 -2
  18. package/dist/core/headers/buildHeaderGroups.d.ts +3 -5
  19. package/dist/core/headers/buildHeaderGroups.js +99 -85
  20. package/dist/core/headers/constructHeader.d.ts +3 -5
  21. package/dist/core/headers/constructHeader.js +4 -6
  22. package/dist/core/headers/coreHeadersFeature.d.ts +1 -3
  23. package/dist/core/headers/coreHeadersFeature.js +9 -13
  24. package/dist/core/headers/coreHeadersFeature.types.d.ts +21 -11
  25. package/dist/core/headers/coreHeadersFeature.utils.d.ts +8 -8
  26. package/dist/core/headers/coreHeadersFeature.utils.js +14 -17
  27. package/dist/core/reactivity/coreReactivityFeature.types.d.ts +8 -3
  28. package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +1 -3
  29. package/dist/core/reactivity/coreReactivityFeature.utils.js +1 -2
  30. package/dist/core/reactivity/renderPhaseReactivity.d.ts +80 -0
  31. package/dist/core/reactivity/renderPhaseReactivity.js +95 -0
  32. package/dist/core/row-models/coreRowModelsFeature.d.ts +1 -3
  33. package/dist/core/row-models/coreRowModelsFeature.js +1 -2
  34. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +7 -17
  35. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +17 -19
  36. package/dist/core/row-models/coreRowModelsFeature.utils.js +9 -28
  37. package/dist/core/row-models/createCoreRowModel.d.ts +3 -5
  38. package/dist/core/row-models/createCoreRowModel.js +25 -24
  39. package/dist/core/rows/constructRow.d.ts +3 -5
  40. package/dist/core/rows/constructRow.js +9 -13
  41. package/dist/core/rows/coreRowsFeature.d.ts +1 -3
  42. package/dist/core/rows/coreRowsFeature.js +20 -5
  43. package/dist/core/rows/coreRowsFeature.types.d.ts +42 -10
  44. package/dist/core/rows/coreRowsFeature.utils.d.ts +26 -9
  45. package/dist/core/rows/coreRowsFeature.utils.js +65 -14
  46. package/dist/core/table/constructTable.d.ts +2 -4
  47. package/dist/core/table/constructTable.js +52 -23
  48. package/dist/core/table/coreTablesFeature.d.ts +1 -3
  49. package/dist/core/table/coreTablesFeature.js +1 -2
  50. package/dist/core/table/coreTablesFeature.types.d.ts +56 -25
  51. package/dist/core/table/coreTablesFeature.utils.d.ts +34 -12
  52. package/dist/core/table/coreTablesFeature.utils.js +69 -24
  53. package/dist/experimental-worker-plugin.d.ts +5 -0
  54. package/dist/experimental-worker-plugin.js +6 -0
  55. package/dist/features/cell-selection/cellSelectionFeature.d.ts +8 -0
  56. package/dist/features/cell-selection/cellSelectionFeature.js +128 -0
  57. package/dist/features/cell-selection/cellSelectionFeature.types.d.ts +296 -0
  58. package/dist/features/cell-selection/cellSelectionFeature.utils.d.ts +306 -0
  59. package/dist/features/cell-selection/cellSelectionFeature.utils.js +873 -0
  60. package/dist/features/cell-selection/cellSelectionGeometry.js +121 -0
  61. package/dist/features/cell-spanning/cellSpanningFeature.d.ts +13 -0
  62. package/dist/features/cell-spanning/cellSpanningFeature.js +47 -0
  63. package/dist/features/cell-spanning/cellSpanningFeature.types.d.ts +150 -0
  64. package/dist/features/cell-spanning/cellSpanningFeature.utils.d.ts +74 -0
  65. package/dist/features/cell-spanning/cellSpanningFeature.utils.js +262 -0
  66. package/dist/features/column-faceting/columnFacetingFeature.d.ts +1 -3
  67. package/dist/features/column-faceting/columnFacetingFeature.js +13 -20
  68. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +15 -35
  69. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +10 -12
  70. package/dist/features/column-faceting/columnFacetingFeature.utils.js +25 -14
  71. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +2 -4
  72. package/dist/features/column-faceting/createFacetedMinMaxValues.js +9 -7
  73. package/dist/features/column-faceting/createFacetedRowModel.d.ts +3 -5
  74. package/dist/features/column-faceting/createFacetedRowModel.js +12 -17
  75. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +2 -4
  76. package/dist/features/column-faceting/createFacetedUniqueValues.js +12 -9
  77. package/dist/features/column-filtering/columnFilteringFeature.d.ts +1 -3
  78. package/dist/features/column-filtering/columnFilteringFeature.js +4 -5
  79. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +85 -33
  80. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +19 -17
  81. package/dist/features/column-filtering/columnFilteringFeature.utils.js +33 -21
  82. package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -7
  83. package/dist/features/column-filtering/createFilteredRowModel.js +33 -29
  84. package/dist/features/column-filtering/filterFns.d.ts +208 -0
  85. package/dist/features/column-filtering/filterFns.js +374 -0
  86. package/dist/features/column-filtering/filterRowsUtils.js +4 -4
  87. package/dist/features/column-grouping/columnGroupingFeature.d.ts +2 -4
  88. package/dist/features/column-grouping/columnGroupingFeature.js +7 -20
  89. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +14 -52
  90. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +12 -51
  91. package/dist/features/column-grouping/columnGroupingFeature.utils.js +8 -61
  92. package/dist/features/column-grouping/createGroupedRowModel.d.ts +7 -7
  93. package/dist/features/column-grouping/createGroupedRowModel.js +69 -38
  94. package/dist/features/column-ordering/columnOrderingFeature.d.ts +1 -3
  95. package/dist/features/column-ordering/columnOrderingFeature.js +19 -24
  96. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +28 -5
  97. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +26 -16
  98. package/dist/features/column-ordering/columnOrderingFeature.utils.js +36 -18
  99. package/dist/features/column-pinning/columnPinningFeature.d.ts +7 -4
  100. package/dist/features/column-pinning/columnPinningFeature.js +126 -146
  101. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +53 -44
  102. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +100 -93
  103. package/dist/features/column-pinning/columnPinningFeature.utils.js +148 -150
  104. package/dist/features/column-resizing/columnResizingFeature.d.ts +1 -3
  105. package/dist/features/column-resizing/columnResizingFeature.js +1 -2
  106. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +2 -7
  107. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +7 -9
  108. package/dist/features/column-resizing/columnResizingFeature.utils.js +86 -48
  109. package/dist/features/column-sizing/columnSizingFeature.d.ts +1 -3
  110. package/dist/features/column-sizing/columnSizingFeature.js +35 -70
  111. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +52 -11
  112. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +43 -27
  113. package/dist/features/column-sizing/columnSizingFeature.utils.js +95 -54
  114. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +1 -3
  115. package/dist/features/column-visibility/columnVisibilityFeature.js +26 -38
  116. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +4 -6
  117. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +20 -20
  118. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +32 -32
  119. package/dist/features/global-filtering/globalFilteringFeature.d.ts +1 -3
  120. package/dist/features/global-filtering/globalFilteringFeature.js +3 -4
  121. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -6
  122. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -13
  123. package/dist/features/global-filtering/globalFilteringFeature.utils.js +7 -8
  124. package/dist/features/row-aggregation/aggregationFns.d.ts +66 -0
  125. package/dist/features/row-aggregation/aggregationFns.js +279 -0
  126. package/dist/features/row-aggregation/rowAggregationFeature.d.ts +8 -0
  127. package/dist/features/row-aggregation/rowAggregationFeature.js +35 -0
  128. package/dist/features/row-aggregation/rowAggregationFeature.types.d.ts +193 -0
  129. package/dist/features/row-aggregation/rowAggregationFeature.types.js +11 -0
  130. package/dist/features/row-aggregation/rowAggregationFeature.utils.d.ts +46 -0
  131. package/dist/features/row-aggregation/rowAggregationFeature.utils.js +235 -0
  132. package/dist/features/row-expanding/createExpandedRowModel.d.ts +3 -5
  133. package/dist/features/row-expanding/createExpandedRowModel.js +9 -13
  134. package/dist/features/row-expanding/rowExpandingFeature.d.ts +1 -3
  135. package/dist/features/row-expanding/rowExpandingFeature.js +1 -2
  136. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +6 -17
  137. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +11 -16
  138. package/dist/features/row-expanding/rowExpandingFeature.utils.js +30 -33
  139. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +3 -5
  140. package/dist/features/row-pagination/createPaginatedRowModel.js +7 -12
  141. package/dist/features/row-pagination/rowPaginationFeature.d.ts +1 -3
  142. package/dist/features/row-pagination/rowPaginationFeature.js +1 -2
  143. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +5 -16
  144. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +18 -20
  145. package/dist/features/row-pagination/rowPaginationFeature.utils.js +10 -17
  146. package/dist/features/row-pinning/rowPinningFeature.d.ts +1 -3
  147. package/dist/features/row-pinning/rowPinningFeature.js +5 -18
  148. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +3 -5
  149. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +8 -10
  150. package/dist/features/row-pinning/rowPinningFeature.utils.js +10 -16
  151. package/dist/features/row-selection/rowSelectionFeature.d.ts +1 -3
  152. package/dist/features/row-selection/rowSelectionFeature.js +68 -25
  153. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +51 -15
  154. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +60 -35
  155. package/dist/features/row-selection/rowSelectionFeature.utils.js +142 -89
  156. package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -7
  157. package/dist/features/row-sorting/createSortedRowModel.js +71 -53
  158. package/dist/features/row-sorting/rowSortingFeature.d.ts +1 -3
  159. package/dist/features/row-sorting/rowSortingFeature.js +1 -2
  160. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +54 -24
  161. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +19 -22
  162. package/dist/features/row-sorting/rowSortingFeature.utils.js +36 -25
  163. package/dist/features/row-sorting/sortFns.d.ts +96 -0
  164. package/dist/features/row-sorting/sortFns.js +216 -0
  165. package/dist/features/stockFeatures.d.ts +7 -3
  166. package/dist/features/stockFeatures.js +7 -2
  167. package/dist/flex-render.d.ts +2 -4
  168. package/dist/flex-render.js +10 -3
  169. package/dist/helpers/columnHelper.d.ts +3 -5
  170. package/dist/helpers/columnHelper.js +1 -2
  171. package/dist/helpers/metaHelper.d.ts +25 -0
  172. package/dist/helpers/metaHelper.js +28 -0
  173. package/dist/helpers/tableFeatures.d.ts +35 -8
  174. package/dist/helpers/tableFeatures.js +33 -5
  175. package/dist/helpers/tableOptions.d.ts +1 -3
  176. package/dist/helpers/tableOptions.js +1 -2
  177. package/dist/index.d.ts +34 -27
  178. package/dist/index.js +10 -5
  179. package/dist/reactivity.d.ts +2 -1
  180. package/dist/reactivity.js +2 -1
  181. package/dist/static-functions.d.ts +11 -8
  182. package/dist/static-functions.js +11 -8
  183. package/dist/store-reactivity-bindings.d.ts +2 -4
  184. package/dist/store-reactivity-bindings.js +4 -5
  185. package/dist/types/Cell.d.ts +9 -5
  186. package/dist/types/Column.d.ts +13 -15
  187. package/dist/types/ColumnDef.d.ts +39 -21
  188. package/dist/types/Header.d.ts +3 -5
  189. package/dist/types/HeaderGroup.d.ts +3 -5
  190. package/dist/types/Row.d.ts +7 -7
  191. package/dist/types/RowModel.d.ts +11 -25
  192. package/dist/types/RowModelFns.d.ts +5 -7
  193. package/dist/types/Table.d.ts +29 -32
  194. package/dist/types/TableFeatures.d.ts +388 -24
  195. package/dist/types/TableOptions.d.ts +24 -14
  196. package/dist/types/TableState.d.ts +8 -8
  197. package/dist/types/type-utils.d.ts +10 -4
  198. package/dist/utils.d.ts +32 -26
  199. package/dist/utils.js +52 -32
  200. package/dist/worker/createTableWorker.d.ts +100 -0
  201. package/dist/worker/createTableWorker.js +185 -0
  202. package/dist/worker/createWorkerRowModel.d.ts +40 -0
  203. package/dist/worker/createWorkerRowModel.js +77 -0
  204. package/dist/worker/initTableWorker.d.ts +31 -0
  205. package/dist/worker/initTableWorker.js +99 -0
  206. package/dist/worker/rebuildRowModel.d.ts +11 -0
  207. package/dist/worker/rebuildRowModel.js +71 -0
  208. package/dist/worker/serializeRowModel.js +51 -0
  209. package/dist/worker/tableWorkerProtocol.d.ts +88 -0
  210. package/dist/worker/tableWorkerProtocol.js +26 -0
  211. package/package.json +12 -28
  212. package/skills/aggregation/SKILL.md +141 -0
  213. package/skills/api-not-found/SKILL.md +113 -0
  214. package/skills/cell-selection/SKILL.md +204 -0
  215. package/skills/cell-spanning/SKILL.md +162 -0
  216. package/skills/client-vs-server/SKILL.md +164 -0
  217. package/skills/column-faceting/SKILL.md +97 -0
  218. package/skills/column-filtering/SKILL.md +87 -0
  219. package/skills/column-ordering/SKILL.md +75 -0
  220. package/skills/column-pinning/SKILL.md +89 -0
  221. package/skills/column-resizing/SKILL.md +91 -0
  222. package/skills/column-sizing/SKILL.md +72 -0
  223. package/skills/column-visibility/SKILL.md +75 -0
  224. package/skills/core/SKILL.md +175 -0
  225. package/skills/custom-features/SKILL.md +235 -0
  226. package/skills/expanding/SKILL.md +80 -0
  227. package/skills/global-filtering/SKILL.md +84 -0
  228. package/skills/grouping/SKILL.md +51 -401
  229. package/skills/migrate-v8-to-v9/SKILL.md +275 -416
  230. package/skills/pagination/SKILL.md +37 -344
  231. package/skills/row-pinning/SKILL.md +47 -234
  232. package/skills/row-selection/SKILL.md +75 -302
  233. package/skills/sorting/SKILL.md +45 -303
  234. package/skills/table-features/SKILL.md +159 -0
  235. package/skills/typescript/SKILL.md +126 -0
  236. package/dist/core/cells/constructCell.cjs +0 -34
  237. package/dist/core/cells/constructCell.cjs.map +0 -1
  238. package/dist/core/cells/constructCell.d.cts +0 -17
  239. package/dist/core/cells/constructCell.js.map +0 -1
  240. package/dist/core/cells/coreCellsFeature.cjs +0 -21
  241. package/dist/core/cells/coreCellsFeature.cjs.map +0 -1
  242. package/dist/core/cells/coreCellsFeature.d.cts +0 -10
  243. package/dist/core/cells/coreCellsFeature.js.map +0 -1
  244. package/dist/core/cells/coreCellsFeature.types.d.cts +0 -57
  245. package/dist/core/cells/coreCellsFeature.utils.cjs +0 -57
  246. package/dist/core/cells/coreCellsFeature.utils.cjs.map +0 -1
  247. package/dist/core/cells/coreCellsFeature.utils.d.cts +0 -53
  248. package/dist/core/cells/coreCellsFeature.utils.js.map +0 -1
  249. package/dist/core/columns/constructColumn.cjs +0 -61
  250. package/dist/core/columns/constructColumn.cjs.map +0 -1
  251. package/dist/core/columns/constructColumn.d.cts +0 -16
  252. package/dist/core/columns/constructColumn.js.map +0 -1
  253. package/dist/core/columns/coreColumnsFeature.cjs +0 -70
  254. package/dist/core/columns/coreColumnsFeature.cjs.map +0 -1
  255. package/dist/core/columns/coreColumnsFeature.d.cts +0 -10
  256. package/dist/core/columns/coreColumnsFeature.js.map +0 -1
  257. package/dist/core/columns/coreColumnsFeature.types.d.cts +0 -94
  258. package/dist/core/columns/coreColumnsFeature.utils.cjs +0 -187
  259. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +0 -1
  260. package/dist/core/columns/coreColumnsFeature.utils.d.cts +0 -119
  261. package/dist/core/columns/coreColumnsFeature.utils.js.map +0 -1
  262. package/dist/core/coreFeatures.cjs +0 -25
  263. package/dist/core/coreFeatures.cjs.map +0 -1
  264. package/dist/core/coreFeatures.d.cts +0 -26
  265. package/dist/core/coreFeatures.js.map +0 -1
  266. package/dist/core/headers/buildHeaderGroups.cjs +0 -103
  267. package/dist/core/headers/buildHeaderGroups.cjs.map +0 -1
  268. package/dist/core/headers/buildHeaderGroups.d.cts +0 -16
  269. package/dist/core/headers/buildHeaderGroups.js.map +0 -1
  270. package/dist/core/headers/constructHeader.cjs +0 -41
  271. package/dist/core/headers/constructHeader.cjs.map +0 -1
  272. package/dist/core/headers/constructHeader.d.cts +0 -22
  273. package/dist/core/headers/constructHeader.js.map +0 -1
  274. package/dist/core/headers/coreHeadersFeature.cjs +0 -55
  275. package/dist/core/headers/coreHeadersFeature.cjs.map +0 -1
  276. package/dist/core/headers/coreHeadersFeature.d.cts +0 -10
  277. package/dist/core/headers/coreHeadersFeature.js.map +0 -1
  278. package/dist/core/headers/coreHeadersFeature.types.d.cts +0 -106
  279. package/dist/core/headers/coreHeadersFeature.utils.cjs +0 -142
  280. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +0 -1
  281. package/dist/core/headers/coreHeadersFeature.utils.d.cts +0 -85
  282. package/dist/core/headers/coreHeadersFeature.utils.js.map +0 -1
  283. package/dist/core/reactivity/coreReactivityFeature.types.d.cts +0 -48
  284. package/dist/core/reactivity/coreReactivityFeature.utils.cjs +0 -24
  285. package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +0 -1
  286. package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +0 -24
  287. package/dist/core/reactivity/coreReactivityFeature.utils.js.map +0 -1
  288. package/dist/core/row-models/coreRowModelsFeature.cjs +0 -27
  289. package/dist/core/row-models/coreRowModelsFeature.cjs.map +0 -1
  290. package/dist/core/row-models/coreRowModelsFeature.d.cts +0 -10
  291. package/dist/core/row-models/coreRowModelsFeature.js.map +0 -1
  292. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +0 -41
  293. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +0 -215
  294. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +0 -1
  295. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +0 -153
  296. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +0 -1
  297. package/dist/core/row-models/createCoreRowModel.cjs +0 -52
  298. package/dist/core/row-models/createCoreRowModel.cjs.map +0 -1
  299. package/dist/core/row-models/createCoreRowModel.d.cts +0 -15
  300. package/dist/core/row-models/createCoreRowModel.js.map +0 -1
  301. package/dist/core/rows/constructRow.cjs +0 -44
  302. package/dist/core/rows/constructRow.cjs.map +0 -1
  303. package/dist/core/rows/constructRow.d.cts +0 -15
  304. package/dist/core/rows/constructRow.js.map +0 -1
  305. package/dist/core/rows/coreRowsFeature.cjs +0 -37
  306. package/dist/core/rows/coreRowsFeature.cjs.map +0 -1
  307. package/dist/core/rows/coreRowsFeature.d.cts +0 -10
  308. package/dist/core/rows/coreRowsFeature.js.map +0 -1
  309. package/dist/core/rows/coreRowsFeature.types.d.cts +0 -99
  310. package/dist/core/rows/coreRowsFeature.utils.cjs +0 -192
  311. package/dist/core/rows/coreRowsFeature.utils.cjs.map +0 -1
  312. package/dist/core/rows/coreRowsFeature.utils.d.cts +0 -127
  313. package/dist/core/rows/coreRowsFeature.utils.js.map +0 -1
  314. package/dist/core/table/constructTable.cjs +0 -118
  315. package/dist/core/table/constructTable.cjs.map +0 -1
  316. package/dist/core/table/constructTable.d.cts +0 -22
  317. package/dist/core/table/constructTable.js.map +0 -1
  318. package/dist/core/table/coreTablesFeature.cjs +0 -17
  319. package/dist/core/table/coreTablesFeature.cjs.map +0 -1
  320. package/dist/core/table/coreTablesFeature.d.cts +0 -10
  321. package/dist/core/table/coreTablesFeature.js.map +0 -1
  322. package/dist/core/table/coreTablesFeature.types.d.cts +0 -186
  323. package/dist/core/table/coreTablesFeature.utils.cjs +0 -96
  324. package/dist/core/table/coreTablesFeature.utils.cjs.map +0 -1
  325. package/dist/core/table/coreTablesFeature.utils.d.cts +0 -57
  326. package/dist/core/table/coreTablesFeature.utils.js.map +0 -1
  327. package/dist/features/column-faceting/columnFacetingFeature.cjs +0 -61
  328. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +0 -1
  329. package/dist/features/column-faceting/columnFacetingFeature.d.cts +0 -10
  330. package/dist/features/column-faceting/columnFacetingFeature.js.map +0 -1
  331. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +0 -85
  332. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +0 -103
  333. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +0 -1
  334. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +0 -84
  335. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +0 -1
  336. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +0 -44
  337. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +0 -1
  338. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +0 -14
  339. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +0 -1
  340. package/dist/features/column-faceting/createFacetedRowModel.cjs +0 -50
  341. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +0 -1
  342. package/dist/features/column-faceting/createFacetedRowModel.d.cts +0 -15
  343. package/dist/features/column-faceting/createFacetedRowModel.js.map +0 -1
  344. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +0 -41
  345. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +0 -1
  346. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +0 -14
  347. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +0 -1
  348. package/dist/features/column-filtering/columnFilteringFeature.cjs +0 -50
  349. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +0 -1
  350. package/dist/features/column-filtering/columnFilteringFeature.d.cts +0 -10
  351. package/dist/features/column-filtering/columnFilteringFeature.js.map +0 -1
  352. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +0 -160
  353. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +0 -212
  354. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +0 -1
  355. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +0 -143
  356. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +0 -1
  357. package/dist/features/column-filtering/createFilteredRowModel.cjs +0 -110
  358. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +0 -1
  359. package/dist/features/column-filtering/createFilteredRowModel.d.cts +0 -16
  360. package/dist/features/column-filtering/createFilteredRowModel.js.map +0 -1
  361. package/dist/features/column-filtering/filterRowsUtils.cjs +0 -81
  362. package/dist/features/column-filtering/filterRowsUtils.cjs.map +0 -1
  363. package/dist/features/column-filtering/filterRowsUtils.js.map +0 -1
  364. package/dist/features/column-grouping/columnGroupingFeature.cjs +0 -67
  365. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +0 -1
  366. package/dist/features/column-grouping/columnGroupingFeature.d.cts +0 -10
  367. package/dist/features/column-grouping/columnGroupingFeature.js.map +0 -1
  368. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +0 -165
  369. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +0 -250
  370. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +0 -1
  371. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +0 -190
  372. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +0 -1
  373. package/dist/features/column-grouping/createGroupedRowModel.cjs +0 -119
  374. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +0 -1
  375. package/dist/features/column-grouping/createGroupedRowModel.d.cts +0 -16
  376. package/dist/features/column-grouping/createGroupedRowModel.js.map +0 -1
  377. package/dist/features/column-ordering/columnOrderingFeature.cjs +0 -58
  378. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +0 -1
  379. package/dist/features/column-ordering/columnOrderingFeature.d.cts +0 -10
  380. package/dist/features/column-ordering/columnOrderingFeature.js.map +0 -1
  381. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +0 -56
  382. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +0 -172
  383. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +0 -1
  384. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +0 -107
  385. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +0 -1
  386. package/dist/features/column-pinning/columnPinningFeature.cjs +0 -221
  387. package/dist/features/column-pinning/columnPinningFeature.cjs.map +0 -1
  388. package/dist/features/column-pinning/columnPinningFeature.d.cts +0 -10
  389. package/dist/features/column-pinning/columnPinningFeature.js.map +0 -1
  390. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +0 -178
  391. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +0 -585
  392. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +0 -1
  393. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +0 -375
  394. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +0 -1
  395. package/dist/features/column-resizing/columnResizingFeature.cjs +0 -41
  396. package/dist/features/column-resizing/columnResizingFeature.cjs.map +0 -1
  397. package/dist/features/column-resizing/columnResizingFeature.d.cts +0 -10
  398. package/dist/features/column-resizing/columnResizingFeature.js.map +0 -1
  399. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +0 -81
  400. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +0 -246
  401. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +0 -1
  402. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +0 -109
  403. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +0 -1
  404. package/dist/features/column-sizing/columnSizingFeature.cjs +0 -124
  405. package/dist/features/column-sizing/columnSizingFeature.cjs.map +0 -1
  406. package/dist/features/column-sizing/columnSizingFeature.d.cts +0 -10
  407. package/dist/features/column-sizing/columnSizingFeature.js.map +0 -1
  408. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +0 -96
  409. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +0 -256
  410. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +0 -1
  411. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +0 -182
  412. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +0 -1
  413. package/dist/features/column-visibility/columnVisibilityFeature.cjs +0 -94
  414. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +0 -1
  415. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +0 -10
  416. package/dist/features/column-visibility/columnVisibilityFeature.js.map +0 -1
  417. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +0 -97
  418. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +0 -283
  419. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +0 -1
  420. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +0 -189
  421. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +0 -1
  422. package/dist/features/global-filtering/globalFilteringFeature.cjs +0 -41
  423. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +0 -1
  424. package/dist/features/global-filtering/globalFilteringFeature.d.cts +0 -10
  425. package/dist/features/global-filtering/globalFilteringFeature.js.map +0 -1
  426. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +0 -71
  427. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +0 -88
  428. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +0 -1
  429. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +0 -74
  430. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +0 -1
  431. package/dist/features/row-expanding/createExpandedRowModel.cjs +0 -59
  432. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +0 -1
  433. package/dist/features/row-expanding/createExpandedRowModel.d.cts +0 -21
  434. package/dist/features/row-expanding/createExpandedRowModel.js.map +0 -1
  435. package/dist/features/row-expanding/rowExpandingFeature.cjs +0 -47
  436. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +0 -1
  437. package/dist/features/row-expanding/rowExpandingFeature.d.cts +0 -10
  438. package/dist/features/row-expanding/rowExpandingFeature.js.map +0 -1
  439. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +0 -127
  440. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +0 -281
  441. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +0 -1
  442. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +0 -191
  443. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +0 -1
  444. package/dist/features/row-pagination/createPaginatedRowModel.cjs +0 -62
  445. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +0 -1
  446. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +0 -15
  447. package/dist/features/row-pagination/createPaginatedRowModel.js.map +0 -1
  448. package/dist/features/row-pagination/rowPaginationFeature.cjs +0 -45
  449. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +0 -1
  450. package/dist/features/row-pagination/rowPaginationFeature.d.cts +0 -10
  451. package/dist/features/row-pagination/rowPaginationFeature.js.map +0 -1
  452. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +0 -135
  453. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +0 -312
  454. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +0 -1
  455. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +0 -218
  456. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +0 -1
  457. package/dist/features/row-pinning/rowPinningFeature.cjs +0 -67
  458. package/dist/features/row-pinning/rowPinningFeature.cjs.map +0 -1
  459. package/dist/features/row-pinning/rowPinningFeature.d.cts +0 -10
  460. package/dist/features/row-pinning/rowPinningFeature.js.map +0 -1
  461. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +0 -83
  462. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +0 -229
  463. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +0 -1
  464. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +0 -143
  465. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +0 -1
  466. package/dist/features/row-selection/rowSelectionFeature.cjs +0 -75
  467. package/dist/features/row-selection/rowSelectionFeature.cjs.map +0 -1
  468. package/dist/features/row-selection/rowSelectionFeature.d.cts +0 -10
  469. package/dist/features/row-selection/rowSelectionFeature.js.map +0 -1
  470. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +0 -136
  471. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +0 -514
  472. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +0 -1
  473. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +0 -318
  474. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +0 -1
  475. package/dist/features/row-sorting/createSortedRowModel.cjs +0 -95
  476. package/dist/features/row-sorting/createSortedRowModel.cjs.map +0 -1
  477. package/dist/features/row-sorting/createSortedRowModel.d.cts +0 -16
  478. package/dist/features/row-sorting/createSortedRowModel.js.map +0 -1
  479. package/dist/features/row-sorting/rowSortingFeature.cjs +0 -55
  480. package/dist/features/row-sorting/rowSortingFeature.cjs.map +0 -1
  481. package/dist/features/row-sorting/rowSortingFeature.d.cts +0 -10
  482. package/dist/features/row-sorting/rowSortingFeature.js.map +0 -1
  483. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +0 -188
  484. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +0 -305
  485. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +0 -1
  486. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +0 -193
  487. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +0 -1
  488. package/dist/features/stockFeatures.cjs +0 -41
  489. package/dist/features/stockFeatures.cjs.map +0 -1
  490. package/dist/features/stockFeatures.d.cts +0 -41
  491. package/dist/features/stockFeatures.js.map +0 -1
  492. package/dist/flex-render.cjs +0 -29
  493. package/dist/flex-render.cjs.map +0 -1
  494. package/dist/flex-render.d.cts +0 -34
  495. package/dist/flex-render.js.map +0 -1
  496. package/dist/fns/aggregationFns.cjs +0 -161
  497. package/dist/fns/aggregationFns.cjs.map +0 -1
  498. package/dist/fns/aggregationFns.d.cts +0 -85
  499. package/dist/fns/aggregationFns.d.ts +0 -85
  500. package/dist/fns/aggregationFns.js +0 -151
  501. package/dist/fns/aggregationFns.js.map +0 -1
  502. package/dist/fns/filterFns.cjs +0 -201
  503. package/dist/fns/filterFns.cjs.map +0 -1
  504. package/dist/fns/filterFns.d.cts +0 -167
  505. package/dist/fns/filterFns.d.ts +0 -167
  506. package/dist/fns/filterFns.js +0 -185
  507. package/dist/fns/filterFns.js.map +0 -1
  508. package/dist/fns/sortFns.cjs +0 -130
  509. package/dist/fns/sortFns.cjs.map +0 -1
  510. package/dist/fns/sortFns.d.cts +0 -65
  511. package/dist/fns/sortFns.d.ts +0 -65
  512. package/dist/fns/sortFns.js +0 -122
  513. package/dist/fns/sortFns.js.map +0 -1
  514. package/dist/helpers/columnHelper.cjs +0 -41
  515. package/dist/helpers/columnHelper.cjs.map +0 -1
  516. package/dist/helpers/columnHelper.d.cts +0 -71
  517. package/dist/helpers/columnHelper.js.map +0 -1
  518. package/dist/helpers/tableFeatures.cjs +0 -20
  519. package/dist/helpers/tableFeatures.cjs.map +0 -1
  520. package/dist/helpers/tableFeatures.d.cts +0 -18
  521. package/dist/helpers/tableFeatures.js.map +0 -1
  522. package/dist/helpers/tableOptions.cjs +0 -15
  523. package/dist/helpers/tableOptions.cjs.map +0 -1
  524. package/dist/helpers/tableOptions.d.cts +0 -57
  525. package/dist/helpers/tableOptions.js.map +0 -1
  526. package/dist/index.cjs +0 -133
  527. package/dist/index.d.cts +0 -78
  528. package/dist/reactivity.cjs +0 -4
  529. package/dist/reactivity.d.cts +0 -3
  530. package/dist/static-functions.cjs +0 -263
  531. package/dist/static-functions.d.cts +0 -21
  532. package/dist/store-reactivity-bindings.cjs +0 -44
  533. package/dist/store-reactivity-bindings.cjs.map +0 -1
  534. package/dist/store-reactivity-bindings.d.cts +0 -22
  535. package/dist/store-reactivity-bindings.js.map +0 -1
  536. package/dist/types/Cell.d.cts +0 -14
  537. package/dist/types/Column.d.cts +0 -36
  538. package/dist/types/ColumnDef.d.cts +0 -109
  539. package/dist/types/Header.d.cts +0 -16
  540. package/dist/types/HeaderGroup.d.cts +0 -10
  541. package/dist/types/Row.d.cts +0 -26
  542. package/dist/types/RowModel.d.cts +0 -36
  543. package/dist/types/RowModelFns.d.cts +0 -18
  544. package/dist/types/Table.d.cts +0 -70
  545. package/dist/types/TableFeatures.d.cts +0 -53
  546. package/dist/types/TableOptions.d.cts +0 -69
  547. package/dist/types/TableState.d.cts +0 -48
  548. package/dist/types/type-utils.d.cts +0 -23
  549. package/dist/utils.cjs +0 -243
  550. package/dist/utils.cjs.map +0 -1
  551. package/dist/utils.d.cts +0 -114
  552. package/dist/utils.js.map +0 -1
  553. package/skills/column-definitions/SKILL.md +0 -333
  554. package/skills/column-layout/SKILL.md +0 -328
  555. package/skills/column-layout/references/subsystems.md +0 -220
  556. package/skills/customizing-feature-behavior/SKILL.md +0 -416
  557. package/skills/filtering/SKILL.md +0 -357
  558. package/skills/filtering/references/faceting-and-fuzzy.md +0 -191
  559. package/skills/row-expanding/SKILL.md +0 -348
  560. package/skills/setup/SKILL.md +0 -400
  561. package/skills/state-management/SKILL.md +0 -388
  562. package/src/core/cells/constructCell.ts +0 -55
  563. package/src/core/cells/coreCellsFeature.ts +0 -27
  564. package/src/core/cells/coreCellsFeature.types.ts +0 -68
  565. package/src/core/cells/coreCellsFeature.utils.ts +0 -68
  566. package/src/core/columns/constructColumn.ts +0 -119
  567. package/src/core/columns/coreColumnsFeature.ts +0 -73
  568. package/src/core/columns/coreColumnsFeature.types.ts +0 -108
  569. package/src/core/columns/coreColumnsFeature.utils.ts +0 -275
  570. package/src/core/coreFeatures.ts +0 -31
  571. package/src/core/headers/buildHeaderGroups.ts +0 -182
  572. package/src/core/headers/constructHeader.ts +0 -67
  573. package/src/core/headers/coreHeadersFeature.ts +0 -56
  574. package/src/core/headers/coreHeadersFeature.types.ts +0 -125
  575. package/src/core/headers/coreHeadersFeature.utils.ts +0 -200
  576. package/src/core/reactivity/coreReactivityFeature.types.ts +0 -56
  577. package/src/core/reactivity/coreReactivityFeature.utils.ts +0 -44
  578. package/src/core/row-models/coreRowModelsFeature.ts +0 -62
  579. package/src/core/row-models/coreRowModelsFeature.types.ts +0 -64
  580. package/src/core/row-models/coreRowModelsFeature.utils.ts +0 -272
  581. package/src/core/row-models/createCoreRowModel.ts +0 -93
  582. package/src/core/rows/constructRow.ts +0 -66
  583. package/src/core/rows/coreRowsFeature.ts +0 -62
  584. package/src/core/rows/coreRowsFeature.types.ts +0 -117
  585. package/src/core/rows/coreRowsFeature.utils.ts +0 -264
  586. package/src/core/table/constructTable.ts +0 -172
  587. package/src/core/table/coreTablesFeature.ts +0 -19
  588. package/src/core/table/coreTablesFeature.types.ts +0 -216
  589. package/src/core/table/coreTablesFeature.utils.ts +0 -131
  590. package/src/features/column-faceting/columnFacetingFeature.ts +0 -89
  591. package/src/features/column-faceting/columnFacetingFeature.types.ts +0 -109
  592. package/src/features/column-faceting/columnFacetingFeature.utils.ts +0 -145
  593. package/src/features/column-faceting/createFacetedMinMaxValues.ts +0 -66
  594. package/src/features/column-faceting/createFacetedRowModel.ts +0 -85
  595. package/src/features/column-faceting/createFacetedUniqueValues.ts +0 -66
  596. package/src/features/column-filtering/columnFilteringFeature.ts +0 -86
  597. package/src/features/column-filtering/columnFilteringFeature.types.ts +0 -232
  598. package/src/features/column-filtering/columnFilteringFeature.utils.ts +0 -331
  599. package/src/features/column-filtering/createFilteredRowModel.ts +0 -183
  600. package/src/features/column-filtering/filterRowsUtils.ts +0 -157
  601. package/src/features/column-grouping/columnGroupingFeature.ts +0 -115
  602. package/src/features/column-grouping/columnGroupingFeature.types.ts +0 -226
  603. package/src/features/column-grouping/columnGroupingFeature.utils.ts +0 -354
  604. package/src/features/column-grouping/createGroupedRowModel.ts +0 -220
  605. package/src/features/column-ordering/columnOrderingFeature.ts +0 -73
  606. package/src/features/column-ordering/columnOrderingFeature.types.ts +0 -60
  607. package/src/features/column-ordering/columnOrderingFeature.utils.ts +0 -241
  608. package/src/features/column-pinning/columnPinningFeature.ts +0 -316
  609. package/src/features/column-pinning/columnPinningFeature.types.ts +0 -192
  610. package/src/features/column-pinning/columnPinningFeature.utils.ts +0 -908
  611. package/src/features/column-resizing/columnResizingFeature.ts +0 -65
  612. package/src/features/column-resizing/columnResizingFeature.types.ts +0 -89
  613. package/src/features/column-resizing/columnResizingFeature.utils.ts +0 -364
  614. package/src/features/column-sizing/columnSizingFeature.ts +0 -145
  615. package/src/features/column-sizing/columnSizingFeature.types.ts +0 -102
  616. package/src/features/column-sizing/columnSizingFeature.utils.ts +0 -381
  617. package/src/features/column-visibility/columnVisibilityFeature.ts +0 -122
  618. package/src/features/column-visibility/columnVisibilityFeature.types.ts +0 -112
  619. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +0 -384
  620. package/src/features/global-filtering/globalFilteringFeature.ts +0 -65
  621. package/src/features/global-filtering/globalFilteringFeature.types.ts +0 -91
  622. package/src/features/global-filtering/globalFilteringFeature.utils.ts +0 -118
  623. package/src/features/row-expanding/createExpandedRowModel.ts +0 -82
  624. package/src/features/row-expanding/rowExpandingFeature.ts +0 -94
  625. package/src/features/row-expanding/rowExpandingFeature.types.ts +0 -147
  626. package/src/features/row-expanding/rowExpandingFeature.utils.ts +0 -374
  627. package/src/features/row-pagination/createPaginatedRowModel.ts +0 -83
  628. package/src/features/row-pagination/rowPaginationFeature.ts +0 -95
  629. package/src/features/row-pagination/rowPaginationFeature.types.ts +0 -152
  630. package/src/features/row-pagination/rowPaginationFeature.utils.ts +0 -400
  631. package/src/features/row-pinning/rowPinningFeature.ts +0 -97
  632. package/src/features/row-pinning/rowPinningFeature.types.ts +0 -95
  633. package/src/features/row-pinning/rowPinningFeature.utils.ts +0 -323
  634. package/src/features/row-selection/rowSelectionFeature.ts +0 -140
  635. package/src/features/row-selection/rowSelectionFeature.types.ts +0 -151
  636. package/src/features/row-selection/rowSelectionFeature.utils.ts +0 -745
  637. package/src/features/row-sorting/createSortedRowModel.ts +0 -157
  638. package/src/features/row-sorting/rowSortingFeature.ts +0 -103
  639. package/src/features/row-sorting/rowSortingFeature.types.ts +0 -235
  640. package/src/features/row-sorting/rowSortingFeature.utils.ts +0 -489
  641. package/src/features/stockFeatures.ts +0 -53
  642. package/src/flex-render.ts +0 -70
  643. package/src/fns/aggregationFns.ts +0 -245
  644. package/src/fns/filterFns.ts +0 -382
  645. package/src/fns/sortFns.ts +0 -240
  646. package/src/helpers/columnHelper.ts +0 -122
  647. package/src/helpers/tableFeatures.ts +0 -24
  648. package/src/helpers/tableOptions.ts +0 -117
  649. package/src/index.ts +0 -138
  650. package/src/process-env.d.ts +0 -6
  651. package/src/reactivity.ts +0 -2
  652. package/src/static-functions.ts +0 -31
  653. package/src/store-reactivity-bindings.ts +0 -47
  654. package/src/types/Cell.ts +0 -21
  655. package/src/types/Column.ts +0 -51
  656. package/src/types/ColumnDef.ts +0 -228
  657. package/src/types/Header.ts +0 -23
  658. package/src/types/HeaderGroup.ts +0 -13
  659. package/src/types/Row.ts +0 -34
  660. package/src/types/RowModel.ts +0 -98
  661. package/src/types/RowModelFns.ts +0 -32
  662. package/src/types/Table.ts +0 -91
  663. package/src/types/TableFeatures.ts +0 -101
  664. package/src/types/TableOptions.ts +0 -101
  665. package/src/types/TableState.ts +0 -47
  666. package/src/types/type-utils.ts +0 -84
  667. package/src/utils.ts +0 -441
@@ -1,908 +0,0 @@
1
- import {
2
- column_getIsVisible,
3
- row_getVisibleCells,
4
- row_getVisibleCellsByColumnId,
5
- table_getVisibleLeafColumns,
6
- } from '../column-visibility/columnVisibilityFeature.utils'
7
- import { buildHeaderGroups } from '../../core/headers/buildHeaderGroups'
8
- import { callMemoOrStaticFn, cloneState } from '../../utils'
9
- import type { Header } from '../../types/Header'
10
- import type { HeaderGroup } from '../../types/HeaderGroup'
11
- import type { Cell } from '../../types/Cell'
12
- import type { Row } from '../../types/Row'
13
- import type { CellData, RowData, Updater } from '../../types/type-utils'
14
- import type { TableFeatures } from '../../types/TableFeatures'
15
- import type { Table_Internal } from '../../types/Table'
16
- import type { Column_Internal } from '../../types/Column'
17
- import type {
18
- ColumnPinningPosition,
19
- ColumnPinningState,
20
- } from './columnPinningFeature.types'
21
-
22
- // State
23
-
24
- /**
25
- * Creates the default column pinning state.
26
- *
27
- * Both pinning regions start empty. Reset APIs use this value when
28
- * `defaultState` is `true`.
29
- *
30
- * @example
31
- * ```ts
32
- * const pinning = getDefaultColumnPinningState()
33
- * ```
34
- */
35
- export function getDefaultColumnPinningState(): ColumnPinningState {
36
- return {
37
- left: [],
38
- right: [],
39
- }
40
- }
41
-
42
- // Column APIs
43
-
44
- /**
45
- * Moves this column's leaf column ids into a pinning region.
46
- *
47
- * Pinning a group column pins all of its leaves. The leaf ids are first removed
48
- * from both regions, then appended to the requested `'left'` or `'right'`
49
- * region. Passing `false` unpins them back to the center.
50
- *
51
- * @example
52
- * ```ts
53
- * column_pin(column, 'left')
54
- * ```
55
- */
56
- export function column_pin<
57
- TFeatures extends TableFeatures,
58
- TData extends RowData,
59
- TValue extends CellData = CellData,
60
- >(
61
- column: Column_Internal<TFeatures, TData, TValue>,
62
- position: ColumnPinningPosition,
63
- ) {
64
- // Single pass: collect non-empty leaf-column ids.
65
- const leafColumns = column.getLeafColumns()
66
- const columnIds: Array<string> = []
67
- for (let i = 0; i < leafColumns.length; i++) {
68
- const id = leafColumns[i]!.id
69
- if (id) columnIds.push(id)
70
- }
71
-
72
- table_setColumnPinning(column.table, (old) => {
73
- if (position === 'right') {
74
- return {
75
- left: old.left.filter((d) => !columnIds.includes(d)),
76
- right: [
77
- ...old.right.filter((d) => !columnIds.includes(d)),
78
- ...columnIds,
79
- ],
80
- }
81
- }
82
-
83
- if (position === 'left') {
84
- return {
85
- left: [...old.left.filter((d) => !columnIds.includes(d)), ...columnIds],
86
- right: old.right.filter((d) => !columnIds.includes(d)),
87
- }
88
- }
89
-
90
- return {
91
- left: old.left.filter((d) => !columnIds.includes(d)),
92
- right: old.right.filter((d) => !columnIds.includes(d)),
93
- }
94
- })
95
- }
96
-
97
- /**
98
- * Checks whether this column or any of its leaf columns can be pinned.
99
- *
100
- * Column-level `enablePinning` and table `enableColumnPinning` both default to
101
- * `true`; at least one leaf column must allow pinning.
102
- *
103
- * @example
104
- * ```ts
105
- * const canPin = column_getCanPin(column)
106
- * ```
107
- */
108
- export function column_getCanPin<
109
- TFeatures extends TableFeatures,
110
- TData extends RowData,
111
- TValue extends CellData = CellData,
112
- >(column: Column_Internal<TFeatures, TData, TValue>) {
113
- const leafColumns = column.getLeafColumns() as Array<
114
- Column_Internal<TFeatures, TData, TValue>
115
- >
116
-
117
- return leafColumns.some(
118
- (leafColumn) =>
119
- (leafColumn.columnDef.enablePinning ?? true) &&
120
- (column.table.options.enableColumnPinning ?? true),
121
- )
122
- }
123
-
124
- /**
125
- * Reads this column's current pinning region.
126
- *
127
- * Group columns report `'left'` or `'right'` when any leaf column is pinned in
128
- * that region. Unpinned columns return `false`.
129
- *
130
- * @example
131
- * ```ts
132
- * const position = column_getIsPinned(column)
133
- * ```
134
- */
135
- export function column_getIsPinned<
136
- TFeatures extends TableFeatures,
137
- TData extends RowData,
138
- TValue extends CellData = CellData,
139
- >(
140
- column: Column_Internal<TFeatures, TData, TValue>,
141
- ): ColumnPinningPosition | false {
142
- const leafColumnIds = column.getLeafColumns().map((d) => d.id)
143
-
144
- const { left, right } =
145
- column.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
146
-
147
- const isLeft = leafColumnIds.some((d) => left.includes(d))
148
- const isRight = leafColumnIds.some((d) => right.includes(d))
149
-
150
- return isLeft ? 'left' : isRight ? 'right' : false
151
- }
152
-
153
- /**
154
- * Finds this column's index within its pinned region.
155
- *
156
- * Unpinned columns return `0`; pinned columns return their position in
157
- * `state.columnPinning.left` or `state.columnPinning.right`.
158
- *
159
- * @example
160
- * ```ts
161
- * const index = column_getPinnedIndex(column)
162
- * ```
163
- */
164
- export function column_getPinnedIndex<
165
- TFeatures extends TableFeatures,
166
- TData extends RowData,
167
- TValue extends CellData = CellData,
168
- >(column: Column_Internal<TFeatures, TData, TValue>) {
169
- const position = column_getIsPinned(column)
170
-
171
- return position
172
- ? (column.table.atoms.columnPinning?.get()?.[position].indexOf(column.id) ??
173
- -1)
174
- : 0
175
- }
176
-
177
- // Row APIs
178
-
179
- /**
180
- * Collects visible cells whose columns are not pinned left or right.
181
- *
182
- * The result preserves the row's visible-cell order for center columns.
183
- *
184
- * @example
185
- * ```ts
186
- * const centerCells = row_getCenterVisibleCells(row)
187
- * ```
188
- */
189
- export function row_getCenterVisibleCells<
190
- TFeatures extends TableFeatures,
191
- TData extends RowData,
192
- >(row: Row<TFeatures, TData>) {
193
- const allCells = callMemoOrStaticFn(
194
- row,
195
- 'getVisibleCells',
196
- row_getVisibleCells,
197
- )
198
- const { left, right } =
199
- row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
200
- const leftAndRight: Array<string> = [...left, ...right]
201
- return allCells.filter((d) => !leftAndRight.includes(d.column.id))
202
- }
203
-
204
- /**
205
- * Collects visible cells for columns pinned to the left region.
206
- *
207
- * Cells are returned in `state.columnPinning.left` order and are marked with
208
- * `cell.position = 'left'`.
209
- *
210
- * @example
211
- * ```ts
212
- * const leftCells = row_getLeftVisibleCells(row)
213
- * ```
214
- */
215
- export function row_getLeftVisibleCells<
216
- TFeatures extends TableFeatures,
217
- TData extends RowData,
218
- >(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>> {
219
- const { left } =
220
- row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
221
- if (!left.length) return []
222
- const allVisibleCells = callMemoOrStaticFn(
223
- row,
224
- 'getVisibleCellsByColumnId',
225
- row_getVisibleCellsByColumnId,
226
- )
227
- const cells: Array<Cell<TFeatures, TData, unknown>> = []
228
- for (let i = 0; i < left.length; i++) {
229
- const columnId = left[i]!
230
- const cell = allVisibleCells[columnId]
231
- if (cell) {
232
- // Assign position property directly to preserve prototype chain
233
- ;(cell as any).position = 'left'
234
- cells.push(cell)
235
- }
236
- }
237
- return cells
238
- }
239
-
240
- /**
241
- * Collects visible cells for columns pinned to the right region.
242
- *
243
- * Cells are returned in `state.columnPinning.right` order and are marked with
244
- * `cell.position = 'right'`.
245
- *
246
- * @example
247
- * ```ts
248
- * const rightCells = row_getRightVisibleCells(row)
249
- * ```
250
- */
251
- export function row_getRightVisibleCells<
252
- TFeatures extends TableFeatures,
253
- TData extends RowData,
254
- >(row: Row<TFeatures, TData>) {
255
- const { right } =
256
- row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
257
- if (!right.length) return [] as Array<Cell<TFeatures, TData, unknown>>
258
- const allVisibleCells = callMemoOrStaticFn(
259
- row,
260
- 'getVisibleCellsByColumnId',
261
- row_getVisibleCellsByColumnId,
262
- )
263
- const cells: Array<Cell<TFeatures, TData, unknown>> = []
264
- for (let i = 0; i < right.length; i++) {
265
- const columnId = right[i]!
266
- const cell = allVisibleCells[columnId]
267
- if (cell) {
268
- // Assign position property directly to preserve prototype chain
269
- ;(cell as any).position = 'right'
270
- cells.push(cell)
271
- }
272
- }
273
- return cells
274
- }
275
-
276
- // Table APIs
277
-
278
- /**
279
- * Routes a column pinning updater through the table's pinning change handler.
280
- *
281
- * The updater may be a next `{ left, right }` state or a function of the
282
- * previous state, matching the instance `table.setColumnPinning` behavior.
283
- *
284
- * @example
285
- * ```ts
286
- * table_setColumnPinning(table, (old) => ({ ...old, left: ['select'] }))
287
- * ```
288
- */
289
- export function table_setColumnPinning<
290
- TFeatures extends TableFeatures,
291
- TData extends RowData,
292
- >(
293
- table: Table_Internal<TFeatures, TData>,
294
- updater: Updater<ColumnPinningState>,
295
- ) {
296
- table.options.onColumnPinningChange?.(updater)
297
- }
298
-
299
- /**
300
- * Resets `columnPinning` to the configured initial state or feature default.
301
- *
302
- * With no argument, the reset clones `table.initialState.columnPinning` when it
303
- * exists. Passing `true` ignores initial state and resets to empty left/right
304
- * arrays.
305
- *
306
- * @example
307
- * ```ts
308
- * table_resetColumnPinning(table)
309
- * table_resetColumnPinning(table, true)
310
- * ```
311
- */
312
- export function table_resetColumnPinning<
313
- TFeatures extends TableFeatures,
314
- TData extends RowData,
315
- >(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {
316
- table_setColumnPinning(
317
- table,
318
- defaultState
319
- ? getDefaultColumnPinningState()
320
- : cloneState(
321
- table.initialState.columnPinning ?? getDefaultColumnPinningState(),
322
- ),
323
- )
324
- }
325
-
326
- /**
327
- * Checks whether any columns are pinned.
328
- *
329
- * Omit `position` to check both sides, or pass `'left'`/`'right'` to inspect a
330
- * single pinning region.
331
- *
332
- * @example
333
- * ```ts
334
- * const hasPinnedColumns = table_getIsSomeColumnsPinned(table)
335
- * ```
336
- */
337
- export function table_getIsSomeColumnsPinned<
338
- TFeatures extends TableFeatures,
339
- TData extends RowData,
340
- >(table: Table_Internal<TFeatures, TData>, position?: ColumnPinningPosition) {
341
- const pinningState = table.atoms.columnPinning?.get()
342
-
343
- if (!position) {
344
- return Boolean(pinningState?.left.length || pinningState?.right.length)
345
- }
346
- return Boolean(pinningState?.[position].length)
347
- }
348
-
349
- // header groups
350
-
351
- /**
352
- * Builds header groups for visible columns pinned to the left region.
353
- *
354
- * The leaf columns are read in `state.columnPinning.left` order and then passed
355
- * through the same header-group builder as the unpinned table.
356
- *
357
- * @example
358
- * ```ts
359
- * const headerGroups = table_getLeftHeaderGroups(table)
360
- * ```
361
- */
362
- export function table_getLeftHeaderGroups<
363
- TFeatures extends TableFeatures,
364
- TData extends RowData,
365
- >(table: Table_Internal<TFeatures, TData>) {
366
- const allColumns = table.getAllColumns()
367
- const leafColumnsById = table.getAllLeafColumnsById() as Record<
368
- string,
369
- Column_Internal<TFeatures, TData, unknown>
370
- >
371
- const { left } =
372
- table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
373
-
374
- const orderedLeafColumns: Array<Column_Internal<TFeatures, TData, unknown>> =
375
- []
376
- for (let i = 0; i < left.length; i++) {
377
- const column = leafColumnsById[left[i]!]
378
- if (
379
- column &&
380
- callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible)
381
- ) {
382
- orderedLeafColumns.push(column)
383
- }
384
- }
385
-
386
- return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'left')
387
- }
388
-
389
- /**
390
- * Builds header groups for visible columns pinned to the right region.
391
- *
392
- * The leaf columns are read in `state.columnPinning.right` order and then
393
- * passed through the same header-group builder as the unpinned table.
394
- *
395
- * @example
396
- * ```ts
397
- * const headerGroups = table_getRightHeaderGroups(table)
398
- * ```
399
- */
400
- export function table_getRightHeaderGroups<
401
- TFeatures extends TableFeatures,
402
- TData extends RowData,
403
- >(table: Table_Internal<TFeatures, TData>) {
404
- const allColumns = table.getAllColumns()
405
- const leafColumnsById = table.getAllLeafColumnsById() as Record<
406
- string,
407
- Column_Internal<TFeatures, TData, unknown>
408
- >
409
- const { right } =
410
- table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
411
-
412
- const orderedLeafColumns: Array<Column_Internal<TFeatures, TData, unknown>> =
413
- []
414
- for (let i = 0; i < right.length; i++) {
415
- const column = leafColumnsById[right[i]!]
416
- if (
417
- column &&
418
- callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible)
419
- ) {
420
- orderedLeafColumns.push(column)
421
- }
422
- }
423
-
424
- return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'right')
425
- }
426
-
427
- /**
428
- * Builds header groups for visible columns that are not pinned.
429
- *
430
- * Left- and right-pinned column ids are removed from the visible leaf column
431
- * list before header groups are built for the center region.
432
- *
433
- * @example
434
- * ```ts
435
- * const headerGroups = table_getCenterHeaderGroups(table)
436
- * ```
437
- */
438
- export function table_getCenterHeaderGroups<
439
- TFeatures extends TableFeatures,
440
- TData extends RowData,
441
- >(
442
- table: Table_Internal<TFeatures, TData>,
443
- ): Array<HeaderGroup<TFeatures, TData>> {
444
- const allColumns = table.getAllColumns()
445
- let leafColumns = callMemoOrStaticFn(
446
- table,
447
- 'getVisibleLeafColumns',
448
- table_getVisibleLeafColumns,
449
- ) as unknown as Array<Column_Internal<TFeatures, TData, unknown>>
450
- const { left, right } =
451
- table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
452
- const leftAndRight: Array<string> = [...left, ...right]
453
-
454
- leafColumns = leafColumns.filter(
455
- (column) => !leftAndRight.includes(column.id),
456
- )
457
- return buildHeaderGroups(allColumns, leafColumns, table, 'center')
458
- }
459
-
460
- // footer groups
461
-
462
- /**
463
- * Builds footer groups for the left pinned region.
464
- *
465
- * Footer groups reuse the left header groups in reverse order.
466
- *
467
- * @example
468
- * ```ts
469
- * const footerGroups = table_getLeftFooterGroups(table)
470
- * ```
471
- */
472
- export function table_getLeftFooterGroups<
473
- TFeatures extends TableFeatures,
474
- TData extends RowData,
475
- >(table: Table_Internal<TFeatures, TData>) {
476
- const headerGroups = callMemoOrStaticFn(
477
- table,
478
- 'getLeftHeaderGroups',
479
- table_getLeftHeaderGroups,
480
- )
481
- return [...headerGroups].reverse()
482
- }
483
-
484
- /**
485
- * Builds footer groups for the right pinned region.
486
- *
487
- * Footer groups reuse the right header groups in reverse order.
488
- *
489
- * @example
490
- * ```ts
491
- * const footerGroups = table_getRightFooterGroups(table)
492
- * ```
493
- */
494
- export function table_getRightFooterGroups<
495
- TFeatures extends TableFeatures,
496
- TData extends RowData,
497
- >(table: Table_Internal<TFeatures, TData>) {
498
- const headerGroups = callMemoOrStaticFn(
499
- table,
500
- 'getRightHeaderGroups',
501
- table_getRightHeaderGroups,
502
- )
503
- return [...headerGroups].reverse()
504
- }
505
-
506
- /**
507
- * Builds footer groups for the center, unpinned region.
508
- *
509
- * Footer groups reuse the center header groups in reverse order.
510
- *
511
- * @example
512
- * ```ts
513
- * const footerGroups = table_getCenterFooterGroups(table)
514
- * ```
515
- */
516
- export function table_getCenterFooterGroups<
517
- TFeatures extends TableFeatures,
518
- TData extends RowData,
519
- >(table: Table_Internal<TFeatures, TData>) {
520
- const headerGroups = callMemoOrStaticFn(
521
- table,
522
- 'getCenterHeaderGroups',
523
- table_getCenterHeaderGroups,
524
- )
525
- return [...headerGroups].reverse()
526
- }
527
-
528
- // flat headers
529
-
530
- /**
531
- * Flattens every header from the left pinned header groups.
532
- *
533
- * Parent headers and placeholder headers are included.
534
- *
535
- * @example
536
- * ```ts
537
- * const headers = table_getLeftFlatHeaders(table)
538
- * ```
539
- */
540
- export function table_getLeftFlatHeaders<
541
- TFeatures extends TableFeatures,
542
- TData extends RowData,
543
- >(table: Table_Internal<TFeatures, TData>) {
544
- const leftHeaderGroups = callMemoOrStaticFn(
545
- table,
546
- 'getLeftHeaderGroups',
547
- table_getLeftHeaderGroups,
548
- )
549
- const result: Array<Header<TFeatures, TData, unknown>> = []
550
- for (let i = 0; i < leftHeaderGroups.length; i++) {
551
- const headers = leftHeaderGroups[i]!.headers
552
- for (let j = 0; j < headers.length; j++) {
553
- result.push(headers[j]!)
554
- }
555
- }
556
- return result
557
- }
558
-
559
- /**
560
- * Flattens every header from the right pinned header groups.
561
- *
562
- * Parent headers and placeholder headers are included.
563
- *
564
- * @example
565
- * ```ts
566
- * const headers = table_getRightFlatHeaders(table)
567
- * ```
568
- */
569
- export function table_getRightFlatHeaders<
570
- TFeatures extends TableFeatures,
571
- TData extends RowData,
572
- >(table: Table_Internal<TFeatures, TData>) {
573
- const rightHeaderGroups = callMemoOrStaticFn(
574
- table,
575
- 'getRightHeaderGroups',
576
- table_getRightHeaderGroups,
577
- )
578
- const result: Array<Header<TFeatures, TData, unknown>> = []
579
- for (let i = 0; i < rightHeaderGroups.length; i++) {
580
- const headers = rightHeaderGroups[i]!.headers
581
- for (let j = 0; j < headers.length; j++) {
582
- result.push(headers[j]!)
583
- }
584
- }
585
- return result
586
- }
587
-
588
- /**
589
- * Flattens every header from the center header groups.
590
- *
591
- * Parent headers and placeholder headers are included.
592
- *
593
- * @example
594
- * ```ts
595
- * const headers = table_getCenterFlatHeaders(table)
596
- * ```
597
- */
598
- export function table_getCenterFlatHeaders<
599
- TFeatures extends TableFeatures,
600
- TData extends RowData,
601
- >(table: Table_Internal<TFeatures, TData>) {
602
- const centerHeaderGroups = callMemoOrStaticFn(
603
- table,
604
- 'getCenterHeaderGroups',
605
- table_getCenterHeaderGroups,
606
- )
607
- const result: Array<Header<TFeatures, TData, unknown>> = []
608
- for (let i = 0; i < centerHeaderGroups.length; i++) {
609
- const headers = centerHeaderGroups[i]!.headers
610
- for (let j = 0; j < headers.length; j++) {
611
- result.push(headers[j]!)
612
- }
613
- }
614
- return result
615
- }
616
-
617
- // leaf headers
618
-
619
- /**
620
- * Collects leaf headers for the left pinned region.
621
- *
622
- * Parent headers are filtered out from the left flat header list.
623
- *
624
- * @example
625
- * ```ts
626
- * const headers = table_getLeftLeafHeaders(table)
627
- * ```
628
- */
629
- export function table_getLeftLeafHeaders<
630
- TFeatures extends TableFeatures,
631
- TData extends RowData,
632
- >(table: Table_Internal<TFeatures, TData>) {
633
- return callMemoOrStaticFn(
634
- table,
635
- 'getLeftFlatHeaders',
636
- table_getLeftFlatHeaders,
637
- ).filter((header) => !header.subHeaders.length)
638
- }
639
-
640
- /**
641
- * Collects leaf headers for the right pinned region.
642
- *
643
- * Parent headers are filtered out from the right flat header list.
644
- *
645
- * @example
646
- * ```ts
647
- * const headers = table_getRightLeafHeaders(table)
648
- * ```
649
- */
650
- export function table_getRightLeafHeaders<
651
- TFeatures extends TableFeatures,
652
- TData extends RowData,
653
- >(table: Table_Internal<TFeatures, TData>) {
654
- return callMemoOrStaticFn(
655
- table,
656
- 'getRightFlatHeaders',
657
- table_getRightFlatHeaders,
658
- ).filter((header) => !header.subHeaders.length)
659
- }
660
-
661
- /**
662
- * Collects leaf headers for the center, unpinned region.
663
- *
664
- * Parent headers are filtered out from the center flat header list.
665
- *
666
- * @example
667
- * ```ts
668
- * const headers = table_getCenterLeafHeaders(table)
669
- * ```
670
- */
671
- export function table_getCenterLeafHeaders<
672
- TFeatures extends TableFeatures,
673
- TData extends RowData,
674
- >(table: Table_Internal<TFeatures, TData>) {
675
- return callMemoOrStaticFn(
676
- table,
677
- 'getCenterFlatHeaders',
678
- table_getCenterFlatHeaders,
679
- ).filter((header) => !header.subHeaders.length)
680
- }
681
-
682
- // leaf columns
683
-
684
- /**
685
- * Resolves leaf columns pinned to the left region.
686
- *
687
- * The result follows `state.columnPinning.left` order and skips stale ids that
688
- * no longer correspond to a leaf column.
689
- *
690
- * @example
691
- * ```ts
692
- * const columns = table_getLeftLeafColumns(table)
693
- * ```
694
- */
695
- export function table_getLeftLeafColumns<
696
- TFeatures extends TableFeatures,
697
- TData extends RowData,
698
- >(table: Table_Internal<TFeatures, TData>) {
699
- const { left } =
700
- table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
701
- const leafColumnsById = table.getAllLeafColumnsById()
702
- const result: Array<Column_Internal<TFeatures, TData, unknown>> = []
703
- for (let i = 0; i < left.length; i++) {
704
- const column = leafColumnsById[left[i]!]
705
- if (column) result.push(column)
706
- }
707
- return result
708
- }
709
-
710
- /**
711
- * Resolves leaf columns pinned to the right region.
712
- *
713
- * The result follows `state.columnPinning.right` order and skips stale ids that
714
- * no longer correspond to a leaf column.
715
- *
716
- * @example
717
- * ```ts
718
- * const columns = table_getRightLeafColumns(table)
719
- * ```
720
- */
721
- export function table_getRightLeafColumns<
722
- TFeatures extends TableFeatures,
723
- TData extends RowData,
724
- >(table: Table_Internal<TFeatures, TData>) {
725
- const { right } =
726
- table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
727
- const leafColumnsById = table.getAllLeafColumnsById()
728
- const result: Array<Column_Internal<TFeatures, TData, unknown>> = []
729
- for (let i = 0; i < right.length; i++) {
730
- const column = leafColumnsById[right[i]!]
731
- if (column) result.push(column)
732
- }
733
- return result
734
- }
735
-
736
- /**
737
- * Resolves leaf columns that are not pinned to either side.
738
- *
739
- * Left- and right-pinned ids are removed from `table.getAllLeafColumns()`.
740
- *
741
- * @example
742
- * ```ts
743
- * const columns = table_getCenterLeafColumns(table)
744
- * ```
745
- */
746
- export function table_getCenterLeafColumns<
747
- TFeatures extends TableFeatures,
748
- TData extends RowData,
749
- >(table: Table_Internal<TFeatures, TData>) {
750
- const { left, right } =
751
- table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
752
- const leftAndRight: Array<string> = [...left, ...right]
753
- return table.getAllLeafColumns().filter((d) => !leftAndRight.includes(d.id))
754
- }
755
-
756
- /**
757
- * Resolves leaf columns for a requested pinning region.
758
- *
759
- * Pass `'left'`, `'center'`, or `'right'` for a partition, or pass `false` to
760
- * read all leaf columns without partitioning.
761
- *
762
- * @example
763
- * ```ts
764
- * const columns = table_getPinnedLeafColumns(table, 'center')
765
- * ```
766
- */
767
- export function table_getPinnedLeafColumns<
768
- TFeatures extends TableFeatures,
769
- TData extends RowData,
770
- >(
771
- table: Table_Internal<TFeatures, TData>,
772
- position: ColumnPinningPosition | 'center',
773
- ) {
774
- return !position
775
- ? table.getAllLeafColumns()
776
- : position === 'left'
777
- ? callMemoOrStaticFn(
778
- table,
779
- 'getLeftLeafColumns',
780
- table_getLeftLeafColumns,
781
- )
782
- : position === 'right'
783
- ? callMemoOrStaticFn(
784
- table,
785
- 'getRightLeafColumns',
786
- table_getRightLeafColumns,
787
- )
788
- : callMemoOrStaticFn(
789
- table,
790
- 'getCenterLeafColumns',
791
- table_getCenterLeafColumns,
792
- )
793
- }
794
-
795
- // visible leaf columns
796
-
797
- /**
798
- * Resolves visible leaf columns pinned to the left region.
799
- *
800
- * Hidden pinned columns are filtered out after the left pin order is applied.
801
- *
802
- * @example
803
- * ```ts
804
- * const columns = table_getLeftVisibleLeafColumns(table)
805
- * ```
806
- */
807
- export function table_getLeftVisibleLeafColumns<
808
- TFeatures extends TableFeatures,
809
- TData extends RowData,
810
- >(table: Table_Internal<TFeatures, TData>) {
811
- return callMemoOrStaticFn(
812
- table,
813
- 'getLeftLeafColumns',
814
- table_getLeftLeafColumns,
815
- ).filter((column) =>
816
- callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),
817
- )
818
- }
819
-
820
- /**
821
- * Resolves visible leaf columns pinned to the right region.
822
- *
823
- * Hidden pinned columns are filtered out after the right pin order is applied.
824
- *
825
- * @example
826
- * ```ts
827
- * const columns = table_getRightVisibleLeafColumns(table)
828
- * ```
829
- */
830
- export function table_getRightVisibleLeafColumns<
831
- TFeatures extends TableFeatures,
832
- TData extends RowData,
833
- >(table: Table_Internal<TFeatures, TData>) {
834
- return callMemoOrStaticFn(
835
- table,
836
- 'getRightLeafColumns',
837
- table_getRightLeafColumns,
838
- ).filter((column) =>
839
- callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),
840
- )
841
- }
842
-
843
- /**
844
- * Resolves visible leaf columns that are not pinned.
845
- *
846
- * This is the center partition used by layouts that render pinned columns
847
- * separately from the scrollable middle region.
848
- *
849
- * @example
850
- * ```ts
851
- * const columns = table_getCenterVisibleLeafColumns(table)
852
- * ```
853
- */
854
- export function table_getCenterVisibleLeafColumns<
855
- TFeatures extends TableFeatures,
856
- TData extends RowData,
857
- >(table: Table_Internal<TFeatures, TData>) {
858
- return callMemoOrStaticFn(
859
- table,
860
- 'getCenterLeafColumns',
861
- table_getCenterLeafColumns,
862
- ).filter((column) =>
863
- callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),
864
- )
865
- }
866
-
867
- /**
868
- * Resolves visible leaf columns for a requested pinning region.
869
- *
870
- * Omit `position` to get all visible leaf columns, or pass `'left'`, `'center'`,
871
- * or `'right'` to get one partition.
872
- *
873
- * @example
874
- * ```ts
875
- * const columns = table_getPinnedVisibleLeafColumns(table, 'left')
876
- * ```
877
- */
878
- export function table_getPinnedVisibleLeafColumns<
879
- TFeatures extends TableFeatures,
880
- TData extends RowData,
881
- >(
882
- table: Table_Internal<TFeatures, TData>,
883
- position?: ColumnPinningPosition | 'center',
884
- ) {
885
- return !position
886
- ? callMemoOrStaticFn(
887
- table,
888
- 'getVisibleLeafColumns',
889
- table_getVisibleLeafColumns,
890
- )
891
- : position === 'left'
892
- ? callMemoOrStaticFn(
893
- table,
894
- 'getLeftVisibleLeafColumns',
895
- table_getLeftVisibleLeafColumns,
896
- )
897
- : position === 'right'
898
- ? callMemoOrStaticFn(
899
- table,
900
- 'getRightVisibleLeafColumns',
901
- table_getRightVisibleLeafColumns,
902
- )
903
- : callMemoOrStaticFn(
904
- table,
905
- 'getCenterVisibleLeafColumns',
906
- table_getCenterVisibleLeafColumns,
907
- )
908
- }