@tanstack/table-core 9.0.0-beta.55 → 9.0.0-beta.56

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 (82) hide show
  1. package/dist/core/cells/constructCell.d.ts +2 -2
  2. package/dist/core/cells/constructCell.js +2 -0
  3. package/dist/core/cells/coreCellsFeature.types.d.ts +2 -2
  4. package/dist/core/cells/coreCellsFeature.utils.d.ts +2 -2
  5. package/dist/core/columns/constructColumn.js +2 -2
  6. package/dist/core/headers/buildHeaderGroups.js +2 -0
  7. package/dist/core/headers/constructHeader.js +2 -0
  8. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +4 -4
  9. package/dist/core/row-models/coreRowModelsFeature.utils.d.ts +1 -1
  10. package/dist/core/row-models/createCoreRowModel.d.ts +1 -1
  11. package/dist/core/rows/constructRow.d.ts +1 -1
  12. package/dist/core/rows/constructRow.js +2 -2
  13. package/dist/core/rows/coreRowsFeature.types.d.ts +2 -2
  14. package/dist/core/rows/coreRowsFeature.utils.d.ts +4 -4
  15. package/dist/core/rows/coreRowsFeature.utils.js +4 -3
  16. package/dist/core/table/constructTable.js +19 -1
  17. package/dist/core/table/coreTablesFeature.types.d.ts +21 -1
  18. package/dist/features/column-faceting/columnFacetingFeature.utils.d.ts +1 -1
  19. package/dist/features/column-faceting/createFacetedRowModel.d.ts +1 -1
  20. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +1 -1
  21. package/dist/features/column-filtering/columnFilteringFeature.utils.d.ts +1 -1
  22. package/dist/features/column-filtering/columnFilteringFeature.utils.js +9 -2
  23. package/dist/features/column-filtering/createFilteredRowModel.d.ts +1 -1
  24. package/dist/features/column-grouping/columnGroupingFeature.utils.d.ts +3 -3
  25. package/dist/features/column-grouping/createGroupedRowModel.d.ts +1 -1
  26. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +1 -1
  27. package/dist/features/column-pinning/columnPinningFeature.utils.d.ts +3 -3
  28. package/dist/features/column-resizing/columnResizingFeature.utils.js +0 -1
  29. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +1 -1
  30. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +1 -1
  31. package/dist/features/column-visibility/columnVisibilityFeature.utils.d.ts +3 -3
  32. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +1 -1
  33. package/dist/features/global-filtering/globalFilteringFeature.utils.d.ts +1 -1
  34. package/dist/features/row-aggregation/rowAggregationFeature.types.d.ts +2 -2
  35. package/dist/features/row-aggregation/rowAggregationFeature.utils.d.ts +2 -2
  36. package/dist/features/row-expanding/createExpandedRowModel.d.ts +1 -1
  37. package/dist/features/row-expanding/createExpandedRowModel.js +3 -2
  38. package/dist/features/row-expanding/rowExpandingFeature.utils.d.ts +2 -5
  39. package/dist/features/row-expanding/rowExpandingFeature.utils.js +1 -5
  40. package/dist/features/row-pagination/createPaginatedRowModel.d.ts +1 -1
  41. package/dist/features/row-pinning/rowPinningFeature.utils.d.ts +1 -1
  42. package/dist/features/row-selection/rowSelectionFeature.utils.d.ts +2 -3
  43. package/dist/features/row-selection/rowSelectionFeature.utils.js +1 -3
  44. package/dist/features/row-sorting/createSortedRowModel.d.ts +1 -1
  45. package/dist/features/row-sorting/rowSortingFeature.utils.d.ts +2 -3
  46. package/dist/features/row-sorting/rowSortingFeature.utils.js +2 -4
  47. package/dist/index.d.ts +20 -20
  48. package/dist/types/Cell.d.ts +1 -1
  49. package/dist/types/Column.d.ts +7 -7
  50. package/dist/types/ColumnDef.d.ts +4 -4
  51. package/dist/types/Header.d.ts +1 -1
  52. package/dist/types/Row.d.ts +4 -4
  53. package/dist/types/RowModel.d.ts +4 -4
  54. package/dist/types/Table.d.ts +12 -12
  55. package/dist/types/TableFeatures.d.ts +40 -5
  56. package/dist/types/TableOptions.d.ts +12 -12
  57. package/dist/types/TableState.d.ts +8 -8
  58. package/dist/types/type-utils.d.ts +1 -1
  59. package/dist/worker/createWorkerRowModel.d.ts +1 -1
  60. package/package.json +1 -1
  61. package/skills/aggregation/SKILL.md +1 -1
  62. package/skills/api-not-found/SKILL.md +1 -1
  63. package/skills/client-vs-server/SKILL.md +1 -1
  64. package/skills/column-faceting/SKILL.md +1 -1
  65. package/skills/column-filtering/SKILL.md +1 -1
  66. package/skills/column-ordering/SKILL.md +1 -1
  67. package/skills/column-pinning/SKILL.md +1 -1
  68. package/skills/column-resizing/SKILL.md +1 -1
  69. package/skills/column-sizing/SKILL.md +1 -1
  70. package/skills/column-visibility/SKILL.md +1 -1
  71. package/skills/core/SKILL.md +1 -1
  72. package/skills/custom-features/SKILL.md +1 -1
  73. package/skills/expanding/SKILL.md +1 -1
  74. package/skills/global-filtering/SKILL.md +1 -1
  75. package/skills/grouping/SKILL.md +1 -1
  76. package/skills/migrate-v8-to-v9/SKILL.md +1 -1
  77. package/skills/pagination/SKILL.md +1 -1
  78. package/skills/row-pinning/SKILL.md +1 -1
  79. package/skills/row-selection/SKILL.md +1 -1
  80. package/skills/sorting/SKILL.md +1 -1
  81. package/skills/table-features/SKILL.md +1 -1
  82. package/skills/typescript/SKILL.md +1 -1
@@ -1,8 +1,8 @@
1
1
  import { CellData, RowData } from "../../types/type-utils.js";
2
- import { Cell } from "../../types/Cell.js";
3
- import { Row } from "../../types/Row.js";
4
2
  import { Table } from "../../types/Table.js";
5
3
  import { Column } from "../../types/Column.js";
4
+ import { Row } from "../../types/Row.js";
5
+ import { Cell } from "../../types/Cell.js";
6
6
  import { TableFeatures } from "../../types/TableFeatures.js";
7
7
 
8
8
  //#region src/core/cells/constructCell.d.ts
@@ -22,6 +22,8 @@ function constructCell(column, row, table) {
22
22
  cell.column = column;
23
23
  cell.id = `${row.id}_${column.id}`;
24
24
  cell.row = row;
25
+ const initFns = table._cellInstanceInitFns;
26
+ for (let i = 0; i < initFns.length; i++) initFns[i](cell);
25
27
  return cell;
26
28
  }
27
29
 
@@ -1,8 +1,8 @@
1
1
  import { CellData, Getter, RowData } from "../../types/type-utils.js";
2
- import { Cell } from "../../types/Cell.js";
3
- import { Row } from "../../types/Row.js";
4
2
  import { Table } from "../../types/Table.js";
5
3
  import { Column } from "../../types/Column.js";
4
+ import { Row } from "../../types/Row.js";
5
+ import { Cell } from "../../types/Cell.js";
6
6
  import { TableFeatures } from "../../types/TableFeatures.js";
7
7
 
8
8
  //#region src/core/cells/coreCellsFeature.types.d.ts
@@ -1,8 +1,8 @@
1
1
  import { CellData, NoInfer, RowData } from "../../types/type-utils.js";
2
- import { Cell } from "../../types/Cell.js";
3
- import { Row } from "../../types/Row.js";
4
2
  import { Table } from "../../types/Table.js";
5
3
  import { Column } from "../../types/Column.js";
4
+ import { Row } from "../../types/Row.js";
5
+ import { Cell } from "../../types/Cell.js";
6
6
  import { TableFeatures } from "../../types/TableFeatures.js";
7
7
  //#region src/core/cells/coreCellsFeature.utils.d.ts
8
8
  /**
@@ -50,8 +50,8 @@ function constructColumn(table, columnDef, depth, parent) {
50
50
  column.depth = depth;
51
51
  column.id = `${String(id)}`;
52
52
  column.parent = parent;
53
- const features = Object.values(table._features);
54
- for (let i = 0; i < features.length; i++) features[i].initColumnInstanceData?.(column);
53
+ const initFns = table._columnInstanceInitFns;
54
+ for (let i = 0; i < initFns.length; i++) initFns[i](column);
55
55
  return column;
56
56
  }
57
57
 
@@ -21,6 +21,7 @@ function buildHeaderGroups(allColumns, columnsToGroup, table, headerFamily) {
21
21
  };
22
22
  findMaxDepth(allColumns);
23
23
  const headerGroups = [];
24
+ const headerGroupInitFns = table._headerGroupInstanceInitFns;
24
25
  const constructHeaderGroup = (headersToGroup, depth) => {
25
26
  const headerGroup = {
26
27
  depth,
@@ -58,6 +59,7 @@ function buildHeaderGroups(allColumns, columnsToGroup, table, headerFamily) {
58
59
  headerGroup.headers.push(headerToGroup);
59
60
  headerToGroup.headerGroup = headerGroup;
60
61
  });
62
+ for (let i = 0; i < headerGroupInitFns.length; i++) headerGroupInitFns[i](headerGroup);
61
63
  headerGroups.push(headerGroup);
62
64
  if (depth > 0) constructHeaderGroup(pendingParentHeaders, depth - 1);
63
65
  };
@@ -29,6 +29,8 @@ function constructHeader(table, column, options) {
29
29
  header.placeholderId = options.placeholderId;
30
30
  header.rowSpan = 0;
31
31
  header.subHeaders = [];
32
+ const initFns = table._headerInstanceInitFns;
33
+ for (let i = 0; i < initFns.length; i++) initFns[i](header);
32
34
  return header;
33
35
  }
34
36
 
@@ -1,11 +1,11 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { Table_RowModels_Grouped } from "../../features/column-grouping/columnGroupingFeature.types.js";
3
- import { Table_RowModels_Sorted } from "../../features/row-sorting/rowSortingFeature.types.js";
2
+ import { Table_RowModels_Faceted } from "../../features/column-faceting/columnFacetingFeature.types.js";
4
3
  import { Table_RowModels_Expanded } from "../../features/row-expanding/rowExpandingFeature.types.js";
4
+ import { Table_RowModels_Paginated } from "../../features/row-pagination/rowPaginationFeature.types.js";
5
+ import { Table_RowModels_Sorted } from "../../features/row-sorting/rowSortingFeature.types.js";
5
6
  import { Row } from "../../types/Row.js";
6
7
  import { Table_RowModels_Filtered } from "../../features/column-filtering/columnFilteringFeature.types.js";
7
- import { Table_RowModels_Paginated } from "../../features/row-pagination/rowPaginationFeature.types.js";
8
- import { Table_RowModels_Faceted } from "../../features/column-faceting/columnFacetingFeature.types.js";
8
+ import { Table_RowModels_Grouped } from "../../features/column-grouping/columnGroupingFeature.types.js";
9
9
  import { TableFeatures } from "../../types/TableFeatures.js";
10
10
 
11
11
  //#region src/core/row-models/coreRowModelsFeature.types.d.ts
@@ -1,6 +1,6 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { RowModel } from "./coreRowModelsFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
3
+ import { RowModel } from "./coreRowModelsFeature.types.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/core/row-models/coreRowModelsFeature.utils.d.ts
@@ -1,6 +1,6 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { RowModel } from "./coreRowModelsFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
3
+ import { RowModel } from "./coreRowModelsFeature.types.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/core/row-models/createCoreRowModel.d.ts
@@ -1,6 +1,6 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { Row } from "../../types/Row.js";
3
2
  import { Table } from "../../types/Table.js";
3
+ import { Row } from "../../types/Row.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/core/rows/constructRow.d.ts
@@ -30,8 +30,8 @@ const constructRow = (table, id, original, rowIndex, depth, subRows, parentId) =
30
30
  row.original = original;
31
31
  row.parentId = parentId;
32
32
  row.subRows = subRows ?? [];
33
- const features = Object.values(table._features);
34
- for (let i = 0; i < features.length; i++) features[i].initRowInstanceData?.(row);
33
+ const initFns = table._rowInstanceInitFns;
34
+ for (let i = 0; i < initFns.length; i++) initFns[i](row);
35
35
  return row;
36
36
  };
37
37
 
@@ -1,8 +1,8 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { Cell } from "../../types/Cell.js";
3
- import { Row } from "../../types/Row.js";
4
2
  import { Table } from "../../types/Table.js";
5
3
  import { Column } from "../../types/Column.js";
4
+ import { Row } from "../../types/Row.js";
5
+ import { Cell } from "../../types/Cell.js";
6
6
  import { TableFeatures } from "../../types/TableFeatures.js";
7
7
 
8
8
  //#region src/core/rows/coreRowsFeature.types.d.ts
@@ -1,7 +1,7 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { Cell } from "../../types/Cell.js";
3
- import { Row } from "../../types/Row.js";
4
2
  import { Table } from "../../types/Table.js";
3
+ import { Row } from "../../types/Row.js";
4
+ import { Cell } from "../../types/Cell.js";
5
5
  import { TableFeatures } from "../../types/TableFeatures.js";
6
6
 
7
7
  //#region src/core/rows/coreRowsFeature.utils.d.ts
@@ -74,8 +74,8 @@ declare function table_getMaxSubRowDepth<TFeatures extends TableFeatures, TData
74
74
  /**
75
75
  * Looks up this row's direct parent, if it has one.
76
76
  *
77
- * Parent lookup searches the pre-pagination row model so parent relationships
78
- * are available even when the parent is not on the current page.
77
+ * Parent lookup prefers the core row model for structural parents, then falls
78
+ * back to the pre-pagination row model for generated parent rows.
79
79
  *
80
80
  * @example
81
81
  * ```ts
@@ -114,8 +114,8 @@ function table_getMaxSubRowDepth(table) {
114
114
  /**
115
115
  * Looks up this row's direct parent, if it has one.
116
116
  *
117
- * Parent lookup searches the pre-pagination row model so parent relationships
118
- * are available even when the parent is not on the current page.
117
+ * Parent lookup prefers the core row model for structural parents, then falls
118
+ * back to the pre-pagination row model for generated parent rows.
119
119
  *
120
120
  * @example
121
121
  * ```ts
@@ -123,7 +123,8 @@ function table_getMaxSubRowDepth(table) {
123
123
  * ```
124
124
  */
125
125
  function row_getParentRow(row) {
126
- return row.parentId ? row.table.getRow(row.parentId, true) : void 0;
126
+ if (!row.parentId) return;
127
+ return row.table.getCoreRowModel().rowsById[row.parentId] ?? row.table.getRow(row.parentId, true);
127
128
  }
128
129
  /**
129
130
  * Collects this row's ancestor chain from root to direct parent.
@@ -95,7 +95,25 @@ function constructTable(tableOptions) {
95
95
  }
96
96
  return snapshot;
97
97
  }, { debugName: "table/store" }));
98
- for (let i = 0; i < featuresList.length; i++) featuresList[i].initTableInstanceData?.(table);
98
+ const cellInstanceInitFns = [];
99
+ const columnInstanceInitFns = [];
100
+ const headerGroupInstanceInitFns = [];
101
+ const headerInstanceInitFns = [];
102
+ const rowInstanceInitFns = [];
103
+ for (let i = 0; i < featuresList.length; i++) {
104
+ const feature = featuresList[i];
105
+ if (feature.initCellInstanceData) cellInstanceInitFns.push(feature.initCellInstanceData.bind(feature));
106
+ if (feature.initColumnInstanceData) columnInstanceInitFns.push(feature.initColumnInstanceData.bind(feature));
107
+ if (feature.initHeaderGroupInstanceData) headerGroupInstanceInitFns.push(feature.initHeaderGroupInstanceData.bind(feature));
108
+ if (feature.initHeaderInstanceData) headerInstanceInitFns.push(feature.initHeaderInstanceData.bind(feature));
109
+ if (feature.initRowInstanceData) rowInstanceInitFns.push(feature.initRowInstanceData.bind(feature));
110
+ feature.initTableInstanceData?.(table);
111
+ }
112
+ table._cellInstanceInitFns = cellInstanceInitFns;
113
+ table._columnInstanceInitFns = columnInstanceInitFns;
114
+ table._headerGroupInstanceInitFns = headerGroupInstanceInitFns;
115
+ table._headerInstanceInitFns = headerInstanceInitFns;
116
+ table._rowInstanceInitFns = rowInstanceInitFns;
99
117
  if (process.env.NODE_ENV === "development" && (tableOptions.debugAll || tableOptions.debugTable)) {
100
118
  const features = Object.keys(table._features);
101
119
  const rowModels = Object.entries({
@@ -5,7 +5,7 @@ import { CachedRowModels } from "../../types/RowModel.js";
5
5
  import { RowModelFns } from "../../types/RowModelFns.js";
6
6
  import { TableState, TableState_All } from "../../types/TableState.js";
7
7
  import { TableOptions } from "../../types/TableOptions.js";
8
- import { IsAny, TableFeatures, ValidateFeatureSlots } from "../../types/TableFeatures.js";
8
+ import { IsAny, TableFeature, TableFeatures, ValidateFeatureSlots } from "../../types/TableFeatures.js";
9
9
  import { Atom, ReadonlyAtom, ReadonlyStore } from "@tanstack/store";
10
10
 
11
11
  //#region src/core/table/coreTablesFeature.types.d.ts
@@ -119,10 +119,18 @@ interface Table_CoreProperties<in out TFeatures extends TableFeatures, in out TD
119
119
  * Table reactivity bindings for interacting with TanStack Store.
120
120
  */
121
121
  readonly _reactivity: TableReactivityBindings;
122
+ /**
123
+ * Cache of the `initCellInstanceData` functions for features that define one.
124
+ */
125
+ _cellInstanceInitFns?: Array<NonNullable<TableFeature['initCellInstanceData']>>;
122
126
  /**
123
127
  * Prototype cache for Cell objects - shared by all cells in this table
124
128
  */
125
129
  _cellPrototype?: object;
130
+ /**
131
+ * Cache of the `initColumnInstanceData` functions for features that define one.
132
+ */
133
+ _columnInstanceInitFns?: Array<NonNullable<TableFeature['initColumnInstanceData']>>;
126
134
  /**
127
135
  * Prototype cache for Column objects - shared by all columns in this table
128
136
  */
@@ -131,6 +139,14 @@ interface Table_CoreProperties<in out TFeatures extends TableFeatures, in out TD
131
139
  * The features that are enabled for the table.
132
140
  */
133
141
  readonly _features: Partial<CoreFeatures> & TFeatures;
142
+ /**
143
+ * Cache of the `initHeaderGroupInstanceData` functions for features that define one.
144
+ */
145
+ _headerGroupInstanceInitFns?: Array<NonNullable<TableFeature['initHeaderGroupInstanceData']>>;
146
+ /**
147
+ * Cache of the `initHeaderInstanceData` functions for features that define one.
148
+ */
149
+ _headerInstanceInitFns?: Array<NonNullable<TableFeature['initHeaderInstanceData']>>;
134
150
  /**
135
151
  * Prototype cache for Header objects - shared by all headers in this table
136
152
  */
@@ -147,6 +163,10 @@ interface Table_CoreProperties<in out TFeatures extends TableFeatures, in out TD
147
163
  * Prototype cache for Row objects - shared by all rows in this table
148
164
  */
149
165
  _rowPrototype?: object;
166
+ /**
167
+ * Cache of the `initRowInstanceData` functions for features that define one.
168
+ */
169
+ _rowInstanceInitFns?: Array<NonNullable<TableFeature['initRowInstanceData']>>;
150
170
  /**
151
171
  * The readonly derived atoms for each `TableState` slice. Each derives from
152
172
  * its corresponding `baseAtom` plus, optionally, a per-slice external atom or
@@ -1,7 +1,7 @@
1
1
  import { CellData, RowData } from "../../types/type-utils.js";
2
- import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
4
3
  import { Column } from "../../types/Column.js";
4
+ import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
5
5
  import { TableFeatures } from "../../types/TableFeatures.js";
6
6
 
7
7
  //#region src/features/column-faceting/columnFacetingFeature.utils.d.ts
@@ -1,6 +1,6 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
3
+ import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/features/column-faceting/createFacetedRowModel.d.ts
@@ -1,8 +1,8 @@
1
1
  import { CellData, OnChangeFn, RowData, TransformDataValueFn, Updater } from "../../types/type-utils.js";
2
2
  import { BuiltInFilterFn } from "./filterFns.js";
3
+ import { Column } from "../../types/Column.js";
3
4
  import { Row } from "../../types/Row.js";
4
5
  import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
5
- import { Column } from "../../types/Column.js";
6
6
  import { IsAny, TableFeatures } from "../../types/TableFeatures.js";
7
7
 
8
8
  //#region src/features/column-filtering/columnFilteringFeature.types.d.ts
@@ -1,7 +1,7 @@
1
1
  import { CellData, RowData, Updater } from "../../types/type-utils.js";
2
- import { ColumnFiltersState, FilterFn } from "./columnFilteringFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
4
3
  import { Column } from "../../types/Column.js";
4
+ import { ColumnFiltersState, FilterFn } from "./columnFilteringFeature.types.js";
5
5
  import { TableFeatures } from "../../types/TableFeatures.js";
6
6
 
7
7
  //#region src/features/column-filtering/columnFilteringFeature.utils.d.ts
@@ -33,8 +33,15 @@ function getDefaultColumnFiltersState() {
33
33
  */
34
34
  function column_getAutoFilterFn(column) {
35
35
  const filterFns = column.table._rowModelFns.filterFns;
36
- const firstRow = column.table.getCoreRowModel().flatRows[0];
37
- const value = firstRow ? firstRow.getValue(column.id) : void 0;
36
+ const rows = column.table.getCoreRowModel().flatRows;
37
+ let value;
38
+ for (let i = 0; i < rows.length; i++) {
39
+ const rowValue = rows[i].getValue(column.id);
40
+ if (rowValue !== null && rowValue !== void 0) {
41
+ value = rowValue;
42
+ break;
43
+ }
44
+ }
38
45
  let filterFnName;
39
46
  if (typeof value === "string") filterFnName = "includesString";
40
47
  else if (typeof value === "number") filterFnName = "inNumberRange";
@@ -1,6 +1,6 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
3
+ import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/features/column-filtering/createFilteredRowModel.d.ts
@@ -1,9 +1,9 @@
1
1
  import { CellData, RowData, Updater } from "../../types/type-utils.js";
2
- import { GroupingState, Row_ColumnGrouping } from "./columnGroupingFeature.types.js";
3
- import { Cell } from "../../types/Cell.js";
4
- import { Row } from "../../types/Row.js";
5
2
  import { Table } from "../../types/Table.js";
6
3
  import { Column } from "../../types/Column.js";
4
+ import { Row } from "../../types/Row.js";
5
+ import { GroupingState, Row_ColumnGrouping } from "./columnGroupingFeature.types.js";
6
+ import { Cell } from "../../types/Cell.js";
7
7
  import { TableFeatures } from "../../types/TableFeatures.js";
8
8
 
9
9
  //#region src/features/column-grouping/columnGroupingFeature.utils.d.ts
@@ -1,6 +1,6 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
3
+ import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/features/column-grouping/createGroupedRowModel.d.ts
@@ -1,8 +1,8 @@
1
1
  import { OnChangeFn, RowData, Updater } from "../../types/type-utils.js";
2
2
  import { HeaderGroup } from "../../types/HeaderGroup.js";
3
3
  import { Header } from "../../types/Header.js";
4
- import { Cell } from "../../types/Cell.js";
5
4
  import { Column } from "../../types/Column.js";
5
+ import { Cell } from "../../types/Cell.js";
6
6
  import { TableFeatures } from "../../types/TableFeatures.js";
7
7
 
8
8
  //#region src/features/column-pinning/columnPinningFeature.types.d.ts
@@ -1,11 +1,11 @@
1
1
  import { CellData, RowData, Updater } from "../../types/type-utils.js";
2
2
  import { HeaderGroup } from "../../types/HeaderGroup.js";
3
- import { ColumnPinningPosition, ColumnPinningState } from "./columnPinningFeature.types.js";
4
3
  import { Header } from "../../types/Header.js";
5
- import { Cell } from "../../types/Cell.js";
6
- import { Row } from "../../types/Row.js";
4
+ import { ColumnPinningPosition, ColumnPinningState } from "./columnPinningFeature.types.js";
7
5
  import { Table } from "../../types/Table.js";
8
6
  import { Column } from "../../types/Column.js";
7
+ import { Row } from "../../types/Row.js";
8
+ import { Cell } from "../../types/Cell.js";
9
9
  import { TableFeatures } from "../../types/TableFeatures.js";
10
10
 
11
11
  //#region src/features/column-pinning/columnPinningFeature.utils.d.ts
@@ -67,7 +67,6 @@ function header_getResizeHandler(header, _contextDocument) {
67
67
  const canResize = column_getCanResize(column);
68
68
  return (event) => {
69
69
  if (!canResize) return;
70
- event.persist?.();
71
70
  if (isTouchStartEvent(event)) {
72
71
  if (event.touches.length > 1) return;
73
72
  }
@@ -1,7 +1,7 @@
1
1
  import { CellData, RowData, Updater } from "../../types/type-utils.js";
2
- import { ColumnPinningPosition } from "../column-pinning/columnPinningFeature.types.js";
3
2
  import { ColumnOffsetsByPosition, ColumnSizingState } from "./columnSizingFeature.types.js";
4
3
  import { Header } from "../../types/Header.js";
4
+ import { ColumnPinningPosition } from "../column-pinning/columnPinningFeature.types.js";
5
5
  import { Table } from "../../types/Table.js";
6
6
  import { Column } from "../../types/Column.js";
7
7
  import { TableFeatures } from "../../types/TableFeatures.js";
@@ -1,6 +1,6 @@
1
1
  import { OnChangeFn, RowData, Updater } from "../../types/type-utils.js";
2
- import { Cell } from "../../types/Cell.js";
3
2
  import { Column } from "../../types/Column.js";
3
+ import { Cell } from "../../types/Cell.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/features/column-visibility/columnVisibilityFeature.types.d.ts
@@ -1,9 +1,9 @@
1
1
  import { CellData, RowData, Updater } from "../../types/type-utils.js";
2
- import { Cell } from "../../types/Cell.js";
3
- import { ColumnVisibilityState } from "./columnVisibilityFeature.types.js";
4
- import { Row } from "../../types/Row.js";
5
2
  import { Table } from "../../types/Table.js";
6
3
  import { Column } from "../../types/Column.js";
4
+ import { ColumnVisibilityState } from "./columnVisibilityFeature.types.js";
5
+ import { Row } from "../../types/Row.js";
6
+ import { Cell } from "../../types/Cell.js";
7
7
  import { TableFeatures } from "../../types/TableFeatures.js";
8
8
  //#region src/features/column-visibility/columnVisibilityFeature.utils.d.ts
9
9
  /**
@@ -1,6 +1,6 @@
1
1
  import { CellData, OnChangeFn, RowData, Updater } from "../../types/type-utils.js";
2
- import { FilterFn, FilterFnOption } from "../column-filtering/columnFilteringFeature.types.js";
3
2
  import { Column } from "../../types/Column.js";
3
+ import { FilterFn, FilterFnOption } from "../column-filtering/columnFilteringFeature.types.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/features/global-filtering/globalFilteringFeature.types.d.ts
@@ -1,7 +1,7 @@
1
1
  import { CellData, RowData } from "../../types/type-utils.js";
2
- import { CreatedFilterFn, FilterFn } from "../column-filtering/columnFilteringFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
4
3
  import { Column } from "../../types/Column.js";
4
+ import { CreatedFilterFn, FilterFn } from "../column-filtering/columnFilteringFeature.types.js";
5
5
  import { TableFeatures } from "../../types/TableFeatures.js";
6
6
  //#region src/features/global-filtering/globalFilteringFeature.utils.d.ts
7
7
  /**
@@ -1,10 +1,10 @@
1
1
  import { CellData, RowData } from "../../types/type-utils.js";
2
2
  import { BuiltInAggregationFn } from "./aggregationFns.js";
3
3
  import { ColumnDefTemplate } from "../../types/ColumnDef.js";
4
- import { Cell } from "../../types/Cell.js";
5
- import { Row } from "../../types/Row.js";
6
4
  import { Table } from "../../types/Table.js";
7
5
  import { Column } from "../../types/Column.js";
6
+ import { Row } from "../../types/Row.js";
7
+ import { Cell } from "../../types/Cell.js";
8
8
  import { IsAny, TableFeatures } from "../../types/TableFeatures.js";
9
9
 
10
10
  //#region src/features/row-aggregation/rowAggregationFeature.types.d.ts
@@ -1,8 +1,8 @@
1
1
  import { CellData, RowData } from "../../types/type-utils.js";
2
2
  import { AggregationFnDef, AggregationValueOptions, ColumnAggregationValue, ResolvedAggregationFn } from "./rowAggregationFeature.types.js";
3
- import { Cell } from "../../types/Cell.js";
4
- import { Row } from "../../types/Row.js";
5
3
  import { Column } from "../../types/Column.js";
4
+ import { Row } from "../../types/Row.js";
5
+ import { Cell } from "../../types/Cell.js";
6
6
  import { TableFeatures } from "../../types/TableFeatures.js";
7
7
 
8
8
  //#region src/features/row-aggregation/rowAggregationFeature.utils.d.ts
@@ -1,6 +1,6 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
3
+ import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/features/row-expanding/createExpandedRowModel.d.ts
@@ -17,7 +17,8 @@ function createExpandedRowModel() {
17
17
  memoDeps: () => [
18
18
  table.atoms.expanded?.get(),
19
19
  table.getPreExpandedRowModel(),
20
- table.options.paginateExpandedRows
20
+ table.options.paginateExpandedRows,
21
+ table.options.manualPagination
21
22
  ],
22
23
  fn: () => _createExpandedRowModel(table)
23
24
  });
@@ -27,7 +28,7 @@ function _createExpandedRowModel(table) {
27
28
  const rowModel = table.getPreExpandedRowModel();
28
29
  const expanded = table.atoms.expanded?.get();
29
30
  if (!rowModel.rows.length || expanded !== true && !Object.keys(expanded ?? {}).length) return rowModel;
30
- if (!table.options.paginateExpandedRows) return rowModel;
31
+ if (!table.options.paginateExpandedRows && !table.options.manualPagination) return rowModel;
31
32
  return expandRows(rowModel);
32
33
  }
33
34
  /**
@@ -1,7 +1,7 @@
1
1
  import { RowData, Updater } from "../../types/type-utils.js";
2
2
  import { ExpandedState } from "./rowExpandingFeature.types.js";
3
- import { Row } from "../../types/Row.js";
4
3
  import { Table } from "../../types/Table.js";
4
+ import { Row } from "../../types/Row.js";
5
5
  import { TableFeatures } from "../../types/TableFeatures.js";
6
6
 
7
7
  //#region src/features/row-expanding/rowExpandingFeature.utils.d.ts
@@ -83,15 +83,12 @@ declare function table_getCanSomeRowsExpand<TFeatures extends TableFeatures, TDa
83
83
  /**
84
84
  * Creates an event handler that toggles all rows expanded.
85
85
  *
86
- * React-style synthetic events are persisted when present before the table state
87
- * is toggled.
88
- *
89
86
  * @example
90
87
  * ```ts
91
88
  * const onClick = table_getToggleAllRowsExpandedHandler(table)
92
89
  * ```
93
90
  */
94
- declare function table_getToggleAllRowsExpandedHandler<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>): (e: unknown) => void;
91
+ declare function table_getToggleAllRowsExpandedHandler<TFeatures extends TableFeatures, TData extends RowData>(table: Table<TFeatures, TData>): (_e: unknown) => void;
95
92
  /**
96
93
  * Checks whether any row is expanded.
97
94
  *
@@ -93,17 +93,13 @@ function table_getCanSomeRowsExpand(table) {
93
93
  /**
94
94
  * Creates an event handler that toggles all rows expanded.
95
95
  *
96
- * React-style synthetic events are persisted when present before the table state
97
- * is toggled.
98
- *
99
96
  * @example
100
97
  * ```ts
101
98
  * const onClick = table_getToggleAllRowsExpandedHandler(table)
102
99
  * ```
103
100
  */
104
101
  function table_getToggleAllRowsExpandedHandler(table) {
105
- return (e) => {
106
- e.persist?.();
102
+ return (_e) => {
107
103
  table_toggleAllRowsExpanded(table);
108
104
  };
109
105
  }
@@ -1,6 +1,6 @@
1
1
  import { RowData } from "../../types/type-utils.js";
2
- import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
3
2
  import { Table } from "../../types/Table.js";
3
+ import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
4
4
  import { TableFeatures } from "../../types/TableFeatures.js";
5
5
 
6
6
  //#region src/features/row-pagination/createPaginatedRowModel.d.ts
@@ -1,7 +1,7 @@
1
1
  import { RowData, Updater } from "../../types/type-utils.js";
2
2
  import { RowPinningPosition, RowPinningState } from "./rowPinningFeature.types.js";
3
- import { Row } from "../../types/Row.js";
4
3
  import { Table } from "../../types/Table.js";
4
+ import { Row } from "../../types/Row.js";
5
5
  import { TableFeatures } from "../../types/TableFeatures.js";
6
6
 
7
7
  //#region src/features/row-pinning/rowPinningFeature.utils.d.ts
@@ -1,8 +1,8 @@
1
1
  import { RowData, Updater } from "../../types/type-utils.js";
2
2
  import { RowSelectionState, ToggleSelectedOptions } from "./rowSelectionFeature.types.js";
3
+ import { Table } from "../../types/Table.js";
3
4
  import { Row } from "../../types/Row.js";
4
5
  import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
5
- import { Table } from "../../types/Table.js";
6
6
  import { TableFeatures } from "../../types/TableFeatures.js";
7
7
 
8
8
  //#region src/features/row-selection/rowSelectionFeature.utils.d.ts
@@ -298,8 +298,7 @@ declare function row_getCanMultiSelect<TFeatures extends TableFeatures, TData ex
298
298
  *
299
299
  * The handler is a no-op when the row cannot be selected and reads
300
300
  * `event.target.checked`. Shift events select or deselect the inclusive range
301
- * from the most recent selectable row handled by this table. The event's
302
- * optional `persist()` method is called before it is read. Pass
301
+ * from the most recent selectable row handled by this table. Pass
303
302
  * `selectChildren: false` to limit changes to rows explicitly present in the
304
303
  * display-order interval.
305
304
  *
@@ -390,8 +390,7 @@ function row_getCanMultiSelect(row) {
390
390
  *
391
391
  * The handler is a no-op when the row cannot be selected and reads
392
392
  * `event.target.checked`. Shift events select or deselect the inclusive range
393
- * from the most recent selectable row handled by this table. The event's
394
- * optional `persist()` method is called before it is read. Pass
393
+ * from the most recent selectable row handled by this table. Pass
395
394
  * `selectChildren: false` to limit changes to rows explicitly present in the
396
395
  * display-order interval.
397
396
  *
@@ -405,7 +404,6 @@ function row_getToggleSelectedHandler(row, opts) {
405
404
  return (e) => {
406
405
  if (!canSelect) return;
407
406
  const event = e;
408
- event.persist?.();
409
407
  const table = row.table;
410
408
  const checked = event.target.checked;
411
409
  const anchorId = table._lastSelectedRowId;