@tanstack/table-core 9.0.0-alpha.43 → 9.0.0-alpha.46

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 (518) hide show
  1. package/dist/core/cells/constructCell.cjs +5 -0
  2. package/dist/core/cells/constructCell.cjs.map +1 -1
  3. package/dist/core/cells/constructCell.d.cts +5 -0
  4. package/dist/core/cells/constructCell.d.ts +5 -0
  5. package/dist/core/cells/constructCell.js +5 -0
  6. package/dist/core/cells/constructCell.js.map +1 -1
  7. package/dist/core/cells/coreCellsFeature.cjs +5 -0
  8. package/dist/core/cells/coreCellsFeature.cjs.map +1 -1
  9. package/dist/core/cells/coreCellsFeature.d.cts +5 -0
  10. package/dist/core/cells/coreCellsFeature.d.ts +5 -0
  11. package/dist/core/cells/coreCellsFeature.js +5 -0
  12. package/dist/core/cells/coreCellsFeature.js.map +1 -1
  13. package/dist/core/cells/coreCellsFeature.utils.cjs +30 -0
  14. package/dist/core/cells/coreCellsFeature.utils.cjs.map +1 -1
  15. package/dist/core/cells/coreCellsFeature.utils.d.cts +30 -0
  16. package/dist/core/cells/coreCellsFeature.utils.d.ts +30 -0
  17. package/dist/core/cells/coreCellsFeature.utils.js +30 -0
  18. package/dist/core/cells/coreCellsFeature.utils.js.map +1 -1
  19. package/dist/core/columns/constructColumn.cjs +16 -9
  20. package/dist/core/columns/constructColumn.cjs.map +1 -1
  21. package/dist/core/columns/constructColumn.d.cts +5 -0
  22. package/dist/core/columns/constructColumn.d.ts +5 -0
  23. package/dist/core/columns/constructColumn.js +16 -9
  24. package/dist/core/columns/constructColumn.js.map +1 -1
  25. package/dist/core/columns/coreColumnsFeature.cjs +9 -0
  26. package/dist/core/columns/coreColumnsFeature.cjs.map +1 -1
  27. package/dist/core/columns/coreColumnsFeature.d.cts +5 -0
  28. package/dist/core/columns/coreColumnsFeature.d.ts +5 -0
  29. package/dist/core/columns/coreColumnsFeature.js +10 -1
  30. package/dist/core/columns/coreColumnsFeature.js.map +1 -1
  31. package/dist/core/columns/coreColumnsFeature.types.d.cts +4 -0
  32. package/dist/core/columns/coreColumnsFeature.types.d.ts +4 -0
  33. package/dist/core/columns/coreColumnsFeature.utils.cjs +99 -4
  34. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -1
  35. package/dist/core/columns/coreColumnsFeature.utils.d.cts +92 -1
  36. package/dist/core/columns/coreColumnsFeature.utils.d.ts +92 -1
  37. package/dist/core/columns/coreColumnsFeature.utils.js +99 -5
  38. package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -1
  39. package/dist/core/coreFeatures.cjs +5 -0
  40. package/dist/core/coreFeatures.cjs.map +1 -1
  41. package/dist/core/coreFeatures.d.cts +5 -0
  42. package/dist/core/coreFeatures.d.ts +5 -0
  43. package/dist/core/coreFeatures.js +5 -0
  44. package/dist/core/coreFeatures.js.map +1 -1
  45. package/dist/core/headers/buildHeaderGroups.cjs +6 -1
  46. package/dist/core/headers/buildHeaderGroups.cjs.map +1 -1
  47. package/dist/core/headers/buildHeaderGroups.d.cts +5 -0
  48. package/dist/core/headers/buildHeaderGroups.d.ts +5 -0
  49. package/dist/core/headers/buildHeaderGroups.js +6 -1
  50. package/dist/core/headers/buildHeaderGroups.js.map +1 -1
  51. package/dist/core/headers/constructHeader.cjs +5 -0
  52. package/dist/core/headers/constructHeader.cjs.map +1 -1
  53. package/dist/core/headers/constructHeader.d.cts +5 -0
  54. package/dist/core/headers/constructHeader.d.ts +5 -0
  55. package/dist/core/headers/constructHeader.js +5 -0
  56. package/dist/core/headers/constructHeader.js.map +1 -1
  57. package/dist/core/headers/coreHeadersFeature.cjs +5 -0
  58. package/dist/core/headers/coreHeadersFeature.cjs.map +1 -1
  59. package/dist/core/headers/coreHeadersFeature.d.cts +5 -0
  60. package/dist/core/headers/coreHeadersFeature.d.ts +5 -0
  61. package/dist/core/headers/coreHeadersFeature.js +5 -0
  62. package/dist/core/headers/coreHeadersFeature.js.map +1 -1
  63. package/dist/core/headers/coreHeadersFeature.utils.cjs +71 -2
  64. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
  65. package/dist/core/headers/coreHeadersFeature.utils.d.cts +60 -0
  66. package/dist/core/headers/coreHeadersFeature.utils.d.ts +60 -0
  67. package/dist/core/headers/coreHeadersFeature.utils.js +72 -3
  68. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
  69. package/dist/core/reactivity/coreReactivityFeature.utils.cjs +5 -0
  70. package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +1 -1
  71. package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +10 -0
  72. package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +10 -0
  73. package/dist/core/reactivity/coreReactivityFeature.utils.js +5 -0
  74. package/dist/core/reactivity/coreReactivityFeature.utils.js.map +1 -1
  75. package/dist/core/row-models/coreRowModelsFeature.cjs +5 -0
  76. package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -1
  77. package/dist/core/row-models/coreRowModelsFeature.d.cts +5 -0
  78. package/dist/core/row-models/coreRowModelsFeature.d.ts +5 -0
  79. package/dist/core/row-models/coreRowModelsFeature.js +5 -0
  80. package/dist/core/row-models/coreRowModelsFeature.js.map +1 -1
  81. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +2 -1
  82. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +2 -1
  83. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +120 -0
  84. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -1
  85. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +120 -0
  86. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +120 -0
  87. package/dist/core/row-models/coreRowModelsFeature.utils.js +120 -0
  88. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -1
  89. package/dist/core/row-models/createCoreRowModel.cjs +5 -0
  90. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -1
  91. package/dist/core/row-models/createCoreRowModel.d.cts +5 -0
  92. package/dist/core/row-models/createCoreRowModel.d.ts +5 -0
  93. package/dist/core/row-models/createCoreRowModel.js +5 -0
  94. package/dist/core/row-models/createCoreRowModel.js.map +1 -1
  95. package/dist/core/rows/constructRow.cjs +5 -0
  96. package/dist/core/rows/constructRow.cjs.map +1 -1
  97. package/dist/core/rows/constructRow.d.cts +5 -0
  98. package/dist/core/rows/constructRow.d.ts +5 -0
  99. package/dist/core/rows/constructRow.js +5 -0
  100. package/dist/core/rows/constructRow.js.map +1 -1
  101. package/dist/core/rows/coreRowsFeature.cjs +5 -0
  102. package/dist/core/rows/coreRowsFeature.cjs.map +1 -1
  103. package/dist/core/rows/coreRowsFeature.d.cts +5 -0
  104. package/dist/core/rows/coreRowsFeature.d.ts +5 -0
  105. package/dist/core/rows/coreRowsFeature.js +5 -0
  106. package/dist/core/rows/coreRowsFeature.js.map +1 -1
  107. package/dist/core/rows/coreRowsFeature.types.d.cts +3 -0
  108. package/dist/core/rows/coreRowsFeature.types.d.ts +3 -0
  109. package/dist/core/rows/coreRowsFeature.utils.cjs +104 -4
  110. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -1
  111. package/dist/core/rows/coreRowsFeature.utils.d.cts +101 -0
  112. package/dist/core/rows/coreRowsFeature.utils.d.ts +101 -0
  113. package/dist/core/rows/coreRowsFeature.utils.js +104 -4
  114. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -1
  115. package/dist/core/table/constructTable.cjs +10 -0
  116. package/dist/core/table/constructTable.cjs.map +1 -1
  117. package/dist/core/table/constructTable.d.cts +10 -0
  118. package/dist/core/table/constructTable.d.ts +10 -0
  119. package/dist/core/table/constructTable.js +10 -0
  120. package/dist/core/table/constructTable.js.map +1 -1
  121. package/dist/core/table/coreTablesFeature.cjs +5 -0
  122. package/dist/core/table/coreTablesFeature.cjs.map +1 -1
  123. package/dist/core/table/coreTablesFeature.d.cts +5 -0
  124. package/dist/core/table/coreTablesFeature.d.ts +5 -0
  125. package/dist/core/table/coreTablesFeature.js +5 -0
  126. package/dist/core/table/coreTablesFeature.js.map +1 -1
  127. package/dist/core/table/coreTablesFeature.types.d.cts +22 -12
  128. package/dist/core/table/coreTablesFeature.types.d.ts +22 -12
  129. package/dist/core/table/coreTablesFeature.utils.cjs +44 -0
  130. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
  131. package/dist/core/table/coreTablesFeature.utils.d.cts +44 -0
  132. package/dist/core/table/coreTablesFeature.utils.d.ts +44 -0
  133. package/dist/core/table/coreTablesFeature.utils.js +44 -0
  134. package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
  135. package/dist/features/column-faceting/columnFacetingFeature.cjs +9 -1
  136. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -1
  137. package/dist/features/column-faceting/columnFacetingFeature.d.cts +9 -1
  138. package/dist/features/column-faceting/columnFacetingFeature.d.ts +9 -1
  139. package/dist/features/column-faceting/columnFacetingFeature.js +9 -1
  140. package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -1
  141. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +12 -6
  142. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +12 -6
  143. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +60 -0
  144. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
  145. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +60 -0
  146. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +60 -0
  147. package/dist/features/column-faceting/columnFacetingFeature.utils.js +60 -0
  148. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
  149. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +5 -0
  150. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -1
  151. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +5 -0
  152. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +5 -0
  153. package/dist/features/column-faceting/createFacetedMinMaxValues.js +5 -0
  154. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -1
  155. package/dist/features/column-faceting/createFacetedRowModel.cjs +5 -0
  156. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -1
  157. package/dist/features/column-faceting/createFacetedRowModel.d.cts +5 -0
  158. package/dist/features/column-faceting/createFacetedRowModel.d.ts +5 -0
  159. package/dist/features/column-faceting/createFacetedRowModel.js +5 -0
  160. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -1
  161. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +5 -0
  162. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -1
  163. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +5 -0
  164. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +5 -0
  165. package/dist/features/column-faceting/createFacetedUniqueValues.js +5 -0
  166. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -1
  167. package/dist/features/column-filtering/columnFilteringFeature.cjs +10 -2
  168. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -1
  169. package/dist/features/column-filtering/columnFilteringFeature.d.cts +10 -2
  170. package/dist/features/column-filtering/columnFilteringFeature.d.ts +10 -2
  171. package/dist/features/column-filtering/columnFilteringFeature.js +10 -2
  172. package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -1
  173. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +7 -4
  174. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +7 -4
  175. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +113 -2
  176. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
  177. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +111 -0
  178. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +111 -0
  179. package/dist/features/column-filtering/columnFilteringFeature.utils.js +113 -2
  180. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
  181. package/dist/features/column-filtering/createFilteredRowModel.cjs +5 -0
  182. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -1
  183. package/dist/features/column-filtering/createFilteredRowModel.d.cts +5 -0
  184. package/dist/features/column-filtering/createFilteredRowModel.d.ts +5 -0
  185. package/dist/features/column-filtering/createFilteredRowModel.js +5 -0
  186. package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -1
  187. package/dist/features/column-filtering/filterRowsUtils.cjs +5 -0
  188. package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -1
  189. package/dist/features/column-filtering/filterRowsUtils.js +5 -0
  190. package/dist/features/column-filtering/filterRowsUtils.js.map +1 -1
  191. package/dist/features/column-grouping/columnGroupingFeature.cjs +9 -1
  192. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -1
  193. package/dist/features/column-grouping/columnGroupingFeature.d.cts +9 -1
  194. package/dist/features/column-grouping/columnGroupingFeature.d.ts +9 -1
  195. package/dist/features/column-grouping/columnGroupingFeature.js +9 -1
  196. package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -1
  197. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +7 -3
  198. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +7 -3
  199. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +151 -0
  200. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -1
  201. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +151 -0
  202. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +151 -0
  203. package/dist/features/column-grouping/columnGroupingFeature.utils.js +151 -0
  204. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -1
  205. package/dist/features/column-grouping/createGroupedRowModel.cjs +5 -0
  206. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -1
  207. package/dist/features/column-grouping/createGroupedRowModel.d.cts +5 -0
  208. package/dist/features/column-grouping/createGroupedRowModel.d.ts +5 -0
  209. package/dist/features/column-grouping/createGroupedRowModel.js +5 -0
  210. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -1
  211. package/dist/features/column-ordering/columnOrderingFeature.cjs +12 -3
  212. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
  213. package/dist/features/column-ordering/columnOrderingFeature.d.cts +9 -1
  214. package/dist/features/column-ordering/columnOrderingFeature.d.ts +9 -1
  215. package/dist/features/column-ordering/columnOrderingFeature.js +12 -3
  216. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
  217. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +4 -2
  218. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +4 -2
  219. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +98 -8
  220. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -1
  221. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +81 -0
  222. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +81 -0
  223. package/dist/features/column-ordering/columnOrderingFeature.utils.js +98 -8
  224. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -1
  225. package/dist/features/column-pinning/columnPinningFeature.cjs +17 -30
  226. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
  227. package/dist/features/column-pinning/columnPinningFeature.d.cts +9 -1
  228. package/dist/features/column-pinning/columnPinningFeature.d.ts +9 -1
  229. package/dist/features/column-pinning/columnPinningFeature.js +17 -30
  230. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
  231. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +6 -2
  232. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +6 -2
  233. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +360 -17
  234. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
  235. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +314 -3
  236. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +314 -3
  237. package/dist/features/column-pinning/columnPinningFeature.utils.js +361 -18
  238. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
  239. package/dist/features/column-resizing/columnResizingFeature.cjs +9 -2
  240. package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -1
  241. package/dist/features/column-resizing/columnResizingFeature.d.cts +9 -2
  242. package/dist/features/column-resizing/columnResizingFeature.d.ts +9 -2
  243. package/dist/features/column-resizing/columnResizingFeature.js +9 -2
  244. package/dist/features/column-resizing/columnResizingFeature.js.map +1 -1
  245. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +14 -6
  246. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +14 -6
  247. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +81 -0
  248. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
  249. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +81 -0
  250. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +81 -0
  251. package/dist/features/column-resizing/columnResizingFeature.utils.js +81 -0
  252. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
  253. package/dist/features/column-sizing/columnSizingFeature.cjs +50 -12
  254. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
  255. package/dist/features/column-sizing/columnSizingFeature.d.cts +10 -2
  256. package/dist/features/column-sizing/columnSizingFeature.d.ts +10 -2
  257. package/dist/features/column-sizing/columnSizingFeature.js +51 -13
  258. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
  259. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +6 -3
  260. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +6 -3
  261. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +151 -3
  262. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
  263. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +141 -0
  264. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +141 -0
  265. package/dist/features/column-sizing/columnSizingFeature.utils.js +151 -3
  266. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
  267. package/dist/features/column-visibility/columnVisibilityFeature.cjs +26 -25
  268. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
  269. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +9 -1
  270. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +9 -1
  271. package/dist/features/column-visibility/columnVisibilityFeature.js +27 -26
  272. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
  273. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +4 -3
  274. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +4 -3
  275. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +172 -12
  276. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
  277. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +143 -3
  278. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +143 -3
  279. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +173 -12
  280. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
  281. package/dist/features/global-filtering/globalFilteringFeature.cjs +9 -2
  282. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -1
  283. package/dist/features/global-filtering/globalFilteringFeature.d.cts +9 -2
  284. package/dist/features/global-filtering/globalFilteringFeature.d.ts +9 -2
  285. package/dist/features/global-filtering/globalFilteringFeature.js +9 -2
  286. package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -1
  287. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +4 -2
  288. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -2
  289. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +51 -0
  290. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
  291. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +51 -0
  292. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +51 -0
  293. package/dist/features/global-filtering/globalFilteringFeature.utils.js +51 -0
  294. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
  295. package/dist/features/row-expanding/createExpandedRowModel.cjs +10 -0
  296. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -1
  297. package/dist/features/row-expanding/createExpandedRowModel.d.cts +10 -0
  298. package/dist/features/row-expanding/createExpandedRowModel.d.ts +10 -0
  299. package/dist/features/row-expanding/createExpandedRowModel.js +10 -0
  300. package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -1
  301. package/dist/features/row-expanding/rowExpandingFeature.cjs +9 -1
  302. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -1
  303. package/dist/features/row-expanding/rowExpandingFeature.d.cts +9 -1
  304. package/dist/features/row-expanding/rowExpandingFeature.d.ts +9 -1
  305. package/dist/features/row-expanding/rowExpandingFeature.js +9 -1
  306. package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -1
  307. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +10 -5
  308. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +10 -5
  309. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +151 -0
  310. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -1
  311. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +151 -0
  312. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +151 -0
  313. package/dist/features/row-expanding/rowExpandingFeature.utils.js +151 -0
  314. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -1
  315. package/dist/features/row-pagination/createPaginatedRowModel.cjs +5 -0
  316. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -1
  317. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +5 -0
  318. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +5 -0
  319. package/dist/features/row-pagination/createPaginatedRowModel.js +5 -0
  320. package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -1
  321. package/dist/features/row-pagination/rowPaginationFeature.cjs +9 -1
  322. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -1
  323. package/dist/features/row-pagination/rowPaginationFeature.d.cts +9 -1
  324. package/dist/features/row-pagination/rowPaginationFeature.d.ts +9 -1
  325. package/dist/features/row-pagination/rowPaginationFeature.js +9 -1
  326. package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -1
  327. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +11 -7
  328. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +11 -7
  329. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +175 -0
  330. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -1
  331. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +175 -0
  332. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +175 -0
  333. package/dist/features/row-pagination/rowPaginationFeature.utils.js +175 -0
  334. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -1
  335. package/dist/features/row-pinning/rowPinningFeature.cjs +9 -1
  336. package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -1
  337. package/dist/features/row-pinning/rowPinningFeature.d.cts +9 -1
  338. package/dist/features/row-pinning/rowPinningFeature.d.ts +9 -1
  339. package/dist/features/row-pinning/rowPinningFeature.js +9 -1
  340. package/dist/features/row-pinning/rowPinningFeature.js.map +1 -1
  341. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +4 -2
  342. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +4 -2
  343. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +112 -0
  344. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -1
  345. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +112 -0
  346. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +112 -0
  347. package/dist/features/row-pinning/rowPinningFeature.utils.js +112 -0
  348. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -1
  349. package/dist/features/row-selection/rowSelectionFeature.cjs +9 -1
  350. package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -1
  351. package/dist/features/row-selection/rowSelectionFeature.d.cts +9 -1
  352. package/dist/features/row-selection/rowSelectionFeature.d.ts +9 -1
  353. package/dist/features/row-selection/rowSelectionFeature.js +9 -1
  354. package/dist/features/row-selection/rowSelectionFeature.js.map +1 -1
  355. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +4 -2
  356. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +4 -2
  357. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +259 -0
  358. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
  359. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +259 -0
  360. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +259 -0
  361. package/dist/features/row-selection/rowSelectionFeature.utils.js +259 -0
  362. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
  363. package/dist/features/row-sorting/createSortedRowModel.cjs +5 -0
  364. package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -1
  365. package/dist/features/row-sorting/createSortedRowModel.d.cts +5 -0
  366. package/dist/features/row-sorting/createSortedRowModel.d.ts +5 -0
  367. package/dist/features/row-sorting/createSortedRowModel.js +5 -0
  368. package/dist/features/row-sorting/createSortedRowModel.js.map +1 -1
  369. package/dist/features/row-sorting/rowSortingFeature.cjs +11 -3
  370. package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -1
  371. package/dist/features/row-sorting/rowSortingFeature.d.cts +9 -1
  372. package/dist/features/row-sorting/rowSortingFeature.d.ts +9 -1
  373. package/dist/features/row-sorting/rowSortingFeature.js +11 -3
  374. package/dist/features/row-sorting/rowSortingFeature.js.map +1 -1
  375. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +7 -3
  376. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +7 -3
  377. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +151 -0
  378. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
  379. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +151 -0
  380. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +151 -0
  381. package/dist/features/row-sorting/rowSortingFeature.utils.js +151 -0
  382. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
  383. package/dist/features/stockFeatures.cjs +5 -0
  384. package/dist/features/stockFeatures.cjs.map +1 -1
  385. package/dist/features/stockFeatures.d.cts +5 -0
  386. package/dist/features/stockFeatures.d.ts +5 -0
  387. package/dist/features/stockFeatures.js +5 -0
  388. package/dist/features/stockFeatures.js.map +1 -1
  389. package/dist/flex-render.cjs +10 -0
  390. package/dist/flex-render.cjs.map +1 -1
  391. package/dist/flex-render.d.cts +10 -0
  392. package/dist/flex-render.d.ts +10 -0
  393. package/dist/flex-render.js +10 -0
  394. package/dist/flex-render.js.map +1 -1
  395. package/dist/fns/aggregationFns.cjs +5 -0
  396. package/dist/fns/aggregationFns.cjs.map +1 -1
  397. package/dist/fns/aggregationFns.d.cts +5 -0
  398. package/dist/fns/aggregationFns.d.ts +5 -0
  399. package/dist/fns/aggregationFns.js +5 -0
  400. package/dist/fns/aggregationFns.js.map +1 -1
  401. package/dist/fns/filterFns.cjs +5 -0
  402. package/dist/fns/filterFns.cjs.map +1 -1
  403. package/dist/fns/filterFns.d.cts +5 -0
  404. package/dist/fns/filterFns.d.ts +5 -0
  405. package/dist/fns/filterFns.js +5 -0
  406. package/dist/fns/filterFns.js.map +1 -1
  407. package/dist/fns/sortFns.cjs +49 -4
  408. package/dist/fns/sortFns.cjs.map +1 -1
  409. package/dist/fns/sortFns.d.cts +41 -0
  410. package/dist/fns/sortFns.d.ts +41 -0
  411. package/dist/fns/sortFns.js +49 -4
  412. package/dist/fns/sortFns.js.map +1 -1
  413. package/dist/helpers/columnHelper.cjs.map +1 -1
  414. package/dist/helpers/columnHelper.js.map +1 -1
  415. package/dist/helpers/tableFeatures.cjs.map +1 -1
  416. package/dist/helpers/tableFeatures.js.map +1 -1
  417. package/dist/helpers/tableOptions.cjs +6 -0
  418. package/dist/helpers/tableOptions.cjs.map +1 -1
  419. package/dist/helpers/tableOptions.d.cts +26 -0
  420. package/dist/helpers/tableOptions.d.ts +26 -0
  421. package/dist/helpers/tableOptions.js +6 -0
  422. package/dist/helpers/tableOptions.js.map +1 -1
  423. package/dist/static-functions.cjs +1 -1
  424. package/dist/static-functions.d.cts +3 -3
  425. package/dist/static-functions.d.ts +3 -3
  426. package/dist/static-functions.js +3 -3
  427. package/dist/store-reactivity-bindings.cjs.map +1 -1
  428. package/dist/store-reactivity-bindings.js.map +1 -1
  429. package/dist/utils.cjs +45 -0
  430. package/dist/utils.cjs.map +1 -1
  431. package/dist/utils.d.cts +45 -0
  432. package/dist/utils.d.ts +45 -0
  433. package/dist/utils.js +45 -0
  434. package/dist/utils.js.map +1 -1
  435. package/package.json +1 -1
  436. package/src/core/cells/constructCell.ts +5 -0
  437. package/src/core/cells/coreCellsFeature.ts +5 -0
  438. package/src/core/cells/coreCellsFeature.utils.ts +30 -0
  439. package/src/core/columns/constructColumn.ts +7 -1
  440. package/src/core/columns/coreColumnsFeature.ts +10 -0
  441. package/src/core/columns/coreColumnsFeature.types.ts +4 -0
  442. package/src/core/columns/coreColumnsFeature.utils.ts +109 -8
  443. package/src/core/coreFeatures.ts +5 -0
  444. package/src/core/headers/buildHeaderGroups.ts +7 -1
  445. package/src/core/headers/constructHeader.ts +5 -0
  446. package/src/core/headers/coreHeadersFeature.ts +5 -0
  447. package/src/core/headers/coreHeadersFeature.utils.ts +86 -8
  448. package/src/core/reactivity/coreReactivityFeature.utils.ts +15 -0
  449. package/src/core/row-models/coreRowModelsFeature.ts +5 -0
  450. package/src/core/row-models/coreRowModelsFeature.types.ts +2 -1
  451. package/src/core/row-models/coreRowModelsFeature.utils.ts +120 -0
  452. package/src/core/row-models/createCoreRowModel.ts +5 -0
  453. package/src/core/rows/constructRow.ts +5 -0
  454. package/src/core/rows/coreRowsFeature.ts +5 -0
  455. package/src/core/rows/coreRowsFeature.types.ts +3 -0
  456. package/src/core/rows/coreRowsFeature.utils.ts +106 -7
  457. package/src/core/table/constructTable.ts +10 -0
  458. package/src/core/table/coreTablesFeature.ts +5 -0
  459. package/src/core/table/coreTablesFeature.types.ts +22 -12
  460. package/src/core/table/coreTablesFeature.utils.ts +44 -0
  461. package/src/features/column-faceting/columnFacetingFeature.ts +9 -1
  462. package/src/features/column-faceting/columnFacetingFeature.types.ts +12 -6
  463. package/src/features/column-faceting/columnFacetingFeature.utils.ts +60 -0
  464. package/src/features/column-faceting/createFacetedMinMaxValues.ts +5 -0
  465. package/src/features/column-faceting/createFacetedRowModel.ts +5 -0
  466. package/src/features/column-faceting/createFacetedUniqueValues.ts +5 -0
  467. package/src/features/column-filtering/columnFilteringFeature.ts +10 -2
  468. package/src/features/column-filtering/columnFilteringFeature.types.ts +7 -4
  469. package/src/features/column-filtering/columnFilteringFeature.utils.ts +113 -2
  470. package/src/features/column-filtering/createFilteredRowModel.ts +5 -0
  471. package/src/features/column-filtering/filterRowsUtils.ts +5 -0
  472. package/src/features/column-grouping/columnGroupingFeature.ts +9 -1
  473. package/src/features/column-grouping/columnGroupingFeature.types.ts +7 -3
  474. package/src/features/column-grouping/columnGroupingFeature.utils.ts +151 -0
  475. package/src/features/column-grouping/createGroupedRowModel.ts +5 -0
  476. package/src/features/column-ordering/columnOrderingFeature.ts +10 -1
  477. package/src/features/column-ordering/columnOrderingFeature.types.ts +4 -2
  478. package/src/features/column-ordering/columnOrderingFeature.utils.ts +110 -18
  479. package/src/features/column-pinning/columnPinningFeature.ts +11 -12
  480. package/src/features/column-pinning/columnPinningFeature.types.ts +6 -2
  481. package/src/features/column-pinning/columnPinningFeature.utils.ts +390 -57
  482. package/src/features/column-resizing/columnResizingFeature.ts +9 -2
  483. package/src/features/column-resizing/columnResizingFeature.types.ts +14 -6
  484. package/src/features/column-resizing/columnResizingFeature.utils.ts +81 -0
  485. package/src/features/column-sizing/columnSizingFeature.ts +38 -18
  486. package/src/features/column-sizing/columnSizingFeature.types.ts +6 -3
  487. package/src/features/column-sizing/columnSizingFeature.utils.ts +168 -9
  488. package/src/features/column-visibility/columnVisibilityFeature.ts +15 -21
  489. package/src/features/column-visibility/columnVisibilityFeature.types.ts +4 -3
  490. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +179 -23
  491. package/src/features/global-filtering/globalFilteringFeature.ts +9 -2
  492. package/src/features/global-filtering/globalFilteringFeature.types.ts +4 -2
  493. package/src/features/global-filtering/globalFilteringFeature.utils.ts +51 -0
  494. package/src/features/row-expanding/createExpandedRowModel.ts +10 -0
  495. package/src/features/row-expanding/rowExpandingFeature.ts +9 -1
  496. package/src/features/row-expanding/rowExpandingFeature.types.ts +10 -5
  497. package/src/features/row-expanding/rowExpandingFeature.utils.ts +151 -0
  498. package/src/features/row-pagination/createPaginatedRowModel.ts +5 -0
  499. package/src/features/row-pagination/rowPaginationFeature.ts +9 -1
  500. package/src/features/row-pagination/rowPaginationFeature.types.ts +11 -7
  501. package/src/features/row-pagination/rowPaginationFeature.utils.ts +175 -0
  502. package/src/features/row-pinning/rowPinningFeature.ts +9 -1
  503. package/src/features/row-pinning/rowPinningFeature.types.ts +4 -2
  504. package/src/features/row-pinning/rowPinningFeature.utils.ts +112 -0
  505. package/src/features/row-selection/rowSelectionFeature.ts +9 -1
  506. package/src/features/row-selection/rowSelectionFeature.types.ts +4 -2
  507. package/src/features/row-selection/rowSelectionFeature.utils.ts +259 -0
  508. package/src/features/row-sorting/createSortedRowModel.ts +5 -0
  509. package/src/features/row-sorting/rowSortingFeature.ts +11 -3
  510. package/src/features/row-sorting/rowSortingFeature.types.ts +7 -3
  511. package/src/features/row-sorting/rowSortingFeature.utils.ts +151 -0
  512. package/src/features/stockFeatures.ts +5 -0
  513. package/src/flex-render.ts +10 -0
  514. package/src/fns/aggregationFns.ts +5 -0
  515. package/src/fns/filterFns.ts +5 -0
  516. package/src/fns/sortFns.ts +50 -5
  517. package/src/helpers/tableOptions.ts +32 -0
  518. package/src/utils.ts +45 -0
@@ -1 +1 @@
1
- {"version":3,"file":"createFacetedRowModel.js","names":[],"sources":["../../../src/features/column-faceting/createFacetedRowModel.ts"],"sourcesContent":["import { tableMemo } from '../../utils'\nimport { filterRows } from '../column-filtering/filterRowsUtils'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type {\n ColumnFiltersState,\n Row_ColumnFiltering,\n} from '../column-filtering/columnFilteringFeature.types'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Row } from '../../types/Row'\nimport type { RowData } from '../../types/type-utils'\n\nexport function createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => RowModel<TFeatures, TData> {\n return (_table, columnId) => {\n const table: Table_Internal<TFeatures, TData> = _table\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'createFacetedRowModel',\n memoDeps: () => [\n table.getPreFilteredRowModel(),\n table.atoms.columnFilters?.get(),\n table.atoms.globalFilter?.get(),\n table.getFilteredRowModel(),\n ],\n fn: (preRowModel, columnFilters, globalFilter) =>\n _createFacetedRowModel(\n table,\n columnId,\n preRowModel,\n columnFilters,\n globalFilter,\n ),\n })\n }\n}\n\nfunction _createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(\n table: Table_Internal<TFeatures, TData>,\n columnId: string,\n preRowModel: RowModel<TFeatures, TData>,\n columnFilters?: ColumnFiltersState,\n globalFilter?: string,\n) {\n if (!preRowModel.rows.length || (!columnFilters?.length && !globalFilter)) {\n return preRowModel\n }\n\n const filterableIds = [\n ...(columnFilters?.map((d) => d.id).filter((d) => d !== columnId) ?? []),\n globalFilter ? '__global__' : undefined,\n ].filter(Boolean) as Array<string>\n\n const filterRowsImpl = (\n row: Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>,\n ) => {\n // Horizontally filter rows through each column\n for (const colId of filterableIds) {\n if (row.columnFilters?.[colId] === false) {\n return false\n }\n }\n return true\n }\n\n return filterRows(preRowModel.rows, filterRowsImpl, table)\n}\n"],"mappings":";;;;AAYA,SAAgB,wBAMsB;AACpC,SAAQ,QAAQ,aAAa;EAC3B,MAAM,QAA0C;AAChD,SAAO,UAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;;;KACd,MAAM,wBAAwB;8BAC9B,MAAM,MAAM,6FAAe,KAAK;8BAChC,MAAM,MAAM,4FAAc,KAAK;KAC/B,MAAM,qBAAqB;KAC5B;;GACD,KAAK,aAAa,eAAe,iBAC/B,uBACE,OACA,UACA,aACA,eACA,aACD;GACJ,CAAC;;;AAIN,SAAS,uBAIP,OACA,UACA,aACA,eACA,cACA;AACA,KAAI,CAAC,YAAY,KAAK,UAAW,gEAAC,cAAe,WAAU,CAAC,aAC1D,QAAO;CAGT,MAAM,gBAAgB,CACpB,kEAAI,cAAe,KAAK,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,MAAM,SAAS,KAAI,EAAE,EACvE,eAAe,eAAe,OAC/B,CAAC,OAAO,QAAQ;CAEjB,MAAM,kBACJ,QACG;AAEH,OAAK,MAAM,SAAS,eAAe;;AACjC,8BAAI,IAAI,uFAAgB,YAAW,MACjC,QAAO;;AAGX,SAAO;;AAGT,QAAO,WAAW,YAAY,MAAM,gBAAgB,MAAM"}
1
+ {"version":3,"file":"createFacetedRowModel.js","names":[],"sources":["../../../src/features/column-faceting/createFacetedRowModel.ts"],"sourcesContent":["import { tableMemo } from '../../utils'\nimport { filterRows } from '../column-filtering/filterRowsUtils'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type {\n ColumnFiltersState,\n Row_ColumnFiltering,\n} from '../column-filtering/columnFilteringFeature.types'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Row } from '../../types/Row'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted row model factory.\n *\n * The factory reads the relevant table state atoms and options, then returns a row model function used by the table row-model pipeline.\n */\nexport function createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => RowModel<TFeatures, TData> {\n return (_table, columnId) => {\n const table: Table_Internal<TFeatures, TData> = _table\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'createFacetedRowModel',\n memoDeps: () => [\n table.getPreFilteredRowModel(),\n table.atoms.columnFilters?.get(),\n table.atoms.globalFilter?.get(),\n table.getFilteredRowModel(),\n ],\n fn: (preRowModel, columnFilters, globalFilter) =>\n _createFacetedRowModel(\n table,\n columnId,\n preRowModel,\n columnFilters,\n globalFilter,\n ),\n })\n }\n}\n\nfunction _createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(\n table: Table_Internal<TFeatures, TData>,\n columnId: string,\n preRowModel: RowModel<TFeatures, TData>,\n columnFilters?: ColumnFiltersState,\n globalFilter?: string,\n) {\n if (!preRowModel.rows.length || (!columnFilters?.length && !globalFilter)) {\n return preRowModel\n }\n\n const filterableIds = [\n ...(columnFilters?.map((d) => d.id).filter((d) => d !== columnId) ?? []),\n globalFilter ? '__global__' : undefined,\n ].filter(Boolean) as Array<string>\n\n const filterRowsImpl = (\n row: Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>,\n ) => {\n // Horizontally filter rows through each column\n for (const colId of filterableIds) {\n if (row.columnFilters?.[colId] === false) {\n return false\n }\n }\n return true\n }\n\n return filterRows(preRowModel.rows, filterRowsImpl, table)\n}\n"],"mappings":";;;;;;;;;AAiBA,SAAgB,wBAMsB;CACpC,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAA0C;EAChD,OAAO,UAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;;;KACd,MAAM,wBAAwB;8BAC9B,MAAM,MAAM,6FAAe,KAAK;8BAChC,MAAM,MAAM,4FAAc,KAAK;KAC/B,MAAM,qBAAqB;KAC5B;;GACD,KAAK,aAAa,eAAe,iBAC/B,uBACE,OACA,UACA,aACA,eACA,aACD;GACJ,CAAC;;;AAIN,SAAS,uBAIP,OACA,UACA,aACA,eACA,cACA;CACA,IAAI,CAAC,YAAY,KAAK,UAAW,gEAAC,cAAe,WAAU,CAAC,cAC1D,OAAO;CAGT,MAAM,gBAAgB,CACpB,kEAAI,cAAe,KAAK,MAAM,EAAE,GAAG,CAAC,QAAQ,MAAM,MAAM,SAAS,KAAI,EAAE,EACvE,eAAe,eAAe,OAC/B,CAAC,OAAO,QAAQ;CAEjB,MAAM,kBACJ,QACG;EAEH,KAAK,MAAM,SAAS,eAAe;;GACjC,2BAAI,IAAI,uFAAgB,YAAW,OACjC,OAAO;;EAGX,OAAO;;CAGT,OAAO,WAAW,YAAY,MAAM,gBAAgB,MAAM"}
@@ -2,6 +2,11 @@ const require_utils = require('../../utils.cjs');
2
2
  const require_columnFacetingFeature_utils = require('./columnFacetingFeature.utils.cjs');
3
3
 
4
4
  //#region src/features/column-faceting/createFacetedUniqueValues.ts
5
+ /**
6
+ * Creates a memoized faceted unique values helper for faceted filtering.
7
+ *
8
+ * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.
9
+ */
5
10
  function createFacetedUniqueValues() {
6
11
  return (_table, columnId) => {
7
12
  const table = _table;
@@ -1 +1 @@
1
- {"version":3,"file":"createFacetedUniqueValues.cjs","names":["tableMemo","callMemoOrStaticFn","column_getFacetedRowModel"],"sources":["../../../src/features/column-faceting/createFacetedUniqueValues.ts"],"sourcesContent":["import { callMemoOrStaticFn, tableMemo } from '../../utils'\nimport { column_getFacetedRowModel } from './columnFacetingFeature.utils'\nimport type { Row } from '../../types/Row'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\nexport function createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => Map<any, number> {\n return (_table, columnId) => {\n const table: Table_Internal<TFeatures, TData> = _table\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'table.getFacetedUniqueValues',\n memoDeps: () => {\n const column = table.getColumn(columnId)\n if (!column) return [table.getPreFilteredRowModel().flatRows]\n return [\n callMemoOrStaticFn(\n column,\n 'getFacetedRowModel',\n column_getFacetedRowModel,\n table,\n ).flatRows,\n ]\n },\n fn: (flatRows) => _createFacetedUniqueValues(columnId, flatRows),\n })\n }\n}\n\nfunction _createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(columnId: string, flatRows: Array<Row<TFeatures, TData>>): Map<any, number> {\n const facetedUniqueValues = new Map<any, number>()\n\n for (const row of flatRows) {\n const values = row.getUniqueValues(columnId)\n\n for (const value of values) {\n if (facetedUniqueValues.has(value)) {\n facetedUniqueValues.set(\n value,\n (facetedUniqueValues.get(value) ?? 0) + 1,\n )\n } else {\n facetedUniqueValues.set(value, 1)\n }\n }\n }\n\n return facetedUniqueValues\n}\n"],"mappings":";;;;AAOA,SAAgB,4BAMY;AAC1B,SAAQ,QAAQ,aAAa;EAC3B,MAAM,QAA0C;AAChD,SAAOA,wBAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,SAAS,MAAM,UAAU,SAAS;AACxC,QAAI,CAAC,OAAQ,QAAO,CAAC,MAAM,wBAAwB,CAAC,SAAS;AAC7D,WAAO,CACLC,iCACE,QACA,sBACAC,+DACA,MACD,CAAC,SACH;;GAEH,KAAK,aAAa,2BAA2B,UAAU,SAAS;GACjE,CAAC;;;AAIN,SAAS,2BAGP,UAAkB,UAA0D;CAC5E,MAAM,sCAAsB,IAAI,KAAkB;AAElD,MAAK,MAAM,OAAO,UAAU;EAC1B,MAAM,SAAS,IAAI,gBAAgB,SAAS;AAE5C,OAAK,MAAM,SAAS,OAClB,KAAI,oBAAoB,IAAI,MAAM,CAChC,qBAAoB,IAClB,QACC,oBAAoB,IAAI,MAAM,IAAI,KAAK,EACzC;MAED,qBAAoB,IAAI,OAAO,EAAE;;AAKvC,QAAO"}
1
+ {"version":3,"file":"createFacetedUniqueValues.cjs","names":["tableMemo","callMemoOrStaticFn","column_getFacetedRowModel"],"sources":["../../../src/features/column-faceting/createFacetedUniqueValues.ts"],"sourcesContent":["import { callMemoOrStaticFn, tableMemo } from '../../utils'\nimport { column_getFacetedRowModel } from './columnFacetingFeature.utils'\nimport type { Row } from '../../types/Row'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted unique values helper for faceted filtering.\n *\n * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.\n */\nexport function createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => Map<any, number> {\n return (_table, columnId) => {\n const table: Table_Internal<TFeatures, TData> = _table\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'table.getFacetedUniqueValues',\n memoDeps: () => {\n const column = table.getColumn(columnId)\n if (!column) return [table.getPreFilteredRowModel().flatRows]\n return [\n callMemoOrStaticFn(\n column,\n 'getFacetedRowModel',\n column_getFacetedRowModel,\n table,\n ).flatRows,\n ]\n },\n fn: (flatRows) => _createFacetedUniqueValues(columnId, flatRows),\n })\n }\n}\n\nfunction _createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(columnId: string, flatRows: Array<Row<TFeatures, TData>>): Map<any, number> {\n const facetedUniqueValues = new Map<any, number>()\n\n for (const row of flatRows) {\n const values = row.getUniqueValues(columnId)\n\n for (const value of values) {\n if (facetedUniqueValues.has(value)) {\n facetedUniqueValues.set(\n value,\n (facetedUniqueValues.get(value) ?? 0) + 1,\n )\n } else {\n facetedUniqueValues.set(value, 1)\n }\n }\n }\n\n return facetedUniqueValues\n}\n"],"mappings":";;;;;;;;;AAYA,SAAgB,4BAMY;CAC1B,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAA0C;EAChD,OAAOA,wBAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,SAAS,MAAM,UAAU,SAAS;IACxC,IAAI,CAAC,QAAQ,OAAO,CAAC,MAAM,wBAAwB,CAAC,SAAS;IAC7D,OAAO,CACLC,iCACE,QACA,sBACAC,+DACA,MACD,CAAC,SACH;;GAEH,KAAK,aAAa,2BAA2B,UAAU,SAAS;GACjE,CAAC;;;AAIN,SAAS,2BAGP,UAAkB,UAA0D;CAC5E,MAAM,sCAAsB,IAAI,KAAkB;CAElD,KAAK,MAAM,OAAO,UAAU;EAC1B,MAAM,SAAS,IAAI,gBAAgB,SAAS;EAE5C,KAAK,MAAM,SAAS,QAClB,IAAI,oBAAoB,IAAI,MAAM,EAChC,oBAAoB,IAClB,QACC,oBAAoB,IAAI,MAAM,IAAI,KAAK,EACzC;OAED,oBAAoB,IAAI,OAAO,EAAE;;CAKvC,OAAO"}
@@ -3,6 +3,11 @@ import { TableFeatures } from "../../types/TableFeatures.cjs";
3
3
  import { Table } from "../../types/Table.cjs";
4
4
 
5
5
  //#region src/features/column-faceting/createFacetedUniqueValues.d.ts
6
+ /**
7
+ * Creates a memoized faceted unique values helper for faceted filtering.
8
+ *
9
+ * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.
10
+ */
6
11
  declare function createFacetedUniqueValues<TFeatures extends TableFeatures, TData extends RowData = any>(): (table: Table<TFeatures, TData>, columnId: string) => () => Map<any, number>;
7
12
  //#endregion
8
13
  export { createFacetedUniqueValues };
@@ -3,6 +3,11 @@ import { TableFeatures } from "../../types/TableFeatures.js";
3
3
  import { Table } from "../../types/Table.js";
4
4
 
5
5
  //#region src/features/column-faceting/createFacetedUniqueValues.d.ts
6
+ /**
7
+ * Creates a memoized faceted unique values helper for faceted filtering.
8
+ *
9
+ * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.
10
+ */
6
11
  declare function createFacetedUniqueValues<TFeatures extends TableFeatures, TData extends RowData = any>(): (table: Table<TFeatures, TData>, columnId: string) => () => Map<any, number>;
7
12
  //#endregion
8
13
  export { createFacetedUniqueValues };
@@ -2,6 +2,11 @@ import { callMemoOrStaticFn, tableMemo } from "../../utils.js";
2
2
  import { column_getFacetedRowModel } from "./columnFacetingFeature.utils.js";
3
3
 
4
4
  //#region src/features/column-faceting/createFacetedUniqueValues.ts
5
+ /**
6
+ * Creates a memoized faceted unique values helper for faceted filtering.
7
+ *
8
+ * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.
9
+ */
5
10
  function createFacetedUniqueValues() {
6
11
  return (_table, columnId) => {
7
12
  const table = _table;
@@ -1 +1 @@
1
- {"version":3,"file":"createFacetedUniqueValues.js","names":[],"sources":["../../../src/features/column-faceting/createFacetedUniqueValues.ts"],"sourcesContent":["import { callMemoOrStaticFn, tableMemo } from '../../utils'\nimport { column_getFacetedRowModel } from './columnFacetingFeature.utils'\nimport type { Row } from '../../types/Row'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\nexport function createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => Map<any, number> {\n return (_table, columnId) => {\n const table: Table_Internal<TFeatures, TData> = _table\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'table.getFacetedUniqueValues',\n memoDeps: () => {\n const column = table.getColumn(columnId)\n if (!column) return [table.getPreFilteredRowModel().flatRows]\n return [\n callMemoOrStaticFn(\n column,\n 'getFacetedRowModel',\n column_getFacetedRowModel,\n table,\n ).flatRows,\n ]\n },\n fn: (flatRows) => _createFacetedUniqueValues(columnId, flatRows),\n })\n }\n}\n\nfunction _createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(columnId: string, flatRows: Array<Row<TFeatures, TData>>): Map<any, number> {\n const facetedUniqueValues = new Map<any, number>()\n\n for (const row of flatRows) {\n const values = row.getUniqueValues(columnId)\n\n for (const value of values) {\n if (facetedUniqueValues.has(value)) {\n facetedUniqueValues.set(\n value,\n (facetedUniqueValues.get(value) ?? 0) + 1,\n )\n } else {\n facetedUniqueValues.set(value, 1)\n }\n }\n }\n\n return facetedUniqueValues\n}\n"],"mappings":";;;;AAOA,SAAgB,4BAMY;AAC1B,SAAQ,QAAQ,aAAa;EAC3B,MAAM,QAA0C;AAChD,SAAO,UAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,SAAS,MAAM,UAAU,SAAS;AACxC,QAAI,CAAC,OAAQ,QAAO,CAAC,MAAM,wBAAwB,CAAC,SAAS;AAC7D,WAAO,CACL,mBACE,QACA,sBACA,2BACA,MACD,CAAC,SACH;;GAEH,KAAK,aAAa,2BAA2B,UAAU,SAAS;GACjE,CAAC;;;AAIN,SAAS,2BAGP,UAAkB,UAA0D;CAC5E,MAAM,sCAAsB,IAAI,KAAkB;AAElD,MAAK,MAAM,OAAO,UAAU;EAC1B,MAAM,SAAS,IAAI,gBAAgB,SAAS;AAE5C,OAAK,MAAM,SAAS,OAClB,KAAI,oBAAoB,IAAI,MAAM,CAChC,qBAAoB,IAClB,QACC,oBAAoB,IAAI,MAAM,IAAI,KAAK,EACzC;MAED,qBAAoB,IAAI,OAAO,EAAE;;AAKvC,QAAO"}
1
+ {"version":3,"file":"createFacetedUniqueValues.js","names":[],"sources":["../../../src/features/column-faceting/createFacetedUniqueValues.ts"],"sourcesContent":["import { callMemoOrStaticFn, tableMemo } from '../../utils'\nimport { column_getFacetedRowModel } from './columnFacetingFeature.utils'\nimport type { Row } from '../../types/Row'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted unique values helper for faceted filtering.\n *\n * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.\n */\nexport function createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => Map<any, number> {\n return (_table, columnId) => {\n const table: Table_Internal<TFeatures, TData> = _table\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'table.getFacetedUniqueValues',\n memoDeps: () => {\n const column = table.getColumn(columnId)\n if (!column) return [table.getPreFilteredRowModel().flatRows]\n return [\n callMemoOrStaticFn(\n column,\n 'getFacetedRowModel',\n column_getFacetedRowModel,\n table,\n ).flatRows,\n ]\n },\n fn: (flatRows) => _createFacetedUniqueValues(columnId, flatRows),\n })\n }\n}\n\nfunction _createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(columnId: string, flatRows: Array<Row<TFeatures, TData>>): Map<any, number> {\n const facetedUniqueValues = new Map<any, number>()\n\n for (const row of flatRows) {\n const values = row.getUniqueValues(columnId)\n\n for (const value of values) {\n if (facetedUniqueValues.has(value)) {\n facetedUniqueValues.set(\n value,\n (facetedUniqueValues.get(value) ?? 0) + 1,\n )\n } else {\n facetedUniqueValues.set(value, 1)\n }\n }\n }\n\n return facetedUniqueValues\n}\n"],"mappings":";;;;;;;;;AAYA,SAAgB,4BAMY;CAC1B,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAA0C;EAChD,OAAO,UAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,SAAS,MAAM,UAAU,SAAS;IACxC,IAAI,CAAC,QAAQ,OAAO,CAAC,MAAM,wBAAwB,CAAC,SAAS;IAC7D,OAAO,CACL,mBACE,QACA,sBACA,2BACA,MACD,CAAC,SACH;;GAEH,KAAK,aAAa,2BAA2B,UAAU,SAAS;GACjE,CAAC;;;AAIN,SAAS,2BAGP,UAAkB,UAA0D;CAC5E,MAAM,sCAAsB,IAAI,KAAkB;CAElD,KAAK,MAAM,OAAO,UAAU;EAC1B,MAAM,SAAS,IAAI,gBAAgB,SAAS;EAE5C,KAAK,MAAM,SAAS,QAClB,IAAI,oBAAoB,IAAI,MAAM,EAChC,oBAAoB,IAClB,QACC,oBAAoB,IAAI,MAAM,IAAI,KAAK,EACzC;OAED,oBAAoB,IAAI,OAAO,EAAE;;CAKvC,OAAO"}
@@ -2,6 +2,11 @@ const require_utils = require('../../utils.cjs');
2
2
  const require_columnFilteringFeature_utils = require('./columnFilteringFeature.utils.cjs');
3
3
 
4
4
  //#region src/features/column-filtering/columnFilteringFeature.ts
5
+ /**
6
+ * Creates the stock column filtering feature.
7
+ *
8
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
9
+ */
5
10
  function constructColumnFilteringFeature() {
6
11
  return {
7
12
  getInitialState: (initialState) => {
@@ -44,8 +49,11 @@ function constructColumnFilteringFeature() {
44
49
  };
45
50
  }
46
51
  /**
47
- * The Column Filtering feature adds column filtering state and APIs to the table, row, and column objects.
48
- * **Note:** This does not include Global Filtering. The globalFilteringFeature feature has been split out into its own standalone feature.
52
+ * The stock column filtering feature.
53
+ *
54
+ * Register this feature to add column filter state, filter defaults, and
55
+ * table/row/column APIs for client-side or manual column filtering. Global
56
+ * filtering is provided by `globalFilteringFeature`.
49
57
  */
50
58
  const columnFilteringFeature = constructColumnFilteringFeature();
51
59
 
@@ -1 +1 @@
1
- {"version":3,"file":"columnFilteringFeature.cjs","names":["getDefaultColumnFiltersState","makeStateUpdater","column_getAutoFilterFn","column_getFilterFn","column_getCanFilter","column_getIsFiltered","column_getFilterValue","column_getFilterIndex","column_setFilterValue","table_setColumnFilters","table_resetColumnFilters"],"sources":["../../../src/features/column-filtering/columnFilteringFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getAutoFilterFn,\n column_getCanFilter,\n column_getFilterFn,\n column_getFilterIndex,\n column_getFilterValue,\n column_getIsFiltered,\n column_setFilterValue,\n getDefaultColumnFiltersState,\n table_resetColumnFilters,\n table_setColumnFilters,\n} from './columnFilteringFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// CachedRowModel_Filtered,\n// ColumnDef_ColumnFiltering,\n// Column_ColumnFiltering,\n// CreateRowModel_Filtered,\n// RowModelFns_ColumnFiltering,\n// Row_ColumnFiltering,\n// TableOptions_ColumnFiltering,\n// TableState_ColumnFiltering,\n// Table_ColumnFiltering,\n// } from './columnFilteringFeature.types'\n\nexport interface ColumnFilteringFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // CachedRowModel: CachedRowModel_Filtered<TFeatures, TData>\n // Column: Column_ColumnFiltering<TFeatures, TData>\n // ColumnDef: ColumnDef_ColumnFiltering<TFeatures, TData>\n // CreateRowModels: CreateRowModel_Filtered<TFeatures, TData>\n // Row: Row_ColumnFiltering<TFeatures, TData>\n // RowModelFns: RowModelFns_ColumnFiltering<TFeatures, TData>\n // Table: Table_ColumnFiltering<TFeatures, TData>\n // TableOptions: TableOptions_ColumnFiltering<TFeatures, TData>\n // TableState: TableState_ColumnFiltering\n}\n\nexport function constructColumnFilteringFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnFilteringFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnFilters: getDefaultColumnFiltersState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef: () => {\n return {\n filterFn: 'auto',\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnFiltersChange: makeStateUpdater('columnFilters', table),\n filterFromLeafRows: false,\n maxLeafRowFilterDepth: 100,\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnFilteringFeature', prototype, table, {\n column_getAutoFilterFn: {\n fn: (column) => column_getAutoFilterFn(column),\n },\n column_getFilterFn: {\n fn: (column) => column_getFilterFn(column),\n },\n column_getCanFilter: {\n fn: (column) => column_getCanFilter(column),\n },\n column_getIsFiltered: {\n fn: (column) => column_getIsFiltered(column),\n },\n column_getFilterValue: {\n fn: (column) => column_getFilterValue(column),\n },\n column_getFilterIndex: {\n fn: (column) => column_getFilterIndex(column),\n },\n column_setFilterValue: {\n fn: (column, value) => column_setFilterValue(column, value),\n },\n })\n },\n\n initRowInstanceData: (row) => {\n ;(row as any).columnFilters = {}\n ;(row as any).columnFiltersMeta = {}\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnFilteringFeature', table, {\n table_setColumnFilters: {\n fn: (updater) => table_setColumnFilters(table, updater),\n },\n table_resetColumnFilters: {\n fn: (defaultState) => table_resetColumnFilters(table, defaultState),\n },\n })\n },\n }\n}\n\n/**\n * The Column Filtering feature adds column filtering state and APIs to the table, row, and column objects.\n * **Note:** This does not include Global Filtering. The globalFilteringFeature feature has been split out into its own standalone feature.\n */\nexport const columnFilteringFeature = constructColumnFilteringFeature()\n"],"mappings":";;;;AA8CA,SAAgB,kCAGwD;AACtE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO;IACL,eAAeA,mEAA8B;IAC7C,GAAG;IACJ;;EAGH,2BAA2B;AACzB,UAAO,EACL,UAAU,QACX;;EAGH,yBAAyB,UAAU;AACjC,UAAO;IACL,uBAAuBC,+BAAiB,iBAAiB,MAAM;IAC/D,oBAAoB;IACpB,uBAAuB;IACxB;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,qCAAoB,0BAA0B,WAAW,OAAO;IAC9D,wBAAwB,EACtB,KAAK,WAAWC,4DAAuB,OAAO,EAC/C;IACD,oBAAoB,EAClB,KAAK,WAAWC,wDAAmB,OAAO,EAC3C;IACD,qBAAqB,EACnB,KAAK,WAAWC,yDAAoB,OAAO,EAC5C;IACD,sBAAsB,EACpB,KAAK,WAAWC,0DAAqB,OAAO,EAC7C;IACD,uBAAuB,EACrB,KAAK,WAAWC,2DAAsB,OAAO,EAC9C;IACD,uBAAuB,EACrB,KAAK,WAAWC,2DAAsB,OAAO,EAC9C;IACD,uBAAuB,EACrB,KAAK,QAAQ,UAAUC,2DAAsB,QAAQ,MAAM,EAC5D;IACF,CAAC;;EAGJ,sBAAsB,QAAQ;AAC3B,GAAC,IAAY,gBAAgB,EAAE;AAC/B,GAAC,IAAY,oBAAoB,EAAE;;EAGtC,qBAAqB,UAAU;AAC7B,iCAAgB,0BAA0B,OAAO;IAC/C,wBAAwB,EACtB,KAAK,YAAYC,4DAAuB,OAAO,QAAQ,EACxD;IACD,0BAA0B,EACxB,KAAK,iBAAiBC,8DAAyB,OAAO,aAAa,EACpE;IACF,CAAC;;EAEL;;;;;;AAOH,MAAa,yBAAyB,iCAAiC"}
1
+ {"version":3,"file":"columnFilteringFeature.cjs","names":["getDefaultColumnFiltersState","makeStateUpdater","column_getAutoFilterFn","column_getFilterFn","column_getCanFilter","column_getIsFiltered","column_getFilterValue","column_getFilterIndex","column_setFilterValue","table_setColumnFilters","table_resetColumnFilters"],"sources":["../../../src/features/column-filtering/columnFilteringFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getAutoFilterFn,\n column_getCanFilter,\n column_getFilterFn,\n column_getFilterIndex,\n column_getFilterValue,\n column_getIsFiltered,\n column_setFilterValue,\n getDefaultColumnFiltersState,\n table_resetColumnFilters,\n table_setColumnFilters,\n} from './columnFilteringFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// CachedRowModel_Filtered,\n// ColumnDef_ColumnFiltering,\n// Column_ColumnFiltering,\n// CreateRowModel_Filtered,\n// RowModelFns_ColumnFiltering,\n// Row_ColumnFiltering,\n// TableOptions_ColumnFiltering,\n// TableState_ColumnFiltering,\n// Table_ColumnFiltering,\n// } from './columnFilteringFeature.types'\n\nexport interface ColumnFilteringFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // CachedRowModel: CachedRowModel_Filtered<TFeatures, TData>\n // Column: Column_ColumnFiltering<TFeatures, TData>\n // ColumnDef: ColumnDef_ColumnFiltering<TFeatures, TData>\n // CreateRowModels: CreateRowModel_Filtered<TFeatures, TData>\n // Row: Row_ColumnFiltering<TFeatures, TData>\n // RowModelFns: RowModelFns_ColumnFiltering<TFeatures, TData>\n // Table: Table_ColumnFiltering<TFeatures, TData>\n // TableOptions: TableOptions_ColumnFiltering<TFeatures, TData>\n // TableState: TableState_ColumnFiltering\n}\n\n/**\n * Creates the stock column filtering feature.\n *\n * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.\n */\nexport function constructColumnFilteringFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnFilteringFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnFilters: getDefaultColumnFiltersState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef: () => {\n return {\n filterFn: 'auto',\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnFiltersChange: makeStateUpdater('columnFilters', table),\n filterFromLeafRows: false,\n maxLeafRowFilterDepth: 100,\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnFilteringFeature', prototype, table, {\n column_getAutoFilterFn: {\n fn: (column) => column_getAutoFilterFn(column),\n },\n column_getFilterFn: {\n fn: (column) => column_getFilterFn(column),\n },\n column_getCanFilter: {\n fn: (column) => column_getCanFilter(column),\n },\n column_getIsFiltered: {\n fn: (column) => column_getIsFiltered(column),\n },\n column_getFilterValue: {\n fn: (column) => column_getFilterValue(column),\n },\n column_getFilterIndex: {\n fn: (column) => column_getFilterIndex(column),\n },\n column_setFilterValue: {\n fn: (column, value) => column_setFilterValue(column, value),\n },\n })\n },\n\n initRowInstanceData: (row) => {\n ;(row as any).columnFilters = {}\n ;(row as any).columnFiltersMeta = {}\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnFilteringFeature', table, {\n table_setColumnFilters: {\n fn: (updater) => table_setColumnFilters(table, updater),\n },\n table_resetColumnFilters: {\n fn: (defaultState) => table_resetColumnFilters(table, defaultState),\n },\n })\n },\n }\n}\n\n/**\n * The stock column filtering feature.\n *\n * Register this feature to add column filter state, filter defaults, and\n * table/row/column APIs for client-side or manual column filtering. Global\n * filtering is provided by `globalFilteringFeature`.\n */\nexport const columnFilteringFeature = constructColumnFilteringFeature()\n"],"mappings":";;;;;;;;;AAmDA,SAAgB,kCAGwD;CACtE,OAAO;EACL,kBAAkB,iBAAiB;GACjC,OAAO;IACL,eAAeA,mEAA8B;IAC7C,GAAG;IACJ;;EAGH,2BAA2B;GACzB,OAAO,EACL,UAAU,QACX;;EAGH,yBAAyB,UAAU;GACjC,OAAO;IACL,uBAAuBC,+BAAiB,iBAAiB,MAAM;IAC/D,oBAAoB;IACpB,uBAAuB;IACxB;;EAGH,wBAAwB,WAAW,UAAU;GAC3C,kCAAoB,0BAA0B,WAAW,OAAO;IAC9D,wBAAwB,EACtB,KAAK,WAAWC,4DAAuB,OAAO,EAC/C;IACD,oBAAoB,EAClB,KAAK,WAAWC,wDAAmB,OAAO,EAC3C;IACD,qBAAqB,EACnB,KAAK,WAAWC,yDAAoB,OAAO,EAC5C;IACD,sBAAsB,EACpB,KAAK,WAAWC,0DAAqB,OAAO,EAC7C;IACD,uBAAuB,EACrB,KAAK,WAAWC,2DAAsB,OAAO,EAC9C;IACD,uBAAuB,EACrB,KAAK,WAAWC,2DAAsB,OAAO,EAC9C;IACD,uBAAuB,EACrB,KAAK,QAAQ,UAAUC,2DAAsB,QAAQ,MAAM,EAC5D;IACF,CAAC;;EAGJ,sBAAsB,QAAQ;GAC3B,AAAC,IAAY,gBAAgB,EAAE;GAC/B,AAAC,IAAY,oBAAoB,EAAE;;EAGtC,qBAAqB,UAAU;GAC7B,8BAAgB,0BAA0B,OAAO;IAC/C,wBAAwB,EACtB,KAAK,YAAYC,4DAAuB,OAAO,QAAQ,EACxD;IACD,0BAA0B,EACxB,KAAK,iBAAiBC,8DAAyB,OAAO,aAAa,EACpE;IACF,CAAC;;EAEL;;;;;;;;;AAUH,MAAa,yBAAyB,iCAAiC"}
@@ -3,10 +3,18 @@ import { TableFeature, TableFeatures } from "../../types/TableFeatures.cjs";
3
3
 
4
4
  //#region src/features/column-filtering/columnFilteringFeature.d.ts
5
5
  interface ColumnFilteringFeatureConstructors<TFeatures extends TableFeatures, TData extends RowData> {}
6
+ /**
7
+ * Creates the stock column filtering feature.
8
+ *
9
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
10
+ */
6
11
  declare function constructColumnFilteringFeature<TFeatures extends TableFeatures, TData extends RowData>(): TableFeature<ColumnFilteringFeatureConstructors<TFeatures, TData>>;
7
12
  /**
8
- * The Column Filtering feature adds column filtering state and APIs to the table, row, and column objects.
9
- * **Note:** This does not include Global Filtering. The globalFilteringFeature feature has been split out into its own standalone feature.
13
+ * The stock column filtering feature.
14
+ *
15
+ * Register this feature to add column filter state, filter defaults, and
16
+ * table/row/column APIs for client-side or manual column filtering. Global
17
+ * filtering is provided by `globalFilteringFeature`.
10
18
  */
11
19
  declare const columnFilteringFeature: TableFeature<ColumnFilteringFeatureConstructors<TableFeatures, RowData>>;
12
20
  //#endregion
@@ -3,10 +3,18 @@ import { TableFeature, TableFeatures } from "../../types/TableFeatures.js";
3
3
 
4
4
  //#region src/features/column-filtering/columnFilteringFeature.d.ts
5
5
  interface ColumnFilteringFeatureConstructors<TFeatures extends TableFeatures, TData extends RowData> {}
6
+ /**
7
+ * Creates the stock column filtering feature.
8
+ *
9
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
10
+ */
6
11
  declare function constructColumnFilteringFeature<TFeatures extends TableFeatures, TData extends RowData>(): TableFeature<ColumnFilteringFeatureConstructors<TFeatures, TData>>;
7
12
  /**
8
- * The Column Filtering feature adds column filtering state and APIs to the table, row, and column objects.
9
- * **Note:** This does not include Global Filtering. The globalFilteringFeature feature has been split out into its own standalone feature.
13
+ * The stock column filtering feature.
14
+ *
15
+ * Register this feature to add column filter state, filter defaults, and
16
+ * table/row/column APIs for client-side or manual column filtering. Global
17
+ * filtering is provided by `globalFilteringFeature`.
10
18
  */
11
19
  declare const columnFilteringFeature: TableFeature<ColumnFilteringFeatureConstructors<TableFeatures, RowData>>;
12
20
  //#endregion
@@ -2,6 +2,11 @@ import { assignPrototypeAPIs, assignTableAPIs, makeStateUpdater } from "../../ut
2
2
  import { column_getAutoFilterFn, column_getCanFilter, column_getFilterFn, column_getFilterIndex, column_getFilterValue, column_getIsFiltered, column_setFilterValue, getDefaultColumnFiltersState, table_resetColumnFilters, table_setColumnFilters } from "./columnFilteringFeature.utils.js";
3
3
 
4
4
  //#region src/features/column-filtering/columnFilteringFeature.ts
5
+ /**
6
+ * Creates the stock column filtering feature.
7
+ *
8
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
9
+ */
5
10
  function constructColumnFilteringFeature() {
6
11
  return {
7
12
  getInitialState: (initialState) => {
@@ -44,8 +49,11 @@ function constructColumnFilteringFeature() {
44
49
  };
45
50
  }
46
51
  /**
47
- * The Column Filtering feature adds column filtering state and APIs to the table, row, and column objects.
48
- * **Note:** This does not include Global Filtering. The globalFilteringFeature feature has been split out into its own standalone feature.
52
+ * The stock column filtering feature.
53
+ *
54
+ * Register this feature to add column filter state, filter defaults, and
55
+ * table/row/column APIs for client-side or manual column filtering. Global
56
+ * filtering is provided by `globalFilteringFeature`.
49
57
  */
50
58
  const columnFilteringFeature = constructColumnFilteringFeature();
51
59
 
@@ -1 +1 @@
1
- {"version":3,"file":"columnFilteringFeature.js","names":[],"sources":["../../../src/features/column-filtering/columnFilteringFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getAutoFilterFn,\n column_getCanFilter,\n column_getFilterFn,\n column_getFilterIndex,\n column_getFilterValue,\n column_getIsFiltered,\n column_setFilterValue,\n getDefaultColumnFiltersState,\n table_resetColumnFilters,\n table_setColumnFilters,\n} from './columnFilteringFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// CachedRowModel_Filtered,\n// ColumnDef_ColumnFiltering,\n// Column_ColumnFiltering,\n// CreateRowModel_Filtered,\n// RowModelFns_ColumnFiltering,\n// Row_ColumnFiltering,\n// TableOptions_ColumnFiltering,\n// TableState_ColumnFiltering,\n// Table_ColumnFiltering,\n// } from './columnFilteringFeature.types'\n\nexport interface ColumnFilteringFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // CachedRowModel: CachedRowModel_Filtered<TFeatures, TData>\n // Column: Column_ColumnFiltering<TFeatures, TData>\n // ColumnDef: ColumnDef_ColumnFiltering<TFeatures, TData>\n // CreateRowModels: CreateRowModel_Filtered<TFeatures, TData>\n // Row: Row_ColumnFiltering<TFeatures, TData>\n // RowModelFns: RowModelFns_ColumnFiltering<TFeatures, TData>\n // Table: Table_ColumnFiltering<TFeatures, TData>\n // TableOptions: TableOptions_ColumnFiltering<TFeatures, TData>\n // TableState: TableState_ColumnFiltering\n}\n\nexport function constructColumnFilteringFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnFilteringFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnFilters: getDefaultColumnFiltersState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef: () => {\n return {\n filterFn: 'auto',\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnFiltersChange: makeStateUpdater('columnFilters', table),\n filterFromLeafRows: false,\n maxLeafRowFilterDepth: 100,\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnFilteringFeature', prototype, table, {\n column_getAutoFilterFn: {\n fn: (column) => column_getAutoFilterFn(column),\n },\n column_getFilterFn: {\n fn: (column) => column_getFilterFn(column),\n },\n column_getCanFilter: {\n fn: (column) => column_getCanFilter(column),\n },\n column_getIsFiltered: {\n fn: (column) => column_getIsFiltered(column),\n },\n column_getFilterValue: {\n fn: (column) => column_getFilterValue(column),\n },\n column_getFilterIndex: {\n fn: (column) => column_getFilterIndex(column),\n },\n column_setFilterValue: {\n fn: (column, value) => column_setFilterValue(column, value),\n },\n })\n },\n\n initRowInstanceData: (row) => {\n ;(row as any).columnFilters = {}\n ;(row as any).columnFiltersMeta = {}\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnFilteringFeature', table, {\n table_setColumnFilters: {\n fn: (updater) => table_setColumnFilters(table, updater),\n },\n table_resetColumnFilters: {\n fn: (defaultState) => table_resetColumnFilters(table, defaultState),\n },\n })\n },\n }\n}\n\n/**\n * The Column Filtering feature adds column filtering state and APIs to the table, row, and column objects.\n * **Note:** This does not include Global Filtering. The globalFilteringFeature feature has been split out into its own standalone feature.\n */\nexport const columnFilteringFeature = constructColumnFilteringFeature()\n"],"mappings":";;;;AA8CA,SAAgB,kCAGwD;AACtE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO;IACL,eAAe,8BAA8B;IAC7C,GAAG;IACJ;;EAGH,2BAA2B;AACzB,UAAO,EACL,UAAU,QACX;;EAGH,yBAAyB,UAAU;AACjC,UAAO;IACL,uBAAuB,iBAAiB,iBAAiB,MAAM;IAC/D,oBAAoB;IACpB,uBAAuB;IACxB;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,uBAAoB,0BAA0B,WAAW,OAAO;IAC9D,wBAAwB,EACtB,KAAK,WAAW,uBAAuB,OAAO,EAC/C;IACD,oBAAoB,EAClB,KAAK,WAAW,mBAAmB,OAAO,EAC3C;IACD,qBAAqB,EACnB,KAAK,WAAW,oBAAoB,OAAO,EAC5C;IACD,sBAAsB,EACpB,KAAK,WAAW,qBAAqB,OAAO,EAC7C;IACD,uBAAuB,EACrB,KAAK,WAAW,sBAAsB,OAAO,EAC9C;IACD,uBAAuB,EACrB,KAAK,WAAW,sBAAsB,OAAO,EAC9C;IACD,uBAAuB,EACrB,KAAK,QAAQ,UAAU,sBAAsB,QAAQ,MAAM,EAC5D;IACF,CAAC;;EAGJ,sBAAsB,QAAQ;AAC3B,GAAC,IAAY,gBAAgB,EAAE;AAC/B,GAAC,IAAY,oBAAoB,EAAE;;EAGtC,qBAAqB,UAAU;AAC7B,mBAAgB,0BAA0B,OAAO;IAC/C,wBAAwB,EACtB,KAAK,YAAY,uBAAuB,OAAO,QAAQ,EACxD;IACD,0BAA0B,EACxB,KAAK,iBAAiB,yBAAyB,OAAO,aAAa,EACpE;IACF,CAAC;;EAEL;;;;;;AAOH,MAAa,yBAAyB,iCAAiC"}
1
+ {"version":3,"file":"columnFilteringFeature.js","names":[],"sources":["../../../src/features/column-filtering/columnFilteringFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getAutoFilterFn,\n column_getCanFilter,\n column_getFilterFn,\n column_getFilterIndex,\n column_getFilterValue,\n column_getIsFiltered,\n column_setFilterValue,\n getDefaultColumnFiltersState,\n table_resetColumnFilters,\n table_setColumnFilters,\n} from './columnFilteringFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// CachedRowModel_Filtered,\n// ColumnDef_ColumnFiltering,\n// Column_ColumnFiltering,\n// CreateRowModel_Filtered,\n// RowModelFns_ColumnFiltering,\n// Row_ColumnFiltering,\n// TableOptions_ColumnFiltering,\n// TableState_ColumnFiltering,\n// Table_ColumnFiltering,\n// } from './columnFilteringFeature.types'\n\nexport interface ColumnFilteringFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // CachedRowModel: CachedRowModel_Filtered<TFeatures, TData>\n // Column: Column_ColumnFiltering<TFeatures, TData>\n // ColumnDef: ColumnDef_ColumnFiltering<TFeatures, TData>\n // CreateRowModels: CreateRowModel_Filtered<TFeatures, TData>\n // Row: Row_ColumnFiltering<TFeatures, TData>\n // RowModelFns: RowModelFns_ColumnFiltering<TFeatures, TData>\n // Table: Table_ColumnFiltering<TFeatures, TData>\n // TableOptions: TableOptions_ColumnFiltering<TFeatures, TData>\n // TableState: TableState_ColumnFiltering\n}\n\n/**\n * Creates the stock column filtering feature.\n *\n * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.\n */\nexport function constructColumnFilteringFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnFilteringFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnFilters: getDefaultColumnFiltersState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef: () => {\n return {\n filterFn: 'auto',\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnFiltersChange: makeStateUpdater('columnFilters', table),\n filterFromLeafRows: false,\n maxLeafRowFilterDepth: 100,\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnFilteringFeature', prototype, table, {\n column_getAutoFilterFn: {\n fn: (column) => column_getAutoFilterFn(column),\n },\n column_getFilterFn: {\n fn: (column) => column_getFilterFn(column),\n },\n column_getCanFilter: {\n fn: (column) => column_getCanFilter(column),\n },\n column_getIsFiltered: {\n fn: (column) => column_getIsFiltered(column),\n },\n column_getFilterValue: {\n fn: (column) => column_getFilterValue(column),\n },\n column_getFilterIndex: {\n fn: (column) => column_getFilterIndex(column),\n },\n column_setFilterValue: {\n fn: (column, value) => column_setFilterValue(column, value),\n },\n })\n },\n\n initRowInstanceData: (row) => {\n ;(row as any).columnFilters = {}\n ;(row as any).columnFiltersMeta = {}\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnFilteringFeature', table, {\n table_setColumnFilters: {\n fn: (updater) => table_setColumnFilters(table, updater),\n },\n table_resetColumnFilters: {\n fn: (defaultState) => table_resetColumnFilters(table, defaultState),\n },\n })\n },\n }\n}\n\n/**\n * The stock column filtering feature.\n *\n * Register this feature to add column filter state, filter defaults, and\n * table/row/column APIs for client-side or manual column filtering. Global\n * filtering is provided by `globalFilteringFeature`.\n */\nexport const columnFilteringFeature = constructColumnFilteringFeature()\n"],"mappings":";;;;;;;;;AAmDA,SAAgB,kCAGwD;CACtE,OAAO;EACL,kBAAkB,iBAAiB;GACjC,OAAO;IACL,eAAe,8BAA8B;IAC7C,GAAG;IACJ;;EAGH,2BAA2B;GACzB,OAAO,EACL,UAAU,QACX;;EAGH,yBAAyB,UAAU;GACjC,OAAO;IACL,uBAAuB,iBAAiB,iBAAiB,MAAM;IAC/D,oBAAoB;IACpB,uBAAuB;IACxB;;EAGH,wBAAwB,WAAW,UAAU;GAC3C,oBAAoB,0BAA0B,WAAW,OAAO;IAC9D,wBAAwB,EACtB,KAAK,WAAW,uBAAuB,OAAO,EAC/C;IACD,oBAAoB,EAClB,KAAK,WAAW,mBAAmB,OAAO,EAC3C;IACD,qBAAqB,EACnB,KAAK,WAAW,oBAAoB,OAAO,EAC5C;IACD,sBAAsB,EACpB,KAAK,WAAW,qBAAqB,OAAO,EAC7C;IACD,uBAAuB,EACrB,KAAK,WAAW,sBAAsB,OAAO,EAC9C;IACD,uBAAuB,EACrB,KAAK,WAAW,sBAAsB,OAAO,EAC9C;IACD,uBAAuB,EACrB,KAAK,QAAQ,UAAU,sBAAsB,QAAQ,MAAM,EAC5D;IACF,CAAC;;EAGJ,sBAAsB,QAAQ;GAC3B,AAAC,IAAY,gBAAgB,EAAE;GAC/B,AAAC,IAAY,oBAAoB,EAAE;;EAGtC,qBAAqB,UAAU;GAC7B,gBAAgB,0BAA0B,OAAO;IAC/C,wBAAwB,EACtB,KAAK,YAAY,uBAAuB,OAAO,QAAQ,EACxD;IACD,0BAA0B,EACxB,KAAK,iBAAiB,yBAAyB,OAAO,aAAa,EACpE;IACF,CAAC;;EAEL;;;;;;;;;AAUH,MAAa,yBAAyB,iCAAiC"}
@@ -107,7 +107,9 @@ interface TableOptions_ColumnFiltering<TFeatures extends TableFeatures, TData ex
107
107
  */
108
108
  maxLeafRowFilterDepth?: number;
109
109
  /**
110
- * If provided, this function will be called with an `updaterFn` when `state.columnFilters` changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
110
+ * Called with an updater when column filter state changes. Pair this with
111
+ * `state.columnFilters` when using external state; external atoms can own the
112
+ * slice without this callback.
111
113
  */
112
114
  onColumnFiltersChange?: OnChangeFn<ColumnFiltersState>;
113
115
  }
@@ -117,7 +119,7 @@ interface Table_ColumnFiltering {
117
119
  */
118
120
  resetColumnFilters: (defaultState?: boolean) => void;
119
121
  /**
120
- * Sets or updates the `state.columnFilters` state.
122
+ * Sets column filter state using a value or updater.
121
123
  */
122
124
  setColumnFilters: (updater: Updater<ColumnFiltersState>) => void;
123
125
  }
@@ -133,9 +135,10 @@ interface Table_RowModels_Filtered<TFeatures extends TableFeatures, TData extend
133
135
  }
134
136
  interface CreateRowModel_Filtered<TFeatures extends TableFeatures, TData extends RowData> {
135
137
  /**
136
- * If provided, this function is called **once** per table and should return a **new function** which will calculate and return the row model for the table when it's filtered.
138
+ * If provided, this factory is called once per table and should return a
139
+ * function that calculates the filtered row model.
137
140
  * - For server-side filtering, this function is unnecessary and can be ignored since the server should already return the filtered row model.
138
- * - For client-side filtering, this function is required. A default implementation is provided via any table adapter's `{ getFilteredRowModel }` export.
141
+ * - For client-side filtering, pass the exported `createFilteredRowModel()` or implement your own factory.
139
142
  */
140
143
  filteredRowModel?: (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
141
144
  }
@@ -107,7 +107,9 @@ interface TableOptions_ColumnFiltering<TFeatures extends TableFeatures, TData ex
107
107
  */
108
108
  maxLeafRowFilterDepth?: number;
109
109
  /**
110
- * If provided, this function will be called with an `updaterFn` when `state.columnFilters` changes. This overrides the default internal state management, so you will need to persist the state change either fully or partially outside of the table.
110
+ * Called with an updater when column filter state changes. Pair this with
111
+ * `state.columnFilters` when using external state; external atoms can own the
112
+ * slice without this callback.
111
113
  */
112
114
  onColumnFiltersChange?: OnChangeFn<ColumnFiltersState>;
113
115
  }
@@ -117,7 +119,7 @@ interface Table_ColumnFiltering {
117
119
  */
118
120
  resetColumnFilters: (defaultState?: boolean) => void;
119
121
  /**
120
- * Sets or updates the `state.columnFilters` state.
122
+ * Sets column filter state using a value or updater.
121
123
  */
122
124
  setColumnFilters: (updater: Updater<ColumnFiltersState>) => void;
123
125
  }
@@ -133,9 +135,10 @@ interface Table_RowModels_Filtered<TFeatures extends TableFeatures, TData extend
133
135
  }
134
136
  interface CreateRowModel_Filtered<TFeatures extends TableFeatures, TData extends RowData> {
135
137
  /**
136
- * If provided, this function is called **once** per table and should return a **new function** which will calculate and return the row model for the table when it's filtered.
138
+ * If provided, this factory is called once per table and should return a
139
+ * function that calculates the filtered row model.
137
140
  * - For server-side filtering, this function is unnecessary and can be ignored since the server should already return the filtered row model.
138
- * - For client-side filtering, this function is required. A default implementation is provided via any table adapter's `{ getFilteredRowModel }` export.
141
+ * - For client-side filtering, pass the exported `createFilteredRowModel()` or implement your own factory.
139
142
  */
140
143
  filteredRowModel?: (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
141
144
  }
@@ -1,9 +1,29 @@
1
1
  const require_utils = require('../../utils.cjs');
2
2
 
3
3
  //#region src/features/column-filtering/columnFilteringFeature.utils.ts
4
+ /**
5
+ * Returns the default column filters state.
6
+ *
7
+ * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * const initialValue = getDefaultColumnFiltersState()
12
+ * ```
13
+ */
4
14
  function getDefaultColumnFiltersState() {
5
15
  return [];
6
16
  }
17
+ /**
18
+ * Infers filter fn for a column.
19
+ *
20
+ * The inference uses the column definition, table options, and sampled row values when needed.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * const value = column_getAutoFilterFn(column)
25
+ * ```
26
+ */
7
27
  function column_getAutoFilterFn(column) {
8
28
  const filterFns = column.table._rowModelFns.filterFns;
9
29
  const firstRow = column.table.getCoreRowModel().flatRows[0];
@@ -15,6 +35,16 @@ function column_getAutoFilterFn(column) {
15
35
  if (Array.isArray(value)) return filterFns === null || filterFns === void 0 ? void 0 : filterFns.arrIncludes;
16
36
  return filterFns === null || filterFns === void 0 ? void 0 : filterFns.weakEquals;
17
37
  }
38
+ /**
39
+ * Returns filter fn for a column.
40
+ *
41
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
42
+ *
43
+ * @example
44
+ * ```ts
45
+ * const value = column_getFilterFn(column)
46
+ * ```
47
+ */
18
48
  function column_getFilterFn(column) {
19
49
  let filterFn = null;
20
50
  const filterFns = column.table._rowModelFns.filterFns;
@@ -22,20 +52,70 @@ function column_getFilterFn(column) {
22
52
  if (process.env.NODE_ENV === "development" && !filterFn) console.warn(`Could not find a valid 'column.filterFn' for column with the ID: ${column.id}.`);
23
53
  return filterFn;
24
54
  }
55
+ /**
56
+ * Returns whether a column can use filter.
57
+ *
58
+ * This combines column options, table options, and any required accessor or feature state for the capability.
59
+ *
60
+ * @example
61
+ * ```ts
62
+ * const value = column_getCanFilter(column)
63
+ * ```
64
+ */
25
65
  function column_getCanFilter(column) {
26
66
  return (column.columnDef.enableColumnFilter ?? true) && (column.table.options.enableColumnFilters ?? true) && (column.table.options.enableFilters ?? true) && !!column.accessorFn;
27
67
  }
68
+ /**
69
+ * Returns is filtered for a column.
70
+ *
71
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
72
+ *
73
+ * @example
74
+ * ```ts
75
+ * const value = column_getIsFiltered(column)
76
+ * ```
77
+ */
28
78
  function column_getIsFiltered(column) {
29
79
  return column_getFilterIndex(column) > -1;
30
80
  }
81
+ /**
82
+ * Returns filter value for a column.
83
+ *
84
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
85
+ *
86
+ * @example
87
+ * ```ts
88
+ * const value = column_getFilterValue(column)
89
+ * ```
90
+ */
31
91
  function column_getFilterValue(column) {
32
92
  var _column$table$atoms$c;
33
93
  return (_column$table$atoms$c = column.table.atoms.columnFilters) === null || _column$table$atoms$c === void 0 || (_column$table$atoms$c = _column$table$atoms$c.get()) === null || _column$table$atoms$c === void 0 || (_column$table$atoms$c = _column$table$atoms$c.find((d) => d.id === column.id)) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.value;
34
94
  }
95
+ /**
96
+ * Returns filter index for a column.
97
+ *
98
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
99
+ *
100
+ * @example
101
+ * ```ts
102
+ * const value = column_getFilterIndex(column)
103
+ * ```
104
+ */
35
105
  function column_getFilterIndex(column) {
36
106
  var _column$table$atoms$c2;
37
107
  return ((_column$table$atoms$c2 = column.table.atoms.columnFilters) === null || _column$table$atoms$c2 === void 0 || (_column$table$atoms$c2 = _column$table$atoms$c2.get()) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2.findIndex((d) => d.id === column.id)) ?? -1;
38
108
  }
109
+ /**
110
+ * Updates filter value for a column.
111
+ *
112
+ * This delegates to the owning table state updater so external state, external atoms, and internal state stay synchronized.
113
+ *
114
+ * @example
115
+ * ```ts
116
+ * column_setFilterValue(column, (old) => old)
117
+ * ```
118
+ */
39
119
  function column_setFilterValue(column, value) {
40
120
  table_setColumnFilters(column.table, (old) => {
41
121
  const filterFn = column_getFilterFn(column);
@@ -54,12 +134,22 @@ function column_setFilterValue(column, value) {
54
134
  return [newFilterObj];
55
135
  });
56
136
  }
137
+ /**
138
+ * Updates the table's column filters state slice.
139
+ *
140
+ * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
141
+ *
142
+ * @example
143
+ * ```ts
144
+ * table_setColumnFilters(table, (old) => old)
145
+ * ```
146
+ */
57
147
  function table_setColumnFilters(table, updater) {
58
148
  var _table$options$onColu, _table$options;
59
- const leafColumns = table.getAllLeafColumns();
149
+ const leafColumnsById = table.getAllLeafColumnsById();
60
150
  const updateFn = (old) => {
61
151
  return require_utils.functionalUpdate(updater, old).filter((filter) => {
62
- const column = leafColumns.find((d) => d.id === filter.id);
152
+ const column = leafColumnsById[filter.id];
63
153
  if (column) {
64
154
  if (shouldAutoRemoveFilter(column_getFilterFn(column), filter.value, column)) return false;
65
155
  }
@@ -68,9 +158,30 @@ function table_setColumnFilters(table, updater) {
68
158
  };
69
159
  (_table$options$onColu = (_table$options = table.options).onColumnFiltersChange) === null || _table$options$onColu === void 0 || _table$options$onColu.call(_table$options, updateFn);
70
160
  }
161
+ /**
162
+ * Resets the table's column filters state slice.
163
+ *
164
+ * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
165
+ *
166
+ * @example
167
+ * ```ts
168
+ * table_resetColumnFilters(table)
169
+ * table_resetColumnFilters(table, true)
170
+ * ```
171
+ */
71
172
  function table_resetColumnFilters(table, defaultState) {
72
173
  table_setColumnFilters(table, defaultState ? [] : require_utils.cloneState(table.initialState.columnFilters ?? []));
73
174
  }
175
+ /**
176
+ * Returns whether a filter value should be removed from filter state.
177
+ *
178
+ * This checks the filter function's `autoRemove` hook and built-in empty-value rules.
179
+ *
180
+ * @example
181
+ * ```ts
182
+ * const removeFilter = shouldAutoRemoveFilter(filterFn, value, column)
183
+ * ```
184
+ */
74
185
  function shouldAutoRemoveFilter(filterFn, value, column) {
75
186
  return (filterFn && filterFn.autoRemove ? filterFn.autoRemove(value, column) : false) || typeof value === "undefined" || typeof value === "string" && !value;
76
187
  }
@@ -1 +1 @@
1
- {"version":3,"file":"columnFilteringFeature.utils.cjs","names":["isFunction","functionalUpdate","cloneState"],"sources":["../../../src/features/column-filtering/columnFilteringFeature.utils.ts"],"sourcesContent":["import { cloneState, 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 []\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: Record<string, FilterFn<TFeatures, TData>> | undefined =\n column.table._rowModelFns.filterFns\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: Record<string, FilterFn<TFeatures, TData>> | undefined =\n column.table._rowModelFns.filterFns\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.atoms.columnFilters\n ?.get()\n ?.find((d) => d.id === column.id)?.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.atoms.columnFilters\n ?.get()\n ?.findIndex((d) => d.id === column.id) ?? -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 ? [] : cloneState(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(value, column)\n : false) ||\n typeof value === 'undefined' ||\n (typeof value === 'string' && !value)\n )\n}\n"],"mappings":";;;AAUA,SAAgB,+BAAmD;AACjE,QAAO,EAAE;;AAGX,SAAgB,uBAId,QAAmD;CACnD,MAAM,YACJ,OAAO,MAAM,aAAa;CAE5B,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,YACJ,OAAO,MAAM,aAAa;AAC5B,YAAWA,yBAAW,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,8GACtB,KAAK,iGACL,MAAM,MAAM,EAAE,OAAO,OAAO,GAAG,gFAAE;;AAGvC,SAAgB,sBAId,QAA2D;;AAC3D,mCACE,OAAO,MAAM,MAAM,iHACf,KAAK,kFACL,WAAW,MAAM,EAAE,OAAO,OAAO,GAAG,KAAI;;AAIhD,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,YAAYC,+BAChB,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,SAAOA,+BAAiB,SAAS,IAAI,CAAC,QAAQ,WAAW;GACvD,MAAM,SAAS,YAAY,MAAM,MAAM,EAAE,OAAO,OAAO,GAAG;AAE1D,OAAI,QAGF;QAAI,uBAFa,mBAAmB,OAED,EAAE,OAAO,OAAO,OAAO,CACxD,QAAO;;AAIX,UAAO;IACP;;AAGJ,kDAAM,SAAQ,kHAAwB,SAAS;;AAGjD,SAAgB,yBAGd,OAAyC,cAAwB;AACjE,wBACE,OACA,eAAe,EAAE,GAAGC,yBAAW,MAAM,aAAa,iBAAiB,EAAE,CAAC,CACvE;;AAGH,SAAgB,uBAKd,UACA,OACA,QACA;AACA,SACG,YAAY,SAAS,aAClB,SAAS,WAAW,OAAO,OAAO,GAClC,UACJ,OAAO,UAAU,eAChB,OAAO,UAAU,YAAY,CAAC"}
1
+ {"version":3,"file":"columnFilteringFeature.utils.cjs","names":["isFunction","functionalUpdate","cloneState"],"sources":["../../../src/features/column-filtering/columnFilteringFeature.utils.ts"],"sourcesContent":["import { cloneState, 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\n/**\n * Returns the default column filters state.\n *\n * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.\n *\n * @example\n * ```ts\n * const initialValue = getDefaultColumnFiltersState()\n * ```\n */\nexport function getDefaultColumnFiltersState(): ColumnFiltersState {\n return []\n}\n\n/**\n * Infers filter fn for a column.\n *\n * The inference uses the column definition, table options, and sampled row values when needed.\n *\n * @example\n * ```ts\n * const value = column_getAutoFilterFn(column)\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: Record<string, FilterFn<TFeatures, TData>> | undefined =\n column.table._rowModelFns.filterFns\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\n/**\n * Returns filter fn for a column.\n *\n * This derives the value from the column definition, table options, and the feature state atoms registered on the table.\n *\n * @example\n * ```ts\n * const value = column_getFilterFn(column)\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: Record<string, FilterFn<TFeatures, TData>> | undefined =\n column.table._rowModelFns.filterFns\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\n/**\n * Returns whether a column can use filter.\n *\n * This combines column options, table options, and any required accessor or feature state for the capability.\n *\n * @example\n * ```ts\n * const value = column_getCanFilter(column)\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\n/**\n * Returns is filtered for a column.\n *\n * This derives the value from the column definition, table options, and the feature state atoms registered on the table.\n *\n * @example\n * ```ts\n * const value = column_getIsFiltered(column)\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\n/**\n * Returns filter value for a column.\n *\n * This derives the value from the column definition, table options, and the feature state atoms registered on the table.\n *\n * @example\n * ```ts\n * const value = column_getFilterValue(column)\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.atoms.columnFilters\n ?.get()\n ?.find((d) => d.id === column.id)?.value\n}\n\n/**\n * Returns filter index for a column.\n *\n * This derives the value from the column definition, table options, and the feature state atoms registered on the table.\n *\n * @example\n * ```ts\n * const value = column_getFilterIndex(column)\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.atoms.columnFilters\n ?.get()\n ?.findIndex((d) => d.id === column.id) ?? -1\n )\n}\n\n/**\n * Updates filter value for a column.\n *\n * This delegates to the owning table state updater so external state, external atoms, and internal state stay synchronized.\n *\n * @example\n * ```ts\n * column_setFilterValue(column, (old) => old)\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\n/**\n * Updates the table's column filters state slice.\n *\n * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.\n *\n * @example\n * ```ts\n * table_setColumnFilters(table, (old) => old)\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 leafColumnsById = table.getAllLeafColumnsById()\n\n const updateFn = (old: ColumnFiltersState) => {\n return functionalUpdate(updater, old).filter((filter) => {\n const column = leafColumnsById[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\n/**\n * Resets the table's column filters state slice.\n *\n * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.\n *\n * @example\n * ```ts\n * table_resetColumnFilters(table)\n * table_resetColumnFilters(table, true)\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 ? [] : cloneState(table.initialState.columnFilters ?? []),\n )\n}\n\n/**\n * Returns whether a filter value should be removed from filter state.\n *\n * This checks the filter function's `autoRemove` hook and built-in empty-value rules.\n *\n * @example\n * ```ts\n * const removeFilter = shouldAutoRemoveFilter(filterFn, value, column)\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(value, column)\n : false) ||\n typeof value === 'undefined' ||\n (typeof value === 'string' && !value)\n )\n}\n"],"mappings":";;;;;;;;;;;;;AAoBA,SAAgB,+BAAmD;CACjE,OAAO,EAAE;;;;;;;;;;;;AAaX,SAAgB,uBAId,QAAmD;CACnD,MAAM,YACJ,OAAO,MAAM,aAAa;CAE5B,MAAM,WAAW,OAAO,MAAM,iBAAiB,CAAC,SAAS;CAEzD,MAAM,QAAQ,WAAW,SAAS,SAAS,OAAO,GAAG,GAAG;CAExD,IAAI,OAAO,UAAU,UACnB,6DAAO,UAAW;CAGpB,IAAI,OAAO,UAAU,UACnB,6DAAO,UAAW;CAGpB,IAAI,OAAO,UAAU,WACnB,6DAAO,UAAW;CAGpB,IAAI,UAAU,QAAQ,OAAO,UAAU,UACrC,6DAAO,UAAW;CAGpB,IAAI,MAAM,QAAQ,MAAM,EACtB,6DAAO,UAAW;CAGpB,6DAAO,UAAW;;;;;;;;;;;;AAapB,SAAgB,mBAKd,QACwC;CACxC,IAAI,WAAW;CACf,MAAM,YACJ,OAAO,MAAM,aAAa;CAC5B,WAAWA,yBAAW,OAAO,UAAU,SAAS,GAC5C,OAAO,UAAU,WACjB,OAAO,UAAU,aAAa,SAC5B,uBAAuB,OAAO,yDAC9B,UAAY,OAAO,UAAU;CAEnC,IAAI,QAAQ,IAAI,aAAa,iBAAiB,CAAC,UAC7C,QAAQ,KACN,oEAAoE,OAAO,GAAG,GAC/E;CAGH,OAAO;;;;;;;;;;;;AAaT,SAAgB,oBAId,QAAmD;CACnD,QACG,OAAO,UAAU,sBAAsB,UACvC,OAAO,MAAM,QAAQ,uBAAuB,UAC5C,OAAO,MAAM,QAAQ,iBAAiB,SACvC,CAAC,CAAC,OAAO;;;;;;;;;;;;AAcb,SAAgB,qBAId,QAAmD;CACnD,OAAO,sBAAsB,OAAO,GAAG;;;;;;;;;;;;AAazC,SAAgB,sBAId,QAAmD;;CACnD,gCAAO,OAAO,MAAM,MAAM,8GACtB,KAAK,iGACL,MAAM,MAAM,EAAE,OAAO,OAAO,GAAG,gFAAE;;;;;;;;;;;;AAavC,SAAgB,sBAId,QAA2D;;CAC3D,kCACE,OAAO,MAAM,MAAM,iHACf,KAAK,kFACL,WAAW,MAAM,EAAE,OAAO,OAAO,GAAG,KAAI;;;;;;;;;;;;AAchD,SAAgB,sBAId,QAAmD,OAAY;CAC/D,uBAAuB,OAAO,QAAQ,QAAQ;EAC5C,MAAM,WAAW,mBAAmB,OAAO;EAC3C,MAAM,iBAAiB,IAAI,MAAM,MAAM,EAAE,OAAO,OAAO,GAAG;EAE1D,MAAM,YAAYC,+BAChB,OACA,iBAAiB,eAAe,QAAQ,OACzC;EAED,IAAI,uBAAuB,UAAU,WAAW,OAAO,EACrD,OAAO,IAAI,QAAQ,MAAM,EAAE,OAAO,OAAO,GAAG;EAG9C,MAAM,eAAe;GAAE,IAAI,OAAO;GAAI,OAAO;GAAW;EAExD,IAAI,gBACF,OAAO,IAAI,KAAK,MAAM;GACpB,IAAI,EAAE,OAAO,OAAO,IAClB,OAAO;GAET,OAAO;IACP;EAGJ,IAAI,IAAI,QACN,OAAO,CAAC,GAAG,KAAK,aAAa;EAG/B,OAAO,CAAC,aAAa;GACrB;;;;;;;;;;;;AAaJ,SAAgB,uBAId,OACA,SACA;;CACA,MAAM,kBAAkB,MAAM,uBAAuB;CAErD,MAAM,YAAY,QAA4B;EAC5C,OAAOA,+BAAiB,SAAS,IAAI,CAAC,QAAQ,WAAW;GACvD,MAAM,SAAS,gBAAgB,OAAO;GAEtC,IAAI,QAGF;QAAI,uBAFa,mBAAmB,OAED,EAAE,OAAO,OAAO,OAAO,EACxD,OAAO;;GAIX,OAAO;IACP;;CAGJ,iDAAM,SAAQ,kHAAwB,SAAS;;;;;;;;;;;;;AAcjD,SAAgB,yBAGd,OAAyC,cAAwB;CACjE,uBACE,OACA,eAAe,EAAE,GAAGC,yBAAW,MAAM,aAAa,iBAAiB,EAAE,CAAC,CACvE;;;;;;;;;;;;AAaH,SAAgB,uBAKd,UACA,OACA,QACA;CACA,QACG,YAAY,SAAS,aAClB,SAAS,WAAW,OAAO,OAAO,GAClC,UACJ,OAAO,UAAU,eAChB,OAAO,UAAU,YAAY,CAAC"}