Skip to content
Snippets Groups Projects
Menu.tsx 1.23 KiB
Newer Older
  • Learn to ignore specific revisions
  • 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'
    
    import { useAuth } from '../../hooks/useAuth'
    
    Bastien DUMONT's avatar
    Bastien DUMONT committed
    import { Route } from '../../models/route.model'
    
    const Menu: React.FC = () => {
    
      const { user } = useContext(UserContext)
      const { logoutUser } = useAuth()
    
        <nav className={'menu'}>
    
          <div className="logo-container">
            <img src={logo} alt="Ecolyo logo" className="logo" />
          </div>
          <div className="menu-list">
    
    Bastien DUMONT's avatar
    Bastien DUMONT committed
            {routes.map((route: Route, index: number) => {
    
                <NavLink key={index} to={route.path} activeClassName="active">
                  {route.label}
                </NavLink>
    
          </div>
          <div className="administration">
    
    Guilhem CARRON's avatar
    Guilhem CARRON committed
              <button className="btnValid" onClick={logoutUser}>
    
    Guilhem CARRON's avatar
    Guilhem CARRON committed
                Logout
              </button>
    
            ) : (
              <NavLink to="/login" activeClassName="active">
                Login
              </NavLink>
            )}