'use client'; import { useEffect } from 'react'; import { useRouter } from 'next/navigation'; import { useAuthStore } from '@/stores/auth-store'; import { useWorkspaceStore } from '@/stores/workspace-store'; import Sidebar from '@/components/Sidebar'; import AppHeader from '@/components/AppHeader'; export default function AppLayout({ children, }: { children: React.ReactNode; }) { const router = useRouter(); const isAuthenticated = useAuthStore((state) => state.isAuthenticated); const fetchWorkspaces = useWorkspaceStore((state) => state.fetchWorkspaces); useEffect(() => { if (!isAuthenticated) { router.push('/login'); } else { fetchWorkspaces(); } }, [isAuthenticated, router, fetchWorkspaces]); if (!isAuthenticated) { return null; } return (
{children}
); }