@tanstack/table-core 9.0.0-beta.9 → 9.0.1

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 (672) hide show
  1. package/README.md +27 -9
  2. package/dist/core/cells/constructCell.d.ts +4 -6
  3. package/dist/core/cells/constructCell.js +4 -6
  4. package/dist/core/cells/coreCellsFeature.d.ts +1 -3
  5. package/dist/core/cells/coreCellsFeature.js +1 -2
  6. package/dist/core/cells/coreCellsFeature.types.d.ts +7 -9
  7. package/dist/core/cells/coreCellsFeature.utils.d.ts +5 -5
  8. package/dist/core/cells/coreCellsFeature.utils.js +1 -2
  9. package/dist/core/columns/constructColumn.d.ts +4 -6
  10. package/dist/core/columns/constructColumn.js +8 -9
  11. package/dist/core/columns/coreColumnsFeature.d.ts +2 -4
  12. package/dist/core/columns/coreColumnsFeature.js +14 -21
  13. package/dist/core/columns/coreColumnsFeature.types.d.ts +13 -15
  14. package/dist/core/columns/coreColumnsFeature.utils.d.ts +10 -12
  15. package/dist/core/columns/coreColumnsFeature.utils.js +19 -20
  16. package/dist/core/coreFeatures.d.ts +2 -2
  17. package/dist/core/coreFeatures.js +1 -2
  18. package/dist/core/headers/buildHeaderGroups.d.ts +3 -5
  19. package/dist/core/headers/buildHeaderGroups.js +99 -85
  20. package/dist/core/headers/constructHeader.d.ts +3 -5
  21. package/dist/core/headers/constructHeader.js +4 -6
  22. package/dist/core/headers/coreHeadersFeature.d.ts +1 -3
  23. package/dist/core/headers/coreHeadersFeature.js +9 -13
  24. package/dist/core/headers/coreHeadersFeature.types.d.ts +22 -12
  25. package/dist/core/headers/coreHeadersFeature.utils.d.ts +8 -8
  26. package/dist/core/headers/coreHeadersFeature.utils.js +14 -17
  27. package/dist/core/reactivity/coreReactivityFeature.types.d.ts +8 -3
  28. package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +1 -3
  29. package/dist/core/reactivity/coreReactivityFeature.utils.js +1 -2
  30. package/dist/core/reactivity/renderPhaseReactivity.d.ts +80 -0
  31. package/dist/core/reactivity/renderPhaseReactivity.js +95 -0
  32. package/dist/core/row-models/coreRowModelsFeature.d.ts +1 -3
  33. package/dist/core/row-models/coreRowModelsFeature.js +1 -2
  34. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +7 -17
  35. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +17 -19
  36. package/dist/core/row-models/coreRowModelsFeature.utils.js +9 -28
  37. package/dist/core/row-models/createCoreRowModel.d.ts +3 -5
  38. package/dist/core/row-models/createCoreRowModel.js +29 -24
  39. package/dist/core/rows/constructRow.d.ts +3 -5
  40. package/dist/core/rows/constructRow.js +9 -13
  41. package/dist/core/rows/coreRowsFeature.d.ts +1 -3
  42. package/dist/core/rows/coreRowsFeature.js +20 -5
  43. package/dist/core/rows/coreRowsFeature.types.d.ts +43 -11
  44. package/dist/core/rows/coreRowsFeature.utils.d.ts +26 -9
  45. package/dist/core/rows/coreRowsFeature.utils.js +65 -14
  46. package/dist/core/table/constructTable.d.ts +2 -4
  47. package/dist/core/table/constructTable.js +54 -22
  48. package/dist/core/table/coreTablesFeature.d.ts +1 -3
  49. package/dist/core/table/coreTablesFeature.js +1 -2
  50. package/dist/core/table/coreTablesFeature.types.d.ts +41 -24
  51. package/dist/core/table/coreTablesFeature.utils.d.ts +34 -12
  52. package/dist/core/table/coreTablesFeature.utils.js +71 -25
  53. package/dist/experimental-worker-plugin.d.ts +5 -0
  54. package/dist/experimental-worker-plugin.js +6 -0
  55. package/dist/features/cell-selection/cellSelectionFeature.d.ts +8 -0
  56. package/dist/features/cell-selection/cellSelectionFeature.js +128 -0
  57. package/dist/features/cell-selection/cellSelectionFeature.types.d.ts +296 -0
  58. package/dist/features/cell-selection/cellSelectionFeature.utils.d.ts +306 -0
  59. package/dist/features/cell-selection/cellSelectionFeature.utils.js +879 -0
  60. package/dist/features/cell-selection/cellSelectionGeometry.js +121 -0
  61. package/dist/features/cell-spanning/cellSpanningFeature.d.ts +13 -0
  62. package/dist/features/cell-spanning/cellSpanningFeature.js +47 -0
  63. package/dist/features/cell-spanning/cellSpanningFeature.types.d.ts +150 -0
  64. package/dist/features/cell-spanning/cellSpanningFeature.utils.d.ts +74 -0
  65. package/dist/features/cell-spanning/cellSpanningFeature.utils.js +262 -0
  66. package/dist/features/column-faceting/columnFacetingFeature.d.ts +7 -3
  67. package/dist/features/column-faceting/columnFacetingFeature.js +14 -43
  68. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +15 -35
  69. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +10 -12
  70. package/dist/features/column-faceting/columnFacetingFeature.utils.js +29 -14
  71. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +2 -4
  72. package/dist/features/column-faceting/createFacetedMinMaxValues.js +9 -7
  73. package/dist/features/column-faceting/createFacetedRowModel.d.ts +3 -5
  74. package/dist/features/column-faceting/createFacetedRowModel.js +12 -17
  75. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +2 -4
  76. package/dist/features/column-faceting/createFacetedUniqueValues.js +12 -9
  77. package/dist/features/column-filtering/columnFilteringFeature.d.ts +1 -3
  78. package/dist/features/column-filtering/columnFilteringFeature.js +4 -5
  79. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +90 -33
  80. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +25 -18
  81. package/dist/features/column-filtering/columnFilteringFeature.utils.js +42 -23
  82. package/dist/features/column-filtering/createFilteredRowModel.d.ts +11 -7
  83. package/dist/features/column-filtering/createFilteredRowModel.js +34 -30
  84. package/dist/features/column-filtering/filterFns.d.ts +210 -0
  85. package/dist/features/column-filtering/filterFns.js +377 -0
  86. package/dist/features/column-filtering/filterRowsUtils.js +12 -4
  87. package/dist/features/column-grouping/columnGroupingFeature.d.ts +2 -4
  88. package/dist/features/column-grouping/columnGroupingFeature.js +7 -20
  89. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +14 -52
  90. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +12 -51
  91. package/dist/features/column-grouping/columnGroupingFeature.utils.js +8 -61
  92. package/dist/features/column-grouping/createGroupedRowModel.d.ts +7 -7
  93. package/dist/features/column-grouping/createGroupedRowModel.js +79 -43
  94. package/dist/features/column-ordering/columnOrderingFeature.d.ts +1 -3
  95. package/dist/features/column-ordering/columnOrderingFeature.js +19 -24
  96. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +28 -5
  97. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +26 -16
  98. package/dist/features/column-ordering/columnOrderingFeature.utils.js +36 -18
  99. package/dist/features/column-pinning/columnPinningFeature.d.ts +7 -4
  100. package/dist/features/column-pinning/columnPinningFeature.js +126 -146
  101. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +53 -44
  102. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +100 -93
  103. package/dist/features/column-pinning/columnPinningFeature.utils.js +148 -150
  104. package/dist/features/column-resizing/columnResizingFeature.d.ts +1 -3
  105. package/dist/features/column-resizing/columnResizingFeature.js +1 -2
  106. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +2 -7
  107. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +7 -9
  108. package/dist/features/column-resizing/columnResizingFeature.utils.js +86 -48
  109. package/dist/features/column-sizing/columnSizingFeature.d.ts +1 -3
  110. package/dist/features/column-sizing/columnSizingFeature.js +35 -70
  111. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +52 -11
  112. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +43 -27
  113. package/dist/features/column-sizing/columnSizingFeature.utils.js +95 -54
  114. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +1 -3
  115. package/dist/features/column-visibility/columnVisibilityFeature.js +26 -38
  116. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +4 -6
  117. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +22 -20
  118. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +39 -32
  119. package/dist/features/global-filtering/globalFilteringFeature.d.ts +1 -3
  120. package/dist/features/global-filtering/globalFilteringFeature.js +3 -4
  121. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -6
  122. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -13
  123. package/dist/features/global-filtering/globalFilteringFeature.utils.js +7 -8
  124. package/dist/features/row-aggregation/aggregationFns.d.ts +67 -0
  125. package/dist/features/row-aggregation/aggregationFns.js +279 -0
  126. package/dist/features/row-aggregation/rowAggregationFeature.d.ts +8 -0
  127. package/dist/features/row-aggregation/rowAggregationFeature.js +35 -0
  128. package/dist/features/row-aggregation/rowAggregationFeature.types.d.ts +193 -0
  129. package/dist/features/row-aggregation/rowAggregationFeature.types.js +11 -0
  130. package/dist/features/row-aggregation/rowAggregationFeature.utils.d.ts +46 -0
  131. package/dist/features/row-aggregation/rowAggregationFeature.utils.js +235 -0
  132. package/dist/features/row-expanding/createExpandedRowModel.d.ts +3 -5
  133. package/dist/features/row-expanding/createExpandedRowModel.js +9 -13
  134. package/dist/features/row-expanding/rowExpandingFeature.d.ts +1 -3
  135. package/dist/features/row-expanding/rowExpandingFeature.js +1 -2
  136. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +7 -18
  137. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +26 -22
  138. package/dist/features/row-expanding/rowExpandingFeature.utils.js +66 -45
  139. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +3 -5
  140. package/dist/features/row-pagination/createPaginatedRowModel.js +10 -12
  141. package/dist/features/row-pagination/rowPaginationFeature.d.ts +1 -3
  142. package/dist/features/row-pagination/rowPaginationFeature.js +1 -2
  143. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +6 -17
  144. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +18 -20
  145. package/dist/features/row-pagination/rowPaginationFeature.utils.js +10 -17
  146. package/dist/features/row-pinning/rowPinningFeature.d.ts +1 -3
  147. package/dist/features/row-pinning/rowPinningFeature.js +5 -18
  148. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +3 -5
  149. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +8 -10
  150. package/dist/features/row-pinning/rowPinningFeature.utils.js +12 -18
  151. package/dist/features/row-selection/rowSelectionFeature.d.ts +1 -3
  152. package/dist/features/row-selection/rowSelectionFeature.js +70 -25
  153. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +69 -16
  154. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +70 -38
  155. package/dist/features/row-selection/rowSelectionFeature.utils.js +229 -108
  156. package/dist/features/row-sorting/createSortedRowModel.d.ts +11 -7
  157. package/dist/features/row-sorting/createSortedRowModel.js +72 -54
  158. package/dist/features/row-sorting/rowSortingFeature.d.ts +1 -3
  159. package/dist/features/row-sorting/rowSortingFeature.js +2 -2
  160. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +74 -31
  161. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +39 -27
  162. package/dist/features/row-sorting/rowSortingFeature.utils.js +66 -33
  163. package/dist/features/row-sorting/sortFns.d.ts +96 -0
  164. package/dist/features/row-sorting/sortFns.js +216 -0
  165. package/dist/features/stockFeatures.d.ts +7 -3
  166. package/dist/features/stockFeatures.js +7 -2
  167. package/dist/flex-render.d.ts +2 -4
  168. package/dist/flex-render.js +10 -3
  169. package/dist/helpers/columnHelper.d.ts +3 -5
  170. package/dist/helpers/columnHelper.js +1 -2
  171. package/dist/helpers/metaHelper.d.ts +1 -2
  172. package/dist/helpers/metaHelper.js +1 -2
  173. package/dist/helpers/tableFeatures.d.ts +30 -13
  174. package/dist/helpers/tableFeatures.js +28 -10
  175. package/dist/helpers/tableOptions.d.ts +1 -3
  176. package/dist/helpers/tableOptions.js +1 -2
  177. package/dist/index.d.ts +32 -26
  178. package/dist/index.js +9 -5
  179. package/dist/reactivity.d.ts +2 -1
  180. package/dist/reactivity.js +2 -1
  181. package/dist/static-functions.d.ts +12 -9
  182. package/dist/static-functions.js +13 -10
  183. package/dist/store-reactivity-bindings.d.ts +1 -3
  184. package/dist/store-reactivity-bindings.js +3 -4
  185. package/dist/types/Cell.d.ts +9 -5
  186. package/dist/types/Column.d.ts +13 -15
  187. package/dist/types/ColumnDef.d.ts +23 -19
  188. package/dist/types/Header.d.ts +3 -5
  189. package/dist/types/HeaderGroup.d.ts +3 -5
  190. package/dist/types/Row.d.ts +7 -7
  191. package/dist/types/RowModel.d.ts +11 -25
  192. package/dist/types/RowModelFns.d.ts +5 -7
  193. package/dist/types/Table.d.ts +29 -32
  194. package/dist/types/TableFeatures.d.ts +372 -30
  195. package/dist/types/TableOptions.d.ts +24 -14
  196. package/dist/types/TableState.d.ts +8 -8
  197. package/dist/types/type-utils.d.ts +10 -4
  198. package/dist/utils.d.ts +42 -27
  199. package/dist/utils.js +71 -33
  200. package/dist/worker/createTableWorker.d.ts +102 -0
  201. package/dist/worker/createTableWorker.js +188 -0
  202. package/dist/worker/createWorkerRowModel.d.ts +40 -0
  203. package/dist/worker/createWorkerRowModel.js +77 -0
  204. package/dist/worker/initTableWorker.d.ts +31 -0
  205. package/dist/worker/initTableWorker.js +99 -0
  206. package/dist/worker/rebuildRowModel.d.ts +11 -0
  207. package/dist/worker/rebuildRowModel.js +71 -0
  208. package/dist/worker/serializeRowModel.js +51 -0
  209. package/dist/worker/tableWorkerProtocol.d.ts +88 -0
  210. package/dist/worker/tableWorkerProtocol.js +26 -0
  211. package/package.json +12 -28
  212. package/skills/aggregation/SKILL.md +137 -0
  213. package/skills/api-not-found/SKILL.md +113 -0
  214. package/skills/cell-selection/SKILL.md +200 -0
  215. package/skills/cell-spanning/SKILL.md +158 -0
  216. package/skills/client-vs-server/SKILL.md +164 -0
  217. package/skills/column-faceting/SKILL.md +93 -0
  218. package/skills/column-filtering/SKILL.md +83 -0
  219. package/skills/column-ordering/SKILL.md +71 -0
  220. package/skills/column-pinning/SKILL.md +85 -0
  221. package/skills/column-resizing/SKILL.md +87 -0
  222. package/skills/column-sizing/SKILL.md +68 -0
  223. package/skills/column-visibility/SKILL.md +71 -0
  224. package/skills/core/SKILL.md +175 -0
  225. package/skills/custom-features/SKILL.md +235 -0
  226. package/skills/expanding/SKILL.md +76 -0
  227. package/skills/global-filtering/SKILL.md +80 -0
  228. package/skills/grouping/SKILL.md +47 -401
  229. package/skills/migrate-v8-to-v9/SKILL.md +275 -416
  230. package/skills/pagination/SKILL.md +33 -344
  231. package/skills/row-pinning/SKILL.md +43 -234
  232. package/skills/row-selection/SKILL.md +79 -296
  233. package/skills/sorting/SKILL.md +41 -303
  234. package/skills/table-features/SKILL.md +159 -0
  235. package/skills/typescript/SKILL.md +126 -0
  236. package/dist/core/cells/constructCell.cjs +0 -34
  237. package/dist/core/cells/constructCell.cjs.map +0 -1
  238. package/dist/core/cells/constructCell.d.cts +0 -17
  239. package/dist/core/cells/constructCell.js.map +0 -1
  240. package/dist/core/cells/coreCellsFeature.cjs +0 -21
  241. package/dist/core/cells/coreCellsFeature.cjs.map +0 -1
  242. package/dist/core/cells/coreCellsFeature.d.cts +0 -10
  243. package/dist/core/cells/coreCellsFeature.js.map +0 -1
  244. package/dist/core/cells/coreCellsFeature.types.d.cts +0 -57
  245. package/dist/core/cells/coreCellsFeature.utils.cjs +0 -57
  246. package/dist/core/cells/coreCellsFeature.utils.cjs.map +0 -1
  247. package/dist/core/cells/coreCellsFeature.utils.d.cts +0 -53
  248. package/dist/core/cells/coreCellsFeature.utils.js.map +0 -1
  249. package/dist/core/columns/constructColumn.cjs +0 -61
  250. package/dist/core/columns/constructColumn.cjs.map +0 -1
  251. package/dist/core/columns/constructColumn.d.cts +0 -16
  252. package/dist/core/columns/constructColumn.js.map +0 -1
  253. package/dist/core/columns/coreColumnsFeature.cjs +0 -70
  254. package/dist/core/columns/coreColumnsFeature.cjs.map +0 -1
  255. package/dist/core/columns/coreColumnsFeature.d.cts +0 -10
  256. package/dist/core/columns/coreColumnsFeature.js.map +0 -1
  257. package/dist/core/columns/coreColumnsFeature.types.d.cts +0 -94
  258. package/dist/core/columns/coreColumnsFeature.utils.cjs +0 -187
  259. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +0 -1
  260. package/dist/core/columns/coreColumnsFeature.utils.d.cts +0 -119
  261. package/dist/core/columns/coreColumnsFeature.utils.js.map +0 -1
  262. package/dist/core/coreFeatures.cjs +0 -25
  263. package/dist/core/coreFeatures.cjs.map +0 -1
  264. package/dist/core/coreFeatures.d.cts +0 -26
  265. package/dist/core/coreFeatures.js.map +0 -1
  266. package/dist/core/headers/buildHeaderGroups.cjs +0 -103
  267. package/dist/core/headers/buildHeaderGroups.cjs.map +0 -1
  268. package/dist/core/headers/buildHeaderGroups.d.cts +0 -16
  269. package/dist/core/headers/buildHeaderGroups.js.map +0 -1
  270. package/dist/core/headers/constructHeader.cjs +0 -41
  271. package/dist/core/headers/constructHeader.cjs.map +0 -1
  272. package/dist/core/headers/constructHeader.d.cts +0 -22
  273. package/dist/core/headers/constructHeader.js.map +0 -1
  274. package/dist/core/headers/coreHeadersFeature.cjs +0 -55
  275. package/dist/core/headers/coreHeadersFeature.cjs.map +0 -1
  276. package/dist/core/headers/coreHeadersFeature.d.cts +0 -10
  277. package/dist/core/headers/coreHeadersFeature.js.map +0 -1
  278. package/dist/core/headers/coreHeadersFeature.types.d.cts +0 -106
  279. package/dist/core/headers/coreHeadersFeature.utils.cjs +0 -142
  280. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +0 -1
  281. package/dist/core/headers/coreHeadersFeature.utils.d.cts +0 -85
  282. package/dist/core/headers/coreHeadersFeature.utils.js.map +0 -1
  283. package/dist/core/reactivity/coreReactivityFeature.types.d.cts +0 -48
  284. package/dist/core/reactivity/coreReactivityFeature.utils.cjs +0 -24
  285. package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +0 -1
  286. package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +0 -24
  287. package/dist/core/reactivity/coreReactivityFeature.utils.js.map +0 -1
  288. package/dist/core/row-models/coreRowModelsFeature.cjs +0 -27
  289. package/dist/core/row-models/coreRowModelsFeature.cjs.map +0 -1
  290. package/dist/core/row-models/coreRowModelsFeature.d.cts +0 -10
  291. package/dist/core/row-models/coreRowModelsFeature.js.map +0 -1
  292. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +0 -41
  293. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +0 -215
  294. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +0 -1
  295. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +0 -153
  296. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +0 -1
  297. package/dist/core/row-models/createCoreRowModel.cjs +0 -52
  298. package/dist/core/row-models/createCoreRowModel.cjs.map +0 -1
  299. package/dist/core/row-models/createCoreRowModel.d.cts +0 -15
  300. package/dist/core/row-models/createCoreRowModel.js.map +0 -1
  301. package/dist/core/rows/constructRow.cjs +0 -44
  302. package/dist/core/rows/constructRow.cjs.map +0 -1
  303. package/dist/core/rows/constructRow.d.cts +0 -15
  304. package/dist/core/rows/constructRow.js.map +0 -1
  305. package/dist/core/rows/coreRowsFeature.cjs +0 -37
  306. package/dist/core/rows/coreRowsFeature.cjs.map +0 -1
  307. package/dist/core/rows/coreRowsFeature.d.cts +0 -10
  308. package/dist/core/rows/coreRowsFeature.js.map +0 -1
  309. package/dist/core/rows/coreRowsFeature.types.d.cts +0 -99
  310. package/dist/core/rows/coreRowsFeature.utils.cjs +0 -192
  311. package/dist/core/rows/coreRowsFeature.utils.cjs.map +0 -1
  312. package/dist/core/rows/coreRowsFeature.utils.d.cts +0 -127
  313. package/dist/core/rows/coreRowsFeature.utils.js.map +0 -1
  314. package/dist/core/table/constructTable.cjs +0 -119
  315. package/dist/core/table/constructTable.cjs.map +0 -1
  316. package/dist/core/table/constructTable.d.cts +0 -22
  317. package/dist/core/table/constructTable.js.map +0 -1
  318. package/dist/core/table/coreTablesFeature.cjs +0 -17
  319. package/dist/core/table/coreTablesFeature.cjs.map +0 -1
  320. package/dist/core/table/coreTablesFeature.d.cts +0 -10
  321. package/dist/core/table/coreTablesFeature.js.map +0 -1
  322. package/dist/core/table/coreTablesFeature.types.d.cts +0 -200
  323. package/dist/core/table/coreTablesFeature.utils.cjs +0 -96
  324. package/dist/core/table/coreTablesFeature.utils.cjs.map +0 -1
  325. package/dist/core/table/coreTablesFeature.utils.d.cts +0 -57
  326. package/dist/core/table/coreTablesFeature.utils.js.map +0 -1
  327. package/dist/features/column-faceting/columnFacetingFeature.cjs +0 -61
  328. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +0 -1
  329. package/dist/features/column-faceting/columnFacetingFeature.d.cts +0 -10
  330. package/dist/features/column-faceting/columnFacetingFeature.js.map +0 -1
  331. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +0 -85
  332. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +0 -103
  333. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +0 -1
  334. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +0 -84
  335. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +0 -1
  336. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +0 -44
  337. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +0 -1
  338. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +0 -14
  339. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +0 -1
  340. package/dist/features/column-faceting/createFacetedRowModel.cjs +0 -50
  341. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +0 -1
  342. package/dist/features/column-faceting/createFacetedRowModel.d.cts +0 -15
  343. package/dist/features/column-faceting/createFacetedRowModel.js.map +0 -1
  344. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +0 -41
  345. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +0 -1
  346. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +0 -14
  347. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +0 -1
  348. package/dist/features/column-filtering/columnFilteringFeature.cjs +0 -50
  349. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +0 -1
  350. package/dist/features/column-filtering/columnFilteringFeature.d.cts +0 -10
  351. package/dist/features/column-filtering/columnFilteringFeature.js.map +0 -1
  352. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +0 -160
  353. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +0 -212
  354. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +0 -1
  355. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +0 -143
  356. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +0 -1
  357. package/dist/features/column-filtering/createFilteredRowModel.cjs +0 -110
  358. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +0 -1
  359. package/dist/features/column-filtering/createFilteredRowModel.d.cts +0 -16
  360. package/dist/features/column-filtering/createFilteredRowModel.js.map +0 -1
  361. package/dist/features/column-filtering/filterRowsUtils.cjs +0 -81
  362. package/dist/features/column-filtering/filterRowsUtils.cjs.map +0 -1
  363. package/dist/features/column-filtering/filterRowsUtils.js.map +0 -1
  364. package/dist/features/column-grouping/columnGroupingFeature.cjs +0 -67
  365. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +0 -1
  366. package/dist/features/column-grouping/columnGroupingFeature.d.cts +0 -10
  367. package/dist/features/column-grouping/columnGroupingFeature.js.map +0 -1
  368. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +0 -165
  369. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +0 -250
  370. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +0 -1
  371. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +0 -190
  372. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +0 -1
  373. package/dist/features/column-grouping/createGroupedRowModel.cjs +0 -119
  374. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +0 -1
  375. package/dist/features/column-grouping/createGroupedRowModel.d.cts +0 -16
  376. package/dist/features/column-grouping/createGroupedRowModel.js.map +0 -1
  377. package/dist/features/column-ordering/columnOrderingFeature.cjs +0 -58
  378. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +0 -1
  379. package/dist/features/column-ordering/columnOrderingFeature.d.cts +0 -10
  380. package/dist/features/column-ordering/columnOrderingFeature.js.map +0 -1
  381. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +0 -56
  382. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +0 -172
  383. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +0 -1
  384. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +0 -107
  385. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +0 -1
  386. package/dist/features/column-pinning/columnPinningFeature.cjs +0 -221
  387. package/dist/features/column-pinning/columnPinningFeature.cjs.map +0 -1
  388. package/dist/features/column-pinning/columnPinningFeature.d.cts +0 -10
  389. package/dist/features/column-pinning/columnPinningFeature.js.map +0 -1
  390. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +0 -178
  391. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +0 -585
  392. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +0 -1
  393. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +0 -375
  394. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +0 -1
  395. package/dist/features/column-resizing/columnResizingFeature.cjs +0 -41
  396. package/dist/features/column-resizing/columnResizingFeature.cjs.map +0 -1
  397. package/dist/features/column-resizing/columnResizingFeature.d.cts +0 -10
  398. package/dist/features/column-resizing/columnResizingFeature.js.map +0 -1
  399. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +0 -81
  400. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +0 -246
  401. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +0 -1
  402. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +0 -109
  403. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +0 -1
  404. package/dist/features/column-sizing/columnSizingFeature.cjs +0 -124
  405. package/dist/features/column-sizing/columnSizingFeature.cjs.map +0 -1
  406. package/dist/features/column-sizing/columnSizingFeature.d.cts +0 -10
  407. package/dist/features/column-sizing/columnSizingFeature.js.map +0 -1
  408. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +0 -96
  409. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +0 -256
  410. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +0 -1
  411. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +0 -182
  412. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +0 -1
  413. package/dist/features/column-visibility/columnVisibilityFeature.cjs +0 -94
  414. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +0 -1
  415. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +0 -10
  416. package/dist/features/column-visibility/columnVisibilityFeature.js.map +0 -1
  417. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +0 -97
  418. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +0 -283
  419. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +0 -1
  420. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +0 -189
  421. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +0 -1
  422. package/dist/features/global-filtering/globalFilteringFeature.cjs +0 -41
  423. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +0 -1
  424. package/dist/features/global-filtering/globalFilteringFeature.d.cts +0 -10
  425. package/dist/features/global-filtering/globalFilteringFeature.js.map +0 -1
  426. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +0 -71
  427. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +0 -88
  428. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +0 -1
  429. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +0 -74
  430. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +0 -1
  431. package/dist/features/row-expanding/createExpandedRowModel.cjs +0 -59
  432. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +0 -1
  433. package/dist/features/row-expanding/createExpandedRowModel.d.cts +0 -21
  434. package/dist/features/row-expanding/createExpandedRowModel.js.map +0 -1
  435. package/dist/features/row-expanding/rowExpandingFeature.cjs +0 -47
  436. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +0 -1
  437. package/dist/features/row-expanding/rowExpandingFeature.d.cts +0 -10
  438. package/dist/features/row-expanding/rowExpandingFeature.js.map +0 -1
  439. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +0 -127
  440. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +0 -281
  441. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +0 -1
  442. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +0 -191
  443. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +0 -1
  444. package/dist/features/row-pagination/createPaginatedRowModel.cjs +0 -62
  445. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +0 -1
  446. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +0 -15
  447. package/dist/features/row-pagination/createPaginatedRowModel.js.map +0 -1
  448. package/dist/features/row-pagination/rowPaginationFeature.cjs +0 -45
  449. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +0 -1
  450. package/dist/features/row-pagination/rowPaginationFeature.d.cts +0 -10
  451. package/dist/features/row-pagination/rowPaginationFeature.js.map +0 -1
  452. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +0 -135
  453. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +0 -312
  454. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +0 -1
  455. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +0 -218
  456. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +0 -1
  457. package/dist/features/row-pinning/rowPinningFeature.cjs +0 -67
  458. package/dist/features/row-pinning/rowPinningFeature.cjs.map +0 -1
  459. package/dist/features/row-pinning/rowPinningFeature.d.cts +0 -10
  460. package/dist/features/row-pinning/rowPinningFeature.js.map +0 -1
  461. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +0 -83
  462. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +0 -229
  463. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +0 -1
  464. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +0 -143
  465. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +0 -1
  466. package/dist/features/row-selection/rowSelectionFeature.cjs +0 -75
  467. package/dist/features/row-selection/rowSelectionFeature.cjs.map +0 -1
  468. package/dist/features/row-selection/rowSelectionFeature.d.cts +0 -10
  469. package/dist/features/row-selection/rowSelectionFeature.js.map +0 -1
  470. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +0 -136
  471. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +0 -518
  472. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +0 -1
  473. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +0 -318
  474. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +0 -1
  475. package/dist/features/row-sorting/createSortedRowModel.cjs +0 -95
  476. package/dist/features/row-sorting/createSortedRowModel.cjs.map +0 -1
  477. package/dist/features/row-sorting/createSortedRowModel.d.cts +0 -16
  478. package/dist/features/row-sorting/createSortedRowModel.js.map +0 -1
  479. package/dist/features/row-sorting/rowSortingFeature.cjs +0 -55
  480. package/dist/features/row-sorting/rowSortingFeature.cjs.map +0 -1
  481. package/dist/features/row-sorting/rowSortingFeature.d.cts +0 -10
  482. package/dist/features/row-sorting/rowSortingFeature.js.map +0 -1
  483. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +0 -188
  484. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +0 -305
  485. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +0 -1
  486. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +0 -193
  487. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +0 -1
  488. package/dist/features/stockFeatures.cjs +0 -41
  489. package/dist/features/stockFeatures.cjs.map +0 -1
  490. package/dist/features/stockFeatures.d.cts +0 -41
  491. package/dist/features/stockFeatures.js.map +0 -1
  492. package/dist/flex-render.cjs +0 -29
  493. package/dist/flex-render.cjs.map +0 -1
  494. package/dist/flex-render.d.cts +0 -34
  495. package/dist/flex-render.js.map +0 -1
  496. package/dist/fns/aggregationFns.cjs +0 -161
  497. package/dist/fns/aggregationFns.cjs.map +0 -1
  498. package/dist/fns/aggregationFns.d.cts +0 -85
  499. package/dist/fns/aggregationFns.d.ts +0 -85
  500. package/dist/fns/aggregationFns.js +0 -151
  501. package/dist/fns/aggregationFns.js.map +0 -1
  502. package/dist/fns/filterFns.cjs +0 -201
  503. package/dist/fns/filterFns.cjs.map +0 -1
  504. package/dist/fns/filterFns.d.cts +0 -167
  505. package/dist/fns/filterFns.d.ts +0 -167
  506. package/dist/fns/filterFns.js +0 -185
  507. package/dist/fns/filterFns.js.map +0 -1
  508. package/dist/fns/sortFns.cjs +0 -130
  509. package/dist/fns/sortFns.cjs.map +0 -1
  510. package/dist/fns/sortFns.d.cts +0 -65
  511. package/dist/fns/sortFns.d.ts +0 -65
  512. package/dist/fns/sortFns.js +0 -122
  513. package/dist/fns/sortFns.js.map +0 -1
  514. package/dist/helpers/columnHelper.cjs +0 -41
  515. package/dist/helpers/columnHelper.cjs.map +0 -1
  516. package/dist/helpers/columnHelper.d.cts +0 -71
  517. package/dist/helpers/columnHelper.js.map +0 -1
  518. package/dist/helpers/metaHelper.cjs +0 -30
  519. package/dist/helpers/metaHelper.cjs.map +0 -1
  520. package/dist/helpers/metaHelper.d.cts +0 -26
  521. package/dist/helpers/metaHelper.js.map +0 -1
  522. package/dist/helpers/tableFeatures.cjs +0 -30
  523. package/dist/helpers/tableFeatures.cjs.map +0 -1
  524. package/dist/helpers/tableFeatures.d.cts +0 -28
  525. package/dist/helpers/tableFeatures.js.map +0 -1
  526. package/dist/helpers/tableOptions.cjs +0 -15
  527. package/dist/helpers/tableOptions.cjs.map +0 -1
  528. package/dist/helpers/tableOptions.d.cts +0 -57
  529. package/dist/helpers/tableOptions.js.map +0 -1
  530. package/dist/index.cjs +0 -135
  531. package/dist/index.d.cts +0 -79
  532. package/dist/reactivity.cjs +0 -4
  533. package/dist/reactivity.d.cts +0 -3
  534. package/dist/static-functions.cjs +0 -263
  535. package/dist/static-functions.d.cts +0 -21
  536. package/dist/store-reactivity-bindings.cjs +0 -44
  537. package/dist/store-reactivity-bindings.cjs.map +0 -1
  538. package/dist/store-reactivity-bindings.d.cts +0 -22
  539. package/dist/store-reactivity-bindings.js.map +0 -1
  540. package/dist/types/Cell.d.cts +0 -14
  541. package/dist/types/Column.d.cts +0 -36
  542. package/dist/types/ColumnDef.d.cts +0 -123
  543. package/dist/types/Header.d.cts +0 -16
  544. package/dist/types/HeaderGroup.d.cts +0 -10
  545. package/dist/types/Row.d.cts +0 -26
  546. package/dist/types/RowModel.d.cts +0 -36
  547. package/dist/types/RowModelFns.d.cts +0 -18
  548. package/dist/types/Table.d.cts +0 -70
  549. package/dist/types/TableFeatures.d.cts +0 -75
  550. package/dist/types/TableOptions.d.cts +0 -69
  551. package/dist/types/TableState.d.cts +0 -48
  552. package/dist/types/type-utils.d.cts +0 -23
  553. package/dist/utils.cjs +0 -243
  554. package/dist/utils.cjs.map +0 -1
  555. package/dist/utils.d.cts +0 -114
  556. package/dist/utils.js.map +0 -1
  557. package/skills/column-definitions/SKILL.md +0 -333
  558. package/skills/column-layout/SKILL.md +0 -328
  559. package/skills/column-layout/references/subsystems.md +0 -220
  560. package/skills/customizing-feature-behavior/SKILL.md +0 -416
  561. package/skills/filtering/SKILL.md +0 -357
  562. package/skills/filtering/references/faceting-and-fuzzy.md +0 -191
  563. package/skills/row-expanding/SKILL.md +0 -348
  564. package/skills/setup/SKILL.md +0 -400
  565. package/skills/state-management/SKILL.md +0 -388
  566. package/src/core/cells/constructCell.ts +0 -55
  567. package/src/core/cells/coreCellsFeature.ts +0 -27
  568. package/src/core/cells/coreCellsFeature.types.ts +0 -68
  569. package/src/core/cells/coreCellsFeature.utils.ts +0 -68
  570. package/src/core/columns/constructColumn.ts +0 -119
  571. package/src/core/columns/coreColumnsFeature.ts +0 -73
  572. package/src/core/columns/coreColumnsFeature.types.ts +0 -108
  573. package/src/core/columns/coreColumnsFeature.utils.ts +0 -275
  574. package/src/core/coreFeatures.ts +0 -31
  575. package/src/core/headers/buildHeaderGroups.ts +0 -182
  576. package/src/core/headers/constructHeader.ts +0 -67
  577. package/src/core/headers/coreHeadersFeature.ts +0 -56
  578. package/src/core/headers/coreHeadersFeature.types.ts +0 -125
  579. package/src/core/headers/coreHeadersFeature.utils.ts +0 -200
  580. package/src/core/reactivity/coreReactivityFeature.types.ts +0 -56
  581. package/src/core/reactivity/coreReactivityFeature.utils.ts +0 -44
  582. package/src/core/row-models/coreRowModelsFeature.ts +0 -62
  583. package/src/core/row-models/coreRowModelsFeature.types.ts +0 -64
  584. package/src/core/row-models/coreRowModelsFeature.utils.ts +0 -272
  585. package/src/core/row-models/createCoreRowModel.ts +0 -93
  586. package/src/core/rows/constructRow.ts +0 -66
  587. package/src/core/rows/coreRowsFeature.ts +0 -62
  588. package/src/core/rows/coreRowsFeature.types.ts +0 -117
  589. package/src/core/rows/coreRowsFeature.utils.ts +0 -264
  590. package/src/core/table/constructTable.ts +0 -179
  591. package/src/core/table/coreTablesFeature.ts +0 -19
  592. package/src/core/table/coreTablesFeature.types.ts +0 -237
  593. package/src/core/table/coreTablesFeature.utils.ts +0 -131
  594. package/src/features/column-faceting/columnFacetingFeature.ts +0 -89
  595. package/src/features/column-faceting/columnFacetingFeature.types.ts +0 -109
  596. package/src/features/column-faceting/columnFacetingFeature.utils.ts +0 -145
  597. package/src/features/column-faceting/createFacetedMinMaxValues.ts +0 -66
  598. package/src/features/column-faceting/createFacetedRowModel.ts +0 -85
  599. package/src/features/column-faceting/createFacetedUniqueValues.ts +0 -66
  600. package/src/features/column-filtering/columnFilteringFeature.ts +0 -86
  601. package/src/features/column-filtering/columnFilteringFeature.types.ts +0 -232
  602. package/src/features/column-filtering/columnFilteringFeature.utils.ts +0 -331
  603. package/src/features/column-filtering/createFilteredRowModel.ts +0 -183
  604. package/src/features/column-filtering/filterRowsUtils.ts +0 -157
  605. package/src/features/column-grouping/columnGroupingFeature.ts +0 -115
  606. package/src/features/column-grouping/columnGroupingFeature.types.ts +0 -226
  607. package/src/features/column-grouping/columnGroupingFeature.utils.ts +0 -354
  608. package/src/features/column-grouping/createGroupedRowModel.ts +0 -220
  609. package/src/features/column-ordering/columnOrderingFeature.ts +0 -73
  610. package/src/features/column-ordering/columnOrderingFeature.types.ts +0 -60
  611. package/src/features/column-ordering/columnOrderingFeature.utils.ts +0 -241
  612. package/src/features/column-pinning/columnPinningFeature.ts +0 -316
  613. package/src/features/column-pinning/columnPinningFeature.types.ts +0 -192
  614. package/src/features/column-pinning/columnPinningFeature.utils.ts +0 -908
  615. package/src/features/column-resizing/columnResizingFeature.ts +0 -65
  616. package/src/features/column-resizing/columnResizingFeature.types.ts +0 -89
  617. package/src/features/column-resizing/columnResizingFeature.utils.ts +0 -364
  618. package/src/features/column-sizing/columnSizingFeature.ts +0 -145
  619. package/src/features/column-sizing/columnSizingFeature.types.ts +0 -102
  620. package/src/features/column-sizing/columnSizingFeature.utils.ts +0 -381
  621. package/src/features/column-visibility/columnVisibilityFeature.ts +0 -122
  622. package/src/features/column-visibility/columnVisibilityFeature.types.ts +0 -112
  623. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +0 -384
  624. package/src/features/global-filtering/globalFilteringFeature.ts +0 -65
  625. package/src/features/global-filtering/globalFilteringFeature.types.ts +0 -91
  626. package/src/features/global-filtering/globalFilteringFeature.utils.ts +0 -118
  627. package/src/features/row-expanding/createExpandedRowModel.ts +0 -82
  628. package/src/features/row-expanding/rowExpandingFeature.ts +0 -94
  629. package/src/features/row-expanding/rowExpandingFeature.types.ts +0 -147
  630. package/src/features/row-expanding/rowExpandingFeature.utils.ts +0 -374
  631. package/src/features/row-pagination/createPaginatedRowModel.ts +0 -83
  632. package/src/features/row-pagination/rowPaginationFeature.ts +0 -95
  633. package/src/features/row-pagination/rowPaginationFeature.types.ts +0 -152
  634. package/src/features/row-pagination/rowPaginationFeature.utils.ts +0 -400
  635. package/src/features/row-pinning/rowPinningFeature.ts +0 -97
  636. package/src/features/row-pinning/rowPinningFeature.types.ts +0 -95
  637. package/src/features/row-pinning/rowPinningFeature.utils.ts +0 -323
  638. package/src/features/row-selection/rowSelectionFeature.ts +0 -140
  639. package/src/features/row-selection/rowSelectionFeature.types.ts +0 -151
  640. package/src/features/row-selection/rowSelectionFeature.utils.ts +0 -750
  641. package/src/features/row-sorting/createSortedRowModel.ts +0 -157
  642. package/src/features/row-sorting/rowSortingFeature.ts +0 -103
  643. package/src/features/row-sorting/rowSortingFeature.types.ts +0 -235
  644. package/src/features/row-sorting/rowSortingFeature.utils.ts +0 -489
  645. package/src/features/stockFeatures.ts +0 -53
  646. package/src/flex-render.ts +0 -70
  647. package/src/fns/aggregationFns.ts +0 -245
  648. package/src/fns/filterFns.ts +0 -382
  649. package/src/fns/sortFns.ts +0 -240
  650. package/src/helpers/columnHelper.ts +0 -122
  651. package/src/helpers/metaHelper.ts +0 -24
  652. package/src/helpers/tableFeatures.ts +0 -34
  653. package/src/helpers/tableOptions.ts +0 -117
  654. package/src/index.ts +0 -139
  655. package/src/process-env.d.ts +0 -6
  656. package/src/reactivity.ts +0 -2
  657. package/src/static-functions.ts +0 -31
  658. package/src/store-reactivity-bindings.ts +0 -47
  659. package/src/types/Cell.ts +0 -21
  660. package/src/types/Column.ts +0 -51
  661. package/src/types/ColumnDef.ts +0 -254
  662. package/src/types/Header.ts +0 -23
  663. package/src/types/HeaderGroup.ts +0 -13
  664. package/src/types/Row.ts +0 -34
  665. package/src/types/RowModel.ts +0 -98
  666. package/src/types/RowModelFns.ts +0 -32
  667. package/src/types/Table.ts +0 -91
  668. package/src/types/TableFeatures.ts +0 -123
  669. package/src/types/TableOptions.ts +0 -104
  670. package/src/types/TableState.ts +0 -47
  671. package/src/types/type-utils.ts +0 -84
  672. package/src/utils.ts +0 -441
@@ -1,130 +0,0 @@
1
-
2
- //#region src/fns/sortFns.ts
3
- /**
4
- * Regular expression used to split mixed text and numeric chunks.
5
- *
6
- * The alphanumeric sort functions use these chunks for natural sorting of
7
- * strings like `item2` before `item10`.
8
- */
9
- const reSplitAlphaNumeric = /([0-9]+)/gm;
10
- /**
11
- * Sorts rows with the built-in alphanumeric strategy.
12
- *
13
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
14
- */
15
- const sortFn_alphanumeric = (rowA, rowB, columnId) => {
16
- return compareAlphanumeric(toString(rowA.getValue(columnId)).toLowerCase(), toString(rowB.getValue(columnId)).toLowerCase());
17
- };
18
- /**
19
- * Sorts rows with the built-in alphanumeric case sensitive strategy.
20
- *
21
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
22
- */
23
- const sortFn_alphanumericCaseSensitive = (rowA, rowB, columnId) => {
24
- return compareAlphanumeric(toString(rowA.getValue(columnId)), toString(rowB.getValue(columnId)));
25
- };
26
- /**
27
- * Sorts rows with the built-in text strategy.
28
- *
29
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
30
- */
31
- const sortFn_text = (rowA, rowB, columnId) => {
32
- return compareBasic(toString(rowA.getValue(columnId)).toLowerCase(), toString(rowB.getValue(columnId)).toLowerCase());
33
- };
34
- /**
35
- * Sorts rows with the built-in text case sensitive strategy.
36
- *
37
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
38
- */
39
- const sortFn_textCaseSensitive = (rowA, rowB, columnId) => {
40
- return compareBasic(toString(rowA.getValue(columnId)), toString(rowB.getValue(columnId)));
41
- };
42
- /**
43
- * Sorts rows with the built-in datetime strategy.
44
- *
45
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
46
- */
47
- const sortFn_datetime = (rowA, rowB, columnId) => {
48
- const a = rowA.getValue(columnId);
49
- const b = rowB.getValue(columnId);
50
- return a > b ? 1 : a < b ? -1 : 0;
51
- };
52
- /**
53
- * Sorts rows with the built-in basic strategy.
54
- *
55
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
56
- */
57
- const sortFn_basic = (rowA, rowB, columnId) => {
58
- return compareBasic(rowA.getValue(columnId), rowB.getValue(columnId));
59
- };
60
- function compareBasic(a, b) {
61
- return a === b ? 0 : a > b ? 1 : -1;
62
- }
63
- function toString(a) {
64
- if (typeof a === "number") {
65
- if (isNaN(a) || a === Infinity || a === -Infinity) return "";
66
- return String(a);
67
- }
68
- if (typeof a === "string") return a;
69
- return "";
70
- }
71
- function compareAlphanumeric(aStr, bStr) {
72
- const a = aStr.split(reSplitAlphaNumeric);
73
- const b = bStr.split(reSplitAlphaNumeric);
74
- let ai = 0;
75
- let bi = 0;
76
- const aLen = a.length;
77
- const bLen = b.length;
78
- while (ai < aLen && bi < bLen) {
79
- if (!a[ai]) {
80
- ai++;
81
- continue;
82
- }
83
- if (!b[bi]) {
84
- bi++;
85
- continue;
86
- }
87
- const aa = a[ai++];
88
- const bb = b[bi++];
89
- const an = parseInt(aa, 10);
90
- const bn = parseInt(bb, 10);
91
- const aIsNaN = isNaN(an);
92
- const bIsNaN = isNaN(bn);
93
- if (aIsNaN && bIsNaN) {
94
- if (aa > bb) return 1;
95
- if (bb > aa) return -1;
96
- continue;
97
- }
98
- if (aIsNaN || bIsNaN) return aIsNaN ? -1 : 1;
99
- if (an > bn) return 1;
100
- if (bn > an) return -1;
101
- }
102
- let remaining = 0;
103
- for (; ai < aLen; ai++) if (a[ai]) remaining++;
104
- for (; bi < bLen; bi++) if (b[bi]) remaining--;
105
- return remaining;
106
- }
107
- /**
108
- * The built-in sorting function registry.
109
- *
110
- * Pass this object to sorted row model creation or extend it with custom sorting functions.
111
- */
112
- const sortFns = {
113
- alphanumeric: sortFn_alphanumeric,
114
- alphanumericCaseSensitive: sortFn_alphanumericCaseSensitive,
115
- basic: sortFn_basic,
116
- datetime: sortFn_datetime,
117
- text: sortFn_text,
118
- textCaseSensitive: sortFn_textCaseSensitive
119
- };
120
-
121
- //#endregion
122
- exports.reSplitAlphaNumeric = reSplitAlphaNumeric;
123
- exports.sortFn_alphanumeric = sortFn_alphanumeric;
124
- exports.sortFn_alphanumericCaseSensitive = sortFn_alphanumericCaseSensitive;
125
- exports.sortFn_basic = sortFn_basic;
126
- exports.sortFn_datetime = sortFn_datetime;
127
- exports.sortFn_text = sortFn_text;
128
- exports.sortFn_textCaseSensitive = sortFn_textCaseSensitive;
129
- exports.sortFns = sortFns;
130
- //# sourceMappingURL=sortFns.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sortFns.cjs","names":[],"sources":["../../src/fns/sortFns.ts"],"sourcesContent":["import type { RowData } from '../types/type-utils'\nimport type { TableFeatures } from '../types/TableFeatures'\nimport type { Row } from '../types/Row'\n\n/**\n * Regular expression used to split mixed text and numeric chunks.\n *\n * The alphanumeric sort functions use these chunks for natural sorting of\n * strings like `item2` before `item10`.\n */\nexport const reSplitAlphaNumeric = /([0-9]+)/gm\n\n/**\n * Sorts rows with the built-in alphanumeric strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_alphanumeric = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareAlphanumeric(\n toString(rowA.getValue(columnId)).toLowerCase(),\n toString(rowB.getValue(columnId)).toLowerCase(),\n )\n}\n\n/**\n * Sorts rows with the built-in alphanumeric case sensitive strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_alphanumericCaseSensitive = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareAlphanumeric(\n toString(rowA.getValue(columnId)),\n toString(rowB.getValue(columnId)),\n )\n}\n\n// The text filter is more basic (less numeric support)\n// but is much faster\n/**\n * Sorts rows with the built-in text strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_text = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareBasic(\n toString(rowA.getValue(columnId)).toLowerCase(),\n toString(rowB.getValue(columnId)).toLowerCase(),\n )\n}\n\n// The text filter is more basic (less numeric support)\n// but is much faster\n/**\n * Sorts rows with the built-in text case sensitive strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_textCaseSensitive = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareBasic(\n toString(rowA.getValue(columnId)),\n toString(rowB.getValue(columnId)),\n )\n}\n\n/**\n * Sorts rows with the built-in datetime strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_datetime = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n const a: number | string = rowA.getValue(columnId)\n const b: number | string = rowB.getValue(columnId)\n\n // Can handle nullish values\n // Use > and < because == (and ===) doesn't work with\n // Date objects (would require calling getTime()).\n return a > b ? 1 : a < b ? -1 : 0\n}\n\n/**\n * Sorts rows with the built-in basic strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_basic = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareBasic(rowA.getValue(columnId), rowB.getValue(columnId))\n}\n\n// Utils\n\nfunction compareBasic(a: any, b: any) {\n return a === b ? 0 : a > b ? 1 : -1\n}\n\nfunction toString(a: any) {\n if (typeof a === 'number') {\n if (isNaN(a) || a === Infinity || a === -Infinity) {\n return ''\n }\n return String(a)\n }\n if (typeof a === 'string') {\n return a\n }\n return ''\n}\n\n// Mixed sorting is slow, but very inclusive of many edge cases.\n// It handles numbers, mixed alphanumeric combinations, and even\n// null, undefined, and Infinity\nfunction compareAlphanumeric(aStr: string, bStr: string) {\n const a = aStr.split(reSplitAlphaNumeric)\n const b = bStr.split(reSplitAlphaNumeric)\n\n let ai = 0\n let bi = 0\n const aLen = a.length\n const bLen = b.length\n\n while (ai < aLen && bi < bLen) {\n // Skip the empty boundary chunks that .filter(Boolean) used to remove\n if (!a[ai]) {\n ai++\n continue\n }\n if (!b[bi]) {\n bi++\n continue\n }\n\n const aa = a[ai++]!\n const bb = b[bi++]!\n\n // Chunks are either all-digit (parseInt always succeeds) or digit-free\n // (parseInt is always NaN), so NaN-ness fully classifies each chunk\n const an = parseInt(aa, 10)\n const bn = parseInt(bb, 10)\n\n const aIsNaN = isNaN(an)\n const bIsNaN = isNaN(bn)\n\n // Both are string\n if (aIsNaN && bIsNaN) {\n if (aa > bb) {\n return 1\n }\n if (bb > aa) {\n return -1\n }\n continue\n }\n\n // One is a string, one is a number — the string chunk sorts first\n if (aIsNaN || bIsNaN) {\n return aIsNaN ? -1 : 1\n }\n\n // Both are numbers\n if (an > bn) {\n return 1\n }\n if (bn > an) {\n return -1\n }\n }\n\n // One side is exhausted — compare the counts of remaining non-empty chunks\n let remaining = 0\n for (; ai < aLen; ai++) {\n if (a[ai]) {\n remaining++\n }\n }\n for (; bi < bLen; bi++) {\n if (b[bi]) {\n remaining--\n }\n }\n return remaining\n}\n\n// Exports\n\n/**\n * The built-in sorting function registry.\n *\n * Pass this object to sorted row model creation or extend it with custom sorting functions.\n */\nexport const sortFns = {\n alphanumeric: sortFn_alphanumeric,\n alphanumericCaseSensitive: sortFn_alphanumericCaseSensitive,\n basic: sortFn_basic,\n datetime: sortFn_datetime,\n text: sortFn_text,\n textCaseSensitive: sortFn_textCaseSensitive,\n}\n\nexport type BuiltInSortFn = keyof typeof sortFns\n"],"mappings":";;;;;;;;AAUA,MAAa,sBAAsB;;;;;;AAOnC,MAAa,uBAIX,MACA,MACA,aACG;CACH,OAAO,oBACL,SAAS,KAAK,SAAS,QAAQ,CAAC,CAAC,CAAC,YAAY,GAC9C,SAAS,KAAK,SAAS,QAAQ,CAAC,CAAC,CAAC,YAAY,CAChD;AACF;;;;;;AAOA,MAAa,oCAIX,MACA,MACA,aACG;CACH,OAAO,oBACL,SAAS,KAAK,SAAS,QAAQ,CAAC,GAChC,SAAS,KAAK,SAAS,QAAQ,CAAC,CAClC;AACF;;;;;;AASA,MAAa,eAIX,MACA,MACA,aACG;CACH,OAAO,aACL,SAAS,KAAK,SAAS,QAAQ,CAAC,CAAC,CAAC,YAAY,GAC9C,SAAS,KAAK,SAAS,QAAQ,CAAC,CAAC,CAAC,YAAY,CAChD;AACF;;;;;;AASA,MAAa,4BAIX,MACA,MACA,aACG;CACH,OAAO,aACL,SAAS,KAAK,SAAS,QAAQ,CAAC,GAChC,SAAS,KAAK,SAAS,QAAQ,CAAC,CAClC;AACF;;;;;;AAOA,MAAa,mBAIX,MACA,MACA,aACG;CACH,MAAM,IAAqB,KAAK,SAAS,QAAQ;CACjD,MAAM,IAAqB,KAAK,SAAS,QAAQ;CAKjD,OAAO,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK;AAClC;;;;;;AAOA,MAAa,gBAIX,MACA,MACA,aACG;CACH,OAAO,aAAa,KAAK,SAAS,QAAQ,GAAG,KAAK,SAAS,QAAQ,CAAC;AACtE;AAIA,SAAS,aAAa,GAAQ,GAAQ;CACpC,OAAO,MAAM,IAAI,IAAI,IAAI,IAAI,IAAI;AACnC;AAEA,SAAS,SAAS,GAAQ;CACxB,IAAI,OAAO,MAAM,UAAU;EACzB,IAAI,MAAM,CAAC,KAAK,MAAM,YAAY,MAAM,WACtC,OAAO;EAET,OAAO,OAAO,CAAC;CACjB;CACA,IAAI,OAAO,MAAM,UACf,OAAO;CAET,OAAO;AACT;AAKA,SAAS,oBAAoB,MAAc,MAAc;CACvD,MAAM,IAAI,KAAK,MAAM,mBAAmB;CACxC,MAAM,IAAI,KAAK,MAAM,mBAAmB;CAExC,IAAI,KAAK;CACT,IAAI,KAAK;CACT,MAAM,OAAO,EAAE;CACf,MAAM,OAAO,EAAE;CAEf,OAAO,KAAK,QAAQ,KAAK,MAAM;EAE7B,IAAI,CAAC,EAAE,KAAK;GACV;GACA;EACF;EACA,IAAI,CAAC,EAAE,KAAK;GACV;GACA;EACF;EAEA,MAAM,KAAK,EAAE;EACb,MAAM,KAAK,EAAE;EAIb,MAAM,KAAK,SAAS,IAAI,EAAE;EAC1B,MAAM,KAAK,SAAS,IAAI,EAAE;EAE1B,MAAM,SAAS,MAAM,EAAE;EACvB,MAAM,SAAS,MAAM,EAAE;EAGvB,IAAI,UAAU,QAAQ;GACpB,IAAI,KAAK,IACP,OAAO;GAET,IAAI,KAAK,IACP,OAAO;GAET;EACF;EAGA,IAAI,UAAU,QACZ,OAAO,SAAS,KAAK;EAIvB,IAAI,KAAK,IACP,OAAO;EAET,IAAI,KAAK,IACP,OAAO;CAEX;CAGA,IAAI,YAAY;CAChB,OAAO,KAAK,MAAM,MAChB,IAAI,EAAE,KACJ;CAGJ,OAAO,KAAK,MAAM,MAChB,IAAI,EAAE,KACJ;CAGJ,OAAO;AACT;;;;;;AASA,MAAa,UAAU;CACrB,cAAc;CACd,2BAA2B;CAC3B,OAAO;CACP,UAAU;CACV,MAAM;CACN,mBAAmB;AACrB"}
@@ -1,65 +0,0 @@
1
- import { RowData } from "../types/type-utils.cjs";
2
- import { Row } from "../types/Row.cjs";
3
- import { TableFeatures } from "../types/TableFeatures.cjs";
4
-
5
- //#region src/fns/sortFns.d.ts
6
- /**
7
- * Regular expression used to split mixed text and numeric chunks.
8
- *
9
- * The alphanumeric sort functions use these chunks for natural sorting of
10
- * strings like `item2` before `item10`.
11
- */
12
- declare const reSplitAlphaNumeric: RegExp;
13
- /**
14
- * Sorts rows with the built-in alphanumeric strategy.
15
- *
16
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
17
- */
18
- declare const sortFn_alphanumeric: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
19
- /**
20
- * Sorts rows with the built-in alphanumeric case sensitive strategy.
21
- *
22
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
23
- */
24
- declare const sortFn_alphanumericCaseSensitive: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
25
- /**
26
- * Sorts rows with the built-in text strategy.
27
- *
28
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
29
- */
30
- declare const sortFn_text: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
31
- /**
32
- * Sorts rows with the built-in text case sensitive strategy.
33
- *
34
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
35
- */
36
- declare const sortFn_textCaseSensitive: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
37
- /**
38
- * Sorts rows with the built-in datetime strategy.
39
- *
40
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
41
- */
42
- declare const sortFn_datetime: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
43
- /**
44
- * Sorts rows with the built-in basic strategy.
45
- *
46
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
47
- */
48
- declare const sortFn_basic: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
49
- /**
50
- * The built-in sorting function registry.
51
- *
52
- * Pass this object to sorted row model creation or extend it with custom sorting functions.
53
- */
54
- declare const sortFns: {
55
- alphanumeric: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
56
- alphanumericCaseSensitive: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
57
- basic: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
58
- datetime: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
59
- text: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
60
- textCaseSensitive: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
61
- };
62
- type BuiltInSortFn = keyof typeof sortFns;
63
- //#endregion
64
- export { BuiltInSortFn, reSplitAlphaNumeric, sortFn_alphanumeric, sortFn_alphanumericCaseSensitive, sortFn_basic, sortFn_datetime, sortFn_text, sortFn_textCaseSensitive, sortFns };
65
- //# sourceMappingURL=sortFns.d.cts.map
@@ -1,65 +0,0 @@
1
- import { RowData } from "../types/type-utils.js";
2
- import { Row } from "../types/Row.js";
3
- import { TableFeatures } from "../types/TableFeatures.js";
4
-
5
- //#region src/fns/sortFns.d.ts
6
- /**
7
- * Regular expression used to split mixed text and numeric chunks.
8
- *
9
- * The alphanumeric sort functions use these chunks for natural sorting of
10
- * strings like `item2` before `item10`.
11
- */
12
- declare const reSplitAlphaNumeric: RegExp;
13
- /**
14
- * Sorts rows with the built-in alphanumeric strategy.
15
- *
16
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
17
- */
18
- declare const sortFn_alphanumeric: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
19
- /**
20
- * Sorts rows with the built-in alphanumeric case sensitive strategy.
21
- *
22
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
23
- */
24
- declare const sortFn_alphanumericCaseSensitive: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
25
- /**
26
- * Sorts rows with the built-in text strategy.
27
- *
28
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
29
- */
30
- declare const sortFn_text: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
31
- /**
32
- * Sorts rows with the built-in text case sensitive strategy.
33
- *
34
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
35
- */
36
- declare const sortFn_textCaseSensitive: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
37
- /**
38
- * Sorts rows with the built-in datetime strategy.
39
- *
40
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
41
- */
42
- declare const sortFn_datetime: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
43
- /**
44
- * Sorts rows with the built-in basic strategy.
45
- *
46
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
47
- */
48
- declare const sortFn_basic: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
49
- /**
50
- * The built-in sorting function registry.
51
- *
52
- * Pass this object to sorted row model creation or extend it with custom sorting functions.
53
- */
54
- declare const sortFns: {
55
- alphanumeric: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
56
- alphanumericCaseSensitive: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
57
- basic: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
58
- datetime: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
59
- text: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
60
- textCaseSensitive: <TFeatures extends TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
61
- };
62
- type BuiltInSortFn = keyof typeof sortFns;
63
- //#endregion
64
- export { BuiltInSortFn, reSplitAlphaNumeric, sortFn_alphanumeric, sortFn_alphanumericCaseSensitive, sortFn_basic, sortFn_datetime, sortFn_text, sortFn_textCaseSensitive, sortFns };
65
- //# sourceMappingURL=sortFns.d.ts.map
@@ -1,122 +0,0 @@
1
- //#region src/fns/sortFns.ts
2
- /**
3
- * Regular expression used to split mixed text and numeric chunks.
4
- *
5
- * The alphanumeric sort functions use these chunks for natural sorting of
6
- * strings like `item2` before `item10`.
7
- */
8
- const reSplitAlphaNumeric = /([0-9]+)/gm;
9
- /**
10
- * Sorts rows with the built-in alphanumeric strategy.
11
- *
12
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
13
- */
14
- const sortFn_alphanumeric = (rowA, rowB, columnId) => {
15
- return compareAlphanumeric(toString(rowA.getValue(columnId)).toLowerCase(), toString(rowB.getValue(columnId)).toLowerCase());
16
- };
17
- /**
18
- * Sorts rows with the built-in alphanumeric case sensitive strategy.
19
- *
20
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
21
- */
22
- const sortFn_alphanumericCaseSensitive = (rowA, rowB, columnId) => {
23
- return compareAlphanumeric(toString(rowA.getValue(columnId)), toString(rowB.getValue(columnId)));
24
- };
25
- /**
26
- * Sorts rows with the built-in text strategy.
27
- *
28
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
29
- */
30
- const sortFn_text = (rowA, rowB, columnId) => {
31
- return compareBasic(toString(rowA.getValue(columnId)).toLowerCase(), toString(rowB.getValue(columnId)).toLowerCase());
32
- };
33
- /**
34
- * Sorts rows with the built-in text case sensitive strategy.
35
- *
36
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
37
- */
38
- const sortFn_textCaseSensitive = (rowA, rowB, columnId) => {
39
- return compareBasic(toString(rowA.getValue(columnId)), toString(rowB.getValue(columnId)));
40
- };
41
- /**
42
- * Sorts rows with the built-in datetime strategy.
43
- *
44
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
45
- */
46
- const sortFn_datetime = (rowA, rowB, columnId) => {
47
- const a = rowA.getValue(columnId);
48
- const b = rowB.getValue(columnId);
49
- return a > b ? 1 : a < b ? -1 : 0;
50
- };
51
- /**
52
- * Sorts rows with the built-in basic strategy.
53
- *
54
- * This comparator returns ascending-order results; descending order is applied by the sorting row model.
55
- */
56
- const sortFn_basic = (rowA, rowB, columnId) => {
57
- return compareBasic(rowA.getValue(columnId), rowB.getValue(columnId));
58
- };
59
- function compareBasic(a, b) {
60
- return a === b ? 0 : a > b ? 1 : -1;
61
- }
62
- function toString(a) {
63
- if (typeof a === "number") {
64
- if (isNaN(a) || a === Infinity || a === -Infinity) return "";
65
- return String(a);
66
- }
67
- if (typeof a === "string") return a;
68
- return "";
69
- }
70
- function compareAlphanumeric(aStr, bStr) {
71
- const a = aStr.split(reSplitAlphaNumeric);
72
- const b = bStr.split(reSplitAlphaNumeric);
73
- let ai = 0;
74
- let bi = 0;
75
- const aLen = a.length;
76
- const bLen = b.length;
77
- while (ai < aLen && bi < bLen) {
78
- if (!a[ai]) {
79
- ai++;
80
- continue;
81
- }
82
- if (!b[bi]) {
83
- bi++;
84
- continue;
85
- }
86
- const aa = a[ai++];
87
- const bb = b[bi++];
88
- const an = parseInt(aa, 10);
89
- const bn = parseInt(bb, 10);
90
- const aIsNaN = isNaN(an);
91
- const bIsNaN = isNaN(bn);
92
- if (aIsNaN && bIsNaN) {
93
- if (aa > bb) return 1;
94
- if (bb > aa) return -1;
95
- continue;
96
- }
97
- if (aIsNaN || bIsNaN) return aIsNaN ? -1 : 1;
98
- if (an > bn) return 1;
99
- if (bn > an) return -1;
100
- }
101
- let remaining = 0;
102
- for (; ai < aLen; ai++) if (a[ai]) remaining++;
103
- for (; bi < bLen; bi++) if (b[bi]) remaining--;
104
- return remaining;
105
- }
106
- /**
107
- * The built-in sorting function registry.
108
- *
109
- * Pass this object to sorted row model creation or extend it with custom sorting functions.
110
- */
111
- const sortFns = {
112
- alphanumeric: sortFn_alphanumeric,
113
- alphanumericCaseSensitive: sortFn_alphanumericCaseSensitive,
114
- basic: sortFn_basic,
115
- datetime: sortFn_datetime,
116
- text: sortFn_text,
117
- textCaseSensitive: sortFn_textCaseSensitive
118
- };
119
-
120
- //#endregion
121
- export { reSplitAlphaNumeric, sortFn_alphanumeric, sortFn_alphanumericCaseSensitive, sortFn_basic, sortFn_datetime, sortFn_text, sortFn_textCaseSensitive, sortFns };
122
- //# sourceMappingURL=sortFns.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sortFns.js","names":[],"sources":["../../src/fns/sortFns.ts"],"sourcesContent":["import type { RowData } from '../types/type-utils'\nimport type { TableFeatures } from '../types/TableFeatures'\nimport type { Row } from '../types/Row'\n\n/**\n * Regular expression used to split mixed text and numeric chunks.\n *\n * The alphanumeric sort functions use these chunks for natural sorting of\n * strings like `item2` before `item10`.\n */\nexport const reSplitAlphaNumeric = /([0-9]+)/gm\n\n/**\n * Sorts rows with the built-in alphanumeric strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_alphanumeric = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareAlphanumeric(\n toString(rowA.getValue(columnId)).toLowerCase(),\n toString(rowB.getValue(columnId)).toLowerCase(),\n )\n}\n\n/**\n * Sorts rows with the built-in alphanumeric case sensitive strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_alphanumericCaseSensitive = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareAlphanumeric(\n toString(rowA.getValue(columnId)),\n toString(rowB.getValue(columnId)),\n )\n}\n\n// The text filter is more basic (less numeric support)\n// but is much faster\n/**\n * Sorts rows with the built-in text strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_text = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareBasic(\n toString(rowA.getValue(columnId)).toLowerCase(),\n toString(rowB.getValue(columnId)).toLowerCase(),\n )\n}\n\n// The text filter is more basic (less numeric support)\n// but is much faster\n/**\n * Sorts rows with the built-in text case sensitive strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_textCaseSensitive = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareBasic(\n toString(rowA.getValue(columnId)),\n toString(rowB.getValue(columnId)),\n )\n}\n\n/**\n * Sorts rows with the built-in datetime strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_datetime = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n const a: number | string = rowA.getValue(columnId)\n const b: number | string = rowB.getValue(columnId)\n\n // Can handle nullish values\n // Use > and < because == (and ===) doesn't work with\n // Date objects (would require calling getTime()).\n return a > b ? 1 : a < b ? -1 : 0\n}\n\n/**\n * Sorts rows with the built-in basic strategy.\n *\n * This comparator returns ascending-order results; descending order is applied by the sorting row model.\n */\nexport const sortFn_basic = <\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n rowA: Row<TFeatures, TData>,\n rowB: Row<TFeatures, TData>,\n columnId: string,\n) => {\n return compareBasic(rowA.getValue(columnId), rowB.getValue(columnId))\n}\n\n// Utils\n\nfunction compareBasic(a: any, b: any) {\n return a === b ? 0 : a > b ? 1 : -1\n}\n\nfunction toString(a: any) {\n if (typeof a === 'number') {\n if (isNaN(a) || a === Infinity || a === -Infinity) {\n return ''\n }\n return String(a)\n }\n if (typeof a === 'string') {\n return a\n }\n return ''\n}\n\n// Mixed sorting is slow, but very inclusive of many edge cases.\n// It handles numbers, mixed alphanumeric combinations, and even\n// null, undefined, and Infinity\nfunction compareAlphanumeric(aStr: string, bStr: string) {\n const a = aStr.split(reSplitAlphaNumeric)\n const b = bStr.split(reSplitAlphaNumeric)\n\n let ai = 0\n let bi = 0\n const aLen = a.length\n const bLen = b.length\n\n while (ai < aLen && bi < bLen) {\n // Skip the empty boundary chunks that .filter(Boolean) used to remove\n if (!a[ai]) {\n ai++\n continue\n }\n if (!b[bi]) {\n bi++\n continue\n }\n\n const aa = a[ai++]!\n const bb = b[bi++]!\n\n // Chunks are either all-digit (parseInt always succeeds) or digit-free\n // (parseInt is always NaN), so NaN-ness fully classifies each chunk\n const an = parseInt(aa, 10)\n const bn = parseInt(bb, 10)\n\n const aIsNaN = isNaN(an)\n const bIsNaN = isNaN(bn)\n\n // Both are string\n if (aIsNaN && bIsNaN) {\n if (aa > bb) {\n return 1\n }\n if (bb > aa) {\n return -1\n }\n continue\n }\n\n // One is a string, one is a number — the string chunk sorts first\n if (aIsNaN || bIsNaN) {\n return aIsNaN ? -1 : 1\n }\n\n // Both are numbers\n if (an > bn) {\n return 1\n }\n if (bn > an) {\n return -1\n }\n }\n\n // One side is exhausted — compare the counts of remaining non-empty chunks\n let remaining = 0\n for (; ai < aLen; ai++) {\n if (a[ai]) {\n remaining++\n }\n }\n for (; bi < bLen; bi++) {\n if (b[bi]) {\n remaining--\n }\n }\n return remaining\n}\n\n// Exports\n\n/**\n * The built-in sorting function registry.\n *\n * Pass this object to sorted row model creation or extend it with custom sorting functions.\n */\nexport const sortFns = {\n alphanumeric: sortFn_alphanumeric,\n alphanumericCaseSensitive: sortFn_alphanumericCaseSensitive,\n basic: sortFn_basic,\n datetime: sortFn_datetime,\n text: sortFn_text,\n textCaseSensitive: sortFn_textCaseSensitive,\n}\n\nexport type BuiltInSortFn = keyof typeof sortFns\n"],"mappings":";;;;;;;AAUA,MAAa,sBAAsB;;;;;;AAOnC,MAAa,uBAIX,MACA,MACA,aACG;CACH,OAAO,oBACL,SAAS,KAAK,SAAS,QAAQ,CAAC,CAAC,CAAC,YAAY,GAC9C,SAAS,KAAK,SAAS,QAAQ,CAAC,CAAC,CAAC,YAAY,CAChD;AACF;;;;;;AAOA,MAAa,oCAIX,MACA,MACA,aACG;CACH,OAAO,oBACL,SAAS,KAAK,SAAS,QAAQ,CAAC,GAChC,SAAS,KAAK,SAAS,QAAQ,CAAC,CAClC;AACF;;;;;;AASA,MAAa,eAIX,MACA,MACA,aACG;CACH,OAAO,aACL,SAAS,KAAK,SAAS,QAAQ,CAAC,CAAC,CAAC,YAAY,GAC9C,SAAS,KAAK,SAAS,QAAQ,CAAC,CAAC,CAAC,YAAY,CAChD;AACF;;;;;;AASA,MAAa,4BAIX,MACA,MACA,aACG;CACH,OAAO,aACL,SAAS,KAAK,SAAS,QAAQ,CAAC,GAChC,SAAS,KAAK,SAAS,QAAQ,CAAC,CAClC;AACF;;;;;;AAOA,MAAa,mBAIX,MACA,MACA,aACG;CACH,MAAM,IAAqB,KAAK,SAAS,QAAQ;CACjD,MAAM,IAAqB,KAAK,SAAS,QAAQ;CAKjD,OAAO,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK;AAClC;;;;;;AAOA,MAAa,gBAIX,MACA,MACA,aACG;CACH,OAAO,aAAa,KAAK,SAAS,QAAQ,GAAG,KAAK,SAAS,QAAQ,CAAC;AACtE;AAIA,SAAS,aAAa,GAAQ,GAAQ;CACpC,OAAO,MAAM,IAAI,IAAI,IAAI,IAAI,IAAI;AACnC;AAEA,SAAS,SAAS,GAAQ;CACxB,IAAI,OAAO,MAAM,UAAU;EACzB,IAAI,MAAM,CAAC,KAAK,MAAM,YAAY,MAAM,WACtC,OAAO;EAET,OAAO,OAAO,CAAC;CACjB;CACA,IAAI,OAAO,MAAM,UACf,OAAO;CAET,OAAO;AACT;AAKA,SAAS,oBAAoB,MAAc,MAAc;CACvD,MAAM,IAAI,KAAK,MAAM,mBAAmB;CACxC,MAAM,IAAI,KAAK,MAAM,mBAAmB;CAExC,IAAI,KAAK;CACT,IAAI,KAAK;CACT,MAAM,OAAO,EAAE;CACf,MAAM,OAAO,EAAE;CAEf,OAAO,KAAK,QAAQ,KAAK,MAAM;EAE7B,IAAI,CAAC,EAAE,KAAK;GACV;GACA;EACF;EACA,IAAI,CAAC,EAAE,KAAK;GACV;GACA;EACF;EAEA,MAAM,KAAK,EAAE;EACb,MAAM,KAAK,EAAE;EAIb,MAAM,KAAK,SAAS,IAAI,EAAE;EAC1B,MAAM,KAAK,SAAS,IAAI,EAAE;EAE1B,MAAM,SAAS,MAAM,EAAE;EACvB,MAAM,SAAS,MAAM,EAAE;EAGvB,IAAI,UAAU,QAAQ;GACpB,IAAI,KAAK,IACP,OAAO;GAET,IAAI,KAAK,IACP,OAAO;GAET;EACF;EAGA,IAAI,UAAU,QACZ,OAAO,SAAS,KAAK;EAIvB,IAAI,KAAK,IACP,OAAO;EAET,IAAI,KAAK,IACP,OAAO;CAEX;CAGA,IAAI,YAAY;CAChB,OAAO,KAAK,MAAM,MAChB,IAAI,EAAE,KACJ;CAGJ,OAAO,KAAK,MAAM,MAChB,IAAI,EAAE,KACJ;CAGJ,OAAO;AACT;;;;;;AASA,MAAa,UAAU;CACrB,cAAc;CACd,2BAA2B;CAC3B,OAAO;CACP,UAAU;CACV,MAAM;CACN,mBAAmB;AACrB"}
@@ -1,41 +0,0 @@
1
-
2
- //#region src/helpers/columnHelper.ts
3
- /**
4
- * Creates helper functions for authoring column definitions with stronger value
5
- * inference.
6
- *
7
- * `accessor` infers `TValue` from an accessor key or accessor function,
8
- * `display` creates non-data columns, `group` creates parent columns, and
9
- * `columns` preserves tuple-level value types for arrays. At runtime these
10
- * helpers only return column definition objects.
11
- *
12
- * @example
13
- * ```tsx
14
- * const helper = createColumnHelper<typeof features, Person>() // features is the result of `tableFeatures({})` helper
15
- * const columns = [
16
- * helper.display({ id: 'actions', header: 'Actions' }),
17
- * helper.accessor('firstName', {}),
18
- * helper.accessor((row) => row.lastName, { id: 'lastName' }),
19
- * ]
20
- * ```
21
- */
22
- function createColumnHelper() {
23
- return {
24
- accessor: (accessor, column) => {
25
- return typeof accessor === "function" ? {
26
- ...column,
27
- accessorFn: accessor
28
- } : {
29
- ...column,
30
- accessorKey: accessor
31
- };
32
- },
33
- columns: (columns) => columns,
34
- display: (column) => column,
35
- group: (column) => column
36
- };
37
- }
38
-
39
- //#endregion
40
- exports.createColumnHelper = createColumnHelper;
41
- //# sourceMappingURL=columnHelper.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"columnHelper.cjs","names":[],"sources":["../../src/helpers/columnHelper.ts"],"sourcesContent":["import type { DeepKeys, DeepValue, RowData } from '../types/type-utils'\nimport type { TableFeatures } from '../types/TableFeatures'\nimport type {\n AccessorFn,\n AccessorFnColumnDef,\n AccessorKeyColumnDef,\n ColumnDef,\n DisplayColumnDef,\n GroupColumnDef,\n IdentifiedColumnDef,\n} from '../types/ColumnDef'\n\nexport type ColumnHelper<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> = {\n /**\n * Creates a data column definition with an accessor key or function to extract the cell value.\n * @example\n * ```ts\n * helper.accessor('firstName', { cell: (info) => info.getValue() })\n * helper.accessor((row) => row.lastName, { id: 'lastName' })\n * ```\n */\n accessor: <\n TAccessor extends AccessorFn<TData> | DeepKeys<TData>,\n TValue extends TAccessor extends AccessorFn<TData, infer TReturn>\n ? TReturn\n : TAccessor extends DeepKeys<TData>\n ? DeepValue<TData, TAccessor>\n : never,\n >(\n accessor: TAccessor,\n column: TAccessor extends AccessorFn<TData>\n ? DisplayColumnDef<TFeatures, TData, TValue>\n : IdentifiedColumnDef<TFeatures, TData, TValue>,\n ) => TAccessor extends AccessorFn<TData>\n ? AccessorFnColumnDef<TFeatures, TData, TValue>\n : AccessorKeyColumnDef<TFeatures, TData, TValue>\n /**\n * Wraps an array of column definitions to preserve each column's individual TValue type.\n * Uses variadic tuple types to infer element types before checking constraints, preventing type widening.\n * @example\n * ```ts\n * helper.columns([helper.accessor('firstName', {}), helper.accessor('age', {})])\n * ```\n */\n columns: <TColumns extends ReadonlyArray<ColumnDef<TFeatures, TData, any>>>(\n columns: [...TColumns],\n ) => Array<ColumnDef<TFeatures, TData, any>> & [...TColumns]\n /**\n * Creates a display column definition for non-data columns like actions or row selection.\n * @example\n * ```ts\n * helper.display({ id: 'actions', header: 'Actions', cell: () => <button>Edit</button> })\n * ```\n */\n display: (\n column: DisplayColumnDef<TFeatures, TData>,\n ) => DisplayColumnDef<TFeatures, TData, unknown>\n /**\n * Creates a group column definition that contains nested child columns.\n * @example\n * ```ts\n * helper.group({\n * id: 'name',\n * header: 'Name',\n * columns: helper.columns([\n * helper.accessor('firstName', {}),\n * helper.accessor('lastName', { id: 'lastName' }),\n * ]),\n * })\n * ```\n */\n group: (\n column: GroupColumnDef<TFeatures, TData, unknown>,\n ) => GroupColumnDef<TFeatures, TData, unknown>\n}\n\n/**\n * Creates helper functions for authoring column definitions with stronger value\n * inference.\n *\n * `accessor` infers `TValue` from an accessor key or accessor function,\n * `display` creates non-data columns, `group` creates parent columns, and\n * `columns` preserves tuple-level value types for arrays. At runtime these\n * helpers only return column definition objects.\n *\n * @example\n * ```tsx\n * const helper = createColumnHelper<typeof features, Person>() // features is the result of `tableFeatures({})` helper\n * const columns = [\n * helper.display({ id: 'actions', header: 'Actions' }),\n * helper.accessor('firstName', {}),\n * helper.accessor((row) => row.lastName, { id: 'lastName' }),\n * ]\n * ```\n */\nexport function createColumnHelper<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): ColumnHelper<TFeatures, TData> {\n return {\n accessor: (accessor, column) => {\n return typeof accessor === 'function'\n ? ({\n ...column,\n accessorFn: accessor,\n } as any)\n : {\n ...column,\n accessorKey: accessor,\n }\n },\n columns: <TColumns extends ReadonlyArray<ColumnDef<TFeatures, TData, any>>>(\n columns: [...TColumns],\n ): Array<ColumnDef<TFeatures, TData, any>> & [...TColumns] =>\n columns as Array<ColumnDef<TFeatures, TData, any>> & [...TColumns],\n display: (column) => column,\n group: (column) => column,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAkGA,SAAgB,qBAGoB;CAClC,OAAO;EACL,WAAW,UAAU,WAAW;GAC9B,OAAO,OAAO,aAAa,aACtB;IACC,GAAG;IACH,YAAY;GACd,IACA;IACE,GAAG;IACH,aAAa;GACf;EACN;EACA,UACE,YAEA;EACF,UAAU,WAAW;EACrB,QAAQ,WAAW;CACrB;AACF"}
@@ -1,71 +0,0 @@
1
- import { DeepKeys, DeepValue, RowData } from "../types/type-utils.cjs";
2
- import { AccessorFn, AccessorFnColumnDef, AccessorKeyColumnDef, ColumnDef, DisplayColumnDef, GroupColumnDef, IdentifiedColumnDef } from "../types/ColumnDef.cjs";
3
- import { TableFeatures } from "../types/TableFeatures.cjs";
4
-
5
- //#region src/helpers/columnHelper.d.ts
6
- type ColumnHelper<TFeatures extends TableFeatures, TData extends RowData> = {
7
- /**
8
- * Creates a data column definition with an accessor key or function to extract the cell value.
9
- * @example
10
- * ```ts
11
- * helper.accessor('firstName', { cell: (info) => info.getValue() })
12
- * helper.accessor((row) => row.lastName, { id: 'lastName' })
13
- * ```
14
- */
15
- accessor: <TAccessor extends AccessorFn<TData> | DeepKeys<TData>, TValue extends (TAccessor extends AccessorFn<TData, infer TReturn> ? TReturn : TAccessor extends DeepKeys<TData> ? DeepValue<TData, TAccessor> : never)>(accessor: TAccessor, column: TAccessor extends AccessorFn<TData> ? DisplayColumnDef<TFeatures, TData, TValue> : IdentifiedColumnDef<TFeatures, TData, TValue>) => TAccessor extends AccessorFn<TData> ? AccessorFnColumnDef<TFeatures, TData, TValue> : AccessorKeyColumnDef<TFeatures, TData, TValue>;
16
- /**
17
- * Wraps an array of column definitions to preserve each column's individual TValue type.
18
- * Uses variadic tuple types to infer element types before checking constraints, preventing type widening.
19
- * @example
20
- * ```ts
21
- * helper.columns([helper.accessor('firstName', {}), helper.accessor('age', {})])
22
- * ```
23
- */
24
- columns: <TColumns extends ReadonlyArray<ColumnDef<TFeatures, TData, any>>>(columns: [...TColumns]) => Array<ColumnDef<TFeatures, TData, any>> & [...TColumns];
25
- /**
26
- * Creates a display column definition for non-data columns like actions or row selection.
27
- * @example
28
- * ```ts
29
- * helper.display({ id: 'actions', header: 'Actions', cell: () => <button>Edit</button> })
30
- * ```
31
- */
32
- display: (column: DisplayColumnDef<TFeatures, TData>) => DisplayColumnDef<TFeatures, TData, unknown>;
33
- /**
34
- * Creates a group column definition that contains nested child columns.
35
- * @example
36
- * ```ts
37
- * helper.group({
38
- * id: 'name',
39
- * header: 'Name',
40
- * columns: helper.columns([
41
- * helper.accessor('firstName', {}),
42
- * helper.accessor('lastName', { id: 'lastName' }),
43
- * ]),
44
- * })
45
- * ```
46
- */
47
- group: (column: GroupColumnDef<TFeatures, TData, unknown>) => GroupColumnDef<TFeatures, TData, unknown>;
48
- };
49
- /**
50
- * Creates helper functions for authoring column definitions with stronger value
51
- * inference.
52
- *
53
- * `accessor` infers `TValue` from an accessor key or accessor function,
54
- * `display` creates non-data columns, `group` creates parent columns, and
55
- * `columns` preserves tuple-level value types for arrays. At runtime these
56
- * helpers only return column definition objects.
57
- *
58
- * @example
59
- * ```tsx
60
- * const helper = createColumnHelper<typeof features, Person>() // features is the result of `tableFeatures({})` helper
61
- * const columns = [
62
- * helper.display({ id: 'actions', header: 'Actions' }),
63
- * helper.accessor('firstName', {}),
64
- * helper.accessor((row) => row.lastName, { id: 'lastName' }),
65
- * ]
66
- * ```
67
- */
68
- declare function createColumnHelper<TFeatures extends TableFeatures, TData extends RowData>(): ColumnHelper<TFeatures, TData>;
69
- //#endregion
70
- export { ColumnHelper, createColumnHelper };
71
- //# sourceMappingURL=columnHelper.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"columnHelper.js","names":[],"sources":["../../src/helpers/columnHelper.ts"],"sourcesContent":["import type { DeepKeys, DeepValue, RowData } from '../types/type-utils'\nimport type { TableFeatures } from '../types/TableFeatures'\nimport type {\n AccessorFn,\n AccessorFnColumnDef,\n AccessorKeyColumnDef,\n ColumnDef,\n DisplayColumnDef,\n GroupColumnDef,\n IdentifiedColumnDef,\n} from '../types/ColumnDef'\n\nexport type ColumnHelper<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> = {\n /**\n * Creates a data column definition with an accessor key or function to extract the cell value.\n * @example\n * ```ts\n * helper.accessor('firstName', { cell: (info) => info.getValue() })\n * helper.accessor((row) => row.lastName, { id: 'lastName' })\n * ```\n */\n accessor: <\n TAccessor extends AccessorFn<TData> | DeepKeys<TData>,\n TValue extends TAccessor extends AccessorFn<TData, infer TReturn>\n ? TReturn\n : TAccessor extends DeepKeys<TData>\n ? DeepValue<TData, TAccessor>\n : never,\n >(\n accessor: TAccessor,\n column: TAccessor extends AccessorFn<TData>\n ? DisplayColumnDef<TFeatures, TData, TValue>\n : IdentifiedColumnDef<TFeatures, TData, TValue>,\n ) => TAccessor extends AccessorFn<TData>\n ? AccessorFnColumnDef<TFeatures, TData, TValue>\n : AccessorKeyColumnDef<TFeatures, TData, TValue>\n /**\n * Wraps an array of column definitions to preserve each column's individual TValue type.\n * Uses variadic tuple types to infer element types before checking constraints, preventing type widening.\n * @example\n * ```ts\n * helper.columns([helper.accessor('firstName', {}), helper.accessor('age', {})])\n * ```\n */\n columns: <TColumns extends ReadonlyArray<ColumnDef<TFeatures, TData, any>>>(\n columns: [...TColumns],\n ) => Array<ColumnDef<TFeatures, TData, any>> & [...TColumns]\n /**\n * Creates a display column definition for non-data columns like actions or row selection.\n * @example\n * ```ts\n * helper.display({ id: 'actions', header: 'Actions', cell: () => <button>Edit</button> })\n * ```\n */\n display: (\n column: DisplayColumnDef<TFeatures, TData>,\n ) => DisplayColumnDef<TFeatures, TData, unknown>\n /**\n * Creates a group column definition that contains nested child columns.\n * @example\n * ```ts\n * helper.group({\n * id: 'name',\n * header: 'Name',\n * columns: helper.columns([\n * helper.accessor('firstName', {}),\n * helper.accessor('lastName', { id: 'lastName' }),\n * ]),\n * })\n * ```\n */\n group: (\n column: GroupColumnDef<TFeatures, TData, unknown>,\n ) => GroupColumnDef<TFeatures, TData, unknown>\n}\n\n/**\n * Creates helper functions for authoring column definitions with stronger value\n * inference.\n *\n * `accessor` infers `TValue` from an accessor key or accessor function,\n * `display` creates non-data columns, `group` creates parent columns, and\n * `columns` preserves tuple-level value types for arrays. At runtime these\n * helpers only return column definition objects.\n *\n * @example\n * ```tsx\n * const helper = createColumnHelper<typeof features, Person>() // features is the result of `tableFeatures({})` helper\n * const columns = [\n * helper.display({ id: 'actions', header: 'Actions' }),\n * helper.accessor('firstName', {}),\n * helper.accessor((row) => row.lastName, { id: 'lastName' }),\n * ]\n * ```\n */\nexport function createColumnHelper<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): ColumnHelper<TFeatures, TData> {\n return {\n accessor: (accessor, column) => {\n return typeof accessor === 'function'\n ? ({\n ...column,\n accessorFn: accessor,\n } as any)\n : {\n ...column,\n accessorKey: accessor,\n }\n },\n columns: <TColumns extends ReadonlyArray<ColumnDef<TFeatures, TData, any>>>(\n columns: [...TColumns],\n ): Array<ColumnDef<TFeatures, TData, any>> & [...TColumns] =>\n columns as Array<ColumnDef<TFeatures, TData, any>> & [...TColumns],\n display: (column) => column,\n group: (column) => column,\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAkGA,SAAgB,qBAGoB;CAClC,OAAO;EACL,WAAW,UAAU,WAAW;GAC9B,OAAO,OAAO,aAAa,aACtB;IACC,GAAG;IACH,YAAY;GACd,IACA;IACE,GAAG;IACH,aAAa;GACf;EACN;EACA,UACE,YAEA;EACF,UAAU,WAAW;EACrB,QAAQ,WAAW;CACrB;AACF"}
@@ -1,30 +0,0 @@
1
-
2
- //#region src/helpers/metaHelper.ts
3
- /**
4
- * A helper for declaring the `tableMeta`/`columnMeta` type-only slots in the
5
- * `features` option without a type assertion.
6
- *
7
- * Equivalent to `{} as TMeta`, but reads as type-only at the call site and
8
- * avoids `@typescript-eslint/no-unnecessary-type-assertion` false positives
9
- * when the meta type has only optional properties (where an auto-fix removing
10
- * the assertion would silently degrade the inferred meta type to `{}`).
11
- *
12
- * The returned value is a phantom — it is ignored and stripped from the
13
- * table's registered features at runtime; only its type is used.
14
- * @example
15
- * ```
16
- * import { metaHelper, tableFeatures, rowSortingFeature } from '@tanstack/react-table'
17
- * const features = tableFeatures({
18
- * rowSortingFeature,
19
- * tableMeta: metaHelper<MyTableMeta>(),
20
- * columnMeta: metaHelper<MyColumnMeta>(),
21
- * });
22
- * ```
23
- */
24
- function metaHelper() {
25
- return {};
26
- }
27
-
28
- //#endregion
29
- exports.metaHelper = metaHelper;
30
- //# sourceMappingURL=metaHelper.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metaHelper.cjs","names":[],"sources":["../../src/helpers/metaHelper.ts"],"sourcesContent":["/**\n * A helper for declaring the `tableMeta`/`columnMeta` type-only slots in the\n * `features` option without a type assertion.\n *\n * Equivalent to `{} as TMeta`, but reads as type-only at the call site and\n * avoids `@typescript-eslint/no-unnecessary-type-assertion` false positives\n * when the meta type has only optional properties (where an auto-fix removing\n * the assertion would silently degrade the inferred meta type to `{}`).\n *\n * The returned value is a phantom — it is ignored and stripped from the\n * table's registered features at runtime; only its type is used.\n * @example\n * ```\n * import { metaHelper, tableFeatures, rowSortingFeature } from '@tanstack/react-table'\n * const features = tableFeatures({\n * rowSortingFeature,\n * tableMeta: metaHelper<MyTableMeta>(),\n * columnMeta: metaHelper<MyColumnMeta>(),\n * });\n * ```\n */\nexport function metaHelper<TMeta extends object>(): TMeta {\n return {} as TMeta\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAqBA,SAAgB,aAA0C;CACxD,OAAO,CAAC;AACV"}
@@ -1,26 +0,0 @@
1
- //#region src/helpers/metaHelper.d.ts
2
- /**
3
- * A helper for declaring the `tableMeta`/`columnMeta` type-only slots in the
4
- * `features` option without a type assertion.
5
- *
6
- * Equivalent to `{} as TMeta`, but reads as type-only at the call site and
7
- * avoids `@typescript-eslint/no-unnecessary-type-assertion` false positives
8
- * when the meta type has only optional properties (where an auto-fix removing
9
- * the assertion would silently degrade the inferred meta type to `{}`).
10
- *
11
- * The returned value is a phantom — it is ignored and stripped from the
12
- * table's registered features at runtime; only its type is used.
13
- * @example
14
- * ```
15
- * import { metaHelper, tableFeatures, rowSortingFeature } from '@tanstack/react-table'
16
- * const features = tableFeatures({
17
- * rowSortingFeature,
18
- * tableMeta: metaHelper<MyTableMeta>(),
19
- * columnMeta: metaHelper<MyColumnMeta>(),
20
- * });
21
- * ```
22
- */
23
- declare function metaHelper<TMeta extends object>(): TMeta;
24
- //#endregion
25
- export { metaHelper };
26
- //# sourceMappingURL=metaHelper.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metaHelper.js","names":[],"sources":["../../src/helpers/metaHelper.ts"],"sourcesContent":["/**\n * A helper for declaring the `tableMeta`/`columnMeta` type-only slots in the\n * `features` option without a type assertion.\n *\n * Equivalent to `{} as TMeta`, but reads as type-only at the call site and\n * avoids `@typescript-eslint/no-unnecessary-type-assertion` false positives\n * when the meta type has only optional properties (where an auto-fix removing\n * the assertion would silently degrade the inferred meta type to `{}`).\n *\n * The returned value is a phantom — it is ignored and stripped from the\n * table's registered features at runtime; only its type is used.\n * @example\n * ```\n * import { metaHelper, tableFeatures, rowSortingFeature } from '@tanstack/react-table'\n * const features = tableFeatures({\n * rowSortingFeature,\n * tableMeta: metaHelper<MyTableMeta>(),\n * columnMeta: metaHelper<MyColumnMeta>(),\n * });\n * ```\n */\nexport function metaHelper<TMeta extends object>(): TMeta {\n return {} as TMeta\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAqBA,SAAgB,aAA0C;CACxD,OAAO,CAAC;AACV"}