diff --git a/components/header.tsx b/components/header.tsx index ed9b2db3..2150683b 100644 --- a/components/header.tsx +++ b/components/header.tsx @@ -6,8 +6,10 @@ import { useState, useEffect } from "react" import { Button } from "@/components/ui/button" // import { ThemeToggle } from "@/components/theme-toggle" import { UserIcon } from "@/components/user-icon" -import { Menu, X } from "lucide-react" +import { Menu, X, Shield, LogOut } from "lucide-react" import { useAuth } from "@/lib/hooks/useAuth" +import { createClient } from "@/lib/supabase/client" +import { useRouter } from "next/navigation" import CodeuniaLogo from "./codeunia-logo"; import dynamic from "next/dynamic"; @@ -25,7 +27,16 @@ const UserDisplay = dynamic(() => import("./UserDisplay"), { export default function Header() { const [isMenuOpen, setIsMenuOpen] = useState(false) const pathname = usePathname() + const router = useRouter() const { user, loading } = useAuth() + const supabase = createClient() + + const handleLogout = async () => { + await supabase.auth.signOut() + setIsMenuOpen(false) + router.push("/") + router.refresh() + } // Close mobile menu when clicking outside useEffect(() => { @@ -126,10 +137,7 @@ export default function Header() {