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

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 (839) 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 +21 -0
  45. package/dist/core/coreFeatures.d.ts +21 -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/reactivity/constructReactivityBindings.cjs +19 -0
  75. package/dist/core/reactivity/constructReactivityBindings.cjs.map +1 -0
  76. package/dist/core/reactivity/constructReactivityBindings.d.cts +7 -0
  77. package/dist/core/reactivity/constructReactivityBindings.d.ts +7 -0
  78. package/dist/core/reactivity/constructReactivityBindings.js +19 -0
  79. package/dist/core/reactivity/constructReactivityBindings.js.map +1 -0
  80. package/dist/core/reactivity/coreReactivityFeature.types.d.cts +37 -0
  81. package/dist/core/reactivity/coreReactivityFeature.types.d.ts +37 -0
  82. package/dist/core/reactivity/coreReactivityFeature.utils.cjs +19 -0
  83. package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +1 -0
  84. package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +14 -0
  85. package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +14 -0
  86. package/dist/core/reactivity/coreReactivityFeature.utils.js +18 -0
  87. package/dist/core/reactivity/coreReactivityFeature.utils.js.map +1 -0
  88. package/dist/core/row-models/coreRowModelsFeature.cjs +31 -0
  89. package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -0
  90. package/dist/core/row-models/coreRowModelsFeature.d.cts +13 -0
  91. package/dist/core/row-models/coreRowModelsFeature.d.ts +13 -0
  92. package/dist/core/row-models/coreRowModelsFeature.js +30 -0
  93. package/dist/core/row-models/coreRowModelsFeature.js.map +1 -0
  94. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +42 -0
  95. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +42 -0
  96. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +83 -0
  97. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -0
  98. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +21 -0
  99. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +21 -0
  100. package/dist/core/row-models/coreRowModelsFeature.utils.js +72 -0
  101. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -0
  102. package/dist/core/row-models/createCoreRowModel.cjs +47 -0
  103. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -0
  104. package/dist/core/row-models/createCoreRowModel.d.cts +10 -0
  105. package/dist/core/row-models/createCoreRowModel.d.ts +10 -0
  106. package/dist/core/row-models/createCoreRowModel.js +47 -0
  107. package/dist/core/row-models/createCoreRowModel.js.map +1 -0
  108. package/dist/core/rows/constructRow.cjs +37 -0
  109. package/dist/core/rows/constructRow.cjs.map +1 -0
  110. package/dist/core/rows/constructRow.d.cts +10 -0
  111. package/dist/core/rows/constructRow.d.ts +10 -0
  112. package/dist/core/rows/constructRow.js +36 -0
  113. package/dist/core/rows/constructRow.js.map +1 -0
  114. package/dist/core/rows/coreRowsFeature.cjs +41 -0
  115. package/dist/core/rows/coreRowsFeature.cjs.map +1 -0
  116. package/dist/core/rows/coreRowsFeature.d.cts +13 -0
  117. package/dist/core/rows/coreRowsFeature.d.ts +13 -0
  118. package/dist/core/rows/coreRowsFeature.js +40 -0
  119. package/dist/core/rows/coreRowsFeature.js.map +1 -0
  120. package/dist/core/rows/coreRowsFeature.types.d.cts +96 -0
  121. package/dist/core/rows/coreRowsFeature.types.d.ts +96 -0
  122. package/dist/core/rows/coreRowsFeature.utils.cjs +81 -0
  123. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -0
  124. package/dist/core/rows/coreRowsFeature.utils.d.cts +20 -0
  125. package/dist/core/rows/coreRowsFeature.utils.d.ts +20 -0
  126. package/dist/core/rows/coreRowsFeature.utils.js +72 -0
  127. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -0
  128. package/dist/core/table/constructTable.cjs +82 -0
  129. package/dist/core/table/constructTable.cjs.map +1 -0
  130. package/dist/core/table/constructTable.d.cts +12 -0
  131. package/dist/core/table/constructTable.d.ts +12 -0
  132. package/dist/core/table/constructTable.js +81 -0
  133. package/dist/core/table/constructTable.js.map +1 -0
  134. package/dist/core/table/coreTablesFeature.cjs +21 -0
  135. package/dist/core/table/coreTablesFeature.cjs.map +1 -0
  136. package/dist/core/table/coreTablesFeature.d.cts +13 -0
  137. package/dist/core/table/coreTablesFeature.d.ts +13 -0
  138. package/dist/core/table/coreTablesFeature.js +20 -0
  139. package/dist/core/table/coreTablesFeature.js.map +1 -0
  140. package/dist/core/table/coreTablesFeature.types.d.cts +162 -0
  141. package/dist/core/table/coreTablesFeature.types.d.ts +162 -0
  142. package/dist/core/table/coreTablesFeature.utils.cjs +26 -0
  143. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -0
  144. package/dist/core/table/coreTablesFeature.utils.d.cts +12 -0
  145. package/dist/core/table/coreTablesFeature.utils.d.ts +12 -0
  146. package/dist/core/table/coreTablesFeature.utils.js +24 -0
  147. package/dist/core/table/coreTablesFeature.utils.js.map +1 -0
  148. package/dist/features/column-faceting/columnFacetingFeature.cjs +65 -0
  149. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -0
  150. package/dist/features/column-faceting/columnFacetingFeature.d.cts +13 -0
  151. package/dist/features/column-faceting/columnFacetingFeature.d.ts +13 -0
  152. package/dist/features/column-faceting/columnFacetingFeature.js +64 -0
  153. package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -0
  154. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +73 -0
  155. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +73 -0
  156. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +35 -0
  157. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -0
  158. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +16 -0
  159. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +16 -0
  160. package/dist/features/column-faceting/columnFacetingFeature.utils.js +29 -0
  161. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -0
  162. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +36 -0
  163. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -0
  164. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +9 -0
  165. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +9 -0
  166. package/dist/features/column-faceting/createFacetedMinMaxValues.js +36 -0
  167. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -0
  168. package/dist/features/column-faceting/createFacetedRowModel.cjs +40 -0
  169. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -0
  170. package/dist/features/column-faceting/createFacetedRowModel.d.cts +10 -0
  171. package/dist/features/column-faceting/createFacetedRowModel.d.ts +10 -0
  172. package/dist/features/column-faceting/createFacetedRowModel.js +40 -0
  173. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -0
  174. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +33 -0
  175. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -0
  176. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +9 -0
  177. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +9 -0
  178. package/dist/features/column-faceting/createFacetedUniqueValues.js +33 -0
  179. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -0
  180. package/dist/features/column-filtering/columnFilteringFeature.cjs +55 -0
  181. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -0
  182. package/dist/features/column-filtering/columnFilteringFeature.d.cts +14 -0
  183. package/dist/features/column-filtering/columnFilteringFeature.d.ts +14 -0
  184. package/dist/features/column-filtering/columnFilteringFeature.js +54 -0
  185. package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -0
  186. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +147 -0
  187. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +147 -0
  188. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +90 -0
  189. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -0
  190. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +21 -0
  191. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +21 -0
  192. package/dist/features/column-filtering/columnFilteringFeature.utils.js +80 -0
  193. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -0
  194. package/dist/features/column-filtering/createFilteredRowModel.cjs +99 -0
  195. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -0
  196. package/dist/features/column-filtering/createFilteredRowModel.d.cts +11 -0
  197. package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -0
  198. package/dist/features/column-filtering/createFilteredRowModel.js +99 -0
  199. package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -0
  200. package/dist/features/column-filtering/filterRowsUtils.cjs +76 -0
  201. package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -0
  202. package/dist/features/column-filtering/filterRowsUtils.js +76 -0
  203. package/dist/features/column-filtering/filterRowsUtils.js.map +1 -0
  204. package/dist/features/column-grouping/columnGroupingFeature.cjs +71 -0
  205. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -0
  206. package/dist/features/column-grouping/columnGroupingFeature.d.cts +13 -0
  207. package/dist/features/column-grouping/columnGroupingFeature.d.ts +13 -0
  208. package/dist/features/column-grouping/columnGroupingFeature.js +70 -0
  209. package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -0
  210. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +157 -0
  211. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +157 -0
  212. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +88 -0
  213. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -0
  214. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +27 -0
  215. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +27 -0
  216. package/dist/features/column-grouping/columnGroupingFeature.utils.js +74 -0
  217. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -0
  218. package/dist/features/column-grouping/createGroupedRowModel.cjs +114 -0
  219. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -0
  220. package/dist/features/column-grouping/createGroupedRowModel.d.cts +11 -0
  221. package/dist/features/column-grouping/createGroupedRowModel.d.ts +11 -0
  222. package/dist/features/column-grouping/createGroupedRowModel.js +114 -0
  223. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -0
  224. package/dist/features/column-ordering/columnOrderingFeature.cjs +61 -0
  225. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -0
  226. package/dist/features/column-ordering/columnOrderingFeature.d.cts +13 -0
  227. package/dist/features/column-ordering/columnOrderingFeature.d.ts +13 -0
  228. package/dist/features/column-ordering/columnOrderingFeature.js +60 -0
  229. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -0
  230. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +45 -0
  231. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +45 -0
  232. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +65 -0
  233. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -0
  234. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +19 -0
  235. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +19 -0
  236. package/dist/features/column-ordering/columnOrderingFeature.utils.js +58 -0
  237. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -0
  238. package/dist/features/column-pinning/columnPinningFeature.cjs +231 -0
  239. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -0
  240. package/dist/features/column-pinning/columnPinningFeature.d.cts +13 -0
  241. package/dist/features/column-pinning/columnPinningFeature.d.ts +13 -0
  242. package/dist/features/column-pinning/columnPinningFeature.js +230 -0
  243. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -0
  244. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +162 -0
  245. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +162 -0
  246. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +205 -0
  247. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -0
  248. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +43 -0
  249. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +43 -0
  250. package/dist/features/column-pinning/columnPinningFeature.utils.js +175 -0
  251. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -0
  252. package/dist/features/column-resizing/columnResizingFeature.cjs +46 -0
  253. package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -0
  254. package/dist/features/column-resizing/columnResizingFeature.d.cts +14 -0
  255. package/dist/features/column-resizing/columnResizingFeature.d.ts +14 -0
  256. package/dist/features/column-resizing/columnResizingFeature.js +45 -0
  257. package/dist/features/column-resizing/columnResizingFeature.js.map +1 -0
  258. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +73 -0
  259. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +73 -0
  260. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +157 -0
  261. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -0
  262. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +19 -0
  263. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +19 -0
  264. package/dist/features/column-resizing/columnResizingFeature.utils.js +150 -0
  265. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -0
  266. package/dist/features/column-sizing/columnSizingFeature.cjs +75 -0
  267. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -0
  268. package/dist/features/column-sizing/columnSizingFeature.d.cts +14 -0
  269. package/dist/features/column-sizing/columnSizingFeature.d.ts +14 -0
  270. package/dist/features/column-sizing/columnSizingFeature.js +74 -0
  271. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -0
  272. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +86 -0
  273. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +86 -0
  274. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +97 -0
  275. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -0
  276. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +30 -0
  277. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +30 -0
  278. package/dist/features/column-sizing/columnSizingFeature.utils.js +84 -0
  279. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -0
  280. package/dist/features/column-visibility/columnVisibilityFeature.cjs +96 -0
  281. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -0
  282. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +13 -0
  283. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +13 -0
  284. package/dist/features/column-visibility/columnVisibilityFeature.js +95 -0
  285. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -0
  286. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +89 -0
  287. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +89 -0
  288. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +84 -0
  289. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -0
  290. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +26 -0
  291. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +26 -0
  292. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +70 -0
  293. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -0
  294. package/dist/features/global-filtering/globalFilteringFeature.cjs +46 -0
  295. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -0
  296. package/dist/features/global-filtering/globalFilteringFeature.d.cts +14 -0
  297. package/dist/features/global-filtering/globalFilteringFeature.d.ts +14 -0
  298. package/dist/features/global-filtering/globalFilteringFeature.js +45 -0
  299. package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -0
  300. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +64 -0
  301. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +64 -0
  302. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +31 -0
  303. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -0
  304. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +15 -0
  305. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +15 -0
  306. package/dist/features/global-filtering/globalFilteringFeature.utils.js +27 -0
  307. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -0
  308. package/dist/features/row-expanding/createExpandedRowModel.cjs +49 -0
  309. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -0
  310. package/dist/features/row-expanding/createExpandedRowModel.d.cts +11 -0
  311. package/dist/features/row-expanding/createExpandedRowModel.d.ts +11 -0
  312. package/dist/features/row-expanding/createExpandedRowModel.js +48 -0
  313. package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -0
  314. package/dist/features/row-expanding/rowExpandingFeature.cjs +51 -0
  315. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -0
  316. package/dist/features/row-expanding/rowExpandingFeature.d.cts +13 -0
  317. package/dist/features/row-expanding/rowExpandingFeature.d.ts +13 -0
  318. package/dist/features/row-expanding/rowExpandingFeature.js +50 -0
  319. package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -0
  320. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +121 -0
  321. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +121 -0
  322. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +115 -0
  323. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -0
  324. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +25 -0
  325. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +25 -0
  326. package/dist/features/row-expanding/rowExpandingFeature.utils.js +101 -0
  327. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -0
  328. package/dist/features/row-pagination/createPaginatedRowModel.cjs +57 -0
  329. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -0
  330. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +10 -0
  331. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +10 -0
  332. package/dist/features/row-pagination/createPaginatedRowModel.js +57 -0
  333. package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -0
  334. package/dist/features/row-pagination/rowPaginationFeature.cjs +49 -0
  335. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -0
  336. package/dist/features/row-pagination/rowPaginationFeature.d.cts +13 -0
  337. package/dist/features/row-pagination/rowPaginationFeature.d.ts +13 -0
  338. package/dist/features/row-pagination/rowPaginationFeature.js +48 -0
  339. package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -0
  340. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +124 -0
  341. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +124 -0
  342. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +120 -0
  343. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -0
  344. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +26 -0
  345. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +26 -0
  346. package/dist/features/row-pagination/rowPaginationFeature.utils.js +104 -0
  347. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -0
  348. package/dist/features/row-pinning/rowPinningFeature.cjs +71 -0
  349. package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -0
  350. package/dist/features/row-pinning/rowPinningFeature.d.cts +13 -0
  351. package/dist/features/row-pinning/rowPinningFeature.d.ts +13 -0
  352. package/dist/features/row-pinning/rowPinningFeature.js +70 -0
  353. package/dist/features/row-pinning/rowPinningFeature.js.map +1 -0
  354. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +77 -0
  355. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +77 -0
  356. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +101 -0
  357. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -0
  358. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +21 -0
  359. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +21 -0
  360. package/dist/features/row-pinning/rowPinningFeature.utils.js +91 -0
  361. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -0
  362. package/dist/features/row-selection/rowSelectionFeature.cjs +79 -0
  363. package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -0
  364. package/dist/features/row-selection/rowSelectionFeature.d.cts +13 -0
  365. package/dist/features/row-selection/rowSelectionFeature.d.ts +13 -0
  366. package/dist/features/row-selection/rowSelectionFeature.js +78 -0
  367. package/dist/features/row-selection/rowSelectionFeature.js.map +1 -0
  368. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +128 -0
  369. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +128 -0
  370. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +232 -0
  371. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -0
  372. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +39 -0
  373. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +39 -0
  374. package/dist/features/row-selection/rowSelectionFeature.utils.js +207 -0
  375. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -0
  376. package/dist/features/row-sorting/createSortedRowModel.cjs +85 -0
  377. package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -0
  378. package/dist/features/row-sorting/createSortedRowModel.d.cts +11 -0
  379. package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -0
  380. package/dist/features/row-sorting/createSortedRowModel.js +85 -0
  381. package/dist/features/row-sorting/createSortedRowModel.js.map +1 -0
  382. package/dist/features/row-sorting/rowSortingFeature.cjs +59 -0
  383. package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -0
  384. package/dist/features/row-sorting/rowSortingFeature.d.cts +13 -0
  385. package/dist/features/row-sorting/rowSortingFeature.d.ts +13 -0
  386. package/dist/features/row-sorting/rowSortingFeature.js +58 -0
  387. package/dist/features/row-sorting/rowSortingFeature.js.map +1 -0
  388. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +182 -0
  389. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +182 -0
  390. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +134 -0
  391. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -0
  392. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +25 -0
  393. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +25 -0
  394. package/dist/features/row-sorting/rowSortingFeature.utils.js +120 -0
  395. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -0
  396. package/dist/features/stockFeatures.cjs +36 -0
  397. package/dist/features/stockFeatures.cjs.map +1 -0
  398. package/dist/features/stockFeatures.d.cts +36 -0
  399. package/dist/features/stockFeatures.d.ts +36 -0
  400. package/dist/features/stockFeatures.js +36 -0
  401. package/dist/features/stockFeatures.js.map +1 -0
  402. package/dist/flex-render.cjs +19 -0
  403. package/dist/flex-render.cjs.map +1 -0
  404. package/dist/flex-render.d.cts +24 -0
  405. package/dist/flex-render.d.ts +24 -0
  406. package/dist/flex-render.js +16 -0
  407. package/dist/flex-render.js.map +1 -0
  408. package/dist/fns/aggregationFns.cjs +125 -0
  409. package/dist/fns/aggregationFns.cjs.map +1 -0
  410. package/dist/fns/aggregationFns.d.cts +54 -0
  411. package/dist/fns/aggregationFns.d.ts +54 -0
  412. package/dist/fns/aggregationFns.js +116 -0
  413. package/dist/fns/aggregationFns.js.map +1 -0
  414. package/dist/fns/filterFns.cjs +179 -0
  415. package/dist/fns/filterFns.cjs.map +1 -0
  416. package/dist/fns/filterFns.d.cts +81 -0
  417. package/dist/fns/filterFns.d.ts +81 -0
  418. package/dist/fns/filterFns.js +163 -0
  419. package/dist/fns/filterFns.js.map +1 -0
  420. package/dist/fns/sortFns.cjs +73 -0
  421. package/dist/fns/sortFns.cjs.map +1 -0
  422. package/dist/fns/sortFns.d.cts +22 -0
  423. package/dist/fns/sortFns.d.ts +22 -0
  424. package/dist/fns/sortFns.js +65 -0
  425. package/dist/fns/sortFns.js.map +1 -0
  426. package/dist/helpers/columnHelper.cjs +36 -0
  427. package/dist/helpers/columnHelper.cjs.map +1 -0
  428. package/dist/helpers/columnHelper.d.cts +66 -0
  429. package/dist/helpers/columnHelper.d.ts +66 -0
  430. package/dist/helpers/columnHelper.js +35 -0
  431. package/dist/helpers/columnHelper.js.map +1 -0
  432. package/dist/helpers/tableFeatures.cjs +20 -0
  433. package/dist/helpers/tableFeatures.cjs.map +1 -0
  434. package/dist/helpers/tableFeatures.d.cts +18 -0
  435. package/dist/helpers/tableFeatures.d.ts +18 -0
  436. package/dist/helpers/tableFeatures.js +19 -0
  437. package/dist/helpers/tableFeatures.js.map +1 -0
  438. package/dist/helpers/tableOptions.cjs +9 -0
  439. package/dist/helpers/tableOptions.cjs.map +1 -0
  440. package/dist/helpers/tableOptions.d.cts +28 -0
  441. package/dist/helpers/tableOptions.d.ts +28 -0
  442. package/dist/helpers/tableOptions.js +8 -0
  443. package/dist/helpers/tableOptions.js.map +1 -0
  444. package/dist/index.cjs +157 -0
  445. package/dist/index.d.cts +78 -0
  446. package/dist/index.d.ts +78 -0
  447. package/dist/index.js +46 -0
  448. package/dist/reactivity.cjs +6 -0
  449. package/dist/reactivity.d.cts +4 -0
  450. package/dist/reactivity.d.ts +4 -0
  451. package/dist/reactivity.js +4 -0
  452. package/dist/static-functions.cjs +261 -0
  453. package/dist/static-functions.d.cts +21 -0
  454. package/dist/static-functions.d.ts +21 -0
  455. package/dist/static-functions.js +22 -0
  456. package/dist/types/Cell.d.cts +16 -0
  457. package/dist/types/Cell.d.ts +16 -0
  458. package/dist/types/Column.d.cts +29 -0
  459. package/dist/types/Column.d.ts +29 -0
  460. package/dist/types/ColumnDef.d.cts +66 -0
  461. package/dist/types/ColumnDef.d.ts +66 -0
  462. package/dist/types/Header.d.cts +17 -0
  463. package/dist/types/Header.d.ts +17 -0
  464. package/dist/types/HeaderGroup.d.cts +15 -0
  465. package/dist/types/HeaderGroup.d.ts +15 -0
  466. package/dist/types/Row.d.cts +22 -0
  467. package/dist/types/Row.d.ts +22 -0
  468. package/dist/types/RowModel.d.cts +26 -0
  469. package/dist/types/RowModel.d.ts +26 -0
  470. package/dist/types/RowModelFns.d.cts +18 -0
  471. package/dist/types/RowModelFns.d.ts +18 -0
  472. package/dist/types/Table.d.cts +59 -0
  473. package/dist/types/Table.d.ts +59 -0
  474. package/dist/types/TableFeatures.d.cts +77 -0
  475. package/dist/types/TableFeatures.d.ts +77 -0
  476. package/dist/types/TableOptions.d.cts +39 -0
  477. package/dist/types/TableOptions.d.ts +39 -0
  478. package/dist/types/TableState.d.cts +27 -0
  479. package/dist/types/TableState.d.ts +27 -0
  480. package/dist/types/type-utils.d.cts +23 -0
  481. package/dist/types/type-utils.d.ts +23 -0
  482. package/dist/utils.cjs +218 -0
  483. package/dist/utils.cjs.map +1 -0
  484. package/dist/utils.d.cts +91 -0
  485. package/dist/utils.d.ts +91 -0
  486. package/dist/utils.js +203 -0
  487. package/dist/utils.js.map +1 -0
  488. package/package.json +35 -14
  489. package/src/core/cells/constructCell.ts +49 -0
  490. package/src/core/cells/coreCellsFeature.ts +44 -0
  491. package/src/core/cells/coreCellsFeature.types.ts +68 -0
  492. package/src/core/cells/coreCellsFeature.utils.ts +35 -0
  493. package/src/core/columns/constructColumn.ts +111 -0
  494. package/src/core/columns/coreColumnsFeature.ts +90 -0
  495. package/src/core/columns/coreColumnsFeature.types.ts +103 -0
  496. package/src/core/columns/coreColumnsFeature.utils.ts +160 -0
  497. package/src/core/coreFeatures.ts +26 -0
  498. package/src/core/headers/buildHeaderGroups.ts +177 -0
  499. package/src/core/headers/constructHeader.ts +61 -0
  500. package/src/core/headers/coreHeadersFeature.ts +98 -0
  501. package/src/core/headers/coreHeadersFeature.types.ts +123 -0
  502. package/src/core/headers/coreHeadersFeature.utils.ts +131 -0
  503. package/src/core/reactivity/constructReactivityBindings.ts +19 -0
  504. package/src/core/reactivity/coreReactivityFeature.types.ts +40 -0
  505. package/src/core/reactivity/coreReactivityFeature.utils.ts +29 -0
  506. package/src/core/row-models/coreRowModelsFeature.ts +78 -0
  507. package/src/core/row-models/coreRowModelsFeature.types.ts +67 -0
  508. package/src/core/row-models/coreRowModelsFeature.utils.ts +140 -0
  509. package/src/core/row-models/createCoreRowModel.ts +88 -0
  510. package/src/core/rows/constructRow.ts +59 -0
  511. package/src/core/rows/coreRowsFeature.ts +84 -0
  512. package/src/core/rows/coreRowsFeature.types.ts +114 -0
  513. package/src/core/rows/coreRowsFeature.utils.ts +152 -0
  514. package/src/core/table/constructTable.ts +126 -0
  515. package/src/core/table/coreTablesFeature.ts +36 -0
  516. package/src/core/table/coreTablesFeature.types.ts +192 -0
  517. package/src/core/table/coreTablesFeature.utils.ts +46 -0
  518. package/src/features/column-faceting/columnFacetingFeature.ts +112 -0
  519. package/src/features/column-faceting/columnFacetingFeature.types.ts +97 -0
  520. package/src/features/column-faceting/columnFacetingFeature.utils.ts +77 -0
  521. package/src/features/column-faceting/createFacetedMinMaxValues.ts +63 -0
  522. package/src/features/column-faceting/createFacetedRowModel.ts +76 -0
  523. package/src/features/column-faceting/createFacetedUniqueValues.ts +60 -0
  524. package/src/features/column-filtering/columnFilteringFeature.ts +121 -0
  525. package/src/features/column-filtering/columnFilteringFeature.types.ts +219 -0
  526. package/src/features/column-filtering/columnFilteringFeature.utils.ts +209 -0
  527. package/src/features/column-filtering/createFilteredRowModel.ts +172 -0
  528. package/src/features/column-filtering/filterRowsUtils.ts +152 -0
  529. package/src/features/column-grouping/columnGroupingFeature.ts +151 -0
  530. package/src/features/column-grouping/columnGroupingFeature.types.ts +218 -0
  531. package/src/features/column-grouping/columnGroupingFeature.utils.ts +192 -0
  532. package/src/features/column-grouping/createGroupedRowModel.ts +215 -0
  533. package/src/features/column-ordering/columnOrderingFeature.ts +96 -0
  534. package/src/features/column-ordering/columnOrderingFeature.types.ts +49 -0
  535. package/src/features/column-ordering/columnOrderingFeature.utils.ts +134 -0
  536. package/src/features/column-pinning/columnPinningFeature.ts +347 -0
  537. package/src/features/column-pinning/columnPinningFeature.types.ts +176 -0
  538. package/src/features/column-pinning/columnPinningFeature.utils.ts +539 -0
  539. package/src/features/column-resizing/columnResizingFeature.ts +92 -0
  540. package/src/features/column-resizing/columnResizingFeature.types.ts +81 -0
  541. package/src/features/column-resizing/columnResizingFeature.utils.ts +276 -0
  542. package/src/features/column-sizing/columnSizingFeature.ts +146 -0
  543. package/src/features/column-sizing/columnSizingFeature.types.ts +92 -0
  544. package/src/features/column-sizing/columnSizingFeature.utils.ts +211 -0
  545. package/src/features/column-visibility/columnVisibilityFeature.ts +157 -0
  546. package/src/features/column-visibility/columnVisibilityFeature.types.ts +101 -0
  547. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +183 -0
  548. package/src/features/global-filtering/globalFilteringFeature.ts +92 -0
  549. package/src/features/global-filtering/globalFilteringFeature.types.ts +84 -0
  550. package/src/features/global-filtering/globalFilteringFeature.utils.ts +59 -0
  551. package/src/features/row-expanding/createExpandedRowModel.ts +72 -0
  552. package/src/features/row-expanding/rowExpandingFeature.ts +122 -0
  553. package/src/features/row-expanding/rowExpandingFeature.types.ts +141 -0
  554. package/src/features/row-expanding/rowExpandingFeature.utils.ts +208 -0
  555. package/src/features/row-pagination/createPaginatedRowModel.ts +78 -0
  556. package/src/features/row-pagination/rowPaginationFeature.ts +121 -0
  557. package/src/features/row-pagination/rowPaginationFeature.types.ts +141 -0
  558. package/src/features/row-pagination/rowPaginationFeature.utils.ts +208 -0
  559. package/src/features/row-pinning/rowPinningFeature.ts +121 -0
  560. package/src/features/row-pinning/rowPinningFeature.types.ts +89 -0
  561. package/src/features/row-pinning/rowPinningFeature.utils.ts +199 -0
  562. package/src/features/row-selection/rowSelectionFeature.ts +164 -0
  563. package/src/features/row-selection/rowSelectionFeature.types.ts +143 -0
  564. package/src/features/row-selection/rowSelectionFeature.utils.ts +465 -0
  565. package/src/features/row-sorting/createSortedRowModel.ts +149 -0
  566. package/src/features/row-sorting/rowSortingFeature.ts +136 -0
  567. package/src/features/row-sorting/rowSortingFeature.types.ts +229 -0
  568. package/src/features/row-sorting/rowSortingFeature.utils.ts +319 -0
  569. package/src/features/stockFeatures.ts +48 -0
  570. package/src/flex-render.ts +60 -0
  571. package/src/fns/aggregationFns.ts +220 -0
  572. package/src/fns/filterFns.ts +379 -0
  573. package/src/{sortingFns.ts → fns/sortFns.ts} +66 -21
  574. package/src/helpers/columnHelper.ts +117 -0
  575. package/src/helpers/tableFeatures.ts +24 -0
  576. package/src/helpers/tableOptions.ts +82 -0
  577. package/src/index.ts +137 -42
  578. package/src/process-env.d.ts +6 -0
  579. package/src/reactivity.ts +3 -0
  580. package/src/static-functions.ts +31 -0
  581. package/src/types/Cell.ts +41 -0
  582. package/src/types/Column.ts +86 -0
  583. package/src/types/ColumnDef.ts +217 -0
  584. package/src/types/Header.ts +45 -0
  585. package/src/types/HeaderGroup.ts +24 -0
  586. package/src/types/Row.ts +55 -0
  587. package/src/types/RowModel.ts +137 -0
  588. package/src/types/RowModelFns.ts +51 -0
  589. package/src/types/Table.ts +132 -0
  590. package/src/types/TableFeatures.ts +150 -0
  591. package/src/types/TableOptions.ts +125 -0
  592. package/src/types/TableState.ts +88 -0
  593. package/src/types/type-utils.ts +84 -0
  594. package/src/utils.ts +361 -161
  595. package/dist/cjs/aggregationFns.cjs +0 -98
  596. package/dist/cjs/aggregationFns.cjs.map +0 -1
  597. package/dist/cjs/aggregationFns.d.cts +0 -14
  598. package/dist/cjs/columnHelper.cjs +0 -19
  599. package/dist/cjs/columnHelper.cjs.map +0 -1
  600. package/dist/cjs/columnHelper.d.cts +0 -9
  601. package/dist/cjs/core/cell.cjs +0 -38
  602. package/dist/cjs/core/cell.cjs.map +0 -1
  603. package/dist/cjs/core/cell.d.cts +0 -50
  604. package/dist/cjs/core/column.cjs +0 -81
  605. package/dist/cjs/core/column.cjs.map +0 -1
  606. package/dist/cjs/core/column.d.cts +0 -56
  607. package/dist/cjs/core/headers.cjs +0 -310
  608. package/dist/cjs/core/headers.cjs.map +0 -1
  609. package/dist/cjs/core/headers.d.cts +0 -195
  610. package/dist/cjs/core/row.cjs +0 -93
  611. package/dist/cjs/core/row.cjs.map +0 -1
  612. package/dist/cjs/core/row.d.cts +0 -92
  613. package/dist/cjs/core/table.cjs +0 -228
  614. package/dist/cjs/core/table.cjs.map +0 -1
  615. package/dist/cjs/core/table.d.cts +0 -221
  616. package/dist/cjs/features/ColumnFaceting.cjs +0 -29
  617. package/dist/cjs/features/ColumnFaceting.cjs.map +0 -1
  618. package/dist/cjs/features/ColumnFaceting.d.cts +0 -35
  619. package/dist/cjs/features/ColumnFiltering.cjs +0 -137
  620. package/dist/cjs/features/ColumnFiltering.cjs.map +0 -1
  621. package/dist/cjs/features/ColumnFiltering.d.cts +0 -195
  622. package/dist/cjs/features/ColumnGrouping.cjs +0 -134
  623. package/dist/cjs/features/ColumnGrouping.cjs.map +0 -1
  624. package/dist/cjs/features/ColumnGrouping.d.cts +0 -202
  625. package/dist/cjs/features/ColumnOrdering.cjs +0 -76
  626. package/dist/cjs/features/ColumnOrdering.cjs.map +0 -1
  627. package/dist/cjs/features/ColumnOrdering.d.cts +0 -54
  628. package/dist/cjs/features/ColumnPinning.cjs +0 -145
  629. package/dist/cjs/features/ColumnPinning.cjs.map +0 -1
  630. package/dist/cjs/features/ColumnPinning.d.cts +0 -127
  631. package/dist/cjs/features/ColumnSizing.cjs +0 -308
  632. package/dist/cjs/features/ColumnSizing.cjs.map +0 -1
  633. package/dist/cjs/features/ColumnSizing.d.cts +0 -194
  634. package/dist/cjs/features/ColumnVisibility.cjs +0 -144
  635. package/dist/cjs/features/ColumnVisibility.cjs.map +0 -1
  636. package/dist/cjs/features/ColumnVisibility.d.cts +0 -130
  637. package/dist/cjs/features/GlobalFaceting.cjs +0 -29
  638. package/dist/cjs/features/GlobalFaceting.cjs.map +0 -1
  639. package/dist/cjs/features/GlobalFaceting.d.cts +0 -27
  640. package/dist/cjs/features/GlobalFiltering.cjs +0 -50
  641. package/dist/cjs/features/GlobalFiltering.cjs.map +0 -1
  642. package/dist/cjs/features/GlobalFiltering.d.cts +0 -80
  643. package/dist/cjs/features/RowExpanding.cjs +0 -154
  644. package/dist/cjs/features/RowExpanding.cjs.map +0 -1
  645. package/dist/cjs/features/RowExpanding.d.cts +0 -155
  646. package/dist/cjs/features/RowPagination.cjs +0 -162
  647. package/dist/cjs/features/RowPagination.cjs.map +0 -1
  648. package/dist/cjs/features/RowPagination.d.cts +0 -166
  649. package/dist/cjs/features/RowPinning.cjs +0 -133
  650. package/dist/cjs/features/RowPinning.cjs.map +0 -1
  651. package/dist/cjs/features/RowPinning.d.cts +0 -99
  652. package/dist/cjs/features/RowSelection.cjs +0 -298
  653. package/dist/cjs/features/RowSelection.cjs.map +0 -1
  654. package/dist/cjs/features/RowSelection.d.cts +0 -177
  655. package/dist/cjs/features/RowSorting.cjs +0 -201
  656. package/dist/cjs/features/RowSorting.cjs.map +0 -1
  657. package/dist/cjs/features/RowSorting.d.cts +0 -238
  658. package/dist/cjs/filterFns.cjs +0 -88
  659. package/dist/cjs/filterFns.cjs.map +0 -1
  660. package/dist/cjs/filterFns.d.cts +0 -14
  661. package/dist/cjs/index.cjs +0 -87
  662. package/dist/cjs/index.cjs.map +0 -1
  663. package/dist/cjs/index.d.cts +0 -34
  664. package/dist/cjs/sortingFns.cjs +0 -91
  665. package/dist/cjs/sortingFns.cjs.map +0 -1
  666. package/dist/cjs/sortingFns.d.cts +0 -12
  667. package/dist/cjs/types.d.cts +0 -120
  668. package/dist/cjs/utils/filterRowsUtils.cjs +0 -99
  669. package/dist/cjs/utils/filterRowsUtils.cjs.map +0 -1
  670. package/dist/cjs/utils/filterRowsUtils.d.cts +0 -3
  671. package/dist/cjs/utils/getCoreRowModel.cjs +0 -54
  672. package/dist/cjs/utils/getCoreRowModel.cjs.map +0 -1
  673. package/dist/cjs/utils/getCoreRowModel.d.cts +0 -3
  674. package/dist/cjs/utils/getExpandedRowModel.cjs +0 -41
  675. package/dist/cjs/utils/getExpandedRowModel.cjs.map +0 -1
  676. package/dist/cjs/utils/getExpandedRowModel.d.cts +0 -8
  677. package/dist/cjs/utils/getFacetedMinMaxValues.cjs +0 -36
  678. package/dist/cjs/utils/getFacetedMinMaxValues.cjs.map +0 -1
  679. package/dist/cjs/utils/getFacetedMinMaxValues.d.cts +0 -3
  680. package/dist/cjs/utils/getFacetedRowModel.cjs +0 -35
  681. package/dist/cjs/utils/getFacetedRowModel.cjs.map +0 -1
  682. package/dist/cjs/utils/getFacetedRowModel.d.cts +0 -3
  683. package/dist/cjs/utils/getFacetedUniqueValues.cjs +0 -38
  684. package/dist/cjs/utils/getFacetedUniqueValues.cjs.map +0 -1
  685. package/dist/cjs/utils/getFacetedUniqueValues.d.cts +0 -3
  686. package/dist/cjs/utils/getFilteredRowModel.cjs +0 -116
  687. package/dist/cjs/utils/getFilteredRowModel.cjs.map +0 -1
  688. package/dist/cjs/utils/getFilteredRowModel.d.cts +0 -3
  689. package/dist/cjs/utils/getGroupedRowModel.cjs +0 -118
  690. package/dist/cjs/utils/getGroupedRowModel.cjs.map +0 -1
  691. package/dist/cjs/utils/getGroupedRowModel.d.cts +0 -3
  692. package/dist/cjs/utils/getPaginationRowModel.cjs +0 -49
  693. package/dist/cjs/utils/getPaginationRowModel.cjs.map +0 -1
  694. package/dist/cjs/utils/getPaginationRowModel.d.cts +0 -5
  695. package/dist/cjs/utils/getSortedRowModel.cjs +0 -91
  696. package/dist/cjs/utils/getSortedRowModel.cjs.map +0 -1
  697. package/dist/cjs/utils/getSortedRowModel.d.cts +0 -3
  698. package/dist/cjs/utils.cjs +0 -100
  699. package/dist/cjs/utils.cjs.map +0 -1
  700. package/dist/cjs/utils.d.cts +0 -39
  701. package/dist/esm/aggregationFns.d.ts +0 -14
  702. package/dist/esm/aggregationFns.js +0 -98
  703. package/dist/esm/aggregationFns.js.map +0 -1
  704. package/dist/esm/columnHelper.d.ts +0 -9
  705. package/dist/esm/columnHelper.js +0 -19
  706. package/dist/esm/columnHelper.js.map +0 -1
  707. package/dist/esm/core/cell.d.ts +0 -50
  708. package/dist/esm/core/cell.js +0 -38
  709. package/dist/esm/core/cell.js.map +0 -1
  710. package/dist/esm/core/column.d.ts +0 -56
  711. package/dist/esm/core/column.js +0 -81
  712. package/dist/esm/core/column.js.map +0 -1
  713. package/dist/esm/core/headers.d.ts +0 -195
  714. package/dist/esm/core/headers.js +0 -310
  715. package/dist/esm/core/headers.js.map +0 -1
  716. package/dist/esm/core/row.d.ts +0 -92
  717. package/dist/esm/core/row.js +0 -93
  718. package/dist/esm/core/row.js.map +0 -1
  719. package/dist/esm/core/table.d.ts +0 -221
  720. package/dist/esm/core/table.js +0 -228
  721. package/dist/esm/core/table.js.map +0 -1
  722. package/dist/esm/features/ColumnFaceting.d.ts +0 -35
  723. package/dist/esm/features/ColumnFaceting.js +0 -29
  724. package/dist/esm/features/ColumnFaceting.js.map +0 -1
  725. package/dist/esm/features/ColumnFiltering.d.ts +0 -195
  726. package/dist/esm/features/ColumnFiltering.js +0 -137
  727. package/dist/esm/features/ColumnFiltering.js.map +0 -1
  728. package/dist/esm/features/ColumnGrouping.d.ts +0 -202
  729. package/dist/esm/features/ColumnGrouping.js +0 -134
  730. package/dist/esm/features/ColumnGrouping.js.map +0 -1
  731. package/dist/esm/features/ColumnOrdering.d.ts +0 -54
  732. package/dist/esm/features/ColumnOrdering.js +0 -76
  733. package/dist/esm/features/ColumnOrdering.js.map +0 -1
  734. package/dist/esm/features/ColumnPinning.d.ts +0 -127
  735. package/dist/esm/features/ColumnPinning.js +0 -145
  736. package/dist/esm/features/ColumnPinning.js.map +0 -1
  737. package/dist/esm/features/ColumnSizing.d.ts +0 -194
  738. package/dist/esm/features/ColumnSizing.js +0 -308
  739. package/dist/esm/features/ColumnSizing.js.map +0 -1
  740. package/dist/esm/features/ColumnVisibility.d.ts +0 -130
  741. package/dist/esm/features/ColumnVisibility.js +0 -144
  742. package/dist/esm/features/ColumnVisibility.js.map +0 -1
  743. package/dist/esm/features/GlobalFaceting.d.ts +0 -27
  744. package/dist/esm/features/GlobalFaceting.js +0 -29
  745. package/dist/esm/features/GlobalFaceting.js.map +0 -1
  746. package/dist/esm/features/GlobalFiltering.d.ts +0 -80
  747. package/dist/esm/features/GlobalFiltering.js +0 -50
  748. package/dist/esm/features/GlobalFiltering.js.map +0 -1
  749. package/dist/esm/features/RowExpanding.d.ts +0 -155
  750. package/dist/esm/features/RowExpanding.js +0 -154
  751. package/dist/esm/features/RowExpanding.js.map +0 -1
  752. package/dist/esm/features/RowPagination.d.ts +0 -166
  753. package/dist/esm/features/RowPagination.js +0 -162
  754. package/dist/esm/features/RowPagination.js.map +0 -1
  755. package/dist/esm/features/RowPinning.d.ts +0 -99
  756. package/dist/esm/features/RowPinning.js +0 -133
  757. package/dist/esm/features/RowPinning.js.map +0 -1
  758. package/dist/esm/features/RowSelection.d.ts +0 -177
  759. package/dist/esm/features/RowSelection.js +0 -298
  760. package/dist/esm/features/RowSelection.js.map +0 -1
  761. package/dist/esm/features/RowSorting.d.ts +0 -238
  762. package/dist/esm/features/RowSorting.js +0 -201
  763. package/dist/esm/features/RowSorting.js.map +0 -1
  764. package/dist/esm/filterFns.d.ts +0 -14
  765. package/dist/esm/filterFns.js +0 -88
  766. package/dist/esm/filterFns.js.map +0 -1
  767. package/dist/esm/index.d.ts +0 -34
  768. package/dist/esm/index.js +0 -87
  769. package/dist/esm/index.js.map +0 -1
  770. package/dist/esm/sortingFns.d.ts +0 -12
  771. package/dist/esm/sortingFns.js +0 -91
  772. package/dist/esm/sortingFns.js.map +0 -1
  773. package/dist/esm/types.d.ts +0 -120
  774. package/dist/esm/utils/filterRowsUtils.d.ts +0 -3
  775. package/dist/esm/utils/filterRowsUtils.js +0 -99
  776. package/dist/esm/utils/filterRowsUtils.js.map +0 -1
  777. package/dist/esm/utils/getCoreRowModel.d.ts +0 -3
  778. package/dist/esm/utils/getCoreRowModel.js +0 -54
  779. package/dist/esm/utils/getCoreRowModel.js.map +0 -1
  780. package/dist/esm/utils/getExpandedRowModel.d.ts +0 -8
  781. package/dist/esm/utils/getExpandedRowModel.js +0 -41
  782. package/dist/esm/utils/getExpandedRowModel.js.map +0 -1
  783. package/dist/esm/utils/getFacetedMinMaxValues.d.ts +0 -3
  784. package/dist/esm/utils/getFacetedMinMaxValues.js +0 -36
  785. package/dist/esm/utils/getFacetedMinMaxValues.js.map +0 -1
  786. package/dist/esm/utils/getFacetedRowModel.d.ts +0 -3
  787. package/dist/esm/utils/getFacetedRowModel.js +0 -35
  788. package/dist/esm/utils/getFacetedRowModel.js.map +0 -1
  789. package/dist/esm/utils/getFacetedUniqueValues.d.ts +0 -3
  790. package/dist/esm/utils/getFacetedUniqueValues.js +0 -38
  791. package/dist/esm/utils/getFacetedUniqueValues.js.map +0 -1
  792. package/dist/esm/utils/getFilteredRowModel.d.ts +0 -3
  793. package/dist/esm/utils/getFilteredRowModel.js +0 -116
  794. package/dist/esm/utils/getFilteredRowModel.js.map +0 -1
  795. package/dist/esm/utils/getGroupedRowModel.d.ts +0 -3
  796. package/dist/esm/utils/getGroupedRowModel.js +0 -118
  797. package/dist/esm/utils/getGroupedRowModel.js.map +0 -1
  798. package/dist/esm/utils/getPaginationRowModel.d.ts +0 -5
  799. package/dist/esm/utils/getPaginationRowModel.js +0 -49
  800. package/dist/esm/utils/getPaginationRowModel.js.map +0 -1
  801. package/dist/esm/utils/getSortedRowModel.d.ts +0 -3
  802. package/dist/esm/utils/getSortedRowModel.js +0 -91
  803. package/dist/esm/utils/getSortedRowModel.js.map +0 -1
  804. package/dist/esm/utils.d.ts +0 -39
  805. package/dist/esm/utils.js +0 -100
  806. package/dist/esm/utils.js.map +0 -1
  807. package/src/aggregationFns.ts +0 -123
  808. package/src/columnHelper.ts +0 -91
  809. package/src/core/cell.ts +0 -91
  810. package/src/core/column.ts +0 -165
  811. package/src/core/headers.ts +0 -639
  812. package/src/core/row.ts +0 -201
  813. package/src/core/table.ts +0 -527
  814. package/src/features/ColumnFaceting.ts +0 -84
  815. package/src/features/ColumnFiltering.ts +0 -429
  816. package/src/features/ColumnGrouping.ts +0 -422
  817. package/src/features/ColumnOrdering.ts +0 -161
  818. package/src/features/ColumnPinning.ts +0 -336
  819. package/src/features/ColumnSizing.ts +0 -579
  820. package/src/features/ColumnVisibility.ts +0 -317
  821. package/src/features/GlobalFaceting.ts +0 -66
  822. package/src/features/GlobalFiltering.ts +0 -162
  823. package/src/features/RowExpanding.ts +0 -355
  824. package/src/features/RowPagination.ts +0 -396
  825. package/src/features/RowPinning.ts +0 -273
  826. package/src/features/RowSelection.ts +0 -668
  827. package/src/features/RowSorting.ts +0 -542
  828. package/src/filterFns.ts +0 -150
  829. package/src/types.ts +0 -361
  830. package/src/utils/filterRowsUtils.ts +0 -130
  831. package/src/utils/getCoreRowModel.ts +0 -82
  832. package/src/utils/getExpandedRowModel.ts +0 -51
  833. package/src/utils/getFacetedMinMaxValues.ts +0 -42
  834. package/src/utils/getFacetedRowModel.ts +0 -44
  835. package/src/utils/getFacetedUniqueValues.ts +0 -42
  836. package/src/utils/getFilteredRowModel.ts +0 -151
  837. package/src/utils/getGroupedRowModel.ts +0 -181
  838. package/src/utils/getPaginationRowModel.ts +0 -60
  839. package/src/utils/getSortedRowModel.ts +0 -121
@@ -0,0 +1,63 @@
1
+ import { callMemoOrStaticFn, tableMemo } from '../../utils'
2
+ import { column_getFacetedRowModel } from './columnFacetingFeature.utils'
3
+ import type { Row } from '../../types/Row'
4
+ import type { Table, Table_Internal } from '../../types/Table'
5
+ import type { TableFeatures } from '../../types/TableFeatures'
6
+ import type { RowData } from '../../types/type-utils'
7
+
8
+ export function createFacetedMinMaxValues<
9
+ TFeatures extends TableFeatures,
10
+ TData extends RowData = any,
11
+ >(): (
12
+ table: Table<TFeatures, TData>,
13
+ columnId: string,
14
+ ) => () => undefined | [number, number] {
15
+ return (_table, columnId) => {
16
+ const table: Table_Internal<TFeatures, TData> = _table
17
+ return tableMemo({
18
+ feature: 'columnFacetingFeature',
19
+ fn: (flatRows) => _createFacetedMinMaxValues(columnId, flatRows),
20
+ fnName: 'table.getFacetedMinMaxValues',
21
+ memoDeps: () => {
22
+ const column = table.getColumn(columnId)
23
+ if (!column) return [table.getPreFilteredRowModel().flatRows]
24
+ return [
25
+ callMemoOrStaticFn(
26
+ column,
27
+ 'getFacetedRowModel',
28
+ column_getFacetedRowModel,
29
+ table,
30
+ ).flatRows,
31
+ ]
32
+ },
33
+ table,
34
+ })
35
+ }
36
+ }
37
+
38
+ function _createFacetedMinMaxValues<
39
+ TFeatures extends TableFeatures,
40
+ TData extends RowData = any,
41
+ >(
42
+ columnId: string,
43
+ flatRows: Array<Row<TFeatures, TData>>,
44
+ ): undefined | [number, number] {
45
+ if (!flatRows.length) return undefined
46
+
47
+ const numericValues = flatRows
48
+ .map((flatRow) => flatRow.getValue(columnId))
49
+ .map(Number)
50
+ .filter((value) => !Number.isNaN(value))
51
+
52
+ if (!numericValues.length) return undefined
53
+
54
+ let facetedMinValue = numericValues[0]!
55
+ let facetedMaxValue = numericValues[0]!
56
+
57
+ for (const value of numericValues) {
58
+ if (value < facetedMinValue) facetedMinValue = value
59
+ if (value > facetedMaxValue) facetedMaxValue = value
60
+ }
61
+
62
+ return [facetedMinValue, facetedMaxValue]
63
+ }
@@ -0,0 +1,76 @@
1
+ import { tableMemo } from '../../utils'
2
+ import { filterRows } from '../column-filtering/filterRowsUtils'
3
+ import type { Table, Table_Internal } from '../../types/Table'
4
+ import type {
5
+ ColumnFiltersState,
6
+ Row_ColumnFiltering,
7
+ } from '../column-filtering/columnFilteringFeature.types'
8
+ import type { TableFeatures } from '../../types/TableFeatures'
9
+ import type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'
10
+ import type { Row } from '../../types/Row'
11
+ import type { RowData } from '../../types/type-utils'
12
+
13
+ export function createFacetedRowModel<
14
+ TFeatures extends TableFeatures,
15
+ TData extends RowData = any,
16
+ >(): (
17
+ table: Table<TFeatures, TData>,
18
+ columnId: string,
19
+ ) => () => RowModel<TFeatures, TData> {
20
+ return (_table, columnId) => {
21
+ const table: Table_Internal<TFeatures, TData> = _table
22
+ return tableMemo({
23
+ feature: 'columnFacetingFeature',
24
+ table,
25
+ fnName: 'createFacetedRowModel',
26
+ memoDeps: () => [
27
+ table.getPreFilteredRowModel(),
28
+ table.atoms.columnFilters?.get(),
29
+ table.atoms.globalFilter?.get(),
30
+ table.getFilteredRowModel(),
31
+ ],
32
+ fn: (preRowModel, columnFilters, globalFilter) =>
33
+ _createFacetedRowModel(
34
+ table,
35
+ columnId,
36
+ preRowModel,
37
+ columnFilters,
38
+ globalFilter,
39
+ ),
40
+ })
41
+ }
42
+ }
43
+
44
+ function _createFacetedRowModel<
45
+ TFeatures extends TableFeatures,
46
+ TData extends RowData = any,
47
+ >(
48
+ table: Table_Internal<TFeatures, TData>,
49
+ columnId: string,
50
+ preRowModel: RowModel<TFeatures, TData>,
51
+ columnFilters?: ColumnFiltersState,
52
+ globalFilter?: string,
53
+ ) {
54
+ if (!preRowModel.rows.length || (!columnFilters?.length && !globalFilter)) {
55
+ return preRowModel
56
+ }
57
+
58
+ const filterableIds = [
59
+ ...(columnFilters?.map((d) => d.id).filter((d) => d !== columnId) ?? []),
60
+ globalFilter ? '__global__' : undefined,
61
+ ].filter(Boolean) as Array<string>
62
+
63
+ const filterRowsImpl = (
64
+ row: Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>,
65
+ ) => {
66
+ // Horizontally filter rows through each column
67
+ for (const colId of filterableIds) {
68
+ if (row.columnFilters?.[colId] === false) {
69
+ return false
70
+ }
71
+ }
72
+ return true
73
+ }
74
+
75
+ return filterRows(preRowModel.rows, filterRowsImpl, table)
76
+ }
@@ -0,0 +1,60 @@
1
+ import { callMemoOrStaticFn, tableMemo } from '../../utils'
2
+ import { column_getFacetedRowModel } from './columnFacetingFeature.utils'
3
+ import type { Row } from '../../types/Row'
4
+ import type { Table, Table_Internal } from '../../types/Table'
5
+ import type { TableFeatures } from '../../types/TableFeatures'
6
+ import type { RowData } from '../../types/type-utils'
7
+
8
+ export function createFacetedUniqueValues<
9
+ TFeatures extends TableFeatures,
10
+ TData extends RowData = any,
11
+ >(): (
12
+ table: Table<TFeatures, TData>,
13
+ columnId: string,
14
+ ) => () => Map<any, number> {
15
+ return (_table, columnId) => {
16
+ const table: Table_Internal<TFeatures, TData> = _table
17
+ return tableMemo({
18
+ feature: 'columnFacetingFeature',
19
+ table,
20
+ fnName: 'table.getFacetedUniqueValues',
21
+ memoDeps: () => {
22
+ const column = table.getColumn(columnId)
23
+ if (!column) return [table.getPreFilteredRowModel().flatRows]
24
+ return [
25
+ callMemoOrStaticFn(
26
+ column,
27
+ 'getFacetedRowModel',
28
+ column_getFacetedRowModel,
29
+ table,
30
+ ).flatRows,
31
+ ]
32
+ },
33
+ fn: (flatRows) => _createFacetedUniqueValues(columnId, flatRows),
34
+ })
35
+ }
36
+ }
37
+
38
+ function _createFacetedUniqueValues<
39
+ TFeatures extends TableFeatures,
40
+ TData extends RowData = any,
41
+ >(columnId: string, flatRows: Array<Row<TFeatures, TData>>): Map<any, number> {
42
+ const facetedUniqueValues = new Map<any, number>()
43
+
44
+ for (const row of flatRows) {
45
+ const values = row.getUniqueValues(columnId)
46
+
47
+ for (const value of values) {
48
+ if (facetedUniqueValues.has(value)) {
49
+ facetedUniqueValues.set(
50
+ value,
51
+ (facetedUniqueValues.get(value) ?? 0) + 1,
52
+ )
53
+ } else {
54
+ facetedUniqueValues.set(value, 1)
55
+ }
56
+ }
57
+ }
58
+
59
+ return facetedUniqueValues
60
+ }
@@ -0,0 +1,121 @@
1
+ import {
2
+ assignPrototypeAPIs,
3
+ assignTableAPIs,
4
+ makeStateUpdater,
5
+ } from '../../utils'
6
+ import {
7
+ column_getAutoFilterFn,
8
+ column_getCanFilter,
9
+ column_getFilterFn,
10
+ column_getFilterIndex,
11
+ column_getFilterValue,
12
+ column_getIsFiltered,
13
+ column_setFilterValue,
14
+ getDefaultColumnFiltersState,
15
+ table_resetColumnFilters,
16
+ table_setColumnFilters,
17
+ } from './columnFilteringFeature.utils'
18
+ import type { RowData } from '../../types/type-utils'
19
+ import type { TableFeature, TableFeatures } from '../../types/TableFeatures'
20
+ // import type {
21
+ // CachedRowModel_Filtered,
22
+ // ColumnDef_ColumnFiltering,
23
+ // Column_ColumnFiltering,
24
+ // CreateRowModel_Filtered,
25
+ // RowModelFns_ColumnFiltering,
26
+ // Row_ColumnFiltering,
27
+ // TableOptions_ColumnFiltering,
28
+ // TableState_ColumnFiltering,
29
+ // Table_ColumnFiltering,
30
+ // } from './columnFilteringFeature.types'
31
+
32
+ export interface ColumnFilteringFeatureConstructors<
33
+ TFeatures extends TableFeatures,
34
+ TData extends RowData,
35
+ > {
36
+ // CachedRowModel: CachedRowModel_Filtered<TFeatures, TData>
37
+ // Column: Column_ColumnFiltering<TFeatures, TData>
38
+ // ColumnDef: ColumnDef_ColumnFiltering<TFeatures, TData>
39
+ // CreateRowModels: CreateRowModel_Filtered<TFeatures, TData>
40
+ // Row: Row_ColumnFiltering<TFeatures, TData>
41
+ // RowModelFns: RowModelFns_ColumnFiltering<TFeatures, TData>
42
+ // Table: Table_ColumnFiltering<TFeatures, TData>
43
+ // TableOptions: TableOptions_ColumnFiltering<TFeatures, TData>
44
+ // TableState: TableState_ColumnFiltering
45
+ }
46
+
47
+ export function constructColumnFilteringFeature<
48
+ TFeatures extends TableFeatures,
49
+ TData extends RowData,
50
+ >(): TableFeature<ColumnFilteringFeatureConstructors<TFeatures, TData>> {
51
+ return {
52
+ getInitialState: (initialState) => {
53
+ return {
54
+ columnFilters: getDefaultColumnFiltersState(),
55
+ ...initialState,
56
+ }
57
+ },
58
+
59
+ getDefaultColumnDef: () => {
60
+ return {
61
+ filterFn: 'auto',
62
+ }
63
+ },
64
+
65
+ getDefaultTableOptions: (table) => {
66
+ return {
67
+ onColumnFiltersChange: makeStateUpdater('columnFilters', table),
68
+ filterFromLeafRows: false,
69
+ maxLeafRowFilterDepth: 100,
70
+ }
71
+ },
72
+
73
+ assignColumnPrototype: (prototype, table) => {
74
+ assignPrototypeAPIs('columnFilteringFeature', prototype, table, {
75
+ column_getAutoFilterFn: {
76
+ fn: (column) => column_getAutoFilterFn(column),
77
+ },
78
+ column_getFilterFn: {
79
+ fn: (column) => column_getFilterFn(column),
80
+ },
81
+ column_getCanFilter: {
82
+ fn: (column) => column_getCanFilter(column),
83
+ },
84
+ column_getIsFiltered: {
85
+ fn: (column) => column_getIsFiltered(column),
86
+ },
87
+ column_getFilterValue: {
88
+ fn: (column) => column_getFilterValue(column),
89
+ },
90
+ column_getFilterIndex: {
91
+ fn: (column) => column_getFilterIndex(column),
92
+ },
93
+ column_setFilterValue: {
94
+ fn: (column, value) => column_setFilterValue(column, value),
95
+ },
96
+ })
97
+ },
98
+
99
+ initRowInstanceData: (row) => {
100
+ ;(row as any).columnFilters = {}
101
+ ;(row as any).columnFiltersMeta = {}
102
+ },
103
+
104
+ constructTableAPIs: (table) => {
105
+ assignTableAPIs('columnFilteringFeature', table, {
106
+ table_setColumnFilters: {
107
+ fn: (updater) => table_setColumnFilters(table, updater),
108
+ },
109
+ table_resetColumnFilters: {
110
+ fn: (defaultState) => table_resetColumnFilters(table, defaultState),
111
+ },
112
+ })
113
+ },
114
+ }
115
+ }
116
+
117
+ /**
118
+ * The Column Filtering feature adds column filtering state and APIs to the table, row, and column objects.
119
+ * **Note:** This does not include Global Filtering. The globalFilteringFeature feature has been split out into its own standalone feature.
120
+ */
121
+ export const columnFilteringFeature = constructColumnFilteringFeature()
@@ -0,0 +1,219 @@
1
+ import type { Table } from '../../types/Table'
2
+ import type { BuiltInFilterFn } from '../../fns/filterFns'
3
+ import type {
4
+ CellData,
5
+ OnChangeFn,
6
+ RowData,
7
+ Updater,
8
+ } from '../../types/type-utils'
9
+ import type { TableFeatures } from '../../types/TableFeatures'
10
+ import type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'
11
+ import type { Row } from '../../types/Row'
12
+ import type { Column } from '../../types/Column'
13
+
14
+ export interface FilterMeta {}
15
+
16
+ export interface FilterFns {}
17
+
18
+ export interface TableState_ColumnFiltering {
19
+ columnFilters: ColumnFiltersState
20
+ }
21
+
22
+ export type ColumnFiltersState = Array<ColumnFilter>
23
+
24
+ export interface ColumnFilter {
25
+ id: string
26
+ value: unknown
27
+ }
28
+
29
+ export interface ResolvedColumnFilter<
30
+ TFeatures extends TableFeatures,
31
+ TData extends RowData,
32
+ > {
33
+ filterFn: FilterFn<TFeatures, TData>
34
+ id: string
35
+ resolvedValue: unknown
36
+ }
37
+
38
+ export interface RowModelFns_ColumnFiltering<
39
+ TFeatures extends TableFeatures,
40
+ TData extends RowData,
41
+ > {
42
+ filterFns: Record<keyof FilterFns, FilterFn<TFeatures, TData>>
43
+ }
44
+
45
+ export interface FilterFn<
46
+ TFeatures extends TableFeatures,
47
+ TData extends RowData,
48
+ > {
49
+ (
50
+ row: Row<TFeatures, TData>,
51
+ columnId: string,
52
+ filterValue: any,
53
+ addMeta?: (meta: FilterMeta) => void,
54
+ ): boolean
55
+ autoRemove?: ColumnFilterAutoRemoveTestFn<TFeatures, TData>
56
+ resolveFilterValue?: TransformFilterValueFn<TFeatures, TData>
57
+ }
58
+
59
+ export type TransformFilterValueFn<
60
+ TFeatures extends TableFeatures,
61
+ TData extends RowData,
62
+ TValue extends CellData = CellData,
63
+ > = (value: any, column?: Column<TFeatures, TData, TValue>) => TValue
64
+
65
+ export type ColumnFilterAutoRemoveTestFn<
66
+ TFeatures extends TableFeatures,
67
+ TData extends RowData,
68
+ TValue extends CellData = CellData,
69
+ > = (value: any, column?: Column<TFeatures, TData, TValue>) => boolean
70
+
71
+ export type CustomFilterFns<
72
+ TFeatures extends TableFeatures,
73
+ TData extends RowData,
74
+ > = Record<string, FilterFn<TFeatures, TData>>
75
+
76
+ export type FilterFnOption<
77
+ TFeatures extends TableFeatures,
78
+ TData extends RowData,
79
+ > = 'auto' | BuiltInFilterFn | keyof FilterFns | FilterFn<TFeatures, TData>
80
+
81
+ export interface ColumnDef_ColumnFiltering<
82
+ TFeatures extends TableFeatures,
83
+ TData extends RowData,
84
+ > {
85
+ /**
86
+ * Enables/disables the **column** filter for this column.
87
+ */
88
+ enableColumnFilter?: boolean
89
+ /**
90
+ * The filter function to use with this column. Can be the name of a built-in filter function or a custom filter function.
91
+ */
92
+ filterFn?: FilterFnOption<TFeatures, TData>
93
+ }
94
+
95
+ export interface Column_ColumnFiltering<
96
+ TFeatures extends TableFeatures,
97
+ TData extends RowData,
98
+ > {
99
+ /**
100
+ * Returns an automatically calculated filter function for the column based off of the columns first known value.
101
+ */
102
+ getAutoFilterFn: () => FilterFn<TFeatures, TData>
103
+ /**
104
+ * Returns whether or not the column can be **column** filtered.
105
+ */
106
+ getCanFilter: () => boolean
107
+ /**
108
+ * Returns the filter function (either user-defined or automatic, depending on configuration) for the columnId specified.
109
+ */
110
+ getFilterFn: () => FilterFn<TFeatures, TData>
111
+ /**
112
+ * Returns the index (including `-1`) of the column filter in the table's `state.columnFilters` array.
113
+ */
114
+ getFilterIndex: () => number
115
+ /**
116
+ * Returns the current filter value for the column.
117
+ */
118
+ getFilterValue: () => unknown
119
+ /**
120
+ * Returns whether or not the column is currently filtered.
121
+ */
122
+ getIsFiltered: () => boolean
123
+ /**
124
+ * A function that sets the current filter value for the column. You can pass it a value or an updater function for immutability-safe operations on existing values.
125
+ */
126
+ setFilterValue: (updater: Updater<any>) => void
127
+ }
128
+
129
+ export interface Row_ColumnFiltering<
130
+ TFeatures extends TableFeatures,
131
+ TData extends RowData,
132
+ > {
133
+ /**
134
+ * The column filters map for the row. This object tracks whether a row is passing/failing specific filters by their column ID.
135
+ */
136
+ columnFilters: Record<string, boolean>
137
+ /**
138
+ * The column filters meta map for the row. This object tracks any filter meta for a row as optionally provided during the filtering process.
139
+ */
140
+ columnFiltersMeta: Record<string, FilterMeta>
141
+ }
142
+
143
+ export interface TableOptions_ColumnFiltering<
144
+ TFeatures extends TableFeatures,
145
+ TData extends RowData,
146
+ > {
147
+ /**
148
+ * Enables/disables **column** filtering for all columns.
149
+ */
150
+ enableColumnFilters?: boolean
151
+ /**
152
+ * Enables/disables all filtering for the table.
153
+ */
154
+ enableFilters?: boolean
155
+ /**
156
+ * By default, filtering is done from parent rows down (so if a parent row is filtered out, all of its children will be filtered out as well). Setting this option to `true` will cause filtering to be done from leaf rows up (which means parent rows will be included so long as one of their child or grand-child rows is also included).
157
+ */
158
+ filterFromLeafRows?: boolean
159
+ /**
160
+ * Disables the `getFilteredRowModel` from being used to filter data. This may be useful if your table needs to dynamically support both client-side and server-side filtering.
161
+ */
162
+ manualFiltering?: boolean
163
+ /**
164
+ * By default, filtering is done for all rows (max depth of 100), no matter if they are root level parent rows or the child leaf rows of a parent row. Setting this option to `0` will cause filtering to only be applied to the root level parent rows, with all sub-rows remaining unfiltered. Similarly, setting this option to `1` will cause filtering to only be applied to child leaf rows 1 level deep, and so on.
165
+
166
+ * This is useful for situations where you want a row's entire child hierarchy to be visible regardless of the applied filter.
167
+ */
168
+ maxLeafRowFilterDepth?: number
169
+ /**
170
+ * If provided, this function will be called with an `updaterFn` when `state.columnFilters` changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
171
+ */
172
+ onColumnFiltersChange?: OnChangeFn<ColumnFiltersState>
173
+ }
174
+
175
+ export interface Table_ColumnFiltering {
176
+ /**
177
+ * Resets the **columnFilters** state to `initialState.columnFilters`, or `true` can be passed to force a default blank state reset to `[]`.
178
+ */
179
+ resetColumnFilters: (defaultState?: boolean) => void
180
+ /**
181
+ * Sets or updates the `state.columnFilters` state.
182
+ */
183
+ setColumnFilters: (updater: Updater<ColumnFiltersState>) => void
184
+ }
185
+
186
+ export interface Table_RowModels_Filtered<
187
+ TFeatures extends TableFeatures,
188
+ TData extends RowData,
189
+ > {
190
+ /**
191
+ * Returns the row model for the table after **column** filtering has been applied.
192
+ */
193
+ getFilteredRowModel: () => RowModel<TFeatures, TData>
194
+ /**
195
+ * Returns the row model for the table before any **column** filtering has been applied.
196
+ */
197
+ getPreFilteredRowModel: () => RowModel<TFeatures, TData>
198
+ }
199
+
200
+ export interface CreateRowModel_Filtered<
201
+ TFeatures extends TableFeatures,
202
+ TData extends RowData,
203
+ > {
204
+ /**
205
+ * If provided, this function is called **once** per table and should return a **new function** which will calculate and return the row model for the table when it's filtered.
206
+ * - For server-side filtering, this function is unnecessary and can be ignored since the server should already return the filtered row model.
207
+ * - For client-side filtering, this function is required. A default implementation is provided via any table adapter's `{ getFilteredRowModel }` export.
208
+ */
209
+ filteredRowModel?: (
210
+ table: Table<TFeatures, TData>,
211
+ ) => () => RowModel<TFeatures, TData>
212
+ }
213
+
214
+ export interface CachedRowModel_Filtered<
215
+ TFeatures extends TableFeatures,
216
+ TData extends RowData,
217
+ > {
218
+ filteredRowModel: () => RowModel<TFeatures, TData>
219
+ }