'use client' import { useEffect, useState } from 'react' import { useRouter } from 'next/navigation' import { Sidebar } from '@/components/layout/Sidebar' import { Header } from '@/components/layout/Header' import { Breadcrumbs } from '@/components/common/Breadcrumbs' import { getStoredRole } from '@/lib/roles' export default function AdminLayout({ children, }: { children: React.ReactNode }) { const router = useRouter() const [sidebarKey, setSidebarKey] = useState(0) const [loading, setLoading] = useState(true) useEffect(() => { // Check if role is stored const role = getStoredRole() if (!role) { // Redirect to role selection router.replace('/') } else { setLoading(false) } }, [router]) const handleRoleChange = () => { // Force sidebar to re-render setSidebarKey(prev => prev + 1) } if (loading) { return (
) } return (
{/* Sidebar */} {/* Main Content */}
{/* Header */}
{/* Page Content */}
{children}
) }