"use client" import { useEffect } from "react" import { useRouter } from "next/navigation" import { useAuth } from "@/hooks/use-auth" import { SidebarProvider, Sidebar, SidebarContent, SidebarHeader, SidebarInset, SidebarTrigger, } from "@/components/ui/sidebar" import { Separator } from "@/components/ui/separator" import { AlbumSidebar } from "@/components/album-sidebar" import { AdminSidebar } from "@/components/admin-sidebar" import { UploadDialog } from "@/components/upload-dialog" import { Spinner } from "@/components/ui/spinner" import { CameraIcon, LogOutIcon } from "lucide-react" import { Button } from "@/components/ui/button" import Link from "next/link" export default function AppLayout({ children }: { children: React.ReactNode }) { const { user, isAuthenticated, isLoading, logout } = useAuth() const router = useRouter() useEffect(() => { if (!isLoading && !isAuthenticated) { router.replace("/login") } }, [isLoading, isAuthenticated, router]) if (isLoading) { return (
) } if (!isAuthenticated) return null return ( K-Photos
{user?.username}
{children}
) }