import React, { useContext, useEffect, useState } from 'react' import { useCookies } from 'react-cookie' import { useRouter } from 'next/router' import AppContext from '~context/AppContext' import Button from '~components/Button' import HeaderMenu from '~components/HeaderMenu' import './index.scss' interface Props {} const Header = (props: Props) => { const { editable, setEditable, setAuthenticated } = useContext(AppContext) const [username, setUsername] = useState(undefined) const [cookies, _, removeCookie] = useCookies(['user']) const router = useRouter() useEffect(() => { if (cookies.user) { setUsername(cookies.user.username) console.log(`Logged in as user "${cookies.user.username}"`) } else { console.log('You are currently not logged in.') } }, [cookies]) function copyToClipboard() { const el = document.createElement('input') el.value = window.location.href el.id = 'url-input' document.body.appendChild(el) el.select() document.execCommand('copy') el.remove() } function newParty() { router.push('/') } function logout() { removeCookie('user') setAuthenticated(false) if (editable) setEditable(false) // How can we log out without navigating to root router.push('/') return false } return ( ) } export default Header