From 2ce11799b0caa18f568de5caae85b3893b24ad2a Mon Sep 17 00:00:00 2001 From: Moritz Heckmann Date: Fri, 19 Jun 2026 09:55:41 +0200 Subject: [PATCH 1/3] Added index to getGroupingValue --- .../src/features/column-grouping/columnGroupingFeature.types.ts | 2 +- .../src/features/column-grouping/columnGroupingFeature.utils.ts | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/table-core/src/features/column-grouping/columnGroupingFeature.types.ts b/packages/table-core/src/features/column-grouping/columnGroupingFeature.types.ts index c376f378fa..a39daad78f 100644 --- a/packages/table-core/src/features/column-grouping/columnGroupingFeature.types.ts +++ b/packages/table-core/src/features/column-grouping/columnGroupingFeature.types.ts @@ -89,7 +89,7 @@ export interface ColumnDef_ColumnGrouping< /** * Specify a value to be used for grouping rows on this column. If this option is not specified, the value derived from `accessorKey` / `accessorFn` will be used instead. */ - getGroupingValue?: (row: TData) => any + getGroupingValue?: (row: TData, index: number) => any } export interface Column_ColumnGrouping< diff --git a/packages/table-core/src/features/column-grouping/columnGroupingFeature.utils.ts b/packages/table-core/src/features/column-grouping/columnGroupingFeature.utils.ts index 7b96c2ceac..1ac6af6a26 100644 --- a/packages/table-core/src/features/column-grouping/columnGroupingFeature.utils.ts +++ b/packages/table-core/src/features/column-grouping/columnGroupingFeature.utils.ts @@ -284,6 +284,7 @@ export function row_getGroupingValue< if (row._groupingValuesCache) { row._groupingValuesCache[columnId] = column.columnDef.getGroupingValue( row.original, + row.index, ) } From 481522766ba62a7b41881fb3b1ddc28519507b09 Mon Sep 17 00:00:00 2001 From: Moritz Heckmann Date: Thu, 25 Jun 2026 13:39:40 +0200 Subject: [PATCH 2/3] Changed package json --- packages/react-table/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/react-table/package.json b/packages/react-table/package.json index c136b5a266..3439f6fd41 100644 --- a/packages/react-table/package.json +++ b/packages/react-table/package.json @@ -63,8 +63,7 @@ "build": "tsdown" }, "dependencies": { - "@tanstack/react-store": "^0.11.0", - "@tanstack/table-core": "workspace:*" + "@tanstack/react-store": "^0.11.0" }, "devDependencies": { "@eslint-react/eslint-plugin": "^5.8.16", @@ -75,6 +74,7 @@ "react": "^19.2.7" }, "peerDependencies": { + "@tanstack/table-core": "workspace:*", "react": ">=18" } } From c060daf529dc25945e24c22f4b6ea8c4d4746813 Mon Sep 17 00:00:00 2001 From: Moritz Heckmann Date: Thu, 25 Jun 2026 19:49:03 +0200 Subject: [PATCH 3/3] Added column instance method --- packages/table-core/src/core/columns/constructColumn.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/table-core/src/core/columns/constructColumn.ts b/packages/table-core/src/core/columns/constructColumn.ts index b6ca11debf..82baee88cf 100644 --- a/packages/table-core/src/core/columns/constructColumn.ts +++ b/packages/table-core/src/core/columns/constructColumn.ts @@ -115,5 +115,11 @@ export function constructColumn< column.id = `${String(id)}` column.parent = parent + // Initialize instance-specific data (e.g., caches) for features that need it + const features = Object.values(table._features) + for (let i = 0; i < features.length; i++) { + features[i]!.initColumnInstanceData?.(column) + } + return column as Column }