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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (539) hide show
  1. package/dist/core/cells/constructCell.cjs +5 -0
  2. package/dist/core/cells/constructCell.cjs.map +1 -1
  3. package/dist/core/cells/constructCell.d.cts +5 -0
  4. package/dist/core/cells/constructCell.d.ts +5 -0
  5. package/dist/core/cells/constructCell.js +5 -0
  6. package/dist/core/cells/constructCell.js.map +1 -1
  7. package/dist/core/cells/coreCellsFeature.cjs +5 -0
  8. package/dist/core/cells/coreCellsFeature.cjs.map +1 -1
  9. package/dist/core/cells/coreCellsFeature.d.cts +5 -0
  10. package/dist/core/cells/coreCellsFeature.d.ts +5 -0
  11. package/dist/core/cells/coreCellsFeature.js +5 -0
  12. package/dist/core/cells/coreCellsFeature.js.map +1 -1
  13. package/dist/core/cells/coreCellsFeature.utils.cjs +30 -0
  14. package/dist/core/cells/coreCellsFeature.utils.cjs.map +1 -1
  15. package/dist/core/cells/coreCellsFeature.utils.d.cts +30 -0
  16. package/dist/core/cells/coreCellsFeature.utils.d.ts +30 -0
  17. package/dist/core/cells/coreCellsFeature.utils.js +30 -0
  18. package/dist/core/cells/coreCellsFeature.utils.js.map +1 -1
  19. package/dist/core/columns/constructColumn.cjs +16 -9
  20. package/dist/core/columns/constructColumn.cjs.map +1 -1
  21. package/dist/core/columns/constructColumn.d.cts +5 -0
  22. package/dist/core/columns/constructColumn.d.ts +5 -0
  23. package/dist/core/columns/constructColumn.js +16 -9
  24. package/dist/core/columns/constructColumn.js.map +1 -1
  25. package/dist/core/columns/coreColumnsFeature.cjs +9 -0
  26. package/dist/core/columns/coreColumnsFeature.cjs.map +1 -1
  27. package/dist/core/columns/coreColumnsFeature.d.cts +5 -0
  28. package/dist/core/columns/coreColumnsFeature.d.ts +5 -0
  29. package/dist/core/columns/coreColumnsFeature.js +10 -1
  30. package/dist/core/columns/coreColumnsFeature.js.map +1 -1
  31. package/dist/core/columns/coreColumnsFeature.types.d.cts +4 -0
  32. package/dist/core/columns/coreColumnsFeature.types.d.ts +4 -0
  33. package/dist/core/columns/coreColumnsFeature.utils.cjs +99 -4
  34. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -1
  35. package/dist/core/columns/coreColumnsFeature.utils.d.cts +92 -1
  36. package/dist/core/columns/coreColumnsFeature.utils.d.ts +92 -1
  37. package/dist/core/columns/coreColumnsFeature.utils.js +99 -5
  38. package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -1
  39. package/dist/core/coreFeatures.cjs +5 -0
  40. package/dist/core/coreFeatures.cjs.map +1 -1
  41. package/dist/core/coreFeatures.d.cts +5 -0
  42. package/dist/core/coreFeatures.d.ts +5 -0
  43. package/dist/core/coreFeatures.js +5 -0
  44. package/dist/core/coreFeatures.js.map +1 -1
  45. package/dist/core/headers/buildHeaderGroups.cjs +6 -1
  46. package/dist/core/headers/buildHeaderGroups.cjs.map +1 -1
  47. package/dist/core/headers/buildHeaderGroups.d.cts +5 -0
  48. package/dist/core/headers/buildHeaderGroups.d.ts +5 -0
  49. package/dist/core/headers/buildHeaderGroups.js +6 -1
  50. package/dist/core/headers/buildHeaderGroups.js.map +1 -1
  51. package/dist/core/headers/constructHeader.cjs +5 -0
  52. package/dist/core/headers/constructHeader.cjs.map +1 -1
  53. package/dist/core/headers/constructHeader.d.cts +5 -0
  54. package/dist/core/headers/constructHeader.d.ts +5 -0
  55. package/dist/core/headers/constructHeader.js +5 -0
  56. package/dist/core/headers/constructHeader.js.map +1 -1
  57. package/dist/core/headers/coreHeadersFeature.cjs +5 -0
  58. package/dist/core/headers/coreHeadersFeature.cjs.map +1 -1
  59. package/dist/core/headers/coreHeadersFeature.d.cts +5 -0
  60. package/dist/core/headers/coreHeadersFeature.d.ts +5 -0
  61. package/dist/core/headers/coreHeadersFeature.js +5 -0
  62. package/dist/core/headers/coreHeadersFeature.js.map +1 -1
  63. package/dist/core/headers/coreHeadersFeature.utils.cjs +71 -2
  64. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
  65. package/dist/core/headers/coreHeadersFeature.utils.d.cts +60 -0
  66. package/dist/core/headers/coreHeadersFeature.utils.d.ts +60 -0
  67. package/dist/core/headers/coreHeadersFeature.utils.js +72 -3
  68. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
  69. package/dist/core/reactivity/coreReactivityFeature.types.d.cts +1 -0
  70. package/dist/core/reactivity/coreReactivityFeature.types.d.ts +1 -0
  71. package/dist/core/reactivity/coreReactivityFeature.utils.cjs +5 -0
  72. package/dist/core/reactivity/coreReactivityFeature.utils.cjs.map +1 -1
  73. package/dist/core/reactivity/coreReactivityFeature.utils.d.cts +10 -0
  74. package/dist/core/reactivity/coreReactivityFeature.utils.d.ts +10 -0
  75. package/dist/core/reactivity/coreReactivityFeature.utils.js +5 -0
  76. package/dist/core/reactivity/coreReactivityFeature.utils.js.map +1 -1
  77. package/dist/core/row-models/coreRowModelsFeature.cjs +5 -0
  78. package/dist/core/row-models/coreRowModelsFeature.cjs.map +1 -1
  79. package/dist/core/row-models/coreRowModelsFeature.d.cts +5 -0
  80. package/dist/core/row-models/coreRowModelsFeature.d.ts +5 -0
  81. package/dist/core/row-models/coreRowModelsFeature.js +5 -0
  82. package/dist/core/row-models/coreRowModelsFeature.js.map +1 -1
  83. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +2 -1
  84. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +2 -1
  85. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +120 -0
  86. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -1
  87. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +120 -0
  88. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +120 -0
  89. package/dist/core/row-models/coreRowModelsFeature.utils.js +120 -0
  90. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -1
  91. package/dist/core/row-models/createCoreRowModel.cjs +5 -0
  92. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -1
  93. package/dist/core/row-models/createCoreRowModel.d.cts +5 -0
  94. package/dist/core/row-models/createCoreRowModel.d.ts +5 -0
  95. package/dist/core/row-models/createCoreRowModel.js +5 -0
  96. package/dist/core/row-models/createCoreRowModel.js.map +1 -1
  97. package/dist/core/rows/constructRow.cjs +5 -0
  98. package/dist/core/rows/constructRow.cjs.map +1 -1
  99. package/dist/core/rows/constructRow.d.cts +5 -0
  100. package/dist/core/rows/constructRow.d.ts +5 -0
  101. package/dist/core/rows/constructRow.js +5 -0
  102. package/dist/core/rows/constructRow.js.map +1 -1
  103. package/dist/core/rows/coreRowsFeature.cjs +5 -0
  104. package/dist/core/rows/coreRowsFeature.cjs.map +1 -1
  105. package/dist/core/rows/coreRowsFeature.d.cts +5 -0
  106. package/dist/core/rows/coreRowsFeature.d.ts +5 -0
  107. package/dist/core/rows/coreRowsFeature.js +5 -0
  108. package/dist/core/rows/coreRowsFeature.js.map +1 -1
  109. package/dist/core/rows/coreRowsFeature.types.d.cts +3 -0
  110. package/dist/core/rows/coreRowsFeature.types.d.ts +3 -0
  111. package/dist/core/rows/coreRowsFeature.utils.cjs +104 -4
  112. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -1
  113. package/dist/core/rows/coreRowsFeature.utils.d.cts +101 -0
  114. package/dist/core/rows/coreRowsFeature.utils.d.ts +101 -0
  115. package/dist/core/rows/coreRowsFeature.utils.js +104 -4
  116. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -1
  117. package/dist/core/table/constructTable.cjs +34 -19
  118. package/dist/core/table/constructTable.cjs.map +1 -1
  119. package/dist/core/table/constructTable.d.cts +10 -0
  120. package/dist/core/table/constructTable.d.ts +10 -0
  121. package/dist/core/table/constructTable.js +34 -19
  122. package/dist/core/table/constructTable.js.map +1 -1
  123. package/dist/core/table/coreTablesFeature.cjs +5 -0
  124. package/dist/core/table/coreTablesFeature.cjs.map +1 -1
  125. package/dist/core/table/coreTablesFeature.d.cts +5 -0
  126. package/dist/core/table/coreTablesFeature.d.ts +5 -0
  127. package/dist/core/table/coreTablesFeature.js +5 -0
  128. package/dist/core/table/coreTablesFeature.js.map +1 -1
  129. package/dist/core/table/coreTablesFeature.types.d.cts +23 -10
  130. package/dist/core/table/coreTablesFeature.types.d.ts +23 -10
  131. package/dist/core/table/coreTablesFeature.utils.cjs +60 -1
  132. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
  133. package/dist/core/table/coreTablesFeature.utils.d.cts +46 -1
  134. package/dist/core/table/coreTablesFeature.utils.d.ts +46 -1
  135. package/dist/core/table/coreTablesFeature.utils.js +60 -2
  136. package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
  137. package/dist/features/column-faceting/columnFacetingFeature.cjs +9 -1
  138. package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -1
  139. package/dist/features/column-faceting/columnFacetingFeature.d.cts +9 -1
  140. package/dist/features/column-faceting/columnFacetingFeature.d.ts +9 -1
  141. package/dist/features/column-faceting/columnFacetingFeature.js +9 -1
  142. package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -1
  143. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +12 -6
  144. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +12 -6
  145. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +60 -0
  146. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
  147. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +60 -0
  148. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +60 -0
  149. package/dist/features/column-faceting/columnFacetingFeature.utils.js +60 -0
  150. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
  151. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs +5 -0
  152. package/dist/features/column-faceting/createFacetedMinMaxValues.cjs.map +1 -1
  153. package/dist/features/column-faceting/createFacetedMinMaxValues.d.cts +5 -0
  154. package/dist/features/column-faceting/createFacetedMinMaxValues.d.ts +5 -0
  155. package/dist/features/column-faceting/createFacetedMinMaxValues.js +5 -0
  156. package/dist/features/column-faceting/createFacetedMinMaxValues.js.map +1 -1
  157. package/dist/features/column-faceting/createFacetedRowModel.cjs +5 -0
  158. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -1
  159. package/dist/features/column-faceting/createFacetedRowModel.d.cts +5 -0
  160. package/dist/features/column-faceting/createFacetedRowModel.d.ts +5 -0
  161. package/dist/features/column-faceting/createFacetedRowModel.js +5 -0
  162. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -1
  163. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +5 -0
  164. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -1
  165. package/dist/features/column-faceting/createFacetedUniqueValues.d.cts +5 -0
  166. package/dist/features/column-faceting/createFacetedUniqueValues.d.ts +5 -0
  167. package/dist/features/column-faceting/createFacetedUniqueValues.js +5 -0
  168. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -1
  169. package/dist/features/column-filtering/columnFilteringFeature.cjs +10 -2
  170. package/dist/features/column-filtering/columnFilteringFeature.cjs.map +1 -1
  171. package/dist/features/column-filtering/columnFilteringFeature.d.cts +10 -2
  172. package/dist/features/column-filtering/columnFilteringFeature.d.ts +10 -2
  173. package/dist/features/column-filtering/columnFilteringFeature.js +10 -2
  174. package/dist/features/column-filtering/columnFilteringFeature.js.map +1 -1
  175. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +7 -4
  176. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +7 -4
  177. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +113 -2
  178. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
  179. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +111 -0
  180. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +111 -0
  181. package/dist/features/column-filtering/columnFilteringFeature.utils.js +113 -2
  182. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
  183. package/dist/features/column-filtering/createFilteredRowModel.cjs +5 -0
  184. package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -1
  185. package/dist/features/column-filtering/createFilteredRowModel.d.cts +5 -0
  186. package/dist/features/column-filtering/createFilteredRowModel.d.ts +5 -0
  187. package/dist/features/column-filtering/createFilteredRowModel.js +5 -0
  188. package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -1
  189. package/dist/features/column-filtering/filterRowsUtils.cjs +5 -0
  190. package/dist/features/column-filtering/filterRowsUtils.cjs.map +1 -1
  191. package/dist/features/column-filtering/filterRowsUtils.js +5 -0
  192. package/dist/features/column-filtering/filterRowsUtils.js.map +1 -1
  193. package/dist/features/column-grouping/columnGroupingFeature.cjs +9 -1
  194. package/dist/features/column-grouping/columnGroupingFeature.cjs.map +1 -1
  195. package/dist/features/column-grouping/columnGroupingFeature.d.cts +9 -1
  196. package/dist/features/column-grouping/columnGroupingFeature.d.ts +9 -1
  197. package/dist/features/column-grouping/columnGroupingFeature.js +9 -1
  198. package/dist/features/column-grouping/columnGroupingFeature.js.map +1 -1
  199. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +7 -3
  200. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +7 -3
  201. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +151 -0
  202. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -1
  203. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +151 -0
  204. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +151 -0
  205. package/dist/features/column-grouping/columnGroupingFeature.utils.js +151 -0
  206. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -1
  207. package/dist/features/column-grouping/createGroupedRowModel.cjs +5 -0
  208. package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -1
  209. package/dist/features/column-grouping/createGroupedRowModel.d.cts +5 -0
  210. package/dist/features/column-grouping/createGroupedRowModel.d.ts +5 -0
  211. package/dist/features/column-grouping/createGroupedRowModel.js +5 -0
  212. package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -1
  213. package/dist/features/column-ordering/columnOrderingFeature.cjs +12 -3
  214. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
  215. package/dist/features/column-ordering/columnOrderingFeature.d.cts +9 -1
  216. package/dist/features/column-ordering/columnOrderingFeature.d.ts +9 -1
  217. package/dist/features/column-ordering/columnOrderingFeature.js +12 -3
  218. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
  219. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +4 -2
  220. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +4 -2
  221. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +98 -8
  222. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -1
  223. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +81 -0
  224. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +81 -0
  225. package/dist/features/column-ordering/columnOrderingFeature.utils.js +98 -8
  226. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -1
  227. package/dist/features/column-pinning/columnPinningFeature.cjs +17 -30
  228. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
  229. package/dist/features/column-pinning/columnPinningFeature.d.cts +9 -1
  230. package/dist/features/column-pinning/columnPinningFeature.d.ts +9 -1
  231. package/dist/features/column-pinning/columnPinningFeature.js +17 -30
  232. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
  233. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +6 -2
  234. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +6 -2
  235. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +360 -17
  236. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
  237. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +314 -3
  238. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +314 -3
  239. package/dist/features/column-pinning/columnPinningFeature.utils.js +361 -18
  240. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
  241. package/dist/features/column-resizing/columnResizingFeature.cjs +9 -2
  242. package/dist/features/column-resizing/columnResizingFeature.cjs.map +1 -1
  243. package/dist/features/column-resizing/columnResizingFeature.d.cts +9 -2
  244. package/dist/features/column-resizing/columnResizingFeature.d.ts +9 -2
  245. package/dist/features/column-resizing/columnResizingFeature.js +9 -2
  246. package/dist/features/column-resizing/columnResizingFeature.js.map +1 -1
  247. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +14 -6
  248. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +14 -6
  249. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +81 -0
  250. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
  251. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +81 -0
  252. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +81 -0
  253. package/dist/features/column-resizing/columnResizingFeature.utils.js +81 -0
  254. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
  255. package/dist/features/column-sizing/columnSizingFeature.cjs +50 -12
  256. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
  257. package/dist/features/column-sizing/columnSizingFeature.d.cts +10 -2
  258. package/dist/features/column-sizing/columnSizingFeature.d.ts +10 -2
  259. package/dist/features/column-sizing/columnSizingFeature.js +51 -13
  260. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
  261. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +6 -3
  262. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +6 -3
  263. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +151 -3
  264. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
  265. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +141 -0
  266. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +141 -0
  267. package/dist/features/column-sizing/columnSizingFeature.utils.js +151 -3
  268. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
  269. package/dist/features/column-visibility/columnVisibilityFeature.cjs +26 -25
  270. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
  271. package/dist/features/column-visibility/columnVisibilityFeature.d.cts +9 -1
  272. package/dist/features/column-visibility/columnVisibilityFeature.d.ts +9 -1
  273. package/dist/features/column-visibility/columnVisibilityFeature.js +27 -26
  274. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
  275. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +4 -3
  276. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +4 -3
  277. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +172 -12
  278. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
  279. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +143 -3
  280. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +143 -3
  281. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +173 -12
  282. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
  283. package/dist/features/global-filtering/globalFilteringFeature.cjs +9 -2
  284. package/dist/features/global-filtering/globalFilteringFeature.cjs.map +1 -1
  285. package/dist/features/global-filtering/globalFilteringFeature.d.cts +9 -2
  286. package/dist/features/global-filtering/globalFilteringFeature.d.ts +9 -2
  287. package/dist/features/global-filtering/globalFilteringFeature.js +9 -2
  288. package/dist/features/global-filtering/globalFilteringFeature.js.map +1 -1
  289. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +4 -2
  290. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +4 -2
  291. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +51 -0
  292. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
  293. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +51 -0
  294. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +51 -0
  295. package/dist/features/global-filtering/globalFilteringFeature.utils.js +51 -0
  296. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
  297. package/dist/features/row-expanding/createExpandedRowModel.cjs +10 -0
  298. package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -1
  299. package/dist/features/row-expanding/createExpandedRowModel.d.cts +10 -0
  300. package/dist/features/row-expanding/createExpandedRowModel.d.ts +10 -0
  301. package/dist/features/row-expanding/createExpandedRowModel.js +10 -0
  302. package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -1
  303. package/dist/features/row-expanding/rowExpandingFeature.cjs +9 -1
  304. package/dist/features/row-expanding/rowExpandingFeature.cjs.map +1 -1
  305. package/dist/features/row-expanding/rowExpandingFeature.d.cts +9 -1
  306. package/dist/features/row-expanding/rowExpandingFeature.d.ts +9 -1
  307. package/dist/features/row-expanding/rowExpandingFeature.js +9 -1
  308. package/dist/features/row-expanding/rowExpandingFeature.js.map +1 -1
  309. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +10 -5
  310. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +10 -5
  311. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +151 -0
  312. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -1
  313. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +151 -0
  314. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +151 -0
  315. package/dist/features/row-expanding/rowExpandingFeature.utils.js +151 -0
  316. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -1
  317. package/dist/features/row-pagination/createPaginatedRowModel.cjs +5 -0
  318. package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -1
  319. package/dist/features/row-pagination/createPaginatedRowModel.d.cts +5 -0
  320. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +5 -0
  321. package/dist/features/row-pagination/createPaginatedRowModel.js +5 -0
  322. package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -1
  323. package/dist/features/row-pagination/rowPaginationFeature.cjs +9 -1
  324. package/dist/features/row-pagination/rowPaginationFeature.cjs.map +1 -1
  325. package/dist/features/row-pagination/rowPaginationFeature.d.cts +9 -1
  326. package/dist/features/row-pagination/rowPaginationFeature.d.ts +9 -1
  327. package/dist/features/row-pagination/rowPaginationFeature.js +9 -1
  328. package/dist/features/row-pagination/rowPaginationFeature.js.map +1 -1
  329. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +11 -7
  330. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +11 -7
  331. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +175 -0
  332. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -1
  333. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +175 -0
  334. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +175 -0
  335. package/dist/features/row-pagination/rowPaginationFeature.utils.js +175 -0
  336. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -1
  337. package/dist/features/row-pinning/rowPinningFeature.cjs +9 -1
  338. package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -1
  339. package/dist/features/row-pinning/rowPinningFeature.d.cts +9 -1
  340. package/dist/features/row-pinning/rowPinningFeature.d.ts +9 -1
  341. package/dist/features/row-pinning/rowPinningFeature.js +9 -1
  342. package/dist/features/row-pinning/rowPinningFeature.js.map +1 -1
  343. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +4 -2
  344. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +4 -2
  345. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +112 -0
  346. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -1
  347. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +112 -0
  348. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +112 -0
  349. package/dist/features/row-pinning/rowPinningFeature.utils.js +112 -0
  350. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -1
  351. package/dist/features/row-selection/rowSelectionFeature.cjs +9 -1
  352. package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -1
  353. package/dist/features/row-selection/rowSelectionFeature.d.cts +9 -1
  354. package/dist/features/row-selection/rowSelectionFeature.d.ts +9 -1
  355. package/dist/features/row-selection/rowSelectionFeature.js +9 -1
  356. package/dist/features/row-selection/rowSelectionFeature.js.map +1 -1
  357. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +4 -2
  358. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +4 -2
  359. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +259 -0
  360. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
  361. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +259 -0
  362. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +259 -0
  363. package/dist/features/row-selection/rowSelectionFeature.utils.js +259 -0
  364. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
  365. package/dist/features/row-sorting/createSortedRowModel.cjs +5 -0
  366. package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -1
  367. package/dist/features/row-sorting/createSortedRowModel.d.cts +5 -0
  368. package/dist/features/row-sorting/createSortedRowModel.d.ts +5 -0
  369. package/dist/features/row-sorting/createSortedRowModel.js +5 -0
  370. package/dist/features/row-sorting/createSortedRowModel.js.map +1 -1
  371. package/dist/features/row-sorting/rowSortingFeature.cjs +11 -3
  372. package/dist/features/row-sorting/rowSortingFeature.cjs.map +1 -1
  373. package/dist/features/row-sorting/rowSortingFeature.d.cts +9 -1
  374. package/dist/features/row-sorting/rowSortingFeature.d.ts +9 -1
  375. package/dist/features/row-sorting/rowSortingFeature.js +11 -3
  376. package/dist/features/row-sorting/rowSortingFeature.js.map +1 -1
  377. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +7 -3
  378. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +7 -3
  379. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +151 -0
  380. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
  381. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +151 -0
  382. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +151 -0
  383. package/dist/features/row-sorting/rowSortingFeature.utils.js +151 -0
  384. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
  385. package/dist/features/stockFeatures.cjs +5 -0
  386. package/dist/features/stockFeatures.cjs.map +1 -1
  387. package/dist/features/stockFeatures.d.cts +5 -0
  388. package/dist/features/stockFeatures.d.ts +5 -0
  389. package/dist/features/stockFeatures.js +5 -0
  390. package/dist/features/stockFeatures.js.map +1 -1
  391. package/dist/flex-render.cjs +10 -0
  392. package/dist/flex-render.cjs.map +1 -1
  393. package/dist/flex-render.d.cts +10 -0
  394. package/dist/flex-render.d.ts +10 -0
  395. package/dist/flex-render.js +10 -0
  396. package/dist/flex-render.js.map +1 -1
  397. package/dist/fns/aggregationFns.cjs +5 -0
  398. package/dist/fns/aggregationFns.cjs.map +1 -1
  399. package/dist/fns/aggregationFns.d.cts +5 -0
  400. package/dist/fns/aggregationFns.d.ts +5 -0
  401. package/dist/fns/aggregationFns.js +5 -0
  402. package/dist/fns/aggregationFns.js.map +1 -1
  403. package/dist/fns/filterFns.cjs +5 -0
  404. package/dist/fns/filterFns.cjs.map +1 -1
  405. package/dist/fns/filterFns.d.cts +5 -0
  406. package/dist/fns/filterFns.d.ts +5 -0
  407. package/dist/fns/filterFns.js +5 -0
  408. package/dist/fns/filterFns.js.map +1 -1
  409. package/dist/fns/sortFns.cjs +49 -4
  410. package/dist/fns/sortFns.cjs.map +1 -1
  411. package/dist/fns/sortFns.d.cts +41 -0
  412. package/dist/fns/sortFns.d.ts +41 -0
  413. package/dist/fns/sortFns.js +49 -4
  414. package/dist/fns/sortFns.js.map +1 -1
  415. package/dist/helpers/columnHelper.cjs.map +1 -1
  416. package/dist/helpers/columnHelper.js.map +1 -1
  417. package/dist/helpers/tableFeatures.cjs.map +1 -1
  418. package/dist/helpers/tableFeatures.js.map +1 -1
  419. package/dist/helpers/tableOptions.cjs +6 -0
  420. package/dist/helpers/tableOptions.cjs.map +1 -1
  421. package/dist/helpers/tableOptions.d.cts +26 -0
  422. package/dist/helpers/tableOptions.d.ts +26 -0
  423. package/dist/helpers/tableOptions.js +6 -0
  424. package/dist/helpers/tableOptions.js.map +1 -1
  425. package/dist/reactivity.cjs +1 -3
  426. package/dist/reactivity.d.cts +1 -2
  427. package/dist/reactivity.d.ts +1 -2
  428. package/dist/reactivity.js +1 -2
  429. package/dist/static-functions.cjs +2 -1
  430. package/dist/static-functions.d.cts +4 -4
  431. package/dist/static-functions.d.ts +4 -4
  432. package/dist/static-functions.js +4 -4
  433. package/dist/store-reactivity-bindings.cjs +36 -0
  434. package/dist/store-reactivity-bindings.cjs.map +1 -0
  435. package/dist/store-reactivity-bindings.d.cts +22 -0
  436. package/dist/store-reactivity-bindings.d.ts +22 -0
  437. package/dist/store-reactivity-bindings.js +35 -0
  438. package/dist/store-reactivity-bindings.js.map +1 -0
  439. package/dist/utils.cjs +45 -0
  440. package/dist/utils.cjs.map +1 -1
  441. package/dist/utils.d.cts +45 -0
  442. package/dist/utils.d.ts +45 -0
  443. package/dist/utils.js +45 -0
  444. package/dist/utils.js.map +1 -1
  445. package/package.json +5 -1
  446. package/src/core/cells/constructCell.ts +5 -0
  447. package/src/core/cells/coreCellsFeature.ts +5 -0
  448. package/src/core/cells/coreCellsFeature.utils.ts +30 -0
  449. package/src/core/columns/constructColumn.ts +7 -1
  450. package/src/core/columns/coreColumnsFeature.ts +10 -0
  451. package/src/core/columns/coreColumnsFeature.types.ts +4 -0
  452. package/src/core/columns/coreColumnsFeature.utils.ts +109 -8
  453. package/src/core/coreFeatures.ts +5 -0
  454. package/src/core/headers/buildHeaderGroups.ts +7 -1
  455. package/src/core/headers/constructHeader.ts +5 -0
  456. package/src/core/headers/coreHeadersFeature.ts +5 -0
  457. package/src/core/headers/coreHeadersFeature.utils.ts +86 -8
  458. package/src/core/reactivity/coreReactivityFeature.types.ts +1 -0
  459. package/src/core/reactivity/coreReactivityFeature.utils.ts +15 -0
  460. package/src/core/row-models/coreRowModelsFeature.ts +5 -0
  461. package/src/core/row-models/coreRowModelsFeature.types.ts +2 -1
  462. package/src/core/row-models/coreRowModelsFeature.utils.ts +120 -0
  463. package/src/core/row-models/createCoreRowModel.ts +5 -0
  464. package/src/core/rows/constructRow.ts +5 -0
  465. package/src/core/rows/coreRowsFeature.ts +5 -0
  466. package/src/core/rows/coreRowsFeature.types.ts +3 -0
  467. package/src/core/rows/coreRowsFeature.utils.ts +106 -7
  468. package/src/core/table/constructTable.ts +37 -19
  469. package/src/core/table/coreTablesFeature.ts +5 -0
  470. package/src/core/table/coreTablesFeature.types.ts +23 -10
  471. package/src/core/table/coreTablesFeature.utils.ts +74 -1
  472. package/src/features/column-faceting/columnFacetingFeature.ts +9 -1
  473. package/src/features/column-faceting/columnFacetingFeature.types.ts +12 -6
  474. package/src/features/column-faceting/columnFacetingFeature.utils.ts +60 -0
  475. package/src/features/column-faceting/createFacetedMinMaxValues.ts +5 -0
  476. package/src/features/column-faceting/createFacetedRowModel.ts +5 -0
  477. package/src/features/column-faceting/createFacetedUniqueValues.ts +5 -0
  478. package/src/features/column-filtering/columnFilteringFeature.ts +10 -2
  479. package/src/features/column-filtering/columnFilteringFeature.types.ts +7 -4
  480. package/src/features/column-filtering/columnFilteringFeature.utils.ts +113 -2
  481. package/src/features/column-filtering/createFilteredRowModel.ts +5 -0
  482. package/src/features/column-filtering/filterRowsUtils.ts +5 -0
  483. package/src/features/column-grouping/columnGroupingFeature.ts +9 -1
  484. package/src/features/column-grouping/columnGroupingFeature.types.ts +7 -3
  485. package/src/features/column-grouping/columnGroupingFeature.utils.ts +151 -0
  486. package/src/features/column-grouping/createGroupedRowModel.ts +5 -0
  487. package/src/features/column-ordering/columnOrderingFeature.ts +10 -1
  488. package/src/features/column-ordering/columnOrderingFeature.types.ts +4 -2
  489. package/src/features/column-ordering/columnOrderingFeature.utils.ts +110 -18
  490. package/src/features/column-pinning/columnPinningFeature.ts +11 -12
  491. package/src/features/column-pinning/columnPinningFeature.types.ts +6 -2
  492. package/src/features/column-pinning/columnPinningFeature.utils.ts +390 -57
  493. package/src/features/column-resizing/columnResizingFeature.ts +9 -2
  494. package/src/features/column-resizing/columnResizingFeature.types.ts +14 -6
  495. package/src/features/column-resizing/columnResizingFeature.utils.ts +81 -0
  496. package/src/features/column-sizing/columnSizingFeature.ts +38 -18
  497. package/src/features/column-sizing/columnSizingFeature.types.ts +6 -3
  498. package/src/features/column-sizing/columnSizingFeature.utils.ts +168 -9
  499. package/src/features/column-visibility/columnVisibilityFeature.ts +15 -21
  500. package/src/features/column-visibility/columnVisibilityFeature.types.ts +4 -3
  501. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +179 -23
  502. package/src/features/global-filtering/globalFilteringFeature.ts +9 -2
  503. package/src/features/global-filtering/globalFilteringFeature.types.ts +4 -2
  504. package/src/features/global-filtering/globalFilteringFeature.utils.ts +51 -0
  505. package/src/features/row-expanding/createExpandedRowModel.ts +10 -0
  506. package/src/features/row-expanding/rowExpandingFeature.ts +9 -1
  507. package/src/features/row-expanding/rowExpandingFeature.types.ts +10 -5
  508. package/src/features/row-expanding/rowExpandingFeature.utils.ts +151 -0
  509. package/src/features/row-pagination/createPaginatedRowModel.ts +5 -0
  510. package/src/features/row-pagination/rowPaginationFeature.ts +9 -1
  511. package/src/features/row-pagination/rowPaginationFeature.types.ts +11 -7
  512. package/src/features/row-pagination/rowPaginationFeature.utils.ts +175 -0
  513. package/src/features/row-pinning/rowPinningFeature.ts +9 -1
  514. package/src/features/row-pinning/rowPinningFeature.types.ts +4 -2
  515. package/src/features/row-pinning/rowPinningFeature.utils.ts +112 -0
  516. package/src/features/row-selection/rowSelectionFeature.ts +9 -1
  517. package/src/features/row-selection/rowSelectionFeature.types.ts +4 -2
  518. package/src/features/row-selection/rowSelectionFeature.utils.ts +259 -0
  519. package/src/features/row-sorting/createSortedRowModel.ts +5 -0
  520. package/src/features/row-sorting/rowSortingFeature.ts +11 -3
  521. package/src/features/row-sorting/rowSortingFeature.types.ts +7 -3
  522. package/src/features/row-sorting/rowSortingFeature.utils.ts +151 -0
  523. package/src/features/stockFeatures.ts +5 -0
  524. package/src/flex-render.ts +10 -0
  525. package/src/fns/aggregationFns.ts +5 -0
  526. package/src/fns/filterFns.ts +5 -0
  527. package/src/fns/sortFns.ts +50 -5
  528. package/src/helpers/tableOptions.ts +32 -0
  529. package/src/reactivity.ts +0 -1
  530. package/src/store-reactivity-bindings.ts +35 -0
  531. package/src/types/Table.ts +1 -1
  532. package/src/utils.ts +45 -0
  533. package/dist/core/reactivity/constructReactivityBindings.cjs +0 -19
  534. package/dist/core/reactivity/constructReactivityBindings.cjs.map +0 -1
  535. package/dist/core/reactivity/constructReactivityBindings.d.cts +0 -7
  536. package/dist/core/reactivity/constructReactivityBindings.d.ts +0 -7
  537. package/dist/core/reactivity/constructReactivityBindings.js +0 -19
  538. package/dist/core/reactivity/constructReactivityBindings.js.map +0 -1
  539. package/src/core/reactivity/constructReactivityBindings.ts +0 -19
@@ -3,6 +3,16 @@ import { table_getColumn } from "../../core/columns/coreColumnsFeature.utils.js"
3
3
  import { column_getSize, header_getSize, table_setColumnSizing } from "../column-sizing/columnSizingFeature.utils.js";
4
4
 
5
5
  //#region src/features/column-resizing/columnResizingFeature.utils.ts
6
+ /**
7
+ * Returns the default column resizing state.
8
+ *
9
+ * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const initialValue = getDefaultColumnResizingState()
14
+ * ```
15
+ */
6
16
  function getDefaultColumnResizingState() {
7
17
  return {
8
18
  startOffset: null,
@@ -13,13 +23,43 @@ function getDefaultColumnResizingState() {
13
23
  columnSizingStart: []
14
24
  };
15
25
  }
26
+ /**
27
+ * Returns whether a column can use resize.
28
+ *
29
+ * This combines column options, table options, and any required accessor or feature state for the capability.
30
+ *
31
+ * @example
32
+ * ```ts
33
+ * const value = column_getCanResize(column)
34
+ * ```
35
+ */
16
36
  function column_getCanResize(column) {
17
37
  return (column.columnDef.enableResizing ?? true) && (column.table.options.enableColumnResizing ?? true);
18
38
  }
39
+ /**
40
+ * Returns is resizing for a column.
41
+ *
42
+ * This derives the value from the column definition, table options, and the feature state atoms registered on the table.
43
+ *
44
+ * @example
45
+ * ```ts
46
+ * const value = column_getIsResizing(column)
47
+ * ```
48
+ */
19
49
  function column_getIsResizing(column) {
20
50
  var _column$table$atoms$c;
21
51
  return ((_column$table$atoms$c = column.table.atoms.columnResizing) === null || _column$table$atoms$c === void 0 || (_column$table$atoms$c = _column$table$atoms$c.get()) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.isResizingColumn) === column.id;
22
52
  }
53
+ /**
54
+ * Returns resize handler for a header.
55
+ *
56
+ * This is the static implementation behind the matching header instance API and can account for nested header groups.
57
+ *
58
+ * @example
59
+ * ```ts
60
+ * const onMouseDown = header_getResizeHandler(header)
61
+ * ```
62
+ */
23
63
  function header_getResizeHandler(header, _contextDocument) {
24
64
  const column = table_getColumn(header.column.table, header.column.id);
25
65
  const canResize = column_getCanResize(column);
@@ -116,13 +156,44 @@ function header_getResizeHandler(header, _contextDocument) {
116
156
  }));
117
157
  };
118
158
  }
159
+ /**
160
+ * Updates the table's column resizing state slice.
161
+ *
162
+ * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.
163
+ *
164
+ * @example
165
+ * ```ts
166
+ * table_setColumnResizing(table, (old) => old)
167
+ * ```
168
+ */
119
169
  function table_setColumnResizing(table, updater) {
120
170
  var _table$options$onColu, _table$options;
121
171
  (_table$options$onColu = (_table$options = table.options).onColumnResizingChange) === null || _table$options$onColu === void 0 || _table$options$onColu.call(_table$options, updater);
122
172
  }
173
+ /**
174
+ * Resets the table's header size info state slice.
175
+ *
176
+ * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.
177
+ *
178
+ * @example
179
+ * ```ts
180
+ * table_resetHeaderSizeInfo(table)
181
+ * table_resetHeaderSizeInfo(table, true)
182
+ * ```
183
+ */
123
184
  function table_resetHeaderSizeInfo(table, defaultState) {
124
185
  table_setColumnResizing(table, defaultState ? getDefaultColumnResizingState() : cloneState(table.initialState.columnResizing ?? getDefaultColumnResizingState()));
125
186
  }
187
+ /**
188
+ * Detects whether the current environment supports passive event listeners.
189
+ *
190
+ * Column resizing uses this to register pointer and touch listeners with the safest available options.
191
+ *
192
+ * @example
193
+ * ```ts
194
+ * const canUsePassiveListeners = passiveEventSupported()
195
+ * ```
196
+ */
126
197
  function passiveEventSupported() {
127
198
  let passiveSupported = null;
128
199
  if (typeof passiveSupported === "boolean") return passiveSupported;
@@ -141,6 +212,16 @@ function passiveEventSupported() {
141
212
  passiveSupported = supported;
142
213
  return passiveSupported;
143
214
  }
215
+ /**
216
+ * Returns whether an event is a touch-start event.
217
+ *
218
+ * Column resizing uses this to normalize mouse and touch resize interactions.
219
+ *
220
+ * @example
221
+ * ```ts
222
+ * const isTouch = isTouchStartEvent(event)
223
+ * ```
224
+ */
144
225
  function isTouchStartEvent(e) {
145
226
  return e.type === "touchstart";
146
227
  }
@@ -1 +1 @@
1
- {"version":3,"file":"columnResizingFeature.utils.js","names":[],"sources":["../../../src/features/column-resizing/columnResizingFeature.utils.ts"],"sourcesContent":["import {\n column_getSize,\n header_getSize,\n table_setColumnSizing,\n} from '../column-sizing/columnSizingFeature.utils'\nimport { table_getColumn } from '../../core/columns/coreColumnsFeature.utils'\nimport { cloneState } from '../../utils'\nimport type { CellData, RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Header } from '../../types/Header'\nimport type { Column_Internal } from '../../types/Column'\nimport type { ColumnSizingState } from '../column-sizing/columnSizingFeature.types'\nimport type { columnResizingState } from './columnResizingFeature.types'\n\nexport function getDefaultColumnResizingState(): columnResizingState {\n return {\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n isResizingColumn: false,\n columnSizingStart: [],\n }\n}\n\nexport function column_getCanResize<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return (\n (column.columnDef.enableResizing ?? true) &&\n (column.table.options.enableColumnResizing ?? true)\n )\n}\n\nexport function column_getIsResizing<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return (\n column.table.atoms.columnResizing?.get()?.isResizingColumn === column.id\n )\n}\n\nexport function header_getResizeHandler<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(header: Header<TFeatures, TData, TValue>, _contextDocument?: Document) {\n const column = table_getColumn(header.column.table, header.column.id)!\n const canResize = column_getCanResize(column)\n\n return (event: unknown) => {\n if (!canResize) {\n return\n }\n\n ;(event as any).persist?.()\n\n if (isTouchStartEvent(event)) {\n // lets not respond to multiple touches (e.g. 2 or 3 fingers)\n if (event.touches.length > 1) {\n return\n }\n }\n\n const startSize = header_getSize(header)\n\n const columnSizingStart: Array<[string, number]> = header\n .getLeafHeaders()\n .map((leafHeader) => [\n leafHeader.column.id,\n column_getSize(leafHeader.column),\n ])\n\n const clientX = isTouchStartEvent(event)\n ? Math.round(event.touches[0]!.clientX)\n : (event as MouseEvent).clientX\n\n const newColumnSizing: ColumnSizingState = {}\n\n const updateOffset = (eventType: 'move' | 'end', clientXPos?: number) => {\n if (typeof clientXPos !== 'number') {\n return\n }\n\n table_setColumnResizing(column.table, (old) => {\n const deltaDirection =\n column.table.options.columnResizeDirection === 'rtl' ? -1 : 1\n const deltaOffset =\n (clientXPos - (old.startOffset ?? 0)) * deltaDirection\n const startSize = old.startSize ?? 0\n const deltaPercentage = Math.max(\n startSize > 0 ? deltaOffset / startSize : 0,\n -0.999999,\n )\n\n old.columnSizingStart.forEach(([columnId, headerSize]) => {\n newColumnSizing[columnId] =\n Math.round(\n Math.max(\n headerSize > 0\n ? headerSize + headerSize * deltaPercentage\n : deltaOffset / old.columnSizingStart.length,\n 0,\n ) * 100,\n ) / 100\n })\n\n return {\n ...old,\n deltaOffset,\n deltaPercentage,\n }\n })\n\n if (\n column.table.options.columnResizeMode === 'onChange' ||\n eventType === 'end'\n ) {\n table_setColumnSizing(column.table, (old) => ({\n ...old,\n ...newColumnSizing,\n }))\n }\n }\n\n const onMove = (clientXPos?: number) => updateOffset('move', clientXPos)\n\n const onEnd = (clientXPos?: number) => {\n updateOffset('end', clientXPos)\n\n table_setColumnResizing(column.table, (old) => ({\n ...old,\n isResizingColumn: false,\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n columnSizingStart: [],\n }))\n }\n\n const contextDocument =\n _contextDocument || typeof document !== 'undefined' ? document : null\n\n const mouseEvents = {\n moveHandler: (e: MouseEvent) => onMove(e.clientX),\n upHandler: (e: MouseEvent) => {\n contextDocument?.removeEventListener(\n 'mousemove',\n mouseEvents.moveHandler,\n )\n contextDocument?.removeEventListener('mouseup', mouseEvents.upHandler)\n onEnd(e.clientX)\n },\n }\n\n const touchEvents = {\n moveHandler: (touchEvent: TouchEvent) => {\n if (touchEvent.cancelable) {\n touchEvent.preventDefault()\n touchEvent.stopPropagation()\n }\n onMove(touchEvent.touches[0]!.clientX)\n return false\n },\n upHandler: (e: TouchEvent) => {\n contextDocument?.removeEventListener(\n 'touchmove',\n touchEvents.moveHandler,\n )\n contextDocument?.removeEventListener('touchend', touchEvents.upHandler)\n if (e.cancelable) {\n e.preventDefault()\n e.stopPropagation()\n }\n onEnd(e.touches[0]?.clientX)\n },\n }\n\n const passiveIfSupported = passiveEventSupported()\n ? { passive: false }\n : false\n\n if (isTouchStartEvent(event)) {\n contextDocument?.addEventListener(\n 'touchmove',\n touchEvents.moveHandler,\n passiveIfSupported,\n )\n contextDocument?.addEventListener(\n 'touchend',\n touchEvents.upHandler,\n passiveIfSupported,\n )\n } else {\n contextDocument?.addEventListener(\n 'mousemove',\n mouseEvents.moveHandler,\n passiveIfSupported,\n )\n contextDocument?.addEventListener(\n 'mouseup',\n mouseEvents.upHandler,\n passiveIfSupported,\n )\n }\n\n table_setColumnResizing(column.table, (old) => ({\n ...old,\n startOffset: clientX,\n startSize,\n deltaOffset: 0,\n deltaPercentage: 0,\n columnSizingStart,\n isResizingColumn: column.id,\n }))\n }\n}\n\nexport function table_setColumnResizing<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<columnResizingState>,\n) {\n table.options.onColumnResizingChange?.(updater)\n}\n\nexport function table_resetHeaderSizeInfo<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n table_setColumnResizing(\n table,\n defaultState\n ? getDefaultColumnResizingState()\n : cloneState(\n table.initialState.columnResizing ?? getDefaultColumnResizingState(),\n ),\n )\n}\n\nexport function passiveEventSupported() {\n let passiveSupported: boolean | null = null\n\n if (typeof passiveSupported === 'boolean') return passiveSupported\n\n let supported = false\n try {\n const options = {\n get passive() {\n supported = true\n return false\n },\n }\n\n const noop = () => {}\n\n window.addEventListener('test', noop, options)\n window.removeEventListener('test', noop)\n } catch (err) {\n supported = false\n }\n passiveSupported = supported\n return passiveSupported\n}\n\nexport function isTouchStartEvent(e: unknown): e is TouchEvent {\n return (e as TouchEvent).type === 'touchstart'\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"columnResizingFeature.utils.js","names":[],"sources":["../../../src/features/column-resizing/columnResizingFeature.utils.ts"],"sourcesContent":["import {\n column_getSize,\n header_getSize,\n table_setColumnSizing,\n} from '../column-sizing/columnSizingFeature.utils'\nimport { table_getColumn } from '../../core/columns/coreColumnsFeature.utils'\nimport { cloneState } from '../../utils'\nimport type { CellData, RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Header } from '../../types/Header'\nimport type { Column_Internal } from '../../types/Column'\nimport type { ColumnSizingState } from '../column-sizing/columnSizingFeature.types'\nimport type { columnResizingState } from './columnResizingFeature.types'\n\n/**\n * Returns the default column resizing state.\n *\n * Feature constructors use this value to initialize the table state or option defaults when no user value is provided.\n *\n * @example\n * ```ts\n * const initialValue = getDefaultColumnResizingState()\n * ```\n */\nexport function getDefaultColumnResizingState(): columnResizingState {\n return {\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n isResizingColumn: false,\n columnSizingStart: [],\n }\n}\n\n/**\n * Returns whether a column can use resize.\n *\n * This combines column options, table options, and any required accessor or feature state for the capability.\n *\n * @example\n * ```ts\n * const value = column_getCanResize(column)\n * ```\n */\nexport function column_getCanResize<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return (\n (column.columnDef.enableResizing ?? true) &&\n (column.table.options.enableColumnResizing ?? true)\n )\n}\n\n/**\n * Returns is resizing for a column.\n *\n * This derives the value from the column definition, table options, and the feature state atoms registered on the table.\n *\n * @example\n * ```ts\n * const value = column_getIsResizing(column)\n * ```\n */\nexport function column_getIsResizing<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n return (\n column.table.atoms.columnResizing?.get()?.isResizingColumn === column.id\n )\n}\n\n/**\n * Returns resize handler for a header.\n *\n * This is the static implementation behind the matching header instance API and can account for nested header groups.\n *\n * @example\n * ```ts\n * const onMouseDown = header_getResizeHandler(header)\n * ```\n */\nexport function header_getResizeHandler<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(header: Header<TFeatures, TData, TValue>, _contextDocument?: Document) {\n const column = table_getColumn(header.column.table, header.column.id)!\n const canResize = column_getCanResize(column)\n\n return (event: unknown) => {\n if (!canResize) {\n return\n }\n\n ;(event as any).persist?.()\n\n if (isTouchStartEvent(event)) {\n // lets not respond to multiple touches (e.g. 2 or 3 fingers)\n if (event.touches.length > 1) {\n return\n }\n }\n\n const startSize = header_getSize(header)\n\n const columnSizingStart: Array<[string, number]> = header\n .getLeafHeaders()\n .map((leafHeader) => [\n leafHeader.column.id,\n column_getSize(leafHeader.column),\n ])\n\n const clientX = isTouchStartEvent(event)\n ? Math.round(event.touches[0]!.clientX)\n : (event as MouseEvent).clientX\n\n const newColumnSizing: ColumnSizingState = {}\n\n const updateOffset = (eventType: 'move' | 'end', clientXPos?: number) => {\n if (typeof clientXPos !== 'number') {\n return\n }\n\n table_setColumnResizing(column.table, (old) => {\n const deltaDirection =\n column.table.options.columnResizeDirection === 'rtl' ? -1 : 1\n const deltaOffset =\n (clientXPos - (old.startOffset ?? 0)) * deltaDirection\n const startSize = old.startSize ?? 0\n const deltaPercentage = Math.max(\n startSize > 0 ? deltaOffset / startSize : 0,\n -0.999999,\n )\n\n old.columnSizingStart.forEach(([columnId, headerSize]) => {\n newColumnSizing[columnId] =\n Math.round(\n Math.max(\n headerSize > 0\n ? headerSize + headerSize * deltaPercentage\n : deltaOffset / old.columnSizingStart.length,\n 0,\n ) * 100,\n ) / 100\n })\n\n return {\n ...old,\n deltaOffset,\n deltaPercentage,\n }\n })\n\n if (\n column.table.options.columnResizeMode === 'onChange' ||\n eventType === 'end'\n ) {\n table_setColumnSizing(column.table, (old) => ({\n ...old,\n ...newColumnSizing,\n }))\n }\n }\n\n const onMove = (clientXPos?: number) => updateOffset('move', clientXPos)\n\n const onEnd = (clientXPos?: number) => {\n updateOffset('end', clientXPos)\n\n table_setColumnResizing(column.table, (old) => ({\n ...old,\n isResizingColumn: false,\n startOffset: null,\n startSize: null,\n deltaOffset: null,\n deltaPercentage: null,\n columnSizingStart: [],\n }))\n }\n\n const contextDocument =\n _contextDocument || typeof document !== 'undefined' ? document : null\n\n const mouseEvents = {\n moveHandler: (e: MouseEvent) => onMove(e.clientX),\n upHandler: (e: MouseEvent) => {\n contextDocument?.removeEventListener(\n 'mousemove',\n mouseEvents.moveHandler,\n )\n contextDocument?.removeEventListener('mouseup', mouseEvents.upHandler)\n onEnd(e.clientX)\n },\n }\n\n const touchEvents = {\n moveHandler: (touchEvent: TouchEvent) => {\n if (touchEvent.cancelable) {\n touchEvent.preventDefault()\n touchEvent.stopPropagation()\n }\n onMove(touchEvent.touches[0]!.clientX)\n return false\n },\n upHandler: (e: TouchEvent) => {\n contextDocument?.removeEventListener(\n 'touchmove',\n touchEvents.moveHandler,\n )\n contextDocument?.removeEventListener('touchend', touchEvents.upHandler)\n if (e.cancelable) {\n e.preventDefault()\n e.stopPropagation()\n }\n onEnd(e.touches[0]?.clientX)\n },\n }\n\n const passiveIfSupported = passiveEventSupported()\n ? { passive: false }\n : false\n\n if (isTouchStartEvent(event)) {\n contextDocument?.addEventListener(\n 'touchmove',\n touchEvents.moveHandler,\n passiveIfSupported,\n )\n contextDocument?.addEventListener(\n 'touchend',\n touchEvents.upHandler,\n passiveIfSupported,\n )\n } else {\n contextDocument?.addEventListener(\n 'mousemove',\n mouseEvents.moveHandler,\n passiveIfSupported,\n )\n contextDocument?.addEventListener(\n 'mouseup',\n mouseEvents.upHandler,\n passiveIfSupported,\n )\n }\n\n table_setColumnResizing(column.table, (old) => ({\n ...old,\n startOffset: clientX,\n startSize,\n deltaOffset: 0,\n deltaPercentage: 0,\n columnSizingStart,\n isResizingColumn: column.id,\n }))\n }\n}\n\n/**\n * Updates the table's column resizing state slice.\n *\n * The updater follows TanStack Table updater semantics and is routed through the corresponding `on*Change` option or backing atom.\n *\n * @example\n * ```ts\n * table_setColumnResizing(table, (old) => old)\n * ```\n */\nexport function table_setColumnResizing<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<columnResizingState>,\n) {\n table.options.onColumnResizingChange?.(updater)\n}\n\n/**\n * Resets the table's header size info state slice.\n *\n * By default the reset uses `table.initialState`; when supported, a blank/default reset bypasses the saved initial value.\n *\n * @example\n * ```ts\n * table_resetHeaderSizeInfo(table)\n * table_resetHeaderSizeInfo(table, true)\n * ```\n */\nexport function table_resetHeaderSizeInfo<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n table_setColumnResizing(\n table,\n defaultState\n ? getDefaultColumnResizingState()\n : cloneState(\n table.initialState.columnResizing ?? getDefaultColumnResizingState(),\n ),\n )\n}\n\n/**\n * Detects whether the current environment supports passive event listeners.\n *\n * Column resizing uses this to register pointer and touch listeners with the safest available options.\n *\n * @example\n * ```ts\n * const canUsePassiveListeners = passiveEventSupported()\n * ```\n */\nexport function passiveEventSupported() {\n let passiveSupported: boolean | null = null\n\n if (typeof passiveSupported === 'boolean') return passiveSupported\n\n let supported = false\n try {\n const options = {\n get passive() {\n supported = true\n return false\n },\n }\n\n const noop = () => {}\n\n window.addEventListener('test', noop, options)\n window.removeEventListener('test', noop)\n } catch (err) {\n supported = false\n }\n passiveSupported = supported\n return passiveSupported\n}\n\n/**\n * Returns whether an event is a touch-start event.\n *\n * Column resizing uses this to normalize mouse and touch resize interactions.\n *\n * @example\n * ```ts\n * const isTouch = isTouchStartEvent(event)\n * ```\n */\nexport function isTouchStartEvent(e: unknown): e is TouchEvent {\n return (e as TouchEvent).type === 'touchstart'\n}\n"],"mappings":"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"}
@@ -1,8 +1,12 @@
1
1
  const require_utils = require('../../utils.cjs');
2
- const require_columnPinningFeature_utils = require('../column-pinning/columnPinningFeature.utils.cjs');
3
2
  const require_columnSizingFeature_utils = require('./columnSizingFeature.utils.cjs');
4
3
 
5
4
  //#region src/features/column-sizing/columnSizingFeature.ts
5
+ /**
6
+ * Creates the stock column sizing feature.
7
+ *
8
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
9
+ */
6
10
  function constructColumnSizingFeature() {
7
11
  return {
8
12
  getInitialState: (initialState) => {
@@ -19,26 +23,38 @@ function constructColumnSizingFeature() {
19
23
  },
20
24
  assignColumnPrototype: (prototype, table) => {
21
25
  require_utils.assignPrototypeAPIs("columnSizingFeature", prototype, table, {
22
- column_getSize: { fn: (column) => require_columnSizingFeature_utils.column_getSize(column) },
26
+ column_getSize: {
27
+ fn: (column) => require_columnSizingFeature_utils.column_getSize(column),
28
+ memoDeps: (column) => {
29
+ var _table$atoms$columnSi;
30
+ return [table.options.columns, (_table$atoms$columnSi = table.atoms.columnSizing) === null || _table$atoms$columnSi === void 0 || (_table$atoms$columnSi = _table$atoms$columnSi.get()) === null || _table$atoms$columnSi === void 0 ? void 0 : _table$atoms$columnSi[column.id]];
31
+ }
32
+ },
23
33
  column_getStart: {
24
34
  fn: (column, position) => require_columnSizingFeature_utils.column_getStart(column, position),
25
35
  memoDeps: (column, position) => {
26
- var _column$table$atoms$c;
36
+ var _table$atoms$columnSi2, _table$atoms$columnOr, _table$atoms$columnPi, _table$atoms$columnVi;
27
37
  return [
28
38
  position,
29
- require_utils.callMemoOrStaticFn(column.table, "getPinnedVisibleLeafColumns", require_columnPinningFeature_utils.table_getPinnedVisibleLeafColumns, position),
30
- (_column$table$atoms$c = column.table.atoms.columnSizing) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.get()
39
+ table.options.columns,
40
+ (_table$atoms$columnSi2 = table.atoms.columnSizing) === null || _table$atoms$columnSi2 === void 0 ? void 0 : _table$atoms$columnSi2.get(),
41
+ (_table$atoms$columnOr = table.atoms.columnOrder) === null || _table$atoms$columnOr === void 0 ? void 0 : _table$atoms$columnOr.get(),
42
+ (_table$atoms$columnPi = table.atoms.columnPinning) === null || _table$atoms$columnPi === void 0 ? void 0 : _table$atoms$columnPi.get(),
43
+ (_table$atoms$columnVi = table.atoms.columnVisibility) === null || _table$atoms$columnVi === void 0 ? void 0 : _table$atoms$columnVi.get()
31
44
  ];
32
45
  }
33
46
  },
34
47
  column_getAfter: {
35
48
  fn: (column, position) => require_columnSizingFeature_utils.column_getAfter(column, position),
36
49
  memoDeps: (column, position) => {
37
- var _column$table$atoms$c2;
50
+ var _table$atoms$columnSi3, _table$atoms$columnOr2, _table$atoms$columnPi2, _table$atoms$columnVi2;
38
51
  return [
39
52
  position,
40
- require_utils.callMemoOrStaticFn(column.table, "getPinnedVisibleLeafColumns", require_columnPinningFeature_utils.table_getPinnedVisibleLeafColumns, position),
41
- (_column$table$atoms$c2 = column.table.atoms.columnSizing) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2.get()
53
+ table.options.columns,
54
+ (_table$atoms$columnSi3 = table.atoms.columnSizing) === null || _table$atoms$columnSi3 === void 0 ? void 0 : _table$atoms$columnSi3.get(),
55
+ (_table$atoms$columnOr2 = table.atoms.columnOrder) === null || _table$atoms$columnOr2 === void 0 ? void 0 : _table$atoms$columnOr2.get(),
56
+ (_table$atoms$columnPi2 = table.atoms.columnPinning) === null || _table$atoms$columnPi2 === void 0 ? void 0 : _table$atoms$columnPi2.get(),
57
+ (_table$atoms$columnVi2 = table.atoms.columnVisibility) === null || _table$atoms$columnVi2 === void 0 ? void 0 : _table$atoms$columnVi2.get()
42
58
  ];
43
59
  }
44
60
  },
@@ -47,8 +63,27 @@ function constructColumnSizingFeature() {
47
63
  },
48
64
  assignHeaderPrototype: (prototype, table) => {
49
65
  require_utils.assignPrototypeAPIs("columnSizingFeature", prototype, table, {
50
- header_getSize: { fn: (header) => require_columnSizingFeature_utils.header_getSize(header) },
51
- header_getStart: { fn: (header) => require_columnSizingFeature_utils.header_getStart(header) }
66
+ header_getSize: {
67
+ fn: (header) => require_columnSizingFeature_utils.header_getSize(header),
68
+ memoDeps: (header) => {
69
+ var _table$atoms$columnSi4, _table$atoms$columnSi5;
70
+ return [table.options.columns, header.column.columns.length > 0 ? (_table$atoms$columnSi4 = table.atoms.columnSizing) === null || _table$atoms$columnSi4 === void 0 ? void 0 : _table$atoms$columnSi4.get() : (_table$atoms$columnSi5 = table.atoms.columnSizing) === null || _table$atoms$columnSi5 === void 0 || (_table$atoms$columnSi5 = _table$atoms$columnSi5.get()) === null || _table$atoms$columnSi5 === void 0 ? void 0 : _table$atoms$columnSi5[header.column.id]];
71
+ }
72
+ },
73
+ header_getStart: {
74
+ fn: (header) => require_columnSizingFeature_utils.header_getStart(header),
75
+ memoDeps: (header, position) => {
76
+ var _table$atoms$columnSi6, _table$atoms$columnOr3, _table$atoms$columnPi3, _table$atoms$columnVi3;
77
+ return [
78
+ position,
79
+ table.options.columns,
80
+ (_table$atoms$columnSi6 = table.atoms.columnSizing) === null || _table$atoms$columnSi6 === void 0 ? void 0 : _table$atoms$columnSi6.get(),
81
+ (_table$atoms$columnOr3 = table.atoms.columnOrder) === null || _table$atoms$columnOr3 === void 0 ? void 0 : _table$atoms$columnOr3.get(),
82
+ (_table$atoms$columnPi3 = table.atoms.columnPinning) === null || _table$atoms$columnPi3 === void 0 ? void 0 : _table$atoms$columnPi3.get(),
83
+ (_table$atoms$columnVi3 = table.atoms.columnVisibility) === null || _table$atoms$columnVi3 === void 0 ? void 0 : _table$atoms$columnVi3.get()
84
+ ];
85
+ }
86
+ }
52
87
  });
53
88
  },
54
89
  constructTableAPIs: (table) => {
@@ -64,8 +99,11 @@ function constructColumnSizingFeature() {
64
99
  };
65
100
  }
66
101
  /**
67
- * The Column Sizing feature adds column sizing state and APIs to the table, header, and column objects.
68
- * **Note:** This does not include column resizing. The columnResizingFeature feature has been split out into its own standalone feature.
102
+ * The stock column sizing feature.
103
+ *
104
+ * Register this feature to add column width state and table, header, and column
105
+ * APIs for reading and resetting sizes. Column drag resizing lives in
106
+ * `columnResizingFeature`.
69
107
  */
70
108
  const columnSizingFeature = constructColumnSizingFeature();
71
109
 
@@ -1 +1 @@
1
- {"version":3,"file":"columnSizingFeature.cjs","names":["getDefaultColumnSizingState","getDefaultColumnSizingColumnDef","makeStateUpdater","column_getSize","column_getStart","callMemoOrStaticFn","table_getPinnedVisibleLeafColumns","column_getAfter","column_resetSize","header_getSize","header_getStart","table_setColumnSizing","table_resetColumnSizing","table_getTotalSize","table_getLeftTotalSize","table_getCenterTotalSize","table_getRightTotalSize"],"sources":["../../../src/features/column-sizing/columnSizingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getPinnedVisibleLeafColumns } from '../column-pinning/columnPinningFeature.utils'\nimport {\n column_getAfter,\n column_getSize,\n column_getStart,\n column_resetSize,\n getDefaultColumnSizingColumnDef,\n getDefaultColumnSizingState,\n header_getSize,\n header_getStart,\n table_getCenterTotalSize,\n table_getLeftTotalSize,\n table_getRightTotalSize,\n table_getTotalSize,\n table_resetColumnSizing,\n table_setColumnSizing,\n} from './columnSizingFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnSizing,\n// Column_ColumnSizing,\n// Header_ColumnSizing,\n// TableOptions_ColumnSizing,\n// TableState_ColumnSizing,\n// Table_ColumnSizing,\n// } from './columnSizingFeature.types'\n\nexport interface ColumnSizingFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // ColumnDef: ColumnDef_ColumnSizing\n // Column: Column_ColumnSizing\n // Header: Header_ColumnSizing\n // Table: Table_ColumnSizing\n // TableOptions: TableOptions_ColumnSizing\n // TableState: TableState_ColumnSizing\n}\n\nexport function constructColumnSizingFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnSizingFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnSizing: getDefaultColumnSizingState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef: () => {\n return getDefaultColumnSizingColumnDef()\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnSizingChange: makeStateUpdater('columnSizing', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnSizingFeature', prototype, table, {\n column_getSize: {\n fn: (column) => column_getSize(column),\n },\n column_getStart: {\n fn: (column, position) => column_getStart(column, position),\n memoDeps: (column, position) => [\n position,\n callMemoOrStaticFn(\n column.table,\n 'getPinnedVisibleLeafColumns',\n table_getPinnedVisibleLeafColumns,\n position,\n ),\n column.table.atoms.columnSizing?.get(),\n ],\n },\n column_getAfter: {\n fn: (column, position) => column_getAfter(column, position),\n memoDeps: (column, position) => [\n position,\n callMemoOrStaticFn(\n column.table,\n 'getPinnedVisibleLeafColumns',\n table_getPinnedVisibleLeafColumns,\n position,\n ),\n column.table.atoms.columnSizing?.get(),\n ],\n },\n column_resetSize: {\n fn: (column) => column_resetSize(column),\n },\n })\n },\n\n assignHeaderPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnSizingFeature', prototype, table, {\n header_getSize: {\n fn: (header) => header_getSize(header),\n },\n header_getStart: {\n fn: (header) => header_getStart(header),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnSizingFeature', table, {\n table_setColumnSizing: {\n fn: (updater) => table_setColumnSizing(table, updater),\n },\n table_resetColumnSizing: {\n fn: (defaultState) => table_resetColumnSizing(table, defaultState),\n },\n table_getTotalSize: {\n fn: () => table_getTotalSize(table),\n },\n table_getLeftTotalSize: {\n fn: () => table_getLeftTotalSize(table),\n },\n table_getCenterTotalSize: {\n fn: () => table_getCenterTotalSize(table),\n },\n table_getRightTotalSize: {\n fn: () => table_getRightTotalSize(table),\n },\n })\n },\n }\n}\n\n/**\n * The Column Sizing feature adds column sizing state and APIs to the table, header, and column objects.\n * **Note:** This does not include column resizing. The columnResizingFeature feature has been split out into its own standalone feature.\n */\nexport const columnSizingFeature = constructColumnSizingFeature()\n"],"mappings":";;;;;AA8CA,SAAgB,+BAGqD;AACnE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO;IACL,cAAcA,+DAA6B;IAC3C,GAAG;IACJ;;EAGH,2BAA2B;AACzB,UAAOC,mEAAiC;;EAG1C,yBAAyB,UAAU;AACjC,UAAO,EACL,sBAAsBC,+BAAiB,gBAAgB,MAAM,EAC9D;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,qCAAoB,uBAAuB,WAAW,OAAO;IAC3D,gBAAgB,EACd,KAAK,WAAWC,iDAAe,OAAO,EACvC;IACD,iBAAiB;KACf,KAAK,QAAQ,aAAaC,kDAAgB,QAAQ,SAAS;KAC3D,WAAW,QAAQ,aAAa;;;OAC9B;OACAC,iCACE,OAAO,OACP,+BACAC,sEACA,SACD;gCACD,OAAO,MAAM,MAAM,4FAAc,KAAK;OACvC;;KACF;IACD,iBAAiB;KACf,KAAK,QAAQ,aAAaC,kDAAgB,QAAQ,SAAS;KAC3D,WAAW,QAAQ,aAAa;;;OAC9B;OACAF,iCACE,OAAO,OACP,+BACAC,sEACA,SACD;iCACD,OAAO,MAAM,MAAM,8FAAc,KAAK;OACvC;;KACF;IACD,kBAAkB,EAChB,KAAK,WAAWE,mDAAiB,OAAO,EACzC;IACF,CAAC;;EAGJ,wBAAwB,WAAW,UAAU;AAC3C,qCAAoB,uBAAuB,WAAW,OAAO;IAC3D,gBAAgB,EACd,KAAK,WAAWC,iDAAe,OAAO,EACvC;IACD,iBAAiB,EACf,KAAK,WAAWC,kDAAgB,OAAO,EACxC;IACF,CAAC;;EAGJ,qBAAqB,UAAU;AAC7B,iCAAgB,uBAAuB,OAAO;IAC5C,uBAAuB,EACrB,KAAK,YAAYC,wDAAsB,OAAO,QAAQ,EACvD;IACD,yBAAyB,EACvB,KAAK,iBAAiBC,0DAAwB,OAAO,aAAa,EACnE;IACD,oBAAoB,EAClB,UAAUC,qDAAmB,MAAM,EACpC;IACD,wBAAwB,EACtB,UAAUC,yDAAuB,MAAM,EACxC;IACD,0BAA0B,EACxB,UAAUC,2DAAyB,MAAM,EAC1C;IACD,yBAAyB,EACvB,UAAUC,0DAAwB,MAAM,EACzC;IACF,CAAC;;EAEL;;;;;;AAOH,MAAa,sBAAsB,8BAA8B"}
1
+ {"version":3,"file":"columnSizingFeature.cjs","names":["getDefaultColumnSizingState","getDefaultColumnSizingColumnDef","makeStateUpdater","column_getSize","column_getStart","column_getAfter","column_resetSize","header_getSize","header_getStart","table_setColumnSizing","table_resetColumnSizing","table_getTotalSize","table_getLeftTotalSize","table_getCenterTotalSize","table_getRightTotalSize"],"sources":["../../../src/features/column-sizing/columnSizingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getAfter,\n column_getSize,\n column_getStart,\n column_resetSize,\n getDefaultColumnSizingColumnDef,\n getDefaultColumnSizingState,\n header_getSize,\n header_getStart,\n table_getCenterTotalSize,\n table_getLeftTotalSize,\n table_getRightTotalSize,\n table_getTotalSize,\n table_resetColumnSizing,\n table_setColumnSizing,\n} from './columnSizingFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnSizing,\n// Column_ColumnSizing,\n// Header_ColumnSizing,\n// TableOptions_ColumnSizing,\n// TableState_ColumnSizing,\n// Table_ColumnSizing,\n// } from './columnSizingFeature.types'\n\nexport interface ColumnSizingFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // ColumnDef: ColumnDef_ColumnSizing\n // Column: Column_ColumnSizing\n // Header: Header_ColumnSizing\n // Table: Table_ColumnSizing\n // TableOptions: TableOptions_ColumnSizing\n // TableState: TableState_ColumnSizing\n}\n\n/**\n * Creates the stock column sizing 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 constructColumnSizingFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnSizingFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnSizing: getDefaultColumnSizingState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef: () => {\n return getDefaultColumnSizingColumnDef()\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnSizingChange: makeStateUpdater('columnSizing', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnSizingFeature', prototype, table, {\n column_getSize: {\n fn: (column) => column_getSize(column),\n memoDeps: (column) => [\n table.options.columns,\n table.atoms.columnSizing?.get()?.[column.id], // just this column's size state\n ],\n },\n column_getStart: {\n fn: (column, position) => column_getStart(column, position),\n memoDeps: (column, position) => [\n position,\n table.options.columns,\n table.atoms.columnSizing?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n ],\n },\n column_getAfter: {\n fn: (column, position) => column_getAfter(column, position),\n memoDeps: (column, position) => [\n position,\n table.options.columns,\n table.atoms.columnSizing?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n ],\n },\n column_resetSize: {\n fn: (column) => column_resetSize(column),\n },\n })\n },\n\n assignHeaderPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnSizingFeature', prototype, table, {\n header_getSize: {\n fn: (header) => header_getSize(header),\n memoDeps: (header) => [\n table.options.columns,\n header.column.columns.length > 0\n ? table.atoms.columnSizing?.get() // must be all columns (sum child columns)\n : table.atoms.columnSizing?.get()?.[header.column.id], // can just check it's associated column size state\n ],\n },\n header_getStart: {\n fn: (header) => header_getStart(header),\n memoDeps: (header, position) => [\n position,\n table.options.columns,\n table.atoms.columnSizing?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnSizingFeature', table, {\n table_setColumnSizing: {\n fn: (updater) => table_setColumnSizing(table, updater),\n },\n table_resetColumnSizing: {\n fn: (defaultState) => table_resetColumnSizing(table, defaultState),\n },\n table_getTotalSize: {\n fn: () => table_getTotalSize(table),\n },\n table_getLeftTotalSize: {\n fn: () => table_getLeftTotalSize(table),\n },\n table_getCenterTotalSize: {\n fn: () => table_getCenterTotalSize(table),\n },\n table_getRightTotalSize: {\n fn: () => table_getRightTotalSize(table),\n },\n })\n },\n }\n}\n\n/**\n * The stock column sizing feature.\n *\n * Register this feature to add column width state and table, header, and column\n * APIs for reading and resetting sizes. Column drag resizing lives in\n * `columnResizingFeature`.\n */\nexport const columnSizingFeature = constructColumnSizingFeature()\n"],"mappings":";;;;;;;;;AAiDA,SAAgB,+BAGqD;CACnE,OAAO;EACL,kBAAkB,iBAAiB;GACjC,OAAO;IACL,cAAcA,+DAA6B;IAC3C,GAAG;IACJ;;EAGH,2BAA2B;GACzB,OAAOC,mEAAiC;;EAG1C,yBAAyB,UAAU;GACjC,OAAO,EACL,sBAAsBC,+BAAiB,gBAAgB,MAAM,EAC9D;;EAGH,wBAAwB,WAAW,UAAU;GAC3C,kCAAoB,uBAAuB,WAAW,OAAO;IAC3D,gBAAgB;KACd,KAAK,WAAWC,iDAAe,OAAO;KACtC,WAAW,WAAW;;cACpB,MAAM,QAAQ,kCACd,MAAM,MAAM,6GAAc,KAAK,gFAAG,OAAO,IAC1C;;KACF;IACD,iBAAiB;KACf,KAAK,QAAQ,aAAaC,kDAAgB,QAAQ,SAAS;KAC3D,WAAW,QAAQ,aAAa;;;OAC9B;OACA,MAAM,QAAQ;iCACd,MAAM,MAAM,8FAAc,KAAK;gCAC/B,MAAM,MAAM,2FAAa,KAAK;gCAC9B,MAAM,MAAM,6FAAe,KAAK;gCAChC,MAAM,MAAM,gGAAkB,KAAK;OACpC;;KACF;IACD,iBAAiB;KACf,KAAK,QAAQ,aAAaC,kDAAgB,QAAQ,SAAS;KAC3D,WAAW,QAAQ,aAAa;;;OAC9B;OACA,MAAM,QAAQ;iCACd,MAAM,MAAM,8FAAc,KAAK;iCAC/B,MAAM,MAAM,6FAAa,KAAK;iCAC9B,MAAM,MAAM,+FAAe,KAAK;iCAChC,MAAM,MAAM,kGAAkB,KAAK;OACpC;;KACF;IACD,kBAAkB,EAChB,KAAK,WAAWC,mDAAiB,OAAO,EACzC;IACF,CAAC;;EAGJ,wBAAwB,WAAW,UAAU;GAC3C,kCAAoB,uBAAuB,WAAW,OAAO;IAC3D,gBAAgB;KACd,KAAK,WAAWC,iDAAe,OAAO;KACtC,WAAW,WAAW;;cACpB,MAAM,QAAQ,SACd,OAAO,OAAO,QAAQ,SAAS,8BAC3B,MAAM,MAAM,8FAAc,KAAK,6BAC/B,MAAM,MAAM,gHAAc,KAAK,kFAAG,OAAO,OAAO,IACrD;;KACF;IACD,iBAAiB;KACf,KAAK,WAAWC,kDAAgB,OAAO;KACvC,WAAW,QAAQ,aAAa;;;OAC9B;OACA,MAAM,QAAQ;iCACd,MAAM,MAAM,8FAAc,KAAK;iCAC/B,MAAM,MAAM,6FAAa,KAAK;iCAC9B,MAAM,MAAM,+FAAe,KAAK;iCAChC,MAAM,MAAM,kGAAkB,KAAK;OACpC;;KACF;IACF,CAAC;;EAGJ,qBAAqB,UAAU;GAC7B,8BAAgB,uBAAuB,OAAO;IAC5C,uBAAuB,EACrB,KAAK,YAAYC,wDAAsB,OAAO,QAAQ,EACvD;IACD,yBAAyB,EACvB,KAAK,iBAAiBC,0DAAwB,OAAO,aAAa,EACnE;IACD,oBAAoB,EAClB,UAAUC,qDAAmB,MAAM,EACpC;IACD,wBAAwB,EACtB,UAAUC,yDAAuB,MAAM,EACxC;IACD,0BAA0B,EACxB,UAAUC,2DAAyB,MAAM,EAC1C;IACD,yBAAyB,EACvB,UAAUC,0DAAwB,MAAM,EACzC;IACF,CAAC;;EAEL;;;;;;;;;AAUH,MAAa,sBAAsB,8BAA8B"}
@@ -3,10 +3,18 @@ import { TableFeature, TableFeatures } from "../../types/TableFeatures.cjs";
3
3
 
4
4
  //#region src/features/column-sizing/columnSizingFeature.d.ts
5
5
  interface ColumnSizingFeatureConstructors<TFeatures extends TableFeatures, TData extends RowData> {}
6
+ /**
7
+ * Creates the stock column sizing feature.
8
+ *
9
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
10
+ */
6
11
  declare function constructColumnSizingFeature<TFeatures extends TableFeatures, TData extends RowData>(): TableFeature<ColumnSizingFeatureConstructors<TFeatures, TData>>;
7
12
  /**
8
- * The Column Sizing feature adds column sizing state and APIs to the table, header, and column objects.
9
- * **Note:** This does not include column resizing. The columnResizingFeature feature has been split out into its own standalone feature.
13
+ * The stock column sizing feature.
14
+ *
15
+ * Register this feature to add column width state and table, header, and column
16
+ * APIs for reading and resetting sizes. Column drag resizing lives in
17
+ * `columnResizingFeature`.
10
18
  */
11
19
  declare const columnSizingFeature: TableFeature<ColumnSizingFeatureConstructors<TableFeatures, RowData>>;
12
20
  //#endregion
@@ -3,10 +3,18 @@ import { TableFeature, TableFeatures } from "../../types/TableFeatures.js";
3
3
 
4
4
  //#region src/features/column-sizing/columnSizingFeature.d.ts
5
5
  interface ColumnSizingFeatureConstructors<TFeatures extends TableFeatures, TData extends RowData> {}
6
+ /**
7
+ * Creates the stock column sizing feature.
8
+ *
9
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
10
+ */
6
11
  declare function constructColumnSizingFeature<TFeatures extends TableFeatures, TData extends RowData>(): TableFeature<ColumnSizingFeatureConstructors<TFeatures, TData>>;
7
12
  /**
8
- * The Column Sizing feature adds column sizing state and APIs to the table, header, and column objects.
9
- * **Note:** This does not include column resizing. The columnResizingFeature feature has been split out into its own standalone feature.
13
+ * The stock column sizing feature.
14
+ *
15
+ * Register this feature to add column width state and table, header, and column
16
+ * APIs for reading and resetting sizes. Column drag resizing lives in
17
+ * `columnResizingFeature`.
10
18
  */
11
19
  declare const columnSizingFeature: TableFeature<ColumnSizingFeatureConstructors<TableFeatures, RowData>>;
12
20
  //#endregion
@@ -1,8 +1,12 @@
1
- import { assignPrototypeAPIs, assignTableAPIs, callMemoOrStaticFn, makeStateUpdater } from "../../utils.js";
2
- import { table_getPinnedVisibleLeafColumns } from "../column-pinning/columnPinningFeature.utils.js";
1
+ import { assignPrototypeAPIs, assignTableAPIs, makeStateUpdater } from "../../utils.js";
3
2
  import { column_getAfter, column_getSize, column_getStart, column_resetSize, getDefaultColumnSizingColumnDef, getDefaultColumnSizingState, header_getSize, header_getStart, table_getCenterTotalSize, table_getLeftTotalSize, table_getRightTotalSize, table_getTotalSize, table_resetColumnSizing, table_setColumnSizing } from "./columnSizingFeature.utils.js";
4
3
 
5
4
  //#region src/features/column-sizing/columnSizingFeature.ts
5
+ /**
6
+ * Creates the stock column sizing feature.
7
+ *
8
+ * The returned feature registers its state defaults, option defaults, and instance APIs so it can be included in a `tableFeatures({ ... })` call.
9
+ */
6
10
  function constructColumnSizingFeature() {
7
11
  return {
8
12
  getInitialState: (initialState) => {
@@ -19,26 +23,38 @@ function constructColumnSizingFeature() {
19
23
  },
20
24
  assignColumnPrototype: (prototype, table) => {
21
25
  assignPrototypeAPIs("columnSizingFeature", prototype, table, {
22
- column_getSize: { fn: (column) => column_getSize(column) },
26
+ column_getSize: {
27
+ fn: (column) => column_getSize(column),
28
+ memoDeps: (column) => {
29
+ var _table$atoms$columnSi;
30
+ return [table.options.columns, (_table$atoms$columnSi = table.atoms.columnSizing) === null || _table$atoms$columnSi === void 0 || (_table$atoms$columnSi = _table$atoms$columnSi.get()) === null || _table$atoms$columnSi === void 0 ? void 0 : _table$atoms$columnSi[column.id]];
31
+ }
32
+ },
23
33
  column_getStart: {
24
34
  fn: (column, position) => column_getStart(column, position),
25
35
  memoDeps: (column, position) => {
26
- var _column$table$atoms$c;
36
+ var _table$atoms$columnSi2, _table$atoms$columnOr, _table$atoms$columnPi, _table$atoms$columnVi;
27
37
  return [
28
38
  position,
29
- callMemoOrStaticFn(column.table, "getPinnedVisibleLeafColumns", table_getPinnedVisibleLeafColumns, position),
30
- (_column$table$atoms$c = column.table.atoms.columnSizing) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.get()
39
+ table.options.columns,
40
+ (_table$atoms$columnSi2 = table.atoms.columnSizing) === null || _table$atoms$columnSi2 === void 0 ? void 0 : _table$atoms$columnSi2.get(),
41
+ (_table$atoms$columnOr = table.atoms.columnOrder) === null || _table$atoms$columnOr === void 0 ? void 0 : _table$atoms$columnOr.get(),
42
+ (_table$atoms$columnPi = table.atoms.columnPinning) === null || _table$atoms$columnPi === void 0 ? void 0 : _table$atoms$columnPi.get(),
43
+ (_table$atoms$columnVi = table.atoms.columnVisibility) === null || _table$atoms$columnVi === void 0 ? void 0 : _table$atoms$columnVi.get()
31
44
  ];
32
45
  }
33
46
  },
34
47
  column_getAfter: {
35
48
  fn: (column, position) => column_getAfter(column, position),
36
49
  memoDeps: (column, position) => {
37
- var _column$table$atoms$c2;
50
+ var _table$atoms$columnSi3, _table$atoms$columnOr2, _table$atoms$columnPi2, _table$atoms$columnVi2;
38
51
  return [
39
52
  position,
40
- callMemoOrStaticFn(column.table, "getPinnedVisibleLeafColumns", table_getPinnedVisibleLeafColumns, position),
41
- (_column$table$atoms$c2 = column.table.atoms.columnSizing) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2.get()
53
+ table.options.columns,
54
+ (_table$atoms$columnSi3 = table.atoms.columnSizing) === null || _table$atoms$columnSi3 === void 0 ? void 0 : _table$atoms$columnSi3.get(),
55
+ (_table$atoms$columnOr2 = table.atoms.columnOrder) === null || _table$atoms$columnOr2 === void 0 ? void 0 : _table$atoms$columnOr2.get(),
56
+ (_table$atoms$columnPi2 = table.atoms.columnPinning) === null || _table$atoms$columnPi2 === void 0 ? void 0 : _table$atoms$columnPi2.get(),
57
+ (_table$atoms$columnVi2 = table.atoms.columnVisibility) === null || _table$atoms$columnVi2 === void 0 ? void 0 : _table$atoms$columnVi2.get()
42
58
  ];
43
59
  }
44
60
  },
@@ -47,8 +63,27 @@ function constructColumnSizingFeature() {
47
63
  },
48
64
  assignHeaderPrototype: (prototype, table) => {
49
65
  assignPrototypeAPIs("columnSizingFeature", prototype, table, {
50
- header_getSize: { fn: (header) => header_getSize(header) },
51
- header_getStart: { fn: (header) => header_getStart(header) }
66
+ header_getSize: {
67
+ fn: (header) => header_getSize(header),
68
+ memoDeps: (header) => {
69
+ var _table$atoms$columnSi4, _table$atoms$columnSi5;
70
+ return [table.options.columns, header.column.columns.length > 0 ? (_table$atoms$columnSi4 = table.atoms.columnSizing) === null || _table$atoms$columnSi4 === void 0 ? void 0 : _table$atoms$columnSi4.get() : (_table$atoms$columnSi5 = table.atoms.columnSizing) === null || _table$atoms$columnSi5 === void 0 || (_table$atoms$columnSi5 = _table$atoms$columnSi5.get()) === null || _table$atoms$columnSi5 === void 0 ? void 0 : _table$atoms$columnSi5[header.column.id]];
71
+ }
72
+ },
73
+ header_getStart: {
74
+ fn: (header) => header_getStart(header),
75
+ memoDeps: (header, position) => {
76
+ var _table$atoms$columnSi6, _table$atoms$columnOr3, _table$atoms$columnPi3, _table$atoms$columnVi3;
77
+ return [
78
+ position,
79
+ table.options.columns,
80
+ (_table$atoms$columnSi6 = table.atoms.columnSizing) === null || _table$atoms$columnSi6 === void 0 ? void 0 : _table$atoms$columnSi6.get(),
81
+ (_table$atoms$columnOr3 = table.atoms.columnOrder) === null || _table$atoms$columnOr3 === void 0 ? void 0 : _table$atoms$columnOr3.get(),
82
+ (_table$atoms$columnPi3 = table.atoms.columnPinning) === null || _table$atoms$columnPi3 === void 0 ? void 0 : _table$atoms$columnPi3.get(),
83
+ (_table$atoms$columnVi3 = table.atoms.columnVisibility) === null || _table$atoms$columnVi3 === void 0 ? void 0 : _table$atoms$columnVi3.get()
84
+ ];
85
+ }
86
+ }
52
87
  });
53
88
  },
54
89
  constructTableAPIs: (table) => {
@@ -64,8 +99,11 @@ function constructColumnSizingFeature() {
64
99
  };
65
100
  }
66
101
  /**
67
- * The Column Sizing feature adds column sizing state and APIs to the table, header, and column objects.
68
- * **Note:** This does not include column resizing. The columnResizingFeature feature has been split out into its own standalone feature.
102
+ * The stock column sizing feature.
103
+ *
104
+ * Register this feature to add column width state and table, header, and column
105
+ * APIs for reading and resetting sizes. Column drag resizing lives in
106
+ * `columnResizingFeature`.
69
107
  */
70
108
  const columnSizingFeature = constructColumnSizingFeature();
71
109
 
@@ -1 +1 @@
1
- {"version":3,"file":"columnSizingFeature.js","names":[],"sources":["../../../src/features/column-sizing/columnSizingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getPinnedVisibleLeafColumns } from '../column-pinning/columnPinningFeature.utils'\nimport {\n column_getAfter,\n column_getSize,\n column_getStart,\n column_resetSize,\n getDefaultColumnSizingColumnDef,\n getDefaultColumnSizingState,\n header_getSize,\n header_getStart,\n table_getCenterTotalSize,\n table_getLeftTotalSize,\n table_getRightTotalSize,\n table_getTotalSize,\n table_resetColumnSizing,\n table_setColumnSizing,\n} from './columnSizingFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnSizing,\n// Column_ColumnSizing,\n// Header_ColumnSizing,\n// TableOptions_ColumnSizing,\n// TableState_ColumnSizing,\n// Table_ColumnSizing,\n// } from './columnSizingFeature.types'\n\nexport interface ColumnSizingFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // ColumnDef: ColumnDef_ColumnSizing\n // Column: Column_ColumnSizing\n // Header: Header_ColumnSizing\n // Table: Table_ColumnSizing\n // TableOptions: TableOptions_ColumnSizing\n // TableState: TableState_ColumnSizing\n}\n\nexport function constructColumnSizingFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnSizingFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnSizing: getDefaultColumnSizingState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef: () => {\n return getDefaultColumnSizingColumnDef()\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnSizingChange: makeStateUpdater('columnSizing', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnSizingFeature', prototype, table, {\n column_getSize: {\n fn: (column) => column_getSize(column),\n },\n column_getStart: {\n fn: (column, position) => column_getStart(column, position),\n memoDeps: (column, position) => [\n position,\n callMemoOrStaticFn(\n column.table,\n 'getPinnedVisibleLeafColumns',\n table_getPinnedVisibleLeafColumns,\n position,\n ),\n column.table.atoms.columnSizing?.get(),\n ],\n },\n column_getAfter: {\n fn: (column, position) => column_getAfter(column, position),\n memoDeps: (column, position) => [\n position,\n callMemoOrStaticFn(\n column.table,\n 'getPinnedVisibleLeafColumns',\n table_getPinnedVisibleLeafColumns,\n position,\n ),\n column.table.atoms.columnSizing?.get(),\n ],\n },\n column_resetSize: {\n fn: (column) => column_resetSize(column),\n },\n })\n },\n\n assignHeaderPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnSizingFeature', prototype, table, {\n header_getSize: {\n fn: (header) => header_getSize(header),\n },\n header_getStart: {\n fn: (header) => header_getStart(header),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnSizingFeature', table, {\n table_setColumnSizing: {\n fn: (updater) => table_setColumnSizing(table, updater),\n },\n table_resetColumnSizing: {\n fn: (defaultState) => table_resetColumnSizing(table, defaultState),\n },\n table_getTotalSize: {\n fn: () => table_getTotalSize(table),\n },\n table_getLeftTotalSize: {\n fn: () => table_getLeftTotalSize(table),\n },\n table_getCenterTotalSize: {\n fn: () => table_getCenterTotalSize(table),\n },\n table_getRightTotalSize: {\n fn: () => table_getRightTotalSize(table),\n },\n })\n },\n }\n}\n\n/**\n * The Column Sizing feature adds column sizing state and APIs to the table, header, and column objects.\n * **Note:** This does not include column resizing. The columnResizingFeature feature has been split out into its own standalone feature.\n */\nexport const columnSizingFeature = constructColumnSizingFeature()\n"],"mappings":";;;;;AA8CA,SAAgB,+BAGqD;AACnE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO;IACL,cAAc,6BAA6B;IAC3C,GAAG;IACJ;;EAGH,2BAA2B;AACzB,UAAO,iCAAiC;;EAG1C,yBAAyB,UAAU;AACjC,UAAO,EACL,sBAAsB,iBAAiB,gBAAgB,MAAM,EAC9D;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,uBAAoB,uBAAuB,WAAW,OAAO;IAC3D,gBAAgB,EACd,KAAK,WAAW,eAAe,OAAO,EACvC;IACD,iBAAiB;KACf,KAAK,QAAQ,aAAa,gBAAgB,QAAQ,SAAS;KAC3D,WAAW,QAAQ,aAAa;;;OAC9B;OACA,mBACE,OAAO,OACP,+BACA,mCACA,SACD;gCACD,OAAO,MAAM,MAAM,4FAAc,KAAK;OACvC;;KACF;IACD,iBAAiB;KACf,KAAK,QAAQ,aAAa,gBAAgB,QAAQ,SAAS;KAC3D,WAAW,QAAQ,aAAa;;;OAC9B;OACA,mBACE,OAAO,OACP,+BACA,mCACA,SACD;iCACD,OAAO,MAAM,MAAM,8FAAc,KAAK;OACvC;;KACF;IACD,kBAAkB,EAChB,KAAK,WAAW,iBAAiB,OAAO,EACzC;IACF,CAAC;;EAGJ,wBAAwB,WAAW,UAAU;AAC3C,uBAAoB,uBAAuB,WAAW,OAAO;IAC3D,gBAAgB,EACd,KAAK,WAAW,eAAe,OAAO,EACvC;IACD,iBAAiB,EACf,KAAK,WAAW,gBAAgB,OAAO,EACxC;IACF,CAAC;;EAGJ,qBAAqB,UAAU;AAC7B,mBAAgB,uBAAuB,OAAO;IAC5C,uBAAuB,EACrB,KAAK,YAAY,sBAAsB,OAAO,QAAQ,EACvD;IACD,yBAAyB,EACvB,KAAK,iBAAiB,wBAAwB,OAAO,aAAa,EACnE;IACD,oBAAoB,EAClB,UAAU,mBAAmB,MAAM,EACpC;IACD,wBAAwB,EACtB,UAAU,uBAAuB,MAAM,EACxC;IACD,0BAA0B,EACxB,UAAU,yBAAyB,MAAM,EAC1C;IACD,yBAAyB,EACvB,UAAU,wBAAwB,MAAM,EACzC;IACF,CAAC;;EAEL;;;;;;AAOH,MAAa,sBAAsB,8BAA8B"}
1
+ {"version":3,"file":"columnSizingFeature.js","names":[],"sources":["../../../src/features/column-sizing/columnSizingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getAfter,\n column_getSize,\n column_getStart,\n column_resetSize,\n getDefaultColumnSizingColumnDef,\n getDefaultColumnSizingState,\n header_getSize,\n header_getStart,\n table_getCenterTotalSize,\n table_getLeftTotalSize,\n table_getRightTotalSize,\n table_getTotalSize,\n table_resetColumnSizing,\n table_setColumnSizing,\n} from './columnSizingFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnSizing,\n// Column_ColumnSizing,\n// Header_ColumnSizing,\n// TableOptions_ColumnSizing,\n// TableState_ColumnSizing,\n// Table_ColumnSizing,\n// } from './columnSizingFeature.types'\n\nexport interface ColumnSizingFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // ColumnDef: ColumnDef_ColumnSizing\n // Column: Column_ColumnSizing\n // Header: Header_ColumnSizing\n // Table: Table_ColumnSizing\n // TableOptions: TableOptions_ColumnSizing\n // TableState: TableState_ColumnSizing\n}\n\n/**\n * Creates the stock column sizing 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 constructColumnSizingFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnSizingFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnSizing: getDefaultColumnSizingState(),\n ...initialState,\n }\n },\n\n getDefaultColumnDef: () => {\n return getDefaultColumnSizingColumnDef()\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnSizingChange: makeStateUpdater('columnSizing', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnSizingFeature', prototype, table, {\n column_getSize: {\n fn: (column) => column_getSize(column),\n memoDeps: (column) => [\n table.options.columns,\n table.atoms.columnSizing?.get()?.[column.id], // just this column's size state\n ],\n },\n column_getStart: {\n fn: (column, position) => column_getStart(column, position),\n memoDeps: (column, position) => [\n position,\n table.options.columns,\n table.atoms.columnSizing?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n ],\n },\n column_getAfter: {\n fn: (column, position) => column_getAfter(column, position),\n memoDeps: (column, position) => [\n position,\n table.options.columns,\n table.atoms.columnSizing?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n ],\n },\n column_resetSize: {\n fn: (column) => column_resetSize(column),\n },\n })\n },\n\n assignHeaderPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnSizingFeature', prototype, table, {\n header_getSize: {\n fn: (header) => header_getSize(header),\n memoDeps: (header) => [\n table.options.columns,\n header.column.columns.length > 0\n ? table.atoms.columnSizing?.get() // must be all columns (sum child columns)\n : table.atoms.columnSizing?.get()?.[header.column.id], // can just check it's associated column size state\n ],\n },\n header_getStart: {\n fn: (header) => header_getStart(header),\n memoDeps: (header, position) => [\n position,\n table.options.columns,\n table.atoms.columnSizing?.get(),\n table.atoms.columnOrder?.get(),\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnSizingFeature', table, {\n table_setColumnSizing: {\n fn: (updater) => table_setColumnSizing(table, updater),\n },\n table_resetColumnSizing: {\n fn: (defaultState) => table_resetColumnSizing(table, defaultState),\n },\n table_getTotalSize: {\n fn: () => table_getTotalSize(table),\n },\n table_getLeftTotalSize: {\n fn: () => table_getLeftTotalSize(table),\n },\n table_getCenterTotalSize: {\n fn: () => table_getCenterTotalSize(table),\n },\n table_getRightTotalSize: {\n fn: () => table_getRightTotalSize(table),\n },\n })\n },\n }\n}\n\n/**\n * The stock column sizing feature.\n *\n * Register this feature to add column width state and table, header, and column\n * APIs for reading and resetting sizes. Column drag resizing lives in\n * `columnResizingFeature`.\n */\nexport const columnSizingFeature = constructColumnSizingFeature()\n"],"mappings":";;;;;;;;;AAiDA,SAAgB,+BAGqD;CACnE,OAAO;EACL,kBAAkB,iBAAiB;GACjC,OAAO;IACL,cAAc,6BAA6B;IAC3C,GAAG;IACJ;;EAGH,2BAA2B;GACzB,OAAO,iCAAiC;;EAG1C,yBAAyB,UAAU;GACjC,OAAO,EACL,sBAAsB,iBAAiB,gBAAgB,MAAM,EAC9D;;EAGH,wBAAwB,WAAW,UAAU;GAC3C,oBAAoB,uBAAuB,WAAW,OAAO;IAC3D,gBAAgB;KACd,KAAK,WAAW,eAAe,OAAO;KACtC,WAAW,WAAW;;cACpB,MAAM,QAAQ,kCACd,MAAM,MAAM,6GAAc,KAAK,gFAAG,OAAO,IAC1C;;KACF;IACD,iBAAiB;KACf,KAAK,QAAQ,aAAa,gBAAgB,QAAQ,SAAS;KAC3D,WAAW,QAAQ,aAAa;;;OAC9B;OACA,MAAM,QAAQ;iCACd,MAAM,MAAM,8FAAc,KAAK;gCAC/B,MAAM,MAAM,2FAAa,KAAK;gCAC9B,MAAM,MAAM,6FAAe,KAAK;gCAChC,MAAM,MAAM,gGAAkB,KAAK;OACpC;;KACF;IACD,iBAAiB;KACf,KAAK,QAAQ,aAAa,gBAAgB,QAAQ,SAAS;KAC3D,WAAW,QAAQ,aAAa;;;OAC9B;OACA,MAAM,QAAQ;iCACd,MAAM,MAAM,8FAAc,KAAK;iCAC/B,MAAM,MAAM,6FAAa,KAAK;iCAC9B,MAAM,MAAM,+FAAe,KAAK;iCAChC,MAAM,MAAM,kGAAkB,KAAK;OACpC;;KACF;IACD,kBAAkB,EAChB,KAAK,WAAW,iBAAiB,OAAO,EACzC;IACF,CAAC;;EAGJ,wBAAwB,WAAW,UAAU;GAC3C,oBAAoB,uBAAuB,WAAW,OAAO;IAC3D,gBAAgB;KACd,KAAK,WAAW,eAAe,OAAO;KACtC,WAAW,WAAW;;cACpB,MAAM,QAAQ,SACd,OAAO,OAAO,QAAQ,SAAS,8BAC3B,MAAM,MAAM,8FAAc,KAAK,6BAC/B,MAAM,MAAM,gHAAc,KAAK,kFAAG,OAAO,OAAO,IACrD;;KACF;IACD,iBAAiB;KACf,KAAK,WAAW,gBAAgB,OAAO;KACvC,WAAW,QAAQ,aAAa;;;OAC9B;OACA,MAAM,QAAQ;iCACd,MAAM,MAAM,8FAAc,KAAK;iCAC/B,MAAM,MAAM,6FAAa,KAAK;iCAC9B,MAAM,MAAM,+FAAe,KAAK;iCAChC,MAAM,MAAM,kGAAkB,KAAK;OACpC;;KACF;IACF,CAAC;;EAGJ,qBAAqB,UAAU;GAC7B,gBAAgB,uBAAuB,OAAO;IAC5C,uBAAuB,EACrB,KAAK,YAAY,sBAAsB,OAAO,QAAQ,EACvD;IACD,yBAAyB,EACvB,KAAK,iBAAiB,wBAAwB,OAAO,aAAa,EACnE;IACD,oBAAoB,EAClB,UAAU,mBAAmB,MAAM,EACpC;IACD,wBAAwB,EACtB,UAAU,uBAAuB,MAAM,EACxC;IACD,0BAA0B,EACxB,UAAU,yBAAyB,MAAM,EAC1C;IACD,yBAAyB,EACvB,UAAU,wBAAwB,MAAM,EACzC;IACF,CAAC;;EAEL;;;;;;;;;AAUH,MAAa,sBAAsB,8BAA8B"}
@@ -8,7 +8,9 @@ interface TableState_ColumnSizing {
8
8
  type ColumnSizingState = Record<string, number>;
9
9
  interface TableOptions_ColumnSizing {
10
10
  /**
11
- * If provided, this function will be called with an `updaterFn` when `state.columnSizing` changes. This overrides the default internal state management, so you will also need to supply `state.columnSizing` from your own managed state.
11
+ * Called with an updater when committed column sizing state changes. Pair
12
+ * this with `state.columnSizing` when using external state; external atoms
13
+ * can own the slice without this callback.
12
14
  */
13
15
  onColumnSizingChange?: OnChangeFn<ColumnSizingState>;
14
16
  }
@@ -31,11 +33,12 @@ interface Table_ColumnSizing {
31
33
  */
32
34
  getTotalSize: () => number;
33
35
  /**
34
- * Resets column sizing to its initial state. If `defaultState` is `true`, the default state for the table will be used instead of the initialValue provided to the table.
36
+ * Resets column sizing to `initialState.columnSizing`. Pass `true` to reset
37
+ * to the feature default of `{}`.
35
38
  */
36
39
  resetColumnSizing: (defaultState?: boolean) => void;
37
40
  /**
38
- * Sets the column sizing state using an updater function or a value. This will trigger the underlying `onColumnSizingChange` function if one is passed to the table options, otherwise the state will be managed automatically by the table.
41
+ * Sets committed column sizing state using a value or updater.
39
42
  */
40
43
  setColumnSizing: (updater: Updater<ColumnSizingState>) => void;
41
44
  }
@@ -8,7 +8,9 @@ interface TableState_ColumnSizing {
8
8
  type ColumnSizingState = Record<string, number>;
9
9
  interface TableOptions_ColumnSizing {
10
10
  /**
11
- * If provided, this function will be called with an `updaterFn` when `state.columnSizing` changes. This overrides the default internal state management, so you will also need to supply `state.columnSizing` from your own managed state.
11
+ * Called with an updater when committed column sizing state changes. Pair
12
+ * this with `state.columnSizing` when using external state; external atoms
13
+ * can own the slice without this callback.
12
14
  */
13
15
  onColumnSizingChange?: OnChangeFn<ColumnSizingState>;
14
16
  }
@@ -31,11 +33,12 @@ interface Table_ColumnSizing {
31
33
  */
32
34
  getTotalSize: () => number;
33
35
  /**
34
- * Resets column sizing to its initial state. If `defaultState` is `true`, the default state for the table will be used instead of the initialValue provided to the table.
36
+ * Resets column sizing to `initialState.columnSizing`. Pass `true` to reset
37
+ * to the feature default of `{}`.
35
38
  */
36
39
  resetColumnSizing: (defaultState?: boolean) => void;
37
40
  /**
38
- * Sets the column sizing state using an updater function or a value. This will trigger the underlying `onColumnSizingChange` function if one is passed to the table options, otherwise the state will be managed automatically by the table.
41
+ * Sets committed column sizing state using a value or updater.
39
42
  */
40
43
  setColumnSizing: (updater: Updater<ColumnSizingState>) => void;
41
44
  }