diff --git a/packages/react-table/__tests__/features/__snapshots__/Visibility.test.tsx.snap b/packages/react-table/__tests__/features/__snapshots__/Visibility.test.tsx.snap index d0dd91ae75..04b21dd0c0 100644 --- a/packages/react-table/__tests__/features/__snapshots__/Visibility.test.tsx.snap +++ b/packages/react-table/__tests__/features/__snapshots__/Visibility.test.tsx.snap @@ -4,13 +4,9 @@ exports[`useReactTable > can toggle column visibility > 0 - after toggling all o { "footers": [ [], - [], - [], ], "headers": [ [], - [], - [], ], "rows": [ [], @@ -304,20 +300,6 @@ exports[`useReactTable > can toggle column visibility > 3 - after toggling More "1", ], ], - [ - [ - "", - "1", - ], - [ - "", - "1", - ], - [ - "", - "1", - ], - ], [ [ "Name", @@ -340,20 +322,6 @@ exports[`useReactTable > can toggle column visibility > 3 - after toggling More "1", ], ], - [ - [ - "", - "1", - ], - [ - "", - "1", - ], - [ - "", - "1", - ], - ], [ [ "firstName", diff --git a/packages/table-core/src/features/Visibility.ts b/packages/table-core/src/features/Visibility.ts index 55c020990f..38f20952b8 100644 --- a/packages/table-core/src/features/Visibility.ts +++ b/packages/table-core/src/features/Visibility.ts @@ -178,7 +178,12 @@ export const Visibility: TableFeature = { } } column.getIsVisible = () => { - return table.getState().columnVisibility?.[column.id] ?? true + const childColumns = column.columns + return ( + (childColumns.length + ? childColumns.some(c => c.getIsVisible()) + : table.getState().columnVisibility?.[column.id]) ?? true + ) } column.getCanHide = () => {