"use client" import { useEffect, useState } from "react" import { useRouter, usePathname } from "next/navigation" import { useAuth } from "@/lib/auth" import { Loader2 } from "lucide-react" import { Sidebar } from "@/components/layout/Sidebar" import { InstallPrompt } from "@/components/ui/install-prompt" export default function DashboardLayout({ children, }: { children: React.ReactNode }) { const router = useRouter() const pathname = usePathname() const { token, isHydrated } = useAuth() const [checked, setChecked] = useState(false) useEffect(() => { if (!isHydrated) return if (!token) { router.push("/login") } else { setChecked(true) } }, [isHydrated, token, router]) if (!isHydrated || !checked) { return (
) } if (!token) { return null } return (
{children}
) }