@tanstack/table-core 9.0.0-alpha.47 → 9.0.0-alpha.49

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 (246) hide show
  1. package/README.md +10 -0
  2. package/dist/core/cells/coreCellsFeature.utils.cjs +11 -8
  3. package/dist/core/cells/coreCellsFeature.utils.cjs.map +1 -1
  4. package/dist/core/cells/coreCellsFeature.utils.d.cts +11 -8
  5. package/dist/core/cells/coreCellsFeature.utils.d.ts +11 -8
  6. package/dist/core/cells/coreCellsFeature.utils.js +11 -8
  7. package/dist/core/cells/coreCellsFeature.utils.js.map +1 -1
  8. package/dist/core/columns/coreColumnsFeature.types.d.cts +7 -6
  9. package/dist/core/columns/coreColumnsFeature.types.d.ts +7 -6
  10. package/dist/core/columns/coreColumnsFeature.utils.cjs +37 -27
  11. package/dist/core/columns/coreColumnsFeature.utils.cjs.map +1 -1
  12. package/dist/core/columns/coreColumnsFeature.utils.d.cts +37 -27
  13. package/dist/core/columns/coreColumnsFeature.utils.d.ts +37 -27
  14. package/dist/core/columns/coreColumnsFeature.utils.js +37 -27
  15. package/dist/core/columns/coreColumnsFeature.utils.js.map +1 -1
  16. package/dist/core/headers/coreHeadersFeature.types.d.cts +6 -4
  17. package/dist/core/headers/coreHeadersFeature.types.d.ts +6 -4
  18. package/dist/core/headers/coreHeadersFeature.utils.cjs +23 -18
  19. package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
  20. package/dist/core/headers/coreHeadersFeature.utils.d.cts +23 -18
  21. package/dist/core/headers/coreHeadersFeature.utils.d.ts +23 -18
  22. package/dist/core/headers/coreHeadersFeature.utils.js +23 -18
  23. package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
  24. package/dist/core/row-models/coreRowModelsFeature.utils.cjs +48 -36
  25. package/dist/core/row-models/coreRowModelsFeature.utils.cjs.map +1 -1
  26. package/dist/core/row-models/coreRowModelsFeature.utils.d.cts +48 -36
  27. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +48 -36
  28. package/dist/core/row-models/coreRowModelsFeature.utils.js +48 -36
  29. package/dist/core/row-models/coreRowModelsFeature.utils.js.map +1 -1
  30. package/dist/core/rows/coreRowsFeature.types.d.cts +4 -4
  31. package/dist/core/rows/coreRowsFeature.types.d.ts +4 -4
  32. package/dist/core/rows/coreRowsFeature.utils.cjs +34 -28
  33. package/dist/core/rows/coreRowsFeature.utils.cjs.map +1 -1
  34. package/dist/core/rows/coreRowsFeature.utils.d.cts +34 -28
  35. package/dist/core/rows/coreRowsFeature.utils.d.ts +34 -28
  36. package/dist/core/rows/coreRowsFeature.utils.js +34 -28
  37. package/dist/core/rows/coreRowsFeature.utils.js.map +1 -1
  38. package/dist/core/table/coreTablesFeature.types.d.cts +6 -2
  39. package/dist/core/table/coreTablesFeature.types.d.ts +6 -2
  40. package/dist/core/table/coreTablesFeature.utils.cjs +2 -2
  41. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
  42. package/dist/core/table/coreTablesFeature.utils.d.cts +2 -2
  43. package/dist/core/table/coreTablesFeature.utils.d.ts +2 -2
  44. package/dist/core/table/coreTablesFeature.utils.js +2 -2
  45. package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
  46. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +16 -10
  47. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +16 -10
  48. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +26 -18
  49. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
  50. package/dist/features/column-faceting/columnFacetingFeature.utils.d.cts +26 -18
  51. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +26 -18
  52. package/dist/features/column-faceting/columnFacetingFeature.utils.js +26 -18
  53. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
  54. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +21 -11
  55. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +21 -11
  56. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +39 -28
  57. package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
  58. package/dist/features/column-filtering/columnFilteringFeature.utils.d.cts +39 -28
  59. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +39 -28
  60. package/dist/features/column-filtering/columnFilteringFeature.utils.js +39 -28
  61. package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
  62. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +18 -14
  63. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +18 -14
  64. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +55 -43
  65. package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -1
  66. package/dist/features/column-grouping/columnGroupingFeature.utils.d.cts +55 -43
  67. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +55 -43
  68. package/dist/features/column-grouping/columnGroupingFeature.utils.js +55 -43
  69. package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -1
  70. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +14 -5
  71. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +14 -5
  72. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +30 -23
  73. package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -1
  74. package/dist/features/column-ordering/columnOrderingFeature.utils.d.cts +30 -23
  75. package/dist/features/column-ordering/columnOrderingFeature.utils.d.ts +30 -23
  76. package/dist/features/column-ordering/columnOrderingFeature.utils.js +30 -23
  77. package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -1
  78. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +43 -31
  79. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +43 -31
  80. package/dist/features/column-pinning/columnPinningFeature.utils.cjs +111 -91
  81. package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
  82. package/dist/features/column-pinning/columnPinningFeature.utils.d.cts +111 -91
  83. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +111 -91
  84. package/dist/features/column-pinning/columnPinningFeature.utils.js +111 -91
  85. package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
  86. package/dist/features/column-resizing/columnResizingFeature.types.d.cts +9 -9
  87. package/dist/features/column-resizing/columnResizingFeature.types.d.ts +9 -9
  88. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +29 -20
  89. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
  90. package/dist/features/column-resizing/columnResizingFeature.utils.d.cts +28 -19
  91. package/dist/features/column-resizing/columnResizingFeature.utils.d.ts +28 -19
  92. package/dist/features/column-resizing/columnResizingFeature.utils.js +29 -20
  93. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
  94. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +19 -12
  95. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +19 -12
  96. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +52 -41
  97. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
  98. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +52 -41
  99. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +52 -41
  100. package/dist/features/column-sizing/columnSizingFeature.utils.js +52 -41
  101. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
  102. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +16 -13
  103. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +16 -13
  104. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +54 -42
  105. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
  106. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.cts +54 -42
  107. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +54 -42
  108. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +54 -42
  109. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
  110. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +10 -5
  111. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +10 -5
  112. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +20 -14
  113. package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
  114. package/dist/features/global-filtering/globalFilteringFeature.utils.d.cts +20 -14
  115. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +20 -14
  116. package/dist/features/global-filtering/globalFilteringFeature.utils.js +20 -14
  117. package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
  118. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +16 -15
  119. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +16 -15
  120. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +56 -41
  121. package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -1
  122. package/dist/features/row-expanding/rowExpandingFeature.utils.d.cts +56 -41
  123. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +56 -41
  124. package/dist/features/row-expanding/rowExpandingFeature.utils.js +56 -41
  125. package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -1
  126. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +19 -12
  127. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +19 -12
  128. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +49 -32
  129. package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -1
  130. package/dist/features/row-pagination/rowPaginationFeature.utils.d.cts +49 -32
  131. package/dist/features/row-pagination/rowPaginationFeature.utils.d.ts +49 -32
  132. package/dist/features/row-pagination/rowPaginationFeature.utils.js +49 -32
  133. package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -1
  134. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +12 -8
  135. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +12 -8
  136. package/dist/features/row-pinning/rowPinningFeature.utils.cjs +39 -29
  137. package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -1
  138. package/dist/features/row-pinning/rowPinningFeature.utils.d.cts +39 -29
  139. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +39 -29
  140. package/dist/features/row-pinning/rowPinningFeature.utils.js +39 -29
  141. package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -1
  142. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +30 -24
  143. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +30 -24
  144. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +89 -69
  145. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
  146. package/dist/features/row-selection/rowSelectionFeature.utils.d.cts +89 -69
  147. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +89 -69
  148. package/dist/features/row-selection/rowSelectionFeature.utils.js +89 -69
  149. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
  150. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +10 -8
  151. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +10 -8
  152. package/dist/features/row-sorting/rowSortingFeature.utils.cjs +62 -45
  153. package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
  154. package/dist/features/row-sorting/rowSortingFeature.utils.d.cts +61 -44
  155. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +61 -44
  156. package/dist/features/row-sorting/rowSortingFeature.utils.js +62 -45
  157. package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
  158. package/dist/fns/aggregationFns.cjs +33 -9
  159. package/dist/fns/aggregationFns.cjs.map +1 -1
  160. package/dist/fns/aggregationFns.d.cts +33 -9
  161. package/dist/fns/aggregationFns.d.ts +33 -9
  162. package/dist/fns/aggregationFns.js +33 -9
  163. package/dist/fns/aggregationFns.js.map +1 -1
  164. package/dist/fns/filterFns.cjs +48 -17
  165. package/dist/fns/filterFns.cjs.map +1 -1
  166. package/dist/fns/filterFns.d.cts +42 -15
  167. package/dist/fns/filterFns.d.ts +42 -15
  168. package/dist/fns/filterFns.js +48 -17
  169. package/dist/fns/filterFns.js.map +1 -1
  170. package/dist/helpers/columnHelper.cjs +9 -4
  171. package/dist/helpers/columnHelper.cjs.map +1 -1
  172. package/dist/helpers/columnHelper.d.cts +9 -4
  173. package/dist/helpers/columnHelper.d.ts +9 -4
  174. package/dist/helpers/columnHelper.js +9 -4
  175. package/dist/helpers/columnHelper.js.map +1 -1
  176. package/dist/helpers/tableOptions.cjs.map +1 -1
  177. package/dist/helpers/tableOptions.d.cts +12 -9
  178. package/dist/helpers/tableOptions.d.ts +12 -9
  179. package/dist/helpers/tableOptions.js.map +1 -1
  180. package/dist/types/ColumnDef.d.cts +38 -0
  181. package/dist/types/ColumnDef.d.ts +38 -0
  182. package/dist/types/TableOptions.d.cts +15 -0
  183. package/dist/types/TableOptions.d.ts +15 -0
  184. package/dist/types/TableState.d.cts +12 -0
  185. package/dist/types/TableState.d.ts +12 -0
  186. package/package.json +5 -3
  187. package/skills/column-definitions/SKILL.md +333 -0
  188. package/skills/column-layout/SKILL.md +328 -0
  189. package/skills/column-layout/references/subsystems.md +220 -0
  190. package/skills/customizing-feature-behavior/SKILL.md +416 -0
  191. package/skills/filtering/SKILL.md +357 -0
  192. package/skills/filtering/references/faceting-and-fuzzy.md +191 -0
  193. package/skills/grouping/SKILL.md +448 -0
  194. package/skills/migrate-v8-to-v9/SKILL.md +495 -0
  195. package/skills/pagination/SKILL.md +385 -0
  196. package/skills/row-expanding/SKILL.md +348 -0
  197. package/skills/row-pinning/SKILL.md +269 -0
  198. package/skills/row-selection/SKILL.md +391 -0
  199. package/skills/setup/SKILL.md +400 -0
  200. package/skills/sorting/SKILL.md +344 -0
  201. package/skills/state-management/SKILL.md +388 -0
  202. package/src/core/cells/coreCellsFeature.utils.ts +11 -8
  203. package/src/core/columns/coreColumnsFeature.types.ts +7 -6
  204. package/src/core/columns/coreColumnsFeature.utils.ts +37 -27
  205. package/src/core/headers/coreHeadersFeature.types.ts +6 -4
  206. package/src/core/headers/coreHeadersFeature.utils.ts +23 -18
  207. package/src/core/row-models/coreRowModelsFeature.utils.ts +48 -36
  208. package/src/core/rows/coreRowsFeature.types.ts +4 -4
  209. package/src/core/rows/coreRowsFeature.utils.ts +34 -28
  210. package/src/core/table/coreTablesFeature.types.ts +6 -2
  211. package/src/core/table/coreTablesFeature.utils.ts +2 -2
  212. package/src/features/column-faceting/columnFacetingFeature.types.ts +16 -10
  213. package/src/features/column-faceting/columnFacetingFeature.utils.ts +26 -18
  214. package/src/features/column-filtering/columnFilteringFeature.types.ts +21 -11
  215. package/src/features/column-filtering/columnFilteringFeature.utils.ts +39 -28
  216. package/src/features/column-grouping/columnGroupingFeature.types.ts +18 -14
  217. package/src/features/column-grouping/columnGroupingFeature.utils.ts +55 -43
  218. package/src/features/column-ordering/columnOrderingFeature.types.ts +14 -5
  219. package/src/features/column-ordering/columnOrderingFeature.utils.ts +30 -23
  220. package/src/features/column-pinning/columnPinningFeature.types.ts +43 -31
  221. package/src/features/column-pinning/columnPinningFeature.utils.ts +111 -91
  222. package/src/features/column-resizing/columnResizingFeature.types.ts +9 -9
  223. package/src/features/column-resizing/columnResizingFeature.utils.ts +29 -21
  224. package/src/features/column-sizing/columnSizingFeature.types.ts +19 -12
  225. package/src/features/column-sizing/columnSizingFeature.utils.ts +52 -41
  226. package/src/features/column-visibility/columnVisibilityFeature.types.ts +16 -13
  227. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +54 -42
  228. package/src/features/global-filtering/globalFilteringFeature.types.ts +10 -5
  229. package/src/features/global-filtering/globalFilteringFeature.utils.ts +20 -14
  230. package/src/features/row-expanding/rowExpandingFeature.types.ts +16 -15
  231. package/src/features/row-expanding/rowExpandingFeature.utils.ts +56 -41
  232. package/src/features/row-pagination/rowPaginationFeature.types.ts +19 -12
  233. package/src/features/row-pagination/rowPaginationFeature.utils.ts +49 -32
  234. package/src/features/row-pinning/rowPinningFeature.types.ts +12 -8
  235. package/src/features/row-pinning/rowPinningFeature.utils.ts +39 -29
  236. package/src/features/row-selection/rowSelectionFeature.types.ts +30 -24
  237. package/src/features/row-selection/rowSelectionFeature.utils.ts +89 -69
  238. package/src/features/row-sorting/rowSortingFeature.types.ts +10 -8
  239. package/src/features/row-sorting/rowSortingFeature.utils.ts +62 -45
  240. package/src/fns/aggregationFns.ts +33 -9
  241. package/src/fns/filterFns.ts +48 -17
  242. package/src/helpers/columnHelper.ts +9 -4
  243. package/src/helpers/tableOptions.ts +12 -9
  244. package/src/types/ColumnDef.ts +38 -0
  245. package/src/types/TableOptions.ts +15 -0
  246. package/src/types/TableState.ts +12 -0
@@ -6,24 +6,26 @@ import { Cell } from "../../types/Cell.cjs";
6
6
 
7
7
  //#region src/core/rows/coreRowsFeature.utils.d.ts
8
8
  /**
9
- * Returns value for a row.
9
+ * Reads and caches this row's value for a column.
10
10
  *
11
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
11
+ * The value is produced by the column accessor. Missing columns or display
12
+ * columns without an accessor return `undefined`.
12
13
  *
13
14
  * @example
14
15
  * ```ts
15
- * const value = row_getValue(row)
16
+ * const firstName = row_getValue(row, 'firstName')
16
17
  * ```
17
18
  */
18
19
  declare function row_getValue<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string): unknown;
19
20
  /**
20
- * Returns unique values for a row.
21
+ * Reads and caches the values used by faceting/grouping for a column.
21
22
  *
22
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
23
+ * If the column defines `getUniqueValues`, that result is used. Otherwise the
24
+ * row's accessor value is wrapped in a single-item array.
23
25
  *
24
26
  * @example
25
27
  * ```ts
26
- * const value = row_getUniqueValues(row)
28
+ * const values = row_getUniqueValues(row, 'tags')
27
29
  * ```
28
30
  */
29
31
  declare function row_getUniqueValues<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string): unknown;
@@ -35,84 +37,88 @@ declare function row_getUniqueValues<TFeatures extends TableFeatures, TData exte
35
37
  *
36
38
  * @example
37
39
  * ```ts
38
- * const value = row_renderValue(row)
40
+ * const value = row_renderValue(row, 'firstName')
39
41
  * ```
40
42
  */
41
43
  declare function row_renderValue<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string): any;
42
44
  /**
43
- * Returns leaf rows for a row.
45
+ * Flattens this row's descendant tree into leaf rows.
44
46
  *
45
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
47
+ * The row itself is not included; only nested `subRows` are walked.
46
48
  *
47
49
  * @example
48
50
  * ```ts
49
- * const value = row_getLeafRows(row)
51
+ * const descendants = row_getLeafRows(row)
50
52
  * ```
51
53
  */
52
54
  declare function row_getLeafRows<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Array<Row<TFeatures, TData>>;
53
55
  /**
54
- * Returns parent row for a row.
56
+ * Looks up this row's direct parent, if it has one.
55
57
  *
56
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
58
+ * Parent lookup searches the pre-pagination row model so parent relationships
59
+ * are available even when the parent is not on the current page.
57
60
  *
58
61
  * @example
59
62
  * ```ts
60
- * const value = row_getParentRow(row)
63
+ * const parent = row_getParentRow(row)
61
64
  * ```
62
65
  */
63
66
  declare function row_getParentRow<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Row<TFeatures, TData> | undefined;
64
67
  /**
65
- * Returns parent rows for a row.
68
+ * Collects this row's ancestor chain from root to direct parent.
66
69
  *
67
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
70
+ * The current row is not included. Rows without a parent return an empty array.
68
71
  *
69
72
  * @example
70
73
  * ```ts
71
- * const value = row_getParentRows(row)
74
+ * const ancestors = row_getParentRows(row)
72
75
  * ```
73
76
  */
74
77
  declare function row_getParentRows<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Row<TFeatures, TData>[];
75
78
  /**
76
- * Returns all cells for a row.
79
+ * Constructs one cell for each leaf column in this row.
77
80
  *
78
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
81
+ * The result follows `table.getAllLeafColumns()` order and includes hidden
82
+ * columns; visibility-specific APIs filter this list later.
79
83
  *
80
84
  * @example
81
85
  * ```ts
82
- * const value = row_getAllCells(row)
86
+ * const cells = row_getAllCells(row)
83
87
  * ```
84
88
  */
85
89
  declare function row_getAllCells<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>>;
86
90
  /**
87
- * Returns all cells by column id for a row.
91
+ * Builds a lookup map of this row's cells keyed by column id.
88
92
  *
89
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
93
+ * This is the static implementation behind `row.getAllCellsByColumnId()`.
90
94
  *
91
95
  * @example
92
96
  * ```ts
93
- * const value = row_getAllCellsByColumnId(row)
97
+ * const cellsById = row_getAllCellsByColumnId(row)
94
98
  * ```
95
99
  */
96
100
  declare function row_getAllCellsByColumnId<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Record<string, Cell<TFeatures, TData, unknown>>;
97
101
  /**
98
- * Returns row id for the table.
102
+ * Resolves the stable id for a row.
99
103
  *
100
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
104
+ * `options.getRowId` wins when provided. Otherwise root rows use their index
105
+ * and child rows append their index to the parent id, such as `0.2`.
101
106
  *
102
107
  * @example
103
108
  * ```ts
104
- * const value = table_getRowId(table)
109
+ * const id = table_getRowId(originalRow, table, index, parentRow)
105
110
  * ```
106
111
  */
107
112
  declare function table_getRowId<TFeatures extends TableFeatures, TData extends RowData>(originalRow: TData, table: Table_Internal<TFeatures, TData>, index: number, parent?: Row<TFeatures, TData>): string;
108
113
  /**
109
- * Returns row for the table.
114
+ * Looks up a row by id from the current or full row model.
110
115
  *
111
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
116
+ * By default this searches `table.getRowModel()`. Passing `searchAll` searches
117
+ * the pre-pagination model first, then falls back to the core model.
112
118
  *
113
119
  * @example
114
120
  * ```ts
115
- * const value = table_getRow(table)
121
+ * const row = table_getRow(table, rowId, true)
116
122
  * ```
117
123
  */
118
124
  declare function table_getRow<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>, rowId: string, searchAll?: boolean): Row<TFeatures, TData>;
@@ -6,24 +6,26 @@ import { Cell } from "../../types/Cell.js";
6
6
 
7
7
  //#region src/core/rows/coreRowsFeature.utils.d.ts
8
8
  /**
9
- * Returns value for a row.
9
+ * Reads and caches this row's value for a column.
10
10
  *
11
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
11
+ * The value is produced by the column accessor. Missing columns or display
12
+ * columns without an accessor return `undefined`.
12
13
  *
13
14
  * @example
14
15
  * ```ts
15
- * const value = row_getValue(row)
16
+ * const firstName = row_getValue(row, 'firstName')
16
17
  * ```
17
18
  */
18
19
  declare function row_getValue<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string): unknown;
19
20
  /**
20
- * Returns unique values for a row.
21
+ * Reads and caches the values used by faceting/grouping for a column.
21
22
  *
22
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
23
+ * If the column defines `getUniqueValues`, that result is used. Otherwise the
24
+ * row's accessor value is wrapped in a single-item array.
23
25
  *
24
26
  * @example
25
27
  * ```ts
26
- * const value = row_getUniqueValues(row)
28
+ * const values = row_getUniqueValues(row, 'tags')
27
29
  * ```
28
30
  */
29
31
  declare function row_getUniqueValues<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string): unknown;
@@ -35,84 +37,88 @@ declare function row_getUniqueValues<TFeatures extends TableFeatures, TData exte
35
37
  *
36
38
  * @example
37
39
  * ```ts
38
- * const value = row_renderValue(row)
40
+ * const value = row_renderValue(row, 'firstName')
39
41
  * ```
40
42
  */
41
43
  declare function row_renderValue<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string): any;
42
44
  /**
43
- * Returns leaf rows for a row.
45
+ * Flattens this row's descendant tree into leaf rows.
44
46
  *
45
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
47
+ * The row itself is not included; only nested `subRows` are walked.
46
48
  *
47
49
  * @example
48
50
  * ```ts
49
- * const value = row_getLeafRows(row)
51
+ * const descendants = row_getLeafRows(row)
50
52
  * ```
51
53
  */
52
54
  declare function row_getLeafRows<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Array<Row<TFeatures, TData>>;
53
55
  /**
54
- * Returns parent row for a row.
56
+ * Looks up this row's direct parent, if it has one.
55
57
  *
56
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
58
+ * Parent lookup searches the pre-pagination row model so parent relationships
59
+ * are available even when the parent is not on the current page.
57
60
  *
58
61
  * @example
59
62
  * ```ts
60
- * const value = row_getParentRow(row)
63
+ * const parent = row_getParentRow(row)
61
64
  * ```
62
65
  */
63
66
  declare function row_getParentRow<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Row<TFeatures, TData> | undefined;
64
67
  /**
65
- * Returns parent rows for a row.
68
+ * Collects this row's ancestor chain from root to direct parent.
66
69
  *
67
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
70
+ * The current row is not included. Rows without a parent return an empty array.
68
71
  *
69
72
  * @example
70
73
  * ```ts
71
- * const value = row_getParentRows(row)
74
+ * const ancestors = row_getParentRows(row)
72
75
  * ```
73
76
  */
74
77
  declare function row_getParentRows<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Row<TFeatures, TData>[];
75
78
  /**
76
- * Returns all cells for a row.
79
+ * Constructs one cell for each leaf column in this row.
77
80
  *
78
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
81
+ * The result follows `table.getAllLeafColumns()` order and includes hidden
82
+ * columns; visibility-specific APIs filter this list later.
79
83
  *
80
84
  * @example
81
85
  * ```ts
82
- * const value = row_getAllCells(row)
86
+ * const cells = row_getAllCells(row)
83
87
  * ```
84
88
  */
85
89
  declare function row_getAllCells<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>>;
86
90
  /**
87
- * Returns all cells by column id for a row.
91
+ * Builds a lookup map of this row's cells keyed by column id.
88
92
  *
89
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
93
+ * This is the static implementation behind `row.getAllCellsByColumnId()`.
90
94
  *
91
95
  * @example
92
96
  * ```ts
93
- * const value = row_getAllCellsByColumnId(row)
97
+ * const cellsById = row_getAllCellsByColumnId(row)
94
98
  * ```
95
99
  */
96
100
  declare function row_getAllCellsByColumnId<TFeatures extends TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>): Record<string, Cell<TFeatures, TData, unknown>>;
97
101
  /**
98
- * Returns row id for the table.
102
+ * Resolves the stable id for a row.
99
103
  *
100
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
104
+ * `options.getRowId` wins when provided. Otherwise root rows use their index
105
+ * and child rows append their index to the parent id, such as `0.2`.
101
106
  *
102
107
  * @example
103
108
  * ```ts
104
- * const value = table_getRowId(table)
109
+ * const id = table_getRowId(originalRow, table, index, parentRow)
105
110
  * ```
106
111
  */
107
112
  declare function table_getRowId<TFeatures extends TableFeatures, TData extends RowData>(originalRow: TData, table: Table_Internal<TFeatures, TData>, index: number, parent?: Row<TFeatures, TData>): string;
108
113
  /**
109
- * Returns row for the table.
114
+ * Looks up a row by id from the current or full row model.
110
115
  *
111
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
116
+ * By default this searches `table.getRowModel()`. Passing `searchAll` searches
117
+ * the pre-pagination model first, then falls back to the core model.
112
118
  *
113
119
  * @example
114
120
  * ```ts
115
- * const value = table_getRow(table)
121
+ * const row = table_getRow(table, rowId, true)
116
122
  * ```
117
123
  */
118
124
  declare function table_getRow<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>, rowId: string, searchAll?: boolean): Row<TFeatures, TData>;
@@ -3,13 +3,14 @@ import { constructCell } from "../cells/constructCell.js";
3
3
 
4
4
  //#region src/core/rows/coreRowsFeature.utils.ts
5
5
  /**
6
- * Returns value for a row.
6
+ * Reads and caches this row's value for a column.
7
7
  *
8
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
8
+ * The value is produced by the column accessor. Missing columns or display
9
+ * columns without an accessor return `undefined`.
9
10
  *
10
11
  * @example
11
12
  * ```ts
12
- * const value = row_getValue(row)
13
+ * const firstName = row_getValue(row, 'firstName')
13
14
  * ```
14
15
  */
15
16
  function row_getValue(row, columnId) {
@@ -20,13 +21,14 @@ function row_getValue(row, columnId) {
20
21
  return row._valuesCache[columnId];
21
22
  }
22
23
  /**
23
- * Returns unique values for a row.
24
+ * Reads and caches the values used by faceting/grouping for a column.
24
25
  *
25
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
26
+ * If the column defines `getUniqueValues`, that result is used. Otherwise the
27
+ * row's accessor value is wrapped in a single-item array.
26
28
  *
27
29
  * @example
28
30
  * ```ts
29
- * const value = row_getUniqueValues(row)
31
+ * const values = row_getUniqueValues(row, 'tags')
30
32
  * ```
31
33
  */
32
34
  function row_getUniqueValues(row, columnId) {
@@ -48,46 +50,47 @@ function row_getUniqueValues(row, columnId) {
48
50
  *
49
51
  * @example
50
52
  * ```ts
51
- * const value = row_renderValue(row)
53
+ * const value = row_renderValue(row, 'firstName')
52
54
  * ```
53
55
  */
54
56
  function row_renderValue(row, columnId) {
55
57
  return row.getValue(columnId) ?? row.table.options.renderFallbackValue;
56
58
  }
57
59
  /**
58
- * Returns leaf rows for a row.
60
+ * Flattens this row's descendant tree into leaf rows.
59
61
  *
60
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
62
+ * The row itself is not included; only nested `subRows` are walked.
61
63
  *
62
64
  * @example
63
65
  * ```ts
64
- * const value = row_getLeafRows(row)
66
+ * const descendants = row_getLeafRows(row)
65
67
  * ```
66
68
  */
67
69
  function row_getLeafRows(row) {
68
70
  return flattenBy(row.subRows, (d) => d.subRows);
69
71
  }
70
72
  /**
71
- * Returns parent row for a row.
73
+ * Looks up this row's direct parent, if it has one.
72
74
  *
73
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
75
+ * Parent lookup searches the pre-pagination row model so parent relationships
76
+ * are available even when the parent is not on the current page.
74
77
  *
75
78
  * @example
76
79
  * ```ts
77
- * const value = row_getParentRow(row)
80
+ * const parent = row_getParentRow(row)
78
81
  * ```
79
82
  */
80
83
  function row_getParentRow(row) {
81
84
  return row.parentId ? row.table.getRow(row.parentId, true) : void 0;
82
85
  }
83
86
  /**
84
- * Returns parent rows for a row.
87
+ * Collects this row's ancestor chain from root to direct parent.
85
88
  *
86
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
89
+ * The current row is not included. Rows without a parent return an empty array.
87
90
  *
88
91
  * @example
89
92
  * ```ts
90
- * const value = row_getParentRows(row)
93
+ * const ancestors = row_getParentRows(row)
91
94
  * ```
92
95
  */
93
96
  function row_getParentRows(row) {
@@ -102,13 +105,14 @@ function row_getParentRows(row) {
102
105
  return parentRows.reverse();
103
106
  }
104
107
  /**
105
- * Returns all cells for a row.
108
+ * Constructs one cell for each leaf column in this row.
106
109
  *
107
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
110
+ * The result follows `table.getAllLeafColumns()` order and includes hidden
111
+ * columns; visibility-specific APIs filter this list later.
108
112
  *
109
113
  * @example
110
114
  * ```ts
111
- * const value = row_getAllCells(row)
115
+ * const cells = row_getAllCells(row)
112
116
  * ```
113
117
  */
114
118
  function row_getAllCells(row) {
@@ -118,13 +122,13 @@ function row_getAllCells(row) {
118
122
  return cells;
119
123
  }
120
124
  /**
121
- * Returns all cells by column id for a row.
125
+ * Builds a lookup map of this row's cells keyed by column id.
122
126
  *
123
- * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.
127
+ * This is the static implementation behind `row.getAllCellsByColumnId()`.
124
128
  *
125
129
  * @example
126
130
  * ```ts
127
- * const value = row_getAllCellsByColumnId(row)
131
+ * const cellsById = row_getAllCellsByColumnId(row)
128
132
  * ```
129
133
  */
130
134
  function row_getAllCellsByColumnId(row) {
@@ -137,13 +141,14 @@ function row_getAllCellsByColumnId(row) {
137
141
  return result;
138
142
  }
139
143
  /**
140
- * Returns row id for the table.
144
+ * Resolves the stable id for a row.
141
145
  *
142
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
146
+ * `options.getRowId` wins when provided. Otherwise root rows use their index
147
+ * and child rows append their index to the parent id, such as `0.2`.
143
148
  *
144
149
  * @example
145
150
  * ```ts
146
- * const value = table_getRowId(table)
151
+ * const id = table_getRowId(originalRow, table, index, parentRow)
147
152
  * ```
148
153
  */
149
154
  function table_getRowId(originalRow, table, index, parent) {
@@ -151,13 +156,14 @@ function table_getRowId(originalRow, table, index, parent) {
151
156
  return ((_table$options$getRow = (_table$options = table.options).getRowId) === null || _table$options$getRow === void 0 ? void 0 : _table$options$getRow.call(_table$options, originalRow, index, parent)) ?? `${parent ? [parent.id, index].join(".") : index}`;
152
157
  }
153
158
  /**
154
- * Returns row for the table.
159
+ * Looks up a row by id from the current or full row model.
155
160
  *
156
- * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.
161
+ * By default this searches `table.getRowModel()`. Passing `searchAll` searches
162
+ * the pre-pagination model first, then falls back to the core model.
157
163
  *
158
164
  * @example
159
165
  * ```ts
160
- * const value = table_getRow(table)
166
+ * const row = table_getRow(table, rowId, true)
161
167
  * ```
162
168
  */
163
169
  function table_getRow(table, rowId, searchAll) {
@@ -1 +1 @@
1
- {"version":3,"file":"coreRowsFeature.utils.js","names":[],"sources":["../../../src/core/rows/coreRowsFeature.utils.ts"],"sourcesContent":["import { flattenBy } from '../../utils'\nimport { constructCell } from '../cells/constructCell'\nimport type { Table_Internal } from '../../types/Table'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Row } from '../../types/Row'\nimport type { Cell } from '../../types/Cell'\n\n/**\n * Returns value for a row.\n *\n * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.\n *\n * @example\n * ```ts\n * const value = row_getValue(row)\n * ```\n */\nexport function row_getValue<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>, columnId: string) {\n if (row._valuesCache.hasOwnProperty(columnId)) {\n return row._valuesCache[columnId]\n }\n\n const column = row.table.getColumn(columnId)\n\n if (!column?.accessorFn) {\n return undefined\n }\n\n row._valuesCache[columnId] = column.accessorFn(row.original, row.index)\n\n return row._valuesCache[columnId]\n}\n\n/**\n * Returns unique values for a row.\n *\n * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.\n *\n * @example\n * ```ts\n * const value = row_getUniqueValues(row)\n * ```\n */\nexport function row_getUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>, columnId: string) {\n if (row._uniqueValuesCache.hasOwnProperty(columnId)) {\n return row._uniqueValuesCache[columnId]\n }\n\n const column = row.table.getColumn(columnId)\n\n if (!column?.accessorFn) {\n return undefined\n }\n\n if (!column.columnDef.getUniqueValues) {\n row._uniqueValuesCache[columnId] = [row.getValue(columnId)]\n return row._uniqueValuesCache[columnId]\n }\n\n row._uniqueValuesCache[columnId] = column.columnDef.getUniqueValues(\n row.original,\n row.index,\n )\n\n return row._uniqueValuesCache[columnId]\n}\n\n/**\n * Returns a renderable row value for a column.\n *\n * If the accessor value is nullish, the table's `renderFallbackValue` is used\n * instead.\n *\n * @example\n * ```ts\n * const value = row_renderValue(row)\n * ```\n */\nexport function row_renderValue<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>, columnId: string) {\n return row.getValue(columnId) ?? row.table.options.renderFallbackValue\n}\n\n/**\n * Returns leaf rows for a row.\n *\n * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.\n *\n * @example\n * ```ts\n * const value = row_getLeafRows(row)\n * ```\n */\nexport function row_getLeafRows<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>): Array<Row<TFeatures, TData>> {\n return flattenBy(row.subRows, (d) => d.subRows)\n}\n\n/**\n * Returns parent row for a row.\n *\n * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.\n *\n * @example\n * ```ts\n * const value = row_getParentRow(row)\n * ```\n */\nexport function row_getParentRow<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n return row.parentId ? row.table.getRow(row.parentId, true) : undefined\n}\n\n/**\n * Returns parent rows for a row.\n *\n * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.\n *\n * @example\n * ```ts\n * const value = row_getParentRows(row)\n * ```\n */\nexport function row_getParentRows<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n const parentRows: Array<Row<TFeatures, TData>> = []\n let currentRow = row\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n while (true) {\n const parentRow = currentRow.getParentRow()\n if (!parentRow) break\n parentRows.push(parentRow)\n currentRow = parentRow\n }\n return parentRows.reverse()\n}\n\n/**\n * Returns all cells for a row.\n *\n * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.\n *\n * @example\n * ```ts\n * const value = row_getAllCells(row)\n * ```\n */\nexport function row_getAllCells<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>> {\n const columns = row.table.getAllLeafColumns()\n const cells: Array<Cell<TFeatures, TData, unknown>> = new Array(\n columns.length,\n )\n for (let i = 0; i < columns.length; i++) {\n cells[i] = constructCell(columns[i]!, row, row.table)\n }\n return cells\n}\n\n/**\n * Returns all cells by column id for a row.\n *\n * This is the static implementation behind the matching row instance API and may read row caches or table state atoms.\n *\n * @example\n * ```ts\n * const value = row_getAllCellsByColumnId(row)\n * ```\n */\nexport function row_getAllCellsByColumnId<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n const result: Record<string, Cell<TFeatures, TData, unknown>> = {}\n const cells = row.getAllCells()\n for (let i = 0; i < cells.length; i++) {\n const cell = cells[i]!\n result[cell.column.id] = cell\n }\n return result\n}\n\n/**\n * Returns row id for the table.\n *\n * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.\n *\n * @example\n * ```ts\n * const value = table_getRowId(table)\n * ```\n */\nexport function table_getRowId<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n originalRow: TData,\n table: Table_Internal<TFeatures, TData>,\n index: number,\n parent?: Row<TFeatures, TData>,\n) {\n return (\n table.options.getRowId?.(originalRow, index, parent) ??\n `${parent ? [parent.id, index].join('.') : index}`\n )\n}\n\n/**\n * Returns row for the table.\n *\n * This reads the relevant table atoms, options, and row-model cache to derive the current table-level value.\n *\n * @example\n * ```ts\n * const value = table_getRow(table)\n * ```\n */\nexport function table_getRow<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n rowId: string,\n searchAll?: boolean,\n): Row<TFeatures, TData> {\n // TODO - simplify this across different row models\n let row = (searchAll ? table.getPrePaginatedRowModel() : table.getRowModel())\n .rowsById[rowId]\n\n if (!row) {\n row = table.getCoreRowModel().rowsById[rowId]\n if (!row) {\n if (process.env.NODE_ENV === 'development') {\n throw new Error(`getRow could not find row with ID: ${rowId}`)\n }\n throw new Error()\n }\n }\n\n return row\n}\n"],"mappings":";;;;;;;;;;;;;;AAkBA,SAAgB,aAGd,KAA4B,UAAkB;CAC9C,IAAI,IAAI,aAAa,eAAe,SAAS,EAC3C,OAAO,IAAI,aAAa;CAG1B,MAAM,SAAS,IAAI,MAAM,UAAU,SAAS;CAE5C,IAAI,kDAAC,OAAQ,aACX;CAGF,IAAI,aAAa,YAAY,OAAO,WAAW,IAAI,UAAU,IAAI,MAAM;CAEvE,OAAO,IAAI,aAAa;;;;;;;;;;;;AAa1B,SAAgB,oBAGd,KAA4B,UAAkB;CAC9C,IAAI,IAAI,mBAAmB,eAAe,SAAS,EACjD,OAAO,IAAI,mBAAmB;CAGhC,MAAM,SAAS,IAAI,MAAM,UAAU,SAAS;CAE5C,IAAI,kDAAC,OAAQ,aACX;CAGF,IAAI,CAAC,OAAO,UAAU,iBAAiB;EACrC,IAAI,mBAAmB,YAAY,CAAC,IAAI,SAAS,SAAS,CAAC;EAC3D,OAAO,IAAI,mBAAmB;;CAGhC,IAAI,mBAAmB,YAAY,OAAO,UAAU,gBAClD,IAAI,UACJ,IAAI,MACL;CAED,OAAO,IAAI,mBAAmB;;;;;;;;;;;;;AAchC,SAAgB,gBAGd,KAA4B,UAAkB;CAC9C,OAAO,IAAI,SAAS,SAAS,IAAI,IAAI,MAAM,QAAQ;;;;;;;;;;;;AAarD,SAAgB,gBAGd,KAA0D;CAC1D,OAAO,UAAU,IAAI,UAAU,MAAM,EAAE,QAAQ;;;;;;;;;;;;AAajD,SAAgB,iBAGd,KAA4B;CAC5B,OAAO,IAAI,WAAW,IAAI,MAAM,OAAO,IAAI,UAAU,KAAK,GAAG;;;;;;;;;;;;AAa/D,SAAgB,kBAGd,KAA4B;CAC5B,MAAM,aAA2C,EAAE;CACnD,IAAI,aAAa;CAEjB,OAAO,MAAM;EACX,MAAM,YAAY,WAAW,cAAc;EAC3C,IAAI,CAAC,WAAW;EAChB,WAAW,KAAK,UAAU;EAC1B,aAAa;;CAEf,OAAO,WAAW,SAAS;;;;;;;;;;;;AAa7B,SAAgB,gBAGd,KAAoE;CACpE,MAAM,UAAU,IAAI,MAAM,mBAAmB;CAC7C,MAAM,QAAgD,IAAI,MACxD,QAAQ,OACT;CACD,KAAK,IAAI,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAClC,MAAM,KAAK,cAAc,QAAQ,IAAK,KAAK,IAAI,MAAM;CAEvD,OAAO;;;;;;;;;;;;AAaT,SAAgB,0BAGd,KAA4B;CAC5B,MAAM,SAA0D,EAAE;CAClE,MAAM,QAAQ,IAAI,aAAa;CAC/B,KAAK,IAAI,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;EACrC,MAAM,OAAO,MAAM;EACnB,OAAO,KAAK,OAAO,MAAM;;CAE3B,OAAO;;;;;;;;;;;;AAaT,SAAgB,eAId,aACA,OACA,OACA,QACA;;CACA,mDACE,MAAM,SAAQ,6GAAW,aAAa,OAAO,OAAO,KACpD,GAAG,SAAS,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,IAAI,GAAG;;;;;;;;;;;;AAc/C,SAAgB,aAId,OACA,OACA,WACuB;CAEvB,IAAI,OAAO,YAAY,MAAM,yBAAyB,GAAG,MAAM,aAAa,EACzE,SAAS;CAEZ,IAAI,CAAC,KAAK;EACR,MAAM,MAAM,iBAAiB,CAAC,SAAS;EACvC,IAAI,CAAC,KAAK;GACR,IAAI,QAAQ,IAAI,aAAa,eAC3B,MAAM,IAAI,MAAM,sCAAsC,QAAQ;GAEhE,MAAM,IAAI,OAAO;;;CAIrB,OAAO"}
1
+ {"version":3,"file":"coreRowsFeature.utils.js","names":[],"sources":["../../../src/core/rows/coreRowsFeature.utils.ts"],"sourcesContent":["import { flattenBy } from '../../utils'\nimport { constructCell } from '../cells/constructCell'\nimport type { Table_Internal } from '../../types/Table'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Row } from '../../types/Row'\nimport type { Cell } from '../../types/Cell'\n\n/**\n * Reads and caches this row's value for a column.\n *\n * The value is produced by the column accessor. Missing columns or display\n * columns without an accessor return `undefined`.\n *\n * @example\n * ```ts\n * const firstName = row_getValue(row, 'firstName')\n * ```\n */\nexport function row_getValue<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>, columnId: string) {\n if (row._valuesCache.hasOwnProperty(columnId)) {\n return row._valuesCache[columnId]\n }\n\n const column = row.table.getColumn(columnId)\n\n if (!column?.accessorFn) {\n return undefined\n }\n\n row._valuesCache[columnId] = column.accessorFn(row.original, row.index)\n\n return row._valuesCache[columnId]\n}\n\n/**\n * Reads and caches the values used by faceting/grouping for a column.\n *\n * If the column defines `getUniqueValues`, that result is used. Otherwise the\n * row's accessor value is wrapped in a single-item array.\n *\n * @example\n * ```ts\n * const values = row_getUniqueValues(row, 'tags')\n * ```\n */\nexport function row_getUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>, columnId: string) {\n if (row._uniqueValuesCache.hasOwnProperty(columnId)) {\n return row._uniqueValuesCache[columnId]\n }\n\n const column = row.table.getColumn(columnId)\n\n if (!column?.accessorFn) {\n return undefined\n }\n\n if (!column.columnDef.getUniqueValues) {\n row._uniqueValuesCache[columnId] = [row.getValue(columnId)]\n return row._uniqueValuesCache[columnId]\n }\n\n row._uniqueValuesCache[columnId] = column.columnDef.getUniqueValues(\n row.original,\n row.index,\n )\n\n return row._uniqueValuesCache[columnId]\n}\n\n/**\n * Returns a renderable row value for a column.\n *\n * If the accessor value is nullish, the table's `renderFallbackValue` is used\n * instead.\n *\n * @example\n * ```ts\n * const value = row_renderValue(row, 'firstName')\n * ```\n */\nexport function row_renderValue<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>, columnId: string) {\n return row.getValue(columnId) ?? row.table.options.renderFallbackValue\n}\n\n/**\n * Flattens this row's descendant tree into leaf rows.\n *\n * The row itself is not included; only nested `subRows` are walked.\n *\n * @example\n * ```ts\n * const descendants = row_getLeafRows(row)\n * ```\n */\nexport function row_getLeafRows<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>): Array<Row<TFeatures, TData>> {\n return flattenBy(row.subRows, (d) => d.subRows)\n}\n\n/**\n * Looks up this row's direct parent, if it has one.\n *\n * Parent lookup searches the pre-pagination row model so parent relationships\n * are available even when the parent is not on the current page.\n *\n * @example\n * ```ts\n * const parent = row_getParentRow(row)\n * ```\n */\nexport function row_getParentRow<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n return row.parentId ? row.table.getRow(row.parentId, true) : undefined\n}\n\n/**\n * Collects this row's ancestor chain from root to direct parent.\n *\n * The current row is not included. Rows without a parent return an empty array.\n *\n * @example\n * ```ts\n * const ancestors = row_getParentRows(row)\n * ```\n */\nexport function row_getParentRows<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n const parentRows: Array<Row<TFeatures, TData>> = []\n let currentRow = row\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\n while (true) {\n const parentRow = currentRow.getParentRow()\n if (!parentRow) break\n parentRows.push(parentRow)\n currentRow = parentRow\n }\n return parentRows.reverse()\n}\n\n/**\n * Constructs one cell for each leaf column in this row.\n *\n * The result follows `table.getAllLeafColumns()` order and includes hidden\n * columns; visibility-specific APIs filter this list later.\n *\n * @example\n * ```ts\n * const cells = row_getAllCells(row)\n * ```\n */\nexport function row_getAllCells<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>> {\n const columns = row.table.getAllLeafColumns()\n const cells: Array<Cell<TFeatures, TData, unknown>> = new Array(\n columns.length,\n )\n for (let i = 0; i < columns.length; i++) {\n cells[i] = constructCell(columns[i]!, row, row.table)\n }\n return cells\n}\n\n/**\n * Builds a lookup map of this row's cells keyed by column id.\n *\n * This is the static implementation behind `row.getAllCellsByColumnId()`.\n *\n * @example\n * ```ts\n * const cellsById = row_getAllCellsByColumnId(row)\n * ```\n */\nexport function row_getAllCellsByColumnId<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n const result: Record<string, Cell<TFeatures, TData, unknown>> = {}\n const cells = row.getAllCells()\n for (let i = 0; i < cells.length; i++) {\n const cell = cells[i]!\n result[cell.column.id] = cell\n }\n return result\n}\n\n/**\n * Resolves the stable id for a row.\n *\n * `options.getRowId` wins when provided. Otherwise root rows use their index\n * and child rows append their index to the parent id, such as `0.2`.\n *\n * @example\n * ```ts\n * const id = table_getRowId(originalRow, table, index, parentRow)\n * ```\n */\nexport function table_getRowId<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n originalRow: TData,\n table: Table_Internal<TFeatures, TData>,\n index: number,\n parent?: Row<TFeatures, TData>,\n) {\n return (\n table.options.getRowId?.(originalRow, index, parent) ??\n `${parent ? [parent.id, index].join('.') : index}`\n )\n}\n\n/**\n * Looks up a row by id from the current or full row model.\n *\n * By default this searches `table.getRowModel()`. Passing `searchAll` searches\n * the pre-pagination model first, then falls back to the core model.\n *\n * @example\n * ```ts\n * const row = table_getRow(table, rowId, true)\n * ```\n */\nexport function table_getRow<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n rowId: string,\n searchAll?: boolean,\n): Row<TFeatures, TData> {\n // TODO - simplify this across different row models\n let row = (searchAll ? table.getPrePaginatedRowModel() : table.getRowModel())\n .rowsById[rowId]\n\n if (!row) {\n row = table.getCoreRowModel().rowsById[rowId]\n if (!row) {\n if (process.env.NODE_ENV === 'development') {\n throw new Error(`getRow could not find row with ID: ${rowId}`)\n }\n throw new Error()\n }\n }\n\n return row\n}\n"],"mappings":";;;;;;;;;;;;;;;AAmBA,SAAgB,aAGd,KAA4B,UAAkB;CAC9C,IAAI,IAAI,aAAa,eAAe,SAAS,EAC3C,OAAO,IAAI,aAAa;CAG1B,MAAM,SAAS,IAAI,MAAM,UAAU,SAAS;CAE5C,IAAI,kDAAC,OAAQ,aACX;CAGF,IAAI,aAAa,YAAY,OAAO,WAAW,IAAI,UAAU,IAAI,MAAM;CAEvE,OAAO,IAAI,aAAa;;;;;;;;;;;;;AAc1B,SAAgB,oBAGd,KAA4B,UAAkB;CAC9C,IAAI,IAAI,mBAAmB,eAAe,SAAS,EACjD,OAAO,IAAI,mBAAmB;CAGhC,MAAM,SAAS,IAAI,MAAM,UAAU,SAAS;CAE5C,IAAI,kDAAC,OAAQ,aACX;CAGF,IAAI,CAAC,OAAO,UAAU,iBAAiB;EACrC,IAAI,mBAAmB,YAAY,CAAC,IAAI,SAAS,SAAS,CAAC;EAC3D,OAAO,IAAI,mBAAmB;;CAGhC,IAAI,mBAAmB,YAAY,OAAO,UAAU,gBAClD,IAAI,UACJ,IAAI,MACL;CAED,OAAO,IAAI,mBAAmB;;;;;;;;;;;;;AAchC,SAAgB,gBAGd,KAA4B,UAAkB;CAC9C,OAAO,IAAI,SAAS,SAAS,IAAI,IAAI,MAAM,QAAQ;;;;;;;;;;;;AAarD,SAAgB,gBAGd,KAA0D;CAC1D,OAAO,UAAU,IAAI,UAAU,MAAM,EAAE,QAAQ;;;;;;;;;;;;;AAcjD,SAAgB,iBAGd,KAA4B;CAC5B,OAAO,IAAI,WAAW,IAAI,MAAM,OAAO,IAAI,UAAU,KAAK,GAAG;;;;;;;;;;;;AAa/D,SAAgB,kBAGd,KAA4B;CAC5B,MAAM,aAA2C,EAAE;CACnD,IAAI,aAAa;CAEjB,OAAO,MAAM;EACX,MAAM,YAAY,WAAW,cAAc;EAC3C,IAAI,CAAC,WAAW;EAChB,WAAW,KAAK,UAAU;EAC1B,aAAa;;CAEf,OAAO,WAAW,SAAS;;;;;;;;;;;;;AAc7B,SAAgB,gBAGd,KAAoE;CACpE,MAAM,UAAU,IAAI,MAAM,mBAAmB;CAC7C,MAAM,QAAgD,IAAI,MACxD,QAAQ,OACT;CACD,KAAK,IAAI,IAAI,GAAG,IAAI,QAAQ,QAAQ,KAClC,MAAM,KAAK,cAAc,QAAQ,IAAK,KAAK,IAAI,MAAM;CAEvD,OAAO;;;;;;;;;;;;AAaT,SAAgB,0BAGd,KAA4B;CAC5B,MAAM,SAA0D,EAAE;CAClE,MAAM,QAAQ,IAAI,aAAa;CAC/B,KAAK,IAAI,IAAI,GAAG,IAAI,MAAM,QAAQ,KAAK;EACrC,MAAM,OAAO,MAAM;EACnB,OAAO,KAAK,OAAO,MAAM;;CAE3B,OAAO;;;;;;;;;;;;;AAcT,SAAgB,eAId,aACA,OACA,OACA,QACA;;CACA,mDACE,MAAM,SAAQ,6GAAW,aAAa,OAAO,OAAO,KACpD,GAAG,SAAS,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,IAAI,GAAG;;;;;;;;;;;;;AAe/C,SAAgB,aAId,OACA,OACA,WACuB;CAEvB,IAAI,OAAO,YAAY,MAAM,yBAAyB,GAAG,MAAM,aAAa,EACzE,SAAS;CAEZ,IAAI,CAAC,KAAK;EACR,MAAM,MAAM,iBAAiB,CAAC,SAAS;EACvC,IAAI,CAAC,KAAK;GACR,IAAI,QAAQ,IAAI,aAAa,eAC3B,MAAM,IAAI,MAAM,sCAAsC,QAAQ;GAEhE,MAAM,IAAI,OAAO;;;CAIrB,OAAO"}
@@ -44,11 +44,15 @@ type Atoms_All = { [K in keyof TableState_All]?: ReadonlyAtom<TableState_All[K]>
44
44
  type ExternalAtoms_All = Partial<{ [K in keyof TableState_All]: Atom<TableState_All[K]> }>;
45
45
  interface TableOptions_Table<TFeatures extends TableFeatures, TData extends RowData> {
46
46
  /**
47
- * The features that you want to enable for the table.
47
+ * The feature modules registered on this table instance.
48
+ *
49
+ * Feature registration controls which state slices, options, and prototype
50
+ * APIs are available.
48
51
  */
49
52
  readonly _features: TFeatures;
50
53
  /**
51
- * The row model options that you want to enable for the table.
54
+ * Row model factories used by features such as filtering, grouping, sorting,
55
+ * expansion, and pagination.
52
56
  */
53
57
  readonly _rowModels?: CreateRowModels_All<TFeatures, TData>;
54
58
  /**
@@ -44,11 +44,15 @@ type Atoms_All = { [K in keyof TableState_All]?: ReadonlyAtom<TableState_All[K]>
44
44
  type ExternalAtoms_All = Partial<{ [K in keyof TableState_All]: Atom<TableState_All[K]> }>;
45
45
  interface TableOptions_Table<TFeatures extends TableFeatures, TData extends RowData> {
46
46
  /**
47
- * The features that you want to enable for the table.
47
+ * The feature modules registered on this table instance.
48
+ *
49
+ * Feature registration controls which state slices, options, and prototype
50
+ * APIs are available.
48
51
  */
49
52
  readonly _features: TFeatures;
50
53
  /**
51
- * The row model options that you want to enable for the table.
54
+ * Row model factories used by features such as filtering, grouping, sorting,
55
+ * expansion, and pagination.
52
56
  */
53
57
  readonly _rowModels?: CreateRowModels_All<TFeatures, TData>;
54
58
  /**
@@ -9,7 +9,7 @@ const require_utils = require('../../utils.cjs');
9
9
  *
10
10
  * @example
11
11
  * ```ts
12
- * const value = table_syncExternalStateToBaseAtoms(table)
12
+ * table_syncExternalStateToBaseAtoms(table)
13
13
  * ```
14
14
  */
15
15
  function table_syncExternalStateToBaseAtoms(table) {
@@ -53,7 +53,7 @@ function table_reset(table) {
53
53
  *
54
54
  * @example
55
55
  * ```ts
56
- * const value = table_mergeOptions(table)
56
+ * const options = table_mergeOptions(table, nextOptions)
57
57
  * ```
58
58
  */
59
59
  function table_mergeOptions(table, newOptions) {
@@ -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\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 const keys = Object.keys(snap) as Array<keyof typeof snap>\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]!\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,MAAM,OAAO,OAAO,KAAK,KAAK;EAC9B,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;GACpC,MAAM,MAAM,KAAK;GAChB,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"}
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 * 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 const keys = Object.keys(snap) as Array<keyof typeof snap>\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]!\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 options = table_mergeOptions(table, nextOptions)\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,MAAM,OAAO,OAAO,KAAK,KAAK;EAC9B,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;GACpC,MAAM,MAAM,KAAK;GAChB,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"}
@@ -12,7 +12,7 @@ import { Table_Internal } from "../../types/Table.cjs";
12
12
  *
13
13
  * @example
14
14
  * ```ts
15
- * const value = table_syncExternalStateToBaseAtoms(table)
15
+ * table_syncExternalStateToBaseAtoms(table)
16
16
  * ```
17
17
  */
18
18
  declare function table_syncExternalStateToBaseAtoms<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>): void;
@@ -36,7 +36,7 @@ declare function table_reset<TFeatures extends TableFeatures, TData extends RowD
36
36
  *
37
37
  * @example
38
38
  * ```ts
39
- * const value = table_mergeOptions(table)
39
+ * const options = table_mergeOptions(table, nextOptions)
40
40
  * ```
41
41
  */
42
42
  declare function table_mergeOptions<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>, newOptions: TableOptions<TFeatures, TData>): TableOptions<TFeatures, TData>;
@@ -12,7 +12,7 @@ import { Table_Internal } from "../../types/Table.js";
12
12
  *
13
13
  * @example
14
14
  * ```ts
15
- * const value = table_syncExternalStateToBaseAtoms(table)
15
+ * table_syncExternalStateToBaseAtoms(table)
16
16
  * ```
17
17
  */
18
18
  declare function table_syncExternalStateToBaseAtoms<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>): void;
@@ -36,7 +36,7 @@ declare function table_reset<TFeatures extends TableFeatures, TData extends RowD
36
36
  *
37
37
  * @example
38
38
  * ```ts
39
- * const value = table_mergeOptions(table)
39
+ * const options = table_mergeOptions(table, nextOptions)
40
40
  * ```
41
41
  */
42
42
  declare function table_mergeOptions<TFeatures extends TableFeatures, TData extends RowData>(table: Table_Internal<TFeatures, TData>, newOptions: TableOptions<TFeatures, TData>): TableOptions<TFeatures, TData>;