import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { signOut } from "next-auth/react"; import { faPlus, faChevronDown, faBars, } from "@fortawesome/free-solid-svg-icons"; import { useEffect, useState } from "react"; import Dropdown from "@/components/Dropdown"; import ClickAwayHandler from "@/components/ClickAwayHandler"; import Sidebar from "@/components/Sidebar"; import { useRouter } from "next/router"; import Search from "@/components/Search"; import useAccountStore from "@/store/account"; import ProfilePhoto from "@/components/ProfilePhoto"; import useModalStore from "@/store/modals"; export default function Navbar() { const { setModal } = useModalStore(); const { account } = useAccountStore(); const [profileDropdown, setProfileDropdown] = useState(false); const [sidebar, setSidebar] = useState(false); const router = useRouter(); window.addEventListener("resize", () => setSidebar(false)); useEffect(() => { setSidebar(false); }, [router]); const toggleSidebar = () => { setSidebar(!sidebar); }; return (
{ setModal({ modal: "LINK", state: true, method: "CREATE", }); }} className="inline-flex gap-1 relative sm:w-[7.2rem] items-center font-semibold select-none cursor-pointer p-[0.687rem] sm:p-2 sm:px-3 rounded-md sm:rounded-full hover:bg-sky-100 text-sky-500 sm:text-white sm:bg-sky-500 sm:hover:bg-sky-400 duration-100 group" > New Link
setProfileDropdown(!profileDropdown)} id="profile-dropdown" >

{account.name}

{profileDropdown ? ( { setModal({ modal: "ACCOUNT", state: true, method: "CREATE", active: account, }); setProfileDropdown(!profileDropdown); }, }, { name: "Logout", onClick: () => { signOut(); setProfileDropdown(!profileDropdown); }, }, ]} onClickOutside={(e: Event) => { const target = e.target as HTMLInputElement; if (target.id !== "profile-dropdown") setProfileDropdown(false); }} className="absolute top-11 right-0 z-20 w-36" /> ) : null} {sidebar ? (
) : null}
); }