import React, { useContext } from 'react'
import routes from '../../constants/routes.json'
import logo from '../../assets/icons/ecolyo-logo.svg'
import './menu.scss'
import { NavLink } from 'react-router-dom'
import { UserContext } from '../../hooks/userContext'

const Menu: React.FC = () => {
  const { isLogged, logoutUser, setisLogged } = useContext(UserContext)

  const handleLogout = () => {
    if (logoutUser && setisLogged) {
      logoutUser()
      setisLogged(false)
    }
  }
  return (
    <nav className={'menu'}>
      <div className="logo-container">
        <img src={logo} alt="Ecolyo logo" className="logo" />
      </div>
      <div className="menu-list">
        {routes.map((route: any, index: number) => {
          return (
            <NavLink key={index} to={route.path} activeClassName="active">
              {route.label}
            </NavLink>
          )
        })}
      </div>
      <div className="administration">
        {isLogged ? (
          <button className="btnValid logButton" onClick={handleLogout}>
            Logout
          </button>
        ) : (
          <NavLink to="/login" activeClassName="active">
            Login
          </NavLink>
        )}
      </div>
    </nav>
  )
}

export default Menu