'use client'; import React, { useState } from 'react'; import { usePathname } from 'next/navigation'; import { SidebarRail, MenuItem } from './SidebarRail'; import { TopBar } from './TopBar'; import { MobileBottomBar } from './MobileBottomBar'; interface DashboardLayoutProps { children: React.ReactNode; menuItems: MenuItem[]; } export const DashboardLayout: React.FC = ({ children, menuItems }) => { // Estado centralizado do layout const [isExpanded, setIsExpanded] = useState(true); const pathname = usePathname(); return (
{/* Sidebar controla seu próprio estado visual via props - Desktop Only */}
setIsExpanded(!isExpanded)} menuItems={menuItems} />
{/* Área de Conteúdo (Children) */}
{/* TopBar com Breadcrumbs e Search */} {/* Conteúdo das páginas */}
{children}
{/* Mobile Bottom Bar */}
); };