import { Query, Mutation } from 'react-apollo' import { adopt } from 'react-adopt' import Link from 'next/link' import { CURRENT_USER, USER_LOGOUT } from '../lib/graphql' import LoginForm from './login' const UserAdoption = adopt({ user: ({ render }) => {render}, logout: ({ render }) => {render} }) class UserNav extends React.Component { state = { menu: false } toggleMenu = ev => { ev.preventDefault() this.setState({ menu: !this.state.menu }) } logout = async (ev, logout) => { ev.preventDefault() try { const id = await logout() } catch (error) { console.log(error) } } render() { return ( {({ user, logout }) => { console.log(user, logout) if (user.error) return if (user.loading) return

Loading...

const { name, email, id } = user.data.me return ( <> {name} { this.state.menu ? (

Welcome, {name}

Edit user data { ev.preventDefault() this.logout(ev, logout) }}>Logout
) : null } ) }}
) } } const User = props => export { UserNav } export default User