Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 6711 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
6694 stevensc 1
import React, { useState } from 'react'
6632 stevensc 2
 
6704 stevensc 3
import LinkItem from './link-item/LinkItem'
6635 stevensc 4
import SearchInput from './searchbox/SearchInput'
6704 stevensc 5
import ResponsiveNavbar from './responsive-navbar/ResponsiveNavbar'
6632 stevensc 6
import UserImageDropdown from './user-dropdown/UserImageDropdown'
7
 
6711 stevensc 8
import './styles/main.scss'
6632 stevensc 9
 
6704 stevensc 10
const Header = ({
11
  logo,
12
  menu,
13
  image,
14
  name,
15
  country,
16
  description,
17
  visits,
18
  connections,
19
  linkAdmin,
20
  linkImpersonate,
21
}) => {
22
  const [isShow, setIsShow] = useState(false)
6632 stevensc 23
 
6704 stevensc 24
  const toggleMenu = () => {
25
    setIsShow((prevIsShow) => !prevIsShow)
26
  }
27
 
6753 stevensc 28
  const closeMenu = () => {
29
    setIsShow(false)
30
  }
31
 
6632 stevensc 32
  return (
33
    <>
6753 stevensc 34
      <header className="main-header">
35
        <a href="/" className="logo">
36
          <img src={logo} alt="Company logo" />
6632 stevensc 37
        </a>
38
        <SearchInput />
6753 stevensc 39
        <div className="hamburgerIcon d-xl-none">
6704 stevensc 40
          <i className="fa fa-bars text-gray" onClick={toggleMenu} />
6632 stevensc 41
        </div>
6700 stevensc 42
        <nav className="header-navigation">
6694 stevensc 43
          <ul>
6695 stevensc 44
            {menu?.map((item, index) => (
45
              <li key={index}>
46
                <LinkItem {...item} />
47
              </li>
6694 stevensc 48
            ))}
49
          </ul>
6632 stevensc 50
        </nav>
51
        <UserImageDropdown
6694 stevensc 52
          image={image}
53
          fullName={name}
54
          linkAdmin={linkAdmin}
55
          linkImpersonate={linkImpersonate}
6632 stevensc 56
        />
6707 stevensc 57
      </header>
6704 stevensc 58
      <ResponsiveNavbar
59
        show={isShow}
6753 stevensc 60
        toggleMenu={closeMenu}
6704 stevensc 61
        name={name}
62
        image={image}
63
        visits={visits}
64
        country={country}
65
        description={description}
66
        connections={connections}
67
        linkAdmin={linkAdmin}
68
        linkImpersonate={linkImpersonate}
69
      />
6632 stevensc 70
    </>
71
  )
72
}
73
 
74
export default Header