File size: 1,006 Bytes
9b906ea | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | import { SettingsDesktopSidebar } from "./settings-desktop-sidebar";
import { SettingsNavRenderedItem } from "#/hooks/use-settings-nav-items";
import { settingsLayoutMainScrollClassName } from "#/utils/settings-like-page-layout-classes";
interface SettingsLayoutProps {
children: React.ReactNode;
navigationItems: SettingsNavRenderedItem[];
}
/**
* Mirrors the extensions layout (Skills / MCP): aside and main are siblings,
* and only the main column scrolls so the left nav stays pinned like
* ExtensionsNavigation.
*/
export function SettingsLayout({
children,
navigationItems,
}: SettingsLayoutProps) {
return (
<div className="flex h-full flex-col md:pt-8">
<div className="flex min-h-0 flex-1 gap-10 md:items-start">
<SettingsDesktopSidebar navigationItems={navigationItems} />
<main className={settingsLayoutMainScrollClassName}>
<div className="mx-auto w-full min-w-0 max-w-[800px]">{children}</div>
</main>
</div>
</div>
);
}
|