"use client" import { useEffect } from "react" import { useRouter } from "next/navigation" import { AppShell } from "@/components/layout/app-shell" import { UserProvider, useUser } from "@/providers/user-provider" import { NotificationProvider } from "@/providers/notification-provider" import { ErrorBoundary } from "@/components/shared/error-boundary" import { Loader2 } from "lucide-react" function DashboardContent({ children }: { children: React.ReactNode }) { const { user, loading } = useUser() const router = useRouter() useEffect(() => { if (!user && !loading) { router.push("/login") } }, [user, loading, router]) if (loading || !user) { return (