import type { ReactNode } from "react"; import { Menu, type LucideIcon } from "lucide-react"; import { DashboardSidebar } from "@/components/dashboard/sidebar"; import { Button } from "@/components/ui/button"; import { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle, SheetTrigger, } from "@/components/ui/sheet"; import type { RootNavItem } from "@/lib/root-navigation"; type DashboardLayoutProps = { title: string; description: string; icon?: LucideIcon; items: RootNavItem[]; sidebarIconSrc?: string; sidebarTop?: ReactNode; sidebarFooter?: ReactNode; headerActions?: ReactNode; children: ReactNode; }; export function DashboardLayout({ title, description, icon: Icon, items, sidebarIconSrc, sidebarTop, sidebarFooter, headerActions, children, }: DashboardLayoutProps) { return (
{title} {description}
{Icon ? (
) : null}

{title}

{description}

{headerActions ? (
{headerActions}
) : null}
{children}
); }