mirror of
https://github.com/Noooste/garage-ui.git
synced 2026-07-27 08:08:56 +00:00
37 lines
983 B
TypeScript
37 lines
983 B
TypeScript
import { Outlet } from 'react-router-dom';
|
|
import { Sidebar } from './sidebar';
|
|
import { useState } from 'react';
|
|
import { Menu } from 'lucide-react';
|
|
import { Button } from '@/components/ui/button';
|
|
|
|
export function Layout() {
|
|
const [sidebarOpen, setSidebarOpen] = useState(false);
|
|
|
|
return (
|
|
<div className="flex h-screen overflow-hidden">
|
|
{/* Mobile menu button */}
|
|
<Button
|
|
variant="ghost"
|
|
size="icon"
|
|
className="fixed top-4 left-4 z-50 md:hidden"
|
|
onClick={() => setSidebarOpen(!sidebarOpen)}
|
|
>
|
|
<Menu className="h-6 w-6" />
|
|
</Button>
|
|
|
|
{/* Mobile overlay */}
|
|
{sidebarOpen && (
|
|
<div
|
|
className="fixed inset-0 bg-black/50 z-40 md:hidden"
|
|
onClick={() => setSidebarOpen(false)}
|
|
/>
|
|
)}
|
|
|
|
<Sidebar isOpen={sidebarOpen} onClose={() => setSidebarOpen(false)} />
|
|
<main className="flex-1 overflow-y-auto">
|
|
<Outlet />
|
|
</main>
|
|
</div>
|
|
);
|
|
}
|