import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { signOut } from "next-auth/react"; import { faPlus, faCircleUser, faChevronDown, faBars, } from "@fortawesome/free-solid-svg-icons"; import { useEffect, useState } from "react"; import Dropdown from "@/components/Dropdown"; import Modal from "@/components/Modal"; import LinkModal from "@/components/Modal/LinkModal"; import ClickAwayHandler from "@/components/ClickAwayHandler"; import Sidebar from "@/components/Sidebar"; import { useRouter } from "next/router"; import Search from "@/components/Search"; import UserSettings from "./Modal/UserSettings"; import useAccountStore from "@/store/account"; import ProfilePhoto from "./ProfilePhoto"; export default function () { const { account } = useAccountStore(); const [profileDropdown, setProfileDropdown] = useState(false); const [linkModal, setLinkModal] = useState(false); const [settingsModal, setSettingsModal] = useState(false); const [sidebar, setSidebar] = useState(false); const router = useRouter(); window.addEventListener("resize", () => setSidebar(false)); useEffect(() => { setSidebar(false); }, [router]); const toggleSidebar = () => { setSidebar(!sidebar); }; const toggleLinkModal = () => { setLinkModal(!linkModal); }; const toggleSettingsModal = () => { setSettingsModal(!settingsModal); }; return (
New Link
setProfileDropdown(!profileDropdown)} id="profile-dropdown" >

{account.name}

{profileDropdown ? ( { toggleSettingsModal(); 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} {linkModal ? ( ) : null} {settingsModal ? ( ) : null} {sidebar ? (
) : null}
); }