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

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 (528) hide show
  1. package/dist/core/cells/constructCell.cjs +9 -3
  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 +9 -3
  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 +21 -12
  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 +21 -12
  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 +107 -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 +107 -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 +33 -20
  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 +33 -20
  50. package/dist/core/headers/buildHeaderGroups.js.map +1 -1
  51. package/dist/core/headers/constructHeader.cjs +9 -3
  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 +9 -3
  56. package/dist/core/headers/constructHeader.js.map +1 -1
  57. package/dist/core/headers/coreHeadersFeature.cjs +6 -6
  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 +7 -7
  62. package/dist/core/headers/coreHeadersFeature.js.map +1 -1
  63. package/dist/core/headers/coreHeadersFeature.utils.cjs +87 -16
  64. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
  65. package/dist/core/headers/coreHeadersFeature.utils.d.cts +61 -1
  66. package/dist/core/headers/coreHeadersFeature.utils.d.ts +61 -1
  67. package/dist/core/headers/coreHeadersFeature.utils.js +89 -18
  68. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
  69. package/dist/core/reactivity/coreReactivityFeature.types.d.cts +4 -0
  70. package/dist/core/reactivity/coreReactivityFeature.types.d.ts +4 -0
  71. package/dist/core/reactivity/coreReactivityFeature.utils.cjs +5 -0
  72. package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +1 -1
  73. package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +10 -0
  74. package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +10 -0
  75. package/dist/core/reactivity/coreReactivityFeature.utils.js +5 -0
  76. package/dist/core/reactivity/coreReactivityFeature.utils.js.map +1 -1
  77. package/dist/core/row-models/coreRowModelsFeature.cjs +5 -0
  78. package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -1
  79. package/dist/core/row-models/coreRowModelsFeature.d.cts +5 -0
  80. package/dist/core/row-models/coreRowModelsFeature.d.ts +5 -0
  81. package/dist/core/row-models/coreRowModelsFeature.js +5 -0
  82. package/dist/core/row-models/coreRowModelsFeature.js.map +1 -1
  83. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +2 -1
  84. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +2 -1
  85. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +120 -0
  86. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -1
  87. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +120 -0
  88. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +120 -0
  89. package/dist/core/row-models/coreRowModelsFeature.utils.js +120 -0
  90. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -1
  91. package/dist/core/row-models/createCoreRowModel.cjs +5 -0
  92. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -1
  93. package/dist/core/row-models/createCoreRowModel.d.cts +5 -0
  94. package/dist/core/row-models/createCoreRowModel.d.ts +5 -0
  95. package/dist/core/row-models/createCoreRowModel.js +5 -0
  96. package/dist/core/row-models/createCoreRowModel.js.map +1 -1
  97. package/dist/core/rows/constructRow.cjs +13 -6
  98. package/dist/core/rows/constructRow.cjs.map +1 -1
  99. package/dist/core/rows/constructRow.d.cts +5 -0
  100. package/dist/core/rows/constructRow.d.ts +5 -0
  101. package/dist/core/rows/constructRow.js +13 -6
  102. package/dist/core/rows/constructRow.js.map +1 -1
  103. package/dist/core/rows/coreRowsFeature.cjs +5 -0
  104. package/dist/core/rows/coreRowsFeature.cjs.map +1 -1
  105. package/dist/core/rows/coreRowsFeature.d.cts +5 -0
  106. package/dist/core/rows/coreRowsFeature.d.ts +5 -0
  107. package/dist/core/rows/coreRowsFeature.js +5 -0
  108. package/dist/core/rows/coreRowsFeature.js.map +1 -1
  109. package/dist/core/rows/coreRowsFeature.types.d.cts +3 -0
  110. package/dist/core/rows/coreRowsFeature.types.d.ts +3 -0
  111. package/dist/core/rows/coreRowsFeature.utils.cjs +112 -7
  112. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -1
  113. package/dist/core/rows/coreRowsFeature.utils.d.cts +101 -0
  114. package/dist/core/rows/coreRowsFeature.utils.d.ts +101 -0
  115. package/dist/core/rows/coreRowsFeature.utils.js +112 -7
  116. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -1
  117. package/dist/core/table/constructTable.cjs +19 -5
  118. package/dist/core/table/constructTable.cjs.map +1 -1
  119. package/dist/core/table/constructTable.d.cts +10 -0
  120. package/dist/core/table/constructTable.d.ts +10 -0
  121. package/dist/core/table/constructTable.js +19 -5
  122. package/dist/core/table/constructTable.js.map +1 -1
  123. package/dist/core/table/coreTablesFeature.cjs +5 -0
  124. package/dist/core/table/coreTablesFeature.cjs.map +1 -1
  125. package/dist/core/table/coreTablesFeature.d.cts +5 -0
  126. package/dist/core/table/coreTablesFeature.d.ts +5 -0
  127. package/dist/core/table/coreTablesFeature.js +5 -0
  128. package/dist/core/table/coreTablesFeature.js.map +1 -1
  129. package/dist/core/table/coreTablesFeature.types.d.cts +22 -12
  130. package/dist/core/table/coreTablesFeature.types.d.ts +22 -12
  131. package/dist/core/table/coreTablesFeature.utils.cjs +49 -1
  132. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
  133. package/dist/core/table/coreTablesFeature.utils.d.cts +44 -0
  134. package/dist/core/table/coreTablesFeature.utils.d.ts +44 -0
  135. package/dist/core/table/coreTablesFeature.utils.js +49 -1
  136. package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
  137. package/dist/features/column-faceting/columnFacetingFeature.cjs +9 -1
  138. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -1
  139. package/dist/features/column-faceting/columnFacetingFeature.d.cts +9 -1
  140. package/dist/features/column-faceting/columnFacetingFeature.d.ts +9 -1
  141. package/dist/features/column-faceting/columnFacetingFeature.js +9 -1
  142. package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -1
  143. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +12 -6
  144. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +12 -6
  145. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +60 -0
  146. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
  147. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +60 -0
  148. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +60 -0
  149. package/dist/features/column-faceting/columnFacetingFeature.utils.js +60 -0
  150. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
  151. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +13 -5
  152. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -1
  153. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +5 -0
  154. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +5 -0
  155. package/dist/features/column-faceting/createFacetedMinMaxValues.js +13 -5
  156. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -1
  157. package/dist/features/column-faceting/createFacetedRowModel.cjs +13 -3
  158. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -1
  159. package/dist/features/column-faceting/createFacetedRowModel.d.cts +5 -0
  160. package/dist/features/column-faceting/createFacetedRowModel.d.ts +5 -0
  161. package/dist/features/column-faceting/createFacetedRowModel.js +13 -3
  162. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -1
  163. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +12 -4
  164. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -1
  165. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +5 -0
  166. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +5 -0
  167. package/dist/features/column-faceting/createFacetedUniqueValues.js +12 -4
  168. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -1
  169. package/dist/features/column-filtering/columnFilteringFeature.cjs +10 -2
  170. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -1
  171. package/dist/features/column-filtering/columnFilteringFeature.d.cts +10 -2
  172. package/dist/features/column-filtering/columnFilteringFeature.d.ts +10 -2
  173. package/dist/features/column-filtering/columnFilteringFeature.js +10 -2
  174. package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -1
  175. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +7 -4
  176. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +7 -4
  177. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +113 -2
  178. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
  179. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +111 -0
  180. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +111 -0
  181. package/dist/features/column-filtering/columnFilteringFeature.utils.js +113 -2
  182. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
  183. package/dist/features/column-filtering/createFilteredRowModel.cjs +16 -5
  184. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -1
  185. package/dist/features/column-filtering/createFilteredRowModel.d.cts +5 -0
  186. package/dist/features/column-filtering/createFilteredRowModel.d.ts +5 -0
  187. package/dist/features/column-filtering/createFilteredRowModel.js +16 -5
  188. package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -1
  189. package/dist/features/column-filtering/filterRowsUtils.cjs +5 -0
  190. package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -1
  191. package/dist/features/column-filtering/filterRowsUtils.js +5 -0
  192. package/dist/features/column-filtering/filterRowsUtils.js.map +1 -1
  193. package/dist/features/column-grouping/columnGroupingFeature.cjs +9 -1
  194. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -1
  195. package/dist/features/column-grouping/columnGroupingFeature.d.cts +9 -1
  196. package/dist/features/column-grouping/columnGroupingFeature.d.ts +9 -1
  197. package/dist/features/column-grouping/columnGroupingFeature.js +9 -1
  198. package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -1
  199. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +7 -3
  200. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +7 -3
  201. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +151 -0
  202. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -1
  203. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +151 -0
  204. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +151 -0
  205. package/dist/features/column-grouping/columnGroupingFeature.utils.js +151 -0
  206. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -1
  207. package/dist/features/column-grouping/createGroupedRowModel.cjs +5 -0
  208. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -1
  209. package/dist/features/column-grouping/createGroupedRowModel.d.cts +5 -0
  210. package/dist/features/column-grouping/createGroupedRowModel.d.ts +5 -0
  211. package/dist/features/column-grouping/createGroupedRowModel.js +5 -0
  212. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -1
  213. package/dist/features/column-ordering/columnOrderingFeature.cjs +12 -3
  214. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
  215. package/dist/features/column-ordering/columnOrderingFeature.d.cts +9 -1
  216. package/dist/features/column-ordering/columnOrderingFeature.d.ts +9 -1
  217. package/dist/features/column-ordering/columnOrderingFeature.js +12 -3
  218. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
  219. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +4 -2
  220. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +4 -2
  221. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +108 -8
  222. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -1
  223. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +81 -0
  224. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +81 -0
  225. package/dist/features/column-ordering/columnOrderingFeature.utils.js +108 -8
  226. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -1
  227. package/dist/features/column-pinning/columnPinningFeature.cjs +17 -30
  228. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
  229. package/dist/features/column-pinning/columnPinningFeature.d.cts +9 -1
  230. package/dist/features/column-pinning/columnPinningFeature.d.ts +9 -1
  231. package/dist/features/column-pinning/columnPinningFeature.js +17 -30
  232. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
  233. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +6 -2
  234. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +6 -2
  235. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +387 -27
  236. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
  237. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +318 -6
  238. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +318 -6
  239. package/dist/features/column-pinning/columnPinningFeature.utils.js +388 -28
  240. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
  241. package/dist/features/column-resizing/columnResizingFeature.cjs +9 -2
  242. package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -1
  243. package/dist/features/column-resizing/columnResizingFeature.d.cts +9 -2
  244. package/dist/features/column-resizing/columnResizingFeature.d.ts +9 -2
  245. package/dist/features/column-resizing/columnResizingFeature.js +9 -2
  246. package/dist/features/column-resizing/columnResizingFeature.js.map +1 -1
  247. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +14 -6
  248. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +14 -6
  249. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +81 -0
  250. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
  251. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +81 -0
  252. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +81 -0
  253. package/dist/features/column-resizing/columnResizingFeature.utils.js +81 -0
  254. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
  255. package/dist/features/column-sizing/columnSizingFeature.cjs +78 -16
  256. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
  257. package/dist/features/column-sizing/columnSizingFeature.d.cts +10 -2
  258. package/dist/features/column-sizing/columnSizingFeature.d.ts +10 -2
  259. package/dist/features/column-sizing/columnSizingFeature.js +79 -17
  260. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
  261. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +6 -3
  262. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +6 -3
  263. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +151 -3
  264. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
  265. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +141 -0
  266. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +141 -0
  267. package/dist/features/column-sizing/columnSizingFeature.utils.js +151 -3
  268. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
  269. package/dist/features/column-visibility/columnVisibilityFeature.cjs +30 -20
  270. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
  271. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +9 -1
  272. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +9 -1
  273. package/dist/features/column-visibility/columnVisibilityFeature.js +31 -21
  274. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
  275. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +8 -3
  276. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +8 -3
  277. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +199 -12
  278. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
  279. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +154 -3
  280. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +154 -3
  281. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +199 -12
  282. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
  283. package/dist/features/global-filtering/globalFilteringFeature.cjs +9 -2
  284. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -1
  285. package/dist/features/global-filtering/globalFilteringFeature.d.cts +9 -2
  286. package/dist/features/global-filtering/globalFilteringFeature.d.ts +9 -2
  287. package/dist/features/global-filtering/globalFilteringFeature.js +9 -2
  288. package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -1
  289. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +4 -2
  290. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -2
  291. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +51 -0
  292. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
  293. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +51 -0
  294. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +51 -0
  295. package/dist/features/global-filtering/globalFilteringFeature.utils.js +51 -0
  296. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
  297. package/dist/features/row-expanding/createExpandedRowModel.cjs +10 -0
  298. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -1
  299. package/dist/features/row-expanding/createExpandedRowModel.d.cts +10 -0
  300. package/dist/features/row-expanding/createExpandedRowModel.d.ts +10 -0
  301. package/dist/features/row-expanding/createExpandedRowModel.js +10 -0
  302. package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -1
  303. package/dist/features/row-expanding/rowExpandingFeature.cjs +9 -1
  304. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -1
  305. package/dist/features/row-expanding/rowExpandingFeature.d.cts +9 -1
  306. package/dist/features/row-expanding/rowExpandingFeature.d.ts +9 -1
  307. package/dist/features/row-expanding/rowExpandingFeature.js +9 -1
  308. package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -1
  309. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +10 -5
  310. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +10 -5
  311. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +153 -2
  312. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -1
  313. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +151 -0
  314. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +151 -0
  315. package/dist/features/row-expanding/rowExpandingFeature.utils.js +153 -2
  316. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -1
  317. package/dist/features/row-pagination/createPaginatedRowModel.cjs +5 -0
  318. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -1
  319. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +5 -0
  320. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +5 -0
  321. package/dist/features/row-pagination/createPaginatedRowModel.js +5 -0
  322. package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -1
  323. package/dist/features/row-pagination/rowPaginationFeature.cjs +9 -1
  324. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -1
  325. package/dist/features/row-pagination/rowPaginationFeature.d.cts +9 -1
  326. package/dist/features/row-pagination/rowPaginationFeature.d.ts +9 -1
  327. package/dist/features/row-pagination/rowPaginationFeature.js +9 -1
  328. package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -1
  329. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +11 -7
  330. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +11 -7
  331. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +175 -0
  332. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -1
  333. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +175 -0
  334. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +175 -0
  335. package/dist/features/row-pagination/rowPaginationFeature.utils.js +175 -0
  336. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -1
  337. package/dist/features/row-pinning/rowPinningFeature.cjs +9 -1
  338. package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -1
  339. package/dist/features/row-pinning/rowPinningFeature.d.cts +9 -1
  340. package/dist/features/row-pinning/rowPinningFeature.d.ts +9 -1
  341. package/dist/features/row-pinning/rowPinningFeature.js +9 -1
  342. package/dist/features/row-pinning/rowPinningFeature.js.map +1 -1
  343. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +4 -2
  344. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +4 -2
  345. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +125 -7
  346. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -1
  347. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +112 -0
  348. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +112 -0
  349. package/dist/features/row-pinning/rowPinningFeature.utils.js +125 -7
  350. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -1
  351. package/dist/features/row-selection/rowSelectionFeature.cjs +9 -1
  352. package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -1
  353. package/dist/features/row-selection/rowSelectionFeature.d.cts +9 -1
  354. package/dist/features/row-selection/rowSelectionFeature.d.ts +9 -1
  355. package/dist/features/row-selection/rowSelectionFeature.js +9 -1
  356. package/dist/features/row-selection/rowSelectionFeature.js.map +1 -1
  357. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +4 -2
  358. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +4 -2
  359. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +265 -3
  360. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
  361. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +259 -0
  362. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +259 -0
  363. package/dist/features/row-selection/rowSelectionFeature.utils.js +265 -3
  364. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
  365. package/dist/features/row-sorting/createSortedRowModel.cjs +18 -8
  366. package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -1
  367. package/dist/features/row-sorting/createSortedRowModel.d.cts +5 -0
  368. package/dist/features/row-sorting/createSortedRowModel.d.ts +5 -0
  369. package/dist/features/row-sorting/createSortedRowModel.js +18 -8
  370. package/dist/features/row-sorting/createSortedRowModel.js.map +1 -1
  371. package/dist/features/row-sorting/rowSortingFeature.cjs +11 -3
  372. package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -1
  373. package/dist/features/row-sorting/rowSortingFeature.d.cts +9 -1
  374. package/dist/features/row-sorting/rowSortingFeature.d.ts +9 -1
  375. package/dist/features/row-sorting/rowSortingFeature.js +11 -3
  376. package/dist/features/row-sorting/rowSortingFeature.js.map +1 -1
  377. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +7 -3
  378. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +7 -3
  379. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +153 -2
  380. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
  381. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +151 -0
  382. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +151 -0
  383. package/dist/features/row-sorting/rowSortingFeature.utils.js +153 -2
  384. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
  385. package/dist/features/stockFeatures.cjs +5 -0
  386. package/dist/features/stockFeatures.cjs.map +1 -1
  387. package/dist/features/stockFeatures.d.cts +5 -0
  388. package/dist/features/stockFeatures.d.ts +5 -0
  389. package/dist/features/stockFeatures.js +5 -0
  390. package/dist/features/stockFeatures.js.map +1 -1
  391. package/dist/flex-render.cjs +10 -0
  392. package/dist/flex-render.cjs.map +1 -1
  393. package/dist/flex-render.d.cts +10 -0
  394. package/dist/flex-render.d.ts +10 -0
  395. package/dist/flex-render.js +10 -0
  396. package/dist/flex-render.js.map +1 -1
  397. package/dist/fns/aggregationFns.cjs +19 -7
  398. package/dist/fns/aggregationFns.cjs.map +1 -1
  399. package/dist/fns/aggregationFns.d.cts +5 -0
  400. package/dist/fns/aggregationFns.d.ts +5 -0
  401. package/dist/fns/aggregationFns.js +19 -8
  402. package/dist/fns/aggregationFns.js.map +1 -1
  403. package/dist/fns/filterFns.cjs +5 -0
  404. package/dist/fns/filterFns.cjs.map +1 -1
  405. package/dist/fns/filterFns.d.cts +5 -0
  406. package/dist/fns/filterFns.d.ts +5 -0
  407. package/dist/fns/filterFns.js +5 -0
  408. package/dist/fns/filterFns.js.map +1 -1
  409. package/dist/fns/sortFns.cjs +49 -4
  410. package/dist/fns/sortFns.cjs.map +1 -1
  411. package/dist/fns/sortFns.d.cts +41 -0
  412. package/dist/fns/sortFns.d.ts +41 -0
  413. package/dist/fns/sortFns.js +49 -4
  414. package/dist/fns/sortFns.js.map +1 -1
  415. package/dist/helpers/columnHelper.cjs.map +1 -1
  416. package/dist/helpers/columnHelper.js.map +1 -1
  417. package/dist/helpers/tableFeatures.cjs.map +1 -1
  418. package/dist/helpers/tableFeatures.js.map +1 -1
  419. package/dist/helpers/tableOptions.cjs +6 -0
  420. package/dist/helpers/tableOptions.cjs.map +1 -1
  421. package/dist/helpers/tableOptions.d.cts +26 -0
  422. package/dist/helpers/tableOptions.d.ts +26 -0
  423. package/dist/helpers/tableOptions.js +6 -0
  424. package/dist/helpers/tableOptions.js.map +1 -1
  425. package/dist/index.cjs +0 -4
  426. package/dist/index.d.cts +2 -2
  427. package/dist/index.d.ts +2 -2
  428. package/dist/index.js +2 -2
  429. package/dist/static-functions.cjs +2 -1
  430. package/dist/static-functions.d.cts +3 -3
  431. package/dist/static-functions.d.ts +3 -3
  432. package/dist/static-functions.js +3 -3
  433. package/dist/store-reactivity-bindings.cjs +1 -0
  434. package/dist/store-reactivity-bindings.cjs.map +1 -1
  435. package/dist/store-reactivity-bindings.js +1 -0
  436. package/dist/store-reactivity-bindings.js.map +1 -1
  437. package/dist/utils.cjs +49 -25
  438. package/dist/utils.cjs.map +1 -1
  439. package/dist/utils.d.cts +33 -10
  440. package/dist/utils.d.ts +33 -10
  441. package/dist/utils.js +50 -22
  442. package/dist/utils.js.map +1 -1
  443. package/package.json +1 -1
  444. package/src/core/cells/constructCell.ts +8 -2
  445. package/src/core/cells/coreCellsFeature.ts +5 -0
  446. package/src/core/cells/coreCellsFeature.utils.ts +30 -0
  447. package/src/core/columns/constructColumn.ts +11 -3
  448. package/src/core/columns/coreColumnsFeature.ts +10 -0
  449. package/src/core/columns/coreColumnsFeature.types.ts +4 -0
  450. package/src/core/columns/coreColumnsFeature.utils.ts +113 -8
  451. package/src/core/coreFeatures.ts +5 -0
  452. package/src/core/headers/buildHeaderGroups.ts +36 -31
  453. package/src/core/headers/constructHeader.ts +8 -2
  454. package/src/core/headers/coreHeadersFeature.ts +7 -27
  455. package/src/core/headers/coreHeadersFeature.utils.ts +110 -46
  456. package/src/core/reactivity/coreReactivityFeature.types.ts +4 -0
  457. package/src/core/reactivity/coreReactivityFeature.utils.ts +15 -0
  458. package/src/core/row-models/coreRowModelsFeature.ts +5 -0
  459. package/src/core/row-models/coreRowModelsFeature.types.ts +2 -1
  460. package/src/core/row-models/coreRowModelsFeature.utils.ts +120 -0
  461. package/src/core/row-models/createCoreRowModel.ts +5 -0
  462. package/src/core/rows/constructRow.ts +11 -4
  463. package/src/core/rows/coreRowsFeature.ts +5 -0
  464. package/src/core/rows/coreRowsFeature.types.ts +3 -0
  465. package/src/core/rows/coreRowsFeature.utils.ts +116 -10
  466. package/src/core/table/constructTable.ts +16 -4
  467. package/src/core/table/coreTablesFeature.ts +5 -0
  468. package/src/core/table/coreTablesFeature.types.ts +22 -12
  469. package/src/core/table/coreTablesFeature.utils.ts +47 -1
  470. package/src/features/column-faceting/columnFacetingFeature.ts +9 -1
  471. package/src/features/column-faceting/columnFacetingFeature.types.ts +12 -6
  472. package/src/features/column-faceting/columnFacetingFeature.utils.ts +60 -0
  473. package/src/features/column-faceting/createFacetedMinMaxValues.ts +13 -10
  474. package/src/features/column-faceting/createFacetedRowModel.ts +15 -6
  475. package/src/features/column-faceting/createFacetedUniqueValues.ts +9 -3
  476. package/src/features/column-filtering/columnFilteringFeature.ts +10 -2
  477. package/src/features/column-filtering/columnFilteringFeature.types.ts +7 -4
  478. package/src/features/column-filtering/columnFilteringFeature.utils.ts +113 -2
  479. package/src/features/column-filtering/createFilteredRowModel.ts +19 -8
  480. package/src/features/column-filtering/filterRowsUtils.ts +5 -0
  481. package/src/features/column-grouping/columnGroupingFeature.ts +9 -1
  482. package/src/features/column-grouping/columnGroupingFeature.types.ts +7 -3
  483. package/src/features/column-grouping/columnGroupingFeature.utils.ts +151 -0
  484. package/src/features/column-grouping/createGroupedRowModel.ts +5 -0
  485. package/src/features/column-ordering/columnOrderingFeature.ts +10 -1
  486. package/src/features/column-ordering/columnOrderingFeature.types.ts +4 -2
  487. package/src/features/column-ordering/columnOrderingFeature.utils.ts +117 -17
  488. package/src/features/column-pinning/columnPinningFeature.ts +11 -12
  489. package/src/features/column-pinning/columnPinningFeature.types.ts +6 -2
  490. package/src/features/column-pinning/columnPinningFeature.utils.ts +425 -76
  491. package/src/features/column-resizing/columnResizingFeature.ts +9 -2
  492. package/src/features/column-resizing/columnResizingFeature.types.ts +14 -6
  493. package/src/features/column-resizing/columnResizingFeature.utils.ts +81 -0
  494. package/src/features/column-sizing/columnSizingFeature.ts +54 -18
  495. package/src/features/column-sizing/columnSizingFeature.types.ts +6 -3
  496. package/src/features/column-sizing/columnSizingFeature.utils.ts +168 -9
  497. package/src/features/column-visibility/columnVisibilityFeature.ts +20 -18
  498. package/src/features/column-visibility/columnVisibilityFeature.types.ts +11 -3
  499. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +213 -24
  500. package/src/features/global-filtering/globalFilteringFeature.ts +9 -2
  501. package/src/features/global-filtering/globalFilteringFeature.types.ts +4 -2
  502. package/src/features/global-filtering/globalFilteringFeature.utils.ts +51 -0
  503. package/src/features/row-expanding/createExpandedRowModel.ts +10 -0
  504. package/src/features/row-expanding/rowExpandingFeature.ts +9 -1
  505. package/src/features/row-expanding/rowExpandingFeature.types.ts +10 -5
  506. package/src/features/row-expanding/rowExpandingFeature.utils.ts +153 -2
  507. package/src/features/row-pagination/createPaginatedRowModel.ts +5 -0
  508. package/src/features/row-pagination/rowPaginationFeature.ts +9 -1
  509. package/src/features/row-pagination/rowPaginationFeature.types.ts +11 -7
  510. package/src/features/row-pagination/rowPaginationFeature.utils.ts +175 -0
  511. package/src/features/row-pinning/rowPinningFeature.ts +9 -1
  512. package/src/features/row-pinning/rowPinningFeature.types.ts +4 -2
  513. package/src/features/row-pinning/rowPinningFeature.utils.ts +132 -18
  514. package/src/features/row-selection/rowSelectionFeature.ts +9 -1
  515. package/src/features/row-selection/rowSelectionFeature.types.ts +4 -2
  516. package/src/features/row-selection/rowSelectionFeature.utils.ts +279 -19
  517. package/src/features/row-sorting/createSortedRowModel.ts +21 -13
  518. package/src/features/row-sorting/rowSortingFeature.ts +11 -3
  519. package/src/features/row-sorting/rowSortingFeature.types.ts +7 -3
  520. package/src/features/row-sorting/rowSortingFeature.utils.ts +153 -2
  521. package/src/features/stockFeatures.ts +5 -0
  522. package/src/flex-render.ts +10 -0
  523. package/src/fns/aggregationFns.ts +25 -8
  524. package/src/fns/filterFns.ts +5 -0
  525. package/src/fns/sortFns.ts +50 -5
  526. package/src/helpers/tableOptions.ts +32 -0
  527. package/src/store-reactivity-bindings.ts +1 -0
  528. package/src/utils.ts +52 -34
@@ -12,10 +12,30 @@ import type {
12
12
 
13
13
  // State Utils
14
14
 
15
+ /**
16
+ * Returns the default sorting state.
17
+ *
18
+ * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * const initialValue = getDefaultSortingState()
23
+ * ```
24
+ */
15
25
  export function getDefaultSortingState(): SortingState {
16
26
  return []
17
27
  }
18
28
 
29
+ /**
30
+ * Updates the table's sorting state slice.
31
+ *
32
+ * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
33
+ *
34
+ * @example
35
+ * ```ts
36
+ * table_setSorting(table, (old) => old)
37
+ * ```
38
+ */
19
39
  export function table_setSorting<
20
40
  TFeatures extends TableFeatures,
21
41
  TData extends RowData,
@@ -23,6 +43,17 @@ export function table_setSorting<
23
43
  table.options.onSortingChange?.(updater)
24
44
  }
25
45
 
46
+ /**
47
+ * Resets the table's sorting state slice.
48
+ *
49
+ * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
50
+ *
51
+ * @example
52
+ * ```ts
53
+ * table_resetSorting(table)
54
+ * table_resetSorting(table, true)
55
+ * ```
56
+ */
26
57
  export function table_resetSorting<
27
58
  TFeatures extends TableFeatures,
28
59
  TData extends RowData,
@@ -35,6 +66,16 @@ export function table_resetSorting<
35
66
 
36
67
  // Column Utils
37
68
 
69
+ /**
70
+ * Infers sort fn for a column.
71
+ *
72
+ * The inference uses the column definition, table options, and sampled row values when needed.
73
+ *
74
+ * @example
75
+ * ```ts
76
+ * const value = column_getAutoSortFn(column)
77
+ * ```
78
+ */
38
79
  export function column_getAutoSortFn<
39
80
  TFeatures extends TableFeatures,
40
81
  TData extends RowData,
@@ -49,8 +90,8 @@ export function column_getAutoSortFn<
49
90
 
50
91
  let isString = false
51
92
 
52
- for (const row of firstRows) {
53
- const value = row.getValue(column.id)
93
+ for (let i = 0; i < firstRows.length; i++) {
94
+ const value = firstRows[i]!.getValue(column.id)
54
95
 
55
96
  if (Object.prototype.toString.call(value) === '[object Date]') {
56
97
  sortFn = sortFns?.datetime
@@ -72,6 +113,16 @@ export function column_getAutoSortFn<
72
113
  return sortFn ?? sortFn_basic
73
114
  }
74
115
 
116
+ /**
117
+ * Infers sort dir for a column.
118
+ *
119
+ * The inference uses the column definition, table options, and sampled row values when needed.
120
+ *
121
+ * @example
122
+ * ```ts
123
+ * const value = column_getAutoSortDir(column)
124
+ * ```
125
+ */
75
126
  export function column_getAutoSortDir<
76
127
  TFeatures extends TableFeatures,
77
128
  TData extends RowData,
@@ -88,6 +139,16 @@ export function column_getAutoSortDir<
88
139
  return 'desc'
89
140
  }
90
141
 
142
+ /**
143
+ * Returns sort fn for a column.
144
+ *
145
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
146
+ *
147
+ * @example
148
+ * ```ts
149
+ * const value = column_getSortFn(column)
150
+ * ```
151
+ */
91
152
  export function column_getSortFn<
92
153
  TFeatures extends TableFeatures,
93
154
  TData extends RowData,
@@ -103,6 +164,16 @@ export function column_getSortFn<
103
164
  : (sortFns?.[column.columnDef.sortFn as string] ?? sortFn_basic)
104
165
  }
105
166
 
167
+ /**
168
+ * Toggles sorting for a column.
169
+ *
170
+ * The update is applied through the owning table state slice and respects the feature options for that column.
171
+ *
172
+ * @example
173
+ * ```ts
174
+ * column_toggleSorting(column)
175
+ * ```
176
+ */
106
177
  export function column_toggleSorting<
107
178
  TFeatures extends TableFeatures,
108
179
  TData extends RowData,
@@ -206,6 +277,16 @@ export function column_toggleSorting<
206
277
  })
207
278
  }
208
279
 
280
+ /**
281
+ * Returns first sort dir for a column.
282
+ *
283
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
284
+ *
285
+ * @example
286
+ * ```ts
287
+ * const value = column_getFirstSortDir(column)
288
+ * ```
289
+ */
209
290
  export function column_getFirstSortDir<
210
291
  TFeatures extends TableFeatures,
211
292
  TData extends RowData,
@@ -218,6 +299,16 @@ export function column_getFirstSortDir<
218
299
  return sortDescFirst ? 'desc' : 'asc'
219
300
  }
220
301
 
302
+ /**
303
+ * Returns next sorting order for a column.
304
+ *
305
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
306
+ *
307
+ * @example
308
+ * ```ts
309
+ * const value = column_getNextSortingOrder(column)
310
+ * ```
311
+ */
221
312
  export function column_getNextSortingOrder<
222
313
  TFeatures extends TableFeatures,
223
314
  TData extends RowData,
@@ -240,6 +331,16 @@ export function column_getNextSortingOrder<
240
331
  return isSorted === 'desc' ? 'asc' : 'desc'
241
332
  }
242
333
 
334
+ /**
335
+ * Returns whether a column can use sort.
336
+ *
337
+ * This combines column options, table options, and any required accessor or feature state for the capability.
338
+ *
339
+ * @example
340
+ * ```ts
341
+ * const value = column_getCanSort(column)
342
+ * ```
343
+ */
243
344
  export function column_getCanSort<
244
345
  TFeatures extends TableFeatures,
245
346
  TData extends RowData,
@@ -252,6 +353,16 @@ export function column_getCanSort<
252
353
  )
253
354
  }
254
355
 
356
+ /**
357
+ * Returns whether a column can use multi sort.
358
+ *
359
+ * This combines column options, table options, and any required accessor or feature state for the capability.
360
+ *
361
+ * @example
362
+ * ```ts
363
+ * const value = column_getCanMultiSort(column)
364
+ * ```
365
+ */
255
366
  export function column_getCanMultiSort<
256
367
  TFeatures extends TableFeatures,
257
368
  TData extends RowData,
@@ -264,6 +375,16 @@ export function column_getCanMultiSort<
264
375
  )
265
376
  }
266
377
 
378
+ /**
379
+ * Returns is sorted for a column.
380
+ *
381
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
382
+ *
383
+ * @example
384
+ * ```ts
385
+ * const value = column_getIsSorted(column)
386
+ * ```
387
+ */
267
388
  export function column_getIsSorted<
268
389
  TFeatures extends TableFeatures,
269
390
  TData extends RowData,
@@ -275,6 +396,16 @@ export function column_getIsSorted<
275
396
  return !columnSort ? false : columnSort.desc ? 'desc' : 'asc'
276
397
  }
277
398
 
399
+ /**
400
+ * Returns sort index for a column.
401
+ *
402
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
403
+ *
404
+ * @example
405
+ * ```ts
406
+ * const value = column_getSortIndex(column)
407
+ * ```
408
+ */
278
409
  export function column_getSortIndex<
279
410
  TFeatures extends TableFeatures,
280
411
  TData extends RowData,
@@ -286,6 +417,16 @@ export function column_getSortIndex<
286
417
  )
287
418
  }
288
419
 
420
+ /**
421
+ * Clear Sorting. for a column.
422
+ *
423
+ * This is the static implementation behind the matching column instance API.
424
+ *
425
+ * @example
426
+ * ```ts
427
+ * const value = column_clearSorting(column)
428
+ * ```
429
+ */
289
430
  export function column_clearSorting<
290
431
  TFeatures extends TableFeatures,
291
432
  TData extends RowData,
@@ -297,6 +438,16 @@ export function column_clearSorting<
297
438
  )
298
439
  }
299
440
 
441
+ /**
442
+ * Returns an event handler for toggling sorting handler.
443
+ *
444
+ * The handler is intended for direct use in column header controls such as buttons or checkboxes.
445
+ *
446
+ * @example
447
+ * ```ts
448
+ * const value = column_getToggleSortingHandler(column)
449
+ * ```
450
+ */
300
451
  export function column_getToggleSortingHandler<
301
452
  TFeatures extends TableFeatures,
302
453
  TData extends RowData,
@@ -30,6 +30,11 @@ export interface StockFeatures {
30
30
  rowSortingFeature: typeof rowSortingFeature
31
31
  }
32
32
 
33
+ /**
34
+ * The complete set of stock optional table features.
35
+ *
36
+ * Use individual feature exports for tree-shaking, or this aggregate when a table should include every built-in feature.
37
+ */
33
38
  export const stockFeatures: StockFeatures = {
34
39
  columnFacetingFeature,
35
40
  columnFilteringFeature,
@@ -3,6 +3,11 @@ import type { Header } from './types/Header'
3
3
  import type { TableFeatures } from './types/TableFeatures'
4
4
  import type { CellData, RowData } from './types/type-utils'
5
5
 
6
+ /**
7
+ * Renders a static value or render function with the provided props.
8
+ *
9
+ * Framework adapters use this helper to support column definitions that contain either plain values or template functions.
10
+ */
6
11
  export function flexRender<TProps extends object>(
7
12
  comp: unknown,
8
13
  props: TProps,
@@ -33,6 +38,11 @@ export type FlexRenderProps<
33
38
  header?: never
34
39
  }
35
40
 
41
+ /**
42
+ * Renders a static value or render function with the provided props.
43
+ *
44
+ * Framework adapters use this helper to support column definitions that contain either plain values or template functions.
45
+ */
36
46
  export function FlexRender<
37
47
  TFeatures extends TableFeatures,
38
48
  TData extends RowData,
@@ -1,4 +1,3 @@
1
- import { isNumberArray } from '../utils'
2
1
  import type { RowData } from '../types/type-utils'
3
2
  import type { TableFeatures } from '../types/TableFeatures'
4
3
  import type { Row } from '../types/Row'
@@ -153,17 +152,22 @@ export const aggregationFn_median: AggregationFn<any, any> = <
153
152
  return
154
153
  }
155
154
 
156
- const values = leafRows.map((row) => row.getValue(columnId))
157
- if (!isNumberArray(values)) {
158
- return
155
+ const values: Array<number> = new Array(leafRows.length)
156
+ for (let i = 0; i < leafRows.length; i++) {
157
+ const v = leafRows[i]!.getValue(columnId)
158
+ if (typeof v !== 'number') return
159
+ values[i] = v
159
160
  }
161
+
160
162
  if (values.length === 1) {
161
163
  return values[0]
162
164
  }
163
165
 
164
166
  const mid = Math.floor(values.length / 2)
165
- const nums = values.sort((a, b) => a - b)
166
- return values.length % 2 !== 0 ? nums[mid] : (nums[mid - 1]! + nums[mid]!) / 2
167
+ values.sort((a, b) => a - b)
168
+ return values.length % 2 !== 0
169
+ ? values[mid]
170
+ : (values[mid - 1]! + values[mid]!) / 2
167
171
  }
168
172
 
169
173
  /**
@@ -176,7 +180,11 @@ export const aggregationFn_unique: AggregationFn<any, any> = <
176
180
  columnId: string,
177
181
  leafRows: Array<Row<any, any>>,
178
182
  ) => {
179
- return Array.from(new Set(leafRows.map((d) => d.getValue(columnId))).values())
183
+ const set = new Set<unknown>()
184
+ for (let i = 0; i < leafRows.length; i++) {
185
+ set.add(leafRows[i]!.getValue(columnId))
186
+ }
187
+ return Array.from(set.values())
180
188
  }
181
189
 
182
190
  /**
@@ -189,7 +197,11 @@ export const aggregationFn_uniqueCount: AggregationFn<any, any> = <
189
197
  columnId: string,
190
198
  leafRows: Array<Row<any, any>>,
191
199
  ) => {
192
- return new Set(leafRows.map((d) => d.getValue(columnId))).size
200
+ const set = new Set<unknown>()
201
+ for (let i = 0; i < leafRows.length; i++) {
202
+ set.add(leafRows[i]!.getValue(columnId))
203
+ }
204
+ return set.size
193
205
  }
194
206
 
195
207
  /**
@@ -205,6 +217,11 @@ export const aggregationFn_count: AggregationFn<any, any> = <
205
217
  return leafRows.length
206
218
  }
207
219
 
220
+ /**
221
+ * The built-in aggregation function registry.
222
+ *
223
+ * Pass this object to grouped row model creation or extend it with custom aggregation functions for grouped columns.
224
+ */
208
225
  export const aggregationFns = {
209
226
  sum: aggregationFn_sum,
210
227
  min: aggregationFn_min,
@@ -355,6 +355,11 @@ filterFn_arrIncludesSome.autoRemove = (val: any) =>
355
355
 
356
356
  // Export
357
357
 
358
+ /**
359
+ * The built-in filter function registry.
360
+ *
361
+ * Pass this object to filtered row model creation or extend it with custom filter functions.
362
+ */
358
363
  export const filterFns = {
359
364
  arrIncludes: filterFn_arrIncludes,
360
365
  arrIncludesAll: filterFn_arrIncludesAll,
@@ -3,8 +3,19 @@ import type { TableFeatures } from '../types/TableFeatures'
3
3
  import type { Row } from '../types/Row'
4
4
  import type { SortFn } from '../features/row-sorting/rowSortingFeature.types'
5
5
 
6
+ /**
7
+ * Regular expression used to split mixed text and numeric chunks.
8
+ *
9
+ * The alphanumeric sort functions use these chunks for natural sorting of
10
+ * strings like `item2` before `item10`.
11
+ */
6
12
  export const reSplitAlphaNumeric = /([0-9]+)/gm
7
13
 
14
+ /**
15
+ * Sorts rows with the built-in alphanumeric strategy.
16
+ *
17
+ * This comparator returns ascending-order results; descending order is applied by the sorting row model.
18
+ */
8
19
  export const sortFn_alphanumeric: SortFn<any, any> = <
9
20
  TFeatures extends TableFeatures,
10
21
  TData extends RowData,
@@ -19,6 +30,11 @@ export const sortFn_alphanumeric: SortFn<any, any> = <
19
30
  )
20
31
  }
21
32
 
33
+ /**
34
+ * Sorts rows with the built-in alphanumeric case sensitive strategy.
35
+ *
36
+ * This comparator returns ascending-order results; descending order is applied by the sorting row model.
37
+ */
22
38
  export const sortFn_alphanumericCaseSensitive: SortFn<any, any> = <
23
39
  TFeatures extends TableFeatures,
24
40
  TData extends RowData,
@@ -35,6 +51,11 @@ export const sortFn_alphanumericCaseSensitive: SortFn<any, any> = <
35
51
 
36
52
  // The text filter is more basic (less numeric support)
37
53
  // but is much faster
54
+ /**
55
+ * Sorts rows with the built-in text strategy.
56
+ *
57
+ * This comparator returns ascending-order results; descending order is applied by the sorting row model.
58
+ */
38
59
  export const sortFn_text: SortFn<any, any> = <
39
60
  TFeatures extends TableFeatures,
40
61
  TData extends RowData,
@@ -51,6 +72,11 @@ export const sortFn_text: SortFn<any, any> = <
51
72
 
52
73
  // The text filter is more basic (less numeric support)
53
74
  // but is much faster
75
+ /**
76
+ * Sorts rows with the built-in text case sensitive strategy.
77
+ *
78
+ * This comparator returns ascending-order results; descending order is applied by the sorting row model.
79
+ */
54
80
  export const sortFn_textCaseSensitive: SortFn<any, any> = <
55
81
  TFeatures extends TableFeatures,
56
82
  TData extends RowData,
@@ -65,6 +91,11 @@ export const sortFn_textCaseSensitive: SortFn<any, any> = <
65
91
  )
66
92
  }
67
93
 
94
+ /**
95
+ * Sorts rows with the built-in datetime strategy.
96
+ *
97
+ * This comparator returns ascending-order results; descending order is applied by the sorting row model.
98
+ */
68
99
  export const sortFn_datetime: SortFn<any, any> = <
69
100
  TFeatures extends TableFeatures,
70
101
  TData extends RowData,
@@ -82,6 +113,11 @@ export const sortFn_datetime: SortFn<any, any> = <
82
113
  return a > b ? 1 : a < b ? -1 : 0
83
114
  }
84
115
 
116
+ /**
117
+ * Sorts rows with the built-in basic strategy.
118
+ *
119
+ * This comparator returns ascending-order results; descending order is applied by the sorting row model.
120
+ */
85
121
  export const sortFn_basic: SortFn<any, any> = <
86
122
  TFeatures extends TableFeatures,
87
123
  TData extends RowData,
@@ -121,10 +157,14 @@ function compareAlphanumeric(aStr: string, bStr: string) {
121
157
  const a = aStr.split(reSplitAlphaNumeric).filter(Boolean)
122
158
  const b = bStr.split(reSplitAlphaNumeric).filter(Boolean)
123
159
 
124
- // While
125
- while (a.length && b.length) {
126
- const aa = a.shift()!
127
- const bb = b.shift()!
160
+ let ai = 0
161
+ let bi = 0
162
+ const aLen = a.length
163
+ const bLen = b.length
164
+
165
+ while (ai < aLen && bi < bLen) {
166
+ const aa = a[ai++]!
167
+ const bb = b[bi++]!
128
168
 
129
169
  const an = parseInt(aa, 10)
130
170
  const bn = parseInt(bb, 10)
@@ -156,11 +196,16 @@ function compareAlphanumeric(aStr: string, bStr: string) {
156
196
  }
157
197
  }
158
198
 
159
- return a.length - b.length
199
+ return aLen - ai - (bLen - bi)
160
200
  }
161
201
 
162
202
  // Exports
163
203
 
204
+ /**
205
+ * The built-in sorting function registry.
206
+ *
207
+ * Pass this object to sorted row model creation or extend it with custom sorting functions.
208
+ */
164
209
  export const sortFns = {
165
210
  alphanumeric: sortFn_alphanumeric,
166
211
  alphanumericCaseSensitive: sortFn_alphanumericCaseSensitive,
@@ -2,6 +2,11 @@ import type { RowData } from '../types/type-utils'
2
2
  import type { TableFeatures } from '../types/TableFeatures'
3
3
  import type { TableOptions } from '../types/TableOptions'
4
4
 
5
+ /**
6
+ * Returns table options while preserving generic inference.
7
+ *
8
+ * This helper is useful when composing reusable table options outside of a framework adapter call.
9
+ */
5
10
  export function tableOptions<
6
11
  TFeatures extends TableFeatures,
7
12
  TData extends RowData = any,
@@ -13,6 +18,9 @@ export function tableOptions<
13
18
  _features: TFeatures
14
19
  }
15
20
 
21
+ /**
22
+ * Returns table options while preserving generic inference when `data` is supplied later.
23
+ */
16
24
  export function tableOptions<
17
25
  TFeatures extends TableFeatures,
18
26
  TData extends RowData = any,
@@ -24,6 +32,9 @@ export function tableOptions<
24
32
  _features: TFeatures
25
33
  }
26
34
 
35
+ /**
36
+ * Returns table options while preserving generic inference when both `data` and `columns` are supplied later.
37
+ */
27
38
  export function tableOptions<
28
39
  TFeatures extends TableFeatures,
29
40
  TData extends RowData = any,
@@ -35,11 +46,17 @@ export function tableOptions<
35
46
  _features: TFeatures
36
47
  }
37
48
 
49
+ /**
50
+ * Returns a fully specified table options object without changing its runtime value.
51
+ */
38
52
  export function tableOptions<
39
53
  TFeatures extends TableFeatures,
40
54
  TData extends RowData = any,
41
55
  >(options: TableOptions<TFeatures, TData>): TableOptions<TFeatures, TData>
42
56
 
57
+ /**
58
+ * Returns table options while preserving generic inference when `_features` is supplied by a wrapper.
59
+ */
43
60
  export function tableOptions<
44
61
  TFeatures extends TableFeatures,
45
62
  TData extends RowData = any,
@@ -47,6 +64,9 @@ export function tableOptions<
47
64
  options: Omit<TableOptions<TFeatures, TData>, '_features'>,
48
65
  ): Omit<TableOptions<TFeatures, TData>, '_features'>
49
66
 
67
+ /**
68
+ * Returns table options while preserving generic inference when `data` and `_features` are supplied by a wrapper.
69
+ */
50
70
  export function tableOptions<
51
71
  TFeatures extends TableFeatures,
52
72
  TData extends RowData = any,
@@ -54,6 +74,9 @@ export function tableOptions<
54
74
  options: Omit<TableOptions<TFeatures, TData>, 'data' | '_features'>,
55
75
  ): Omit<TableOptions<TFeatures, TData>, 'data' | '_features'>
56
76
 
77
+ /**
78
+ * Returns table options while preserving generic inference when `columns` and `_features` are supplied by a wrapper.
79
+ */
57
80
  export function tableOptions<
58
81
  TFeatures extends TableFeatures,
59
82
  TData extends RowData = any,
@@ -61,6 +84,9 @@ export function tableOptions<
61
84
  options: Omit<TableOptions<TFeatures, TData>, 'columns' | '_features'>,
62
85
  ): Omit<TableOptions<TFeatures, TData>, 'columns' | '_features'>
63
86
 
87
+ /**
88
+ * Returns table options while preserving generic inference when `data`, `columns`, and `_features` are supplied by a wrapper.
89
+ */
64
90
  export function tableOptions<
65
91
  TFeatures extends TableFeatures,
66
92
  TData extends RowData = any,
@@ -71,6 +97,12 @@ export function tableOptions<
71
97
  >,
72
98
  ): Omit<TableOptions<TFeatures, TData>, 'data' | 'columns' | '_features'>
73
99
 
100
+ /**
101
+ * Runtime implementation for `tableOptions`.
102
+ *
103
+ * The helper returns the same object it receives; all value comes from the
104
+ * overloads preserving table option inference at compile time.
105
+ */
74
106
  export function tableOptions(options: unknown) {
75
107
  return options
76
108
  }
@@ -20,6 +20,7 @@ export function storeReactivityBindings(): TableReactivityBindings {
20
20
  return {
21
21
  createOptionsStore: true,
22
22
  batch,
23
+ schedule: (fn) => queueMicrotask(fn),
23
24
  untrack: (fn) => fn(),
24
25
  createReadonlyAtom: (fn, options) => {
25
26
  return createAtom(() => fn(), {