2026-05-04 20:12:57 -05:00
|
|
|
import { Link, Outlet } from 'react-router-dom';
|
2026-05-03 19:51:57 -05:00
|
|
|
import AppNavigation from './Sidebar';
|
|
|
|
|
|
2026-05-10 00:18:36 -05:00
|
|
|
export default function Layout({ mainContentId }) {
|
2026-05-03 19:51:57 -05:00
|
|
|
return (
|
2026-05-10 00:18:36 -05:00
|
|
|
<div className="min-h-screen bg-[radial-gradient(circle_at_top_left,oklch(var(--primary)/0.10),transparent_34rem),linear-gradient(180deg,oklch(var(--background)),oklch(var(--muted)/0.28))] text-foreground"
|
|
|
|
|
role="main"
|
|
|
|
|
aria-labelledby={mainContentId}
|
|
|
|
|
>
|
|
|
|
|
<AppNavigation mainContentId={mainContentId} />
|
2026-05-03 19:51:57 -05:00
|
|
|
|
|
|
|
|
<main className="w-full">
|
2026-05-10 00:18:36 -05:00
|
|
|
<div className="mx-auto w-full max-w-[1500px] px-4 py-6 sm:px-6 lg:px-8 lg:py-8"
|
|
|
|
|
id={mainContentId}
|
|
|
|
|
>
|
2026-05-03 19:51:57 -05:00
|
|
|
<Outlet />
|
|
|
|
|
</div>
|
|
|
|
|
</main>
|
2026-05-10 00:18:36 -05:00
|
|
|
<footer className="mx-auto flex w-full max-w-[1500px] flex-wrap items-center justify-center gap-x-4 gap-y-2 px-4 pb-6 text-xs text-muted-foreground sm:px-6 lg:px-8"
|
|
|
|
|
aria-label="Footer"
|
|
|
|
|
>
|
2026-05-04 20:12:57 -05:00
|
|
|
<Link to="/about" className="underline-offset-4 hover:text-foreground hover:underline">About</Link>
|
|
|
|
|
<Link to="/release-notes" className="underline-offset-4 hover:text-foreground hover:underline">Release Notes</Link>
|
|
|
|
|
</footer>
|
2026-05-03 19:51:57 -05:00
|
|
|
</div>
|
|
|
|
|
);
|
|
|
|
|
}
|