Proyectos de Subversion LeadersLinked - Antes de SPA

Rev

Rev 5400 | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
5455 stevensc 1
/* eslint-disable camelcase */
4250 stevensc 2
/* eslint-disable react/prop-types */
5128 stevensc 3
import React, { useEffect, useState } from 'react'
4
import NavLinks from './nav-links/NavLinks'
5
import ChatHelper from '../../../chat/chatHelper/ChatHelper'
6
import UserImageDropdown from './user-dropdown/UserImageDropdown'
7
import SearchInput from './searchbox/SearchInput'
8
import ResponsiveNavbar from './responsive-navbar/ResponsiveNavbar'
5399 stevensc 9
import { useDispatch } from 'react-redux'
10
import { setIntlLabels } from '../../../redux/intl/intl.action'
4250 stevensc 11
 
5399 stevensc 12
const Navbar = ({ navbarVars, labels }) => {
4250 stevensc 13
  const {
14
    image,
15
    fullName,
16
    companyVars,
17
    isChatPage,
18
    linkAdmin,
19
    linkImpersonate,
20
    routeCheckSession,
21
    logoForNavbar,
22
    menu: menuProps
5128 stevensc 23
  } = navbarVars
24
  const [navbarOpen, setNavbarOpen] = useState(false)
5399 stevensc 25
  const dispatch = useDispatch()
4250 stevensc 26
 
27
  useEffect(() => {
5400 stevensc 28
    dispatch(setIntlLabels(labels))
5399 stevensc 29
  }, [])
30
 
4250 stevensc 31
  return (
32
    <>
33
      <nav className='navbar'>
4917 stevensc 34
        <a href="/" className='logo d-none d-xl-block'>
4250 stevensc 35
          <img src={logoForNavbar} alt="logo" />
36
        </a>
37
        <SearchInput />
38
        <div className='hamburgerIcon'>
4913 stevensc 39
          <i className="fa fa-bars text-gray" onClick={() => setNavbarOpen(!navbarOpen)} />
4250 stevensc 40
        </div>
41
        <nav className='navLinksContainer'>
42
          <NavLinks
4335 stevensc 43
            menuData={menuProps}
4250 stevensc 44
            companyVars={companyVars}
45
            sessionLink={routeCheckSession}
46
          />
47
        </nav>
4913 stevensc 48
        <UserImageDropdown
49
          image={image}
50
          fullName={fullName}
51
          linkAdmin={linkAdmin}
52
          linkImpersonate={linkImpersonate}
53
        />
4250 stevensc 54
      </nav>
55
      <ResponsiveNavbar
56
        show={navbarOpen}
57
        navbarVars={navbarVars}
58
        companyVars={companyVars}
59
        image={image}
60
        fullName={fullName}
61
        linkAdmin={linkAdmin}
62
        linkImpersonate={linkImpersonate}
63
      />
64
      {window.innerWidth < 1000 && !isChatPage && <ChatHelper />}
65
    </>
66
  )
67
}
68
 
5128 stevensc 69
export default Navbar