"use client"; import { ReactNode, useEffect } from "react"; import Link from "next/link"; import { useRouter } from "next/navigation"; import { Hexagon } from "lucide-react"; import { useAuth } from "@/lib/auth/auth-context"; import { NotificationBell } from "@/components/notification-bell"; import { OfflineSyncBadge } from "@/components/offline-sync-badge"; import { UserAvatar } from "@/components/user-avatar"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; import { Sidebar } from "./sidebar"; import { BottomNav } from "./bottom-nav"; import { QuickAddMenu } from "./quick-add-menu"; import { PageTransition } from "./page-transition"; export default function AppLayout({ children }: { children: ReactNode }) { const router = useRouter(); const { user, isLoading, logout } = useAuth(); useEffect(() => { if (!isLoading && !user) { router.replace("/login"); } }, [isLoading, user, router]); if (isLoading || !user) { return null; } return (