@tanstack/table-core 9.0.0-beta.2 → 9.0.0-beta.20

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 (524) hide show
  1. package/dist/core/cells/constructCell.d.cts +3 -3
  2. package/dist/core/cells/constructCell.d.ts +3 -3
  3. package/dist/core/cells/coreCellsFeature.cjs +11 -20
  4. package/dist/core/cells/coreCellsFeature.cjs.map +1 -1
  5. package/dist/core/cells/coreCellsFeature.d.cts +4 -12
  6. package/dist/core/cells/coreCellsFeature.d.ts +4 -12
  7. package/dist/core/cells/coreCellsFeature.js +12 -20
  8. package/dist/core/cells/coreCellsFeature.js.map +1 -1
  9. package/dist/core/cells/coreCellsFeature.types.d.cts +6 -6
  10. package/dist/core/cells/coreCellsFeature.types.d.ts +6 -6
  11. package/dist/core/cells/coreCellsFeature.utils.d.cts +3 -3
  12. package/dist/core/cells/coreCellsFeature.utils.d.ts +3 -3
  13. package/dist/core/columns/constructColumn.cjs +5 -0
  14. package/dist/core/columns/constructColumn.cjs.map +1 -1
  15. package/dist/core/columns/constructColumn.d.cts +3 -3
  16. package/dist/core/columns/constructColumn.d.ts +3 -3
  17. package/dist/core/columns/constructColumn.js +5 -0
  18. package/dist/core/columns/constructColumn.js.map +1 -1
  19. package/dist/core/columns/coreColumnsFeature.cjs +59 -68
  20. package/dist/core/columns/coreColumnsFeature.cjs.map +1 -1
  21. package/dist/core/columns/coreColumnsFeature.d.cts +4 -12
  22. package/dist/core/columns/coreColumnsFeature.d.ts +4 -12
  23. package/dist/core/columns/coreColumnsFeature.js +60 -68
  24. package/dist/core/columns/coreColumnsFeature.js.map +1 -1
  25. package/dist/core/columns/coreColumnsFeature.types.d.cts +7 -7
  26. package/dist/core/columns/coreColumnsFeature.types.d.ts +7 -7
  27. package/dist/core/columns/coreColumnsFeature.utils.cjs +2 -2
  28. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -1
  29. package/dist/core/columns/coreColumnsFeature.utils.d.cts +9 -9
  30. package/dist/core/columns/coreColumnsFeature.utils.d.ts +9 -9
  31. package/dist/core/columns/coreColumnsFeature.utils.js +3 -3
  32. package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -1
  33. package/dist/core/coreFeatures.cjs.map +1 -1
  34. package/dist/core/coreFeatures.d.cts +1 -1
  35. package/dist/core/coreFeatures.d.ts +1 -1
  36. package/dist/core/coreFeatures.js.map +1 -1
  37. package/dist/core/headers/buildHeaderGroups.cjs.map +1 -1
  38. package/dist/core/headers/buildHeaderGroups.d.cts +2 -2
  39. package/dist/core/headers/buildHeaderGroups.d.ts +2 -2
  40. package/dist/core/headers/buildHeaderGroups.js.map +1 -1
  41. package/dist/core/headers/constructHeader.d.cts +2 -2
  42. package/dist/core/headers/constructHeader.d.ts +2 -2
  43. package/dist/core/headers/coreHeadersFeature.cjs +44 -53
  44. package/dist/core/headers/coreHeadersFeature.cjs.map +1 -1
  45. package/dist/core/headers/coreHeadersFeature.d.cts +4 -12
  46. package/dist/core/headers/coreHeadersFeature.d.ts +4 -12
  47. package/dist/core/headers/coreHeadersFeature.js +45 -53
  48. package/dist/core/headers/coreHeadersFeature.js.map +1 -1
  49. package/dist/core/headers/coreHeadersFeature.types.d.cts +6 -6
  50. package/dist/core/headers/coreHeadersFeature.types.d.ts +6 -6
  51. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
  52. package/dist/core/headers/coreHeadersFeature.utils.d.cts +6 -6
  53. package/dist/core/headers/coreHeadersFeature.utils.d.ts +6 -6
  54. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
  55. package/dist/core/row-models/coreRowModelsFeature.cjs +17 -26
  56. package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -1
  57. package/dist/core/row-models/coreRowModelsFeature.d.cts +4 -12
  58. package/dist/core/row-models/coreRowModelsFeature.d.ts +4 -12
  59. package/dist/core/row-models/coreRowModelsFeature.js +18 -26
  60. package/dist/core/row-models/coreRowModelsFeature.js.map +1 -1
  61. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +6 -16
  62. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +6 -16
  63. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +13 -13
  64. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -1
  65. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +14 -14
  66. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +14 -14
  67. package/dist/core/row-models/coreRowModelsFeature.utils.js +13 -13
  68. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -1
  69. package/dist/core/row-models/createCoreRowModel.cjs +2 -3
  70. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -1
  71. package/dist/core/row-models/createCoreRowModel.d.cts +1 -1
  72. package/dist/core/row-models/createCoreRowModel.d.ts +1 -1
  73. package/dist/core/row-models/createCoreRowModel.js +3 -4
  74. package/dist/core/row-models/createCoreRowModel.js.map +1 -1
  75. package/dist/core/rows/constructRow.cjs +3 -2
  76. package/dist/core/rows/constructRow.cjs.map +1 -1
  77. package/dist/core/rows/constructRow.d.cts +2 -2
  78. package/dist/core/rows/constructRow.d.ts +2 -2
  79. package/dist/core/rows/constructRow.js +4 -2
  80. package/dist/core/rows/constructRow.js.map +1 -1
  81. package/dist/core/rows/coreRowsFeature.cjs +27 -36
  82. package/dist/core/rows/coreRowsFeature.cjs.map +1 -1
  83. package/dist/core/rows/coreRowsFeature.d.cts +4 -12
  84. package/dist/core/rows/coreRowsFeature.d.ts +4 -12
  85. package/dist/core/rows/coreRowsFeature.js +28 -36
  86. package/dist/core/rows/coreRowsFeature.js.map +1 -1
  87. package/dist/core/rows/coreRowsFeature.types.d.cts +6 -6
  88. package/dist/core/rows/coreRowsFeature.types.d.ts +6 -6
  89. package/dist/core/rows/coreRowsFeature.utils.cjs +3 -3
  90. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -1
  91. package/dist/core/rows/coreRowsFeature.utils.d.cts +3 -3
  92. package/dist/core/rows/coreRowsFeature.utils.d.ts +3 -3
  93. package/dist/core/rows/coreRowsFeature.utils.js +4 -4
  94. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -1
  95. package/dist/core/table/constructTable.cjs +21 -6
  96. package/dist/core/table/constructTable.cjs.map +1 -1
  97. package/dist/core/table/constructTable.d.cts +1 -1
  98. package/dist/core/table/constructTable.d.ts +1 -1
  99. package/dist/core/table/constructTable.js +21 -6
  100. package/dist/core/table/constructTable.js.map +1 -1
  101. package/dist/core/table/coreTablesFeature.cjs +7 -16
  102. package/dist/core/table/coreTablesFeature.cjs.map +1 -1
  103. package/dist/core/table/coreTablesFeature.d.cts +4 -12
  104. package/dist/core/table/coreTablesFeature.d.ts +4 -12
  105. package/dist/core/table/coreTablesFeature.js +8 -16
  106. package/dist/core/table/coreTablesFeature.js.map +1 -1
  107. package/dist/core/table/coreTablesFeature.types.d.cts +28 -16
  108. package/dist/core/table/coreTablesFeature.types.d.ts +28 -16
  109. package/dist/core/table/coreTablesFeature.utils.cjs +33 -12
  110. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
  111. package/dist/core/table/coreTablesFeature.utils.d.cts +8 -6
  112. package/dist/core/table/coreTablesFeature.utils.d.ts +8 -6
  113. package/dist/core/table/coreTablesFeature.utils.js +33 -12
  114. package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
  115. package/dist/features/column-faceting/columnFacetingFeature.cjs +49 -61
  116. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -1
  117. package/dist/features/column-faceting/columnFacetingFeature.d.cts +4 -15
  118. package/dist/features/column-faceting/columnFacetingFeature.d.ts +4 -15
  119. package/dist/features/column-faceting/columnFacetingFeature.js +50 -61
  120. package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -1
  121. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +8 -29
  122. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +8 -29
  123. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +12 -12
  124. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
  125. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +8 -8
  126. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +8 -8
  127. package/dist/features/column-faceting/columnFacetingFeature.utils.js +12 -12
  128. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
  129. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -1
  130. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +1 -1
  131. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +1 -1
  132. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -1
  133. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -1
  134. package/dist/features/column-faceting/createFacetedRowModel.d.cts +1 -1
  135. package/dist/features/column-faceting/createFacetedRowModel.d.ts +1 -1
  136. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -1
  137. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -1
  138. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +1 -1
  139. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +1 -1
  140. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -1
  141. package/dist/features/column-filtering/columnFilteringFeature.cjs +40 -53
  142. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -1
  143. package/dist/features/column-filtering/columnFilteringFeature.d.cts +4 -16
  144. package/dist/features/column-filtering/columnFilteringFeature.d.ts +4 -16
  145. package/dist/features/column-filtering/columnFilteringFeature.js +42 -54
  146. package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -1
  147. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +40 -26
  148. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +40 -26
  149. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +1 -1
  150. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
  151. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +12 -12
  152. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +12 -12
  153. package/dist/features/column-filtering/columnFilteringFeature.utils.js +1 -1
  154. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
  155. package/dist/features/column-filtering/createFilteredRowModel.cjs +12 -7
  156. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -1
  157. package/dist/features/column-filtering/createFilteredRowModel.d.cts +5 -3
  158. package/dist/features/column-filtering/createFilteredRowModel.d.ts +5 -3
  159. package/dist/features/column-filtering/createFilteredRowModel.js +13 -8
  160. package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -1
  161. package/dist/features/column-filtering/filterRowsUtils.cjs +3 -2
  162. package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -1
  163. package/dist/features/column-filtering/filterRowsUtils.js +3 -2
  164. package/dist/features/column-filtering/filterRowsUtils.js.map +1 -1
  165. package/dist/features/column-grouping/columnGroupingFeature.cjs +57 -69
  166. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -1
  167. package/dist/features/column-grouping/columnGroupingFeature.d.cts +4 -15
  168. package/dist/features/column-grouping/columnGroupingFeature.d.ts +4 -15
  169. package/dist/features/column-grouping/columnGroupingFeature.js +59 -70
  170. package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -1
  171. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +23 -19
  172. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +23 -19
  173. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +3 -3
  174. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -1
  175. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +11 -11
  176. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +11 -11
  177. package/dist/features/column-grouping/columnGroupingFeature.utils.js +4 -4
  178. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -1
  179. package/dist/features/column-grouping/createGroupedRowModel.cjs +9 -7
  180. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -1
  181. package/dist/features/column-grouping/createGroupedRowModel.d.cts +6 -3
  182. package/dist/features/column-grouping/createGroupedRowModel.d.ts +6 -3
  183. package/dist/features/column-grouping/createGroupedRowModel.js +10 -8
  184. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -1
  185. package/dist/features/column-ordering/columnOrderingFeature.cjs +47 -59
  186. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
  187. package/dist/features/column-ordering/columnOrderingFeature.d.cts +4 -15
  188. package/dist/features/column-ordering/columnOrderingFeature.d.ts +4 -15
  189. package/dist/features/column-ordering/columnOrderingFeature.js +48 -59
  190. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
  191. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +1 -1
  192. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +1 -1
  193. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +9 -9
  194. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +9 -9
  195. package/dist/features/column-pinning/columnPinningFeature.cjs +209 -221
  196. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
  197. package/dist/features/column-pinning/columnPinningFeature.d.cts +4 -15
  198. package/dist/features/column-pinning/columnPinningFeature.d.ts +4 -15
  199. package/dist/features/column-pinning/columnPinningFeature.js +210 -221
  200. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
  201. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +2 -2
  202. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +2 -2
  203. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
  204. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +31 -30
  205. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +31 -30
  206. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
  207. package/dist/features/column-resizing/columnResizingFeature.cjs +31 -43
  208. package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -1
  209. package/dist/features/column-resizing/columnResizingFeature.d.cts +4 -15
  210. package/dist/features/column-resizing/columnResizingFeature.d.ts +4 -15
  211. package/dist/features/column-resizing/columnResizingFeature.js +32 -43
  212. package/dist/features/column-resizing/columnResizingFeature.js.map +1 -1
  213. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +1 -4
  214. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +1 -4
  215. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +2 -5
  216. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
  217. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +6 -6
  218. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +6 -6
  219. package/dist/features/column-resizing/columnResizingFeature.utils.js +3 -6
  220. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
  221. package/dist/features/column-sizing/columnSizingFeature.cjs +112 -125
  222. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
  223. package/dist/features/column-sizing/columnSizingFeature.d.cts +4 -16
  224. package/dist/features/column-sizing/columnSizingFeature.d.ts +4 -16
  225. package/dist/features/column-sizing/columnSizingFeature.js +113 -125
  226. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
  227. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +11 -4
  228. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
  229. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +12 -12
  230. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +12 -12
  231. package/dist/features/column-sizing/columnSizingFeature.utils.js +12 -5
  232. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
  233. package/dist/features/column-visibility/columnVisibilityFeature.cjs +83 -95
  234. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
  235. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +4 -15
  236. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +4 -15
  237. package/dist/features/column-visibility/columnVisibilityFeature.js +84 -95
  238. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
  239. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +2 -2
  240. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +2 -2
  241. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +12 -9
  242. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
  243. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +14 -14
  244. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +14 -14
  245. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +13 -10
  246. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
  247. package/dist/features/global-filtering/globalFilteringFeature.cjs +31 -43
  248. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -1
  249. package/dist/features/global-filtering/globalFilteringFeature.d.cts +4 -15
  250. package/dist/features/global-filtering/globalFilteringFeature.d.ts +4 -15
  251. package/dist/features/global-filtering/globalFilteringFeature.js +32 -43
  252. package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -1
  253. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +2 -2
  254. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +2 -2
  255. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
  256. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +10 -8
  257. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +10 -8
  258. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
  259. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -1
  260. package/dist/features/row-expanding/createExpandedRowModel.d.cts +1 -1
  261. package/dist/features/row-expanding/createExpandedRowModel.d.ts +1 -1
  262. package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -1
  263. package/dist/features/row-expanding/rowExpandingFeature.cjs +37 -49
  264. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -1
  265. package/dist/features/row-expanding/rowExpandingFeature.d.cts +4 -15
  266. package/dist/features/row-expanding/rowExpandingFeature.d.ts +4 -15
  267. package/dist/features/row-expanding/rowExpandingFeature.js +38 -49
  268. package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -1
  269. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +5 -14
  270. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +5 -14
  271. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +21 -12
  272. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -1
  273. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +10 -10
  274. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +10 -10
  275. package/dist/features/row-expanding/rowExpandingFeature.utils.js +22 -13
  276. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -1
  277. package/dist/features/row-pagination/createPaginatedRowModel.cjs +1 -1
  278. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -1
  279. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +1 -1
  280. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +1 -1
  281. package/dist/features/row-pagination/createPaginatedRowModel.js +1 -1
  282. package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -1
  283. package/dist/features/row-pagination/rowPaginationFeature.cjs +35 -47
  284. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -1
  285. package/dist/features/row-pagination/rowPaginationFeature.d.cts +4 -15
  286. package/dist/features/row-pagination/rowPaginationFeature.d.ts +4 -15
  287. package/dist/features/row-pagination/rowPaginationFeature.js +36 -47
  288. package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -1
  289. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +4 -13
  290. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +4 -13
  291. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +17 -17
  292. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +17 -17
  293. package/dist/features/row-pinning/rowPinningFeature.cjs +55 -67
  294. package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -1
  295. package/dist/features/row-pinning/rowPinningFeature.d.cts +4 -15
  296. package/dist/features/row-pinning/rowPinningFeature.d.ts +4 -15
  297. package/dist/features/row-pinning/rowPinningFeature.js +56 -67
  298. package/dist/features/row-pinning/rowPinningFeature.js.map +1 -1
  299. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +2 -2
  300. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +2 -2
  301. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +2 -2
  302. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -1
  303. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +7 -7
  304. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +7 -7
  305. package/dist/features/row-pinning/rowPinningFeature.utils.js +2 -2
  306. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -1
  307. package/dist/features/row-selection/rowSelectionFeature.cjs +108 -77
  308. package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -1
  309. package/dist/features/row-selection/rowSelectionFeature.d.cts +4 -15
  310. package/dist/features/row-selection/rowSelectionFeature.d.ts +4 -15
  311. package/dist/features/row-selection/rowSelectionFeature.js +110 -78
  312. package/dist/features/row-selection/rowSelectionFeature.js.map +1 -1
  313. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +13 -5
  314. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +13 -5
  315. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +76 -60
  316. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
  317. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +48 -23
  318. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +48 -23
  319. package/dist/features/row-selection/rowSelectionFeature.utils.js +77 -62
  320. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
  321. package/dist/features/row-sorting/createSortedRowModel.cjs +5 -3
  322. package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -1
  323. package/dist/features/row-sorting/createSortedRowModel.d.cts +5 -3
  324. package/dist/features/row-sorting/createSortedRowModel.d.ts +5 -3
  325. package/dist/features/row-sorting/createSortedRowModel.js +6 -4
  326. package/dist/features/row-sorting/createSortedRowModel.js.map +1 -1
  327. package/dist/features/row-sorting/rowSortingFeature.cjs +45 -57
  328. package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -1
  329. package/dist/features/row-sorting/rowSortingFeature.d.cts +4 -15
  330. package/dist/features/row-sorting/rowSortingFeature.d.ts +4 -15
  331. package/dist/features/row-sorting/rowSortingFeature.js +46 -57
  332. package/dist/features/row-sorting/rowSortingFeature.js.map +1 -1
  333. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +24 -21
  334. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +24 -21
  335. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +8 -5
  336. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
  337. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +16 -16
  338. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +16 -16
  339. package/dist/features/row-sorting/rowSortingFeature.utils.js +8 -5
  340. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
  341. package/dist/fns/aggregationFns.cjs +18 -18
  342. package/dist/fns/aggregationFns.cjs.map +1 -1
  343. package/dist/fns/aggregationFns.d.cts +21 -19
  344. package/dist/fns/aggregationFns.d.ts +21 -19
  345. package/dist/fns/aggregationFns.js +18 -18
  346. package/dist/fns/aggregationFns.js.map +1 -1
  347. package/dist/fns/filterFns.cjs +51 -65
  348. package/dist/fns/filterFns.cjs.map +1 -1
  349. package/dist/fns/filterFns.d.cts +82 -28
  350. package/dist/fns/filterFns.d.ts +82 -28
  351. package/dist/fns/filterFns.js +51 -65
  352. package/dist/fns/filterFns.js.map +1 -1
  353. package/dist/fns/sortFns.cjs +18 -6
  354. package/dist/fns/sortFns.cjs.map +1 -1
  355. package/dist/fns/sortFns.d.cts +15 -13
  356. package/dist/fns/sortFns.d.ts +15 -13
  357. package/dist/fns/sortFns.js +18 -6
  358. package/dist/fns/sortFns.js.map +1 -1
  359. package/dist/helpers/columnHelper.cjs.map +1 -1
  360. package/dist/helpers/columnHelper.d.cts +2 -2
  361. package/dist/helpers/columnHelper.d.ts +2 -2
  362. package/dist/helpers/columnHelper.js.map +1 -1
  363. package/dist/helpers/metaHelper.cjs +30 -0
  364. package/dist/helpers/metaHelper.cjs.map +1 -0
  365. package/dist/helpers/metaHelper.d.cts +26 -0
  366. package/dist/helpers/metaHelper.d.ts +26 -0
  367. package/dist/helpers/metaHelper.js +29 -0
  368. package/dist/helpers/metaHelper.js.map +1 -0
  369. package/dist/helpers/tableFeatures.cjs +31 -3
  370. package/dist/helpers/tableFeatures.cjs.map +1 -1
  371. package/dist/helpers/tableFeatures.d.cts +33 -5
  372. package/dist/helpers/tableFeatures.d.ts +33 -5
  373. package/dist/helpers/tableFeatures.js +31 -3
  374. package/dist/helpers/tableFeatures.js.map +1 -1
  375. package/dist/index.cjs +4 -20
  376. package/dist/index.d.cts +50 -49
  377. package/dist/index.d.ts +50 -49
  378. package/dist/index.js +23 -22
  379. package/dist/static-functions.cjs +1 -0
  380. package/dist/static-functions.d.cts +2 -2
  381. package/dist/static-functions.d.ts +2 -2
  382. package/dist/static-functions.js +2 -2
  383. package/dist/store-reactivity-bindings.cjs +1 -1
  384. package/dist/store-reactivity-bindings.cjs.map +1 -1
  385. package/dist/store-reactivity-bindings.d.cts +1 -1
  386. package/dist/store-reactivity-bindings.d.ts +1 -1
  387. package/dist/store-reactivity-bindings.js +1 -1
  388. package/dist/store-reactivity-bindings.js.map +1 -1
  389. package/dist/types/Cell.d.cts +4 -9
  390. package/dist/types/Cell.d.ts +4 -9
  391. package/dist/types/Column.d.cts +11 -18
  392. package/dist/types/Column.d.ts +11 -18
  393. package/dist/types/ColumnDef.d.cts +23 -14
  394. package/dist/types/ColumnDef.d.ts +23 -14
  395. package/dist/types/Header.d.cts +5 -10
  396. package/dist/types/Header.d.ts +5 -10
  397. package/dist/types/HeaderGroup.d.cts +4 -9
  398. package/dist/types/HeaderGroup.d.ts +4 -9
  399. package/dist/types/Row.d.cts +7 -12
  400. package/dist/types/Row.d.ts +7 -12
  401. package/dist/types/RowModel.d.cts +12 -28
  402. package/dist/types/RowModel.d.ts +12 -28
  403. package/dist/types/RowModelFns.d.cts +6 -11
  404. package/dist/types/RowModelFns.d.ts +6 -11
  405. package/dist/types/Table.d.cts +26 -36
  406. package/dist/types/Table.d.ts +26 -36
  407. package/dist/types/TableFeatures.d.cts +328 -54
  408. package/dist/types/TableFeatures.d.ts +328 -54
  409. package/dist/types/TableOptions.d.cts +22 -17
  410. package/dist/types/TableOptions.d.ts +22 -17
  411. package/dist/types/TableState.d.cts +11 -16
  412. package/dist/types/TableState.d.ts +11 -16
  413. package/dist/utils.cjs +24 -2
  414. package/dist/utils.cjs.map +1 -1
  415. package/dist/utils.d.cts +23 -7
  416. package/dist/utils.d.ts +23 -7
  417. package/dist/utils.js +23 -3
  418. package/dist/utils.js.map +1 -1
  419. package/package.json +2 -2
  420. package/skills/column-definitions/SKILL.md +3 -6
  421. package/skills/column-layout/SKILL.md +0 -2
  422. package/skills/customizing-feature-behavior/SKILL.md +63 -56
  423. package/skills/filtering/SKILL.md +60 -42
  424. package/skills/filtering/references/faceting-and-fuzzy.md +59 -32
  425. package/skills/grouping/SKILL.md +49 -54
  426. package/skills/migrate-v8-to-v9/SKILL.md +30 -33
  427. package/skills/pagination/SKILL.md +22 -20
  428. package/skills/row-expanding/SKILL.md +33 -25
  429. package/skills/row-pinning/SKILL.md +11 -7
  430. package/skills/row-selection/SKILL.md +0 -3
  431. package/skills/setup/SKILL.md +55 -65
  432. package/skills/sorting/SKILL.md +21 -21
  433. package/skills/state-management/SKILL.md +40 -25
  434. package/src/core/cells/coreCellsFeature.ts +17 -39
  435. package/src/core/cells/coreCellsFeature.types.ts +6 -6
  436. package/src/core/columns/constructColumn.ts +6 -0
  437. package/src/core/columns/coreColumnsFeature.ts +56 -83
  438. package/src/core/columns/coreColumnsFeature.types.ts +8 -8
  439. package/src/core/columns/coreColumnsFeature.utils.ts +4 -4
  440. package/src/core/coreFeatures.ts +1 -1
  441. package/src/core/headers/buildHeaderGroups.ts +4 -2
  442. package/src/core/headers/coreHeadersFeature.ts +42 -64
  443. package/src/core/headers/coreHeadersFeature.types.ts +12 -12
  444. package/src/core/headers/coreHeadersFeature.utils.ts +1 -1
  445. package/src/core/row-models/coreRowModelsFeature.ts +43 -64
  446. package/src/core/row-models/coreRowModelsFeature.types.ts +7 -24
  447. package/src/core/row-models/coreRowModelsFeature.utils.ts +7 -7
  448. package/src/core/row-models/createCoreRowModel.ts +7 -6
  449. package/src/core/rows/constructRow.ts +3 -2
  450. package/src/core/rows/coreRowsFeature.ts +45 -72
  451. package/src/core/rows/coreRowsFeature.types.ts +8 -8
  452. package/src/core/rows/coreRowsFeature.utils.ts +4 -4
  453. package/src/core/table/constructTable.ts +50 -13
  454. package/src/core/table/coreTablesFeature.ts +13 -35
  455. package/src/core/table/coreTablesFeature.types.ts +40 -17
  456. package/src/core/table/coreTablesFeature.utils.ts +52 -18
  457. package/src/features/column-faceting/columnFacetingFeature.ts +71 -102
  458. package/src/features/column-faceting/columnFacetingFeature.types.ts +11 -44
  459. package/src/features/column-faceting/columnFacetingFeature.utils.ts +6 -6
  460. package/src/features/column-faceting/createFacetedMinMaxValues.ts +1 -1
  461. package/src/features/column-faceting/createFacetedRowModel.ts +1 -1
  462. package/src/features/column-faceting/createFacetedUniqueValues.ts +1 -1
  463. package/src/features/column-filtering/columnFilteringFeature.ts +61 -103
  464. package/src/features/column-filtering/columnFilteringFeature.types.ts +55 -39
  465. package/src/features/column-filtering/columnFilteringFeature.utils.ts +2 -2
  466. package/src/features/column-filtering/createFilteredRowModel.ts +18 -17
  467. package/src/features/column-filtering/filterRowsUtils.ts +3 -2
  468. package/src/features/column-grouping/columnGroupingFeature.ts +83 -126
  469. package/src/features/column-grouping/columnGroupingFeature.types.ts +32 -31
  470. package/src/features/column-grouping/columnGroupingFeature.utils.ts +2 -2
  471. package/src/features/column-grouping/createGroupedRowModel.ts +17 -16
  472. package/src/features/column-ordering/columnOrderingFeature.ts +52 -84
  473. package/src/features/column-ordering/columnOrderingFeature.types.ts +2 -2
  474. package/src/features/column-pinning/columnPinningFeature.ts +268 -304
  475. package/src/features/column-pinning/columnPinningFeature.types.ts +4 -4
  476. package/src/features/column-pinning/columnPinningFeature.utils.ts +11 -19
  477. package/src/features/column-resizing/columnResizingFeature.ts +44 -78
  478. package/src/features/column-resizing/columnResizingFeature.types.ts +1 -4
  479. package/src/features/column-resizing/columnResizingFeature.utils.ts +5 -6
  480. package/src/features/column-sizing/columnSizingFeature.ts +115 -152
  481. package/src/features/column-sizing/columnSizingFeature.utils.ts +27 -5
  482. package/src/features/column-visibility/columnVisibilityFeature.ts +92 -129
  483. package/src/features/column-visibility/columnVisibilityFeature.types.ts +4 -4
  484. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +31 -15
  485. package/src/features/global-filtering/globalFilteringFeature.ts +45 -79
  486. package/src/features/global-filtering/globalFilteringFeature.types.ts +4 -4
  487. package/src/features/global-filtering/globalFilteringFeature.utils.ts +5 -3
  488. package/src/features/row-expanding/createExpandedRowModel.ts +1 -1
  489. package/src/features/row-expanding/rowExpandingFeature.ts +65 -101
  490. package/src/features/row-expanding/rowExpandingFeature.types.ts +8 -22
  491. package/src/features/row-expanding/rowExpandingFeature.utils.ts +38 -13
  492. package/src/features/row-pagination/createPaginatedRowModel.ts +2 -2
  493. package/src/features/row-pagination/rowPaginationFeature.ts +69 -103
  494. package/src/features/row-pagination/rowPaginationFeature.types.ts +6 -20
  495. package/src/features/row-pinning/rowPinningFeature.ts +72 -104
  496. package/src/features/row-pinning/rowPinningFeature.types.ts +4 -4
  497. package/src/features/row-selection/rowSelectionFeature.ts +125 -135
  498. package/src/features/row-selection/rowSelectionFeature.types.ts +17 -7
  499. package/src/features/row-selection/rowSelectionFeature.utils.ts +144 -66
  500. package/src/features/row-sorting/createSortedRowModel.ts +12 -15
  501. package/src/features/row-sorting/rowSortingFeature.ts +73 -114
  502. package/src/features/row-sorting/rowSortingFeature.types.ts +33 -32
  503. package/src/features/row-sorting/rowSortingFeature.utils.ts +8 -6
  504. package/src/fns/aggregationFns.ts +26 -42
  505. package/src/fns/filterFns.ts +237 -264
  506. package/src/fns/sortFns.ts +51 -29
  507. package/src/helpers/columnHelper.ts +4 -4
  508. package/src/helpers/metaHelper.ts +24 -0
  509. package/src/helpers/tableFeatures.ts +36 -5
  510. package/src/index.ts +1 -0
  511. package/src/store-reactivity-bindings.ts +1 -1
  512. package/src/types/Cell.ts +5 -21
  513. package/src/types/Column.ts +12 -26
  514. package/src/types/ColumnDef.ts +28 -18
  515. package/src/types/Header.ts +4 -20
  516. package/src/types/HeaderGroup.ts +7 -18
  517. package/src/types/Row.ts +6 -21
  518. package/src/types/RowModel.ts +15 -88
  519. package/src/types/RowModelFns.ts +9 -24
  520. package/src/types/Table.ts +54 -44
  521. package/src/types/TableFeatures.ts +402 -123
  522. package/src/types/TableOptions.ts +59 -21
  523. package/src/types/TableState.ts +5 -17
  524. package/src/utils.ts +40 -8
@@ -3,65 +3,53 @@ const require_rowSortingFeature_utils = require('./rowSortingFeature.utils.cjs')
3
3
 
4
4
  //#region src/features/row-sorting/rowSortingFeature.ts
5
5
  /**
6
- * Creates the stock row sorting feature.
7
- *
8
- * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
6
+ * Feature that adds row sorting state, defaults, and column/table sorting APIs.
9
7
  */
10
- function constructRowSortingFeature() {
11
- return {
12
- getInitialState(initialState) {
13
- return {
14
- sorting: require_rowSortingFeature_utils.getDefaultSortingState(),
15
- ...initialState
16
- };
17
- },
18
- getDefaultColumnDef() {
19
- return {
20
- sortFn: "auto",
21
- sortUndefined: 1
22
- };
23
- },
24
- getDefaultTableOptions(table) {
25
- return {
26
- onSortingChange: require_utils.makeStateUpdater("sorting", table),
27
- isMultiSortEvent: (e) => {
28
- return e.shiftKey;
29
- }
30
- };
31
- },
32
- assignColumnPrototype(prototype, table) {
33
- require_utils.assignPrototypeAPIs("rowSortingFeature", prototype, table, {
34
- column_getAutoSortFn: { fn: (column) => require_rowSortingFeature_utils.column_getAutoSortFn(column) },
35
- column_getAutoSortDir: { fn: (column) => require_rowSortingFeature_utils.column_getAutoSortDir(column) },
36
- column_getSortFn: { fn: (column) => require_rowSortingFeature_utils.column_getSortFn(column) },
37
- column_toggleSorting: { fn: (column, desc, multi) => require_rowSortingFeature_utils.column_toggleSorting(column, desc, multi) },
38
- column_getFirstSortDir: { fn: (column) => require_rowSortingFeature_utils.column_getFirstSortDir(column) },
39
- column_getNextSortingOrder: { fn: (column, multi) => require_rowSortingFeature_utils.column_getNextSortingOrder(column, multi) },
40
- column_getCanSort: { fn: (column) => require_rowSortingFeature_utils.column_getCanSort(column) },
41
- column_getCanMultiSort: { fn: (column) => require_rowSortingFeature_utils.column_getCanMultiSort(column) },
42
- column_getIsSorted: { fn: (column) => require_rowSortingFeature_utils.column_getIsSorted(column) },
43
- column_getSortIndex: { fn: (column) => require_rowSortingFeature_utils.column_getSortIndex(column) },
44
- column_clearSorting: { fn: (column) => require_rowSortingFeature_utils.column_clearSorting(column) },
45
- column_getToggleSortingHandler: { fn: (column) => require_rowSortingFeature_utils.column_getToggleSortingHandler(column) }
46
- });
47
- },
48
- constructTableAPIs(table) {
49
- require_utils.assignTableAPIs("rowSortingFeature", table, {
50
- table_setSorting: { fn: (updater) => require_rowSortingFeature_utils.table_setSorting(table, updater) },
51
- table_resetSorting: { fn: (defaultState) => require_rowSortingFeature_utils.table_resetSorting(table, defaultState) }
52
- });
53
- }
54
- };
55
- }
56
- /**
57
- * The stock row sorting feature.
58
- *
59
- * Register this feature to add sorting state, column sorting APIs, and sorted
60
- * row-model support for client-side or manual sorting.
61
- */
62
- const rowSortingFeature = constructRowSortingFeature();
8
+ const rowSortingFeature = {
9
+ getInitialState(initialState) {
10
+ return {
11
+ sorting: require_rowSortingFeature_utils.getDefaultSortingState(),
12
+ ...initialState
13
+ };
14
+ },
15
+ getDefaultColumnDef() {
16
+ return {
17
+ sortFn: "auto",
18
+ sortUndefined: 1
19
+ };
20
+ },
21
+ getDefaultTableOptions(table) {
22
+ return {
23
+ onSortingChange: require_utils.makeStateUpdater("sorting", table),
24
+ isMultiSortEvent: (e) => {
25
+ return e.shiftKey;
26
+ }
27
+ };
28
+ },
29
+ assignColumnPrototype(prototype, table) {
30
+ require_utils.assignPrototypeAPIs("rowSortingFeature", prototype, table, {
31
+ column_getAutoSortFn: { fn: (column) => require_rowSortingFeature_utils.column_getAutoSortFn(column) },
32
+ column_getAutoSortDir: { fn: (column) => require_rowSortingFeature_utils.column_getAutoSortDir(column) },
33
+ column_getSortFn: { fn: (column) => require_rowSortingFeature_utils.column_getSortFn(column) },
34
+ column_toggleSorting: { fn: (column, desc, multi) => require_rowSortingFeature_utils.column_toggleSorting(column, desc, multi) },
35
+ column_getFirstSortDir: { fn: (column) => require_rowSortingFeature_utils.column_getFirstSortDir(column) },
36
+ column_getNextSortingOrder: { fn: (column, multi) => require_rowSortingFeature_utils.column_getNextSortingOrder(column, multi) },
37
+ column_getCanSort: { fn: (column) => require_rowSortingFeature_utils.column_getCanSort(column) },
38
+ column_getCanMultiSort: { fn: (column) => require_rowSortingFeature_utils.column_getCanMultiSort(column) },
39
+ column_getIsSorted: { fn: (column) => require_rowSortingFeature_utils.column_getIsSorted(column) },
40
+ column_getSortIndex: { fn: (column) => require_rowSortingFeature_utils.column_getSortIndex(column) },
41
+ column_clearSorting: { fn: (column) => require_rowSortingFeature_utils.column_clearSorting(column) },
42
+ column_getToggleSortingHandler: { fn: (column) => require_rowSortingFeature_utils.column_getToggleSortingHandler(column) }
43
+ });
44
+ },
45
+ constructTableAPIs(table) {
46
+ require_utils.assignTableAPIs("rowSortingFeature", table, {
47
+ table_setSorting: { fn: (updater) => require_rowSortingFeature_utils.table_setSorting(table, updater) },
48
+ table_resetSorting: { fn: (defaultState) => require_rowSortingFeature_utils.table_resetSorting(table, defaultState) }
49
+ });
50
+ }
51
+ };
63
52
 
64
53
  //#endregion
65
- exports.constructRowSortingFeature = constructRowSortingFeature;
66
54
  exports.rowSortingFeature = rowSortingFeature;
67
55
  //# sourceMappingURL=rowSortingFeature.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"rowSortingFeature.cjs","names":["getDefaultSortingState","makeStateUpdater","column_getAutoSortFn","column_getAutoSortDir","column_getSortFn","column_toggleSorting","column_getFirstSortDir","column_getNextSortingOrder","column_getCanSort","column_getCanMultiSort","column_getIsSorted","column_getSortIndex","column_clearSorting","column_getToggleSortingHandler","table_setSorting","table_resetSorting"],"sources":["../../../src/features/row-sorting/rowSortingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_clearSorting,\n column_getAutoSortDir,\n column_getAutoSortFn,\n column_getCanMultiSort,\n column_getCanSort,\n column_getFirstSortDir,\n column_getIsSorted,\n column_getNextSortingOrder,\n column_getSortFn,\n column_getSortIndex,\n column_getToggleSortingHandler,\n column_toggleSorting,\n getDefaultSortingState,\n table_resetSorting,\n table_setSorting,\n} from './rowSortingFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// CachedRowModel_Sorted,\n// ColumnDef_RowSorting,\n// Column_RowSorting,\n// CreateRowModel_Sorted,\n// RowModelFns_RowSorting,\n// TableOptions_RowSorting,\n// TableState_RowSorting,\n// Table_RowSorting,\n// } from './rowSortingFeature.types'\n\nexport interface RowSortingFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // CachedRowModel: CachedRowModel_Sorted<TFeatures, TData>\n // Column: Column_RowSorting<TFeatures, TData>\n // ColumnDef: ColumnDef_RowSorting<TFeatures, TData>\n // CreateRowModels: CreateRowModel_Sorted<TFeatures, TData>\n // RowModelFns: RowModelFns_RowSorting<TFeatures, TData>\n // Table: Table_RowSorting<TFeatures, TData>\n // TableOptions: TableOptions_RowSorting\n // TableState: TableState_RowSorting\n}\n\n/**\n * Creates the stock row sorting feature.\n *\n * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.\n */\nexport function constructRowSortingFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<RowSortingFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState(initialState) {\n return {\n sorting: getDefaultSortingState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef() {\n return {\n sortFn: 'auto',\n sortUndefined: 1,\n }\n },\n\n getDefaultTableOptions(table) {\n return {\n onSortingChange: makeStateUpdater('sorting', table),\n isMultiSortEvent: (e: unknown) => {\n return (e as MouseEvent).shiftKey\n },\n }\n },\n\n assignColumnPrototype(prototype, table) {\n assignPrototypeAPIs('rowSortingFeature', prototype, table, {\n column_getAutoSortFn: {\n fn: (column) => column_getAutoSortFn(column),\n },\n column_getAutoSortDir: {\n fn: (column) => column_getAutoSortDir(column),\n },\n column_getSortFn: {\n fn: (column) => column_getSortFn(column),\n },\n column_toggleSorting: {\n fn: (column, desc, multi) =>\n column_toggleSorting(column, desc, multi),\n },\n column_getFirstSortDir: {\n fn: (column) => column_getFirstSortDir(column),\n },\n column_getNextSortingOrder: {\n fn: (column, multi) => column_getNextSortingOrder(column, multi),\n },\n column_getCanSort: {\n fn: (column) => column_getCanSort(column),\n },\n column_getCanMultiSort: {\n fn: (column) => column_getCanMultiSort(column),\n },\n column_getIsSorted: {\n fn: (column) => column_getIsSorted(column),\n },\n column_getSortIndex: {\n fn: (column) => column_getSortIndex(column),\n },\n column_clearSorting: {\n fn: (column) => column_clearSorting(column),\n },\n column_getToggleSortingHandler: {\n fn: (column) => column_getToggleSortingHandler(column),\n },\n })\n },\n\n constructTableAPIs(table) {\n assignTableAPIs('rowSortingFeature', table, {\n table_setSorting: {\n fn: (updater) => table_setSorting(table, updater),\n },\n table_resetSorting: {\n fn: (defaultState) => table_resetSorting(table, defaultState),\n },\n })\n },\n }\n}\n\n/**\n * The stock row sorting feature.\n *\n * Register this feature to add sorting state, column sorting APIs, and sorted\n * row-model support for client-side or manual sorting.\n */\nexport const rowSortingFeature = constructRowSortingFeature()\n"],"mappings":";;;;;;;;;AAsDA,SAAgB,6BAGmD;CACjE,OAAO;EACL,gBAAgB,cAAc;GAC5B,OAAO;IACL,SAASA,uDAAuB;IAChC,GAAG;GACL;EACF;EAEA,sBAAsB;GACpB,OAAO;IACL,QAAQ;IACR,eAAe;GACjB;EACF;EAEA,uBAAuB,OAAO;GAC5B,OAAO;IACL,iBAAiBC,+BAAiB,WAAW,KAAK;IAClD,mBAAmB,MAAe;KAChC,OAAQ,EAAiB;IAC3B;GACF;EACF;EAEA,sBAAsB,WAAW,OAAO;GACtC,kCAAoB,qBAAqB,WAAW,OAAO;IACzD,sBAAsB,EACpB,KAAK,WAAWC,qDAAqB,MAAM,EAC7C;IACA,uBAAuB,EACrB,KAAK,WAAWC,sDAAsB,MAAM,EAC9C;IACA,kBAAkB,EAChB,KAAK,WAAWC,iDAAiB,MAAM,EACzC;IACA,sBAAsB,EACpB,KAAK,QAAQ,MAAM,UACjBC,qDAAqB,QAAQ,MAAM,KAAK,EAC5C;IACA,wBAAwB,EACtB,KAAK,WAAWC,uDAAuB,MAAM,EAC/C;IACA,4BAA4B,EAC1B,KAAK,QAAQ,UAAUC,2DAA2B,QAAQ,KAAK,EACjE;IACA,mBAAmB,EACjB,KAAK,WAAWC,kDAAkB,MAAM,EAC1C;IACA,wBAAwB,EACtB,KAAK,WAAWC,uDAAuB,MAAM,EAC/C;IACA,oBAAoB,EAClB,KAAK,WAAWC,mDAAmB,MAAM,EAC3C;IACA,qBAAqB,EACnB,KAAK,WAAWC,oDAAoB,MAAM,EAC5C;IACA,qBAAqB,EACnB,KAAK,WAAWC,oDAAoB,MAAM,EAC5C;IACA,gCAAgC,EAC9B,KAAK,WAAWC,+DAA+B,MAAM,EACvD;GACF,CAAC;EACH;EAEA,mBAAmB,OAAO;GACxB,8BAAgB,qBAAqB,OAAO;IAC1C,kBAAkB,EAChB,KAAK,YAAYC,iDAAiB,OAAO,OAAO,EAClD;IACA,oBAAoB,EAClB,KAAK,iBAAiBC,mDAAmB,OAAO,YAAY,EAC9D;GACF,CAAC;EACH;CACF;AACF;;;;;;;AAQA,MAAa,oBAAoB,2BAA2B"}
1
+ {"version":3,"file":"rowSortingFeature.cjs","names":["getDefaultSortingState","makeStateUpdater","column_getAutoSortFn","column_getAutoSortDir","column_getSortFn","column_toggleSorting","column_getFirstSortDir","column_getNextSortingOrder","column_getCanSort","column_getCanMultiSort","column_getIsSorted","column_getSortIndex","column_clearSorting","column_getToggleSortingHandler","table_setSorting","table_resetSorting"],"sources":["../../../src/features/row-sorting/rowSortingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_clearSorting,\n column_getAutoSortDir,\n column_getAutoSortFn,\n column_getCanMultiSort,\n column_getCanSort,\n column_getFirstSortDir,\n column_getIsSorted,\n column_getNextSortingOrder,\n column_getSortFn,\n column_getSortIndex,\n column_getToggleSortingHandler,\n column_toggleSorting,\n getDefaultSortingState,\n table_resetSorting,\n table_setSorting,\n} from './rowSortingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds row sorting state, defaults, and column/table sorting APIs.\n */\nexport const rowSortingFeature: TableFeature = {\n getInitialState(initialState) {\n return {\n sorting: getDefaultSortingState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef() {\n return {\n sortFn: 'auto',\n sortUndefined: 1,\n }\n },\n\n getDefaultTableOptions(table) {\n return {\n onSortingChange: makeStateUpdater('sorting', table),\n isMultiSortEvent: (e: unknown) => {\n return (e as MouseEvent).shiftKey\n },\n }\n },\n\n assignColumnPrototype(prototype, table) {\n assignPrototypeAPIs('rowSortingFeature', prototype, table, {\n column_getAutoSortFn: {\n fn: (column) => column_getAutoSortFn(column),\n },\n column_getAutoSortDir: {\n fn: (column) => column_getAutoSortDir(column),\n },\n column_getSortFn: {\n fn: (column) => column_getSortFn(column),\n },\n column_toggleSorting: {\n fn: (column, desc, multi) => column_toggleSorting(column, desc, multi),\n },\n column_getFirstSortDir: {\n fn: (column) => column_getFirstSortDir(column),\n },\n column_getNextSortingOrder: {\n fn: (column, multi) => column_getNextSortingOrder(column, multi),\n },\n column_getCanSort: {\n fn: (column) => column_getCanSort(column),\n },\n column_getCanMultiSort: {\n fn: (column) => column_getCanMultiSort(column),\n },\n column_getIsSorted: {\n fn: (column) => column_getIsSorted(column),\n },\n column_getSortIndex: {\n fn: (column) => column_getSortIndex(column),\n },\n column_clearSorting: {\n fn: (column) => column_clearSorting(column),\n },\n column_getToggleSortingHandler: {\n fn: (column) => column_getToggleSortingHandler(column),\n },\n })\n },\n\n constructTableAPIs(table) {\n assignTableAPIs('rowSortingFeature', table, {\n table_setSorting: {\n fn: (updater) => table_setSorting(table, updater),\n },\n table_resetSorting: {\n fn: (defaultState) => table_resetSorting(table, defaultState),\n },\n })\n },\n}\n"],"mappings":";;;;;;;AA2BA,MAAa,oBAAkC;CAC7C,gBAAgB,cAAc;EAC5B,OAAO;GACL,SAASA,uDAAuB;GAChC,GAAG;EACL;CACF;CAEA,sBAAsB;EACpB,OAAO;GACL,QAAQ;GACR,eAAe;EACjB;CACF;CAEA,uBAAuB,OAAO;EAC5B,OAAO;GACL,iBAAiBC,+BAAiB,WAAW,KAAK;GAClD,mBAAmB,MAAe;IAChC,OAAQ,EAAiB;GAC3B;EACF;CACF;CAEA,sBAAsB,WAAW,OAAO;EACtC,kCAAoB,qBAAqB,WAAW,OAAO;GACzD,sBAAsB,EACpB,KAAK,WAAWC,qDAAqB,MAAM,EAC7C;GACA,uBAAuB,EACrB,KAAK,WAAWC,sDAAsB,MAAM,EAC9C;GACA,kBAAkB,EAChB,KAAK,WAAWC,iDAAiB,MAAM,EACzC;GACA,sBAAsB,EACpB,KAAK,QAAQ,MAAM,UAAUC,qDAAqB,QAAQ,MAAM,KAAK,EACvE;GACA,wBAAwB,EACtB,KAAK,WAAWC,uDAAuB,MAAM,EAC/C;GACA,4BAA4B,EAC1B,KAAK,QAAQ,UAAUC,2DAA2B,QAAQ,KAAK,EACjE;GACA,mBAAmB,EACjB,KAAK,WAAWC,kDAAkB,MAAM,EAC1C;GACA,wBAAwB,EACtB,KAAK,WAAWC,uDAAuB,MAAM,EAC/C;GACA,oBAAoB,EAClB,KAAK,WAAWC,mDAAmB,MAAM,EAC3C;GACA,qBAAqB,EACnB,KAAK,WAAWC,oDAAoB,MAAM,EAC5C;GACA,qBAAqB,EACnB,KAAK,WAAWC,oDAAoB,MAAM,EAC5C;GACA,gCAAgC,EAC9B,KAAK,WAAWC,+DAA+B,MAAM,EACvD;EACF,CAAC;CACH;CAEA,mBAAmB,OAAO;EACxB,8BAAgB,qBAAqB,OAAO;GAC1C,kBAAkB,EAChB,KAAK,YAAYC,iDAAiB,OAAO,OAAO,EAClD;GACA,oBAAoB,EAClB,KAAK,iBAAiBC,mDAAmB,OAAO,YAAY,EAC9D;EACF,CAAC;CACH;AACF"}
@@ -1,21 +1,10 @@
1
- import { RowData } from "../../types/type-utils.cjs";
2
- import { TableFeature, TableFeatures } from "../../types/TableFeatures.cjs";
1
+ import { TableFeature } from "../../types/TableFeatures.cjs";
3
2
 
4
3
  //#region src/features/row-sorting/rowSortingFeature.d.ts
5
- interface RowSortingFeatureConstructors<TFeatures extends TableFeatures, TData extends RowData> {}
6
4
  /**
7
- * Creates the stock row sorting feature.
8
- *
9
- * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
5
+ * Feature that adds row sorting state, defaults, and column/table sorting APIs.
10
6
  */
11
- declare function constructRowSortingFeature<TFeatures extends TableFeatures, TData extends RowData>(): TableFeature<RowSortingFeatureConstructors<TFeatures, TData>>;
12
- /**
13
- * The stock row sorting feature.
14
- *
15
- * Register this feature to add sorting state, column sorting APIs, and sorted
16
- * row-model support for client-side or manual sorting.
17
- */
18
- declare const rowSortingFeature: TableFeature<RowSortingFeatureConstructors<TableFeatures, RowData>>;
7
+ declare const rowSortingFeature: TableFeature;
19
8
  //#endregion
20
- export { RowSortingFeatureConstructors, constructRowSortingFeature, rowSortingFeature };
9
+ export { rowSortingFeature };
21
10
  //# sourceMappingURL=rowSortingFeature.d.cts.map
@@ -1,21 +1,10 @@
1
- import { RowData } from "../../types/type-utils.js";
2
- import { TableFeature, TableFeatures } from "../../types/TableFeatures.js";
1
+ import { TableFeature } from "../../types/TableFeatures.js";
3
2
 
4
3
  //#region src/features/row-sorting/rowSortingFeature.d.ts
5
- interface RowSortingFeatureConstructors<TFeatures extends TableFeatures, TData extends RowData> {}
6
4
  /**
7
- * Creates the stock row sorting feature.
8
- *
9
- * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
5
+ * Feature that adds row sorting state, defaults, and column/table sorting APIs.
10
6
  */
11
- declare function constructRowSortingFeature<TFeatures extends TableFeatures, TData extends RowData>(): TableFeature<RowSortingFeatureConstructors<TFeatures, TData>>;
12
- /**
13
- * The stock row sorting feature.
14
- *
15
- * Register this feature to add sorting state, column sorting APIs, and sorted
16
- * row-model support for client-side or manual sorting.
17
- */
18
- declare const rowSortingFeature: TableFeature<RowSortingFeatureConstructors<TableFeatures, RowData>>;
7
+ declare const rowSortingFeature: TableFeature;
19
8
  //#endregion
20
- export { RowSortingFeatureConstructors, constructRowSortingFeature, rowSortingFeature };
9
+ export { rowSortingFeature };
21
10
  //# sourceMappingURL=rowSortingFeature.d.ts.map
@@ -3,64 +3,53 @@ import { column_clearSorting, column_getAutoSortDir, column_getAutoSortFn, colum
3
3
 
4
4
  //#region src/features/row-sorting/rowSortingFeature.ts
5
5
  /**
6
- * Creates the stock row sorting feature.
7
- *
8
- * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
6
+ * Feature that adds row sorting state, defaults, and column/table sorting APIs.
9
7
  */
10
- function constructRowSortingFeature() {
11
- return {
12
- getInitialState(initialState) {
13
- return {
14
- sorting: getDefaultSortingState(),
15
- ...initialState
16
- };
17
- },
18
- getDefaultColumnDef() {
19
- return {
20
- sortFn: "auto",
21
- sortUndefined: 1
22
- };
23
- },
24
- getDefaultTableOptions(table) {
25
- return {
26
- onSortingChange: makeStateUpdater("sorting", table),
27
- isMultiSortEvent: (e) => {
28
- return e.shiftKey;
29
- }
30
- };
31
- },
32
- assignColumnPrototype(prototype, table) {
33
- assignPrototypeAPIs("rowSortingFeature", prototype, table, {
34
- column_getAutoSortFn: { fn: (column) => column_getAutoSortFn(column) },
35
- column_getAutoSortDir: { fn: (column) => column_getAutoSortDir(column) },
36
- column_getSortFn: { fn: (column) => column_getSortFn(column) },
37
- column_toggleSorting: { fn: (column, desc, multi) => column_toggleSorting(column, desc, multi) },
38
- column_getFirstSortDir: { fn: (column) => column_getFirstSortDir(column) },
39
- column_getNextSortingOrder: { fn: (column, multi) => column_getNextSortingOrder(column, multi) },
40
- column_getCanSort: { fn: (column) => column_getCanSort(column) },
41
- column_getCanMultiSort: { fn: (column) => column_getCanMultiSort(column) },
42
- column_getIsSorted: { fn: (column) => column_getIsSorted(column) },
43
- column_getSortIndex: { fn: (column) => column_getSortIndex(column) },
44
- column_clearSorting: { fn: (column) => column_clearSorting(column) },
45
- column_getToggleSortingHandler: { fn: (column) => column_getToggleSortingHandler(column) }
46
- });
47
- },
48
- constructTableAPIs(table) {
49
- assignTableAPIs("rowSortingFeature", table, {
50
- table_setSorting: { fn: (updater) => table_setSorting(table, updater) },
51
- table_resetSorting: { fn: (defaultState) => table_resetSorting(table, defaultState) }
52
- });
53
- }
54
- };
55
- }
56
- /**
57
- * The stock row sorting feature.
58
- *
59
- * Register this feature to add sorting state, column sorting APIs, and sorted
60
- * row-model support for client-side or manual sorting.
61
- */
62
- const rowSortingFeature = constructRowSortingFeature();
8
+ const rowSortingFeature = {
9
+ getInitialState(initialState) {
10
+ return {
11
+ sorting: getDefaultSortingState(),
12
+ ...initialState
13
+ };
14
+ },
15
+ getDefaultColumnDef() {
16
+ return {
17
+ sortFn: "auto",
18
+ sortUndefined: 1
19
+ };
20
+ },
21
+ getDefaultTableOptions(table) {
22
+ return {
23
+ onSortingChange: makeStateUpdater("sorting", table),
24
+ isMultiSortEvent: (e) => {
25
+ return e.shiftKey;
26
+ }
27
+ };
28
+ },
29
+ assignColumnPrototype(prototype, table) {
30
+ assignPrototypeAPIs("rowSortingFeature", prototype, table, {
31
+ column_getAutoSortFn: { fn: (column) => column_getAutoSortFn(column) },
32
+ column_getAutoSortDir: { fn: (column) => column_getAutoSortDir(column) },
33
+ column_getSortFn: { fn: (column) => column_getSortFn(column) },
34
+ column_toggleSorting: { fn: (column, desc, multi) => column_toggleSorting(column, desc, multi) },
35
+ column_getFirstSortDir: { fn: (column) => column_getFirstSortDir(column) },
36
+ column_getNextSortingOrder: { fn: (column, multi) => column_getNextSortingOrder(column, multi) },
37
+ column_getCanSort: { fn: (column) => column_getCanSort(column) },
38
+ column_getCanMultiSort: { fn: (column) => column_getCanMultiSort(column) },
39
+ column_getIsSorted: { fn: (column) => column_getIsSorted(column) },
40
+ column_getSortIndex: { fn: (column) => column_getSortIndex(column) },
41
+ column_clearSorting: { fn: (column) => column_clearSorting(column) },
42
+ column_getToggleSortingHandler: { fn: (column) => column_getToggleSortingHandler(column) }
43
+ });
44
+ },
45
+ constructTableAPIs(table) {
46
+ assignTableAPIs("rowSortingFeature", table, {
47
+ table_setSorting: { fn: (updater) => table_setSorting(table, updater) },
48
+ table_resetSorting: { fn: (defaultState) => table_resetSorting(table, defaultState) }
49
+ });
50
+ }
51
+ };
63
52
 
64
53
  //#endregion
65
- export { constructRowSortingFeature, rowSortingFeature };
54
+ export { rowSortingFeature };
66
55
  //# sourceMappingURL=rowSortingFeature.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rowSortingFeature.js","names":[],"sources":["../../../src/features/row-sorting/rowSortingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_clearSorting,\n column_getAutoSortDir,\n column_getAutoSortFn,\n column_getCanMultiSort,\n column_getCanSort,\n column_getFirstSortDir,\n column_getIsSorted,\n column_getNextSortingOrder,\n column_getSortFn,\n column_getSortIndex,\n column_getToggleSortingHandler,\n column_toggleSorting,\n getDefaultSortingState,\n table_resetSorting,\n table_setSorting,\n} from './rowSortingFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// CachedRowModel_Sorted,\n// ColumnDef_RowSorting,\n// Column_RowSorting,\n// CreateRowModel_Sorted,\n// RowModelFns_RowSorting,\n// TableOptions_RowSorting,\n// TableState_RowSorting,\n// Table_RowSorting,\n// } from './rowSortingFeature.types'\n\nexport interface RowSortingFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // CachedRowModel: CachedRowModel_Sorted<TFeatures, TData>\n // Column: Column_RowSorting<TFeatures, TData>\n // ColumnDef: ColumnDef_RowSorting<TFeatures, TData>\n // CreateRowModels: CreateRowModel_Sorted<TFeatures, TData>\n // RowModelFns: RowModelFns_RowSorting<TFeatures, TData>\n // Table: Table_RowSorting<TFeatures, TData>\n // TableOptions: TableOptions_RowSorting\n // TableState: TableState_RowSorting\n}\n\n/**\n * Creates the stock row sorting feature.\n *\n * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.\n */\nexport function constructRowSortingFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<RowSortingFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState(initialState) {\n return {\n sorting: getDefaultSortingState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef() {\n return {\n sortFn: 'auto',\n sortUndefined: 1,\n }\n },\n\n getDefaultTableOptions(table) {\n return {\n onSortingChange: makeStateUpdater('sorting', table),\n isMultiSortEvent: (e: unknown) => {\n return (e as MouseEvent).shiftKey\n },\n }\n },\n\n assignColumnPrototype(prototype, table) {\n assignPrototypeAPIs('rowSortingFeature', prototype, table, {\n column_getAutoSortFn: {\n fn: (column) => column_getAutoSortFn(column),\n },\n column_getAutoSortDir: {\n fn: (column) => column_getAutoSortDir(column),\n },\n column_getSortFn: {\n fn: (column) => column_getSortFn(column),\n },\n column_toggleSorting: {\n fn: (column, desc, multi) =>\n column_toggleSorting(column, desc, multi),\n },\n column_getFirstSortDir: {\n fn: (column) => column_getFirstSortDir(column),\n },\n column_getNextSortingOrder: {\n fn: (column, multi) => column_getNextSortingOrder(column, multi),\n },\n column_getCanSort: {\n fn: (column) => column_getCanSort(column),\n },\n column_getCanMultiSort: {\n fn: (column) => column_getCanMultiSort(column),\n },\n column_getIsSorted: {\n fn: (column) => column_getIsSorted(column),\n },\n column_getSortIndex: {\n fn: (column) => column_getSortIndex(column),\n },\n column_clearSorting: {\n fn: (column) => column_clearSorting(column),\n },\n column_getToggleSortingHandler: {\n fn: (column) => column_getToggleSortingHandler(column),\n },\n })\n },\n\n constructTableAPIs(table) {\n assignTableAPIs('rowSortingFeature', table, {\n table_setSorting: {\n fn: (updater) => table_setSorting(table, updater),\n },\n table_resetSorting: {\n fn: (defaultState) => table_resetSorting(table, defaultState),\n },\n })\n },\n }\n}\n\n/**\n * The stock row sorting feature.\n *\n * Register this feature to add sorting state, column sorting APIs, and sorted\n * row-model support for client-side or manual sorting.\n */\nexport const rowSortingFeature = constructRowSortingFeature()\n"],"mappings":";;;;;;;;;AAsDA,SAAgB,6BAGmD;CACjE,OAAO;EACL,gBAAgB,cAAc;GAC5B,OAAO;IACL,SAAS,uBAAuB;IAChC,GAAG;GACL;EACF;EAEA,sBAAsB;GACpB,OAAO;IACL,QAAQ;IACR,eAAe;GACjB;EACF;EAEA,uBAAuB,OAAO;GAC5B,OAAO;IACL,iBAAiB,iBAAiB,WAAW,KAAK;IAClD,mBAAmB,MAAe;KAChC,OAAQ,EAAiB;IAC3B;GACF;EACF;EAEA,sBAAsB,WAAW,OAAO;GACtC,oBAAoB,qBAAqB,WAAW,OAAO;IACzD,sBAAsB,EACpB,KAAK,WAAW,qBAAqB,MAAM,EAC7C;IACA,uBAAuB,EACrB,KAAK,WAAW,sBAAsB,MAAM,EAC9C;IACA,kBAAkB,EAChB,KAAK,WAAW,iBAAiB,MAAM,EACzC;IACA,sBAAsB,EACpB,KAAK,QAAQ,MAAM,UACjB,qBAAqB,QAAQ,MAAM,KAAK,EAC5C;IACA,wBAAwB,EACtB,KAAK,WAAW,uBAAuB,MAAM,EAC/C;IACA,4BAA4B,EAC1B,KAAK,QAAQ,UAAU,2BAA2B,QAAQ,KAAK,EACjE;IACA,mBAAmB,EACjB,KAAK,WAAW,kBAAkB,MAAM,EAC1C;IACA,wBAAwB,EACtB,KAAK,WAAW,uBAAuB,MAAM,EAC/C;IACA,oBAAoB,EAClB,KAAK,WAAW,mBAAmB,MAAM,EAC3C;IACA,qBAAqB,EACnB,KAAK,WAAW,oBAAoB,MAAM,EAC5C;IACA,qBAAqB,EACnB,KAAK,WAAW,oBAAoB,MAAM,EAC5C;IACA,gCAAgC,EAC9B,KAAK,WAAW,+BAA+B,MAAM,EACvD;GACF,CAAC;EACH;EAEA,mBAAmB,OAAO;GACxB,gBAAgB,qBAAqB,OAAO;IAC1C,kBAAkB,EAChB,KAAK,YAAY,iBAAiB,OAAO,OAAO,EAClD;IACA,oBAAoB,EAClB,KAAK,iBAAiB,mBAAmB,OAAO,YAAY,EAC9D;GACF,CAAC;EACH;CACF;AACF;;;;;;;AAQA,MAAa,oBAAoB,2BAA2B"}
1
+ {"version":3,"file":"rowSortingFeature.js","names":[],"sources":["../../../src/features/row-sorting/rowSortingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_clearSorting,\n column_getAutoSortDir,\n column_getAutoSortFn,\n column_getCanMultiSort,\n column_getCanSort,\n column_getFirstSortDir,\n column_getIsSorted,\n column_getNextSortingOrder,\n column_getSortFn,\n column_getSortIndex,\n column_getToggleSortingHandler,\n column_toggleSorting,\n getDefaultSortingState,\n table_resetSorting,\n table_setSorting,\n} from './rowSortingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds row sorting state, defaults, and column/table sorting APIs.\n */\nexport const rowSortingFeature: TableFeature = {\n getInitialState(initialState) {\n return {\n sorting: getDefaultSortingState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef() {\n return {\n sortFn: 'auto',\n sortUndefined: 1,\n }\n },\n\n getDefaultTableOptions(table) {\n return {\n onSortingChange: makeStateUpdater('sorting', table),\n isMultiSortEvent: (e: unknown) => {\n return (e as MouseEvent).shiftKey\n },\n }\n },\n\n assignColumnPrototype(prototype, table) {\n assignPrototypeAPIs('rowSortingFeature', prototype, table, {\n column_getAutoSortFn: {\n fn: (column) => column_getAutoSortFn(column),\n },\n column_getAutoSortDir: {\n fn: (column) => column_getAutoSortDir(column),\n },\n column_getSortFn: {\n fn: (column) => column_getSortFn(column),\n },\n column_toggleSorting: {\n fn: (column, desc, multi) => column_toggleSorting(column, desc, multi),\n },\n column_getFirstSortDir: {\n fn: (column) => column_getFirstSortDir(column),\n },\n column_getNextSortingOrder: {\n fn: (column, multi) => column_getNextSortingOrder(column, multi),\n },\n column_getCanSort: {\n fn: (column) => column_getCanSort(column),\n },\n column_getCanMultiSort: {\n fn: (column) => column_getCanMultiSort(column),\n },\n column_getIsSorted: {\n fn: (column) => column_getIsSorted(column),\n },\n column_getSortIndex: {\n fn: (column) => column_getSortIndex(column),\n },\n column_clearSorting: {\n fn: (column) => column_clearSorting(column),\n },\n column_getToggleSortingHandler: {\n fn: (column) => column_getToggleSortingHandler(column),\n },\n })\n },\n\n constructTableAPIs(table) {\n assignTableAPIs('rowSortingFeature', table, {\n table_setSorting: {\n fn: (updater) => table_setSorting(table, updater),\n },\n table_resetSorting: {\n fn: (defaultState) => table_resetSorting(table, defaultState),\n },\n })\n },\n}\n"],"mappings":";;;;;;;AA2BA,MAAa,oBAAkC;CAC7C,gBAAgB,cAAc;EAC5B,OAAO;GACL,SAAS,uBAAuB;GAChC,GAAG;EACL;CACF;CAEA,sBAAsB;EACpB,OAAO;GACL,QAAQ;GACR,eAAe;EACjB;CACF;CAEA,uBAAuB,OAAO;EAC5B,OAAO;GACL,iBAAiB,iBAAiB,WAAW,KAAK;GAClD,mBAAmB,MAAe;IAChC,OAAQ,EAAiB;GAC3B;EACF;CACF;CAEA,sBAAsB,WAAW,OAAO;EACtC,oBAAoB,qBAAqB,WAAW,OAAO;GACzD,sBAAsB,EACpB,KAAK,WAAW,qBAAqB,MAAM,EAC7C;GACA,uBAAuB,EACrB,KAAK,WAAW,sBAAsB,MAAM,EAC9C;GACA,kBAAkB,EAChB,KAAK,WAAW,iBAAiB,MAAM,EACzC;GACA,sBAAsB,EACpB,KAAK,QAAQ,MAAM,UAAU,qBAAqB,QAAQ,MAAM,KAAK,EACvE;GACA,wBAAwB,EACtB,KAAK,WAAW,uBAAuB,MAAM,EAC/C;GACA,4BAA4B,EAC1B,KAAK,QAAQ,UAAU,2BAA2B,QAAQ,KAAK,EACjE;GACA,mBAAmB,EACjB,KAAK,WAAW,kBAAkB,MAAM,EAC1C;GACA,wBAAwB,EACtB,KAAK,WAAW,uBAAuB,MAAM,EAC/C;GACA,oBAAoB,EAClB,KAAK,WAAW,mBAAmB,MAAM,EAC3C;GACA,qBAAqB,EACnB,KAAK,WAAW,oBAAoB,MAAM,EAC5C;GACA,qBAAqB,EACnB,KAAK,WAAW,oBAAoB,MAAM,EAC5C;GACA,gCAAgC,EAC9B,KAAK,WAAW,+BAA+B,MAAM,EACvD;EACF,CAAC;CACH;CAEA,mBAAmB,OAAO;EACxB,gBAAgB,qBAAqB,OAAO;GAC1C,kBAAkB,EAChB,KAAK,YAAY,iBAAiB,OAAO,OAAO,EAClD;GACA,oBAAoB,EAClB,KAAK,iBAAiB,mBAAmB,OAAO,YAAY,EAC9D;EACF,CAAC;CACH;AACF"}
@@ -1,8 +1,7 @@
1
1
  import { OnChangeFn, RowData, Updater } from "../../types/type-utils.cjs";
2
- import { BuiltInSortFn } from "../../fns/sortFns.cjs";
3
2
  import { Row } from "../../types/Row.cjs";
4
- import { TableFeatures } from "../../types/TableFeatures.cjs";
5
- import { Table } from "../../types/Table.cjs";
3
+ import { BuiltInSortFn } from "../../fns/sortFns.cjs";
4
+ import { IsAny, TableFeatures } from "../../types/TableFeatures.cjs";
6
5
  import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.cjs";
7
6
 
8
7
  //#region src/features/row-sorting/rowSortingFeature.types.d.ts
@@ -15,16 +14,28 @@ type SortingState = Array<ColumnSort>;
15
14
  interface TableState_RowSorting {
16
15
  sorting: SortingState;
17
16
  }
18
- interface RowModelFns_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
19
- sortFns: Record<keyof SortFns, SortFn<TFeatures, TData>>;
17
+ interface RowModelFns_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
18
+ sortFns: Record<string, SortFn<TFeatures, TData>>;
20
19
  }
21
20
  interface SortFns {}
22
- interface SortFn<TFeatures extends TableFeatures, TData extends RowData> {
21
+ interface SortFn<in out TFeatures extends TableFeatures, in out TData extends RowData> {
23
22
  (rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string): number;
24
23
  }
25
24
  type CustomSortFns<TFeatures extends TableFeatures, TData extends RowData> = Record<string, SortFn<TFeatures, TData>>;
26
- type SortFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | keyof SortFns | BuiltInSortFn | SortFn<TFeatures, TData>;
27
- interface ColumnDef_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
25
+ /**
26
+ * Resolves the valid string names for `columnDef.sortFn` for a feature set.
27
+ *
28
+ * When the features object declares a `sortFns` registry
29
+ * (`tableFeatures({ ..., sortFns })`), its keys are the only valid names; a
30
+ * name is only assignable if a sorting function is actually registered for it.
31
+ * Otherwise this falls back to the global declaration-merged `SortFns`
32
+ * interface.
33
+ */
34
+ type ExtractSortFnKeys<TFeatures extends TableFeatures> = IsAny<TFeatures> extends true ? keyof SortFns | BuiltInSortFn : TFeatures extends {
35
+ sortFns: infer TSortFns extends object;
36
+ } ? Extract<keyof TSortFns, string> : keyof SortFns;
37
+ type SortFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | ExtractSortFnKeys<TFeatures> | SortFn<TFeatures, TData>;
38
+ interface ColumnDef_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
28
39
  /**
29
40
  * Enables/Disables multi-sorting for this column.
30
41
  */
@@ -58,7 +69,7 @@ interface ColumnDef_RowSorting<TFeatures extends TableFeatures, TData extends Ro
58
69
  */
59
70
  sortUndefined?: false | -1 | 1 | 'first' | 'last';
60
71
  }
61
- interface Column_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
72
+ interface Column_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
62
73
  /**
63
74
  * Removes this column from the table's sorting state
64
75
  */
@@ -150,7 +161,7 @@ interface TableOptions_RowSorting {
150
161
  */
151
162
  sortDescFirst?: boolean;
152
163
  }
153
- interface Table_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
164
+ interface Table_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
154
165
  /**
155
166
  * Resets `sorting` to `initialState.sorting`.
156
167
  *
@@ -162,7 +173,7 @@ interface Table_RowSorting<TFeatures extends TableFeatures, TData extends RowDat
162
173
  */
163
174
  setSorting: (updater: Updater<SortingState>) => void;
164
175
  }
165
- interface Table_RowModels_Sorted<TFeatures extends TableFeatures, TData extends RowData> {
176
+ interface Table_RowModels_Sorted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
166
177
  /**
167
178
  * Reads the row model immediately before sorting.
168
179
  */
@@ -172,17 +183,9 @@ interface Table_RowModels_Sorted<TFeatures extends TableFeatures, TData extends
172
183
  */
173
184
  getSortedRowModel: () => RowModel<TFeatures, TData>;
174
185
  }
175
- interface CreateRowModel_Sorted<TFeatures extends TableFeatures, TData extends RowData> {
176
- /**
177
- * Factory used to retrieve the sorted row model. If using server-side
178
- * sorting, this is not required. To use client-side sorting, pass the
179
- * exported `createSortedRowModel()` or implement your own factory.
180
- */
181
- sortedRowModel?: (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
182
- }
183
- interface CachedRowModel_Sorted<TFeatures extends TableFeatures, TData extends RowData> {
186
+ interface CachedRowModel_Sorted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
184
187
  sortedRowModel: () => RowModel<TFeatures, TData>;
185
188
  }
186
189
  //#endregion
187
- export { CachedRowModel_Sorted, ColumnDef_RowSorting, ColumnSort, Column_RowSorting, CreateRowModel_Sorted, CustomSortFns, RowModelFns_RowSorting, SortDirection, SortFn, SortFnOption, SortFns, SortingState, TableOptions_RowSorting, TableState_RowSorting, Table_RowModels_Sorted, Table_RowSorting };
190
+ export { CachedRowModel_Sorted, ColumnDef_RowSorting, ColumnSort, Column_RowSorting, CustomSortFns, ExtractSortFnKeys, RowModelFns_RowSorting, SortDirection, SortFn, SortFnOption, SortFns, SortingState, TableOptions_RowSorting, TableState_RowSorting, Table_RowModels_Sorted, Table_RowSorting };
188
191
  //# sourceMappingURL=rowSortingFeature.types.d.cts.map
@@ -1,8 +1,7 @@
1
1
  import { OnChangeFn, RowData, Updater } from "../../types/type-utils.js";
2
- import { BuiltInSortFn } from "../../fns/sortFns.js";
3
2
  import { Row } from "../../types/Row.js";
4
- import { TableFeatures } from "../../types/TableFeatures.js";
5
- import { Table } from "../../types/Table.js";
3
+ import { BuiltInSortFn } from "../../fns/sortFns.js";
4
+ import { IsAny, TableFeatures } from "../../types/TableFeatures.js";
6
5
  import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
7
6
 
8
7
  //#region src/features/row-sorting/rowSortingFeature.types.d.ts
@@ -15,16 +14,28 @@ type SortingState = Array<ColumnSort>;
15
14
  interface TableState_RowSorting {
16
15
  sorting: SortingState;
17
16
  }
18
- interface RowModelFns_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
19
- sortFns: Record<keyof SortFns, SortFn<TFeatures, TData>>;
17
+ interface RowModelFns_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
18
+ sortFns: Record<string, SortFn<TFeatures, TData>>;
20
19
  }
21
20
  interface SortFns {}
22
- interface SortFn<TFeatures extends TableFeatures, TData extends RowData> {
21
+ interface SortFn<in out TFeatures extends TableFeatures, in out TData extends RowData> {
23
22
  (rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string): number;
24
23
  }
25
24
  type CustomSortFns<TFeatures extends TableFeatures, TData extends RowData> = Record<string, SortFn<TFeatures, TData>>;
26
- type SortFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | keyof SortFns | BuiltInSortFn | SortFn<TFeatures, TData>;
27
- interface ColumnDef_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
25
+ /**
26
+ * Resolves the valid string names for `columnDef.sortFn` for a feature set.
27
+ *
28
+ * When the features object declares a `sortFns` registry
29
+ * (`tableFeatures({ ..., sortFns })`), its keys are the only valid names; a
30
+ * name is only assignable if a sorting function is actually registered for it.
31
+ * Otherwise this falls back to the global declaration-merged `SortFns`
32
+ * interface.
33
+ */
34
+ type ExtractSortFnKeys<TFeatures extends TableFeatures> = IsAny<TFeatures> extends true ? keyof SortFns | BuiltInSortFn : TFeatures extends {
35
+ sortFns: infer TSortFns extends object;
36
+ } ? Extract<keyof TSortFns, string> : keyof SortFns;
37
+ type SortFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | ExtractSortFnKeys<TFeatures> | SortFn<TFeatures, TData>;
38
+ interface ColumnDef_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
28
39
  /**
29
40
  * Enables/Disables multi-sorting for this column.
30
41
  */
@@ -58,7 +69,7 @@ interface ColumnDef_RowSorting<TFeatures extends TableFeatures, TData extends Ro
58
69
  */
59
70
  sortUndefined?: false | -1 | 1 | 'first' | 'last';
60
71
  }
61
- interface Column_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
72
+ interface Column_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
62
73
  /**
63
74
  * Removes this column from the table's sorting state
64
75
  */
@@ -150,7 +161,7 @@ interface TableOptions_RowSorting {
150
161
  */
151
162
  sortDescFirst?: boolean;
152
163
  }
153
- interface Table_RowSorting<TFeatures extends TableFeatures, TData extends RowData> {
164
+ interface Table_RowSorting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
154
165
  /**
155
166
  * Resets `sorting` to `initialState.sorting`.
156
167
  *
@@ -162,7 +173,7 @@ interface Table_RowSorting<TFeatures extends TableFeatures, TData extends RowDat
162
173
  */
163
174
  setSorting: (updater: Updater<SortingState>) => void;
164
175
  }
165
- interface Table_RowModels_Sorted<TFeatures extends TableFeatures, TData extends RowData> {
176
+ interface Table_RowModels_Sorted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
166
177
  /**
167
178
  * Reads the row model immediately before sorting.
168
179
  */
@@ -172,17 +183,9 @@ interface Table_RowModels_Sorted<TFeatures extends TableFeatures, TData extends
172
183
  */
173
184
  getSortedRowModel: () => RowModel<TFeatures, TData>;
174
185
  }
175
- interface CreateRowModel_Sorted<TFeatures extends TableFeatures, TData extends RowData> {
176
- /**
177
- * Factory used to retrieve the sorted row model. If using server-side
178
- * sorting, this is not required. To use client-side sorting, pass the
179
- * exported `createSortedRowModel()` or implement your own factory.
180
- */
181
- sortedRowModel?: (table: Table<TFeatures, TData>) => () => RowModel<TFeatures, TData>;
182
- }
183
- interface CachedRowModel_Sorted<TFeatures extends TableFeatures, TData extends RowData> {
186
+ interface CachedRowModel_Sorted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
184
187
  sortedRowModel: () => RowModel<TFeatures, TData>;
185
188
  }
186
189
  //#endregion
187
- export { CachedRowModel_Sorted, ColumnDef_RowSorting, ColumnSort, Column_RowSorting, CreateRowModel_Sorted, CustomSortFns, RowModelFns_RowSorting, SortDirection, SortFn, SortFnOption, SortFns, SortingState, TableOptions_RowSorting, TableState_RowSorting, Table_RowModels_Sorted, Table_RowSorting };
190
+ export { CachedRowModel_Sorted, ColumnDef_RowSorting, ColumnSort, Column_RowSorting, CustomSortFns, ExtractSortFnKeys, RowModelFns_RowSorting, SortDirection, SortFn, SortFnOption, SortFns, SortingState, TableOptions_RowSorting, TableState_RowSorting, Table_RowModels_Sorted, Table_RowSorting };
188
191
  //# sourceMappingURL=rowSortingFeature.types.d.ts.map
@@ -60,19 +60,22 @@ function table_resetSorting(table, defaultState) {
60
60
  */
61
61
  function column_getAutoSortFn(column) {
62
62
  const sortFns = column.table._rowModelFns.sortFns;
63
- let sortFn;
64
63
  const firstRows = column.table.getFilteredRowModel().flatRows.slice(0, 10);
65
64
  let isString = false;
66
65
  for (let i = 0; i < firstRows.length; i++) {
67
66
  const value = firstRows[i].getValue(column.id);
68
- if (Object.prototype.toString.call(value) === "[object Date]") sortFn = sortFns === null || sortFns === void 0 ? void 0 : sortFns.datetime;
67
+ if (Object.prototype.toString.call(value) === "[object Date]") {
68
+ if (sortFns === null || sortFns === void 0 ? void 0 : sortFns.datetime) return sortFns.datetime;
69
+ }
69
70
  if (typeof value === "string") {
70
71
  isString = true;
71
- if (value.split(require_sortFns.reSplitAlphaNumeric).length > 1) sortFn = sortFns === null || sortFns === void 0 ? void 0 : sortFns.alphanumeric;
72
+ if (value.split(require_sortFns.reSplitAlphaNumeric).length > 1) {
73
+ if (sortFns === null || sortFns === void 0 ? void 0 : sortFns.alphanumeric) return sortFns.alphanumeric;
74
+ }
72
75
  }
73
76
  }
74
- if (isString) sortFn = sortFns === null || sortFns === void 0 ? void 0 : sortFns.text;
75
- return sortFn ?? require_sortFns.sortFn_basic;
77
+ if (isString) return (sortFns === null || sortFns === void 0 ? void 0 : sortFns.text) ?? require_sortFns.sortFn_basic;
78
+ return require_sortFns.sortFn_basic;
76
79
  }
77
80
  /**
78
81
  * Chooses the default first sort direction from the first filtered row value.