@tanstack/table-core 9.0.0-alpha.4 → 9.0.0-alpha.41

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 (824) hide show
  1. package/README.md +117 -0
  2. package/dist/core/cells/constructCell.cjs +28 -0
  3. package/dist/core/cells/constructCell.cjs.map +1 -0
  4. package/dist/core/cells/constructCell.d.cts +12 -0
  5. package/dist/core/cells/constructCell.d.ts +12 -0
  6. package/dist/core/cells/constructCell.js +27 -0
  7. package/dist/core/cells/constructCell.js.map +1 -0
  8. package/dist/core/cells/coreCellsFeature.cjs +25 -0
  9. package/dist/core/cells/coreCellsFeature.cjs.map +1 -0
  10. package/dist/core/cells/coreCellsFeature.d.cts +13 -0
  11. package/dist/core/cells/coreCellsFeature.d.ts +13 -0
  12. package/dist/core/cells/coreCellsFeature.js +24 -0
  13. package/dist/core/cells/coreCellsFeature.js.map +1 -0
  14. package/dist/core/cells/coreCellsFeature.types.d.cts +57 -0
  15. package/dist/core/cells/coreCellsFeature.types.d.ts +57 -0
  16. package/dist/core/cells/coreCellsFeature.utils.cjs +24 -0
  17. package/dist/core/cells/coreCellsFeature.utils.cjs.map +1 -0
  18. package/dist/core/cells/coreCellsFeature.utils.d.cts +20 -0
  19. package/dist/core/cells/coreCellsFeature.utils.d.ts +20 -0
  20. package/dist/core/cells/coreCellsFeature.utils.js +21 -0
  21. package/dist/core/cells/coreCellsFeature.utils.js.map +1 -0
  22. package/dist/core/columns/constructColumn.cjs +52 -0
  23. package/dist/core/columns/constructColumn.cjs.map +1 -0
  24. package/dist/core/columns/constructColumn.d.cts +11 -0
  25. package/dist/core/columns/constructColumn.d.ts +11 -0
  26. package/dist/core/columns/constructColumn.js +51 -0
  27. package/dist/core/columns/constructColumn.js.map +1 -0
  28. package/dist/core/columns/coreColumnsFeature.cjs +70 -0
  29. package/dist/core/columns/coreColumnsFeature.cjs.map +1 -0
  30. package/dist/core/columns/coreColumnsFeature.d.cts +13 -0
  31. package/dist/core/columns/coreColumnsFeature.d.ts +13 -0
  32. package/dist/core/columns/coreColumnsFeature.js +69 -0
  33. package/dist/core/columns/coreColumnsFeature.js.map +1 -0
  34. package/dist/core/columns/coreColumnsFeature.types.d.cts +89 -0
  35. package/dist/core/columns/coreColumnsFeature.types.d.ts +89 -0
  36. package/dist/core/columns/coreColumnsFeature.utils.cjs +74 -0
  37. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -0
  38. package/dist/core/columns/coreColumnsFeature.utils.d.cts +18 -0
  39. package/dist/core/columns/coreColumnsFeature.utils.d.ts +18 -0
  40. package/dist/core/columns/coreColumnsFeature.utils.js +67 -0
  41. package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -0
  42. package/dist/core/coreFeatures.cjs +20 -0
  43. package/dist/core/coreFeatures.cjs.map +1 -0
  44. package/dist/core/coreFeatures.d.cts +20 -0
  45. package/dist/core/coreFeatures.d.ts +20 -0
  46. package/dist/core/coreFeatures.js +20 -0
  47. package/dist/core/coreFeatures.js.map +1 -0
  48. package/dist/core/headers/buildHeaderGroups.cjs +90 -0
  49. package/dist/core/headers/buildHeaderGroups.cjs.map +1 -0
  50. package/dist/core/headers/buildHeaderGroups.d.cts +11 -0
  51. package/dist/core/headers/buildHeaderGroups.d.ts +11 -0
  52. package/dist/core/headers/buildHeaderGroups.js +90 -0
  53. package/dist/core/headers/buildHeaderGroups.js.map +1 -0
  54. package/dist/core/headers/constructHeader.cjs +35 -0
  55. package/dist/core/headers/constructHeader.cjs.map +1 -0
  56. package/dist/core/headers/constructHeader.d.cts +17 -0
  57. package/dist/core/headers/constructHeader.d.ts +17 -0
  58. package/dist/core/headers/constructHeader.js +34 -0
  59. package/dist/core/headers/constructHeader.js.map +1 -0
  60. package/dist/core/headers/coreHeadersFeature.cjs +64 -0
  61. package/dist/core/headers/coreHeadersFeature.cjs.map +1 -0
  62. package/dist/core/headers/coreHeadersFeature.d.cts +13 -0
  63. package/dist/core/headers/coreHeadersFeature.d.ts +13 -0
  64. package/dist/core/headers/coreHeadersFeature.js +63 -0
  65. package/dist/core/headers/coreHeadersFeature.js.map +1 -0
  66. package/dist/core/headers/coreHeadersFeature.types.d.cts +104 -0
  67. package/dist/core/headers/coreHeadersFeature.types.d.ts +104 -0
  68. package/dist/core/headers/coreHeadersFeature.utils.cjs +66 -0
  69. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -0
  70. package/dist/core/headers/coreHeadersFeature.utils.d.cts +20 -0
  71. package/dist/core/headers/coreHeadersFeature.utils.d.ts +20 -0
  72. package/dist/core/headers/coreHeadersFeature.utils.js +61 -0
  73. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -0
  74. package/dist/core/row-models/coreRowModelsFeature.cjs +31 -0
  75. package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -0
  76. package/dist/core/row-models/coreRowModelsFeature.d.cts +13 -0
  77. package/dist/core/row-models/coreRowModelsFeature.d.ts +13 -0
  78. package/dist/core/row-models/coreRowModelsFeature.js +30 -0
  79. package/dist/core/row-models/coreRowModelsFeature.js.map +1 -0
  80. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +42 -0
  81. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +42 -0
  82. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +83 -0
  83. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -0
  84. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +21 -0
  85. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +21 -0
  86. package/dist/core/row-models/coreRowModelsFeature.utils.js +72 -0
  87. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -0
  88. package/dist/core/row-models/createCoreRowModel.cjs +47 -0
  89. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -0
  90. package/dist/core/row-models/createCoreRowModel.d.cts +10 -0
  91. package/dist/core/row-models/createCoreRowModel.d.ts +10 -0
  92. package/dist/core/row-models/createCoreRowModel.js +47 -0
  93. package/dist/core/row-models/createCoreRowModel.js.map +1 -0
  94. package/dist/core/rows/constructRow.cjs +37 -0
  95. package/dist/core/rows/constructRow.cjs.map +1 -0
  96. package/dist/core/rows/constructRow.d.cts +10 -0
  97. package/dist/core/rows/constructRow.d.ts +10 -0
  98. package/dist/core/rows/constructRow.js +36 -0
  99. package/dist/core/rows/constructRow.js.map +1 -0
  100. package/dist/core/rows/coreRowsFeature.cjs +41 -0
  101. package/dist/core/rows/coreRowsFeature.cjs.map +1 -0
  102. package/dist/core/rows/coreRowsFeature.d.cts +13 -0
  103. package/dist/core/rows/coreRowsFeature.d.ts +13 -0
  104. package/dist/core/rows/coreRowsFeature.js +40 -0
  105. package/dist/core/rows/coreRowsFeature.js.map +1 -0
  106. package/dist/core/rows/coreRowsFeature.types.d.cts +96 -0
  107. package/dist/core/rows/coreRowsFeature.types.d.ts +96 -0
  108. package/dist/core/rows/coreRowsFeature.utils.cjs +81 -0
  109. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -0
  110. package/dist/core/rows/coreRowsFeature.utils.d.cts +20 -0
  111. package/dist/core/rows/coreRowsFeature.utils.d.ts +20 -0
  112. package/dist/core/rows/coreRowsFeature.utils.js +72 -0
  113. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -0
  114. package/dist/core/table/constructTable.cjs +79 -0
  115. package/dist/core/table/constructTable.cjs.map +1 -0
  116. package/dist/core/table/constructTable.d.cts +12 -0
  117. package/dist/core/table/constructTable.d.ts +12 -0
  118. package/dist/core/table/constructTable.js +78 -0
  119. package/dist/core/table/constructTable.js.map +1 -0
  120. package/dist/core/table/coreTablesFeature.cjs +21 -0
  121. package/dist/core/table/coreTablesFeature.cjs.map +1 -0
  122. package/dist/core/table/coreTablesFeature.d.cts +13 -0
  123. package/dist/core/table/coreTablesFeature.d.ts +13 -0
  124. package/dist/core/table/coreTablesFeature.js +20 -0
  125. package/dist/core/table/coreTablesFeature.js.map +1 -0
  126. package/dist/core/table/coreTablesFeature.types.d.cts +157 -0
  127. package/dist/core/table/coreTablesFeature.types.d.ts +157 -0
  128. package/dist/core/table/coreTablesFeature.utils.cjs +27 -0
  129. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -0
  130. package/dist/core/table/coreTablesFeature.utils.d.cts +12 -0
  131. package/dist/core/table/coreTablesFeature.utils.d.ts +12 -0
  132. package/dist/core/table/coreTablesFeature.utils.js +25 -0
  133. package/dist/core/table/coreTablesFeature.utils.js.map +1 -0
  134. package/dist/features/column-faceting/columnFacetingFeature.cjs +65 -0
  135. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -0
  136. package/dist/features/column-faceting/columnFacetingFeature.d.cts +13 -0
  137. package/dist/features/column-faceting/columnFacetingFeature.d.ts +13 -0
  138. package/dist/features/column-faceting/columnFacetingFeature.js +64 -0
  139. package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -0
  140. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +73 -0
  141. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +73 -0
  142. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +35 -0
  143. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -0
  144. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +16 -0
  145. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +16 -0
  146. package/dist/features/column-faceting/columnFacetingFeature.utils.js +29 -0
  147. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -0
  148. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +36 -0
  149. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -0
  150. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +9 -0
  151. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +9 -0
  152. package/dist/features/column-faceting/createFacetedMinMaxValues.js +36 -0
  153. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -0
  154. package/dist/features/column-faceting/createFacetedRowModel.cjs +40 -0
  155. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -0
  156. package/dist/features/column-faceting/createFacetedRowModel.d.cts +10 -0
  157. package/dist/features/column-faceting/createFacetedRowModel.d.ts +10 -0
  158. package/dist/features/column-faceting/createFacetedRowModel.js +40 -0
  159. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -0
  160. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +33 -0
  161. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -0
  162. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +9 -0
  163. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +9 -0
  164. package/dist/features/column-faceting/createFacetedUniqueValues.js +33 -0
  165. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -0
  166. package/dist/features/column-filtering/columnFilteringFeature.cjs +55 -0
  167. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -0
  168. package/dist/features/column-filtering/columnFilteringFeature.d.cts +14 -0
  169. package/dist/features/column-filtering/columnFilteringFeature.d.ts +14 -0
  170. package/dist/features/column-filtering/columnFilteringFeature.js +54 -0
  171. package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -0
  172. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +147 -0
  173. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +147 -0
  174. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +90 -0
  175. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -0
  176. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +21 -0
  177. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +21 -0
  178. package/dist/features/column-filtering/columnFilteringFeature.utils.js +80 -0
  179. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -0
  180. package/dist/features/column-filtering/createFilteredRowModel.cjs +99 -0
  181. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -0
  182. package/dist/features/column-filtering/createFilteredRowModel.d.cts +11 -0
  183. package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -0
  184. package/dist/features/column-filtering/createFilteredRowModel.js +99 -0
  185. package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -0
  186. package/dist/features/column-filtering/filterRowsUtils.cjs +76 -0
  187. package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -0
  188. package/dist/features/column-filtering/filterRowsUtils.js +76 -0
  189. package/dist/features/column-filtering/filterRowsUtils.js.map +1 -0
  190. package/dist/features/column-grouping/columnGroupingFeature.cjs +71 -0
  191. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -0
  192. package/dist/features/column-grouping/columnGroupingFeature.d.cts +13 -0
  193. package/dist/features/column-grouping/columnGroupingFeature.d.ts +13 -0
  194. package/dist/features/column-grouping/columnGroupingFeature.js +70 -0
  195. package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -0
  196. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +157 -0
  197. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +157 -0
  198. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +88 -0
  199. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -0
  200. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +27 -0
  201. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +27 -0
  202. package/dist/features/column-grouping/columnGroupingFeature.utils.js +74 -0
  203. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -0
  204. package/dist/features/column-grouping/createGroupedRowModel.cjs +114 -0
  205. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -0
  206. package/dist/features/column-grouping/createGroupedRowModel.d.cts +11 -0
  207. package/dist/features/column-grouping/createGroupedRowModel.d.ts +11 -0
  208. package/dist/features/column-grouping/createGroupedRowModel.js +114 -0
  209. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -0
  210. package/dist/features/column-ordering/columnOrderingFeature.cjs +61 -0
  211. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -0
  212. package/dist/features/column-ordering/columnOrderingFeature.d.cts +13 -0
  213. package/dist/features/column-ordering/columnOrderingFeature.d.ts +13 -0
  214. package/dist/features/column-ordering/columnOrderingFeature.js +60 -0
  215. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -0
  216. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +45 -0
  217. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +45 -0
  218. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +65 -0
  219. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -0
  220. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +19 -0
  221. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +19 -0
  222. package/dist/features/column-ordering/columnOrderingFeature.utils.js +58 -0
  223. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -0
  224. package/dist/features/column-pinning/columnPinningFeature.cjs +231 -0
  225. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -0
  226. package/dist/features/column-pinning/columnPinningFeature.d.cts +13 -0
  227. package/dist/features/column-pinning/columnPinningFeature.d.ts +13 -0
  228. package/dist/features/column-pinning/columnPinningFeature.js +230 -0
  229. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -0
  230. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +162 -0
  231. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +162 -0
  232. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +205 -0
  233. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -0
  234. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +43 -0
  235. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +43 -0
  236. package/dist/features/column-pinning/columnPinningFeature.utils.js +175 -0
  237. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -0
  238. package/dist/features/column-resizing/columnResizingFeature.cjs +46 -0
  239. package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -0
  240. package/dist/features/column-resizing/columnResizingFeature.d.cts +14 -0
  241. package/dist/features/column-resizing/columnResizingFeature.d.ts +14 -0
  242. package/dist/features/column-resizing/columnResizingFeature.js +45 -0
  243. package/dist/features/column-resizing/columnResizingFeature.js.map +1 -0
  244. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +73 -0
  245. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +73 -0
  246. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +157 -0
  247. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -0
  248. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +19 -0
  249. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +19 -0
  250. package/dist/features/column-resizing/columnResizingFeature.utils.js +150 -0
  251. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -0
  252. package/dist/features/column-sizing/columnSizingFeature.cjs +75 -0
  253. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -0
  254. package/dist/features/column-sizing/columnSizingFeature.d.cts +14 -0
  255. package/dist/features/column-sizing/columnSizingFeature.d.ts +14 -0
  256. package/dist/features/column-sizing/columnSizingFeature.js +74 -0
  257. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -0
  258. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +86 -0
  259. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +86 -0
  260. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +97 -0
  261. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -0
  262. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +30 -0
  263. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +30 -0
  264. package/dist/features/column-sizing/columnSizingFeature.utils.js +84 -0
  265. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -0
  266. package/dist/features/column-visibility/columnVisibilityFeature.cjs +96 -0
  267. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -0
  268. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +13 -0
  269. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +13 -0
  270. package/dist/features/column-visibility/columnVisibilityFeature.js +95 -0
  271. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -0
  272. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +89 -0
  273. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +89 -0
  274. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +84 -0
  275. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -0
  276. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +26 -0
  277. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +26 -0
  278. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +70 -0
  279. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -0
  280. package/dist/features/global-filtering/globalFilteringFeature.cjs +46 -0
  281. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -0
  282. package/dist/features/global-filtering/globalFilteringFeature.d.cts +14 -0
  283. package/dist/features/global-filtering/globalFilteringFeature.d.ts +14 -0
  284. package/dist/features/global-filtering/globalFilteringFeature.js +45 -0
  285. package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -0
  286. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +64 -0
  287. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +64 -0
  288. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +31 -0
  289. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -0
  290. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +15 -0
  291. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +15 -0
  292. package/dist/features/global-filtering/globalFilteringFeature.utils.js +27 -0
  293. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -0
  294. package/dist/features/row-expanding/createExpandedRowModel.cjs +49 -0
  295. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -0
  296. package/dist/features/row-expanding/createExpandedRowModel.d.cts +11 -0
  297. package/dist/features/row-expanding/createExpandedRowModel.d.ts +11 -0
  298. package/dist/features/row-expanding/createExpandedRowModel.js +48 -0
  299. package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -0
  300. package/dist/features/row-expanding/rowExpandingFeature.cjs +51 -0
  301. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -0
  302. package/dist/features/row-expanding/rowExpandingFeature.d.cts +13 -0
  303. package/dist/features/row-expanding/rowExpandingFeature.d.ts +13 -0
  304. package/dist/features/row-expanding/rowExpandingFeature.js +50 -0
  305. package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -0
  306. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +121 -0
  307. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +121 -0
  308. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +115 -0
  309. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -0
  310. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +25 -0
  311. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +25 -0
  312. package/dist/features/row-expanding/rowExpandingFeature.utils.js +101 -0
  313. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -0
  314. package/dist/features/row-pagination/createPaginatedRowModel.cjs +57 -0
  315. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -0
  316. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +10 -0
  317. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +10 -0
  318. package/dist/features/row-pagination/createPaginatedRowModel.js +57 -0
  319. package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -0
  320. package/dist/features/row-pagination/rowPaginationFeature.cjs +49 -0
  321. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -0
  322. package/dist/features/row-pagination/rowPaginationFeature.d.cts +13 -0
  323. package/dist/features/row-pagination/rowPaginationFeature.d.ts +13 -0
  324. package/dist/features/row-pagination/rowPaginationFeature.js +48 -0
  325. package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -0
  326. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +124 -0
  327. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +124 -0
  328. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +120 -0
  329. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -0
  330. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +26 -0
  331. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +26 -0
  332. package/dist/features/row-pagination/rowPaginationFeature.utils.js +104 -0
  333. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -0
  334. package/dist/features/row-pinning/rowPinningFeature.cjs +71 -0
  335. package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -0
  336. package/dist/features/row-pinning/rowPinningFeature.d.cts +13 -0
  337. package/dist/features/row-pinning/rowPinningFeature.d.ts +13 -0
  338. package/dist/features/row-pinning/rowPinningFeature.js +70 -0
  339. package/dist/features/row-pinning/rowPinningFeature.js.map +1 -0
  340. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +77 -0
  341. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +77 -0
  342. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +101 -0
  343. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -0
  344. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +21 -0
  345. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +21 -0
  346. package/dist/features/row-pinning/rowPinningFeature.utils.js +91 -0
  347. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -0
  348. package/dist/features/row-selection/rowSelectionFeature.cjs +79 -0
  349. package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -0
  350. package/dist/features/row-selection/rowSelectionFeature.d.cts +13 -0
  351. package/dist/features/row-selection/rowSelectionFeature.d.ts +13 -0
  352. package/dist/features/row-selection/rowSelectionFeature.js +78 -0
  353. package/dist/features/row-selection/rowSelectionFeature.js.map +1 -0
  354. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +128 -0
  355. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +128 -0
  356. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +232 -0
  357. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -0
  358. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +39 -0
  359. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +39 -0
  360. package/dist/features/row-selection/rowSelectionFeature.utils.js +207 -0
  361. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -0
  362. package/dist/features/row-sorting/createSortedRowModel.cjs +85 -0
  363. package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -0
  364. package/dist/features/row-sorting/createSortedRowModel.d.cts +11 -0
  365. package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -0
  366. package/dist/features/row-sorting/createSortedRowModel.js +85 -0
  367. package/dist/features/row-sorting/createSortedRowModel.js.map +1 -0
  368. package/dist/features/row-sorting/rowSortingFeature.cjs +59 -0
  369. package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -0
  370. package/dist/features/row-sorting/rowSortingFeature.d.cts +13 -0
  371. package/dist/features/row-sorting/rowSortingFeature.d.ts +13 -0
  372. package/dist/features/row-sorting/rowSortingFeature.js +58 -0
  373. package/dist/features/row-sorting/rowSortingFeature.js.map +1 -0
  374. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +182 -0
  375. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +182 -0
  376. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +134 -0
  377. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -0
  378. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +25 -0
  379. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +25 -0
  380. package/dist/features/row-sorting/rowSortingFeature.utils.js +120 -0
  381. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -0
  382. package/dist/features/stockFeatures.cjs +36 -0
  383. package/dist/features/stockFeatures.cjs.map +1 -0
  384. package/dist/features/stockFeatures.d.cts +36 -0
  385. package/dist/features/stockFeatures.d.ts +36 -0
  386. package/dist/features/stockFeatures.js +36 -0
  387. package/dist/features/stockFeatures.js.map +1 -0
  388. package/dist/features/table-reactivity/tableReactivityFeature.cjs +46 -0
  389. package/dist/features/table-reactivity/tableReactivityFeature.cjs.map +1 -0
  390. package/dist/features/table-reactivity/tableReactivityFeature.d.cts +12 -0
  391. package/dist/features/table-reactivity/tableReactivityFeature.d.ts +12 -0
  392. package/dist/features/table-reactivity/tableReactivityFeature.js +45 -0
  393. package/dist/features/table-reactivity/tableReactivityFeature.js.map +1 -0
  394. package/dist/flex-render.cjs +19 -0
  395. package/dist/flex-render.cjs.map +1 -0
  396. package/dist/flex-render.d.cts +24 -0
  397. package/dist/flex-render.d.ts +24 -0
  398. package/dist/flex-render.js +16 -0
  399. package/dist/flex-render.js.map +1 -0
  400. package/dist/fns/aggregationFns.cjs +125 -0
  401. package/dist/fns/aggregationFns.cjs.map +1 -0
  402. package/dist/fns/aggregationFns.d.cts +54 -0
  403. package/dist/fns/aggregationFns.d.ts +54 -0
  404. package/dist/fns/aggregationFns.js +116 -0
  405. package/dist/fns/aggregationFns.js.map +1 -0
  406. package/dist/fns/filterFns.cjs +179 -0
  407. package/dist/fns/filterFns.cjs.map +1 -0
  408. package/dist/fns/filterFns.d.cts +81 -0
  409. package/dist/fns/filterFns.d.ts +81 -0
  410. package/dist/fns/filterFns.js +163 -0
  411. package/dist/fns/filterFns.js.map +1 -0
  412. package/dist/fns/sortFns.cjs +73 -0
  413. package/dist/fns/sortFns.cjs.map +1 -0
  414. package/dist/fns/sortFns.d.cts +22 -0
  415. package/dist/fns/sortFns.d.ts +22 -0
  416. package/dist/fns/sortFns.js +65 -0
  417. package/dist/fns/sortFns.js.map +1 -0
  418. package/dist/helpers/columnHelper.cjs +36 -0
  419. package/dist/helpers/columnHelper.cjs.map +1 -0
  420. package/dist/helpers/columnHelper.d.cts +66 -0
  421. package/dist/helpers/columnHelper.d.ts +66 -0
  422. package/dist/helpers/columnHelper.js +35 -0
  423. package/dist/helpers/columnHelper.js.map +1 -0
  424. package/dist/helpers/tableFeatures.cjs +20 -0
  425. package/dist/helpers/tableFeatures.cjs.map +1 -0
  426. package/dist/helpers/tableFeatures.d.cts +18 -0
  427. package/dist/helpers/tableFeatures.d.ts +18 -0
  428. package/dist/helpers/tableFeatures.js +19 -0
  429. package/dist/helpers/tableFeatures.js.map +1 -0
  430. package/dist/helpers/tableOptions.cjs +9 -0
  431. package/dist/helpers/tableOptions.cjs.map +1 -0
  432. package/dist/helpers/tableOptions.d.cts +28 -0
  433. package/dist/helpers/tableOptions.d.ts +28 -0
  434. package/dist/helpers/tableOptions.js +8 -0
  435. package/dist/helpers/tableOptions.js.map +1 -0
  436. package/dist/index.cjs +159 -0
  437. package/dist/index.d.cts +79 -0
  438. package/dist/index.d.ts +79 -0
  439. package/dist/index.js +47 -0
  440. package/dist/static-functions.cjs +261 -0
  441. package/dist/static-functions.d.cts +21 -0
  442. package/dist/static-functions.d.ts +21 -0
  443. package/dist/static-functions.js +22 -0
  444. package/dist/types/Cell.d.cts +16 -0
  445. package/dist/types/Cell.d.ts +16 -0
  446. package/dist/types/Column.d.cts +29 -0
  447. package/dist/types/Column.d.ts +29 -0
  448. package/dist/types/ColumnDef.d.cts +66 -0
  449. package/dist/types/ColumnDef.d.ts +66 -0
  450. package/dist/types/Header.d.cts +17 -0
  451. package/dist/types/Header.d.ts +17 -0
  452. package/dist/types/HeaderGroup.d.cts +15 -0
  453. package/dist/types/HeaderGroup.d.ts +15 -0
  454. package/dist/types/Row.d.cts +22 -0
  455. package/dist/types/Row.d.ts +22 -0
  456. package/dist/types/RowModel.d.cts +26 -0
  457. package/dist/types/RowModel.d.ts +26 -0
  458. package/dist/types/RowModelFns.d.cts +18 -0
  459. package/dist/types/RowModelFns.d.ts +18 -0
  460. package/dist/types/Table.d.cts +59 -0
  461. package/dist/types/Table.d.ts +59 -0
  462. package/dist/types/TableFeatures.d.cts +77 -0
  463. package/dist/types/TableFeatures.d.ts +77 -0
  464. package/dist/types/TableOptions.d.cts +39 -0
  465. package/dist/types/TableOptions.d.ts +39 -0
  466. package/dist/types/TableState.d.cts +27 -0
  467. package/dist/types/TableState.d.ts +27 -0
  468. package/dist/types/type-utils.d.cts +23 -0
  469. package/dist/types/type-utils.d.ts +23 -0
  470. package/dist/utils.cjs +218 -0
  471. package/dist/utils.cjs.map +1 -0
  472. package/dist/utils.d.cts +91 -0
  473. package/dist/utils.d.ts +91 -0
  474. package/dist/utils.js +203 -0
  475. package/dist/utils.js.map +1 -0
  476. package/package.json +31 -14
  477. package/src/core/cells/constructCell.ts +49 -0
  478. package/src/core/cells/coreCellsFeature.ts +44 -0
  479. package/src/core/cells/coreCellsFeature.types.ts +68 -0
  480. package/src/core/cells/coreCellsFeature.utils.ts +35 -0
  481. package/src/core/columns/constructColumn.ts +111 -0
  482. package/src/core/columns/coreColumnsFeature.ts +90 -0
  483. package/src/core/columns/coreColumnsFeature.types.ts +103 -0
  484. package/src/core/columns/coreColumnsFeature.utils.ts +160 -0
  485. package/src/core/coreFeatures.ts +24 -0
  486. package/src/core/headers/buildHeaderGroups.ts +177 -0
  487. package/src/core/headers/constructHeader.ts +61 -0
  488. package/src/core/headers/coreHeadersFeature.ts +98 -0
  489. package/src/core/headers/coreHeadersFeature.types.ts +123 -0
  490. package/src/core/headers/coreHeadersFeature.utils.ts +131 -0
  491. package/src/core/row-models/coreRowModelsFeature.ts +78 -0
  492. package/src/core/row-models/coreRowModelsFeature.types.ts +67 -0
  493. package/src/core/row-models/coreRowModelsFeature.utils.ts +140 -0
  494. package/src/core/row-models/createCoreRowModel.ts +88 -0
  495. package/src/core/rows/constructRow.ts +59 -0
  496. package/src/core/rows/coreRowsFeature.ts +84 -0
  497. package/src/core/rows/coreRowsFeature.types.ts +114 -0
  498. package/src/core/rows/coreRowsFeature.utils.ts +152 -0
  499. package/src/core/table/constructTable.ts +110 -0
  500. package/src/core/table/coreTablesFeature.ts +36 -0
  501. package/src/core/table/coreTablesFeature.types.ts +187 -0
  502. package/src/core/table/coreTablesFeature.utils.ts +47 -0
  503. package/src/features/column-faceting/columnFacetingFeature.ts +112 -0
  504. package/src/features/column-faceting/columnFacetingFeature.types.ts +97 -0
  505. package/src/features/column-faceting/columnFacetingFeature.utils.ts +77 -0
  506. package/src/features/column-faceting/createFacetedMinMaxValues.ts +63 -0
  507. package/src/features/column-faceting/createFacetedRowModel.ts +76 -0
  508. package/src/features/column-faceting/createFacetedUniqueValues.ts +60 -0
  509. package/src/features/column-filtering/columnFilteringFeature.ts +121 -0
  510. package/src/features/column-filtering/columnFilteringFeature.types.ts +219 -0
  511. package/src/features/column-filtering/columnFilteringFeature.utils.ts +209 -0
  512. package/src/features/column-filtering/createFilteredRowModel.ts +172 -0
  513. package/src/features/column-filtering/filterRowsUtils.ts +152 -0
  514. package/src/features/column-grouping/columnGroupingFeature.ts +151 -0
  515. package/src/features/column-grouping/columnGroupingFeature.types.ts +218 -0
  516. package/src/features/column-grouping/columnGroupingFeature.utils.ts +192 -0
  517. package/src/features/column-grouping/createGroupedRowModel.ts +215 -0
  518. package/src/features/column-ordering/columnOrderingFeature.ts +96 -0
  519. package/src/features/column-ordering/columnOrderingFeature.types.ts +49 -0
  520. package/src/features/column-ordering/columnOrderingFeature.utils.ts +134 -0
  521. package/src/features/column-pinning/columnPinningFeature.ts +347 -0
  522. package/src/features/column-pinning/columnPinningFeature.types.ts +176 -0
  523. package/src/features/column-pinning/columnPinningFeature.utils.ts +539 -0
  524. package/src/features/column-resizing/columnResizingFeature.ts +92 -0
  525. package/src/features/column-resizing/columnResizingFeature.types.ts +81 -0
  526. package/src/features/column-resizing/columnResizingFeature.utils.ts +276 -0
  527. package/src/features/column-sizing/columnSizingFeature.ts +146 -0
  528. package/src/features/column-sizing/columnSizingFeature.types.ts +92 -0
  529. package/src/features/column-sizing/columnSizingFeature.utils.ts +211 -0
  530. package/src/features/column-visibility/columnVisibilityFeature.ts +157 -0
  531. package/src/features/column-visibility/columnVisibilityFeature.types.ts +101 -0
  532. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +183 -0
  533. package/src/features/global-filtering/globalFilteringFeature.ts +92 -0
  534. package/src/features/global-filtering/globalFilteringFeature.types.ts +84 -0
  535. package/src/features/global-filtering/globalFilteringFeature.utils.ts +59 -0
  536. package/src/features/row-expanding/createExpandedRowModel.ts +72 -0
  537. package/src/features/row-expanding/rowExpandingFeature.ts +122 -0
  538. package/src/features/row-expanding/rowExpandingFeature.types.ts +141 -0
  539. package/src/features/row-expanding/rowExpandingFeature.utils.ts +208 -0
  540. package/src/features/row-pagination/createPaginatedRowModel.ts +78 -0
  541. package/src/features/row-pagination/rowPaginationFeature.ts +121 -0
  542. package/src/features/row-pagination/rowPaginationFeature.types.ts +141 -0
  543. package/src/features/row-pagination/rowPaginationFeature.utils.ts +208 -0
  544. package/src/features/row-pinning/rowPinningFeature.ts +121 -0
  545. package/src/features/row-pinning/rowPinningFeature.types.ts +89 -0
  546. package/src/features/row-pinning/rowPinningFeature.utils.ts +199 -0
  547. package/src/features/row-selection/rowSelectionFeature.ts +164 -0
  548. package/src/features/row-selection/rowSelectionFeature.types.ts +143 -0
  549. package/src/features/row-selection/rowSelectionFeature.utils.ts +465 -0
  550. package/src/features/row-sorting/createSortedRowModel.ts +149 -0
  551. package/src/features/row-sorting/rowSortingFeature.ts +136 -0
  552. package/src/features/row-sorting/rowSortingFeature.types.ts +229 -0
  553. package/src/features/row-sorting/rowSortingFeature.utils.ts +319 -0
  554. package/src/features/stockFeatures.ts +48 -0
  555. package/src/features/table-reactivity/tableReactivityFeature.ts +92 -0
  556. package/src/flex-render.ts +60 -0
  557. package/src/fns/aggregationFns.ts +220 -0
  558. package/src/fns/filterFns.ts +379 -0
  559. package/src/{sortingFns.ts → fns/sortFns.ts} +66 -21
  560. package/src/helpers/columnHelper.ts +117 -0
  561. package/src/helpers/tableFeatures.ts +24 -0
  562. package/src/helpers/tableOptions.ts +82 -0
  563. package/src/index.ts +140 -42
  564. package/src/process-env.d.ts +6 -0
  565. package/src/static-functions.ts +31 -0
  566. package/src/types/Cell.ts +41 -0
  567. package/src/types/Column.ts +86 -0
  568. package/src/types/ColumnDef.ts +217 -0
  569. package/src/types/Header.ts +45 -0
  570. package/src/types/HeaderGroup.ts +24 -0
  571. package/src/types/Row.ts +55 -0
  572. package/src/types/RowModel.ts +137 -0
  573. package/src/types/RowModelFns.ts +51 -0
  574. package/src/types/Table.ts +132 -0
  575. package/src/types/TableFeatures.ts +150 -0
  576. package/src/types/TableOptions.ts +125 -0
  577. package/src/types/TableState.ts +88 -0
  578. package/src/types/type-utils.ts +84 -0
  579. package/src/utils.ts +361 -161
  580. package/dist/cjs/aggregationFns.cjs +0 -98
  581. package/dist/cjs/aggregationFns.cjs.map +0 -1
  582. package/dist/cjs/aggregationFns.d.cts +0 -14
  583. package/dist/cjs/columnHelper.cjs +0 -19
  584. package/dist/cjs/columnHelper.cjs.map +0 -1
  585. package/dist/cjs/columnHelper.d.cts +0 -9
  586. package/dist/cjs/core/cell.cjs +0 -38
  587. package/dist/cjs/core/cell.cjs.map +0 -1
  588. package/dist/cjs/core/cell.d.cts +0 -50
  589. package/dist/cjs/core/column.cjs +0 -81
  590. package/dist/cjs/core/column.cjs.map +0 -1
  591. package/dist/cjs/core/column.d.cts +0 -56
  592. package/dist/cjs/core/headers.cjs +0 -310
  593. package/dist/cjs/core/headers.cjs.map +0 -1
  594. package/dist/cjs/core/headers.d.cts +0 -195
  595. package/dist/cjs/core/row.cjs +0 -93
  596. package/dist/cjs/core/row.cjs.map +0 -1
  597. package/dist/cjs/core/row.d.cts +0 -92
  598. package/dist/cjs/core/table.cjs +0 -228
  599. package/dist/cjs/core/table.cjs.map +0 -1
  600. package/dist/cjs/core/table.d.cts +0 -221
  601. package/dist/cjs/features/ColumnFaceting.cjs +0 -29
  602. package/dist/cjs/features/ColumnFaceting.cjs.map +0 -1
  603. package/dist/cjs/features/ColumnFaceting.d.cts +0 -35
  604. package/dist/cjs/features/ColumnFiltering.cjs +0 -137
  605. package/dist/cjs/features/ColumnFiltering.cjs.map +0 -1
  606. package/dist/cjs/features/ColumnFiltering.d.cts +0 -195
  607. package/dist/cjs/features/ColumnGrouping.cjs +0 -134
  608. package/dist/cjs/features/ColumnGrouping.cjs.map +0 -1
  609. package/dist/cjs/features/ColumnGrouping.d.cts +0 -202
  610. package/dist/cjs/features/ColumnOrdering.cjs +0 -76
  611. package/dist/cjs/features/ColumnOrdering.cjs.map +0 -1
  612. package/dist/cjs/features/ColumnOrdering.d.cts +0 -54
  613. package/dist/cjs/features/ColumnPinning.cjs +0 -145
  614. package/dist/cjs/features/ColumnPinning.cjs.map +0 -1
  615. package/dist/cjs/features/ColumnPinning.d.cts +0 -127
  616. package/dist/cjs/features/ColumnSizing.cjs +0 -308
  617. package/dist/cjs/features/ColumnSizing.cjs.map +0 -1
  618. package/dist/cjs/features/ColumnSizing.d.cts +0 -194
  619. package/dist/cjs/features/ColumnVisibility.cjs +0 -144
  620. package/dist/cjs/features/ColumnVisibility.cjs.map +0 -1
  621. package/dist/cjs/features/ColumnVisibility.d.cts +0 -130
  622. package/dist/cjs/features/GlobalFaceting.cjs +0 -29
  623. package/dist/cjs/features/GlobalFaceting.cjs.map +0 -1
  624. package/dist/cjs/features/GlobalFaceting.d.cts +0 -27
  625. package/dist/cjs/features/GlobalFiltering.cjs +0 -50
  626. package/dist/cjs/features/GlobalFiltering.cjs.map +0 -1
  627. package/dist/cjs/features/GlobalFiltering.d.cts +0 -80
  628. package/dist/cjs/features/RowExpanding.cjs +0 -154
  629. package/dist/cjs/features/RowExpanding.cjs.map +0 -1
  630. package/dist/cjs/features/RowExpanding.d.cts +0 -155
  631. package/dist/cjs/features/RowPagination.cjs +0 -162
  632. package/dist/cjs/features/RowPagination.cjs.map +0 -1
  633. package/dist/cjs/features/RowPagination.d.cts +0 -166
  634. package/dist/cjs/features/RowPinning.cjs +0 -133
  635. package/dist/cjs/features/RowPinning.cjs.map +0 -1
  636. package/dist/cjs/features/RowPinning.d.cts +0 -99
  637. package/dist/cjs/features/RowSelection.cjs +0 -298
  638. package/dist/cjs/features/RowSelection.cjs.map +0 -1
  639. package/dist/cjs/features/RowSelection.d.cts +0 -177
  640. package/dist/cjs/features/RowSorting.cjs +0 -201
  641. package/dist/cjs/features/RowSorting.cjs.map +0 -1
  642. package/dist/cjs/features/RowSorting.d.cts +0 -238
  643. package/dist/cjs/filterFns.cjs +0 -88
  644. package/dist/cjs/filterFns.cjs.map +0 -1
  645. package/dist/cjs/filterFns.d.cts +0 -14
  646. package/dist/cjs/index.cjs +0 -87
  647. package/dist/cjs/index.cjs.map +0 -1
  648. package/dist/cjs/index.d.cts +0 -34
  649. package/dist/cjs/sortingFns.cjs +0 -91
  650. package/dist/cjs/sortingFns.cjs.map +0 -1
  651. package/dist/cjs/sortingFns.d.cts +0 -12
  652. package/dist/cjs/types.d.cts +0 -120
  653. package/dist/cjs/utils/filterRowsUtils.cjs +0 -99
  654. package/dist/cjs/utils/filterRowsUtils.cjs.map +0 -1
  655. package/dist/cjs/utils/filterRowsUtils.d.cts +0 -3
  656. package/dist/cjs/utils/getCoreRowModel.cjs +0 -54
  657. package/dist/cjs/utils/getCoreRowModel.cjs.map +0 -1
  658. package/dist/cjs/utils/getCoreRowModel.d.cts +0 -3
  659. package/dist/cjs/utils/getExpandedRowModel.cjs +0 -41
  660. package/dist/cjs/utils/getExpandedRowModel.cjs.map +0 -1
  661. package/dist/cjs/utils/getExpandedRowModel.d.cts +0 -8
  662. package/dist/cjs/utils/getFacetedMinMaxValues.cjs +0 -36
  663. package/dist/cjs/utils/getFacetedMinMaxValues.cjs.map +0 -1
  664. package/dist/cjs/utils/getFacetedMinMaxValues.d.cts +0 -3
  665. package/dist/cjs/utils/getFacetedRowModel.cjs +0 -35
  666. package/dist/cjs/utils/getFacetedRowModel.cjs.map +0 -1
  667. package/dist/cjs/utils/getFacetedRowModel.d.cts +0 -3
  668. package/dist/cjs/utils/getFacetedUniqueValues.cjs +0 -38
  669. package/dist/cjs/utils/getFacetedUniqueValues.cjs.map +0 -1
  670. package/dist/cjs/utils/getFacetedUniqueValues.d.cts +0 -3
  671. package/dist/cjs/utils/getFilteredRowModel.cjs +0 -116
  672. package/dist/cjs/utils/getFilteredRowModel.cjs.map +0 -1
  673. package/dist/cjs/utils/getFilteredRowModel.d.cts +0 -3
  674. package/dist/cjs/utils/getGroupedRowModel.cjs +0 -118
  675. package/dist/cjs/utils/getGroupedRowModel.cjs.map +0 -1
  676. package/dist/cjs/utils/getGroupedRowModel.d.cts +0 -3
  677. package/dist/cjs/utils/getPaginationRowModel.cjs +0 -49
  678. package/dist/cjs/utils/getPaginationRowModel.cjs.map +0 -1
  679. package/dist/cjs/utils/getPaginationRowModel.d.cts +0 -5
  680. package/dist/cjs/utils/getSortedRowModel.cjs +0 -91
  681. package/dist/cjs/utils/getSortedRowModel.cjs.map +0 -1
  682. package/dist/cjs/utils/getSortedRowModel.d.cts +0 -3
  683. package/dist/cjs/utils.cjs +0 -100
  684. package/dist/cjs/utils.cjs.map +0 -1
  685. package/dist/cjs/utils.d.cts +0 -39
  686. package/dist/esm/aggregationFns.d.ts +0 -14
  687. package/dist/esm/aggregationFns.js +0 -98
  688. package/dist/esm/aggregationFns.js.map +0 -1
  689. package/dist/esm/columnHelper.d.ts +0 -9
  690. package/dist/esm/columnHelper.js +0 -19
  691. package/dist/esm/columnHelper.js.map +0 -1
  692. package/dist/esm/core/cell.d.ts +0 -50
  693. package/dist/esm/core/cell.js +0 -38
  694. package/dist/esm/core/cell.js.map +0 -1
  695. package/dist/esm/core/column.d.ts +0 -56
  696. package/dist/esm/core/column.js +0 -81
  697. package/dist/esm/core/column.js.map +0 -1
  698. package/dist/esm/core/headers.d.ts +0 -195
  699. package/dist/esm/core/headers.js +0 -310
  700. package/dist/esm/core/headers.js.map +0 -1
  701. package/dist/esm/core/row.d.ts +0 -92
  702. package/dist/esm/core/row.js +0 -93
  703. package/dist/esm/core/row.js.map +0 -1
  704. package/dist/esm/core/table.d.ts +0 -221
  705. package/dist/esm/core/table.js +0 -228
  706. package/dist/esm/core/table.js.map +0 -1
  707. package/dist/esm/features/ColumnFaceting.d.ts +0 -35
  708. package/dist/esm/features/ColumnFaceting.js +0 -29
  709. package/dist/esm/features/ColumnFaceting.js.map +0 -1
  710. package/dist/esm/features/ColumnFiltering.d.ts +0 -195
  711. package/dist/esm/features/ColumnFiltering.js +0 -137
  712. package/dist/esm/features/ColumnFiltering.js.map +0 -1
  713. package/dist/esm/features/ColumnGrouping.d.ts +0 -202
  714. package/dist/esm/features/ColumnGrouping.js +0 -134
  715. package/dist/esm/features/ColumnGrouping.js.map +0 -1
  716. package/dist/esm/features/ColumnOrdering.d.ts +0 -54
  717. package/dist/esm/features/ColumnOrdering.js +0 -76
  718. package/dist/esm/features/ColumnOrdering.js.map +0 -1
  719. package/dist/esm/features/ColumnPinning.d.ts +0 -127
  720. package/dist/esm/features/ColumnPinning.js +0 -145
  721. package/dist/esm/features/ColumnPinning.js.map +0 -1
  722. package/dist/esm/features/ColumnSizing.d.ts +0 -194
  723. package/dist/esm/features/ColumnSizing.js +0 -308
  724. package/dist/esm/features/ColumnSizing.js.map +0 -1
  725. package/dist/esm/features/ColumnVisibility.d.ts +0 -130
  726. package/dist/esm/features/ColumnVisibility.js +0 -144
  727. package/dist/esm/features/ColumnVisibility.js.map +0 -1
  728. package/dist/esm/features/GlobalFaceting.d.ts +0 -27
  729. package/dist/esm/features/GlobalFaceting.js +0 -29
  730. package/dist/esm/features/GlobalFaceting.js.map +0 -1
  731. package/dist/esm/features/GlobalFiltering.d.ts +0 -80
  732. package/dist/esm/features/GlobalFiltering.js +0 -50
  733. package/dist/esm/features/GlobalFiltering.js.map +0 -1
  734. package/dist/esm/features/RowExpanding.d.ts +0 -155
  735. package/dist/esm/features/RowExpanding.js +0 -154
  736. package/dist/esm/features/RowExpanding.js.map +0 -1
  737. package/dist/esm/features/RowPagination.d.ts +0 -166
  738. package/dist/esm/features/RowPagination.js +0 -162
  739. package/dist/esm/features/RowPagination.js.map +0 -1
  740. package/dist/esm/features/RowPinning.d.ts +0 -99
  741. package/dist/esm/features/RowPinning.js +0 -133
  742. package/dist/esm/features/RowPinning.js.map +0 -1
  743. package/dist/esm/features/RowSelection.d.ts +0 -177
  744. package/dist/esm/features/RowSelection.js +0 -298
  745. package/dist/esm/features/RowSelection.js.map +0 -1
  746. package/dist/esm/features/RowSorting.d.ts +0 -238
  747. package/dist/esm/features/RowSorting.js +0 -201
  748. package/dist/esm/features/RowSorting.js.map +0 -1
  749. package/dist/esm/filterFns.d.ts +0 -14
  750. package/dist/esm/filterFns.js +0 -88
  751. package/dist/esm/filterFns.js.map +0 -1
  752. package/dist/esm/index.d.ts +0 -34
  753. package/dist/esm/index.js +0 -87
  754. package/dist/esm/index.js.map +0 -1
  755. package/dist/esm/sortingFns.d.ts +0 -12
  756. package/dist/esm/sortingFns.js +0 -91
  757. package/dist/esm/sortingFns.js.map +0 -1
  758. package/dist/esm/types.d.ts +0 -120
  759. package/dist/esm/utils/filterRowsUtils.d.ts +0 -3
  760. package/dist/esm/utils/filterRowsUtils.js +0 -99
  761. package/dist/esm/utils/filterRowsUtils.js.map +0 -1
  762. package/dist/esm/utils/getCoreRowModel.d.ts +0 -3
  763. package/dist/esm/utils/getCoreRowModel.js +0 -54
  764. package/dist/esm/utils/getCoreRowModel.js.map +0 -1
  765. package/dist/esm/utils/getExpandedRowModel.d.ts +0 -8
  766. package/dist/esm/utils/getExpandedRowModel.js +0 -41
  767. package/dist/esm/utils/getExpandedRowModel.js.map +0 -1
  768. package/dist/esm/utils/getFacetedMinMaxValues.d.ts +0 -3
  769. package/dist/esm/utils/getFacetedMinMaxValues.js +0 -36
  770. package/dist/esm/utils/getFacetedMinMaxValues.js.map +0 -1
  771. package/dist/esm/utils/getFacetedRowModel.d.ts +0 -3
  772. package/dist/esm/utils/getFacetedRowModel.js +0 -35
  773. package/dist/esm/utils/getFacetedRowModel.js.map +0 -1
  774. package/dist/esm/utils/getFacetedUniqueValues.d.ts +0 -3
  775. package/dist/esm/utils/getFacetedUniqueValues.js +0 -38
  776. package/dist/esm/utils/getFacetedUniqueValues.js.map +0 -1
  777. package/dist/esm/utils/getFilteredRowModel.d.ts +0 -3
  778. package/dist/esm/utils/getFilteredRowModel.js +0 -116
  779. package/dist/esm/utils/getFilteredRowModel.js.map +0 -1
  780. package/dist/esm/utils/getGroupedRowModel.d.ts +0 -3
  781. package/dist/esm/utils/getGroupedRowModel.js +0 -118
  782. package/dist/esm/utils/getGroupedRowModel.js.map +0 -1
  783. package/dist/esm/utils/getPaginationRowModel.d.ts +0 -5
  784. package/dist/esm/utils/getPaginationRowModel.js +0 -49
  785. package/dist/esm/utils/getPaginationRowModel.js.map +0 -1
  786. package/dist/esm/utils/getSortedRowModel.d.ts +0 -3
  787. package/dist/esm/utils/getSortedRowModel.js +0 -91
  788. package/dist/esm/utils/getSortedRowModel.js.map +0 -1
  789. package/dist/esm/utils.d.ts +0 -39
  790. package/dist/esm/utils.js +0 -100
  791. package/dist/esm/utils.js.map +0 -1
  792. package/src/aggregationFns.ts +0 -123
  793. package/src/columnHelper.ts +0 -91
  794. package/src/core/cell.ts +0 -91
  795. package/src/core/column.ts +0 -165
  796. package/src/core/headers.ts +0 -639
  797. package/src/core/row.ts +0 -201
  798. package/src/core/table.ts +0 -527
  799. package/src/features/ColumnFaceting.ts +0 -84
  800. package/src/features/ColumnFiltering.ts +0 -429
  801. package/src/features/ColumnGrouping.ts +0 -422
  802. package/src/features/ColumnOrdering.ts +0 -161
  803. package/src/features/ColumnPinning.ts +0 -336
  804. package/src/features/ColumnSizing.ts +0 -579
  805. package/src/features/ColumnVisibility.ts +0 -317
  806. package/src/features/GlobalFaceting.ts +0 -66
  807. package/src/features/GlobalFiltering.ts +0 -162
  808. package/src/features/RowExpanding.ts +0 -355
  809. package/src/features/RowPagination.ts +0 -396
  810. package/src/features/RowPinning.ts +0 -273
  811. package/src/features/RowSelection.ts +0 -668
  812. package/src/features/RowSorting.ts +0 -542
  813. package/src/filterFns.ts +0 -150
  814. package/src/types.ts +0 -361
  815. package/src/utils/filterRowsUtils.ts +0 -130
  816. package/src/utils/getCoreRowModel.ts +0 -82
  817. package/src/utils/getExpandedRowModel.ts +0 -51
  818. package/src/utils/getFacetedMinMaxValues.ts +0 -42
  819. package/src/utils/getFacetedRowModel.ts +0 -44
  820. package/src/utils/getFacetedUniqueValues.ts +0 -42
  821. package/src/utils/getFilteredRowModel.ts +0 -151
  822. package/src/utils/getGroupedRowModel.ts +0 -181
  823. package/src/utils/getPaginationRowModel.ts +0 -60
  824. package/src/utils/getSortedRowModel.ts +0 -121
@@ -0,0 +1,539 @@
1
+ import {
2
+ column_getIsVisible,
3
+ row_getAllVisibleCells,
4
+ table_getVisibleLeafColumns,
5
+ } from '../column-visibility/columnVisibilityFeature.utils'
6
+ import { buildHeaderGroups } from '../../core/headers/buildHeaderGroups'
7
+ import { callMemoOrStaticFn, cloneState } from '../../utils'
8
+ import type { HeaderGroup } from '../../types/HeaderGroup'
9
+ import type { Cell } from '../../types/Cell'
10
+ import type { Row } from '../../types/Row'
11
+ import type { CellData, RowData, Updater } from '../../types/type-utils'
12
+ import type { TableFeatures } from '../../types/TableFeatures'
13
+ import type { Table_Internal } from '../../types/Table'
14
+ import type { Column_Internal } from '../../types/Column'
15
+ import type {
16
+ ColumnPinningPosition,
17
+ ColumnPinningState,
18
+ } from './columnPinningFeature.types'
19
+
20
+ // State
21
+
22
+ export function getDefaultColumnPinningState(): ColumnPinningState {
23
+ return {
24
+ left: [],
25
+ right: [],
26
+ }
27
+ }
28
+
29
+ // Column APIs
30
+
31
+ export function column_pin<
32
+ TFeatures extends TableFeatures,
33
+ TData extends RowData,
34
+ TValue extends CellData = CellData,
35
+ >(
36
+ column: Column_Internal<TFeatures, TData, TValue>,
37
+ position: ColumnPinningPosition,
38
+ ) {
39
+ const columnIds = column
40
+ .getLeafColumns()
41
+ .map((d) => d.id)
42
+ .filter(Boolean)
43
+
44
+ table_setColumnPinning(column.table, (old) => {
45
+ if (position === 'right') {
46
+ return {
47
+ left: old.left.filter((d) => !columnIds.includes(d)),
48
+ right: [
49
+ ...old.right.filter((d) => !columnIds.includes(d)),
50
+ ...columnIds,
51
+ ],
52
+ }
53
+ }
54
+
55
+ if (position === 'left') {
56
+ return {
57
+ left: [...old.left.filter((d) => !columnIds.includes(d)), ...columnIds],
58
+ right: old.right.filter((d) => !columnIds.includes(d)),
59
+ }
60
+ }
61
+
62
+ return {
63
+ left: old.left.filter((d) => !columnIds.includes(d)),
64
+ right: old.right.filter((d) => !columnIds.includes(d)),
65
+ }
66
+ })
67
+ }
68
+
69
+ export function column_getCanPin<
70
+ TFeatures extends TableFeatures,
71
+ TData extends RowData,
72
+ TValue extends CellData = CellData,
73
+ >(column: Column_Internal<TFeatures, TData, TValue>) {
74
+ const leafColumns = column.getLeafColumns() as Array<
75
+ Column_Internal<TFeatures, TData, TValue>
76
+ >
77
+
78
+ return leafColumns.some(
79
+ (leafColumn) =>
80
+ (leafColumn.columnDef.enablePinning ?? true) &&
81
+ (column.table.options.enableColumnPinning ?? true),
82
+ )
83
+ }
84
+
85
+ export function column_getIsPinned<
86
+ TFeatures extends TableFeatures,
87
+ TData extends RowData,
88
+ TValue extends CellData = CellData,
89
+ >(
90
+ column: Column_Internal<TFeatures, TData, TValue>,
91
+ ): ColumnPinningPosition | false {
92
+ const leafColumnIds = column.getLeafColumns().map((d) => d.id)
93
+
94
+ const { left, right } =
95
+ column.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
96
+
97
+ const isLeft = leafColumnIds.some((d) => left.includes(d))
98
+ const isRight = leafColumnIds.some((d) => right.includes(d))
99
+
100
+ return isLeft ? 'left' : isRight ? 'right' : false
101
+ }
102
+
103
+ export function column_getPinnedIndex<
104
+ TFeatures extends TableFeatures,
105
+ TData extends RowData,
106
+ TValue extends CellData = CellData,
107
+ >(column: Column_Internal<TFeatures, TData, TValue>) {
108
+ const position = column_getIsPinned(column)
109
+
110
+ return position
111
+ ? (column.table.atoms.columnPinning?.get()?.[position].indexOf(column.id) ??
112
+ -1)
113
+ : 0
114
+ }
115
+
116
+ // Row APIs
117
+
118
+ export function row_getCenterVisibleCells<
119
+ TFeatures extends TableFeatures,
120
+ TData extends RowData,
121
+ >(row: Row<TFeatures, TData>) {
122
+ const allCells = callMemoOrStaticFn(
123
+ row,
124
+ 'getAllVisibleCells',
125
+ row_getAllVisibleCells,
126
+ )
127
+ const { left, right } =
128
+ row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
129
+ const leftAndRight: Array<string> = [...left, ...right]
130
+ return allCells.filter((d) => !leftAndRight.includes(d.column.id))
131
+ }
132
+
133
+ export function row_getLeftVisibleCells<
134
+ TFeatures extends TableFeatures,
135
+ TData extends RowData,
136
+ >(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>> {
137
+ const allCells = callMemoOrStaticFn(
138
+ row,
139
+ 'getAllVisibleCells',
140
+ row_getAllVisibleCells,
141
+ )
142
+ const { left } =
143
+ row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
144
+ const cells = left
145
+ .map((columnId) => allCells.find((cell) => cell.column.id === columnId)!)
146
+ .filter(Boolean)
147
+ // Assign position property directly to preserve prototype chain
148
+ cells.forEach((cell) => {
149
+ cell.position = 'left'
150
+ })
151
+ return cells as any
152
+ }
153
+
154
+ export function row_getRightVisibleCells<
155
+ TFeatures extends TableFeatures,
156
+ TData extends RowData,
157
+ >(row: Row<TFeatures, TData>) {
158
+ const allCells = callMemoOrStaticFn(
159
+ row,
160
+ 'getAllVisibleCells',
161
+ row_getAllVisibleCells,
162
+ )
163
+ const { right } =
164
+ row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
165
+ const cells = right
166
+ .map((columnId) => allCells.find((cell) => cell.column.id === columnId)!)
167
+ .filter(Boolean)
168
+ // Assign position property directly to preserve prototype chain
169
+ cells.forEach((cell) => {
170
+ cell.position = 'right'
171
+ })
172
+ return cells as any
173
+ }
174
+
175
+ // Table APIs
176
+
177
+ export function table_setColumnPinning<
178
+ TFeatures extends TableFeatures,
179
+ TData extends RowData,
180
+ >(
181
+ table: Table_Internal<TFeatures, TData>,
182
+ updater: Updater<ColumnPinningState>,
183
+ ) {
184
+ table.options.onColumnPinningChange?.(updater)
185
+ }
186
+
187
+ export function table_resetColumnPinning<
188
+ TFeatures extends TableFeatures,
189
+ TData extends RowData,
190
+ >(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {
191
+ table_setColumnPinning(
192
+ table,
193
+ defaultState
194
+ ? getDefaultColumnPinningState()
195
+ : cloneState(
196
+ table.initialState.columnPinning ?? getDefaultColumnPinningState(),
197
+ ),
198
+ )
199
+ }
200
+
201
+ export function table_getIsSomeColumnsPinned<
202
+ TFeatures extends TableFeatures,
203
+ TData extends RowData,
204
+ >(table: Table_Internal<TFeatures, TData>, position?: ColumnPinningPosition) {
205
+ const pinningState = table.atoms.columnPinning?.get()
206
+
207
+ if (!position) {
208
+ return Boolean(pinningState?.left.length || pinningState?.right.length)
209
+ }
210
+ return Boolean(pinningState?.[position].length)
211
+ }
212
+
213
+ // header groups
214
+
215
+ export function table_getLeftHeaderGroups<
216
+ TFeatures extends TableFeatures,
217
+ TData extends RowData,
218
+ >(table: Table_Internal<TFeatures, TData>) {
219
+ const allColumns = table.getAllColumns()
220
+ const leafColumns = callMemoOrStaticFn(
221
+ table,
222
+ 'getVisibleLeafColumns',
223
+ table_getVisibleLeafColumns,
224
+ ) as Array<Column_Internal<TFeatures, TData, unknown>>
225
+ const { left } =
226
+ table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
227
+
228
+ const orderedLeafColumns = left
229
+ .map((columnId) => leafColumns.find((d) => d.id === columnId)!)
230
+ .filter(Boolean)
231
+
232
+ return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'left')
233
+ }
234
+
235
+ export function table_getRightHeaderGroups<
236
+ TFeatures extends TableFeatures,
237
+ TData extends RowData,
238
+ >(table: Table_Internal<TFeatures, TData>) {
239
+ const allColumns = table.getAllColumns()
240
+ const leafColumns = callMemoOrStaticFn(
241
+ table,
242
+ 'getVisibleLeafColumns',
243
+ table_getVisibleLeafColumns,
244
+ ) as unknown as Array<Column_Internal<TFeatures, TData, unknown>>
245
+ const { right } =
246
+ table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
247
+
248
+ const orderedLeafColumns = right
249
+ .map((columnId) => leafColumns.find((d) => d.id === columnId)!)
250
+ .filter(Boolean)
251
+
252
+ return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'right')
253
+ }
254
+
255
+ export function table_getCenterHeaderGroups<
256
+ TFeatures extends TableFeatures,
257
+ TData extends RowData,
258
+ >(
259
+ table: Table_Internal<TFeatures, TData>,
260
+ ): Array<HeaderGroup<TFeatures, TData>> {
261
+ const allColumns = table.getAllColumns()
262
+ let leafColumns = callMemoOrStaticFn(
263
+ table,
264
+ 'getVisibleLeafColumns',
265
+ table_getVisibleLeafColumns,
266
+ ) as unknown as Array<Column_Internal<TFeatures, TData, unknown>>
267
+ const { left, right } =
268
+ table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
269
+ const leftAndRight: Array<string> = [...left, ...right]
270
+
271
+ leafColumns = leafColumns.filter(
272
+ (column) => !leftAndRight.includes(column.id),
273
+ )
274
+ return buildHeaderGroups(allColumns, leafColumns, table, 'center')
275
+ }
276
+
277
+ // footer groups
278
+
279
+ export function table_getLeftFooterGroups<
280
+ TFeatures extends TableFeatures,
281
+ TData extends RowData,
282
+ >(table: Table_Internal<TFeatures, TData>) {
283
+ const headerGroups = callMemoOrStaticFn(
284
+ table,
285
+ 'getLeftHeaderGroups',
286
+ table_getLeftHeaderGroups,
287
+ )
288
+ return [...headerGroups].reverse()
289
+ }
290
+
291
+ export function table_getRightFooterGroups<
292
+ TFeatures extends TableFeatures,
293
+ TData extends RowData,
294
+ >(table: Table_Internal<TFeatures, TData>) {
295
+ const headerGroups = callMemoOrStaticFn(
296
+ table,
297
+ 'getRightHeaderGroups',
298
+ table_getRightHeaderGroups,
299
+ )
300
+ return [...headerGroups].reverse()
301
+ }
302
+
303
+ export function table_getCenterFooterGroups<
304
+ TFeatures extends TableFeatures,
305
+ TData extends RowData,
306
+ >(table: Table_Internal<TFeatures, TData>) {
307
+ const headerGroups = callMemoOrStaticFn(
308
+ table,
309
+ 'getCenterHeaderGroups',
310
+ table_getCenterHeaderGroups,
311
+ )
312
+ return [...headerGroups].reverse()
313
+ }
314
+
315
+ // flat headers
316
+
317
+ export function table_getLeftFlatHeaders<
318
+ TFeatures extends TableFeatures,
319
+ TData extends RowData,
320
+ >(table: Table_Internal<TFeatures, TData>) {
321
+ const leftHeaderGroups = callMemoOrStaticFn(
322
+ table,
323
+ 'getLeftHeaderGroups',
324
+ table_getLeftHeaderGroups,
325
+ )
326
+ return leftHeaderGroups
327
+ .map((headerGroup) => {
328
+ return headerGroup.headers
329
+ })
330
+ .flat()
331
+ }
332
+
333
+ export function table_getRightFlatHeaders<
334
+ TFeatures extends TableFeatures,
335
+ TData extends RowData,
336
+ >(table: Table_Internal<TFeatures, TData>) {
337
+ const rightHeaderGroups = callMemoOrStaticFn(
338
+ table,
339
+ 'getRightHeaderGroups',
340
+ table_getRightHeaderGroups,
341
+ )
342
+ return rightHeaderGroups
343
+ .map((headerGroup) => {
344
+ return headerGroup.headers
345
+ })
346
+ .flat()
347
+ }
348
+
349
+ export function table_getCenterFlatHeaders<
350
+ TFeatures extends TableFeatures,
351
+ TData extends RowData,
352
+ >(table: Table_Internal<TFeatures, TData>) {
353
+ const centerHeaderGroups = callMemoOrStaticFn(
354
+ table,
355
+ 'getCenterHeaderGroups',
356
+ table_getCenterHeaderGroups,
357
+ )
358
+ return centerHeaderGroups
359
+ .map((headerGroup) => {
360
+ return headerGroup.headers
361
+ })
362
+ .flat()
363
+ }
364
+
365
+ // leaf headers
366
+
367
+ export function table_getLeftLeafHeaders<
368
+ TFeatures extends TableFeatures,
369
+ TData extends RowData,
370
+ >(table: Table_Internal<TFeatures, TData>) {
371
+ return callMemoOrStaticFn(
372
+ table,
373
+ 'getLeftFlatHeaders',
374
+ table_getLeftFlatHeaders,
375
+ ).filter((header) => !header.subHeaders.length)
376
+ }
377
+
378
+ export function table_getRightLeafHeaders<
379
+ TFeatures extends TableFeatures,
380
+ TData extends RowData,
381
+ >(table: Table_Internal<TFeatures, TData>) {
382
+ return callMemoOrStaticFn(
383
+ table,
384
+ 'getRightFlatHeaders',
385
+ table_getRightFlatHeaders,
386
+ ).filter((header) => !header.subHeaders.length)
387
+ }
388
+
389
+ export function table_getCenterLeafHeaders<
390
+ TFeatures extends TableFeatures,
391
+ TData extends RowData,
392
+ >(table: Table_Internal<TFeatures, TData>) {
393
+ return callMemoOrStaticFn(
394
+ table,
395
+ 'getCenterFlatHeaders',
396
+ table_getCenterFlatHeaders,
397
+ ).filter((header) => !header.subHeaders.length)
398
+ }
399
+
400
+ // leaf columns
401
+
402
+ export function table_getLeftLeafColumns<
403
+ TFeatures extends TableFeatures,
404
+ TData extends RowData,
405
+ >(table: Table_Internal<TFeatures, TData>) {
406
+ const { left } =
407
+ table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
408
+ return left
409
+ .map(
410
+ (columnId) =>
411
+ table.getAllLeafColumns().find((column) => column.id === columnId)!,
412
+ )
413
+ .filter(Boolean)
414
+ }
415
+
416
+ export function table_getRightLeafColumns<
417
+ TFeatures extends TableFeatures,
418
+ TData extends RowData,
419
+ >(table: Table_Internal<TFeatures, TData>) {
420
+ const { right } =
421
+ table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
422
+ return right
423
+ .map(
424
+ (columnId) =>
425
+ table.getAllLeafColumns().find((column) => column.id === columnId)!,
426
+ )
427
+ .filter(Boolean)
428
+ }
429
+
430
+ export function table_getCenterLeafColumns<
431
+ TFeatures extends TableFeatures,
432
+ TData extends RowData,
433
+ >(table: Table_Internal<TFeatures, TData>) {
434
+ const { left, right } =
435
+ table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()
436
+ const leftAndRight: Array<string> = [...left, ...right]
437
+ return table.getAllLeafColumns().filter((d) => !leftAndRight.includes(d.id))
438
+ }
439
+
440
+ export function table_getPinnedLeafColumns<
441
+ TFeatures extends TableFeatures,
442
+ TData extends RowData,
443
+ >(
444
+ table: Table_Internal<TFeatures, TData>,
445
+ position: ColumnPinningPosition | 'center',
446
+ ) {
447
+ return !position
448
+ ? table.getAllLeafColumns()
449
+ : position === 'left'
450
+ ? callMemoOrStaticFn(
451
+ table,
452
+ 'getLeftLeafColumns',
453
+ table_getLeftLeafColumns,
454
+ )
455
+ : position === 'right'
456
+ ? callMemoOrStaticFn(
457
+ table,
458
+ 'getRightLeafColumns',
459
+ table_getRightLeafColumns,
460
+ )
461
+ : callMemoOrStaticFn(
462
+ table,
463
+ 'getCenterLeafColumns',
464
+ table_getCenterLeafColumns,
465
+ )
466
+ }
467
+
468
+ // visible leaf columns
469
+
470
+ export function table_getLeftVisibleLeafColumns<
471
+ TFeatures extends TableFeatures,
472
+ TData extends RowData,
473
+ >(table: Table_Internal<TFeatures, TData>) {
474
+ return callMemoOrStaticFn(
475
+ table,
476
+ 'getLeftLeafColumns',
477
+ table_getLeftLeafColumns,
478
+ ).filter((column) =>
479
+ callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),
480
+ )
481
+ }
482
+
483
+ export function table_getRightVisibleLeafColumns<
484
+ TFeatures extends TableFeatures,
485
+ TData extends RowData,
486
+ >(table: Table_Internal<TFeatures, TData>) {
487
+ return callMemoOrStaticFn(
488
+ table,
489
+ 'getRightLeafColumns',
490
+ table_getRightLeafColumns,
491
+ ).filter((column) =>
492
+ callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),
493
+ )
494
+ }
495
+
496
+ export function table_getCenterVisibleLeafColumns<
497
+ TFeatures extends TableFeatures,
498
+ TData extends RowData,
499
+ >(table: Table_Internal<TFeatures, TData>) {
500
+ return callMemoOrStaticFn(
501
+ table,
502
+ 'getCenterLeafColumns',
503
+ table_getCenterLeafColumns,
504
+ ).filter((column) =>
505
+ callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),
506
+ )
507
+ }
508
+
509
+ export function table_getPinnedVisibleLeafColumns<
510
+ TFeatures extends TableFeatures,
511
+ TData extends RowData,
512
+ >(
513
+ table: Table_Internal<TFeatures, TData>,
514
+ position?: ColumnPinningPosition | 'center',
515
+ ) {
516
+ return !position
517
+ ? callMemoOrStaticFn(
518
+ table,
519
+ 'getVisibleLeafColumns',
520
+ table_getVisibleLeafColumns,
521
+ )
522
+ : position === 'left'
523
+ ? callMemoOrStaticFn(
524
+ table,
525
+ 'getLeftVisibleLeafColumns',
526
+ table_getLeftVisibleLeafColumns,
527
+ )
528
+ : position === 'right'
529
+ ? callMemoOrStaticFn(
530
+ table,
531
+ 'getRightVisibleLeafColumns',
532
+ table_getRightVisibleLeafColumns,
533
+ )
534
+ : callMemoOrStaticFn(
535
+ table,
536
+ 'getCenterVisibleLeafColumns',
537
+ table_getCenterVisibleLeafColumns,
538
+ )
539
+ }
@@ -0,0 +1,92 @@
1
+ import {
2
+ assignPrototypeAPIs,
3
+ assignTableAPIs,
4
+ makeStateUpdater,
5
+ } from '../../utils'
6
+ import {
7
+ column_getCanResize,
8
+ column_getIsResizing,
9
+ getDefaultColumnResizingState,
10
+ header_getResizeHandler,
11
+ table_resetHeaderSizeInfo,
12
+ table_setColumnResizing,
13
+ } from './columnResizingFeature.utils'
14
+ import type { RowData } from '../../types/type-utils'
15
+ import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
16
+ // import type {
17
+ // Column_ColumnResizing,
18
+ // Header_ColumnResizing,
19
+ // TableOptions_ColumnResizing,
20
+ // TableState_ColumnResizing,
21
+ // Table_ColumnResizing,
22
+ // } from './columnResizingFeature.types'
23
+
24
+ export interface ColumnResizingFeatureConstructors<
25
+ TFeatures extends TableFeatures,
26
+ TData extends RowData,
27
+ > {
28
+ // Column: Column_ColumnResizing
29
+ // Header: Header_ColumnResizing
30
+ // Table: Table_ColumnResizing
31
+ // TableOptions: TableOptions_ColumnResizing
32
+ // TableState: TableState_ColumnResizing
33
+ }
34
+
35
+ export function constructColumnResizingFeature<
36
+ TFeatures extends TableFeatures,
37
+ TData extends RowData,
38
+ >(): TableFeature<ColumnResizingFeatureConstructors<TFeatures, TData>> {
39
+ return {
40
+ getInitialState: (initialState) => {
41
+ return {
42
+ columnResizing: getDefaultColumnResizingState(),
43
+ ...initialState,
44
+ }
45
+ },
46
+
47
+ getDefaultTableOptions: (table) => {
48
+ return {
49
+ columnResizeMode: 'onEnd',
50
+ columnResizeDirection: 'ltr',
51
+ onColumnResizingChange: makeStateUpdater('columnResizing', table),
52
+ }
53
+ },
54
+
55
+ assignColumnPrototype: (prototype, table) => {
56
+ assignPrototypeAPIs('columnResizingFeature', prototype, table, {
57
+ column_getCanResize: {
58
+ fn: (column) => column_getCanResize(column),
59
+ },
60
+ column_getIsResizing: {
61
+ fn: (column) => column_getIsResizing(column),
62
+ },
63
+ })
64
+ },
65
+
66
+ assignHeaderPrototype: (prototype, table) => {
67
+ assignPrototypeAPIs('columnResizingFeature', prototype, table, {
68
+ header_getResizeHandler: {
69
+ fn: (header, _contextDocument) =>
70
+ header_getResizeHandler(header, _contextDocument),
71
+ },
72
+ })
73
+ },
74
+
75
+ constructTableAPIs: (table) => {
76
+ assignTableAPIs('columnResizingFeature', table, {
77
+ table_setColumnResizing: {
78
+ fn: (updater) => table_setColumnResizing(table, updater),
79
+ },
80
+ table_resetHeaderSizeInfo: {
81
+ fn: (defaultState) => table_resetHeaderSizeInfo(table, defaultState),
82
+ },
83
+ })
84
+ },
85
+ }
86
+ }
87
+
88
+ /**
89
+ * The Column Resizing feature adds column resizing state and APIs to the table and column objects.
90
+ * **Note:** This is dependent on the Column Sizing feature.
91
+ */
92
+ export const columnResizingFeature = constructColumnResizingFeature()
@@ -0,0 +1,81 @@
1
+ import type { OnChangeFn, Updater } from '../../types/type-utils'
2
+
3
+ export interface TableState_ColumnResizing {
4
+ columnResizing: columnResizingState
5
+ }
6
+
7
+ export interface columnResizingState {
8
+ columnSizingStart: Array<[string, number]>
9
+ deltaOffset: null | number
10
+ deltaPercentage: null | number
11
+ isResizingColumn: false | string
12
+ startOffset: null | number
13
+ startSize: null | number
14
+ }
15
+
16
+ export type ColumnResizeMode = 'onChange' | 'onEnd'
17
+
18
+ export type ColumnResizeDirection = 'ltr' | 'rtl'
19
+
20
+ export interface TableOptions_ColumnResizing {
21
+ /**
22
+ * Determines when the columnSizing state is updated. `onChange` updates the state when the user is dragging the resize handle. `onEnd` updates the state when the user releases the resize handle.
23
+ */
24
+ columnResizeMode?: ColumnResizeMode
25
+ /**
26
+ * Enables or disables column resizing for the column.
27
+ */
28
+ enableColumnResizing?: boolean
29
+ /**
30
+ * Enables or disables right-to-left support for resizing the column. defaults to 'ltr'.
31
+ */
32
+ columnResizeDirection?: ColumnResizeDirection
33
+ /**
34
+ * If provided, this function will be called with an `updaterFn` when `state.columnResizing` changes. This overrides the default internal state management, so you will also need to supply `state.columnResizing` from your own managed state.
35
+ */
36
+ onColumnResizingChange?: OnChangeFn<columnResizingState>
37
+ }
38
+
39
+ export type ColumnResizingDefaultOptions = Pick<
40
+ TableOptions_ColumnResizing,
41
+ 'columnResizeMode' | 'onColumnResizingChange' | 'columnResizeDirection'
42
+ >
43
+
44
+ export interface Table_ColumnResizing {
45
+ /**
46
+ * Resets column sizing info to its initial state. If `defaultState` is `true`, the default state for the table will be used instead of the initialValue provided to the table.
47
+ */
48
+ resetHeaderSizeInfo: (defaultState?: boolean) => void
49
+ /**
50
+ * Sets the column sizing info state using an updater function or a value. This will trigger the underlying `oncolumnResizingChange` function if one is passed to the table options, otherwise the state will be managed automatically by the table.
51
+ */
52
+ setcolumnResizing: (updater: Updater<columnResizingState>) => void
53
+ }
54
+
55
+ export interface ColumnDef_ColumnResizing {
56
+ /**
57
+ * Enables or disables column resizing for the column.
58
+ */
59
+ enableResizing?: boolean
60
+ }
61
+
62
+ export interface Column_ColumnResizing {
63
+ /**
64
+ * Returns `true` if the column can be resized.
65
+ */
66
+ getCanResize: () => boolean
67
+ /**
68
+ * Returns `true` if the column is currently being resized.
69
+ */
70
+ getIsResizing: () => boolean
71
+ }
72
+
73
+ export interface Header_ColumnResizing {
74
+ /**
75
+ * Returns an event handler function that can be used to resize the header. It can be used as an:
76
+ * - `onMouseDown` handler
77
+ * - `onTouchStart` handler
78
+ * The dragging and release events are automatically handled for you.
79
+ */
80
+ getResizeHandler: (context?: Document) => (event: unknown) => void
81
+ }