From 27a7ab9d9db455aa67703c27893954452d7bbf89 Mon Sep 17 00:00:00 2001 From: Bill Leoutsakos Date: Thu, 24 Sep 2026 11:45:33 -0700 Subject: [PATCH 1/3] Share table sidebar shell and scroll body --- .../column-config-sidebar.tsx | 20 ++++----- .../enrichments-sidebar/enrichment-config.tsx | 5 ++- .../enrichments-sidebar.tsx | 14 ++----- .../components/table-sidebar-layout.tsx | 41 +++++++++++++++++++ .../workflow-sidebar/workflow-sidebar.tsx | 20 ++++----- 5 files changed, 64 insertions(+), 36 deletions(-) create mode 100644 apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/table-sidebar-layout.tsx diff --git a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/column-config-sidebar.tsx b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/column-config-sidebar.tsx index 2ad4ebc773b..a1db5e3daf5 100644 --- a/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/column-config-sidebar.tsx +++ b/apps/sim/app/workspace/[workspaceId]/tables/[tableId]/components/column-config-sidebar/column-config-sidebar.tsx @@ -5,7 +5,6 @@ import { Button, ChipCombobox, ChipInput, - cn, FieldDivider, Label, Switch, @@ -29,6 +28,10 @@ import { TableSidebarHeader, TableSidebarHeaderAction, } from '@/app/workspace/[workspaceId]/tables/[tableId]/components/table-sidebar-header/table-sidebar-header' +import { + TableSidebarScrollBody, + TableSidebarShell, +} from '@/app/workspace/[workspaceId]/tables/[tableId]/components/table-sidebar-layout' import { useAddTableColumn, useUpdateColumn } from '@/hooks/queries/tables' import { SelectOptionsEditor } from '../select-field' import { columnTypeOptionsForTable } from './column-types' @@ -100,18 +103,11 @@ export function ColumnConfigSidebar(props: ColumnConfigSidebarProps) { // different column / mode remounts and re-seeds state from props. const open = props.config !== null return ( - + ) } @@ -274,7 +270,7 @@ function ColumnConfigBody({ -
+ {/* `disabled` on the fieldset reaches every native control inside, including the comboboxes' trigger buttons; `contents` keeps the existing layout. Values stay readable and selectable. */} @@ -383,7 +379,7 @@ function ColumnConfigBody({ )} -
+