@tanstack/table-core 9.0.0-alpha.21 → 9.0.0-alpha.27

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 (708) 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 +64 -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 +63 -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/{esm/core → core}/coreFeatures.js +12 -10
  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 +61 -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 +60 -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 +65 -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 +60 -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 +69 -0
  115. package/dist/core/table/constructTable.cjs.map +1 -0
  116. package/dist/core/table/constructTable.d.cts +14 -0
  117. package/dist/core/table/constructTable.d.ts +14 -0
  118. package/dist/core/table/constructTable.js +67 -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 +113 -0
  127. package/dist/core/table/coreTablesFeature.types.d.ts +113 -0
  128. package/dist/core/table/coreTablesFeature.utils.cjs +23 -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 +21 -0
  133. package/dist/core/table/coreTablesFeature.utils.js.map +1 -0
  134. package/dist/features/column-faceting/columnFacetingFeature.cjs +59 -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 +58 -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 +37 -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 +37 -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 +94 -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 +94 -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 +110 -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 +110 -0
  209. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -0
  210. package/dist/features/column-ordering/columnOrderingFeature.cjs +55 -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 +54 -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 +62 -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 +55 -0
  223. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -0
  224. package/dist/features/column-pinning/columnPinningFeature.cjs +181 -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 +180 -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 +194 -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 +164 -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 +156 -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 +149 -0
  251. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -0
  252. package/dist/features/column-sizing/columnSizingFeature.cjs +69 -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 +68 -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 +84 -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 +83 -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 +45 -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 +44 -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 +111 -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 +96 -0
  313. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -0
  314. package/dist/features/row-pagination/createPaginatedRowModel.cjs +53 -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 +53 -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 +114 -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 +98 -0
  333. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -0
  334. package/dist/features/row-pinning/rowPinningFeature.cjs +65 -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 +64 -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 +98 -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 +88 -0
  347. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -0
  348. package/dist/features/row-selection/rowSelectionFeature.cjs +70 -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 +69 -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 +224 -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 +198 -0
  361. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -0
  362. package/dist/features/row-sorting/createSortedRowModel.cjs +81 -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 +81 -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/{esm/features → features}/stockFeatures.js +20 -18
  387. package/dist/features/stockFeatures.js.map +1 -0
  388. package/dist/features/table-reactivity/tableReactivityFeature.cjs +24 -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 +23 -0
  393. package/dist/features/table-reactivity/tableReactivityFeature.js.map +1 -0
  394. package/dist/fns/aggregationFns.cjs +125 -0
  395. package/dist/fns/aggregationFns.cjs.map +1 -0
  396. package/dist/fns/aggregationFns.d.cts +54 -0
  397. package/dist/fns/aggregationFns.d.ts +54 -0
  398. package/dist/fns/aggregationFns.js +116 -0
  399. package/dist/fns/aggregationFns.js.map +1 -0
  400. package/dist/fns/filterFns.cjs +179 -0
  401. package/dist/fns/filterFns.cjs.map +1 -0
  402. package/dist/fns/filterFns.d.cts +81 -0
  403. package/dist/fns/filterFns.d.ts +81 -0
  404. package/dist/fns/filterFns.js +163 -0
  405. package/dist/fns/filterFns.js.map +1 -0
  406. package/dist/fns/sortFns.cjs +73 -0
  407. package/dist/fns/sortFns.cjs.map +1 -0
  408. package/dist/fns/sortFns.d.cts +22 -0
  409. package/dist/fns/sortFns.d.ts +22 -0
  410. package/dist/fns/sortFns.js +65 -0
  411. package/dist/fns/sortFns.js.map +1 -0
  412. package/dist/helpers/columnHelper.cjs +36 -0
  413. package/dist/helpers/columnHelper.cjs.map +1 -0
  414. package/dist/helpers/columnHelper.d.cts +66 -0
  415. package/dist/helpers/columnHelper.d.ts +66 -0
  416. package/dist/helpers/columnHelper.js +35 -0
  417. package/dist/helpers/columnHelper.js.map +1 -0
  418. package/dist/helpers/tableFeatures.cjs +20 -0
  419. package/dist/helpers/tableFeatures.cjs.map +1 -0
  420. package/dist/helpers/tableFeatures.d.cts +18 -0
  421. package/dist/{esm/helpers → helpers}/tableFeatures.d.ts +7 -2
  422. package/dist/helpers/tableFeatures.js +19 -0
  423. package/dist/helpers/tableFeatures.js.map +1 -0
  424. package/dist/helpers/tableHelper.cjs +21 -0
  425. package/dist/helpers/tableHelper.cjs.map +1 -0
  426. package/dist/helpers/tableHelper.d.cts +30 -0
  427. package/dist/helpers/tableHelper.d.ts +30 -0
  428. package/dist/helpers/tableHelper.js +21 -0
  429. package/dist/helpers/tableHelper.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 +420 -0
  437. package/dist/index.d.cts +100 -0
  438. package/dist/index.d.ts +100 -0
  439. package/dist/{esm/index.js → index.js} +42 -395
  440. package/dist/types/Cell.d.cts +16 -0
  441. package/dist/types/Cell.d.ts +16 -0
  442. package/dist/types/Column.d.cts +29 -0
  443. package/dist/types/Column.d.ts +29 -0
  444. package/dist/types/ColumnDef.d.cts +66 -0
  445. package/dist/types/ColumnDef.d.ts +66 -0
  446. package/dist/types/Header.d.cts +17 -0
  447. package/dist/types/Header.d.ts +17 -0
  448. package/dist/types/HeaderGroup.d.cts +15 -0
  449. package/dist/types/HeaderGroup.d.ts +15 -0
  450. package/dist/types/Row.d.cts +22 -0
  451. package/dist/types/Row.d.ts +22 -0
  452. package/dist/types/RowModel.d.cts +26 -0
  453. package/dist/types/RowModel.d.ts +26 -0
  454. package/dist/types/RowModelFns.d.cts +18 -0
  455. package/dist/types/RowModelFns.d.ts +18 -0
  456. package/dist/types/Table.d.cts +57 -0
  457. package/dist/types/Table.d.ts +57 -0
  458. package/dist/types/TableFeatures.d.cts +77 -0
  459. package/dist/types/TableFeatures.d.ts +77 -0
  460. package/dist/types/TableOptions.d.cts +39 -0
  461. package/dist/types/TableOptions.d.ts +39 -0
  462. package/dist/types/TableState.d.cts +27 -0
  463. package/dist/types/TableState.d.ts +27 -0
  464. package/dist/types/type-utils.d.cts +23 -0
  465. package/dist/types/type-utils.d.ts +23 -0
  466. package/dist/utils.cjs +210 -0
  467. package/dist/utils.cjs.map +1 -0
  468. package/dist/utils.d.cts +90 -0
  469. package/dist/utils.d.ts +90 -0
  470. package/dist/utils.js +196 -0
  471. package/dist/utils.js.map +1 -0
  472. package/package.json +8 -8
  473. package/src/features/column-pinning/columnPinningFeature.ts +3 -0
  474. package/src/features/column-visibility/columnVisibilityFeature.ts +2 -0
  475. package/src/process-env.d.ts +6 -0
  476. package/dist/esm/core/cells/constructCell.d.ts +0 -7
  477. package/dist/esm/core/cells/constructCell.js +0 -21
  478. package/dist/esm/core/cells/constructCell.js.map +0 -1
  479. package/dist/esm/core/cells/coreCellsFeature.d.ts +0 -10
  480. package/dist/esm/core/cells/coreCellsFeature.js +0 -26
  481. package/dist/esm/core/cells/coreCellsFeature.js.map +0 -1
  482. package/dist/esm/core/cells/coreCellsFeature.types.d.ts +0 -52
  483. package/dist/esm/core/cells/coreCellsFeature.utils.d.ts +0 -13
  484. package/dist/esm/core/cells/coreCellsFeature.utils.js +0 -23
  485. package/dist/esm/core/cells/coreCellsFeature.utils.js.map +0 -1
  486. package/dist/esm/core/columns/constructColumn.d.ts +0 -6
  487. package/dist/esm/core/columns/constructColumn.js +0 -60
  488. package/dist/esm/core/columns/constructColumn.js.map +0 -1
  489. package/dist/esm/core/columns/coreColumnsFeature.d.ts +0 -10
  490. package/dist/esm/core/columns/coreColumnsFeature.js +0 -61
  491. package/dist/esm/core/columns/coreColumnsFeature.js.map +0 -1
  492. package/dist/esm/core/columns/coreColumnsFeature.types.d.ts +0 -84
  493. package/dist/esm/core/columns/coreColumnsFeature.utils.d.ts +0 -13
  494. package/dist/esm/core/columns/coreColumnsFeature.utils.js +0 -91
  495. package/dist/esm/core/columns/coreColumnsFeature.utils.js.map +0 -1
  496. package/dist/esm/core/coreFeatures.d.ts +0 -15
  497. package/dist/esm/core/coreFeatures.js.map +0 -1
  498. package/dist/esm/core/headers/buildHeaderGroups.d.ts +0 -6
  499. package/dist/esm/core/headers/buildHeaderGroups.js +0 -99
  500. package/dist/esm/core/headers/buildHeaderGroups.js.map +0 -1
  501. package/dist/esm/core/headers/constructHeader.d.ts +0 -12
  502. package/dist/esm/core/headers/constructHeader.js +0 -28
  503. package/dist/esm/core/headers/constructHeader.js.map +0 -1
  504. package/dist/esm/core/headers/coreHeadersFeature.d.ts +0 -10
  505. package/dist/esm/core/headers/coreHeadersFeature.js +0 -68
  506. package/dist/esm/core/headers/coreHeadersFeature.js.map +0 -1
  507. package/dist/esm/core/headers/coreHeadersFeature.types.d.ts +0 -99
  508. package/dist/esm/core/headers/coreHeadersFeature.utils.d.ts +0 -15
  509. package/dist/esm/core/headers/coreHeadersFeature.utils.js +0 -85
  510. package/dist/esm/core/headers/coreHeadersFeature.utils.js.map +0 -1
  511. package/dist/esm/core/row-models/coreRowModelsFeature.d.ts +0 -10
  512. package/dist/esm/core/row-models/coreRowModelsFeature.js +0 -52
  513. package/dist/esm/core/row-models/coreRowModelsFeature.js.map +0 -1
  514. package/dist/esm/core/row-models/coreRowModelsFeature.types.d.ts +0 -39
  515. package/dist/esm/core/row-models/coreRowModelsFeature.utils.d.ts +0 -16
  516. package/dist/esm/core/row-models/coreRowModelsFeature.utils.js +0 -85
  517. package/dist/esm/core/row-models/coreRowModelsFeature.utils.js.map +0 -1
  518. package/dist/esm/core/row-models/createCoreRowModel.d.ts +0 -5
  519. package/dist/esm/core/row-models/createCoreRowModel.js +0 -54
  520. package/dist/esm/core/row-models/createCoreRowModel.js.map +0 -1
  521. package/dist/esm/core/rows/constructRow.d.ts +0 -5
  522. package/dist/esm/core/rows/constructRow.js +0 -29
  523. package/dist/esm/core/rows/constructRow.js.map +0 -1
  524. package/dist/esm/core/rows/coreRowsFeature.d.ts +0 -10
  525. package/dist/esm/core/rows/coreRowsFeature.js +0 -52
  526. package/dist/esm/core/rows/coreRowsFeature.js.map +0 -1
  527. package/dist/esm/core/rows/coreRowsFeature.types.d.ts +0 -91
  528. package/dist/esm/core/rows/coreRowsFeature.utils.d.ts +0 -15
  529. package/dist/esm/core/rows/coreRowsFeature.utils.js +0 -94
  530. package/dist/esm/core/rows/coreRowsFeature.utils.js.map +0 -1
  531. package/dist/esm/core/table/constructTable.d.ts +0 -9
  532. package/dist/esm/core/table/constructTable.js +0 -68
  533. package/dist/esm/core/table/constructTable.js.map +0 -1
  534. package/dist/esm/core/table/coreTablesFeature.d.ts +0 -10
  535. package/dist/esm/core/table/coreTablesFeature.js +0 -22
  536. package/dist/esm/core/table/coreTablesFeature.js.map +0 -1
  537. package/dist/esm/core/table/coreTablesFeature.types.d.ts +0 -109
  538. package/dist/esm/core/table/coreTablesFeature.utils.d.ts +0 -7
  539. package/dist/esm/core/table/coreTablesFeature.utils.js +0 -24
  540. package/dist/esm/core/table/coreTablesFeature.utils.js.map +0 -1
  541. package/dist/esm/features/column-faceting/columnFacetingFeature.d.ts +0 -10
  542. package/dist/esm/features/column-faceting/columnFacetingFeature.js +0 -80
  543. package/dist/esm/features/column-faceting/columnFacetingFeature.js.map +0 -1
  544. package/dist/esm/features/column-faceting/columnFacetingFeature.types.d.ts +0 -68
  545. package/dist/esm/features/column-faceting/columnFacetingFeature.utils.d.ts +0 -11
  546. package/dist/esm/features/column-faceting/columnFacetingFeature.utils.js +0 -33
  547. package/dist/esm/features/column-faceting/columnFacetingFeature.utils.js.map +0 -1
  548. package/dist/esm/features/column-faceting/createFacetedMinMaxValues.d.ts +0 -4
  549. package/dist/esm/features/column-faceting/createFacetedMinMaxValues.js +0 -41
  550. package/dist/esm/features/column-faceting/createFacetedMinMaxValues.js.map +0 -1
  551. package/dist/esm/features/column-faceting/createFacetedRowModel.d.ts +0 -5
  552. package/dist/esm/features/column-faceting/createFacetedRowModel.js +0 -47
  553. package/dist/esm/features/column-faceting/createFacetedRowModel.js.map +0 -1
  554. package/dist/esm/features/column-faceting/createFacetedUniqueValues.d.ts +0 -4
  555. package/dist/esm/features/column-faceting/createFacetedUniqueValues.js +0 -46
  556. package/dist/esm/features/column-faceting/createFacetedUniqueValues.js.map +0 -1
  557. package/dist/esm/features/column-filtering/columnFilteringFeature.d.ts +0 -11
  558. package/dist/esm/features/column-filtering/columnFilteringFeature.js +0 -69
  559. package/dist/esm/features/column-filtering/columnFilteringFeature.js.map +0 -1
  560. package/dist/esm/features/column-filtering/columnFilteringFeature.types.d.ts +0 -145
  561. package/dist/esm/features/column-filtering/columnFilteringFeature.utils.d.ts +0 -16
  562. package/dist/esm/features/column-filtering/columnFilteringFeature.utils.js +0 -118
  563. package/dist/esm/features/column-filtering/columnFilteringFeature.utils.js.map +0 -1
  564. package/dist/esm/features/column-filtering/createFilteredRowModel.d.ts +0 -6
  565. package/dist/esm/features/column-filtering/createFilteredRowModel.js +0 -110
  566. package/dist/esm/features/column-filtering/createFilteredRowModel.js.map +0 -1
  567. package/dist/esm/features/column-filtering/filterRowsUtils.d.ts +0 -6
  568. package/dist/esm/features/column-filtering/filterRowsUtils.js +0 -95
  569. package/dist/esm/features/column-filtering/filterRowsUtils.js.map +0 -1
  570. package/dist/esm/features/column-grouping/columnGroupingFeature.d.ts +0 -10
  571. package/dist/esm/features/column-grouping/columnGroupingFeature.js +0 -91
  572. package/dist/esm/features/column-grouping/columnGroupingFeature.js.map +0 -1
  573. package/dist/esm/features/column-grouping/columnGroupingFeature.types.d.ts +0 -153
  574. package/dist/esm/features/column-grouping/columnGroupingFeature.utils.d.ts +0 -22
  575. package/dist/esm/features/column-grouping/columnGroupingFeature.utils.js +0 -99
  576. package/dist/esm/features/column-grouping/columnGroupingFeature.utils.js.map +0 -1
  577. package/dist/esm/features/column-grouping/createGroupedRowModel.d.ts +0 -6
  578. package/dist/esm/features/column-grouping/createGroupedRowModel.js +0 -144
  579. package/dist/esm/features/column-grouping/createGroupedRowModel.js.map +0 -1
  580. package/dist/esm/features/column-ordering/columnOrderingFeature.d.ts +0 -10
  581. package/dist/esm/features/column-ordering/columnOrderingFeature.js +0 -60
  582. package/dist/esm/features/column-ordering/columnOrderingFeature.js.map +0 -1
  583. package/dist/esm/features/column-ordering/columnOrderingFeature.types.d.ts +0 -40
  584. package/dist/esm/features/column-ordering/columnOrderingFeature.utils.d.ts +0 -14
  585. package/dist/esm/features/column-ordering/columnOrderingFeature.utils.js +0 -72
  586. package/dist/esm/features/column-ordering/columnOrderingFeature.utils.js.map +0 -1
  587. package/dist/esm/features/column-pinning/columnPinningFeature.d.ts +0 -10
  588. package/dist/esm/features/column-pinning/columnPinningFeature.js +0 -260
  589. package/dist/esm/features/column-pinning/columnPinningFeature.js.map +0 -1
  590. package/dist/esm/features/column-pinning/columnPinningFeature.types.d.ts +0 -157
  591. package/dist/esm/features/column-pinning/columnPinningFeature.utils.d.ts +0 -39
  592. package/dist/esm/features/column-pinning/columnPinningFeature.utils.js +0 -325
  593. package/dist/esm/features/column-pinning/columnPinningFeature.utils.js.map +0 -1
  594. package/dist/esm/features/column-resizing/columnResizingFeature.d.ts +0 -11
  595. package/dist/esm/features/column-resizing/columnResizingFeature.js +0 -52
  596. package/dist/esm/features/column-resizing/columnResizingFeature.js.map +0 -1
  597. package/dist/esm/features/column-resizing/columnResizingFeature.types.d.ts +0 -68
  598. package/dist/esm/features/column-resizing/columnResizingFeature.utils.d.ts +0 -14
  599. package/dist/esm/features/column-resizing/columnResizingFeature.utils.js +0 -197
  600. package/dist/esm/features/column-resizing/columnResizingFeature.utils.js.map +0 -1
  601. package/dist/esm/features/column-sizing/columnSizingFeature.d.ts +0 -11
  602. package/dist/esm/features/column-sizing/columnSizingFeature.js +0 -95
  603. package/dist/esm/features/column-sizing/columnSizingFeature.js.map +0 -1
  604. package/dist/esm/features/column-sizing/columnSizingFeature.types.d.ts +0 -81
  605. package/dist/esm/features/column-sizing/columnSizingFeature.utils.d.ts +0 -25
  606. package/dist/esm/features/column-sizing/columnSizingFeature.utils.js +0 -128
  607. package/dist/esm/features/column-sizing/columnSizingFeature.utils.js.map +0 -1
  608. package/dist/esm/features/column-visibility/columnVisibilityFeature.d.ts +0 -10
  609. package/dist/esm/features/column-visibility/columnVisibilityFeature.js +0 -100
  610. package/dist/esm/features/column-visibility/columnVisibilityFeature.js.map +0 -1
  611. package/dist/esm/features/column-visibility/columnVisibilityFeature.types.d.ts +0 -84
  612. package/dist/esm/features/column-visibility/columnVisibilityFeature.utils.d.ts +0 -22
  613. package/dist/esm/features/column-visibility/columnVisibilityFeature.utils.js +0 -105
  614. package/dist/esm/features/column-visibility/columnVisibilityFeature.utils.js.map +0 -1
  615. package/dist/esm/features/global-filtering/globalFilteringFeature.d.ts +0 -11
  616. package/dist/esm/features/global-filtering/globalFilteringFeature.js +0 -51
  617. package/dist/esm/features/global-filtering/globalFilteringFeature.js.map +0 -1
  618. package/dist/esm/features/global-filtering/globalFilteringFeature.types.d.ts +0 -59
  619. package/dist/esm/features/global-filtering/globalFilteringFeature.utils.d.ts +0 -10
  620. package/dist/esm/features/global-filtering/globalFilteringFeature.utils.js +0 -30
  621. package/dist/esm/features/global-filtering/globalFilteringFeature.utils.js.map +0 -1
  622. package/dist/esm/features/row-expanding/createExpandedRowModel.d.ts +0 -6
  623. package/dist/esm/features/row-expanding/createExpandedRowModel.js +0 -49
  624. package/dist/esm/features/row-expanding/createExpandedRowModel.js.map +0 -1
  625. package/dist/esm/features/row-expanding/rowExpandingFeature.d.ts +0 -10
  626. package/dist/esm/features/row-expanding/rowExpandingFeature.js +0 -74
  627. package/dist/esm/features/row-expanding/rowExpandingFeature.js.map +0 -1
  628. package/dist/esm/features/row-expanding/rowExpandingFeature.types.d.ts +0 -116
  629. package/dist/esm/features/row-expanding/rowExpandingFeature.utils.d.ts +0 -20
  630. package/dist/esm/features/row-expanding/rowExpandingFeature.utils.js +0 -125
  631. package/dist/esm/features/row-expanding/rowExpandingFeature.utils.js.map +0 -1
  632. package/dist/esm/features/row-pagination/createPaginatedRowModel.d.ts +0 -5
  633. package/dist/esm/features/row-pagination/createPaginatedRowModel.js +0 -58
  634. package/dist/esm/features/row-pagination/createPaginatedRowModel.js.map +0 -1
  635. package/dist/esm/features/row-pagination/rowPaginationFeature.d.ts +0 -10
  636. package/dist/esm/features/row-pagination/rowPaginationFeature.js +0 -78
  637. package/dist/esm/features/row-pagination/rowPaginationFeature.js.map +0 -1
  638. package/dist/esm/features/row-pagination/rowPaginationFeature.types.d.ts +0 -119
  639. package/dist/esm/features/row-pagination/rowPaginationFeature.utils.d.ts +0 -21
  640. package/dist/esm/features/row-pagination/rowPaginationFeature.utils.js +0 -126
  641. package/dist/esm/features/row-pagination/rowPaginationFeature.utils.js.map +0 -1
  642. package/dist/esm/features/row-pinning/rowPinningFeature.d.ts +0 -10
  643. package/dist/esm/features/row-pinning/rowPinningFeature.js +0 -80
  644. package/dist/esm/features/row-pinning/rowPinningFeature.js.map +0 -1
  645. package/dist/esm/features/row-pinning/rowPinningFeature.types.d.ts +0 -72
  646. package/dist/esm/features/row-pinning/rowPinningFeature.utils.d.ts +0 -16
  647. package/dist/esm/features/row-pinning/rowPinningFeature.utils.js +0 -115
  648. package/dist/esm/features/row-pinning/rowPinningFeature.utils.js.map +0 -1
  649. package/dist/esm/features/row-selection/rowSelectionFeature.d.ts +0 -10
  650. package/dist/esm/features/row-selection/rowSelectionFeature.js +0 -112
  651. package/dist/esm/features/row-selection/rowSelectionFeature.js.map +0 -1
  652. package/dist/esm/features/row-selection/rowSelectionFeature.types.d.ts +0 -123
  653. package/dist/esm/features/row-selection/rowSelectionFeature.utils.d.ts +0 -34
  654. package/dist/esm/features/row-selection/rowSelectionFeature.utils.js +0 -290
  655. package/dist/esm/features/row-selection/rowSelectionFeature.utils.js.map +0 -1
  656. package/dist/esm/features/row-sorting/createSortedRowModel.d.ts +0 -6
  657. package/dist/esm/features/row-sorting/createSortedRowModel.js +0 -94
  658. package/dist/esm/features/row-sorting/createSortedRowModel.js.map +0 -1
  659. package/dist/esm/features/row-sorting/rowSortingFeature.d.ts +0 -10
  660. package/dist/esm/features/row-sorting/rowSortingFeature.js +0 -82
  661. package/dist/esm/features/row-sorting/rowSortingFeature.js.map +0 -1
  662. package/dist/esm/features/row-sorting/rowSortingFeature.types.d.ts +0 -178
  663. package/dist/esm/features/row-sorting/rowSortingFeature.utils.d.ts +0 -20
  664. package/dist/esm/features/row-sorting/rowSortingFeature.utils.js +0 -181
  665. package/dist/esm/features/row-sorting/rowSortingFeature.utils.js.map +0 -1
  666. package/dist/esm/features/stockFeatures.d.ts +0 -31
  667. package/dist/esm/features/stockFeatures.js.map +0 -1
  668. package/dist/esm/features/table-reactivity/tableReactivityFeature.d.ts +0 -9
  669. package/dist/esm/features/table-reactivity/tableReactivityFeature.js +0 -30
  670. package/dist/esm/features/table-reactivity/tableReactivityFeature.js.map +0 -1
  671. package/dist/esm/fns/aggregationFns.d.ts +0 -49
  672. package/dist/esm/fns/aggregationFns.js +0 -110
  673. package/dist/esm/fns/aggregationFns.js.map +0 -1
  674. package/dist/esm/fns/filterFns.d.ts +0 -76
  675. package/dist/esm/fns/filterFns.js +0 -134
  676. package/dist/esm/fns/filterFns.js.map +0 -1
  677. package/dist/esm/fns/sortFns.d.ts +0 -17
  678. package/dist/esm/fns/sortFns.js +0 -97
  679. package/dist/esm/fns/sortFns.js.map +0 -1
  680. package/dist/esm/helpers/columnHelper.d.ts +0 -61
  681. package/dist/esm/helpers/columnHelper.js +0 -20
  682. package/dist/esm/helpers/columnHelper.js.map +0 -1
  683. package/dist/esm/helpers/tableFeatures.js +0 -7
  684. package/dist/esm/helpers/tableFeatures.js.map +0 -1
  685. package/dist/esm/helpers/tableHelper.d.ts +0 -25
  686. package/dist/esm/helpers/tableHelper.js +0 -13
  687. package/dist/esm/helpers/tableHelper.js.map +0 -1
  688. package/dist/esm/helpers/tableOptions.d.ts +0 -23
  689. package/dist/esm/helpers/tableOptions.js +0 -7
  690. package/dist/esm/helpers/tableOptions.js.map +0 -1
  691. package/dist/esm/index.d.ts +0 -111
  692. package/dist/esm/index.js.map +0 -1
  693. package/dist/esm/types/Cell.d.ts +0 -13
  694. package/dist/esm/types/Column.d.ts +0 -26
  695. package/dist/esm/types/ColumnDef.d.ts +0 -64
  696. package/dist/esm/types/Header.d.ts +0 -14
  697. package/dist/esm/types/HeaderGroup.d.ts +0 -12
  698. package/dist/esm/types/Row.d.ts +0 -19
  699. package/dist/esm/types/RowModel.d.ts +0 -23
  700. package/dist/esm/types/RowModelFns.d.ts +0 -15
  701. package/dist/esm/types/Table.d.ts +0 -53
  702. package/dist/esm/types/TableFeatures.d.ts +0 -77
  703. package/dist/esm/types/TableOptions.d.ts +0 -39
  704. package/dist/esm/types/TableState.d.ts +0 -23
  705. package/dist/esm/types/type-utils.d.ts +0 -22
  706. package/dist/esm/utils.d.ts +0 -72
  707. package/dist/esm/utils.js +0 -231
  708. package/dist/esm/utils.js.map +0 -1
@@ -0,0 +1,80 @@
1
+ import { functionalUpdate, isFunction } from "../../utils.js";
2
+
3
+ //#region src/features/column-filtering/columnFilteringFeature.utils.ts
4
+ function getDefaultColumnFiltersState() {
5
+ return structuredClone([]);
6
+ }
7
+ function column_getAutoFilterFn(column) {
8
+ const filterFns = column.table._rowModelFns.filterFns;
9
+ const firstRow = column.table.getCoreRowModel().flatRows[0];
10
+ const value = firstRow ? firstRow.getValue(column.id) : void 0;
11
+ if (typeof value === "string") return filterFns === null || filterFns === void 0 ? void 0 : filterFns.includesString;
12
+ if (typeof value === "number") return filterFns === null || filterFns === void 0 ? void 0 : filterFns.inNumberRange;
13
+ if (typeof value === "boolean") return filterFns === null || filterFns === void 0 ? void 0 : filterFns.equals;
14
+ if (value !== null && typeof value === "object") return filterFns === null || filterFns === void 0 ? void 0 : filterFns.equals;
15
+ if (Array.isArray(value)) return filterFns === null || filterFns === void 0 ? void 0 : filterFns.arrIncludes;
16
+ return filterFns === null || filterFns === void 0 ? void 0 : filterFns.weakEquals;
17
+ }
18
+ function column_getFilterFn(column) {
19
+ let filterFn = null;
20
+ const filterFns = column.table._rowModelFns.filterFns;
21
+ filterFn = isFunction(column.columnDef.filterFn) ? column.columnDef.filterFn : column.columnDef.filterFn === "auto" ? column_getAutoFilterFn(column) : filterFns === null || filterFns === void 0 ? void 0 : filterFns[column.columnDef.filterFn];
22
+ if (process.env.NODE_ENV === "development" && !filterFn) console.warn(`Could not find a valid 'column.filterFn' for column with the ID: ${column.id}.`);
23
+ return filterFn;
24
+ }
25
+ function column_getCanFilter(column) {
26
+ return (column.columnDef.enableColumnFilter ?? true) && (column.table.options.enableColumnFilters ?? true) && (column.table.options.enableFilters ?? true) && !!column.accessorFn;
27
+ }
28
+ function column_getIsFiltered(column) {
29
+ return column_getFilterIndex(column) > -1;
30
+ }
31
+ function column_getFilterValue(column) {
32
+ var _column$table$store$s;
33
+ return (_column$table$store$s = column.table.store.state.columnFilters) === null || _column$table$store$s === void 0 || (_column$table$store$s = _column$table$store$s.find((d) => d.id === column.id)) === null || _column$table$store$s === void 0 ? void 0 : _column$table$store$s.value;
34
+ }
35
+ function column_getFilterIndex(column) {
36
+ var _column$table$store$s2;
37
+ return ((_column$table$store$s2 = column.table.store.state.columnFilters) === null || _column$table$store$s2 === void 0 ? void 0 : _column$table$store$s2.findIndex((d) => d.id === column.id)) ?? -1;
38
+ }
39
+ function column_setFilterValue(column, value) {
40
+ table_setColumnFilters(column.table, (old) => {
41
+ const filterFn = column_getFilterFn(column);
42
+ const previousFilter = old.find((d) => d.id === column.id);
43
+ const newFilter = functionalUpdate(value, previousFilter ? previousFilter.value : void 0);
44
+ if (shouldAutoRemoveFilter(filterFn, newFilter, column)) return old.filter((d) => d.id !== column.id);
45
+ const newFilterObj = {
46
+ id: column.id,
47
+ value: newFilter
48
+ };
49
+ if (previousFilter) return old.map((d) => {
50
+ if (d.id === column.id) return newFilterObj;
51
+ return d;
52
+ });
53
+ if (old.length) return [...old, newFilterObj];
54
+ return [newFilterObj];
55
+ });
56
+ }
57
+ function table_setColumnFilters(table, updater) {
58
+ var _table$options$onColu, _table$options;
59
+ const leafColumns = table.getAllLeafColumns();
60
+ const updateFn = (old) => {
61
+ return functionalUpdate(updater, old).filter((filter) => {
62
+ const column = leafColumns.find((d) => d.id === filter.id);
63
+ if (column) {
64
+ if (shouldAutoRemoveFilter(column_getFilterFn(column), filter.value, column)) return false;
65
+ }
66
+ return true;
67
+ });
68
+ };
69
+ (_table$options$onColu = (_table$options = table.options).onColumnFiltersChange) === null || _table$options$onColu === void 0 || _table$options$onColu.call(_table$options, updateFn);
70
+ }
71
+ function table_resetColumnFilters(table, defaultState) {
72
+ table_setColumnFilters(table, defaultState ? [] : table.initialState.columnFilters ?? []);
73
+ }
74
+ function shouldAutoRemoveFilter(filterFn, value, column) {
75
+ return (filterFn && filterFn.autoRemove ? filterFn.autoRemove(value, column) : false) || typeof value === "undefined" || typeof value === "string" && !value;
76
+ }
77
+
78
+ //#endregion
79
+ export { column_getAutoFilterFn, column_getCanFilter, column_getFilterFn, column_getFilterIndex, column_getFilterValue, column_getIsFiltered, column_setFilterValue, getDefaultColumnFiltersState, shouldAutoRemoveFilter, table_resetColumnFilters, table_setColumnFilters };
80
+ //# sourceMappingURL=columnFilteringFeature.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columnFilteringFeature.utils.js","names":[],"sources":["../../../src/features/column-filtering/columnFilteringFeature.utils.ts"],"sourcesContent":["import { functionalUpdate, isFunction } from '../../utils'\nimport type { CellData, RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Column_Internal } from '../../types/Column'\nimport type {\n ColumnFiltersState,\n FilterFn,\n} from './columnFilteringFeature.types'\n\nexport function getDefaultColumnFiltersState(): ColumnFiltersState {\n return structuredClone([])\n}\n\nexport function column_getAutoFilterFn<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n const filterFns = column.table._rowModelFns.filterFns as\n | Record<string, FilterFn<TFeatures, TData>>\n | undefined\n\n const firstRow = column.table.getCoreRowModel().flatRows[0]\n\n const value = firstRow ? firstRow.getValue(column.id) : undefined\n\n if (typeof value === 'string') {\n return filterFns?.includesString\n }\n\n if (typeof value === 'number') {\n return filterFns?.inNumberRange\n }\n\n if (typeof value === 'boolean') {\n return filterFns?.equals\n }\n\n if (value !== null && typeof value === 'object') {\n return filterFns?.equals\n }\n\n if (Array.isArray(value)) {\n return filterFns?.arrIncludes\n }\n\n return filterFns?.weakEquals\n}\n\nexport function column_getFilterFn<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n): FilterFn<TFeatures, TData> | undefined {\n let filterFn = null\n const filterFns = column.table._rowModelFns.filterFns as\n | Record<string, FilterFn<TFeatures, TData>>\n | undefined\n filterFn = isFunction(column.columnDef.filterFn)\n ? column.columnDef.filterFn\n : column.columnDef.filterFn === 'auto'\n ? column_getAutoFilterFn(column)\n : filterFns?.[column.columnDef.filterFn as string]\n\n if (process.env.NODE_ENV === 'development' && !filterFn) {\n console.warn(\n `Could not find a valid 'column.filterFn' for column with the ID: ${column.id}.`,\n )\n }\n\n return filterFn\n}\n\nexport function column_getCanFilter<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return (\n (column.columnDef.enableColumnFilter ?? true) &&\n (column.table.options.enableColumnFilters ?? true) &&\n (column.table.options.enableFilters ?? true) &&\n !!column.accessorFn\n )\n}\n\nexport function column_getIsFiltered<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return column_getFilterIndex(column) > -1\n}\n\nexport function column_getFilterValue<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return column.table.store.state.columnFilters?.find((d) => d.id === column.id)\n ?.value\n}\n\nexport function column_getFilterIndex<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>): number {\n return (\n column.table.store.state.columnFilters?.findIndex(\n (d) => d.id === column.id,\n ) ?? -1\n )\n}\n\nexport function column_setFilterValue<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>, value: any) {\n table_setColumnFilters(column.table, (old) => {\n const filterFn = column_getFilterFn(column)\n const previousFilter = old.find((d) => d.id === column.id)\n\n const newFilter = functionalUpdate(\n value,\n previousFilter ? previousFilter.value : undefined,\n )\n\n if (shouldAutoRemoveFilter(filterFn, newFilter, column)) {\n return old.filter((d) => d.id !== column.id)\n }\n\n const newFilterObj = { id: column.id, value: newFilter }\n\n if (previousFilter) {\n return old.map((d) => {\n if (d.id === column.id) {\n return newFilterObj\n }\n return d\n })\n }\n\n if (old.length) {\n return [...old, newFilterObj]\n }\n\n return [newFilterObj]\n })\n}\n\nexport function table_setColumnFilters<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<ColumnFiltersState>,\n) {\n const leafColumns = table.getAllLeafColumns()\n\n const updateFn = (old: ColumnFiltersState) => {\n return functionalUpdate(updater, old).filter((filter) => {\n const column = leafColumns.find((d) => d.id === filter.id)\n\n if (column) {\n const filterFn = column_getFilterFn(column)\n\n if (shouldAutoRemoveFilter(filterFn, filter.value, column)) {\n return false\n }\n }\n\n return true\n })\n }\n\n table.options.onColumnFiltersChange?.(updateFn)\n}\n\nexport function table_resetColumnFilters<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n table_setColumnFilters(\n table,\n defaultState ? [] : (table.initialState.columnFilters ?? []),\n )\n}\n\nexport function shouldAutoRemoveFilter<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n filterFn?: FilterFn<TFeatures, TData>,\n value?: any,\n column?: Column_Internal<TFeatures, TData, TValue>,\n) {\n return (\n (filterFn && filterFn.autoRemove\n ? filterFn.autoRemove(\n value,\n column as Column_Internal<TFeatures, TData, unknown>,\n )\n : false) ||\n typeof value === 'undefined' ||\n (typeof value === 'string' && !value)\n )\n}\n"],"mappings":";;;AAUA,SAAgB,+BAAmD;AACjE,QAAO,gBAAgB,EAAE,CAAC;;AAG5B,SAAgB,uBAId,QAAmD;CACnD,MAAM,YAAY,OAAO,MAAM,aAAa;CAI5C,MAAM,WAAW,OAAO,MAAM,iBAAiB,CAAC,SAAS;CAEzD,MAAM,QAAQ,WAAW,SAAS,SAAS,OAAO,GAAG,GAAG;AAExD,KAAI,OAAO,UAAU,SACnB,8DAAO,UAAW;AAGpB,KAAI,OAAO,UAAU,SACnB,8DAAO,UAAW;AAGpB,KAAI,OAAO,UAAU,UACnB,8DAAO,UAAW;AAGpB,KAAI,UAAU,QAAQ,OAAO,UAAU,SACrC,8DAAO,UAAW;AAGpB,KAAI,MAAM,QAAQ,MAAM,CACtB,8DAAO,UAAW;AAGpB,8DAAO,UAAW;;AAGpB,SAAgB,mBAKd,QACwC;CACxC,IAAI,WAAW;CACf,MAAM,YAAY,OAAO,MAAM,aAAa;AAG5C,YAAW,WAAW,OAAO,UAAU,SAAS,GAC5C,OAAO,UAAU,WACjB,OAAO,UAAU,aAAa,SAC5B,uBAAuB,OAAO,yDAC9B,UAAY,OAAO,UAAU;AAEnC,KAAI,QAAQ,IAAI,aAAa,iBAAiB,CAAC,SAC7C,SAAQ,KACN,oEAAoE,OAAO,GAAG,GAC/E;AAGH,QAAO;;AAGT,SAAgB,oBAId,QAAmD;AACnD,SACG,OAAO,UAAU,sBAAsB,UACvC,OAAO,MAAM,QAAQ,uBAAuB,UAC5C,OAAO,MAAM,QAAQ,iBAAiB,SACvC,CAAC,CAAC,OAAO;;AAIb,SAAgB,qBAId,QAAmD;AACnD,QAAO,sBAAsB,OAAO,GAAG;;AAGzC,SAAgB,sBAId,QAAmD;;AACnD,iCAAO,OAAO,MAAM,MAAM,MAAM,8GAAe,MAAM,MAAM,EAAE,OAAO,OAAO,GAAG,gFAC1E;;AAGN,SAAgB,sBAId,QAA2D;;AAC3D,mCACE,OAAO,MAAM,MAAM,MAAM,+FAAe,WACrC,MAAM,EAAE,OAAO,OAAO,GACxB,KAAI;;AAIT,SAAgB,sBAId,QAAmD,OAAY;AAC/D,wBAAuB,OAAO,QAAQ,QAAQ;EAC5C,MAAM,WAAW,mBAAmB,OAAO;EAC3C,MAAM,iBAAiB,IAAI,MAAM,MAAM,EAAE,OAAO,OAAO,GAAG;EAE1D,MAAM,YAAY,iBAChB,OACA,iBAAiB,eAAe,QAAQ,OACzC;AAED,MAAI,uBAAuB,UAAU,WAAW,OAAO,CACrD,QAAO,IAAI,QAAQ,MAAM,EAAE,OAAO,OAAO,GAAG;EAG9C,MAAM,eAAe;GAAE,IAAI,OAAO;GAAI,OAAO;GAAW;AAExD,MAAI,eACF,QAAO,IAAI,KAAK,MAAM;AACpB,OAAI,EAAE,OAAO,OAAO,GAClB,QAAO;AAET,UAAO;IACP;AAGJ,MAAI,IAAI,OACN,QAAO,CAAC,GAAG,KAAK,aAAa;AAG/B,SAAO,CAAC,aAAa;GACrB;;AAGJ,SAAgB,uBAId,OACA,SACA;;CACA,MAAM,cAAc,MAAM,mBAAmB;CAE7C,MAAM,YAAY,QAA4B;AAC5C,SAAO,iBAAiB,SAAS,IAAI,CAAC,QAAQ,WAAW;GACvD,MAAM,SAAS,YAAY,MAAM,MAAM,EAAE,OAAO,OAAO,GAAG;AAE1D,OAAI,QAGF;QAAI,uBAFa,mBAAmB,OAAO,EAEN,OAAO,OAAO,OAAO,CACxD,QAAO;;AAIX,UAAO;IACP;;AAGJ,kDAAM,SAAQ,kHAAwB,SAAS;;AAGjD,SAAgB,yBAGd,OAAyC,cAAwB;AACjE,wBACE,OACA,eAAe,EAAE,GAAI,MAAM,aAAa,iBAAiB,EAAE,CAC5D;;AAGH,SAAgB,uBAKd,UACA,OACA,QACA;AACA,SACG,YAAY,SAAS,aAClB,SAAS,WACP,OACA,OACD,GACD,UACJ,OAAO,UAAU,eAChB,OAAO,UAAU,YAAY,CAAC"}
@@ -0,0 +1,94 @@
1
+ const require_utils = require('../../utils.cjs');
2
+ const require_coreColumnsFeature_utils = require('../../core/columns/coreColumnsFeature.utils.cjs');
3
+ const require_rowPaginationFeature_utils = require('../row-pagination/rowPaginationFeature.utils.cjs');
4
+ const require_columnFilteringFeature_utils = require('./columnFilteringFeature.utils.cjs');
5
+ const require_globalFilteringFeature_utils = require('../global-filtering/globalFilteringFeature.utils.cjs');
6
+ const require_filterRowsUtils = require('./filterRowsUtils.cjs');
7
+
8
+ //#region src/features/column-filtering/createFilteredRowModel.ts
9
+ function createFilteredRowModel(filterFns) {
10
+ return (_table) => {
11
+ const table = _table;
12
+ if (!table._rowModelFns.filterFns) table._rowModelFns.filterFns = filterFns;
13
+ return require_utils.tableMemo({
14
+ feature: "columnFilteringFeature",
15
+ table,
16
+ fnName: "table.getFilteredRowModel",
17
+ memoDeps: () => [
18
+ table.getPreFilteredRowModel(),
19
+ table.store.state.columnFilters,
20
+ table.store.state.globalFilter
21
+ ],
22
+ fn: () => _createFilteredRowModel(table),
23
+ onAfterUpdate: () => require_rowPaginationFeature_utils.table_autoResetPageIndex(table)
24
+ });
25
+ };
26
+ }
27
+ function _createFilteredRowModel(table) {
28
+ const rowModel = table.getPreFilteredRowModel();
29
+ const { columnFilters, globalFilter } = table.store.state;
30
+ if (!rowModel.rows.length || !(columnFilters === null || columnFilters === void 0 ? void 0 : columnFilters.length) && !globalFilter) {
31
+ for (const row of rowModel.flatRows) {
32
+ row.columnFilters = {};
33
+ row.columnFiltersMeta = {};
34
+ }
35
+ return rowModel;
36
+ }
37
+ const resolvedColumnFilters = [];
38
+ const resolvedGlobalFilters = [];
39
+ columnFilters === null || columnFilters === void 0 || columnFilters.forEach((columnFilter) => {
40
+ var _filterFn$resolveFilt;
41
+ const column = require_coreColumnsFeature_utils.table_getColumn(table, columnFilter.id);
42
+ if (!column) return;
43
+ const filterFn = require_columnFilteringFeature_utils.column_getFilterFn(column);
44
+ resolvedColumnFilters.push({
45
+ id: columnFilter.id,
46
+ filterFn,
47
+ resolvedValue: ((_filterFn$resolveFilt = filterFn.resolveFilterValue) === null || _filterFn$resolveFilt === void 0 ? void 0 : _filterFn$resolveFilt.call(filterFn, columnFilter.value)) ?? columnFilter.value
48
+ });
49
+ });
50
+ const filterableIds = (columnFilters === null || columnFilters === void 0 ? void 0 : columnFilters.map((d) => d.id)) ?? [];
51
+ const globalFilterFn = require_globalFilteringFeature_utils.table_getGlobalFilterFn(table);
52
+ const globallyFilterableColumns = table.getAllLeafColumns().filter((column) => require_globalFilteringFeature_utils.column_getCanGlobalFilter(column));
53
+ if (globalFilter && globalFilterFn && globallyFilterableColumns.length) {
54
+ filterableIds.push("__global__");
55
+ globallyFilterableColumns.forEach((column) => {
56
+ var _globalFilterFn$resol;
57
+ resolvedGlobalFilters.push({
58
+ id: column.id,
59
+ filterFn: globalFilterFn,
60
+ resolvedValue: ((_globalFilterFn$resol = globalFilterFn.resolveFilterValue) === null || _globalFilterFn$resol === void 0 ? void 0 : _globalFilterFn$resol.call(globalFilterFn, globalFilter)) ?? globalFilter
61
+ });
62
+ });
63
+ }
64
+ for (const row of rowModel.flatRows) {
65
+ row.columnFilters = {};
66
+ if (resolvedColumnFilters.length) for (const currentColumnFilter of resolvedColumnFilters) {
67
+ const id = currentColumnFilter.id;
68
+ row.columnFilters[id] = currentColumnFilter.filterFn(row, id, currentColumnFilter.resolvedValue, (filterMeta) => {
69
+ !row.columnFiltersMeta ? row.columnFiltersMeta = {} : row.columnFiltersMeta[id] = filterMeta;
70
+ });
71
+ }
72
+ if (resolvedGlobalFilters.length) {
73
+ for (const currentGlobalFilter of resolvedGlobalFilters) {
74
+ const id = currentGlobalFilter.id;
75
+ if (currentGlobalFilter.filterFn(row, id, currentGlobalFilter.resolvedValue, (filterMeta) => {
76
+ !row.columnFiltersMeta ? row.columnFiltersMeta = {} : row.columnFiltersMeta[id] = filterMeta;
77
+ })) {
78
+ row.columnFilters.__global__ = true;
79
+ break;
80
+ }
81
+ }
82
+ if (row.columnFilters.__global__ !== true) row.columnFilters.__global__ = false;
83
+ }
84
+ }
85
+ const filterRowsImpl = (row) => {
86
+ for (const columnId of filterableIds) if (row.columnFilters[columnId] === false) return false;
87
+ return true;
88
+ };
89
+ return require_filterRowsUtils.filterRows(rowModel.rows, filterRowsImpl, table);
90
+ }
91
+
92
+ //#endregion
93
+ exports.createFilteredRowModel = createFilteredRowModel;
94
+ //# sourceMappingURL=createFilteredRowModel.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createFilteredRowModel.cjs","names":["tableMemo","table_autoResetPageIndex","table_getColumn","column_getFilterFn","table_getGlobalFilterFn","column_getCanGlobalFilter","filterRows"],"sources":["../../../src/features/column-filtering/createFilteredRowModel.ts"],"sourcesContent":["import { tableMemo } from '../../utils'\nimport { table_getColumn } from '../../core/columns/coreColumnsFeature.utils'\nimport {\n column_getCanGlobalFilter,\n table_getGlobalFilterFn,\n} from '../global-filtering/globalFilteringFeature.utils'\nimport { table_autoResetPageIndex } from '../row-pagination/rowPaginationFeature.utils'\nimport { filterRows } from './filterRowsUtils'\nimport { column_getFilterFn } from './columnFilteringFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { Row } from '../../types/Row'\nimport type {\n FilterFn,\n FilterFns,\n ResolvedColumnFilter,\n Row_ColumnFiltering,\n} from './columnFilteringFeature.types'\n\nexport function createFilteredRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(\n filterFns: Record<keyof FilterFns, FilterFn<TFeatures, TData>>,\n): (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData> {\n return (_table) => {\n const table = _table as Table_Internal<TFeatures, TData>\n if (!table._rowModelFns.filterFns) table._rowModelFns.filterFns = filterFns\n return tableMemo({\n feature: 'columnFilteringFeature',\n table,\n fnName: 'table.getFilteredRowModel',\n memoDeps: () => [\n table.getPreFilteredRowModel(),\n table.store.state.columnFilters,\n table.store.state.globalFilter,\n ],\n fn: () => _createFilteredRowModel(table),\n onAfterUpdate: () => table_autoResetPageIndex(table),\n })\n }\n}\n\nfunction _createFilteredRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(table: Table_Internal<TFeatures, TData>): RowModel<TFeatures, TData> {\n const rowModel = table.getPreFilteredRowModel()\n const { columnFilters, globalFilter } = table.store.state\n\n if (!rowModel.rows.length || (!columnFilters?.length && !globalFilter)) {\n for (const row of rowModel.flatRows as Array<\n Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>\n >) {\n row.columnFilters = {}\n row.columnFiltersMeta = {}\n }\n return rowModel\n }\n\n const resolvedColumnFilters: Array<ResolvedColumnFilter<TFeatures, TData>> =\n []\n const resolvedGlobalFilters: Array<ResolvedColumnFilter<TFeatures, TData>> =\n []\n\n columnFilters?.forEach((columnFilter) => {\n const column = table_getColumn(table, columnFilter.id)\n\n if (!column) {\n return\n }\n\n const filterFn = column_getFilterFn(column)!\n\n resolvedColumnFilters.push({\n id: columnFilter.id,\n filterFn,\n resolvedValue:\n filterFn.resolveFilterValue?.(columnFilter.value) ?? columnFilter.value,\n })\n })\n\n const filterableIds = columnFilters?.map((d) => d.id) ?? []\n\n const globalFilterFn = table_getGlobalFilterFn(table)\n\n const globallyFilterableColumns = table\n .getAllLeafColumns()\n .filter((column) => column_getCanGlobalFilter(column))\n\n if (globalFilter && globalFilterFn && globallyFilterableColumns.length) {\n filterableIds.push('__global__')\n\n globallyFilterableColumns.forEach((column) => {\n resolvedGlobalFilters.push({\n id: column.id,\n filterFn: globalFilterFn,\n resolvedValue:\n globalFilterFn.resolveFilterValue?.(globalFilter) ?? globalFilter,\n })\n })\n }\n\n // Flag the pre-filtered row model with each filter state\n for (const row of rowModel.flatRows as Array<\n Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>\n >) {\n row.columnFilters = {}\n\n if (resolvedColumnFilters.length) {\n for (const currentColumnFilter of resolvedColumnFilters) {\n const id = currentColumnFilter.id\n\n // Tag the row with the column filter state\n row.columnFilters[id] = currentColumnFilter.filterFn(\n row,\n id,\n currentColumnFilter.resolvedValue,\n (filterMeta) => {\n !row.columnFiltersMeta\n ? (row.columnFiltersMeta = {})\n : (row.columnFiltersMeta[id] = filterMeta)\n },\n )\n }\n }\n\n if (resolvedGlobalFilters.length) {\n for (const currentGlobalFilter of resolvedGlobalFilters) {\n const id = currentGlobalFilter.id\n // Tag the row with the first truthy global filter state\n if (\n currentGlobalFilter.filterFn(\n row,\n id,\n currentGlobalFilter.resolvedValue,\n (filterMeta) => {\n !row.columnFiltersMeta\n ? (row.columnFiltersMeta = {})\n : (row.columnFiltersMeta[id] = filterMeta)\n },\n )\n ) {\n row.columnFilters.__global__ = true\n break\n }\n }\n\n if (row.columnFilters.__global__ !== true) {\n row.columnFilters.__global__ = false\n }\n }\n }\n\n const filterRowsImpl = (\n row: Row<TFeatures, TData> & Row_ColumnFiltering<TFeatures, TData>,\n ) => {\n // Horizontally filter rows through each column\n for (const columnId of filterableIds) {\n if (row.columnFilters[columnId] === false) {\n return false\n }\n }\n return true\n }\n\n // Filter final rows using all of the active filters\n return filterRows(rowModel.rows, filterRowsImpl as any, table)\n}\n"],"mappings":";;;;;;;;AAqBA,SAAgB,uBAId,WACsE;AACtE,SAAQ,WAAW;EACjB,MAAM,QAAQ;AACd,MAAI,CAAC,MAAM,aAAa,UAAW,OAAM,aAAa,YAAY;AAClE,SAAOA,wBAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,wBAAwB;IAC9B,MAAM,MAAM,MAAM;IAClB,MAAM,MAAM,MAAM;IACnB;GACD,UAAU,wBAAwB,MAAM;GACxC,qBAAqBC,4DAAyB,MAAM;GACrD,CAAC;;;AAIN,SAAS,wBAGP,OAAqE;CACrE,MAAM,WAAW,MAAM,wBAAwB;CAC/C,MAAM,EAAE,eAAe,iBAAiB,MAAM,MAAM;AAEpD,KAAI,CAAC,SAAS,KAAK,UAAW,gEAAC,cAAe,WAAU,CAAC,cAAe;AACtE,OAAK,MAAM,OAAO,SAAS,UAExB;AACD,OAAI,gBAAgB,EAAE;AACtB,OAAI,oBAAoB,EAAE;;AAE5B,SAAO;;CAGT,MAAM,wBACJ,EAAE;CACJ,MAAM,wBACJ,EAAE;AAEJ,qEAAe,SAAS,iBAAiB;;EACvC,MAAM,SAASC,iDAAgB,OAAO,aAAa,GAAG;AAEtD,MAAI,CAAC,OACH;EAGF,MAAM,WAAWC,wDAAmB,OAAO;AAE3C,wBAAsB,KAAK;GACzB,IAAI,aAAa;GACjB;GACA,yCACE,SAAS,iHAAqB,aAAa,MAAM,KAAI,aAAa;GACrE,CAAC;GACF;CAEF,MAAM,+EAAgB,cAAe,KAAK,MAAM,EAAE,GAAG,KAAI,EAAE;CAE3D,MAAM,iBAAiBC,6DAAwB,MAAM;CAErD,MAAM,4BAA4B,MAC/B,mBAAmB,CACnB,QAAQ,WAAWC,+DAA0B,OAAO,CAAC;AAExD,KAAI,gBAAgB,kBAAkB,0BAA0B,QAAQ;AACtE,gBAAc,KAAK,aAAa;AAEhC,4BAA0B,SAAS,WAAW;;AAC5C,yBAAsB,KAAK;IACzB,IAAI,OAAO;IACX,UAAU;IACV,yCACE,eAAe,uHAAqB,aAAa,KAAI;IACxD,CAAC;IACF;;AAIJ,MAAK,MAAM,OAAO,SAAS,UAExB;AACD,MAAI,gBAAgB,EAAE;AAEtB,MAAI,sBAAsB,OACxB,MAAK,MAAM,uBAAuB,uBAAuB;GACvD,MAAM,KAAK,oBAAoB;AAG/B,OAAI,cAAc,MAAM,oBAAoB,SAC1C,KACA,IACA,oBAAoB,gBACnB,eAAe;AACd,KAAC,IAAI,oBACA,IAAI,oBAAoB,EAAE,GAC1B,IAAI,kBAAkB,MAAM;KAEpC;;AAIL,MAAI,sBAAsB,QAAQ;AAChC,QAAK,MAAM,uBAAuB,uBAAuB;IACvD,MAAM,KAAK,oBAAoB;AAE/B,QACE,oBAAoB,SAClB,KACA,IACA,oBAAoB,gBACnB,eAAe;AACd,MAAC,IAAI,oBACA,IAAI,oBAAoB,EAAE,GAC1B,IAAI,kBAAkB,MAAM;MAEpC,EACD;AACA,SAAI,cAAc,aAAa;AAC/B;;;AAIJ,OAAI,IAAI,cAAc,eAAe,KACnC,KAAI,cAAc,aAAa;;;CAKrC,MAAM,kBACJ,QACG;AAEH,OAAK,MAAM,YAAY,cACrB,KAAI,IAAI,cAAc,cAAc,MAClC,QAAO;AAGX,SAAO;;AAIT,QAAOC,mCAAW,SAAS,MAAM,gBAAuB,MAAM"}
@@ -0,0 +1,11 @@
1
+ import { RowData } from "../../types/type-utils.cjs";
2
+ import { FilterFn, FilterFns } from "./columnFilteringFeature.types.cjs";
3
+ import { TableFeatures } from "../../types/TableFeatures.cjs";
4
+ import { Table } from "../../types/Table.cjs";
5
+ import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.cjs";
6
+
7
+ //#region src/features/column-filtering/createFilteredRowModel.d.ts
8
+ declare function createFilteredRowModel<TFeatures extends TableFeatures, TData extends RowData = any>(filterFns: Record<keyof FilterFns, FilterFn<TFeatures, TData>>): (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
9
+ //#endregion
10
+ export { createFilteredRowModel };
11
+ //# sourceMappingURL=createFilteredRowModel.d.cts.map
@@ -0,0 +1,11 @@
1
+ import { RowData } from "../../types/type-utils.js";
2
+ import { FilterFn, FilterFns } from "./columnFilteringFeature.types.js";
3
+ import { TableFeatures } from "../../types/TableFeatures.js";
4
+ import { Table } from "../../types/Table.js";
5
+ import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
6
+
7
+ //#region src/features/column-filtering/createFilteredRowModel.d.ts
8
+ declare function createFilteredRowModel<TFeatures extends TableFeatures, TData extends RowData = any>(filterFns: Record<keyof FilterFns, FilterFn<TFeatures, TData>>): (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
9
+ //#endregion
10
+ export { createFilteredRowModel };
11
+ //# sourceMappingURL=createFilteredRowModel.d.ts.map
@@ -0,0 +1,94 @@
1
+ import { tableMemo } from "../../utils.js";
2
+ import { table_getColumn } from "../../core/columns/coreColumnsFeature.utils.js";
3
+ import { table_autoResetPageIndex } from "../row-pagination/rowPaginationFeature.utils.js";
4
+ import { column_getFilterFn } from "./columnFilteringFeature.utils.js";
5
+ import { column_getCanGlobalFilter, table_getGlobalFilterFn } from "../global-filtering/globalFilteringFeature.utils.js";
6
+ import { filterRows } from "./filterRowsUtils.js";
7
+
8
+ //#region src/features/column-filtering/createFilteredRowModel.ts
9
+ function createFilteredRowModel(filterFns) {
10
+ return (_table) => {
11
+ const table = _table;
12
+ if (!table._rowModelFns.filterFns) table._rowModelFns.filterFns = filterFns;
13
+ return tableMemo({
14
+ feature: "columnFilteringFeature",
15
+ table,
16
+ fnName: "table.getFilteredRowModel",
17
+ memoDeps: () => [
18
+ table.getPreFilteredRowModel(),
19
+ table.store.state.columnFilters,
20
+ table.store.state.globalFilter
21
+ ],
22
+ fn: () => _createFilteredRowModel(table),
23
+ onAfterUpdate: () => table_autoResetPageIndex(table)
24
+ });
25
+ };
26
+ }
27
+ function _createFilteredRowModel(table) {
28
+ const rowModel = table.getPreFilteredRowModel();
29
+ const { columnFilters, globalFilter } = table.store.state;
30
+ if (!rowModel.rows.length || !(columnFilters === null || columnFilters === void 0 ? void 0 : columnFilters.length) && !globalFilter) {
31
+ for (const row of rowModel.flatRows) {
32
+ row.columnFilters = {};
33
+ row.columnFiltersMeta = {};
34
+ }
35
+ return rowModel;
36
+ }
37
+ const resolvedColumnFilters = [];
38
+ const resolvedGlobalFilters = [];
39
+ columnFilters === null || columnFilters === void 0 || columnFilters.forEach((columnFilter) => {
40
+ var _filterFn$resolveFilt;
41
+ const column = table_getColumn(table, columnFilter.id);
42
+ if (!column) return;
43
+ const filterFn = column_getFilterFn(column);
44
+ resolvedColumnFilters.push({
45
+ id: columnFilter.id,
46
+ filterFn,
47
+ resolvedValue: ((_filterFn$resolveFilt = filterFn.resolveFilterValue) === null || _filterFn$resolveFilt === void 0 ? void 0 : _filterFn$resolveFilt.call(filterFn, columnFilter.value)) ?? columnFilter.value
48
+ });
49
+ });
50
+ const filterableIds = (columnFilters === null || columnFilters === void 0 ? void 0 : columnFilters.map((d) => d.id)) ?? [];
51
+ const globalFilterFn = table_getGlobalFilterFn(table);
52
+ const globallyFilterableColumns = table.getAllLeafColumns().filter((column) => column_getCanGlobalFilter(column));
53
+ if (globalFilter && globalFilterFn && globallyFilterableColumns.length) {
54
+ filterableIds.push("__global__");
55
+ globallyFilterableColumns.forEach((column) => {
56
+ var _globalFilterFn$resol;
57
+ resolvedGlobalFilters.push({
58
+ id: column.id,
59
+ filterFn: globalFilterFn,
60
+ resolvedValue: ((_globalFilterFn$resol = globalFilterFn.resolveFilterValue) === null || _globalFilterFn$resol === void 0 ? void 0 : _globalFilterFn$resol.call(globalFilterFn, globalFilter)) ?? globalFilter
61
+ });
62
+ });
63
+ }
64
+ for (const row of rowModel.flatRows) {
65
+ row.columnFilters = {};
66
+ if (resolvedColumnFilters.length) for (const currentColumnFilter of resolvedColumnFilters) {
67
+ const id = currentColumnFilter.id;
68
+ row.columnFilters[id] = currentColumnFilter.filterFn(row, id, currentColumnFilter.resolvedValue, (filterMeta) => {
69
+ !row.columnFiltersMeta ? row.columnFiltersMeta = {} : row.columnFiltersMeta[id] = filterMeta;
70
+ });
71
+ }
72
+ if (resolvedGlobalFilters.length) {
73
+ for (const currentGlobalFilter of resolvedGlobalFilters) {
74
+ const id = currentGlobalFilter.id;
75
+ if (currentGlobalFilter.filterFn(row, id, currentGlobalFilter.resolvedValue, (filterMeta) => {
76
+ !row.columnFiltersMeta ? row.columnFiltersMeta = {} : row.columnFiltersMeta[id] = filterMeta;
77
+ })) {
78
+ row.columnFilters.__global__ = true;
79
+ break;
80
+ }
81
+ }
82
+ if (row.columnFilters.__global__ !== true) row.columnFilters.__global__ = false;
83
+ }
84
+ }
85
+ const filterRowsImpl = (row) => {
86
+ for (const columnId of filterableIds) if (row.columnFilters[columnId] === false) return false;
87
+ return true;
88
+ };
89
+ return filterRows(rowModel.rows, filterRowsImpl, table);
90
+ }
91
+
92
+ //#endregion
93
+ export { createFilteredRowModel };
94
+ //# sourceMappingURL=createFilteredRowModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createFilteredRowModel.js","names":[],"sources":["../../../src/features/column-filtering/createFilteredRowModel.ts"],"sourcesContent":["import { tableMemo } from '../../utils'\nimport { table_getColumn } from '../../core/columns/coreColumnsFeature.utils'\nimport {\n column_getCanGlobalFilter,\n table_getGlobalFilterFn,\n} from '../global-filtering/globalFilteringFeature.utils'\nimport { table_autoResetPageIndex } from '../row-pagination/rowPaginationFeature.utils'\nimport { filterRows } from './filterRowsUtils'\nimport { column_getFilterFn } from './columnFilteringFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { Row } from '../../types/Row'\nimport type {\n FilterFn,\n FilterFns,\n ResolvedColumnFilter,\n Row_ColumnFiltering,\n} from './columnFilteringFeature.types'\n\nexport function createFilteredRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(\n filterFns: Record<keyof FilterFns, FilterFn<TFeatures, TData>>,\n): (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData> {\n return (_table) => {\n const table = _table as Table_Internal<TFeatures, TData>\n if (!table._rowModelFns.filterFns) table._rowModelFns.filterFns = filterFns\n return tableMemo({\n feature: 'columnFilteringFeature',\n table,\n fnName: 'table.getFilteredRowModel',\n memoDeps: () => [\n table.getPreFilteredRowModel(),\n table.store.state.columnFilters,\n table.store.state.globalFilter,\n ],\n fn: () => _createFilteredRowModel(table),\n onAfterUpdate: () => table_autoResetPageIndex(table),\n })\n }\n}\n\nfunction _createFilteredRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(table: Table_Internal<TFeatures, TData>): RowModel<TFeatures, TData> {\n const rowModel = table.getPreFilteredRowModel()\n const { columnFilters, globalFilter } = table.store.state\n\n if (!rowModel.rows.length || (!columnFilters?.length && !globalFilter)) {\n for (const row of rowModel.flatRows as Array<\n Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>\n >) {\n row.columnFilters = {}\n row.columnFiltersMeta = {}\n }\n return rowModel\n }\n\n const resolvedColumnFilters: Array<ResolvedColumnFilter<TFeatures, TData>> =\n []\n const resolvedGlobalFilters: Array<ResolvedColumnFilter<TFeatures, TData>> =\n []\n\n columnFilters?.forEach((columnFilter) => {\n const column = table_getColumn(table, columnFilter.id)\n\n if (!column) {\n return\n }\n\n const filterFn = column_getFilterFn(column)!\n\n resolvedColumnFilters.push({\n id: columnFilter.id,\n filterFn,\n resolvedValue:\n filterFn.resolveFilterValue?.(columnFilter.value) ?? columnFilter.value,\n })\n })\n\n const filterableIds = columnFilters?.map((d) => d.id) ?? []\n\n const globalFilterFn = table_getGlobalFilterFn(table)\n\n const globallyFilterableColumns = table\n .getAllLeafColumns()\n .filter((column) => column_getCanGlobalFilter(column))\n\n if (globalFilter && globalFilterFn && globallyFilterableColumns.length) {\n filterableIds.push('__global__')\n\n globallyFilterableColumns.forEach((column) => {\n resolvedGlobalFilters.push({\n id: column.id,\n filterFn: globalFilterFn,\n resolvedValue:\n globalFilterFn.resolveFilterValue?.(globalFilter) ?? globalFilter,\n })\n })\n }\n\n // Flag the pre-filtered row model with each filter state\n for (const row of rowModel.flatRows as Array<\n Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>\n >) {\n row.columnFilters = {}\n\n if (resolvedColumnFilters.length) {\n for (const currentColumnFilter of resolvedColumnFilters) {\n const id = currentColumnFilter.id\n\n // Tag the row with the column filter state\n row.columnFilters[id] = currentColumnFilter.filterFn(\n row,\n id,\n currentColumnFilter.resolvedValue,\n (filterMeta) => {\n !row.columnFiltersMeta\n ? (row.columnFiltersMeta = {})\n : (row.columnFiltersMeta[id] = filterMeta)\n },\n )\n }\n }\n\n if (resolvedGlobalFilters.length) {\n for (const currentGlobalFilter of resolvedGlobalFilters) {\n const id = currentGlobalFilter.id\n // Tag the row with the first truthy global filter state\n if (\n currentGlobalFilter.filterFn(\n row,\n id,\n currentGlobalFilter.resolvedValue,\n (filterMeta) => {\n !row.columnFiltersMeta\n ? (row.columnFiltersMeta = {})\n : (row.columnFiltersMeta[id] = filterMeta)\n },\n )\n ) {\n row.columnFilters.__global__ = true\n break\n }\n }\n\n if (row.columnFilters.__global__ !== true) {\n row.columnFilters.__global__ = false\n }\n }\n }\n\n const filterRowsImpl = (\n row: Row<TFeatures, TData> & Row_ColumnFiltering<TFeatures, TData>,\n ) => {\n // Horizontally filter rows through each column\n for (const columnId of filterableIds) {\n if (row.columnFilters[columnId] === false) {\n return false\n }\n }\n return true\n }\n\n // Filter final rows using all of the active filters\n return filterRows(rowModel.rows, filterRowsImpl as any, table)\n}\n"],"mappings":";;;;;;;;AAqBA,SAAgB,uBAId,WACsE;AACtE,SAAQ,WAAW;EACjB,MAAM,QAAQ;AACd,MAAI,CAAC,MAAM,aAAa,UAAW,OAAM,aAAa,YAAY;AAClE,SAAO,UAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,wBAAwB;IAC9B,MAAM,MAAM,MAAM;IAClB,MAAM,MAAM,MAAM;IACnB;GACD,UAAU,wBAAwB,MAAM;GACxC,qBAAqB,yBAAyB,MAAM;GACrD,CAAC;;;AAIN,SAAS,wBAGP,OAAqE;CACrE,MAAM,WAAW,MAAM,wBAAwB;CAC/C,MAAM,EAAE,eAAe,iBAAiB,MAAM,MAAM;AAEpD,KAAI,CAAC,SAAS,KAAK,UAAW,gEAAC,cAAe,WAAU,CAAC,cAAe;AACtE,OAAK,MAAM,OAAO,SAAS,UAExB;AACD,OAAI,gBAAgB,EAAE;AACtB,OAAI,oBAAoB,EAAE;;AAE5B,SAAO;;CAGT,MAAM,wBACJ,EAAE;CACJ,MAAM,wBACJ,EAAE;AAEJ,qEAAe,SAAS,iBAAiB;;EACvC,MAAM,SAAS,gBAAgB,OAAO,aAAa,GAAG;AAEtD,MAAI,CAAC,OACH;EAGF,MAAM,WAAW,mBAAmB,OAAO;AAE3C,wBAAsB,KAAK;GACzB,IAAI,aAAa;GACjB;GACA,yCACE,SAAS,iHAAqB,aAAa,MAAM,KAAI,aAAa;GACrE,CAAC;GACF;CAEF,MAAM,+EAAgB,cAAe,KAAK,MAAM,EAAE,GAAG,KAAI,EAAE;CAE3D,MAAM,iBAAiB,wBAAwB,MAAM;CAErD,MAAM,4BAA4B,MAC/B,mBAAmB,CACnB,QAAQ,WAAW,0BAA0B,OAAO,CAAC;AAExD,KAAI,gBAAgB,kBAAkB,0BAA0B,QAAQ;AACtE,gBAAc,KAAK,aAAa;AAEhC,4BAA0B,SAAS,WAAW;;AAC5C,yBAAsB,KAAK;IACzB,IAAI,OAAO;IACX,UAAU;IACV,yCACE,eAAe,uHAAqB,aAAa,KAAI;IACxD,CAAC;IACF;;AAIJ,MAAK,MAAM,OAAO,SAAS,UAExB;AACD,MAAI,gBAAgB,EAAE;AAEtB,MAAI,sBAAsB,OACxB,MAAK,MAAM,uBAAuB,uBAAuB;GACvD,MAAM,KAAK,oBAAoB;AAG/B,OAAI,cAAc,MAAM,oBAAoB,SAC1C,KACA,IACA,oBAAoB,gBACnB,eAAe;AACd,KAAC,IAAI,oBACA,IAAI,oBAAoB,EAAE,GAC1B,IAAI,kBAAkB,MAAM;KAEpC;;AAIL,MAAI,sBAAsB,QAAQ;AAChC,QAAK,MAAM,uBAAuB,uBAAuB;IACvD,MAAM,KAAK,oBAAoB;AAE/B,QACE,oBAAoB,SAClB,KACA,IACA,oBAAoB,gBACnB,eAAe;AACd,MAAC,IAAI,oBACA,IAAI,oBAAoB,EAAE,GAC1B,IAAI,kBAAkB,MAAM;MAEpC,EACD;AACA,SAAI,cAAc,aAAa;AAC/B;;;AAIJ,OAAI,IAAI,cAAc,eAAe,KACnC,KAAI,cAAc,aAAa;;;CAKrC,MAAM,kBACJ,QACG;AAEH,OAAK,MAAM,YAAY,cACrB,KAAI,IAAI,cAAc,cAAc,MAClC,QAAO;AAGX,SAAO;;AAIT,QAAO,WAAW,SAAS,MAAM,gBAAuB,MAAM"}
@@ -0,0 +1,76 @@
1
+ const require_constructRow = require('../../core/rows/constructRow.cjs');
2
+
3
+ //#region src/features/column-filtering/filterRowsUtils.ts
4
+ function filterRows(rows, filterRowImpl, table) {
5
+ if (table.options.filterFromLeafRows) return filterRowModelFromLeafs(rows, filterRowImpl, table);
6
+ return filterRowModelFromRoot(rows, filterRowImpl, table);
7
+ }
8
+ function filterRowModelFromLeafs(rowsToFilter, filterRow, table) {
9
+ const newFilteredFlatRows = [];
10
+ const newFilteredRowsById = {};
11
+ const maxDepth = table.options.maxLeafRowFilterDepth ?? 100;
12
+ const recurseFilterRows = (rowsToFilter, depth = 0) => {
13
+ const filteredRows = [];
14
+ for (let row of rowsToFilter) {
15
+ const newRow = require_constructRow.constructRow(table, row.id, row.original, row.index, row.depth, void 0, row.parentId);
16
+ newRow.columnFilters = row.columnFilters;
17
+ if (row.subRows.length && depth < maxDepth) {
18
+ newRow.subRows = recurseFilterRows(row.subRows, depth + 1);
19
+ row = newRow;
20
+ if (filterRow(row) && !newRow.subRows.length) {
21
+ filteredRows.push(row);
22
+ newFilteredRowsById[row.id] = row;
23
+ newFilteredFlatRows.push(row);
24
+ continue;
25
+ }
26
+ if (filterRow(row) || newRow.subRows.length) {
27
+ filteredRows.push(row);
28
+ newFilteredRowsById[row.id] = row;
29
+ newFilteredFlatRows.push(row);
30
+ continue;
31
+ }
32
+ } else {
33
+ row = newRow;
34
+ if (filterRow(row)) {
35
+ filteredRows.push(row);
36
+ newFilteredRowsById[row.id] = row;
37
+ newFilteredFlatRows.push(row);
38
+ }
39
+ }
40
+ }
41
+ return filteredRows;
42
+ };
43
+ return {
44
+ rows: recurseFilterRows(rowsToFilter),
45
+ flatRows: newFilteredFlatRows,
46
+ rowsById: newFilteredRowsById
47
+ };
48
+ }
49
+ function filterRowModelFromRoot(rowsToFilter, filterRow, table) {
50
+ const newFilteredFlatRows = [];
51
+ const newFilteredRowsById = {};
52
+ const maxDepth = table.options.maxLeafRowFilterDepth ?? 100;
53
+ const recurseFilterRows = (rowsToFilter, depth = 0) => {
54
+ const filteredRows = [];
55
+ for (let row of rowsToFilter) if (filterRow(row)) {
56
+ if (row.subRows.length && depth < maxDepth) {
57
+ const newRow = require_constructRow.constructRow(table, row.id, row.original, row.index, row.depth, void 0, row.parentId);
58
+ newRow.subRows = recurseFilterRows(row.subRows, depth + 1);
59
+ row = newRow;
60
+ }
61
+ filteredRows.push(row);
62
+ newFilteredFlatRows.push(row);
63
+ newFilteredRowsById[row.id] = row;
64
+ }
65
+ return filteredRows;
66
+ };
67
+ return {
68
+ rows: recurseFilterRows(rowsToFilter),
69
+ flatRows: newFilteredFlatRows,
70
+ rowsById: newFilteredRowsById
71
+ };
72
+ }
73
+
74
+ //#endregion
75
+ exports.filterRows = filterRows;
76
+ //# sourceMappingURL=filterRowsUtils.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterRowsUtils.cjs","names":["constructRow"],"sources":["../../../src/features/column-filtering/filterRowsUtils.ts"],"sourcesContent":["import { constructRow } from '../../core/rows/constructRow'\nimport type { Row_ColumnFiltering } from './columnFilteringFeature.types'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Row } from '../../types/Row'\nimport type { Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\nexport function filterRows<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rows: Array<Row<TFeatures, TData>>,\n filterRowImpl: (row: Row<TFeatures, TData>) => any,\n table: Table_Internal<TFeatures, TData>,\n) {\n if (table.options.filterFromLeafRows) {\n return filterRowModelFromLeafs(rows, filterRowImpl, table)\n }\n\n return filterRowModelFromRoot(rows, filterRowImpl, table)\n}\n\nfunction filterRowModelFromLeafs<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowsToFilter: Array<Row<TFeatures, TData>>,\n filterRow: (\n row: Row<TFeatures, TData>,\n ) => Array<Row<TFeatures, TData>> | undefined,\n table: Table_Internal<TFeatures, TData>,\n): RowModel<TFeatures, TData> {\n const newFilteredFlatRows: Array<Row<TFeatures, TData>> = []\n const newFilteredRowsById: Record<string, Row<TFeatures, TData>> = {}\n const maxDepth = table.options.maxLeafRowFilterDepth ?? 100\n\n const recurseFilterRows = (\n rowsToFilter: Array<\n Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>\n >,\n depth = 0,\n ) => {\n const filteredRows: Array<Row<TFeatures, TData>> &\n Partial<Row_ColumnFiltering<TFeatures, TData>> = []\n\n // Filter from children up first\n for (let row of rowsToFilter) {\n const newRow = constructRow(\n table,\n row.id,\n row.original,\n row.index,\n row.depth,\n undefined,\n row.parentId,\n ) as Row<TFeatures, TData> &\n Partial<Row_ColumnFiltering<TFeatures, TData>>\n newRow.columnFilters = row.columnFilters\n\n if (row.subRows.length && depth < maxDepth) {\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n row = newRow\n\n if (filterRow(row) && !newRow.subRows.length) {\n filteredRows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n continue\n }\n\n if (filterRow(row) || newRow.subRows.length) {\n filteredRows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n continue\n }\n } else {\n row = newRow\n if (filterRow(row)) {\n filteredRows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n }\n }\n }\n\n return filteredRows\n }\n\n return {\n rows: recurseFilterRows(rowsToFilter),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n\nfunction filterRowModelFromRoot<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowsToFilter: Array<Row<TFeatures, TData>>,\n filterRow: (row: Row<TFeatures, TData>) => any,\n table: Table_Internal<TFeatures, TData>,\n): RowModel<TFeatures, TData> {\n const newFilteredFlatRows: Array<Row<TFeatures, TData>> = []\n const newFilteredRowsById: Record<string, Row<TFeatures, TData>> = {}\n const maxDepth = table.options.maxLeafRowFilterDepth ?? 100\n\n // Filters top level and nested rows\n const recurseFilterRows = (\n rowsToFilter: Array<Row<TFeatures, TData>>,\n depth = 0,\n ) => {\n // Filter from parents downward first\n\n const filteredRows: Array<Row<TFeatures, TData>> = []\n\n // Apply the filter to any subRows\n for (let row of rowsToFilter) {\n const pass = filterRow(row)\n\n if (pass) {\n if (row.subRows.length && depth < maxDepth) {\n const newRow = constructRow(\n table,\n row.id,\n row.original,\n row.index,\n row.depth,\n undefined,\n row.parentId,\n )\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n row = newRow\n }\n\n filteredRows.push(row)\n newFilteredFlatRows.push(row)\n newFilteredRowsById[row.id] = row\n }\n }\n\n return filteredRows\n }\n\n return {\n rows: recurseFilterRows(rowsToFilter),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n"],"mappings":";;;AAQA,SAAgB,WAId,MACA,eACA,OACA;AACA,KAAI,MAAM,QAAQ,mBAChB,QAAO,wBAAwB,MAAM,eAAe,MAAM;AAG5D,QAAO,uBAAuB,MAAM,eAAe,MAAM;;AAG3D,SAAS,wBAIP,cACA,WAGA,OAC4B;CAC5B,MAAM,sBAAoD,EAAE;CAC5D,MAAM,sBAA6D,EAAE;CACrE,MAAM,WAAW,MAAM,QAAQ,yBAAyB;CAExD,MAAM,qBACJ,cAGA,QAAQ,MACL;EACH,MAAM,eAC6C,EAAE;AAGrD,OAAK,IAAI,OAAO,cAAc;GAC5B,MAAM,SAASA,kCACb,OACA,IAAI,IACJ,IAAI,UACJ,IAAI,OACJ,IAAI,OACJ,QACA,IAAI,SACL;AAED,UAAO,gBAAgB,IAAI;AAE3B,OAAI,IAAI,QAAQ,UAAU,QAAQ,UAAU;AAC1C,WAAO,UAAU,kBAAkB,IAAI,SAAS,QAAQ,EAAE;AAC1D,UAAM;AAEN,QAAI,UAAU,IAAI,IAAI,CAAC,OAAO,QAAQ,QAAQ;AAC5C,kBAAa,KAAK,IAAI;AACtB,yBAAoB,IAAI,MAAM;AAC9B,yBAAoB,KAAK,IAAI;AAC7B;;AAGF,QAAI,UAAU,IAAI,IAAI,OAAO,QAAQ,QAAQ;AAC3C,kBAAa,KAAK,IAAI;AACtB,yBAAoB,IAAI,MAAM;AAC9B,yBAAoB,KAAK,IAAI;AAC7B;;UAEG;AACL,UAAM;AACN,QAAI,UAAU,IAAI,EAAE;AAClB,kBAAa,KAAK,IAAI;AACtB,yBAAoB,IAAI,MAAM;AAC9B,yBAAoB,KAAK,IAAI;;;;AAKnC,SAAO;;AAGT,QAAO;EACL,MAAM,kBAAkB,aAAa;EACrC,UAAU;EACV,UAAU;EACX;;AAGH,SAAS,uBAIP,cACA,WACA,OAC4B;CAC5B,MAAM,sBAAoD,EAAE;CAC5D,MAAM,sBAA6D,EAAE;CACrE,MAAM,WAAW,MAAM,QAAQ,yBAAyB;CAGxD,MAAM,qBACJ,cACA,QAAQ,MACL;EAGH,MAAM,eAA6C,EAAE;AAGrD,OAAK,IAAI,OAAO,aAGd,KAFa,UAAU,IAAI,EAEjB;AACR,OAAI,IAAI,QAAQ,UAAU,QAAQ,UAAU;IAC1C,MAAM,SAASA,kCACb,OACA,IAAI,IACJ,IAAI,UACJ,IAAI,OACJ,IAAI,OACJ,QACA,IAAI,SACL;AACD,WAAO,UAAU,kBAAkB,IAAI,SAAS,QAAQ,EAAE;AAC1D,UAAM;;AAGR,gBAAa,KAAK,IAAI;AACtB,uBAAoB,KAAK,IAAI;AAC7B,uBAAoB,IAAI,MAAM;;AAIlC,SAAO;;AAGT,QAAO;EACL,MAAM,kBAAkB,aAAa;EACrC,UAAU;EACV,UAAU;EACX"}
@@ -0,0 +1,76 @@
1
+ import { constructRow } from "../../core/rows/constructRow.js";
2
+
3
+ //#region src/features/column-filtering/filterRowsUtils.ts
4
+ function filterRows(rows, filterRowImpl, table) {
5
+ if (table.options.filterFromLeafRows) return filterRowModelFromLeafs(rows, filterRowImpl, table);
6
+ return filterRowModelFromRoot(rows, filterRowImpl, table);
7
+ }
8
+ function filterRowModelFromLeafs(rowsToFilter, filterRow, table) {
9
+ const newFilteredFlatRows = [];
10
+ const newFilteredRowsById = {};
11
+ const maxDepth = table.options.maxLeafRowFilterDepth ?? 100;
12
+ const recurseFilterRows = (rowsToFilter, depth = 0) => {
13
+ const filteredRows = [];
14
+ for (let row of rowsToFilter) {
15
+ const newRow = constructRow(table, row.id, row.original, row.index, row.depth, void 0, row.parentId);
16
+ newRow.columnFilters = row.columnFilters;
17
+ if (row.subRows.length && depth < maxDepth) {
18
+ newRow.subRows = recurseFilterRows(row.subRows, depth + 1);
19
+ row = newRow;
20
+ if (filterRow(row) && !newRow.subRows.length) {
21
+ filteredRows.push(row);
22
+ newFilteredRowsById[row.id] = row;
23
+ newFilteredFlatRows.push(row);
24
+ continue;
25
+ }
26
+ if (filterRow(row) || newRow.subRows.length) {
27
+ filteredRows.push(row);
28
+ newFilteredRowsById[row.id] = row;
29
+ newFilteredFlatRows.push(row);
30
+ continue;
31
+ }
32
+ } else {
33
+ row = newRow;
34
+ if (filterRow(row)) {
35
+ filteredRows.push(row);
36
+ newFilteredRowsById[row.id] = row;
37
+ newFilteredFlatRows.push(row);
38
+ }
39
+ }
40
+ }
41
+ return filteredRows;
42
+ };
43
+ return {
44
+ rows: recurseFilterRows(rowsToFilter),
45
+ flatRows: newFilteredFlatRows,
46
+ rowsById: newFilteredRowsById
47
+ };
48
+ }
49
+ function filterRowModelFromRoot(rowsToFilter, filterRow, table) {
50
+ const newFilteredFlatRows = [];
51
+ const newFilteredRowsById = {};
52
+ const maxDepth = table.options.maxLeafRowFilterDepth ?? 100;
53
+ const recurseFilterRows = (rowsToFilter, depth = 0) => {
54
+ const filteredRows = [];
55
+ for (let row of rowsToFilter) if (filterRow(row)) {
56
+ if (row.subRows.length && depth < maxDepth) {
57
+ const newRow = constructRow(table, row.id, row.original, row.index, row.depth, void 0, row.parentId);
58
+ newRow.subRows = recurseFilterRows(row.subRows, depth + 1);
59
+ row = newRow;
60
+ }
61
+ filteredRows.push(row);
62
+ newFilteredFlatRows.push(row);
63
+ newFilteredRowsById[row.id] = row;
64
+ }
65
+ return filteredRows;
66
+ };
67
+ return {
68
+ rows: recurseFilterRows(rowsToFilter),
69
+ flatRows: newFilteredFlatRows,
70
+ rowsById: newFilteredRowsById
71
+ };
72
+ }
73
+
74
+ //#endregion
75
+ export { filterRows };
76
+ //# sourceMappingURL=filterRowsUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterRowsUtils.js","names":[],"sources":["../../../src/features/column-filtering/filterRowsUtils.ts"],"sourcesContent":["import { constructRow } from '../../core/rows/constructRow'\nimport type { Row_ColumnFiltering } from './columnFilteringFeature.types'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Row } from '../../types/Row'\nimport type { Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\nexport function filterRows<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rows: Array<Row<TFeatures, TData>>,\n filterRowImpl: (row: Row<TFeatures, TData>) => any,\n table: Table_Internal<TFeatures, TData>,\n) {\n if (table.options.filterFromLeafRows) {\n return filterRowModelFromLeafs(rows, filterRowImpl, table)\n }\n\n return filterRowModelFromRoot(rows, filterRowImpl, table)\n}\n\nfunction filterRowModelFromLeafs<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowsToFilter: Array<Row<TFeatures, TData>>,\n filterRow: (\n row: Row<TFeatures, TData>,\n ) => Array<Row<TFeatures, TData>> | undefined,\n table: Table_Internal<TFeatures, TData>,\n): RowModel<TFeatures, TData> {\n const newFilteredFlatRows: Array<Row<TFeatures, TData>> = []\n const newFilteredRowsById: Record<string, Row<TFeatures, TData>> = {}\n const maxDepth = table.options.maxLeafRowFilterDepth ?? 100\n\n const recurseFilterRows = (\n rowsToFilter: Array<\n Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>\n >,\n depth = 0,\n ) => {\n const filteredRows: Array<Row<TFeatures, TData>> &\n Partial<Row_ColumnFiltering<TFeatures, TData>> = []\n\n // Filter from children up first\n for (let row of rowsToFilter) {\n const newRow = constructRow(\n table,\n row.id,\n row.original,\n row.index,\n row.depth,\n undefined,\n row.parentId,\n ) as Row<TFeatures, TData> &\n Partial<Row_ColumnFiltering<TFeatures, TData>>\n newRow.columnFilters = row.columnFilters\n\n if (row.subRows.length && depth < maxDepth) {\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n row = newRow\n\n if (filterRow(row) && !newRow.subRows.length) {\n filteredRows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n continue\n }\n\n if (filterRow(row) || newRow.subRows.length) {\n filteredRows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n continue\n }\n } else {\n row = newRow\n if (filterRow(row)) {\n filteredRows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n }\n }\n }\n\n return filteredRows\n }\n\n return {\n rows: recurseFilterRows(rowsToFilter),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n\nfunction filterRowModelFromRoot<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowsToFilter: Array<Row<TFeatures, TData>>,\n filterRow: (row: Row<TFeatures, TData>) => any,\n table: Table_Internal<TFeatures, TData>,\n): RowModel<TFeatures, TData> {\n const newFilteredFlatRows: Array<Row<TFeatures, TData>> = []\n const newFilteredRowsById: Record<string, Row<TFeatures, TData>> = {}\n const maxDepth = table.options.maxLeafRowFilterDepth ?? 100\n\n // Filters top level and nested rows\n const recurseFilterRows = (\n rowsToFilter: Array<Row<TFeatures, TData>>,\n depth = 0,\n ) => {\n // Filter from parents downward first\n\n const filteredRows: Array<Row<TFeatures, TData>> = []\n\n // Apply the filter to any subRows\n for (let row of rowsToFilter) {\n const pass = filterRow(row)\n\n if (pass) {\n if (row.subRows.length && depth < maxDepth) {\n const newRow = constructRow(\n table,\n row.id,\n row.original,\n row.index,\n row.depth,\n undefined,\n row.parentId,\n )\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n row = newRow\n }\n\n filteredRows.push(row)\n newFilteredFlatRows.push(row)\n newFilteredRowsById[row.id] = row\n }\n }\n\n return filteredRows\n }\n\n return {\n rows: recurseFilterRows(rowsToFilter),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n"],"mappings":";;;AAQA,SAAgB,WAId,MACA,eACA,OACA;AACA,KAAI,MAAM,QAAQ,mBAChB,QAAO,wBAAwB,MAAM,eAAe,MAAM;AAG5D,QAAO,uBAAuB,MAAM,eAAe,MAAM;;AAG3D,SAAS,wBAIP,cACA,WAGA,OAC4B;CAC5B,MAAM,sBAAoD,EAAE;CAC5D,MAAM,sBAA6D,EAAE;CACrE,MAAM,WAAW,MAAM,QAAQ,yBAAyB;CAExD,MAAM,qBACJ,cAGA,QAAQ,MACL;EACH,MAAM,eAC6C,EAAE;AAGrD,OAAK,IAAI,OAAO,cAAc;GAC5B,MAAM,SAAS,aACb,OACA,IAAI,IACJ,IAAI,UACJ,IAAI,OACJ,IAAI,OACJ,QACA,IAAI,SACL;AAED,UAAO,gBAAgB,IAAI;AAE3B,OAAI,IAAI,QAAQ,UAAU,QAAQ,UAAU;AAC1C,WAAO,UAAU,kBAAkB,IAAI,SAAS,QAAQ,EAAE;AAC1D,UAAM;AAEN,QAAI,UAAU,IAAI,IAAI,CAAC,OAAO,QAAQ,QAAQ;AAC5C,kBAAa,KAAK,IAAI;AACtB,yBAAoB,IAAI,MAAM;AAC9B,yBAAoB,KAAK,IAAI;AAC7B;;AAGF,QAAI,UAAU,IAAI,IAAI,OAAO,QAAQ,QAAQ;AAC3C,kBAAa,KAAK,IAAI;AACtB,yBAAoB,IAAI,MAAM;AAC9B,yBAAoB,KAAK,IAAI;AAC7B;;UAEG;AACL,UAAM;AACN,QAAI,UAAU,IAAI,EAAE;AAClB,kBAAa,KAAK,IAAI;AACtB,yBAAoB,IAAI,MAAM;AAC9B,yBAAoB,KAAK,IAAI;;;;AAKnC,SAAO;;AAGT,QAAO;EACL,MAAM,kBAAkB,aAAa;EACrC,UAAU;EACV,UAAU;EACX;;AAGH,SAAS,uBAIP,cACA,WACA,OAC4B;CAC5B,MAAM,sBAAoD,EAAE;CAC5D,MAAM,sBAA6D,EAAE;CACrE,MAAM,WAAW,MAAM,QAAQ,yBAAyB;CAGxD,MAAM,qBACJ,cACA,QAAQ,MACL;EAGH,MAAM,eAA6C,EAAE;AAGrD,OAAK,IAAI,OAAO,aAGd,KAFa,UAAU,IAAI,EAEjB;AACR,OAAI,IAAI,QAAQ,UAAU,QAAQ,UAAU;IAC1C,MAAM,SAAS,aACb,OACA,IAAI,IACJ,IAAI,UACJ,IAAI,OACJ,IAAI,OACJ,QACA,IAAI,SACL;AACD,WAAO,UAAU,kBAAkB,IAAI,SAAS,QAAQ,EAAE;AAC1D,UAAM;;AAGR,gBAAa,KAAK,IAAI;AACtB,uBAAoB,KAAK,IAAI;AAC7B,uBAAoB,IAAI,MAAM;;AAIlC,SAAO;;AAGT,QAAO;EACL,MAAM,kBAAkB,aAAa;EACrC,UAAU;EACV,UAAU;EACX"}
@@ -0,0 +1,71 @@
1
+ const require_utils = require('../../utils.cjs');
2
+ const require_columnGroupingFeature_utils = require('./columnGroupingFeature.utils.cjs');
3
+
4
+ //#region src/features/column-grouping/columnGroupingFeature.ts
5
+ function constructColumnGroupingFeature() {
6
+ return {
7
+ getInitialState: (initialState) => {
8
+ return {
9
+ grouping: require_columnGroupingFeature_utils.getDefaultGroupingState(),
10
+ ...initialState
11
+ };
12
+ },
13
+ getDefaultColumnDef: () => {
14
+ return {
15
+ aggregatedCell: ({ getValue }) => {
16
+ var _getValue, _getValue$toString;
17
+ return ((_getValue = getValue()) === null || _getValue === void 0 || (_getValue$toString = _getValue.toString) === null || _getValue$toString === void 0 ? void 0 : _getValue$toString.call(_getValue)) ?? null;
18
+ },
19
+ aggregationFn: "auto"
20
+ };
21
+ },
22
+ getDefaultTableOptions: (table) => {
23
+ return {
24
+ onGroupingChange: require_utils.makeStateUpdater("grouping", table),
25
+ groupedColumnMode: "reorder"
26
+ };
27
+ },
28
+ assignCellPrototype: (prototype, table) => {
29
+ require_utils.assignPrototypeAPIs("columnGroupingFeature", prototype, table, {
30
+ cell_getIsGrouped: { fn: (cell) => require_columnGroupingFeature_utils.cell_getIsGrouped(cell) },
31
+ cell_getIsPlaceholder: { fn: (cell) => require_columnGroupingFeature_utils.cell_getIsPlaceholder(cell) },
32
+ cell_getIsAggregated: { fn: (cell) => require_columnGroupingFeature_utils.cell_getIsAggregated(cell) }
33
+ });
34
+ },
35
+ assignColumnPrototype: (prototype, table) => {
36
+ require_utils.assignPrototypeAPIs("columnGroupingFeature", prototype, table, {
37
+ column_toggleGrouping: { fn: (column) => require_columnGroupingFeature_utils.column_toggleGrouping(column) },
38
+ column_getCanGroup: { fn: (column) => require_columnGroupingFeature_utils.column_getCanGroup(column) },
39
+ column_getIsGrouped: { fn: (column) => require_columnGroupingFeature_utils.column_getIsGrouped(column) },
40
+ column_getGroupedIndex: { fn: (column) => require_columnGroupingFeature_utils.column_getGroupedIndex(column) },
41
+ column_getToggleGroupingHandler: { fn: (column) => require_columnGroupingFeature_utils.column_getToggleGroupingHandler(column) },
42
+ column_getAutoAggregationFn: { fn: (column) => require_columnGroupingFeature_utils.column_getAutoAggregationFn(column) },
43
+ column_getAggregationFn: { fn: (column) => require_columnGroupingFeature_utils.column_getAggregationFn(column) }
44
+ });
45
+ },
46
+ assignRowPrototype: (prototype, table) => {
47
+ require_utils.assignPrototypeAPIs("columnGroupingFeature", prototype, table, {
48
+ row_getIsGrouped: { fn: (row) => require_columnGroupingFeature_utils.row_getIsGrouped(row) },
49
+ row_getGroupingValue: { fn: (row, columnId) => require_columnGroupingFeature_utils.row_getGroupingValue(row, columnId) }
50
+ });
51
+ },
52
+ initRowInstanceData: (row) => {
53
+ row._groupingValuesCache = {};
54
+ },
55
+ constructTableAPIs: (table) => {
56
+ require_utils.assignTableAPIs("columnGroupingFeature", table, {
57
+ table_setGrouping: { fn: (updater) => require_columnGroupingFeature_utils.table_setGrouping(table, updater) },
58
+ table_resetGrouping: { fn: (defaultState) => require_columnGroupingFeature_utils.table_resetGrouping(table, defaultState) }
59
+ });
60
+ }
61
+ };
62
+ }
63
+ /**
64
+ * The (Column) Grouping feature adds column grouping state and APIs to the table, row, column, and cell objects.
65
+ */
66
+ const columnGroupingFeature = constructColumnGroupingFeature();
67
+
68
+ //#endregion
69
+ exports.columnGroupingFeature = columnGroupingFeature;
70
+ exports.constructColumnGroupingFeature = constructColumnGroupingFeature;
71
+ //# sourceMappingURL=columnGroupingFeature.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"columnGroupingFeature.cjs","names":["getDefaultGroupingState","makeStateUpdater","cell_getIsGrouped","cell_getIsPlaceholder","cell_getIsAggregated","column_toggleGrouping","column_getCanGroup","column_getIsGrouped","column_getGroupedIndex","column_getToggleGroupingHandler","column_getAutoAggregationFn","column_getAggregationFn","row_getIsGrouped","row_getGroupingValue","table_setGrouping","table_resetGrouping"],"sources":["../../../src/features/column-grouping/columnGroupingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n cell_getIsAggregated,\n cell_getIsGrouped,\n cell_getIsPlaceholder,\n column_getAggregationFn,\n column_getAutoAggregationFn,\n column_getCanGroup,\n column_getGroupedIndex,\n column_getIsGrouped,\n column_getToggleGroupingHandler,\n column_toggleGrouping,\n getDefaultGroupingState,\n row_getGroupingValue,\n row_getIsGrouped,\n table_resetGrouping,\n table_setGrouping,\n} from './columnGroupingFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// CachedRowModel_Grouped,\n// Cell_ColumnGrouping,\n// ColumnDef_ColumnGrouping,\n// Column_ColumnGrouping,\n// CreateRowModel_Grouped,\n// RowModelFns_ColumnGrouping,\n// Row_ColumnGrouping,\n// TableOptions_ColumnGrouping,\n// TableState_ColumnGrouping,\n// Table_ColumnGrouping,\n// } from './columnGroupingFeature.types'\n\ninterface ColumnGroupingFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // CachedRowModel: CachedRowModel_Grouped<TFeatures, TData>\n // Cell: Cell_ColumnGrouping\n // Column: Column_ColumnGrouping<TFeatures, TData>\n // ColumnDef: ColumnDef_ColumnGrouping<TFeatures, TData>\n // CreateRowModels: CreateRowModel_Grouped<TFeatures, TData>\n // Row: Row_ColumnGrouping\n // RowModelFns: RowModelFns_ColumnGrouping<TFeatures, TData>\n // Table: Table_ColumnGrouping<TFeatures, TData>\n // TableOptions: TableOptions_ColumnGrouping\n // TableState: TableState_ColumnGrouping\n}\n\nexport function constructColumnGroupingFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnGroupingFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n grouping: getDefaultGroupingState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef: () => {\n return {\n aggregatedCell: ({ getValue }: any) => getValue()?.toString?.() ?? null,\n aggregationFn: 'auto',\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onGroupingChange: makeStateUpdater('grouping', table),\n groupedColumnMode: 'reorder',\n }\n },\n\n assignCellPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnGroupingFeature', prototype, table, {\n cell_getIsGrouped: {\n fn: (cell) => cell_getIsGrouped(cell),\n },\n cell_getIsPlaceholder: {\n fn: (cell) => cell_getIsPlaceholder(cell),\n },\n cell_getIsAggregated: {\n fn: (cell) => cell_getIsAggregated(cell),\n },\n })\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnGroupingFeature', prototype, table, {\n column_toggleGrouping: {\n fn: (column) => column_toggleGrouping(column),\n },\n column_getCanGroup: {\n fn: (column) => column_getCanGroup(column),\n },\n column_getIsGrouped: {\n fn: (column) => column_getIsGrouped(column),\n },\n column_getGroupedIndex: {\n fn: (column) => column_getGroupedIndex(column),\n },\n column_getToggleGroupingHandler: {\n fn: (column) => column_getToggleGroupingHandler(column),\n },\n column_getAutoAggregationFn: {\n fn: (column) => column_getAutoAggregationFn(column),\n },\n column_getAggregationFn: {\n fn: (column) => column_getAggregationFn(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnGroupingFeature', prototype, table, {\n row_getIsGrouped: {\n fn: (row) => row_getIsGrouped(row),\n },\n row_getGroupingValue: {\n fn: (row, columnId) => row_getGroupingValue(row, columnId),\n },\n })\n },\n\n initRowInstanceData: (row) => {\n ;(row as any)._groupingValuesCache = {}\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnGroupingFeature', table, {\n table_setGrouping: {\n fn: (updater) => table_setGrouping(table, updater),\n },\n table_resetGrouping: {\n fn: (defaultState) => table_resetGrouping(table, defaultState),\n },\n })\n },\n }\n}\n\n/**\n * The (Column) Grouping feature adds column grouping state and APIs to the table, row, column, and cell objects.\n */\nexport const columnGroupingFeature = constructColumnGroupingFeature()\n"],"mappings":";;;;AAqDA,SAAgB,iCAGuD;AACrE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO;IACL,UAAUA,6DAAyB;IACnC,GAAG;IACJ;;EAGH,2BAA2B;AACzB,UAAO;IACL,iBAAiB,EAAE,eAAoB;;oCAAU,sEAAE,iGAAY,KAAI;;IACnE,eAAe;IAChB;;EAGH,yBAAyB,UAAU;AACjC,UAAO;IACL,kBAAkBC,+BAAiB,YAAY,MAAM;IACrD,mBAAmB;IACpB;;EAGH,sBAAsB,WAAW,UAAU;AACzC,qCAAoB,yBAAyB,WAAW,OAAO;IAC7D,mBAAmB,EACjB,KAAK,SAASC,sDAAkB,KAAK,EACtC;IACD,uBAAuB,EACrB,KAAK,SAASC,0DAAsB,KAAK,EAC1C;IACD,sBAAsB,EACpB,KAAK,SAASC,yDAAqB,KAAK,EACzC;IACF,CAAC;;EAGJ,wBAAwB,WAAW,UAAU;AAC3C,qCAAoB,yBAAyB,WAAW,OAAO;IAC7D,uBAAuB,EACrB,KAAK,WAAWC,0DAAsB,OAAO,EAC9C;IACD,oBAAoB,EAClB,KAAK,WAAWC,uDAAmB,OAAO,EAC3C;IACD,qBAAqB,EACnB,KAAK,WAAWC,wDAAoB,OAAO,EAC5C;IACD,wBAAwB,EACtB,KAAK,WAAWC,2DAAuB,OAAO,EAC/C;IACD,iCAAiC,EAC/B,KAAK,WAAWC,oEAAgC,OAAO,EACxD;IACD,6BAA6B,EAC3B,KAAK,WAAWC,gEAA4B,OAAO,EACpD;IACD,yBAAyB,EACvB,KAAK,WAAWC,4DAAwB,OAAO,EAChD;IACF,CAAC;;EAGJ,qBAAqB,WAAW,UAAU;AACxC,qCAAoB,yBAAyB,WAAW,OAAO;IAC7D,kBAAkB,EAChB,KAAK,QAAQC,qDAAiB,IAAI,EACnC;IACD,sBAAsB,EACpB,KAAK,KAAK,aAAaC,yDAAqB,KAAK,SAAS,EAC3D;IACF,CAAC;;EAGJ,sBAAsB,QAAQ;AAC3B,GAAC,IAAY,uBAAuB,EAAE;;EAGzC,qBAAqB,UAAU;AAC7B,iCAAgB,yBAAyB,OAAO;IAC9C,mBAAmB,EACjB,KAAK,YAAYC,sDAAkB,OAAO,QAAQ,EACnD;IACD,qBAAqB,EACnB,KAAK,iBAAiBC,wDAAoB,OAAO,aAAa,EAC/D;IACF,CAAC;;EAEL;;;;;AAMH,MAAa,wBAAwB,gCAAgC"}