@tanstack/table-core 9.0.0-alpha.8 → 9.0.0-beta.10

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 (862) hide show
  1. package/README.md +127 -0
  2. package/dist/core/cells/constructCell.cjs +34 -0
  3. package/dist/core/cells/constructCell.cjs.map +1 -0
  4. package/dist/core/cells/constructCell.d.cts +17 -0
  5. package/dist/core/cells/constructCell.d.ts +17 -0
  6. package/dist/core/cells/constructCell.js +33 -0
  7. package/dist/core/cells/constructCell.js.map +1 -0
  8. package/dist/core/cells/coreCellsFeature.cjs +21 -0
  9. package/dist/core/cells/coreCellsFeature.cjs.map +1 -0
  10. package/dist/core/cells/coreCellsFeature.d.cts +10 -0
  11. package/dist/core/cells/coreCellsFeature.d.ts +10 -0
  12. package/dist/core/cells/coreCellsFeature.js +21 -0
  13. package/dist/core/cells/coreCellsFeature.js.map +1 -0
  14. package/dist/core/cells/coreCellsFeature.types.d.cts +57 -0
  15. package/dist/core/cells/coreCellsFeature.types.d.ts +57 -0
  16. package/dist/core/cells/coreCellsFeature.utils.cjs +57 -0
  17. package/dist/core/cells/coreCellsFeature.utils.cjs.map +1 -0
  18. package/dist/core/cells/coreCellsFeature.utils.d.cts +53 -0
  19. package/dist/core/cells/coreCellsFeature.utils.d.ts +53 -0
  20. package/dist/core/cells/coreCellsFeature.utils.js +54 -0
  21. package/dist/core/cells/coreCellsFeature.utils.js.map +1 -0
  22. package/dist/core/columns/constructColumn.cjs +61 -0
  23. package/dist/core/columns/constructColumn.cjs.map +1 -0
  24. package/dist/core/columns/constructColumn.d.cts +16 -0
  25. package/dist/core/columns/constructColumn.d.ts +16 -0
  26. package/dist/core/columns/constructColumn.js +60 -0
  27. package/dist/core/columns/constructColumn.js.map +1 -0
  28. package/dist/core/columns/coreColumnsFeature.cjs +70 -0
  29. package/dist/core/columns/coreColumnsFeature.cjs.map +1 -0
  30. package/dist/core/columns/coreColumnsFeature.d.cts +10 -0
  31. package/dist/core/columns/coreColumnsFeature.d.ts +10 -0
  32. package/dist/core/columns/coreColumnsFeature.js +70 -0
  33. package/dist/core/columns/coreColumnsFeature.js.map +1 -0
  34. package/dist/core/columns/coreColumnsFeature.types.d.cts +94 -0
  35. package/dist/core/columns/coreColumnsFeature.types.d.ts +94 -0
  36. package/dist/core/columns/coreColumnsFeature.utils.cjs +187 -0
  37. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -0
  38. package/dist/core/columns/coreColumnsFeature.utils.d.cts +119 -0
  39. package/dist/core/columns/coreColumnsFeature.utils.d.ts +119 -0
  40. package/dist/core/columns/coreColumnsFeature.utils.js +179 -0
  41. package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -0
  42. package/dist/core/coreFeatures.cjs +25 -0
  43. package/dist/core/coreFeatures.cjs.map +1 -0
  44. package/dist/core/coreFeatures.d.cts +26 -0
  45. package/dist/core/coreFeatures.d.ts +26 -0
  46. package/dist/core/coreFeatures.js +25 -0
  47. package/dist/core/coreFeatures.js.map +1 -0
  48. package/dist/core/headers/buildHeaderGroups.cjs +103 -0
  49. package/dist/core/headers/buildHeaderGroups.cjs.map +1 -0
  50. package/dist/core/headers/buildHeaderGroups.d.cts +16 -0
  51. package/dist/core/headers/buildHeaderGroups.d.ts +16 -0
  52. package/dist/core/headers/buildHeaderGroups.js +103 -0
  53. package/dist/core/headers/buildHeaderGroups.js.map +1 -0
  54. package/dist/core/headers/constructHeader.cjs +41 -0
  55. package/dist/core/headers/constructHeader.cjs.map +1 -0
  56. package/dist/core/headers/constructHeader.d.cts +22 -0
  57. package/dist/core/headers/constructHeader.d.ts +22 -0
  58. package/dist/core/headers/constructHeader.js +40 -0
  59. package/dist/core/headers/constructHeader.js.map +1 -0
  60. package/dist/core/headers/coreHeadersFeature.cjs +55 -0
  61. package/dist/core/headers/coreHeadersFeature.cjs.map +1 -0
  62. package/dist/core/headers/coreHeadersFeature.d.cts +10 -0
  63. package/dist/core/headers/coreHeadersFeature.d.ts +10 -0
  64. package/dist/core/headers/coreHeadersFeature.js +55 -0
  65. package/dist/core/headers/coreHeadersFeature.js.map +1 -0
  66. package/dist/core/headers/coreHeadersFeature.types.d.cts +106 -0
  67. package/dist/core/headers/coreHeadersFeature.types.d.ts +106 -0
  68. package/dist/core/headers/coreHeadersFeature.utils.cjs +142 -0
  69. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -0
  70. package/dist/core/headers/coreHeadersFeature.utils.d.cts +85 -0
  71. package/dist/core/headers/coreHeadersFeature.utils.d.ts +85 -0
  72. package/dist/core/headers/coreHeadersFeature.utils.js +137 -0
  73. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -0
  74. package/dist/core/reactivity/coreReactivityFeature.types.d.cts +48 -0
  75. package/dist/core/reactivity/coreReactivityFeature.types.d.ts +48 -0
  76. package/dist/core/reactivity/coreReactivityFeature.utils.cjs +24 -0
  77. package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +1 -0
  78. package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +24 -0
  79. package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +24 -0
  80. package/dist/core/reactivity/coreReactivityFeature.utils.js +23 -0
  81. package/dist/core/reactivity/coreReactivityFeature.utils.js.map +1 -0
  82. package/dist/core/row-models/coreRowModelsFeature.cjs +27 -0
  83. package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -0
  84. package/dist/core/row-models/coreRowModelsFeature.d.cts +10 -0
  85. package/dist/core/row-models/coreRowModelsFeature.d.ts +10 -0
  86. package/dist/core/row-models/coreRowModelsFeature.js +27 -0
  87. package/dist/core/row-models/coreRowModelsFeature.js.map +1 -0
  88. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +33 -0
  89. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +33 -0
  90. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +215 -0
  91. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -0
  92. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +153 -0
  93. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +153 -0
  94. package/dist/core/row-models/coreRowModelsFeature.utils.js +204 -0
  95. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -0
  96. package/dist/core/row-models/createCoreRowModel.cjs +52 -0
  97. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -0
  98. package/dist/core/row-models/createCoreRowModel.d.cts +15 -0
  99. package/dist/core/row-models/createCoreRowModel.d.ts +15 -0
  100. package/dist/core/row-models/createCoreRowModel.js +52 -0
  101. package/dist/core/row-models/createCoreRowModel.js.map +1 -0
  102. package/dist/core/rows/constructRow.cjs +44 -0
  103. package/dist/core/rows/constructRow.cjs.map +1 -0
  104. package/dist/core/rows/constructRow.d.cts +15 -0
  105. package/dist/core/rows/constructRow.d.ts +15 -0
  106. package/dist/core/rows/constructRow.js +43 -0
  107. package/dist/core/rows/constructRow.js.map +1 -0
  108. package/dist/core/rows/coreRowsFeature.cjs +37 -0
  109. package/dist/core/rows/coreRowsFeature.cjs.map +1 -0
  110. package/dist/core/rows/coreRowsFeature.d.cts +10 -0
  111. package/dist/core/rows/coreRowsFeature.d.ts +10 -0
  112. package/dist/core/rows/coreRowsFeature.js +37 -0
  113. package/dist/core/rows/coreRowsFeature.js.map +1 -0
  114. package/dist/core/rows/coreRowsFeature.types.d.cts +99 -0
  115. package/dist/core/rows/coreRowsFeature.types.d.ts +99 -0
  116. package/dist/core/rows/coreRowsFeature.utils.cjs +192 -0
  117. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -0
  118. package/dist/core/rows/coreRowsFeature.utils.d.cts +127 -0
  119. package/dist/core/rows/coreRowsFeature.utils.d.ts +127 -0
  120. package/dist/core/rows/coreRowsFeature.utils.js +183 -0
  121. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -0
  122. package/dist/core/table/constructTable.cjs +133 -0
  123. package/dist/core/table/constructTable.cjs.map +1 -0
  124. package/dist/core/table/constructTable.d.cts +22 -0
  125. package/dist/core/table/constructTable.d.ts +22 -0
  126. package/dist/core/table/constructTable.js +132 -0
  127. package/dist/core/table/constructTable.js.map +1 -0
  128. package/dist/core/table/coreTablesFeature.cjs +17 -0
  129. package/dist/core/table/coreTablesFeature.cjs.map +1 -0
  130. package/dist/core/table/coreTablesFeature.d.cts +10 -0
  131. package/dist/core/table/coreTablesFeature.d.ts +10 -0
  132. package/dist/core/table/coreTablesFeature.js +17 -0
  133. package/dist/core/table/coreTablesFeature.js.map +1 -0
  134. package/dist/core/table/coreTablesFeature.types.d.cts +198 -0
  135. package/dist/core/table/coreTablesFeature.types.d.ts +198 -0
  136. package/dist/core/table/coreTablesFeature.utils.cjs +95 -0
  137. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -0
  138. package/dist/core/table/coreTablesFeature.utils.d.cts +57 -0
  139. package/dist/core/table/coreTablesFeature.utils.d.ts +57 -0
  140. package/dist/core/table/coreTablesFeature.utils.js +92 -0
  141. package/dist/core/table/coreTablesFeature.utils.js.map +1 -0
  142. package/dist/features/column-faceting/columnFacetingFeature.cjs +61 -0
  143. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -0
  144. package/dist/features/column-faceting/columnFacetingFeature.d.cts +10 -0
  145. package/dist/features/column-faceting/columnFacetingFeature.d.ts +10 -0
  146. package/dist/features/column-faceting/columnFacetingFeature.js +61 -0
  147. package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -0
  148. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +64 -0
  149. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +64 -0
  150. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +103 -0
  151. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -0
  152. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +84 -0
  153. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +84 -0
  154. package/dist/features/column-faceting/columnFacetingFeature.utils.js +97 -0
  155. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -0
  156. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +44 -0
  157. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -0
  158. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +14 -0
  159. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +14 -0
  160. package/dist/features/column-faceting/createFacetedMinMaxValues.js +44 -0
  161. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -0
  162. package/dist/features/column-faceting/createFacetedRowModel.cjs +50 -0
  163. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -0
  164. package/dist/features/column-faceting/createFacetedRowModel.d.cts +15 -0
  165. package/dist/features/column-faceting/createFacetedRowModel.d.ts +15 -0
  166. package/dist/features/column-faceting/createFacetedRowModel.js +50 -0
  167. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -0
  168. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +41 -0
  169. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -0
  170. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +14 -0
  171. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +14 -0
  172. package/dist/features/column-faceting/createFacetedUniqueValues.js +41 -0
  173. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -0
  174. package/dist/features/column-filtering/columnFilteringFeature.cjs +50 -0
  175. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -0
  176. package/dist/features/column-filtering/columnFilteringFeature.d.cts +10 -0
  177. package/dist/features/column-filtering/columnFilteringFeature.d.ts +10 -0
  178. package/dist/features/column-filtering/columnFilteringFeature.js +50 -0
  179. package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -0
  180. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +174 -0
  181. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +174 -0
  182. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +212 -0
  183. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -0
  184. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +143 -0
  185. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +143 -0
  186. package/dist/features/column-filtering/columnFilteringFeature.utils.js +202 -0
  187. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -0
  188. package/dist/features/column-filtering/createFilteredRowModel.cjs +112 -0
  189. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -0
  190. package/dist/features/column-filtering/createFilteredRowModel.d.cts +18 -0
  191. package/dist/features/column-filtering/createFilteredRowModel.d.ts +18 -0
  192. package/dist/features/column-filtering/createFilteredRowModel.js +112 -0
  193. package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -0
  194. package/dist/features/column-filtering/filterRowsUtils.cjs +81 -0
  195. package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -0
  196. package/dist/features/column-filtering/filterRowsUtils.js +81 -0
  197. package/dist/features/column-filtering/filterRowsUtils.js.map +1 -0
  198. package/dist/features/column-grouping/columnGroupingFeature.cjs +67 -0
  199. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -0
  200. package/dist/features/column-grouping/columnGroupingFeature.d.cts +10 -0
  201. package/dist/features/column-grouping/columnGroupingFeature.d.ts +10 -0
  202. package/dist/features/column-grouping/columnGroupingFeature.js +67 -0
  203. package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -0
  204. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +169 -0
  205. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +169 -0
  206. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +250 -0
  207. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -0
  208. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +190 -0
  209. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +190 -0
  210. package/dist/features/column-grouping/columnGroupingFeature.utils.js +236 -0
  211. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -0
  212. package/dist/features/column-grouping/createGroupedRowModel.cjs +122 -0
  213. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -0
  214. package/dist/features/column-grouping/createGroupedRowModel.d.cts +19 -0
  215. package/dist/features/column-grouping/createGroupedRowModel.d.ts +19 -0
  216. package/dist/features/column-grouping/createGroupedRowModel.js +122 -0
  217. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -0
  218. package/dist/features/column-ordering/columnOrderingFeature.cjs +58 -0
  219. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -0
  220. package/dist/features/column-ordering/columnOrderingFeature.d.cts +10 -0
  221. package/dist/features/column-ordering/columnOrderingFeature.d.ts +10 -0
  222. package/dist/features/column-ordering/columnOrderingFeature.js +58 -0
  223. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -0
  224. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +56 -0
  225. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +56 -0
  226. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +172 -0
  227. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -0
  228. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +107 -0
  229. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +107 -0
  230. package/dist/features/column-ordering/columnOrderingFeature.utils.js +165 -0
  231. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -0
  232. package/dist/features/column-pinning/columnPinningFeature.cjs +221 -0
  233. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -0
  234. package/dist/features/column-pinning/columnPinningFeature.d.cts +10 -0
  235. package/dist/features/column-pinning/columnPinningFeature.d.ts +10 -0
  236. package/dist/features/column-pinning/columnPinningFeature.js +221 -0
  237. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -0
  238. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +178 -0
  239. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +178 -0
  240. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +585 -0
  241. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -0
  242. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +375 -0
  243. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +375 -0
  244. package/dist/features/column-pinning/columnPinningFeature.utils.js +555 -0
  245. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -0
  246. package/dist/features/column-resizing/columnResizingFeature.cjs +41 -0
  247. package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -0
  248. package/dist/features/column-resizing/columnResizingFeature.d.cts +10 -0
  249. package/dist/features/column-resizing/columnResizingFeature.d.ts +10 -0
  250. package/dist/features/column-resizing/columnResizingFeature.js +41 -0
  251. package/dist/features/column-resizing/columnResizingFeature.js.map +1 -0
  252. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +81 -0
  253. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +81 -0
  254. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +246 -0
  255. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -0
  256. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +109 -0
  257. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +109 -0
  258. package/dist/features/column-resizing/columnResizingFeature.utils.js +239 -0
  259. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -0
  260. package/dist/features/column-sizing/columnSizingFeature.cjs +124 -0
  261. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -0
  262. package/dist/features/column-sizing/columnSizingFeature.d.cts +10 -0
  263. package/dist/features/column-sizing/columnSizingFeature.d.ts +10 -0
  264. package/dist/features/column-sizing/columnSizingFeature.js +124 -0
  265. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -0
  266. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +96 -0
  267. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +96 -0
  268. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +256 -0
  269. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -0
  270. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +182 -0
  271. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +182 -0
  272. package/dist/features/column-sizing/columnSizingFeature.utils.js +243 -0
  273. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -0
  274. package/dist/features/column-visibility/columnVisibilityFeature.cjs +94 -0
  275. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -0
  276. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +10 -0
  277. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +10 -0
  278. package/dist/features/column-visibility/columnVisibilityFeature.js +94 -0
  279. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -0
  280. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +97 -0
  281. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +97 -0
  282. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +283 -0
  283. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -0
  284. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +189 -0
  285. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +189 -0
  286. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +269 -0
  287. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -0
  288. package/dist/features/global-filtering/globalFilteringFeature.cjs +41 -0
  289. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -0
  290. package/dist/features/global-filtering/globalFilteringFeature.d.cts +10 -0
  291. package/dist/features/global-filtering/globalFilteringFeature.d.ts +10 -0
  292. package/dist/features/global-filtering/globalFilteringFeature.js +41 -0
  293. package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -0
  294. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +71 -0
  295. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +71 -0
  296. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +88 -0
  297. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -0
  298. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +74 -0
  299. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +74 -0
  300. package/dist/features/global-filtering/globalFilteringFeature.utils.js +84 -0
  301. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -0
  302. package/dist/features/row-expanding/createExpandedRowModel.cjs +59 -0
  303. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -0
  304. package/dist/features/row-expanding/createExpandedRowModel.d.cts +21 -0
  305. package/dist/features/row-expanding/createExpandedRowModel.d.ts +21 -0
  306. package/dist/features/row-expanding/createExpandedRowModel.js +58 -0
  307. package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -0
  308. package/dist/features/row-expanding/rowExpandingFeature.cjs +47 -0
  309. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -0
  310. package/dist/features/row-expanding/rowExpandingFeature.d.cts +10 -0
  311. package/dist/features/row-expanding/rowExpandingFeature.d.ts +10 -0
  312. package/dist/features/row-expanding/rowExpandingFeature.js +47 -0
  313. package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -0
  314. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +118 -0
  315. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +118 -0
  316. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +281 -0
  317. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -0
  318. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +191 -0
  319. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +191 -0
  320. package/dist/features/row-expanding/rowExpandingFeature.utils.js +267 -0
  321. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -0
  322. package/dist/features/row-pagination/createPaginatedRowModel.cjs +62 -0
  323. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -0
  324. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +15 -0
  325. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +15 -0
  326. package/dist/features/row-pagination/createPaginatedRowModel.js +62 -0
  327. package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -0
  328. package/dist/features/row-pagination/rowPaginationFeature.cjs +45 -0
  329. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -0
  330. package/dist/features/row-pagination/rowPaginationFeature.d.cts +10 -0
  331. package/dist/features/row-pagination/rowPaginationFeature.d.ts +10 -0
  332. package/dist/features/row-pagination/rowPaginationFeature.js +45 -0
  333. package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -0
  334. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +126 -0
  335. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +126 -0
  336. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +312 -0
  337. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -0
  338. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +218 -0
  339. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +218 -0
  340. package/dist/features/row-pagination/rowPaginationFeature.utils.js +296 -0
  341. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -0
  342. package/dist/features/row-pinning/rowPinningFeature.cjs +67 -0
  343. package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -0
  344. package/dist/features/row-pinning/rowPinningFeature.d.cts +10 -0
  345. package/dist/features/row-pinning/rowPinningFeature.d.ts +10 -0
  346. package/dist/features/row-pinning/rowPinningFeature.js +67 -0
  347. package/dist/features/row-pinning/rowPinningFeature.js.map +1 -0
  348. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +83 -0
  349. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +83 -0
  350. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +229 -0
  351. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -0
  352. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +143 -0
  353. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +143 -0
  354. package/dist/features/row-pinning/rowPinningFeature.utils.js +219 -0
  355. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -0
  356. package/dist/features/row-selection/rowSelectionFeature.cjs +75 -0
  357. package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -0
  358. package/dist/features/row-selection/rowSelectionFeature.d.cts +10 -0
  359. package/dist/features/row-selection/rowSelectionFeature.d.ts +10 -0
  360. package/dist/features/row-selection/rowSelectionFeature.js +75 -0
  361. package/dist/features/row-selection/rowSelectionFeature.js.map +1 -0
  362. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +136 -0
  363. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +136 -0
  364. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +518 -0
  365. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -0
  366. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +318 -0
  367. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +318 -0
  368. package/dist/features/row-selection/rowSelectionFeature.utils.js +493 -0
  369. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -0
  370. package/dist/features/row-sorting/createSortedRowModel.cjs +97 -0
  371. package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -0
  372. package/dist/features/row-sorting/createSortedRowModel.d.cts +18 -0
  373. package/dist/features/row-sorting/createSortedRowModel.d.ts +18 -0
  374. package/dist/features/row-sorting/createSortedRowModel.js +97 -0
  375. package/dist/features/row-sorting/createSortedRowModel.js.map +1 -0
  376. package/dist/features/row-sorting/rowSortingFeature.cjs +55 -0
  377. package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -0
  378. package/dist/features/row-sorting/rowSortingFeature.d.cts +10 -0
  379. package/dist/features/row-sorting/rowSortingFeature.d.ts +10 -0
  380. package/dist/features/row-sorting/rowSortingFeature.js +55 -0
  381. package/dist/features/row-sorting/rowSortingFeature.js.map +1 -0
  382. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +191 -0
  383. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +191 -0
  384. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +305 -0
  385. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -0
  386. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +193 -0
  387. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +193 -0
  388. package/dist/features/row-sorting/rowSortingFeature.utils.js +291 -0
  389. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -0
  390. package/dist/features/stockFeatures.cjs +41 -0
  391. package/dist/features/stockFeatures.cjs.map +1 -0
  392. package/dist/features/stockFeatures.d.cts +41 -0
  393. package/dist/features/stockFeatures.d.ts +41 -0
  394. package/dist/features/stockFeatures.js +41 -0
  395. package/dist/features/stockFeatures.js.map +1 -0
  396. package/dist/flex-render.cjs +29 -0
  397. package/dist/flex-render.cjs.map +1 -0
  398. package/dist/flex-render.d.cts +34 -0
  399. package/dist/flex-render.d.ts +34 -0
  400. package/dist/flex-render.js +26 -0
  401. package/dist/flex-render.js.map +1 -0
  402. package/dist/fns/aggregationFns.cjs +161 -0
  403. package/dist/fns/aggregationFns.cjs.map +1 -0
  404. package/dist/fns/aggregationFns.d.cts +85 -0
  405. package/dist/fns/aggregationFns.d.ts +85 -0
  406. package/dist/fns/aggregationFns.js +151 -0
  407. package/dist/fns/aggregationFns.js.map +1 -0
  408. package/dist/fns/filterFns.cjs +201 -0
  409. package/dist/fns/filterFns.cjs.map +1 -0
  410. package/dist/fns/filterFns.d.cts +167 -0
  411. package/dist/fns/filterFns.d.ts +167 -0
  412. package/dist/fns/filterFns.js +185 -0
  413. package/dist/fns/filterFns.js.map +1 -0
  414. package/dist/fns/sortFns.cjs +130 -0
  415. package/dist/fns/sortFns.cjs.map +1 -0
  416. package/dist/fns/sortFns.d.cts +65 -0
  417. package/dist/fns/sortFns.d.ts +65 -0
  418. package/dist/fns/sortFns.js +122 -0
  419. package/dist/fns/sortFns.js.map +1 -0
  420. package/dist/helpers/columnHelper.cjs +41 -0
  421. package/dist/helpers/columnHelper.cjs.map +1 -0
  422. package/dist/helpers/columnHelper.d.cts +71 -0
  423. package/dist/helpers/columnHelper.d.ts +71 -0
  424. package/dist/helpers/columnHelper.js +40 -0
  425. package/dist/helpers/columnHelper.js.map +1 -0
  426. package/dist/helpers/metaHelper.cjs +30 -0
  427. package/dist/helpers/metaHelper.cjs.map +1 -0
  428. package/dist/helpers/metaHelper.d.cts +26 -0
  429. package/dist/helpers/metaHelper.d.ts +26 -0
  430. package/dist/helpers/metaHelper.js +29 -0
  431. package/dist/helpers/metaHelper.js.map +1 -0
  432. package/dist/helpers/tableFeatures.cjs +48 -0
  433. package/dist/helpers/tableFeatures.cjs.map +1 -0
  434. package/dist/helpers/tableFeatures.d.cts +46 -0
  435. package/dist/helpers/tableFeatures.d.ts +46 -0
  436. package/dist/helpers/tableFeatures.js +47 -0
  437. package/dist/helpers/tableFeatures.js.map +1 -0
  438. package/dist/helpers/tableOptions.cjs +15 -0
  439. package/dist/helpers/tableOptions.cjs.map +1 -0
  440. package/dist/helpers/tableOptions.d.cts +57 -0
  441. package/dist/helpers/tableOptions.d.ts +57 -0
  442. package/dist/helpers/tableOptions.js +14 -0
  443. package/dist/helpers/tableOptions.js.map +1 -0
  444. package/dist/index.cjs +135 -0
  445. package/dist/index.d.cts +79 -0
  446. package/dist/index.d.ts +79 -0
  447. package/dist/index.js +47 -0
  448. package/dist/reactivity.cjs +4 -0
  449. package/dist/reactivity.d.cts +3 -0
  450. package/dist/reactivity.d.ts +3 -0
  451. package/dist/reactivity.js +3 -0
  452. package/dist/static-functions.cjs +263 -0
  453. package/dist/static-functions.d.cts +21 -0
  454. package/dist/static-functions.d.ts +21 -0
  455. package/dist/static-functions.js +22 -0
  456. package/dist/store-reactivity-bindings.cjs +44 -0
  457. package/dist/store-reactivity-bindings.cjs.map +1 -0
  458. package/dist/store-reactivity-bindings.d.cts +22 -0
  459. package/dist/store-reactivity-bindings.d.ts +22 -0
  460. package/dist/store-reactivity-bindings.js +43 -0
  461. package/dist/store-reactivity-bindings.js.map +1 -0
  462. package/dist/types/Cell.d.cts +14 -0
  463. package/dist/types/Cell.d.ts +14 -0
  464. package/dist/types/Column.d.cts +36 -0
  465. package/dist/types/Column.d.ts +36 -0
  466. package/dist/types/ColumnDef.d.cts +123 -0
  467. package/dist/types/ColumnDef.d.ts +123 -0
  468. package/dist/types/Header.d.cts +16 -0
  469. package/dist/types/Header.d.ts +16 -0
  470. package/dist/types/HeaderGroup.d.cts +10 -0
  471. package/dist/types/HeaderGroup.d.ts +10 -0
  472. package/dist/types/Row.d.cts +26 -0
  473. package/dist/types/Row.d.ts +26 -0
  474. package/dist/types/RowModel.d.cts +26 -0
  475. package/dist/types/RowModel.d.ts +26 -0
  476. package/dist/types/RowModelFns.d.cts +18 -0
  477. package/dist/types/RowModelFns.d.ts +18 -0
  478. package/dist/types/Table.d.cts +69 -0
  479. package/dist/types/Table.d.ts +69 -0
  480. package/dist/types/TableFeatures.d.cts +214 -0
  481. package/dist/types/TableFeatures.d.ts +214 -0
  482. package/dist/types/TableOptions.d.cts +69 -0
  483. package/dist/types/TableOptions.d.ts +69 -0
  484. package/dist/types/TableState.d.cts +48 -0
  485. package/dist/types/TableState.d.ts +48 -0
  486. package/dist/types/type-utils.d.cts +23 -0
  487. package/dist/types/type-utils.d.ts +23 -0
  488. package/dist/utils.cjs +243 -0
  489. package/dist/utils.cjs.map +1 -0
  490. package/dist/utils.d.cts +114 -0
  491. package/dist/utils.d.ts +114 -0
  492. package/dist/utils.js +232 -0
  493. package/dist/utils.js.map +1 -0
  494. package/package.json +43 -16
  495. package/skills/column-definitions/SKILL.md +330 -0
  496. package/skills/column-layout/SKILL.md +326 -0
  497. package/skills/column-layout/references/subsystems.md +220 -0
  498. package/skills/customizing-feature-behavior/SKILL.md +423 -0
  499. package/skills/filtering/SKILL.md +375 -0
  500. package/skills/filtering/references/faceting-and-fuzzy.md +218 -0
  501. package/skills/grouping/SKILL.md +443 -0
  502. package/skills/migrate-v8-to-v9/SKILL.md +492 -0
  503. package/skills/pagination/SKILL.md +387 -0
  504. package/skills/row-expanding/SKILL.md +356 -0
  505. package/skills/row-pinning/SKILL.md +273 -0
  506. package/skills/row-selection/SKILL.md +388 -0
  507. package/skills/setup/SKILL.md +390 -0
  508. package/skills/sorting/SKILL.md +344 -0
  509. package/skills/state-management/SKILL.md +403 -0
  510. package/src/core/cells/constructCell.ts +55 -0
  511. package/src/core/cells/coreCellsFeature.ts +27 -0
  512. package/src/core/cells/coreCellsFeature.types.ts +68 -0
  513. package/src/core/cells/coreCellsFeature.utils.ts +68 -0
  514. package/src/core/columns/constructColumn.ts +119 -0
  515. package/src/core/columns/coreColumnsFeature.ts +73 -0
  516. package/src/core/columns/coreColumnsFeature.types.ts +108 -0
  517. package/src/core/columns/coreColumnsFeature.utils.ts +275 -0
  518. package/src/core/coreFeatures.ts +31 -0
  519. package/src/core/headers/buildHeaderGroups.ts +182 -0
  520. package/src/core/headers/constructHeader.ts +67 -0
  521. package/src/core/headers/coreHeadersFeature.ts +56 -0
  522. package/src/core/headers/coreHeadersFeature.types.ts +125 -0
  523. package/src/core/headers/coreHeadersFeature.utils.ts +200 -0
  524. package/src/core/reactivity/coreReactivityFeature.types.ts +56 -0
  525. package/src/core/reactivity/coreReactivityFeature.utils.ts +44 -0
  526. package/src/core/row-models/coreRowModelsFeature.ts +62 -0
  527. package/src/core/row-models/coreRowModelsFeature.types.ts +51 -0
  528. package/src/core/row-models/coreRowModelsFeature.utils.ts +272 -0
  529. package/src/core/row-models/createCoreRowModel.ts +93 -0
  530. package/src/core/rows/constructRow.ts +66 -0
  531. package/src/core/rows/coreRowsFeature.ts +62 -0
  532. package/src/core/rows/coreRowsFeature.types.ts +117 -0
  533. package/src/core/rows/coreRowsFeature.utils.ts +264 -0
  534. package/src/core/table/constructTable.ts +206 -0
  535. package/src/core/table/coreTablesFeature.ts +19 -0
  536. package/src/core/table/coreTablesFeature.types.ts +239 -0
  537. package/src/core/table/coreTablesFeature.utils.ts +130 -0
  538. package/src/features/column-faceting/columnFacetingFeature.ts +89 -0
  539. package/src/features/column-faceting/columnFacetingFeature.types.ts +76 -0
  540. package/src/features/column-faceting/columnFacetingFeature.utils.ts +145 -0
  541. package/src/features/column-faceting/createFacetedMinMaxValues.ts +66 -0
  542. package/src/features/column-faceting/createFacetedRowModel.ts +85 -0
  543. package/src/features/column-faceting/createFacetedUniqueValues.ts +66 -0
  544. package/src/features/column-filtering/columnFilteringFeature.ts +86 -0
  545. package/src/features/column-filtering/columnFilteringFeature.types.ts +248 -0
  546. package/src/features/column-filtering/columnFilteringFeature.utils.ts +331 -0
  547. package/src/features/column-filtering/createFilteredRowModel.ts +181 -0
  548. package/src/features/column-filtering/filterRowsUtils.ts +157 -0
  549. package/src/features/column-grouping/columnGroupingFeature.ts +115 -0
  550. package/src/features/column-grouping/columnGroupingFeature.types.ts +227 -0
  551. package/src/features/column-grouping/columnGroupingFeature.utils.ts +354 -0
  552. package/src/features/column-grouping/createGroupedRowModel.ts +216 -0
  553. package/src/features/column-ordering/columnOrderingFeature.ts +73 -0
  554. package/src/features/column-ordering/columnOrderingFeature.types.ts +60 -0
  555. package/src/features/column-ordering/columnOrderingFeature.utils.ts +241 -0
  556. package/src/features/column-pinning/columnPinningFeature.ts +316 -0
  557. package/src/features/column-pinning/columnPinningFeature.types.ts +192 -0
  558. package/src/features/column-pinning/columnPinningFeature.utils.ts +908 -0
  559. package/src/features/column-resizing/columnResizingFeature.ts +65 -0
  560. package/src/features/column-resizing/columnResizingFeature.types.ts +89 -0
  561. package/src/features/column-resizing/columnResizingFeature.utils.ts +364 -0
  562. package/src/features/column-sizing/columnSizingFeature.ts +145 -0
  563. package/src/features/column-sizing/columnSizingFeature.types.ts +102 -0
  564. package/src/features/column-sizing/columnSizingFeature.utils.ts +381 -0
  565. package/src/features/column-visibility/columnVisibilityFeature.ts +122 -0
  566. package/src/features/column-visibility/columnVisibilityFeature.types.ts +112 -0
  567. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +384 -0
  568. package/src/features/global-filtering/globalFilteringFeature.ts +65 -0
  569. package/src/features/global-filtering/globalFilteringFeature.types.ts +91 -0
  570. package/src/features/global-filtering/globalFilteringFeature.utils.ts +118 -0
  571. package/src/features/row-expanding/createExpandedRowModel.ts +82 -0
  572. package/src/features/row-expanding/rowExpandingFeature.ts +94 -0
  573. package/src/features/row-expanding/rowExpandingFeature.types.ts +133 -0
  574. package/src/features/row-expanding/rowExpandingFeature.utils.ts +374 -0
  575. package/src/features/row-pagination/createPaginatedRowModel.ts +83 -0
  576. package/src/features/row-pagination/rowPaginationFeature.ts +95 -0
  577. package/src/features/row-pagination/rowPaginationFeature.types.ts +138 -0
  578. package/src/features/row-pagination/rowPaginationFeature.utils.ts +400 -0
  579. package/src/features/row-pinning/rowPinningFeature.ts +97 -0
  580. package/src/features/row-pinning/rowPinningFeature.types.ts +95 -0
  581. package/src/features/row-pinning/rowPinningFeature.utils.ts +323 -0
  582. package/src/features/row-selection/rowSelectionFeature.ts +140 -0
  583. package/src/features/row-selection/rowSelectionFeature.types.ts +151 -0
  584. package/src/features/row-selection/rowSelectionFeature.utils.ts +750 -0
  585. package/src/features/row-sorting/createSortedRowModel.ts +157 -0
  586. package/src/features/row-sorting/rowSortingFeature.ts +103 -0
  587. package/src/features/row-sorting/rowSortingFeature.types.ts +236 -0
  588. package/src/features/row-sorting/rowSortingFeature.utils.ts +489 -0
  589. package/src/features/stockFeatures.ts +53 -0
  590. package/src/flex-render.ts +70 -0
  591. package/src/fns/aggregationFns.ts +245 -0
  592. package/src/fns/filterFns.ts +382 -0
  593. package/src/fns/sortFns.ts +240 -0
  594. package/src/helpers/columnHelper.ts +122 -0
  595. package/src/helpers/metaHelper.ts +24 -0
  596. package/src/helpers/tableFeatures.ts +55 -0
  597. package/src/helpers/tableOptions.ts +117 -0
  598. package/src/index.ts +138 -42
  599. package/src/process-env.d.ts +6 -0
  600. package/src/reactivity.ts +2 -0
  601. package/src/static-functions.ts +31 -0
  602. package/src/store-reactivity-bindings.ts +47 -0
  603. package/src/types/Cell.ts +21 -0
  604. package/src/types/Column.ts +51 -0
  605. package/src/types/ColumnDef.ts +254 -0
  606. package/src/types/Header.ts +23 -0
  607. package/src/types/HeaderGroup.ts +13 -0
  608. package/src/types/Row.ts +34 -0
  609. package/src/types/RowModel.ts +47 -0
  610. package/src/types/RowModelFns.ts +32 -0
  611. package/src/types/Table.ts +90 -0
  612. package/src/types/TableFeatures.ts +295 -0
  613. package/src/types/TableOptions.ts +108 -0
  614. package/src/types/TableState.ts +47 -0
  615. package/src/types/type-utils.ts +84 -0
  616. package/src/utils.ts +389 -167
  617. package/dist/cjs/aggregationFns.cjs +0 -94
  618. package/dist/cjs/aggregationFns.cjs.map +0 -1
  619. package/dist/cjs/aggregationFns.d.cts +0 -14
  620. package/dist/cjs/columnHelper.cjs +0 -19
  621. package/dist/cjs/columnHelper.cjs.map +0 -1
  622. package/dist/cjs/columnHelper.d.cts +0 -9
  623. package/dist/cjs/core/cell.cjs +0 -38
  624. package/dist/cjs/core/cell.cjs.map +0 -1
  625. package/dist/cjs/core/cell.d.cts +0 -50
  626. package/dist/cjs/core/column.cjs +0 -81
  627. package/dist/cjs/core/column.cjs.map +0 -1
  628. package/dist/cjs/core/column.d.cts +0 -56
  629. package/dist/cjs/core/headers.cjs +0 -310
  630. package/dist/cjs/core/headers.cjs.map +0 -1
  631. package/dist/cjs/core/headers.d.cts +0 -195
  632. package/dist/cjs/core/row.cjs +0 -92
  633. package/dist/cjs/core/row.cjs.map +0 -1
  634. package/dist/cjs/core/row.d.cts +0 -92
  635. package/dist/cjs/core/table.cjs +0 -232
  636. package/dist/cjs/core/table.cjs.map +0 -1
  637. package/dist/cjs/core/table.d.cts +0 -229
  638. package/dist/cjs/features/ColumnFaceting.cjs +0 -29
  639. package/dist/cjs/features/ColumnFaceting.cjs.map +0 -1
  640. package/dist/cjs/features/ColumnFaceting.d.cts +0 -35
  641. package/dist/cjs/features/ColumnFiltering.cjs +0 -137
  642. package/dist/cjs/features/ColumnFiltering.cjs.map +0 -1
  643. package/dist/cjs/features/ColumnFiltering.d.cts +0 -195
  644. package/dist/cjs/features/ColumnGrouping.cjs +0 -133
  645. package/dist/cjs/features/ColumnGrouping.cjs.map +0 -1
  646. package/dist/cjs/features/ColumnGrouping.d.cts +0 -202
  647. package/dist/cjs/features/ColumnOrdering.cjs +0 -76
  648. package/dist/cjs/features/ColumnOrdering.cjs.map +0 -1
  649. package/dist/cjs/features/ColumnOrdering.d.cts +0 -54
  650. package/dist/cjs/features/ColumnPinning.cjs +0 -145
  651. package/dist/cjs/features/ColumnPinning.cjs.map +0 -1
  652. package/dist/cjs/features/ColumnPinning.d.cts +0 -127
  653. package/dist/cjs/features/ColumnSizing.cjs +0 -307
  654. package/dist/cjs/features/ColumnSizing.cjs.map +0 -1
  655. package/dist/cjs/features/ColumnSizing.d.cts +0 -194
  656. package/dist/cjs/features/ColumnVisibility.cjs +0 -144
  657. package/dist/cjs/features/ColumnVisibility.cjs.map +0 -1
  658. package/dist/cjs/features/ColumnVisibility.d.cts +0 -130
  659. package/dist/cjs/features/GlobalFaceting.cjs +0 -29
  660. package/dist/cjs/features/GlobalFaceting.cjs.map +0 -1
  661. package/dist/cjs/features/GlobalFaceting.d.cts +0 -27
  662. package/dist/cjs/features/GlobalFiltering.cjs +0 -50
  663. package/dist/cjs/features/GlobalFiltering.cjs.map +0 -1
  664. package/dist/cjs/features/GlobalFiltering.d.cts +0 -80
  665. package/dist/cjs/features/RowExpanding.cjs +0 -152
  666. package/dist/cjs/features/RowExpanding.cjs.map +0 -1
  667. package/dist/cjs/features/RowExpanding.d.cts +0 -155
  668. package/dist/cjs/features/RowPagination.cjs +0 -161
  669. package/dist/cjs/features/RowPagination.cjs.map +0 -1
  670. package/dist/cjs/features/RowPagination.d.cts +0 -166
  671. package/dist/cjs/features/RowPinning.cjs +0 -132
  672. package/dist/cjs/features/RowPinning.cjs.map +0 -1
  673. package/dist/cjs/features/RowPinning.d.cts +0 -99
  674. package/dist/cjs/features/RowSelection.cjs +0 -296
  675. package/dist/cjs/features/RowSelection.cjs.map +0 -1
  676. package/dist/cjs/features/RowSelection.d.cts +0 -177
  677. package/dist/cjs/features/RowSorting.cjs +0 -200
  678. package/dist/cjs/features/RowSorting.cjs.map +0 -1
  679. package/dist/cjs/features/RowSorting.d.cts +0 -238
  680. package/dist/cjs/filterFns.cjs +0 -88
  681. package/dist/cjs/filterFns.cjs.map +0 -1
  682. package/dist/cjs/filterFns.d.cts +0 -14
  683. package/dist/cjs/index.cjs +0 -88
  684. package/dist/cjs/index.cjs.map +0 -1
  685. package/dist/cjs/index.d.cts +0 -34
  686. package/dist/cjs/sortingFns.cjs +0 -91
  687. package/dist/cjs/sortingFns.cjs.map +0 -1
  688. package/dist/cjs/sortingFns.d.cts +0 -12
  689. package/dist/cjs/types.d.cts +0 -120
  690. package/dist/cjs/utils/filterRowsUtils.cjs +0 -99
  691. package/dist/cjs/utils/filterRowsUtils.cjs.map +0 -1
  692. package/dist/cjs/utils/filterRowsUtils.d.cts +0 -3
  693. package/dist/cjs/utils/getCoreRowModel.cjs +0 -54
  694. package/dist/cjs/utils/getCoreRowModel.cjs.map +0 -1
  695. package/dist/cjs/utils/getCoreRowModel.d.cts +0 -3
  696. package/dist/cjs/utils/getExpandedRowModel.cjs +0 -41
  697. package/dist/cjs/utils/getExpandedRowModel.cjs.map +0 -1
  698. package/dist/cjs/utils/getExpandedRowModel.d.cts +0 -8
  699. package/dist/cjs/utils/getFacetedMinMaxValues.cjs +0 -35
  700. package/dist/cjs/utils/getFacetedMinMaxValues.cjs.map +0 -1
  701. package/dist/cjs/utils/getFacetedMinMaxValues.d.cts +0 -3
  702. package/dist/cjs/utils/getFacetedRowModel.cjs +0 -35
  703. package/dist/cjs/utils/getFacetedRowModel.cjs.map +0 -1
  704. package/dist/cjs/utils/getFacetedRowModel.d.cts +0 -3
  705. package/dist/cjs/utils/getFacetedUniqueValues.cjs +0 -37
  706. package/dist/cjs/utils/getFacetedUniqueValues.cjs.map +0 -1
  707. package/dist/cjs/utils/getFacetedUniqueValues.d.cts +0 -3
  708. package/dist/cjs/utils/getFilteredRowModel.cjs +0 -116
  709. package/dist/cjs/utils/getFilteredRowModel.cjs.map +0 -1
  710. package/dist/cjs/utils/getFilteredRowModel.d.cts +0 -3
  711. package/dist/cjs/utils/getGroupedRowModel.cjs +0 -118
  712. package/dist/cjs/utils/getGroupedRowModel.cjs.map +0 -1
  713. package/dist/cjs/utils/getGroupedRowModel.d.cts +0 -3
  714. package/dist/cjs/utils/getPaginationRowModel.cjs +0 -49
  715. package/dist/cjs/utils/getPaginationRowModel.cjs.map +0 -1
  716. package/dist/cjs/utils/getPaginationRowModel.d.cts +0 -5
  717. package/dist/cjs/utils/getSortedRowModel.cjs +0 -88
  718. package/dist/cjs/utils/getSortedRowModel.cjs.map +0 -1
  719. package/dist/cjs/utils/getSortedRowModel.d.cts +0 -3
  720. package/dist/cjs/utils.cjs +0 -98
  721. package/dist/cjs/utils.cjs.map +0 -1
  722. package/dist/cjs/utils.d.cts +0 -39
  723. package/dist/esm/aggregationFns.d.ts +0 -14
  724. package/dist/esm/aggregationFns.js +0 -94
  725. package/dist/esm/aggregationFns.js.map +0 -1
  726. package/dist/esm/columnHelper.d.ts +0 -9
  727. package/dist/esm/columnHelper.js +0 -19
  728. package/dist/esm/columnHelper.js.map +0 -1
  729. package/dist/esm/core/cell.d.ts +0 -50
  730. package/dist/esm/core/cell.js +0 -38
  731. package/dist/esm/core/cell.js.map +0 -1
  732. package/dist/esm/core/column.d.ts +0 -56
  733. package/dist/esm/core/column.js +0 -81
  734. package/dist/esm/core/column.js.map +0 -1
  735. package/dist/esm/core/headers.d.ts +0 -195
  736. package/dist/esm/core/headers.js +0 -310
  737. package/dist/esm/core/headers.js.map +0 -1
  738. package/dist/esm/core/row.d.ts +0 -92
  739. package/dist/esm/core/row.js +0 -92
  740. package/dist/esm/core/row.js.map +0 -1
  741. package/dist/esm/core/table.d.ts +0 -229
  742. package/dist/esm/core/table.js +0 -232
  743. package/dist/esm/core/table.js.map +0 -1
  744. package/dist/esm/features/ColumnFaceting.d.ts +0 -35
  745. package/dist/esm/features/ColumnFaceting.js +0 -29
  746. package/dist/esm/features/ColumnFaceting.js.map +0 -1
  747. package/dist/esm/features/ColumnFiltering.d.ts +0 -195
  748. package/dist/esm/features/ColumnFiltering.js +0 -137
  749. package/dist/esm/features/ColumnFiltering.js.map +0 -1
  750. package/dist/esm/features/ColumnGrouping.d.ts +0 -202
  751. package/dist/esm/features/ColumnGrouping.js +0 -133
  752. package/dist/esm/features/ColumnGrouping.js.map +0 -1
  753. package/dist/esm/features/ColumnOrdering.d.ts +0 -54
  754. package/dist/esm/features/ColumnOrdering.js +0 -76
  755. package/dist/esm/features/ColumnOrdering.js.map +0 -1
  756. package/dist/esm/features/ColumnPinning.d.ts +0 -127
  757. package/dist/esm/features/ColumnPinning.js +0 -145
  758. package/dist/esm/features/ColumnPinning.js.map +0 -1
  759. package/dist/esm/features/ColumnSizing.d.ts +0 -194
  760. package/dist/esm/features/ColumnSizing.js +0 -307
  761. package/dist/esm/features/ColumnSizing.js.map +0 -1
  762. package/dist/esm/features/ColumnVisibility.d.ts +0 -130
  763. package/dist/esm/features/ColumnVisibility.js +0 -144
  764. package/dist/esm/features/ColumnVisibility.js.map +0 -1
  765. package/dist/esm/features/GlobalFaceting.d.ts +0 -27
  766. package/dist/esm/features/GlobalFaceting.js +0 -29
  767. package/dist/esm/features/GlobalFaceting.js.map +0 -1
  768. package/dist/esm/features/GlobalFiltering.d.ts +0 -80
  769. package/dist/esm/features/GlobalFiltering.js +0 -50
  770. package/dist/esm/features/GlobalFiltering.js.map +0 -1
  771. package/dist/esm/features/RowExpanding.d.ts +0 -155
  772. package/dist/esm/features/RowExpanding.js +0 -152
  773. package/dist/esm/features/RowExpanding.js.map +0 -1
  774. package/dist/esm/features/RowPagination.d.ts +0 -166
  775. package/dist/esm/features/RowPagination.js +0 -161
  776. package/dist/esm/features/RowPagination.js.map +0 -1
  777. package/dist/esm/features/RowPinning.d.ts +0 -99
  778. package/dist/esm/features/RowPinning.js +0 -132
  779. package/dist/esm/features/RowPinning.js.map +0 -1
  780. package/dist/esm/features/RowSelection.d.ts +0 -177
  781. package/dist/esm/features/RowSelection.js +0 -296
  782. package/dist/esm/features/RowSelection.js.map +0 -1
  783. package/dist/esm/features/RowSorting.d.ts +0 -238
  784. package/dist/esm/features/RowSorting.js +0 -200
  785. package/dist/esm/features/RowSorting.js.map +0 -1
  786. package/dist/esm/filterFns.d.ts +0 -14
  787. package/dist/esm/filterFns.js +0 -88
  788. package/dist/esm/filterFns.js.map +0 -1
  789. package/dist/esm/index.d.ts +0 -34
  790. package/dist/esm/index.js +0 -88
  791. package/dist/esm/index.js.map +0 -1
  792. package/dist/esm/sortingFns.d.ts +0 -12
  793. package/dist/esm/sortingFns.js +0 -91
  794. package/dist/esm/sortingFns.js.map +0 -1
  795. package/dist/esm/types.d.ts +0 -120
  796. package/dist/esm/utils/filterRowsUtils.d.ts +0 -3
  797. package/dist/esm/utils/filterRowsUtils.js +0 -99
  798. package/dist/esm/utils/filterRowsUtils.js.map +0 -1
  799. package/dist/esm/utils/getCoreRowModel.d.ts +0 -3
  800. package/dist/esm/utils/getCoreRowModel.js +0 -54
  801. package/dist/esm/utils/getCoreRowModel.js.map +0 -1
  802. package/dist/esm/utils/getExpandedRowModel.d.ts +0 -8
  803. package/dist/esm/utils/getExpandedRowModel.js +0 -41
  804. package/dist/esm/utils/getExpandedRowModel.js.map +0 -1
  805. package/dist/esm/utils/getFacetedMinMaxValues.d.ts +0 -3
  806. package/dist/esm/utils/getFacetedMinMaxValues.js +0 -35
  807. package/dist/esm/utils/getFacetedMinMaxValues.js.map +0 -1
  808. package/dist/esm/utils/getFacetedRowModel.d.ts +0 -3
  809. package/dist/esm/utils/getFacetedRowModel.js +0 -35
  810. package/dist/esm/utils/getFacetedRowModel.js.map +0 -1
  811. package/dist/esm/utils/getFacetedUniqueValues.d.ts +0 -3
  812. package/dist/esm/utils/getFacetedUniqueValues.js +0 -37
  813. package/dist/esm/utils/getFacetedUniqueValues.js.map +0 -1
  814. package/dist/esm/utils/getFilteredRowModel.d.ts +0 -3
  815. package/dist/esm/utils/getFilteredRowModel.js +0 -116
  816. package/dist/esm/utils/getFilteredRowModel.js.map +0 -1
  817. package/dist/esm/utils/getGroupedRowModel.d.ts +0 -3
  818. package/dist/esm/utils/getGroupedRowModel.js +0 -118
  819. package/dist/esm/utils/getGroupedRowModel.js.map +0 -1
  820. package/dist/esm/utils/getPaginationRowModel.d.ts +0 -5
  821. package/dist/esm/utils/getPaginationRowModel.js +0 -49
  822. package/dist/esm/utils/getPaginationRowModel.js.map +0 -1
  823. package/dist/esm/utils/getSortedRowModel.d.ts +0 -3
  824. package/dist/esm/utils/getSortedRowModel.js +0 -88
  825. package/dist/esm/utils/getSortedRowModel.js.map +0 -1
  826. package/dist/esm/utils.d.ts +0 -39
  827. package/dist/esm/utils.js +0 -98
  828. package/dist/esm/utils.js.map +0 -1
  829. package/src/aggregationFns.ts +0 -123
  830. package/src/columnHelper.ts +0 -91
  831. package/src/core/cell.ts +0 -91
  832. package/src/core/column.ts +0 -165
  833. package/src/core/headers.ts +0 -639
  834. package/src/core/row.ts +0 -201
  835. package/src/core/table.ts +0 -563
  836. package/src/features/ColumnFaceting.ts +0 -84
  837. package/src/features/ColumnFiltering.ts +0 -429
  838. package/src/features/ColumnGrouping.ts +0 -422
  839. package/src/features/ColumnOrdering.ts +0 -161
  840. package/src/features/ColumnPinning.ts +0 -336
  841. package/src/features/ColumnSizing.ts +0 -579
  842. package/src/features/ColumnVisibility.ts +0 -317
  843. package/src/features/GlobalFaceting.ts +0 -66
  844. package/src/features/GlobalFiltering.ts +0 -162
  845. package/src/features/RowExpanding.ts +0 -355
  846. package/src/features/RowPagination.ts +0 -396
  847. package/src/features/RowPinning.ts +0 -273
  848. package/src/features/RowSelection.ts +0 -668
  849. package/src/features/RowSorting.ts +0 -542
  850. package/src/filterFns.ts +0 -150
  851. package/src/sortingFns.ts +0 -128
  852. package/src/types.ts +0 -361
  853. package/src/utils/filterRowsUtils.ts +0 -130
  854. package/src/utils/getCoreRowModel.ts +0 -82
  855. package/src/utils/getExpandedRowModel.ts +0 -51
  856. package/src/utils/getFacetedMinMaxValues.ts +0 -42
  857. package/src/utils/getFacetedRowModel.ts +0 -44
  858. package/src/utils/getFacetedUniqueValues.ts +0 -42
  859. package/src/utils/getFilteredRowModel.ts +0 -151
  860. package/src/utils/getGroupedRowModel.ts +0 -181
  861. package/src/utils/getPaginationRowModel.ts +0 -60
  862. package/src/utils/getSortedRowModel.ts +0 -121
@@ -0,0 +1,296 @@
1
+ import { cloneState, functionalUpdate } from "../../utils.js";
2
+
3
+ //#region src/features/row-pagination/rowPaginationFeature.utils.ts
4
+ const defaultPageIndex = 0;
5
+ const defaultPageSize = 10;
6
+ /**
7
+ * Creates the default pagination state used by the pagination feature.
8
+ *
9
+ * The feature default starts at the first page with a page size of 10. Reset
10
+ * APIs use this value when `defaultState` is `true`.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * const pagination = getDefaultPaginationState()
15
+ * ```
16
+ */
17
+ function getDefaultPaginationState() {
18
+ return {
19
+ pageIndex: defaultPageIndex,
20
+ pageSize: defaultPageSize
21
+ };
22
+ }
23
+ /**
24
+ * Resets the page index when a page-altering change should return to page 0.
25
+ *
26
+ * The reset runs when `autoResetAll`, `autoResetPageIndex`, or the default
27
+ * client-side pagination behavior allows it. Manual pagination opts out unless
28
+ * the reset options explicitly opt back in.
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * table_autoResetPageIndex(table)
33
+ * ```
34
+ */
35
+ function table_autoResetPageIndex(table) {
36
+ if (table.options.autoResetAll ?? table.options.autoResetPageIndex ?? !table.options.manualPagination) table_resetPageIndex(table);
37
+ }
38
+ /**
39
+ * Routes a pagination updater through the table's pagination change handler.
40
+ *
41
+ * The updater may be a next state object or a function of the previous
42
+ * `PaginationState`; controlled state and external atoms observe the same
43
+ * updater path as the instance API.
44
+ *
45
+ * @example
46
+ * ```ts
47
+ * table_setPagination(table, (old) => old)
48
+ * ```
49
+ */
50
+ function table_setPagination(table, updater) {
51
+ var _table$options$onPagi, _table$options;
52
+ const safeUpdater = (old) => {
53
+ return functionalUpdate(updater, old);
54
+ };
55
+ return (_table$options$onPagi = (_table$options = table.options).onPaginationChange) === null || _table$options$onPagi === void 0 ? void 0 : _table$options$onPagi.call(_table$options, safeUpdater);
56
+ }
57
+ /**
58
+ * Resets `pagination` to the configured initial state or feature default.
59
+ *
60
+ * With no argument, the reset clones `table.initialState.pagination` when it
61
+ * exists. Passing `true` ignores initial state and resets to
62
+ * `{ pageIndex: 0, pageSize: 10 }`.
63
+ *
64
+ * @example
65
+ * ```ts
66
+ * table_resetPagination(table)
67
+ * table_resetPagination(table, true)
68
+ * ```
69
+ */
70
+ function table_resetPagination(table, defaultState) {
71
+ table_setPagination(table, defaultState ? getDefaultPaginationState() : cloneState(table.initialState.pagination ?? getDefaultPaginationState()));
72
+ }
73
+ /**
74
+ * Updates `pagination.pageIndex` and clamps it to the known page range.
75
+ *
76
+ * Unknown page counts (`undefined` or `-1`) allow any non-negative page index.
77
+ * Known page counts clamp the index between `0` and `pageCount - 1`.
78
+ *
79
+ * @example
80
+ * ```ts
81
+ * table_setPageIndex(table, (old) => old)
82
+ * ```
83
+ */
84
+ function table_setPageIndex(table, updater) {
85
+ table_setPagination(table, (old) => {
86
+ let pageIndex = functionalUpdate(updater, old.pageIndex);
87
+ const maxPageIndex = typeof table.options.pageCount === "undefined" || table.options.pageCount === -1 ? Number.MAX_SAFE_INTEGER : table.options.pageCount - 1;
88
+ pageIndex = Math.max(0, Math.min(pageIndex, maxPageIndex));
89
+ return {
90
+ ...old,
91
+ pageIndex
92
+ };
93
+ });
94
+ }
95
+ /**
96
+ * Resets only `pagination.pageIndex`.
97
+ *
98
+ * With no argument, the reset uses `table.initialState.pagination?.pageIndex`
99
+ * or `0`. Passing `true` always resets the page index to `0`.
100
+ *
101
+ * @example
102
+ * ```ts
103
+ * table_resetPageIndex(table)
104
+ * table_resetPageIndex(table, true)
105
+ * ```
106
+ */
107
+ function table_resetPageIndex(table, defaultState) {
108
+ var _table$atoms$paginati, _table$initialState$p;
109
+ const currentPageIndex = ((_table$atoms$paginati = table.atoms.pagination) === null || _table$atoms$paginati === void 0 || (_table$atoms$paginati = _table$atoms$paginati.get()) === null || _table$atoms$paginati === void 0 ? void 0 : _table$atoms$paginati.pageIndex) ?? defaultPageIndex;
110
+ const newPageIndex = defaultState ? defaultPageIndex : ((_table$initialState$p = table.initialState.pagination) === null || _table$initialState$p === void 0 ? void 0 : _table$initialState$p.pageIndex) ?? defaultPageIndex;
111
+ if (newPageIndex === currentPageIndex) return;
112
+ table_setPageIndex(table, newPageIndex);
113
+ }
114
+ /**
115
+ * Resets only `pagination.pageSize`.
116
+ *
117
+ * With no argument, the reset uses `table.initialState.pagination?.pageSize`
118
+ * or `10`. Passing `true` always resets the page size to `10`.
119
+ *
120
+ * @example
121
+ * ```ts
122
+ * table_resetPageSize(table)
123
+ * table_resetPageSize(table, true)
124
+ * ```
125
+ */
126
+ function table_resetPageSize(table, defaultState) {
127
+ var _table$atoms$paginati2, _table$initialState$p2;
128
+ const currentPageSize = ((_table$atoms$paginati2 = table.atoms.pagination) === null || _table$atoms$paginati2 === void 0 || (_table$atoms$paginati2 = _table$atoms$paginati2.get()) === null || _table$atoms$paginati2 === void 0 ? void 0 : _table$atoms$paginati2.pageSize) ?? defaultPageSize;
129
+ const newPageSize = defaultState ? defaultPageSize : ((_table$initialState$p2 = table.initialState.pagination) === null || _table$initialState$p2 === void 0 ? void 0 : _table$initialState$p2.pageSize) ?? defaultPageSize;
130
+ if (newPageSize === currentPageSize) return;
131
+ table_setPageSize(table, newPageSize);
132
+ }
133
+ /**
134
+ * Updates `pagination.pageSize` while preserving the current top row.
135
+ *
136
+ * The new size is clamped to at least `1`, and `pageIndex` is recalculated so
137
+ * the row that was previously at the top of the page remains in view.
138
+ *
139
+ * @example
140
+ * ```ts
141
+ * table_setPageSize(table, (old) => old)
142
+ * ```
143
+ */
144
+ function table_setPageSize(table, updater) {
145
+ table_setPagination(table, (old) => {
146
+ const pageSize = Math.max(1, functionalUpdate(updater, old.pageSize));
147
+ const topRowIndex = old.pageSize * old.pageIndex;
148
+ const pageIndex = Math.floor(topRowIndex / pageSize);
149
+ return {
150
+ ...old,
151
+ pageIndex,
152
+ pageSize
153
+ };
154
+ });
155
+ }
156
+ /**
157
+ * Builds the zero-based page indexes available for the current page count.
158
+ *
159
+ * Unknown or empty page counts return an empty array; otherwise the result is
160
+ * `[0, 1, ...pageCount - 1]`.
161
+ *
162
+ * @example
163
+ * ```ts
164
+ * const pageIndexes = table_getPageOptions(table)
165
+ * ```
166
+ */
167
+ function table_getPageOptions(table) {
168
+ const pageCount = table_getPageCount(table);
169
+ let pageOptions = [];
170
+ if (pageCount && pageCount > 0) pageOptions = [...new Array(pageCount)].fill(null).map((_, i) => i);
171
+ return pageOptions;
172
+ }
173
+ /**
174
+ * Checks whether the current page index can move backward.
175
+ *
176
+ * The first page is page index `0`, so only positive page indexes can navigate
177
+ * to a previous page.
178
+ *
179
+ * @example
180
+ * ```ts
181
+ * const canGoBack = table_getCanPreviousPage(table)
182
+ * ```
183
+ */
184
+ function table_getCanPreviousPage(table) {
185
+ var _table$atoms$paginati3;
186
+ return (((_table$atoms$paginati3 = table.atoms.pagination) === null || _table$atoms$paginati3 === void 0 || (_table$atoms$paginati3 = _table$atoms$paginati3.get()) === null || _table$atoms$paginati3 === void 0 ? void 0 : _table$atoms$paginati3.pageIndex) ?? 0) > 0;
187
+ }
188
+ /**
189
+ * Checks whether the current page index can move forward.
190
+ *
191
+ * A `pageCount` of `-1` means the caller does not know the total page count, so
192
+ * this returns `true`. A page count of `0` returns `false`.
193
+ *
194
+ * @example
195
+ * ```ts
196
+ * const canGoForward = table_getCanNextPage(table)
197
+ * ```
198
+ */
199
+ function table_getCanNextPage(table) {
200
+ var _table$atoms$paginati4;
201
+ const pageIndex = ((_table$atoms$paginati4 = table.atoms.pagination) === null || _table$atoms$paginati4 === void 0 || (_table$atoms$paginati4 = _table$atoms$paginati4.get()) === null || _table$atoms$paginati4 === void 0 ? void 0 : _table$atoms$paginati4.pageIndex) ?? defaultPageIndex;
202
+ const pageCount = table_getPageCount(table);
203
+ if (pageCount === -1) return true;
204
+ if (pageCount === 0) return false;
205
+ return pageIndex < pageCount - 1;
206
+ }
207
+ /**
208
+ * Moves the table to the previous page.
209
+ *
210
+ * This delegates to `table_setPageIndex` so pagination state ownership and
211
+ * updater semantics remain consistent.
212
+ *
213
+ * @example
214
+ * ```ts
215
+ * table_previousPage(table)
216
+ * ```
217
+ */
218
+ function table_previousPage(table) {
219
+ return table_setPageIndex(table, (old) => old - 1);
220
+ }
221
+ /**
222
+ * Moves the table to the next page.
223
+ *
224
+ * This delegates to `table_setPageIndex` so pagination state ownership and
225
+ * updater semantics remain consistent.
226
+ *
227
+ * @example
228
+ * ```ts
229
+ * table_nextPage(table)
230
+ * ```
231
+ */
232
+ function table_nextPage(table) {
233
+ return table_setPageIndex(table, (old) => {
234
+ return old + 1;
235
+ });
236
+ }
237
+ /**
238
+ * Moves the table to the first page.
239
+ *
240
+ * This is a convenience wrapper around `table_setPageIndex(table, 0)`.
241
+ *
242
+ * @example
243
+ * ```ts
244
+ * table_firstPage(table)
245
+ * ```
246
+ */
247
+ function table_firstPage(table) {
248
+ return table_setPageIndex(table, 0);
249
+ }
250
+ /**
251
+ * Moves the table to the last known page.
252
+ *
253
+ * The target page is derived from `table_getPageCount(table) - 1`.
254
+ *
255
+ * @example
256
+ * ```ts
257
+ * table_lastPage(table)
258
+ * ```
259
+ */
260
+ function table_lastPage(table) {
261
+ return table_setPageIndex(table, table_getPageCount(table) - 1);
262
+ }
263
+ /**
264
+ * Resolves the number of pages for the current pagination state.
265
+ *
266
+ * `options.pageCount` wins for manual pagination. Otherwise the value is
267
+ * calculated from `table_getRowCount(table)` and the current `pageSize`.
268
+ *
269
+ * @example
270
+ * ```ts
271
+ * const pages = table_getPageCount(table)
272
+ * ```
273
+ */
274
+ function table_getPageCount(table) {
275
+ var _table$atoms$paginati5;
276
+ return table.options.pageCount ?? Math.ceil(table_getRowCount(table) / (((_table$atoms$paginati5 = table.atoms.pagination) === null || _table$atoms$paginati5 === void 0 || (_table$atoms$paginati5 = _table$atoms$paginati5.get()) === null || _table$atoms$paginati5 === void 0 ? void 0 : _table$atoms$paginati5.pageSize) ?? defaultPageSize));
277
+ }
278
+ /**
279
+ * Resolves the total row count used for pagination math.
280
+ *
281
+ * `options.rowCount` wins for manual pagination. Otherwise the count comes
282
+ * from the pre-paginated row model so filtering, grouping, sorting, and
283
+ * expansion are reflected before the page slice is applied.
284
+ *
285
+ * @example
286
+ * ```ts
287
+ * const rows = table_getRowCount(table)
288
+ * ```
289
+ */
290
+ function table_getRowCount(table) {
291
+ return table.options.rowCount ?? table.getPrePaginatedRowModel().rows.length;
292
+ }
293
+
294
+ //#endregion
295
+ export { getDefaultPaginationState, table_autoResetPageIndex, table_firstPage, table_getCanNextPage, table_getCanPreviousPage, table_getPageCount, table_getPageOptions, table_getRowCount, table_lastPage, table_nextPage, table_previousPage, table_resetPageIndex, table_resetPageSize, table_resetPagination, table_setPageIndex, table_setPageSize, table_setPagination };
296
+ //# sourceMappingURL=rowPaginationFeature.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rowPaginationFeature.utils.js","names":[],"sources":["../../../src/features/row-pagination/rowPaginationFeature.utils.ts"],"sourcesContent":["import { cloneState, functionalUpdate } from '../../utils'\nimport type { RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { PaginationState } from './rowPaginationFeature.types'\n\nconst defaultPageIndex = 0\nconst defaultPageSize = 10\n\n/**\n * Creates the default pagination state used by the pagination feature.\n *\n * The feature default starts at the first page with a page size of 10. Reset\n * APIs use this value when `defaultState` is `true`.\n *\n * @example\n * ```ts\n * const pagination = getDefaultPaginationState()\n * ```\n */\nexport function getDefaultPaginationState(): PaginationState {\n return {\n pageIndex: defaultPageIndex,\n pageSize: defaultPageSize,\n }\n}\n\n/**\n * Resets the page index when a page-altering change should return to page 0.\n *\n * The reset runs when `autoResetAll`, `autoResetPageIndex`, or the default\n * client-side pagination behavior allows it. Manual pagination opts out unless\n * the reset options explicitly opt back in.\n *\n * @example\n * ```ts\n * table_autoResetPageIndex(table)\n * ```\n */\nexport function table_autoResetPageIndex<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n if (\n table.options.autoResetAll ??\n table.options.autoResetPageIndex ??\n !table.options.manualPagination\n ) {\n table_resetPageIndex(table)\n }\n}\n\n/**\n * Routes a pagination updater through the table's pagination change handler.\n *\n * The updater may be a next state object or a function of the previous\n * `PaginationState`; controlled state and external atoms observe the same\n * updater path as the instance API.\n *\n * @example\n * ```ts\n * table_setPagination(table, (old) => old)\n * ```\n */\nexport function table_setPagination<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, updater: Updater<PaginationState>) {\n const safeUpdater: Updater<PaginationState> = (old) => {\n const newState = functionalUpdate(updater, old)\n\n return newState\n }\n\n return table.options.onPaginationChange?.(safeUpdater)\n}\n\n/**\n * Resets `pagination` to the configured initial state or feature default.\n *\n * With no argument, the reset clones `table.initialState.pagination` when it\n * exists. Passing `true` ignores initial state and resets to\n * `{ pageIndex: 0, pageSize: 10 }`.\n *\n * @example\n * ```ts\n * table_resetPagination(table)\n * table_resetPagination(table, true)\n * ```\n */\nexport function table_resetPagination<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n table_setPagination(\n table,\n defaultState\n ? getDefaultPaginationState()\n : cloneState(\n table.initialState.pagination ?? getDefaultPaginationState(),\n ),\n )\n}\n\n/**\n * Updates `pagination.pageIndex` and clamps it to the known page range.\n *\n * Unknown page counts (`undefined` or `-1`) allow any non-negative page index.\n * Known page counts clamp the index between `0` and `pageCount - 1`.\n *\n * @example\n * ```ts\n * table_setPageIndex(table, (old) => old)\n * ```\n */\nexport function table_setPageIndex<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, updater: Updater<number>) {\n table_setPagination(table, (old) => {\n let pageIndex = functionalUpdate(updater, old.pageIndex)\n\n const maxPageIndex =\n typeof table.options.pageCount === 'undefined' ||\n table.options.pageCount === -1\n ? Number.MAX_SAFE_INTEGER\n : table.options.pageCount - 1\n\n pageIndex = Math.max(0, Math.min(pageIndex, maxPageIndex))\n\n return {\n ...old,\n pageIndex,\n }\n })\n}\n\n/**\n * Resets only `pagination.pageIndex`.\n *\n * With no argument, the reset uses `table.initialState.pagination?.pageIndex`\n * or `0`. Passing `true` always resets the page index to `0`.\n *\n * @example\n * ```ts\n * table_resetPageIndex(table)\n * table_resetPageIndex(table, true)\n * ```\n */\nexport function table_resetPageIndex<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n const currentPageIndex =\n table.atoms.pagination?.get()?.pageIndex ?? defaultPageIndex\n const newPageIndex = defaultState\n ? defaultPageIndex\n : (table.initialState.pagination?.pageIndex ?? defaultPageIndex)\n if (newPageIndex === currentPageIndex) return\n table_setPageIndex(table, newPageIndex)\n}\n\n/**\n * Resets only `pagination.pageSize`.\n *\n * With no argument, the reset uses `table.initialState.pagination?.pageSize`\n * or `10`. Passing `true` always resets the page size to `10`.\n *\n * @example\n * ```ts\n * table_resetPageSize(table)\n * table_resetPageSize(table, true)\n * ```\n */\nexport function table_resetPageSize<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n const currentPageSize =\n table.atoms.pagination?.get()?.pageSize ?? defaultPageSize\n const newPageSize = defaultState\n ? defaultPageSize\n : (table.initialState.pagination?.pageSize ?? defaultPageSize)\n if (newPageSize === currentPageSize) return\n table_setPageSize(table, newPageSize)\n}\n\n/**\n * Updates `pagination.pageSize` while preserving the current top row.\n *\n * The new size is clamped to at least `1`, and `pageIndex` is recalculated so\n * the row that was previously at the top of the page remains in view.\n *\n * @example\n * ```ts\n * table_setPageSize(table, (old) => old)\n * ```\n */\nexport function table_setPageSize<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, updater: Updater<number>) {\n table_setPagination(table, (old) => {\n const pageSize = Math.max(1, functionalUpdate(updater, old.pageSize))\n const topRowIndex = old.pageSize * old.pageIndex\n const pageIndex = Math.floor(topRowIndex / pageSize)\n\n return {\n ...old,\n pageIndex,\n pageSize,\n }\n })\n}\n\n/**\n * Builds the zero-based page indexes available for the current page count.\n *\n * Unknown or empty page counts return an empty array; otherwise the result is\n * `[0, 1, ...pageCount - 1]`.\n *\n * @example\n * ```ts\n * const pageIndexes = table_getPageOptions(table)\n * ```\n */\nexport function table_getPageOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const pageCount = table_getPageCount(table)\n let pageOptions: Array<number> = []\n if (pageCount && pageCount > 0) {\n pageOptions = [...new Array(pageCount)].fill(null).map((_, i) => i)\n }\n return pageOptions\n}\n\n/**\n * Checks whether the current page index can move backward.\n *\n * The first page is page index `0`, so only positive page indexes can navigate\n * to a previous page.\n *\n * @example\n * ```ts\n * const canGoBack = table_getCanPreviousPage(table)\n * ```\n */\nexport function table_getCanPreviousPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return (table.atoms.pagination?.get()?.pageIndex ?? 0) > 0\n}\n\n/**\n * Checks whether the current page index can move forward.\n *\n * A `pageCount` of `-1` means the caller does not know the total page count, so\n * this returns `true`. A page count of `0` returns `false`.\n *\n * @example\n * ```ts\n * const canGoForward = table_getCanNextPage(table)\n * ```\n */\nexport function table_getCanNextPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const pageIndex = table.atoms.pagination?.get()?.pageIndex ?? defaultPageIndex\n\n const pageCount = table_getPageCount(table)\n\n if (pageCount === -1) {\n return true\n }\n\n if (pageCount === 0) {\n return false\n }\n\n return pageIndex < pageCount - 1\n}\n\n/**\n * Moves the table to the previous page.\n *\n * This delegates to `table_setPageIndex` so pagination state ownership and\n * updater semantics remain consistent.\n *\n * @example\n * ```ts\n * table_previousPage(table)\n * ```\n */\nexport function table_previousPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table_setPageIndex(table, (old) => old - 1)\n}\n\n/**\n * Moves the table to the next page.\n *\n * This delegates to `table_setPageIndex` so pagination state ownership and\n * updater semantics remain consistent.\n *\n * @example\n * ```ts\n * table_nextPage(table)\n * ```\n */\nexport function table_nextPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table_setPageIndex(table, (old) => {\n return old + 1\n })\n}\n\n/**\n * Moves the table to the first page.\n *\n * This is a convenience wrapper around `table_setPageIndex(table, 0)`.\n *\n * @example\n * ```ts\n * table_firstPage(table)\n * ```\n */\nexport function table_firstPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table_setPageIndex(table, 0)\n}\n\n/**\n * Moves the table to the last known page.\n *\n * The target page is derived from `table_getPageCount(table) - 1`.\n *\n * @example\n * ```ts\n * table_lastPage(table)\n * ```\n */\nexport function table_lastPage<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table_setPageIndex(table, table_getPageCount(table) - 1)\n}\n\n/**\n * Resolves the number of pages for the current pagination state.\n *\n * `options.pageCount` wins for manual pagination. Otherwise the value is\n * calculated from `table_getRowCount(table)` and the current `pageSize`.\n *\n * @example\n * ```ts\n * const pages = table_getPageCount(table)\n * ```\n */\nexport function table_getPageCount<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return (\n table.options.pageCount ??\n Math.ceil(\n table_getRowCount(table) /\n (table.atoms.pagination?.get()?.pageSize ?? defaultPageSize),\n )\n )\n}\n\n/**\n * Resolves the total row count used for pagination math.\n *\n * `options.rowCount` wins for manual pagination. Otherwise the count comes\n * from the pre-paginated row model so filtering, grouping, sorting, and\n * expansion are reflected before the page slice is applied.\n *\n * @example\n * ```ts\n * const rows = table_getRowCount(table)\n * ```\n */\nexport function table_getRowCount<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return table.options.rowCount ?? table.getPrePaginatedRowModel().rows.length\n}\n"],"mappings":";;;AAMA,MAAM,mBAAmB;AACzB,MAAM,kBAAkB;;;;;;;;;;;;AAaxB,SAAgB,4BAA6C;CAC3D,OAAO;EACL,WAAW;EACX,UAAU;CACZ;AACF;;;;;;;;;;;;;AAcA,SAAgB,yBAGd,OAAyC;CACzC,IACE,MAAM,QAAQ,gBACd,MAAM,QAAQ,sBACd,CAAC,MAAM,QAAQ,kBAEf,qBAAqB,KAAK;AAE9B;;;;;;;;;;;;;AAcA,SAAgB,oBAGd,OAAyC,SAAmC;;CAC5E,MAAM,eAAyC,QAAQ;EAGrD,OAFiB,iBAAiB,SAAS,GAE7B;CAChB;CAEA,kDAAO,MAAM,SAAQ,uHAAqB,WAAW;AACvD;;;;;;;;;;;;;;AAeA,SAAgB,sBAGd,OAAyC,cAAwB;CACjE,oBACE,OACA,eACI,0BAA0B,IAC1B,WACE,MAAM,aAAa,cAAc,0BAA0B,CAC7D,CACN;AACF;;;;;;;;;;;;AAaA,SAAgB,mBAGd,OAAyC,SAA0B;CACnE,oBAAoB,QAAQ,QAAQ;EAClC,IAAI,YAAY,iBAAiB,SAAS,IAAI,SAAS;EAEvD,MAAM,eACJ,OAAO,MAAM,QAAQ,cAAc,eACnC,MAAM,QAAQ,cAAc,KACxB,OAAO,mBACP,MAAM,QAAQ,YAAY;EAEhC,YAAY,KAAK,IAAI,GAAG,KAAK,IAAI,WAAW,YAAY,CAAC;EAEzD,OAAO;GACL,GAAG;GACH;EACF;CACF,CAAC;AACH;;;;;;;;;;;;;AAcA,SAAgB,qBAGd,OAAyC,cAAwB;;CACjE,MAAM,6CACJ,MAAM,MAAM,2GAAY,IAAI,iFAAG,cAAa;CAC9C,MAAM,eAAe,eACjB,6CACC,MAAM,aAAa,0FAAY,cAAa;CACjD,IAAI,iBAAiB,kBAAkB;CACvC,mBAAmB,OAAO,YAAY;AACxC;;;;;;;;;;;;;AAcA,SAAgB,oBAGd,OAAyC,cAAwB;;CACjE,MAAM,6CACJ,MAAM,MAAM,8GAAY,IAAI,mFAAG,aAAY;CAC7C,MAAM,cAAc,eAChB,6CACC,MAAM,aAAa,4FAAY,aAAY;CAChD,IAAI,gBAAgB,iBAAiB;CACrC,kBAAkB,OAAO,WAAW;AACtC;;;;;;;;;;;;AAaA,SAAgB,kBAGd,OAAyC,SAA0B;CACnE,oBAAoB,QAAQ,QAAQ;EAClC,MAAM,WAAW,KAAK,IAAI,GAAG,iBAAiB,SAAS,IAAI,QAAQ,CAAC;EACpE,MAAM,cAAc,IAAI,WAAW,IAAI;EACvC,MAAM,YAAY,KAAK,MAAM,cAAc,QAAQ;EAEnD,OAAO;GACL,GAAG;GACH;GACA;EACF;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,qBAGd,OAAyC;CACzC,MAAM,YAAY,mBAAmB,KAAK;CAC1C,IAAI,cAA6B,CAAC;CAClC,IAAI,aAAa,YAAY,GAC3B,cAAc,CAAC,GAAG,IAAI,MAAM,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC;CAEpE,OAAO;AACT;;;;;;;;;;;;AAaA,SAAgB,yBAGd,OAAyC;;CACzC,mCAAQ,MAAM,MAAM,8GAAY,IAAI,mFAAG,cAAa,KAAK;AAC3D;;;;;;;;;;;;AAaA,SAAgB,qBAGd,OAAyC;;CACzC,MAAM,uCAAY,MAAM,MAAM,8GAAY,IAAI,mFAAG,cAAa;CAE9D,MAAM,YAAY,mBAAmB,KAAK;CAE1C,IAAI,cAAc,IAChB,OAAO;CAGT,IAAI,cAAc,GAChB,OAAO;CAGT,OAAO,YAAY,YAAY;AACjC;;;;;;;;;;;;AAaA,SAAgB,mBAGd,OAAyC;CACzC,OAAO,mBAAmB,QAAQ,QAAQ,MAAM,CAAC;AACnD;;;;;;;;;;;;AAaA,SAAgB,eAGd,OAAyC;CACzC,OAAO,mBAAmB,QAAQ,QAAQ;EACxC,OAAO,MAAM;CACf,CAAC;AACH;;;;;;;;;;;AAYA,SAAgB,gBAGd,OAAyC;CACzC,OAAO,mBAAmB,OAAO,CAAC;AACpC;;;;;;;;;;;AAYA,SAAgB,eAGd,OAAyC;CACzC,OAAO,mBAAmB,OAAO,mBAAmB,KAAK,IAAI,CAAC;AAChE;;;;;;;;;;;;AAaA,SAAgB,mBAGd,OAAyC;;CACzC,OACE,MAAM,QAAQ,aACd,KAAK,KACH,kBAAkB,KAAK,gCACpB,MAAM,MAAM,8GAAY,IAAI,mFAAG,aAAY,gBAChD;AAEJ;;;;;;;;;;;;;AAcA,SAAgB,kBAGd,OAAyC;CACzC,OAAO,MAAM,QAAQ,YAAY,MAAM,wBAAwB,CAAC,CAAC,KAAK;AACxE"}
@@ -0,0 +1,67 @@
1
+ const require_utils = require('../../utils.cjs');
2
+ const require_rowPinningFeature_utils = require('./rowPinningFeature.utils.cjs');
3
+
4
+ //#region src/features/row-pinning/rowPinningFeature.ts
5
+ /**
6
+ * Feature that adds row pinning state and APIs for top, center, and bottom rows.
7
+ */
8
+ const rowPinningFeature = {
9
+ getInitialState: (initialState) => {
10
+ return {
11
+ ...initialState,
12
+ rowPinning: {
13
+ ...require_rowPinningFeature_utils.getDefaultRowPinningState(),
14
+ ...initialState.rowPinning
15
+ }
16
+ };
17
+ },
18
+ getDefaultTableOptions: (table) => {
19
+ return { onRowPinningChange: require_utils.makeStateUpdater("rowPinning", table) };
20
+ },
21
+ assignRowPrototype: (prototype, table) => {
22
+ require_utils.assignPrototypeAPIs("rowPinningFeature", prototype, table, {
23
+ row_getCanPin: { fn: (row) => require_rowPinningFeature_utils.row_getCanPin(row) },
24
+ row_getIsPinned: { fn: (row) => require_rowPinningFeature_utils.row_getIsPinned(row) },
25
+ row_getPinnedIndex: {
26
+ fn: (row) => require_rowPinningFeature_utils.row_getPinnedIndex(row),
27
+ memoDeps: (row) => {
28
+ var _row$table$atoms$rowP;
29
+ return [row.table.getRowModel().rows, (_row$table$atoms$rowP = row.table.atoms.rowPinning) === null || _row$table$atoms$rowP === void 0 ? void 0 : _row$table$atoms$rowP.get()];
30
+ }
31
+ },
32
+ row_pin: { fn: (row, position, includeLeafRows, includeParentRows) => require_rowPinningFeature_utils.row_pin(row, position, includeLeafRows, includeParentRows) }
33
+ });
34
+ },
35
+ constructTableAPIs: (table) => {
36
+ require_utils.assignTableAPIs("rowPinningFeature", table, {
37
+ table_setRowPinning: { fn: (updater) => require_rowPinningFeature_utils.table_setRowPinning(table, updater) },
38
+ table_resetRowPinning: { fn: (defaultState) => require_rowPinningFeature_utils.table_resetRowPinning(table, defaultState) },
39
+ table_getIsSomeRowsPinned: { fn: (position) => require_rowPinningFeature_utils.table_getIsSomeRowsPinned(table, position) },
40
+ table_getTopRows: {
41
+ fn: () => require_rowPinningFeature_utils.table_getTopRows(table),
42
+ memoDeps: () => {
43
+ var _table$atoms$rowPinni;
44
+ return [table.getRowModel().rows, (_table$atoms$rowPinni = table.atoms.rowPinning) === null || _table$atoms$rowPinni === void 0 || (_table$atoms$rowPinni = _table$atoms$rowPinni.get()) === null || _table$atoms$rowPinni === void 0 ? void 0 : _table$atoms$rowPinni.top];
45
+ }
46
+ },
47
+ table_getBottomRows: {
48
+ fn: () => require_rowPinningFeature_utils.table_getBottomRows(table),
49
+ memoDeps: () => {
50
+ var _table$atoms$rowPinni2;
51
+ return [table.getRowModel().rows, (_table$atoms$rowPinni2 = table.atoms.rowPinning) === null || _table$atoms$rowPinni2 === void 0 || (_table$atoms$rowPinni2 = _table$atoms$rowPinni2.get()) === null || _table$atoms$rowPinni2 === void 0 ? void 0 : _table$atoms$rowPinni2.bottom];
52
+ }
53
+ },
54
+ table_getCenterRows: {
55
+ fn: () => require_rowPinningFeature_utils.table_getCenterRows(table),
56
+ memoDeps: () => {
57
+ var _table$atoms$rowPinni3;
58
+ return [table.getRowModel().rows, (_table$atoms$rowPinni3 = table.atoms.rowPinning) === null || _table$atoms$rowPinni3 === void 0 ? void 0 : _table$atoms$rowPinni3.get()];
59
+ }
60
+ }
61
+ });
62
+ }
63
+ };
64
+
65
+ //#endregion
66
+ exports.rowPinningFeature = rowPinningFeature;
67
+ //# sourceMappingURL=rowPinningFeature.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rowPinningFeature.cjs","names":["getDefaultRowPinningState","makeStateUpdater","row_getCanPin","row_getIsPinned","row_getPinnedIndex","row_pin","table_setRowPinning","table_resetRowPinning","table_getIsSomeRowsPinned","table_getTopRows","table_getBottomRows","table_getCenterRows"],"sources":["../../../src/features/row-pinning/rowPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n getDefaultRowPinningState,\n row_getCanPin,\n row_getIsPinned,\n row_getPinnedIndex,\n row_pin,\n table_getBottomRows,\n table_getCenterRows,\n table_getIsSomeRowsPinned,\n table_getTopRows,\n table_resetRowPinning,\n table_setRowPinning,\n} from './rowPinningFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds row pinning state and APIs for top, center, and bottom rows.\n */\nexport const rowPinningFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n ...initialState,\n rowPinning: {\n ...getDefaultRowPinningState(),\n ...initialState.rowPinning,\n },\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onRowPinningChange: makeStateUpdater('rowPinning', table),\n }\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('rowPinningFeature', prototype, table, {\n row_getCanPin: {\n fn: (row) => row_getCanPin(row),\n },\n row_getIsPinned: {\n fn: (row) => row_getIsPinned(row),\n },\n row_getPinnedIndex: {\n fn: (row) => row_getPinnedIndex(row),\n memoDeps: (row) => [\n row.table.getRowModel().rows,\n row.table.atoms.rowPinning?.get(),\n ],\n },\n row_pin: {\n fn: (row, position, includeLeafRows, includeParentRows) =>\n row_pin(row, position, includeLeafRows, includeParentRows),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('rowPinningFeature', table, {\n table_setRowPinning: {\n fn: (updater) => table_setRowPinning(table, updater),\n },\n table_resetRowPinning: {\n fn: (defaultState) => table_resetRowPinning(table, defaultState),\n },\n table_getIsSomeRowsPinned: {\n fn: (position) => table_getIsSomeRowsPinned(table, position),\n },\n table_getTopRows: {\n fn: () => table_getTopRows(table),\n memoDeps: () => [\n table.getRowModel().rows,\n table.atoms.rowPinning?.get()?.top,\n ],\n },\n table_getBottomRows: {\n fn: () => table_getBottomRows(table),\n memoDeps: () => [\n table.getRowModel().rows,\n table.atoms.rowPinning?.get()?.bottom,\n ],\n },\n table_getCenterRows: {\n fn: () => table_getCenterRows(table),\n memoDeps: () => [\n table.getRowModel().rows,\n table.atoms.rowPinning?.get(),\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAuBA,MAAa,oBAAkC;CAC7C,kBAAkB,iBAAiB;EACjC,OAAO;GACL,GAAG;GACH,YAAY;IACV,GAAGA,0DAA0B;IAC7B,GAAG,aAAa;GAClB;EACF;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,oBAAoBC,+BAAiB,cAAc,KAAK,EAC1D;CACF;CAEA,qBAAqB,WAAW,UAAU;EACxC,kCAAoB,qBAAqB,WAAW,OAAO;GACzD,eAAe,EACb,KAAK,QAAQC,8CAAc,GAAG,EAChC;GACA,iBAAiB,EACf,KAAK,QAAQC,gDAAgB,GAAG,EAClC;GACA,oBAAoB;IAClB,KAAK,QAAQC,mDAAmB,GAAG;IACnC,WAAW,QAAQ;;aACjB,IAAI,MAAM,YAAY,CAAC,CAAC,+BACxB,IAAI,MAAM,MAAM,0FAAY,IAAI,CAClC;;GACF;GACA,SAAS,EACP,KAAK,KAAK,UAAU,iBAAiB,sBACnCC,wCAAQ,KAAK,UAAU,iBAAiB,iBAAiB,EAC7D;EACF,CAAC;CACH;CAEA,qBAAqB,UAAU;EAC7B,8BAAgB,qBAAqB,OAAO;GAC1C,qBAAqB,EACnB,KAAK,YAAYC,oDAAoB,OAAO,OAAO,EACrD;GACA,uBAAuB,EACrB,KAAK,iBAAiBC,sDAAsB,OAAO,YAAY,EACjE;GACA,2BAA2B,EACzB,KAAK,aAAaC,0DAA0B,OAAO,QAAQ,EAC7D;GACA,kBAAkB;IAChB,UAAUC,iDAAiB,KAAK;IAChC,gBAAgB;;aACd,MAAM,YAAY,CAAC,CAAC,+BACpB,MAAM,MAAM,2GAAY,IAAI,iFAAG,GACjC;;GACF;GACA,qBAAqB;IACnB,UAAUC,oDAAoB,KAAK;IACnC,gBAAgB;;aACd,MAAM,YAAY,CAAC,CAAC,gCACpB,MAAM,MAAM,8GAAY,IAAI,mFAAG,MACjC;;GACF;GACA,qBAAqB;IACnB,UAAUC,oDAAoB,KAAK;IACnC,gBAAgB;;aACd,MAAM,YAAY,CAAC,CAAC,gCACpB,MAAM,MAAM,4FAAY,IAAI,CAC9B;;GACF;EACF,CAAC;CACH;AACF"}
@@ -0,0 +1,10 @@
1
+ import { TableFeature } from "../../types/TableFeatures.cjs";
2
+
3
+ //#region src/features/row-pinning/rowPinningFeature.d.ts
4
+ /**
5
+ * Feature that adds row pinning state and APIs for top, center, and bottom rows.
6
+ */
7
+ declare const rowPinningFeature: TableFeature;
8
+ //#endregion
9
+ export { rowPinningFeature };
10
+ //# sourceMappingURL=rowPinningFeature.d.cts.map
@@ -0,0 +1,10 @@
1
+ import { TableFeature } from "../../types/TableFeatures.js";
2
+
3
+ //#region src/features/row-pinning/rowPinningFeature.d.ts
4
+ /**
5
+ * Feature that adds row pinning state and APIs for top, center, and bottom rows.
6
+ */
7
+ declare const rowPinningFeature: TableFeature;
8
+ //#endregion
9
+ export { rowPinningFeature };
10
+ //# sourceMappingURL=rowPinningFeature.d.ts.map
@@ -0,0 +1,67 @@
1
+ import { assignPrototypeAPIs, assignTableAPIs, makeStateUpdater } from "../../utils.js";
2
+ import { getDefaultRowPinningState, row_getCanPin, row_getIsPinned, row_getPinnedIndex, row_pin, table_getBottomRows, table_getCenterRows, table_getIsSomeRowsPinned, table_getTopRows, table_resetRowPinning, table_setRowPinning } from "./rowPinningFeature.utils.js";
3
+
4
+ //#region src/features/row-pinning/rowPinningFeature.ts
5
+ /**
6
+ * Feature that adds row pinning state and APIs for top, center, and bottom rows.
7
+ */
8
+ const rowPinningFeature = {
9
+ getInitialState: (initialState) => {
10
+ return {
11
+ ...initialState,
12
+ rowPinning: {
13
+ ...getDefaultRowPinningState(),
14
+ ...initialState.rowPinning
15
+ }
16
+ };
17
+ },
18
+ getDefaultTableOptions: (table) => {
19
+ return { onRowPinningChange: makeStateUpdater("rowPinning", table) };
20
+ },
21
+ assignRowPrototype: (prototype, table) => {
22
+ assignPrototypeAPIs("rowPinningFeature", prototype, table, {
23
+ row_getCanPin: { fn: (row) => row_getCanPin(row) },
24
+ row_getIsPinned: { fn: (row) => row_getIsPinned(row) },
25
+ row_getPinnedIndex: {
26
+ fn: (row) => row_getPinnedIndex(row),
27
+ memoDeps: (row) => {
28
+ var _row$table$atoms$rowP;
29
+ return [row.table.getRowModel().rows, (_row$table$atoms$rowP = row.table.atoms.rowPinning) === null || _row$table$atoms$rowP === void 0 ? void 0 : _row$table$atoms$rowP.get()];
30
+ }
31
+ },
32
+ row_pin: { fn: (row, position, includeLeafRows, includeParentRows) => row_pin(row, position, includeLeafRows, includeParentRows) }
33
+ });
34
+ },
35
+ constructTableAPIs: (table) => {
36
+ assignTableAPIs("rowPinningFeature", table, {
37
+ table_setRowPinning: { fn: (updater) => table_setRowPinning(table, updater) },
38
+ table_resetRowPinning: { fn: (defaultState) => table_resetRowPinning(table, defaultState) },
39
+ table_getIsSomeRowsPinned: { fn: (position) => table_getIsSomeRowsPinned(table, position) },
40
+ table_getTopRows: {
41
+ fn: () => table_getTopRows(table),
42
+ memoDeps: () => {
43
+ var _table$atoms$rowPinni;
44
+ return [table.getRowModel().rows, (_table$atoms$rowPinni = table.atoms.rowPinning) === null || _table$atoms$rowPinni === void 0 || (_table$atoms$rowPinni = _table$atoms$rowPinni.get()) === null || _table$atoms$rowPinni === void 0 ? void 0 : _table$atoms$rowPinni.top];
45
+ }
46
+ },
47
+ table_getBottomRows: {
48
+ fn: () => table_getBottomRows(table),
49
+ memoDeps: () => {
50
+ var _table$atoms$rowPinni2;
51
+ return [table.getRowModel().rows, (_table$atoms$rowPinni2 = table.atoms.rowPinning) === null || _table$atoms$rowPinni2 === void 0 || (_table$atoms$rowPinni2 = _table$atoms$rowPinni2.get()) === null || _table$atoms$rowPinni2 === void 0 ? void 0 : _table$atoms$rowPinni2.bottom];
52
+ }
53
+ },
54
+ table_getCenterRows: {
55
+ fn: () => table_getCenterRows(table),
56
+ memoDeps: () => {
57
+ var _table$atoms$rowPinni3;
58
+ return [table.getRowModel().rows, (_table$atoms$rowPinni3 = table.atoms.rowPinning) === null || _table$atoms$rowPinni3 === void 0 ? void 0 : _table$atoms$rowPinni3.get()];
59
+ }
60
+ }
61
+ });
62
+ }
63
+ };
64
+
65
+ //#endregion
66
+ export { rowPinningFeature };
67
+ //# sourceMappingURL=rowPinningFeature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rowPinningFeature.js","names":[],"sources":["../../../src/features/row-pinning/rowPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n getDefaultRowPinningState,\n row_getCanPin,\n row_getIsPinned,\n row_getPinnedIndex,\n row_pin,\n table_getBottomRows,\n table_getCenterRows,\n table_getIsSomeRowsPinned,\n table_getTopRows,\n table_resetRowPinning,\n table_setRowPinning,\n} from './rowPinningFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds row pinning state and APIs for top, center, and bottom rows.\n */\nexport const rowPinningFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n ...initialState,\n rowPinning: {\n ...getDefaultRowPinningState(),\n ...initialState.rowPinning,\n },\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onRowPinningChange: makeStateUpdater('rowPinning', table),\n }\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('rowPinningFeature', prototype, table, {\n row_getCanPin: {\n fn: (row) => row_getCanPin(row),\n },\n row_getIsPinned: {\n fn: (row) => row_getIsPinned(row),\n },\n row_getPinnedIndex: {\n fn: (row) => row_getPinnedIndex(row),\n memoDeps: (row) => [\n row.table.getRowModel().rows,\n row.table.atoms.rowPinning?.get(),\n ],\n },\n row_pin: {\n fn: (row, position, includeLeafRows, includeParentRows) =>\n row_pin(row, position, includeLeafRows, includeParentRows),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('rowPinningFeature', table, {\n table_setRowPinning: {\n fn: (updater) => table_setRowPinning(table, updater),\n },\n table_resetRowPinning: {\n fn: (defaultState) => table_resetRowPinning(table, defaultState),\n },\n table_getIsSomeRowsPinned: {\n fn: (position) => table_getIsSomeRowsPinned(table, position),\n },\n table_getTopRows: {\n fn: () => table_getTopRows(table),\n memoDeps: () => [\n table.getRowModel().rows,\n table.atoms.rowPinning?.get()?.top,\n ],\n },\n table_getBottomRows: {\n fn: () => table_getBottomRows(table),\n memoDeps: () => [\n table.getRowModel().rows,\n table.atoms.rowPinning?.get()?.bottom,\n ],\n },\n table_getCenterRows: {\n fn: () => table_getCenterRows(table),\n memoDeps: () => [\n table.getRowModel().rows,\n table.atoms.rowPinning?.get(),\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAuBA,MAAa,oBAAkC;CAC7C,kBAAkB,iBAAiB;EACjC,OAAO;GACL,GAAG;GACH,YAAY;IACV,GAAG,0BAA0B;IAC7B,GAAG,aAAa;GAClB;EACF;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,oBAAoB,iBAAiB,cAAc,KAAK,EAC1D;CACF;CAEA,qBAAqB,WAAW,UAAU;EACxC,oBAAoB,qBAAqB,WAAW,OAAO;GACzD,eAAe,EACb,KAAK,QAAQ,cAAc,GAAG,EAChC;GACA,iBAAiB,EACf,KAAK,QAAQ,gBAAgB,GAAG,EAClC;GACA,oBAAoB;IAClB,KAAK,QAAQ,mBAAmB,GAAG;IACnC,WAAW,QAAQ;;aACjB,IAAI,MAAM,YAAY,CAAC,CAAC,+BACxB,IAAI,MAAM,MAAM,0FAAY,IAAI,CAClC;;GACF;GACA,SAAS,EACP,KAAK,KAAK,UAAU,iBAAiB,sBACnC,QAAQ,KAAK,UAAU,iBAAiB,iBAAiB,EAC7D;EACF,CAAC;CACH;CAEA,qBAAqB,UAAU;EAC7B,gBAAgB,qBAAqB,OAAO;GAC1C,qBAAqB,EACnB,KAAK,YAAY,oBAAoB,OAAO,OAAO,EACrD;GACA,uBAAuB,EACrB,KAAK,iBAAiB,sBAAsB,OAAO,YAAY,EACjE;GACA,2BAA2B,EACzB,KAAK,aAAa,0BAA0B,OAAO,QAAQ,EAC7D;GACA,kBAAkB;IAChB,UAAU,iBAAiB,KAAK;IAChC,gBAAgB;;aACd,MAAM,YAAY,CAAC,CAAC,+BACpB,MAAM,MAAM,2GAAY,IAAI,iFAAG,GACjC;;GACF;GACA,qBAAqB;IACnB,UAAU,oBAAoB,KAAK;IACnC,gBAAgB;;aACd,MAAM,YAAY,CAAC,CAAC,gCACpB,MAAM,MAAM,8GAAY,IAAI,mFAAG,MACjC;;GACF;GACA,qBAAqB;IACnB,UAAU,oBAAoB,KAAK;IACnC,gBAAgB;;aACd,MAAM,YAAY,CAAC,CAAC,gCACpB,MAAM,MAAM,4FAAY,IAAI,CAC9B;;GACF;EACF,CAAC;CACH;AACF"}
@@ -0,0 +1,83 @@
1
+ import { OnChangeFn, RowData, Updater } from "../../types/type-utils.cjs";
2
+ import { Row } from "../../types/Row.cjs";
3
+ import { TableFeatures } from "../../types/TableFeatures.cjs";
4
+
5
+ //#region src/features/row-pinning/rowPinningFeature.types.d.ts
6
+ type RowPinningPosition = false | 'top' | 'bottom';
7
+ interface RowPinningState {
8
+ bottom: Array<string>;
9
+ top: Array<string>;
10
+ }
11
+ interface TableState_RowPinning {
12
+ rowPinning: RowPinningState;
13
+ }
14
+ interface TableOptions_RowPinning<TFeatures extends TableFeatures, TData extends RowData> {
15
+ /**
16
+ * Allows rows to be pinned to top or bottom regions.
17
+ *
18
+ * Provide a predicate to decide per row. Defaults to `true`.
19
+ */
20
+ enableRowPinning?: boolean | ((row: Row<TFeatures, TData>) => boolean);
21
+ /**
22
+ * When `false`, pinned rows will not be visible if they are filtered or paginated out of the table. When `true`, pinned rows will always be visible regardless of filtering or pagination. Defaults to `true`.
23
+ */
24
+ keepPinnedRows?: boolean;
25
+ /**
26
+ * Called with an updater when row pinning state changes. Pair this with
27
+ * `state.rowPinning` when using external state; external atoms can own the
28
+ * slice without this callback.
29
+ */
30
+ onRowPinningChange?: OnChangeFn<RowPinningState>;
31
+ }
32
+ interface RowPinningDefaultOptions {
33
+ onRowPinningChange: OnChangeFn<RowPinningState>;
34
+ }
35
+ interface Row_RowPinning {
36
+ /**
37
+ * Checks whether this row can be pinned.
38
+ */
39
+ getCanPin: () => boolean;
40
+ /**
41
+ * Returns the pinned position of the row. (`'top'`, `'bottom'` or `false`)
42
+ */
43
+ getIsPinned: () => RowPinningPosition;
44
+ /**
45
+ * Returns the numeric pinned index of the row within a pinned row group.
46
+ */
47
+ getPinnedIndex: () => number;
48
+ /**
49
+ * Pins a row to the `'top'` or `'bottom'`, or unpins the row to the center if `false` is passed.
50
+ */
51
+ pin: (position: RowPinningPosition, includeLeafRows?: boolean, includeParentRows?: boolean) => void;
52
+ }
53
+ interface Table_RowPinning<TFeatures extends TableFeatures, TData extends RowData> {
54
+ /**
55
+ * Gets rows pinned to the bottom region.
56
+ */
57
+ getBottomRows: () => Array<Row<TFeatures, TData>>;
58
+ /**
59
+ * Gets rows that are not pinned to the top or bottom region.
60
+ */
61
+ getCenterRows: () => Array<Row<TFeatures, TData>>;
62
+ /**
63
+ * Checks whether any rows are pinned, optionally limited to one region.
64
+ */
65
+ getIsSomeRowsPinned: (position?: RowPinningPosition) => boolean;
66
+ /**
67
+ * Gets rows pinned to the top region.
68
+ */
69
+ getTopRows: () => Array<Row<TFeatures, TData>>;
70
+ /**
71
+ * Resets `rowPinning` to `initialState.rowPinning`.
72
+ *
73
+ * Pass `true` to ignore initial state and reset to empty top/bottom arrays.
74
+ */
75
+ resetRowPinning: (defaultState?: boolean) => void;
76
+ /**
77
+ * Updates row pinning state with a next state or updater function.
78
+ */
79
+ setRowPinning: (updater: Updater<RowPinningState>) => void;
80
+ }
81
+ //#endregion
82
+ export { RowPinningDefaultOptions, RowPinningPosition, RowPinningState, Row_RowPinning, TableOptions_RowPinning, TableState_RowPinning, Table_RowPinning };
83
+ //# sourceMappingURL=rowPinningFeature.types.d.cts.map