@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
@@ -1,8 +1,14 @@
1
1
  import { cloneState } from "../../utils.js";
2
+ import { table_syncExternalStateToBaseAtoms } from "./coreTablesFeature.utils.js";
2
3
  import { coreFeatures } from "../coreFeatures.js";
3
4
  import { atomToStore } from "../reactivity/coreReactivityFeature.utils.js";
4
5
 
5
6
  //#region src/core/table/constructTable.ts
7
+ /**
8
+ * Builds the initial table state from registered features and user initial state.
9
+ *
10
+ * Each feature contributes its default state before user-provided `initialState` values are merged in.
11
+ */
6
12
  function getInitialTableState(features, initialState = {}) {
7
13
  Object.values(features).forEach((feature) => {
8
14
  var _feature$getInitialSt;
@@ -10,6 +16,11 @@ function getInitialTableState(features, initialState = {}) {
10
16
  });
11
17
  return cloneState(initialState);
12
18
  }
19
+ /**
20
+ * Constructs a table instance from normalized table internals.
21
+ *
22
+ * This wires core properties, feature prototype APIs, and instance data used by table rendering and row-model operations.
23
+ */
13
24
  function constructTable(tableOptions) {
14
25
  const _reactivity = tableOptions._features.coreReativityFeature;
15
26
  const table = {
@@ -20,38 +31,42 @@ function constructTable(tableOptions) {
20
31
  },
21
32
  _rowModels: {},
22
33
  _rowModelFns: {},
23
- get options() {
24
- return this.optionsStore.get();
25
- },
26
- set options(value) {
27
- this.optionsStore.set(() => value);
28
- },
29
34
  baseAtoms: {},
30
35
  atoms: {}
31
36
  };
32
37
  const featuresList = Object.values(table._features);
33
- const defaultOptions = featuresList.reduce((obj, feature) => {
34
- var _feature$getDefaultTa;
35
- return Object.assign(obj, (_feature$getDefaultTa = feature.getDefaultTableOptions) === null || _feature$getDefaultTa === void 0 ? void 0 : _feature$getDefaultTa.call(feature, table));
36
- }, {});
37
- table.optionsStore = _reactivity.createWritableAtom({
38
- ...defaultOptions,
38
+ const mergedOptions = {
39
+ ...featuresList.reduce((obj, feature) => {
40
+ var _feature$getDefaultTa;
41
+ return Object.assign(obj, (_feature$getDefaultTa = feature.getDefaultTableOptions) === null || _feature$getDefaultTa === void 0 ? void 0 : _feature$getDefaultTa.call(feature, table));
42
+ }, {}),
39
43
  ...tableOptions
40
- }, { debugName: "table/optionsStore" });
44
+ };
45
+ if (_reactivity.createOptionsStore) {
46
+ table.optionsStore = _reactivity.createWritableAtom(mergedOptions, { debugName: "table/optionsStore" });
47
+ Object.defineProperty(table, "options", {
48
+ configurable: true,
49
+ enumerable: true,
50
+ get() {
51
+ return table.optionsStore.get();
52
+ },
53
+ set(value) {
54
+ table.optionsStore.set(() => value);
55
+ }
56
+ });
57
+ } else table.options = mergedOptions;
41
58
  table.initialState = getInitialTableState(table._features, table.options.initialState);
42
59
  const stateKeys = Object.keys(table.initialState);
43
60
  for (const key of stateKeys) {
44
61
  table.baseAtoms[key] = _reactivity.createWritableAtom(table.initialState[key], { debugName: `table/baseAtoms/${key}` });
45
62
  table.atoms[key] = _reactivity.createReadonlyAtom(() => {
46
- var _opts$atoms;
47
- const opts = table.optionsStore.get();
48
- const state = opts.state;
49
- if (key in (state ?? {})) return state[key];
50
- const externalAtom = (_opts$atoms = opts.atoms) === null || _opts$atoms === void 0 ? void 0 : _opts$atoms[key];
63
+ var _table$options$atoms;
64
+ const externalAtom = (_table$options$atoms = table.options.atoms) === null || _table$options$atoms === void 0 ? void 0 : _table$options$atoms[key];
51
65
  if (externalAtom) return externalAtom.get();
52
66
  return table.baseAtoms[key].get();
53
67
  }, { debugName: `table/atoms/${key}` });
54
68
  }
69
+ table_syncExternalStateToBaseAtoms(table);
55
70
  table.store = atomToStore(_reactivity.createReadonlyAtom(() => {
56
71
  const snapshot = {};
57
72
  for (const key of stateKeys) snapshot[key] = table.atoms[key].get();
@@ -67,7 +82,7 @@ function constructTable(tableOptions) {
67
82
 
68
83
  Row Models: ${rowModels.length ? rowModels.join("\n ") : "(none)"}
69
84
 
70
- States: ${states.join("\n ")}`);
85
+ States: ${states.join("\n ")}\n`, { table });
71
86
  }
72
87
  for (const feature of featuresList) {
73
88
  var _feature$constructTab;
@@ -1 +1 @@
1
- {"version":3,"file":"constructTable.js","names":[],"sources":["../../../src/core/table/constructTable.ts"],"sourcesContent":["import { coreFeatures } from '../coreFeatures'\nimport { cloneState } from '../../utils'\nimport { atomToStore } from '../reactivity/coreReactivityFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableOptions } from '../../types/TableOptions'\nimport type { TableState } from '../../types/TableState'\n\nexport function getInitialTableState<TFeatures extends TableFeatures>(\n features: TFeatures,\n initialState: Partial<TableState<TFeatures>> | undefined = {},\n): TableState<TFeatures> {\n Object.values(features).forEach((feature) => {\n initialState = feature.getInitialState?.(initialState) ?? initialState\n })\n return cloneState(initialState) as TableState<TFeatures>\n}\n\nexport function constructTable<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(tableOptions: TableOptions<TFeatures, TData>): Table<TFeatures, TData> {\n const _reactivity = tableOptions._features.coreReativityFeature!\n\n const table = {\n _reactivity,\n _features: { ...coreFeatures, ...tableOptions._features },\n _rowModels: {},\n _rowModelFns: {},\n get options() {\n return this.optionsStore.get()\n },\n set options(value) {\n this.optionsStore.set(() => value)\n },\n baseAtoms: {},\n atoms: {},\n } as Table_Internal<TFeatures, TData>\n\n const featuresList: Array<TableFeature<{}>> = Object.values(table._features)\n\n const defaultOptions = featuresList.reduce((obj, feature) => {\n return Object.assign(obj, feature.getDefaultTableOptions?.(table))\n }, {}) as TableOptions<TFeatures, TData>\n\n // @ts-ignore - direct set\n table.optionsStore = _reactivity.createWritableAtom<\n TableOptions<TFeatures, TData>\n >({ ...defaultOptions, ...tableOptions }, { debugName: 'table/optionsStore' })\n\n table.initialState = getInitialTableState(\n table._features,\n table.options.initialState,\n )\n\n const stateKeys = Object.keys(table.initialState) as Array<\n string & keyof TableState<TFeatures>\n >\n\n for (const key of stateKeys) {\n // create writable base atom\n table.baseAtoms[key] = _reactivity.createWritableAtom(\n table.initialState[key],\n {\n debugName: `table/baseAtoms/${key}`,\n },\n ) as any\n\n // create readonly derived atom: on each get(), read current options (state, then external atom, then base)\n ;(table.atoms as any)[key] = _reactivity.createReadonlyAtom(\n () => {\n // Reading optionsStore.get() keeps this reactive to setOptions\n const opts = table.optionsStore.get()\n const state = opts.state\n if (key in (state ?? {})) {\n return state![key]\n }\n const externalAtom = opts.atoms?.[key]\n if (externalAtom) {\n return externalAtom.get()\n }\n return table.baseAtoms[key].get()\n },\n { debugName: `table/atoms/${key}` },\n )\n }\n\n table.store = atomToStore(\n _reactivity.createReadonlyAtom(\n () => {\n const snapshot = {} as TableState<TFeatures>\n for (const key of stateKeys) {\n snapshot[key] = table.atoms[key].get()\n }\n return snapshot\n },\n { debugName: 'table/store' },\n ),\n )\n\n if (\n process.env.NODE_ENV === 'development' &&\n (tableOptions.debugAll || tableOptions.debugTable)\n ) {\n const features = Object.keys(table._features)\n const rowModels = Object.keys(table.options._rowModels || {})\n const states = Object.keys(table.initialState)\n\n console.log(\n `Constructing Table Instance\n\n Features: ${features.join('\\n ')}\n\n Row Models: ${rowModels.length ? rowModels.join('\\n ') : '(none)'}\n\n States: ${states.join('\\n ')}`,\n )\n }\n\n for (const feature of featuresList) {\n feature.constructTableAPIs?.(table)\n }\n\n return table\n}\n"],"mappings":";;;;;AASA,SAAgB,qBACd,UACA,eAA2D,EAAE,EACtC;AACvB,QAAO,OAAO,SAAS,CAAC,SAAS,YAAY;;AAC3C,2CAAe,QAAQ,6GAAkB,aAAa,KAAI;GAC1D;AACF,QAAO,WAAW,aAAa;;AAGjC,SAAgB,eAGd,cAAuE;CACvE,MAAM,cAAc,aAAa,UAAU;CAE3C,MAAM,QAAQ;EACZ;EACA,WAAW;GAAE,GAAG;GAAc,GAAG,aAAa;GAAW;EACzD,YAAY,EAAE;EACd,cAAc,EAAE;EAChB,IAAI,UAAU;AACZ,UAAO,KAAK,aAAa,KAAK;;EAEhC,IAAI,QAAQ,OAAO;AACjB,QAAK,aAAa,UAAU,MAAM;;EAEpC,WAAW,EAAE;EACb,OAAO,EAAE;EACV;CAED,MAAM,eAAwC,OAAO,OAAO,MAAM,UAAU;CAE5E,MAAM,iBAAiB,aAAa,QAAQ,KAAK,YAAY;;AAC3D,SAAO,OAAO,OAAO,8BAAK,QAAQ,oHAAyB,MAAM,CAAC;IACjE,EAAE,CAAC;AAGN,OAAM,eAAe,YAAY,mBAE/B;EAAE,GAAG;EAAgB,GAAG;EAAc,EAAE,EAAE,WAAW,sBAAsB,CAAC;AAE9E,OAAM,eAAe,qBACnB,MAAM,WACN,MAAM,QAAQ,aACf;CAED,MAAM,YAAY,OAAO,KAAK,MAAM,aAAa;AAIjD,MAAK,MAAM,OAAO,WAAW;AAE3B,QAAM,UAAU,OAAO,YAAY,mBACjC,MAAM,aAAa,MACnB,EACE,WAAW,mBAAmB,OAC/B,CACF;AAGA,EAAC,MAAM,MAAc,OAAO,YAAY,yBACjC;;GAEJ,MAAM,OAAO,MAAM,aAAa,KAAK;GACrC,MAAM,QAAQ,KAAK;AACnB,OAAI,QAAQ,SAAS,EAAE,EACrB,QAAO,MAAO;GAEhB,MAAM,8BAAe,KAAK,iEAAQ;AAClC,OAAI,aACF,QAAO,aAAa,KAAK;AAE3B,UAAO,MAAM,UAAU,KAAK,KAAK;KAEnC,EAAE,WAAW,eAAe,OAAO,CACpC;;AAGH,OAAM,QAAQ,YACZ,YAAY,yBACJ;EACJ,MAAM,WAAW,EAAE;AACnB,OAAK,MAAM,OAAO,UAChB,UAAS,OAAO,MAAM,MAAM,KAAK,KAAK;AAExC,SAAO;IAET,EAAE,WAAW,eAAe,CAC7B,CACF;AAED,KACE,QAAQ,IAAI,aAAa,kBACxB,aAAa,YAAY,aAAa,aACvC;EACA,MAAM,WAAW,OAAO,KAAK,MAAM,UAAU;EAC7C,MAAM,YAAY,OAAO,KAAK,MAAM,QAAQ,cAAc,EAAE,CAAC;EAC7D,MAAM,SAAS,OAAO,KAAK,MAAM,aAAa;AAE9C,UAAQ,IACN;;gBAEU,SAAS,KAAK,mBAAmB,CAAC;;gBAElC,UAAU,SAAS,UAAU,KAAK,mBAAmB,GAAG,SAAS;;gBAEjE,OAAO,KAAK,mBAAmB,GAC1C;;AAGH,MAAK,MAAM,WAAW,cAAc;;AAClC,mCAAQ,wGAAqB,MAAM;;AAGrC,QAAO"}
1
+ {"version":3,"file":"constructTable.js","names":[],"sources":["../../../src/core/table/constructTable.ts"],"sourcesContent":["import { coreFeatures } from '../coreFeatures'\nimport { cloneState } from '../../utils'\nimport { atomToStore } from '../reactivity/coreReactivityFeature.utils'\nimport { table_syncExternalStateToBaseAtoms } from './coreTablesFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableOptions } from '../../types/TableOptions'\nimport type { TableState } from '../../types/TableState'\n\n/**\n * Builds the initial table state from registered features and user initial state.\n *\n * Each feature contributes its default state before user-provided `initialState` values are merged in.\n */\nexport function getInitialTableState<TFeatures extends TableFeatures>(\n features: TFeatures,\n initialState: Partial<TableState<TFeatures>> | undefined = {},\n): TableState<TFeatures> {\n Object.values(features).forEach((feature) => {\n initialState = feature.getInitialState?.(initialState) ?? initialState\n })\n return cloneState(initialState) as TableState<TFeatures>\n}\n\n/**\n * Constructs a table instance from normalized table internals.\n *\n * This wires core properties, feature prototype APIs, and instance data used by table rendering and row-model operations.\n */\nexport function constructTable<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(tableOptions: TableOptions<TFeatures, TData>): Table<TFeatures, TData> {\n const _reactivity = tableOptions._features.coreReativityFeature!\n\n const table = {\n _reactivity,\n _features: { ...coreFeatures, ...tableOptions._features },\n _rowModels: {},\n _rowModelFns: {},\n baseAtoms: {},\n atoms: {},\n } as Table_Internal<TFeatures, TData>\n\n const featuresList: Array<TableFeature<{}>> = Object.values(table._features)\n\n const defaultOptions = featuresList.reduce((obj, feature) => {\n return Object.assign(obj, feature.getDefaultTableOptions?.(table))\n }, {}) as TableOptions<TFeatures, TData>\n\n const mergedOptions = { ...defaultOptions, ...tableOptions }\n\n if (_reactivity.createOptionsStore) {\n // @ts-ignore - direct set\n table.optionsStore = _reactivity.createWritableAtom<\n TableOptions<TFeatures, TData>\n >(mergedOptions, { debugName: 'table/optionsStore' })\n Object.defineProperty(table, 'options', {\n configurable: true,\n enumerable: true,\n get() {\n return table.optionsStore!.get()\n },\n set(value) {\n table.optionsStore!.set(() => value) // or your real update shape\n },\n })\n } else {\n table.options = mergedOptions\n }\n\n table.initialState = getInitialTableState(\n table._features,\n table.options.initialState,\n )\n\n const stateKeys = Object.keys(table.initialState) as Array<\n string & keyof TableState<TFeatures>\n >\n\n for (const key of stateKeys) {\n // create writable base atom\n table.baseAtoms[key] = _reactivity.createWritableAtom(\n table.initialState[key],\n {\n debugName: `table/baseAtoms/${key}`,\n },\n ) as any\n\n // create readonly derived atom: on each get(), read either external atom or base atom\n ;(table.atoms as any)[key] = _reactivity.createReadonlyAtom(\n () => {\n const externalAtom = table.options.atoms?.[key]\n if (externalAtom) {\n return externalAtom.get()\n }\n return table.baseAtoms[key].get()\n },\n { debugName: `table/atoms/${key}` },\n )\n }\n\n table_syncExternalStateToBaseAtoms(table)\n\n table.store = atomToStore(\n _reactivity.createReadonlyAtom(\n () => {\n const snapshot = {} as TableState<TFeatures>\n for (const key of stateKeys) {\n snapshot[key] = table.atoms[key].get()\n }\n return snapshot\n },\n { debugName: 'table/store' },\n ),\n )\n\n if (\n process.env.NODE_ENV === 'development' &&\n (tableOptions.debugAll || tableOptions.debugTable)\n ) {\n const features = Object.keys(table._features)\n const rowModels = Object.keys(table.options._rowModels || {})\n const states = Object.keys(table.initialState)\n\n console.log(\n `Constructing Table Instance\n\n Features: ${features.join('\\n ')}\n\n Row Models: ${rowModels.length ? rowModels.join('\\n ') : '(none)'}\n\n States: ${states.join('\\n ')}\\n`,\n { table },\n )\n }\n\n for (const feature of featuresList) {\n feature.constructTableAPIs?.(table)\n }\n\n return table\n}\n"],"mappings":";;;;;;;;;;;AAeA,SAAgB,qBACd,UACA,eAA2D,EAAE,EACtC;CACvB,OAAO,OAAO,SAAS,CAAC,SAAS,YAAY;;EAC3C,yCAAe,QAAQ,6GAAkB,aAAa,KAAI;GAC1D;CACF,OAAO,WAAW,aAAa;;;;;;;AAQjC,SAAgB,eAGd,cAAuE;CACvE,MAAM,cAAc,aAAa,UAAU;CAE3C,MAAM,QAAQ;EACZ;EACA,WAAW;GAAE,GAAG;GAAc,GAAG,aAAa;GAAW;EACzD,YAAY,EAAE;EACd,cAAc,EAAE;EAChB,WAAW,EAAE;EACb,OAAO,EAAE;EACV;CAED,MAAM,eAAwC,OAAO,OAAO,MAAM,UAAU;CAM5E,MAAM,gBAAgB;EAAE,GAJD,aAAa,QAAQ,KAAK,YAAY;;GAC3D,OAAO,OAAO,OAAO,8BAAK,QAAQ,oHAAyB,MAAM,CAAC;KACjE,EAAE,CAEoC;EAAE,GAAG;EAAc;CAE5D,IAAI,YAAY,oBAAoB;EAElC,MAAM,eAAe,YAAY,mBAE/B,eAAe,EAAE,WAAW,sBAAsB,CAAC;EACrD,OAAO,eAAe,OAAO,WAAW;GACtC,cAAc;GACd,YAAY;GACZ,MAAM;IACJ,OAAO,MAAM,aAAc,KAAK;;GAElC,IAAI,OAAO;IACT,MAAM,aAAc,UAAU,MAAM;;GAEvC,CAAC;QAEF,MAAM,UAAU;CAGlB,MAAM,eAAe,qBACnB,MAAM,WACN,MAAM,QAAQ,aACf;CAED,MAAM,YAAY,OAAO,KAAK,MAAM,aAAa;CAIjD,KAAK,MAAM,OAAO,WAAW;EAE3B,MAAM,UAAU,OAAO,YAAY,mBACjC,MAAM,aAAa,MACnB,EACE,WAAW,mBAAmB,OAC/B,CACF;EAGA,AAAC,MAAM,MAAc,OAAO,YAAY,yBACjC;;GACJ,MAAM,uCAAe,MAAM,QAAQ,mFAAQ;GAC3C,IAAI,cACF,OAAO,aAAa,KAAK;GAE3B,OAAO,MAAM,UAAU,KAAK,KAAK;KAEnC,EAAE,WAAW,eAAe,OAAO,CACpC;;CAGH,mCAAmC,MAAM;CAEzC,MAAM,QAAQ,YACZ,YAAY,yBACJ;EACJ,MAAM,WAAW,EAAE;EACnB,KAAK,MAAM,OAAO,WAChB,SAAS,OAAO,MAAM,MAAM,KAAK,KAAK;EAExC,OAAO;IAET,EAAE,WAAW,eAAe,CAC7B,CACF;CAED,IACE,QAAQ,IAAI,aAAa,kBACxB,aAAa,YAAY,aAAa,aACvC;EACA,MAAM,WAAW,OAAO,KAAK,MAAM,UAAU;EAC7C,MAAM,YAAY,OAAO,KAAK,MAAM,QAAQ,cAAc,EAAE,CAAC;EAC7D,MAAM,SAAS,OAAO,KAAK,MAAM,aAAa;EAE9C,QAAQ,IACN;;gBAEU,SAAS,KAAK,mBAAmB,CAAC;;gBAElC,UAAU,SAAS,UAAU,KAAK,mBAAmB,GAAG,SAAS;;gBAEjE,OAAO,KAAK,mBAAmB,CAAC,KAC1C,EAAE,OAAO,CACV;;CAGH,KAAK,MAAM,WAAW,cAAc;;EAClC,iCAAQ,wGAAqB,MAAM;;CAGrC,OAAO"}
@@ -2,6 +2,11 @@ const require_utils = require('../../utils.cjs');
2
2
  const require_coreTablesFeature_utils = require('./coreTablesFeature.utils.cjs');
3
3
 
4
4
  //#region src/core/table/coreTablesFeature.ts
5
+ /**
6
+ * Creates the stock core tables 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
+ */
5
10
  function constructCoreTablesFeature() {
6
11
  return { constructTableAPIs: (table) => {
7
12
  require_utils.assignTableAPIs("coreTablesFeature", table, {
@@ -1 +1 @@
1
- {"version":3,"file":"coreTablesFeature.cjs","names":["table_reset","table_setOptions"],"sources":["../../../src/core/table/coreTablesFeature.ts"],"sourcesContent":["import { assignTableAPIs } from '../../utils'\nimport { table_reset, table_setOptions } from './coreTablesFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type { TableOptions_Table, Table_Table } from './coreTablesFeature.types'\n\nexport interface CoreTablesFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Table: Table_Table<TFeatures, TData>\n // TableOptions: TableOptions_Table<TFeatures, TData>\n}\n\nexport function constructCoreTablesFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<CoreTablesFeatureConstructors<TFeatures, TData>> {\n return {\n constructTableAPIs: (table) => {\n assignTableAPIs('coreTablesFeature', table, {\n table_reset: {\n fn: () => table_reset(table),\n },\n table_setOptions: {\n fn: (updater) => table_setOptions(table, updater),\n },\n })\n },\n }\n}\n\n/**\n * The Core Tables feature provides the core table functionality for handling state and options.\n */\nexport const coreTablesFeature = constructCoreTablesFeature()\n"],"mappings":";;;;AAcA,SAAgB,6BAGmD;AACjE,QAAO,EACL,qBAAqB,UAAU;AAC7B,gCAAgB,qBAAqB,OAAO;GAC1C,aAAa,EACX,UAAUA,4CAAY,MAAM,EAC7B;GACD,kBAAkB,EAChB,KAAK,YAAYC,iDAAiB,OAAO,QAAQ,EAClD;GACF,CAAC;IAEL;;;;;AAMH,MAAa,oBAAoB,4BAA4B"}
1
+ {"version":3,"file":"coreTablesFeature.cjs","names":["table_reset","table_setOptions"],"sources":["../../../src/core/table/coreTablesFeature.ts"],"sourcesContent":["import { assignTableAPIs } from '../../utils'\nimport { table_reset, table_setOptions } from './coreTablesFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type { TableOptions_Table, Table_Table } from './coreTablesFeature.types'\n\nexport interface CoreTablesFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Table: Table_Table<TFeatures, TData>\n // TableOptions: TableOptions_Table<TFeatures, TData>\n}\n\n/**\n * Creates the stock core tables 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 constructCoreTablesFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<CoreTablesFeatureConstructors<TFeatures, TData>> {\n return {\n constructTableAPIs: (table) => {\n assignTableAPIs('coreTablesFeature', table, {\n table_reset: {\n fn: () => table_reset(table),\n },\n table_setOptions: {\n fn: (updater) => table_setOptions(table, updater),\n },\n })\n },\n }\n}\n\n/**\n * The Core Tables feature provides the core table functionality for handling state and options.\n */\nexport const coreTablesFeature = constructCoreTablesFeature()\n"],"mappings":";;;;;;;;;AAmBA,SAAgB,6BAGmD;CACjE,OAAO,EACL,qBAAqB,UAAU;EAC7B,8BAAgB,qBAAqB,OAAO;GAC1C,aAAa,EACX,UAAUA,4CAAY,MAAM,EAC7B;GACD,kBAAkB,EAChB,KAAK,YAAYC,iDAAiB,OAAO,QAAQ,EAClD;GACF,CAAC;IAEL;;;;;AAMH,MAAa,oBAAoB,4BAA4B"}
@@ -3,6 +3,11 @@ import { TableFeature, TableFeatures } from "../../types/TableFeatures.cjs";
3
3
 
4
4
  //#region src/core/table/coreTablesFeature.d.ts
5
5
  interface CoreTablesFeatureConstructors<TFeatures extends TableFeatures, TData extends RowData> {}
6
+ /**
7
+ * Creates the stock core tables 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 constructCoreTablesFeature<TFeatures extends TableFeatures, TData extends RowData>(): TableFeature<CoreTablesFeatureConstructors<TFeatures, TData>>;
7
12
  /**
8
13
  * The Core Tables feature provides the core table functionality for handling state and options.
@@ -3,6 +3,11 @@ import { TableFeature, TableFeatures } from "../../types/TableFeatures.js";
3
3
 
4
4
  //#region src/core/table/coreTablesFeature.d.ts
5
5
  interface CoreTablesFeatureConstructors<TFeatures extends TableFeatures, TData extends RowData> {}
6
+ /**
7
+ * Creates the stock core tables 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 constructCoreTablesFeature<TFeatures extends TableFeatures, TData extends RowData>(): TableFeature<CoreTablesFeatureConstructors<TFeatures, TData>>;
7
12
  /**
8
13
  * The Core Tables feature provides the core table functionality for handling state and options.
@@ -2,6 +2,11 @@ import { assignTableAPIs } from "../../utils.js";
2
2
  import { table_reset, table_setOptions } from "./coreTablesFeature.utils.js";
3
3
 
4
4
  //#region src/core/table/coreTablesFeature.ts
5
+ /**
6
+ * Creates the stock core tables 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
+ */
5
10
  function constructCoreTablesFeature() {
6
11
  return { constructTableAPIs: (table) => {
7
12
  assignTableAPIs("coreTablesFeature", table, {
@@ -1 +1 @@
1
- {"version":3,"file":"coreTablesFeature.js","names":[],"sources":["../../../src/core/table/coreTablesFeature.ts"],"sourcesContent":["import { assignTableAPIs } from '../../utils'\nimport { table_reset, table_setOptions } from './coreTablesFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type { TableOptions_Table, Table_Table } from './coreTablesFeature.types'\n\nexport interface CoreTablesFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Table: Table_Table<TFeatures, TData>\n // TableOptions: TableOptions_Table<TFeatures, TData>\n}\n\nexport function constructCoreTablesFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<CoreTablesFeatureConstructors<TFeatures, TData>> {\n return {\n constructTableAPIs: (table) => {\n assignTableAPIs('coreTablesFeature', table, {\n table_reset: {\n fn: () => table_reset(table),\n },\n table_setOptions: {\n fn: (updater) => table_setOptions(table, updater),\n },\n })\n },\n }\n}\n\n/**\n * The Core Tables feature provides the core table functionality for handling state and options.\n */\nexport const coreTablesFeature = constructCoreTablesFeature()\n"],"mappings":";;;;AAcA,SAAgB,6BAGmD;AACjE,QAAO,EACL,qBAAqB,UAAU;AAC7B,kBAAgB,qBAAqB,OAAO;GAC1C,aAAa,EACX,UAAU,YAAY,MAAM,EAC7B;GACD,kBAAkB,EAChB,KAAK,YAAY,iBAAiB,OAAO,QAAQ,EAClD;GACF,CAAC;IAEL;;;;;AAMH,MAAa,oBAAoB,4BAA4B"}
1
+ {"version":3,"file":"coreTablesFeature.js","names":[],"sources":["../../../src/core/table/coreTablesFeature.ts"],"sourcesContent":["import { assignTableAPIs } from '../../utils'\nimport { table_reset, table_setOptions } from './coreTablesFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type { TableOptions_Table, Table_Table } from './coreTablesFeature.types'\n\nexport interface CoreTablesFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Table: Table_Table<TFeatures, TData>\n // TableOptions: TableOptions_Table<TFeatures, TData>\n}\n\n/**\n * Creates the stock core tables 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 constructCoreTablesFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<CoreTablesFeatureConstructors<TFeatures, TData>> {\n return {\n constructTableAPIs: (table) => {\n assignTableAPIs('coreTablesFeature', table, {\n table_reset: {\n fn: () => table_reset(table),\n },\n table_setOptions: {\n fn: (updater) => table_setOptions(table, updater),\n },\n })\n },\n }\n}\n\n/**\n * The Core Tables feature provides the core table functionality for handling state and options.\n */\nexport const coreTablesFeature = constructCoreTablesFeature()\n"],"mappings":";;;;;;;;;AAmBA,SAAgB,6BAGmD;CACjE,OAAO,EACL,qBAAqB,UAAU;EAC7B,gBAAgB,qBAAqB,OAAO;GAC1C,aAAa,EACX,UAAU,YAAY,MAAM,EAC7B;GACD,kBAAkB,EAChB,KAAK,YAAY,iBAAiB,OAAO,QAAQ,EAClD;GACF,CAAC;IAEL;;;;;AAMH,MAAa,oBAAoB,4BAA4B"}
@@ -54,9 +54,9 @@ interface TableOptions_Table<TFeatures extends TableFeatures, TData extends RowD
54
54
  /**
55
55
  * Optionally, provide your own external writable atoms for individual state slices.
56
56
  * When an atom is provided for a given slice, it takes precedence over `options.state[key]`
57
- * and the internal base atom for that slice. Writes originating from the library are
58
- * still routed through the internal base atom; consumers are responsible for
59
- * mirroring changes back to their external atom via the corresponding `onXChange` callback.
57
+ * and the internal base atom for that slice. Feature state update APIs write through
58
+ * the corresponding atom updater, so external atoms are the preferred v9 ownership
59
+ * model for app-managed table state slices.
60
60
  */
61
61
  readonly atoms?: ExternalAtoms<TFeatures>;
62
62
  /**
@@ -68,8 +68,10 @@ interface TableOptions_Table<TFeatures extends TableFeatures, TData extends RowD
68
68
  */
69
69
  readonly data: ReadonlyArray<TData>;
70
70
  /**
71
- * Use this option to optionally pass initial state to the table. This state will be used when resetting various table states either automatically by the table (eg. `options.autoResetPageIndex`) or via functions like `table.resetRowSelection()`. Most reset function allow you optionally pass a flag to reset to a blank/default state instead of the initial state.
72
- * Table state will not be reset when this object changes, which also means that the initial state object does not need to be stable.
71
+ * Optionally provide starting values for registered table state slices.
72
+ * Feature reset APIs use this value by default, and many reset APIs accept
73
+ * `true` to reset to that feature's blank/default state instead. Changing this
74
+ * object later does not reset table state, so it does not need to be stable.
73
75
  */
74
76
  readonly initialState?: Partial<TableState<TFeatures>>;
75
77
  /**
@@ -81,7 +83,11 @@ interface TableOptions_Table<TFeatures extends TableFeatures, TData extends RowD
81
83
  */
82
84
  readonly meta?: TableMeta<TFeatures, TData>;
83
85
  /**
84
- * Pass in individual self-managed state to the table.
86
+ * Optionally provide externally managed values for individual state slices.
87
+ *
88
+ * Pair each slice with its matching `on[State]Change` callback so table state
89
+ * updates can be persisted outside the table. External atoms take precedence
90
+ * over this option when both are provided for the same slice.
85
91
  */
86
92
  readonly state?: Partial<TableState<TFeatures>>;
87
93
  }
@@ -138,9 +144,11 @@ interface Table_CoreProperties<TFeatures extends TableFeatures, TData extends Ro
138
144
  */
139
145
  readonly options: TableOptions<TFeatures, TData>;
140
146
  /**
141
- * The base store for the table options.
147
+ * Writable atom for table options. Only created when `createOptionsStore` is
148
+ * true on the active core reactivity bindings. Adapters that opt out keep
149
+ * options as plain resolved data instead of backing them with an atom.
142
150
  */
143
- readonly optionsStore: Atom<TableOptions<TFeatures, TData>>;
151
+ readonly optionsStore?: Atom<TableOptions<TFeatures, TData>> | undefined;
144
152
  /**
145
153
  * The readonly flat store for the table state. Derives from `table.atoms`
146
154
  * only; never reads external state directly.
@@ -149,11 +157,16 @@ interface Table_CoreProperties<TFeatures extends TableFeatures, TData extends Ro
149
157
  }
150
158
  interface Table_Table<TFeatures extends TableFeatures, TData extends RowData> extends Table_CoreProperties<TFeatures, TData> {
151
159
  /**
152
- * Call this function to reset the table state to the initial state.
160
+ * Resets the table's internal base atoms to `table.initialState`.
161
+ *
162
+ * Prefer feature-specific reset APIs, such as `resetPagination`, when a state
163
+ * slice may be owned by an external atom or needs that feature's blank/default
164
+ * reset behavior.
153
165
  */
154
166
  reset: () => void;
155
167
  /**
156
- * This function can be used to update the table options.
168
+ * Updates the table options by applying a value or updater to the current
169
+ * resolved options and then merging them through `options.mergeOptions`.
157
170
  */
158
171
  setOptions: (newOptions: Updater<TableOptions<TFeatures, TData>>) => void;
159
172
  }
@@ -54,9 +54,9 @@ interface TableOptions_Table<TFeatures extends TableFeatures, TData extends RowD
54
54
  /**
55
55
  * Optionally, provide your own external writable atoms for individual state slices.
56
56
  * When an atom is provided for a given slice, it takes precedence over `options.state[key]`
57
- * and the internal base atom for that slice. Writes originating from the library are
58
- * still routed through the internal base atom; consumers are responsible for
59
- * mirroring changes back to their external atom via the corresponding `onXChange` callback.
57
+ * and the internal base atom for that slice. Feature state update APIs write through
58
+ * the corresponding atom updater, so external atoms are the preferred v9 ownership
59
+ * model for app-managed table state slices.
60
60
  */
61
61
  readonly atoms?: ExternalAtoms<TFeatures>;
62
62
  /**
@@ -68,8 +68,10 @@ interface TableOptions_Table<TFeatures extends TableFeatures, TData extends RowD
68
68
  */
69
69
  readonly data: ReadonlyArray<TData>;
70
70
  /**
71
- * Use this option to optionally pass initial state to the table. This state will be used when resetting various table states either automatically by the table (eg. `options.autoResetPageIndex`) or via functions like `table.resetRowSelection()`. Most reset function allow you optionally pass a flag to reset to a blank/default state instead of the initial state.
72
- * Table state will not be reset when this object changes, which also means that the initial state object does not need to be stable.
71
+ * Optionally provide starting values for registered table state slices.
72
+ * Feature reset APIs use this value by default, and many reset APIs accept
73
+ * `true` to reset to that feature's blank/default state instead. Changing this
74
+ * object later does not reset table state, so it does not need to be stable.
73
75
  */
74
76
  readonly initialState?: Partial<TableState<TFeatures>>;
75
77
  /**
@@ -81,7 +83,11 @@ interface TableOptions_Table<TFeatures extends TableFeatures, TData extends RowD
81
83
  */
82
84
  readonly meta?: TableMeta<TFeatures, TData>;
83
85
  /**
84
- * Pass in individual self-managed state to the table.
86
+ * Optionally provide externally managed values for individual state slices.
87
+ *
88
+ * Pair each slice with its matching `on[State]Change` callback so table state
89
+ * updates can be persisted outside the table. External atoms take precedence
90
+ * over this option when both are provided for the same slice.
85
91
  */
86
92
  readonly state?: Partial<TableState<TFeatures>>;
87
93
  }
@@ -138,9 +144,11 @@ interface Table_CoreProperties<TFeatures extends TableFeatures, TData extends Ro
138
144
  */
139
145
  readonly options: TableOptions<TFeatures, TData>;
140
146
  /**
141
- * The base store for the table options.
147
+ * Writable atom for table options. Only created when `createOptionsStore` is
148
+ * true on the active core reactivity bindings. Adapters that opt out keep
149
+ * options as plain resolved data instead of backing them with an atom.
142
150
  */
143
- readonly optionsStore: Atom<TableOptions<TFeatures, TData>>;
151
+ readonly optionsStore?: Atom<TableOptions<TFeatures, TData>> | undefined;
144
152
  /**
145
153
  * The readonly flat store for the table state. Derives from `table.atoms`
146
154
  * only; never reads external state directly.
@@ -149,11 +157,16 @@ interface Table_CoreProperties<TFeatures extends TableFeatures, TData extends Ro
149
157
  }
150
158
  interface Table_Table<TFeatures extends TableFeatures, TData extends RowData> extends Table_CoreProperties<TFeatures, TData> {
151
159
  /**
152
- * Call this function to reset the table state to the initial state.
160
+ * Resets the table's internal base atoms to `table.initialState`.
161
+ *
162
+ * Prefer feature-specific reset APIs, such as `resetPagination`, when a state
163
+ * slice may be owned by an external atom or needs that feature's blank/default
164
+ * reset behavior.
153
165
  */
154
166
  reset: () => void;
155
167
  /**
156
- * This function can be used to update the table options.
168
+ * Updates the table options by applying a value or updater to the current
169
+ * resolved options and then merging them through `options.mergeOptions`.
157
170
  */
158
171
  setOptions: (newOptions: Updater<TableOptions<TFeatures, TData>>) => void;
159
172
  }
@@ -1,12 +1,57 @@
1
1
  const require_utils = require('../../utils.cjs');
2
2
 
3
3
  //#region src/core/table/coreTablesFeature.utils.ts
4
+ /**
5
+ * Synchronizes externally controlled state slices into the table's base atoms.
6
+ *
7
+ * This keeps legacy `options.state` values reflected in the atom graph so
8
+ * derived atoms, stores, and table APIs read a consistent snapshot.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * const value = table_syncExternalStateToBaseAtoms(table)
13
+ * ```
14
+ */
15
+ function table_syncExternalStateToBaseAtoms(table) {
16
+ const state = table.options.state;
17
+ if (!state) return;
18
+ table._reactivity.batch(() => {
19
+ for (const key in state) {
20
+ const baseAtom = table.baseAtoms[key];
21
+ if (!baseAtom) continue;
22
+ const externalState = state[key];
23
+ if (externalState !== baseAtom.get()) baseAtom.set(() => externalState);
24
+ }
25
+ });
26
+ }
27
+ /**
28
+ * Resets all internal table base atoms to `table.initialState`.
29
+ *
30
+ * This resets internally owned state slices in a single reactivity batch. Use
31
+ * feature-specific reset APIs when a slice may be externally owned.
32
+ *
33
+ * @example
34
+ * ```ts
35
+ * table_reset(table)
36
+ * ```
37
+ */
4
38
  function table_reset(table) {
5
39
  const snap = require_utils.cloneState(table.initialState);
6
40
  table._reactivity.batch(() => {
7
41
  for (const key of Object.keys(snap)) table.baseAtoms[key].set(snap[key]);
8
42
  });
9
43
  }
44
+ /**
45
+ * Merges new table options with the current resolved options.
46
+ *
47
+ * If `options.mergeOptions` is provided, it owns the merge behavior; otherwise
48
+ * options are shallow-merged.
49
+ *
50
+ * @example
51
+ * ```ts
52
+ * const value = table_mergeOptions(table)
53
+ * ```
54
+ */
10
55
  function table_mergeOptions(table, newOptions) {
11
56
  if (table.options.mergeOptions) return table.options.mergeOptions(table.options, newOptions);
12
57
  return {
@@ -14,13 +59,27 @@ function table_mergeOptions(table, newOptions) {
14
59
  ...newOptions
15
60
  };
16
61
  }
62
+ /**
63
+ * Updates the table options object.
64
+ *
65
+ * The updater receives the current resolved options and the merged result is
66
+ * immediately assigned to the table instance.
67
+ *
68
+ * @example
69
+ * ```ts
70
+ * table_setOptions(table, (old) => old)
71
+ * ```
72
+ */
17
73
  function table_setOptions(table, updater) {
18
74
  const mergedOptions = table_mergeOptions(table, require_utils.functionalUpdate(updater, table.options));
19
- table.optionsStore.set(() => mergedOptions);
75
+ if (table.optionsStore) table.optionsStore.set(() => mergedOptions);
76
+ else table.options = mergedOptions;
77
+ table_syncExternalStateToBaseAtoms(table);
20
78
  }
21
79
 
22
80
  //#endregion
23
81
  exports.table_mergeOptions = table_mergeOptions;
24
82
  exports.table_reset = table_reset;
25
83
  exports.table_setOptions = table_setOptions;
84
+ exports.table_syncExternalStateToBaseAtoms = table_syncExternalStateToBaseAtoms;
26
85
  //# sourceMappingURL=coreTablesFeature.utils.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"coreTablesFeature.utils.cjs","names":["cloneState","functionalUpdate"],"sources":["../../../src/core/table/coreTablesFeature.utils.ts"],"sourcesContent":["import { cloneState, functionalUpdate } from '../../utils'\nimport type { RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { TableOptions } from '../../types/TableOptions'\n\nexport function table_reset<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const snap = cloneState(table.initialState)\n table._reactivity.batch(() => {\n for (const key of Object.keys(snap) as Array<keyof typeof snap>) {\n ;(table.baseAtoms as any)[key].set(snap[key] as any)\n }\n })\n}\n\nexport function table_mergeOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n newOptions: TableOptions<TFeatures, TData>,\n) {\n if (table.options.mergeOptions) {\n return table.options.mergeOptions(table.options, newOptions)\n }\n\n return {\n ...table.options,\n ...newOptions,\n }\n}\n\nexport function table_setOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<TableOptions<TFeatures, TData>>,\n): void {\n const newOptions = functionalUpdate(updater, table.options)\n const mergedOptions = table_mergeOptions(table, newOptions)\n table.optionsStore.set(() => mergedOptions)\n}\n"],"mappings":";;;AAMA,SAAgB,YAGd,OAA+C;CAC/C,MAAM,OAAOA,yBAAW,MAAM,aAAa;AAC3C,OAAM,YAAY,YAAY;AAC5B,OAAK,MAAM,OAAO,OAAO,KAAK,KAAK,CAChC,CAAC,MAAM,UAAkB,KAAK,IAAI,KAAK,KAAY;GAEtD;;AAGJ,SAAgB,mBAId,OACA,YACA;AACA,KAAI,MAAM,QAAQ,aAChB,QAAO,MAAM,QAAQ,aAAa,MAAM,SAAS,WAAW;AAG9D,QAAO;EACL,GAAG,MAAM;EACT,GAAG;EACJ;;AAGH,SAAgB,iBAId,OACA,SACM;CAEN,MAAM,gBAAgB,mBAAmB,OADtBC,+BAAiB,SAAS,MAAM,QACO,CAAC;AAC3D,OAAM,aAAa,UAAU,cAAc"}
1
+ {"version":3,"file":"coreTablesFeature.utils.cjs","names":["cloneState","functionalUpdate"],"sources":["../../../src/core/table/coreTablesFeature.utils.ts"],"sourcesContent":["import { cloneState, functionalUpdate } from '../../utils'\nimport type { RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { TableOptions } from '../../types/TableOptions'\n\n/**\n * Synchronizes externally controlled state slices into the table's base atoms.\n *\n * This keeps legacy `options.state` values reflected in the atom graph so\n * derived atoms, stores, and table APIs read a consistent snapshot.\n *\n * @example\n * ```ts\n * const value = table_syncExternalStateToBaseAtoms(table)\n * ```\n */\nexport function table_syncExternalStateToBaseAtoms<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const state = table.options.state\n if (!state) {\n return\n }\n\n table._reactivity.batch(() => {\n for (const key in state) {\n const baseAtom = (table.baseAtoms as Record<string, any>)[key]\n if (!baseAtom) {\n continue\n }\n\n const externalState = state[key as keyof typeof state]\n if (externalState !== baseAtom.get()) {\n baseAtom.set(() => externalState)\n }\n }\n })\n}\n\n/**\n * Resets all internal table base atoms to `table.initialState`.\n *\n * This resets internally owned state slices in a single reactivity batch. Use\n * feature-specific reset APIs when a slice may be externally owned.\n *\n * @example\n * ```ts\n * table_reset(table)\n * ```\n */\nexport function table_reset<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const snap = cloneState(table.initialState)\n table._reactivity.batch(() => {\n for (const key of Object.keys(snap) as Array<keyof typeof snap>) {\n ;(table.baseAtoms as any)[key].set(snap[key] as any)\n }\n })\n}\n\n/**\n * Merges new table options with the current resolved options.\n *\n * If `options.mergeOptions` is provided, it owns the merge behavior; otherwise\n * options are shallow-merged.\n *\n * @example\n * ```ts\n * const value = table_mergeOptions(table)\n * ```\n */\nexport function table_mergeOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n newOptions: TableOptions<TFeatures, TData>,\n) {\n if (table.options.mergeOptions) {\n return table.options.mergeOptions(table.options, newOptions)\n }\n\n return {\n ...table.options,\n ...newOptions,\n }\n}\n\n/**\n * Updates the table options object.\n *\n * The updater receives the current resolved options and the merged result is\n * immediately assigned to the table instance.\n *\n * @example\n * ```ts\n * table_setOptions(table, (old) => old)\n * ```\n */\nexport function table_setOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<TableOptions<TFeatures, TData>>,\n): void {\n const newOptions = functionalUpdate(updater, table.options)\n const mergedOptions = table_mergeOptions(table, newOptions)\n if (table.optionsStore) {\n table.optionsStore.set(() => mergedOptions)\n } else {\n table.options = mergedOptions\n }\n table_syncExternalStateToBaseAtoms(table)\n}\n"],"mappings":";;;;;;;;;;;;;;AAiBA,SAAgB,mCAGd,OAA+C;CAC/C,MAAM,QAAQ,MAAM,QAAQ;CAC5B,IAAI,CAAC,OACH;CAGF,MAAM,YAAY,YAAY;EAC5B,KAAK,MAAM,OAAO,OAAO;GACvB,MAAM,WAAY,MAAM,UAAkC;GAC1D,IAAI,CAAC,UACH;GAGF,MAAM,gBAAgB,MAAM;GAC5B,IAAI,kBAAkB,SAAS,KAAK,EAClC,SAAS,UAAU,cAAc;;GAGrC;;;;;;;;;;;;;AAcJ,SAAgB,YAGd,OAA+C;CAC/C,MAAM,OAAOA,yBAAW,MAAM,aAAa;CAC3C,MAAM,YAAY,YAAY;EAC5B,KAAK,MAAM,OAAO,OAAO,KAAK,KAAK,EAChC,AAAC,MAAM,UAAkB,KAAK,IAAI,KAAK,KAAY;GAEtD;;;;;;;;;;;;;AAcJ,SAAgB,mBAId,OACA,YACA;CACA,IAAI,MAAM,QAAQ,cAChB,OAAO,MAAM,QAAQ,aAAa,MAAM,SAAS,WAAW;CAG9D,OAAO;EACL,GAAG,MAAM;EACT,GAAG;EACJ;;;;;;;;;;;;;AAcH,SAAgB,iBAId,OACA,SACM;CAEN,MAAM,gBAAgB,mBAAmB,OADtBC,+BAAiB,SAAS,MAAM,QACO,CAAC;CAC3D,IAAI,MAAM,cACR,MAAM,aAAa,UAAU,cAAc;MAE3C,MAAM,UAAU;CAElB,mCAAmC,MAAM"}
@@ -4,9 +4,54 @@ import { TableFeatures } from "../../types/TableFeatures.cjs";
4
4
  import { Table_Internal } from "../../types/Table.cjs";
5
5
 
6
6
  //#region src/core/table/coreTablesFeature.utils.d.ts
7
+ /**
8
+ * Synchronizes externally controlled state slices into the table's base atoms.
9
+ *
10
+ * This keeps legacy `options.state` values reflected in the atom graph so
11
+ * derived atoms, stores, and table APIs read a consistent snapshot.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * const value = table_syncExternalStateToBaseAtoms(table)
16
+ * ```
17
+ */
18
+ declare function table_syncExternalStateToBaseAtoms<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>): void;
19
+ /**
20
+ * Resets all internal table base atoms to `table.initialState`.
21
+ *
22
+ * This resets internally owned state slices in a single reactivity batch. Use
23
+ * feature-specific reset APIs when a slice may be externally owned.
24
+ *
25
+ * @example
26
+ * ```ts
27
+ * table_reset(table)
28
+ * ```
29
+ */
7
30
  declare function table_reset<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>): void;
31
+ /**
32
+ * Merges new table options with the current resolved options.
33
+ *
34
+ * If `options.mergeOptions` is provided, it owns the merge behavior; otherwise
35
+ * options are shallow-merged.
36
+ *
37
+ * @example
38
+ * ```ts
39
+ * const value = table_mergeOptions(table)
40
+ * ```
41
+ */
8
42
  declare function table_mergeOptions<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>, newOptions: TableOptions<TFeatures, TData>): TableOptions<TFeatures, TData>;
43
+ /**
44
+ * Updates the table options object.
45
+ *
46
+ * The updater receives the current resolved options and the merged result is
47
+ * immediately assigned to the table instance.
48
+ *
49
+ * @example
50
+ * ```ts
51
+ * table_setOptions(table, (old) => old)
52
+ * ```
53
+ */
9
54
  declare function table_setOptions<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>, updater: Updater<TableOptions<TFeatures, TData>>): void;
10
55
  //#endregion
11
- export { table_mergeOptions, table_reset, table_setOptions };
56
+ export { table_mergeOptions, table_reset, table_setOptions, table_syncExternalStateToBaseAtoms };
12
57
  //# sourceMappingURL=coreTablesFeature.utils.d.cts.map
@@ -4,9 +4,54 @@ import { TableFeatures } from "../../types/TableFeatures.js";
4
4
  import { Table_Internal } from "../../types/Table.js";
5
5
 
6
6
  //#region src/core/table/coreTablesFeature.utils.d.ts
7
+ /**
8
+ * Synchronizes externally controlled state slices into the table's base atoms.
9
+ *
10
+ * This keeps legacy `options.state` values reflected in the atom graph so
11
+ * derived atoms, stores, and table APIs read a consistent snapshot.
12
+ *
13
+ * @example
14
+ * ```ts
15
+ * const value = table_syncExternalStateToBaseAtoms(table)
16
+ * ```
17
+ */
18
+ declare function table_syncExternalStateToBaseAtoms<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>): void;
19
+ /**
20
+ * Resets all internal table base atoms to `table.initialState`.
21
+ *
22
+ * This resets internally owned state slices in a single reactivity batch. Use
23
+ * feature-specific reset APIs when a slice may be externally owned.
24
+ *
25
+ * @example
26
+ * ```ts
27
+ * table_reset(table)
28
+ * ```
29
+ */
7
30
  declare function table_reset<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>): void;
31
+ /**
32
+ * Merges new table options with the current resolved options.
33
+ *
34
+ * If `options.mergeOptions` is provided, it owns the merge behavior; otherwise
35
+ * options are shallow-merged.
36
+ *
37
+ * @example
38
+ * ```ts
39
+ * const value = table_mergeOptions(table)
40
+ * ```
41
+ */
8
42
  declare function table_mergeOptions<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>, newOptions: TableOptions<TFeatures, TData>): TableOptions<TFeatures, TData>;
43
+ /**
44
+ * Updates the table options object.
45
+ *
46
+ * The updater receives the current resolved options and the merged result is
47
+ * immediately assigned to the table instance.
48
+ *
49
+ * @example
50
+ * ```ts
51
+ * table_setOptions(table, (old) => old)
52
+ * ```
53
+ */
9
54
  declare function table_setOptions<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>, updater: Updater<TableOptions<TFeatures, TData>>): void;
10
55
  //#endregion
11
- export { table_mergeOptions, table_reset, table_setOptions };
56
+ export { table_mergeOptions, table_reset, table_setOptions, table_syncExternalStateToBaseAtoms };
12
57
  //# sourceMappingURL=coreTablesFeature.utils.d.ts.map