From b14ba802ade3f724edfa6b2b09b643faa583f911 Mon Sep 17 00:00:00 2001 From: Fabian Mastenbroek Date: Wed, 28 Oct 2020 14:12:41 +0100 Subject: Migrate to Reactstrap for Navbar --- .../components/navigation/AppNavbarComponent.js | 9 +- frontend/src/components/navigation/HomeNavbar.js | 9 +- frontend/src/components/navigation/LogoutButton.js | 5 +- frontend/src/components/navigation/Navbar.js | 131 +++++++++++---------- 4 files changed, 81 insertions(+), 73 deletions(-) (limited to 'frontend/src') diff --git a/frontend/src/components/navigation/AppNavbarComponent.js b/frontend/src/components/navigation/AppNavbarComponent.js index 7a1c2462..c5de3d0b 100644 --- a/frontend/src/components/navigation/AppNavbarComponent.js +++ b/frontend/src/components/navigation/AppNavbarComponent.js @@ -1,22 +1,23 @@ import React from 'react' import FontAwesome from 'react-fontawesome' import { Link } from 'react-router-dom' +import { NavLink } from 'reactstrap' import Navbar, { NavItem } from './Navbar' import './Navbar.sass' const AppNavbarComponent = ({ project, fullWidth }) => ( - + My Projects - + {project ? ( - + {project.name} - + ) : undefined} diff --git a/frontend/src/components/navigation/HomeNavbar.js b/frontend/src/components/navigation/HomeNavbar.js index e22933af..08d222ea 100644 --- a/frontend/src/components/navigation/HomeNavbar.js +++ b/frontend/src/components/navigation/HomeNavbar.js @@ -1,13 +1,12 @@ import React from 'react' +import { NavItem, NavLink } from 'reactstrap' import Navbar from './Navbar' import './Navbar.sass' const ScrollNavItem = ({ id, name }) => ( -
  • - - {name} - -
  • + + {name} + ) const HomeNavbar = () => ( diff --git a/frontend/src/components/navigation/LogoutButton.js b/frontend/src/components/navigation/LogoutButton.js index e3de2ec7..78b02b44 100644 --- a/frontend/src/components/navigation/LogoutButton.js +++ b/frontend/src/components/navigation/LogoutButton.js @@ -2,11 +2,12 @@ import PropTypes from 'prop-types' import React from 'react' import FontAwesome from 'react-fontawesome' import { Link } from 'react-router-dom' +import { NavLink } from 'reactstrap' const LogoutButton = ({ onLogout }) => ( - + - + ) LogoutButton.propTypes = { diff --git a/frontend/src/components/navigation/Navbar.js b/frontend/src/components/navigation/Navbar.js index 164a2309..55f98900 100644 --- a/frontend/src/components/navigation/Navbar.js +++ b/frontend/src/components/navigation/Navbar.js @@ -1,6 +1,15 @@ -import classNames from 'classnames' -import React from 'react' -import { Link, withRouter } from 'react-router-dom' +import React, { useState } from 'react' +import { Link, useLocation } from 'react-router-dom' +import { + Navbar as RNavbar, + NavItem as RNavItem, + NavLink, + NavbarBrand, + NavbarToggler, + Collapse, + Nav, + Container, +} from 'reactstrap' import { userIsLoggedIn } from '../../auth/index' import Login from '../../containers/auth/Login' import Logout from '../../containers/auth/Logout' @@ -9,9 +18,6 @@ import './Navbar.sass' export const NAVBAR_HEIGHT = 60 -export const NavItem = withRouter((props) => ) -export const LoggedInSection = withRouter((props) => ) - const GitHubLink = () => ( ( ) -const NavItemWithoutRoute = ({ route, location, children }) => ( -
  • {children}
  • -) +export const NavItem = ({ route, children }) => { + const location = useLocation() + return {children} +} -const LoggedInSectionWithoutRoute = ({ location }) => ( -
      - {userIsLoggedIn() ? ( - [ - location.pathname === '/' ? ( - - - My Projects - - - ) : ( - - - - - - ), - - - , - ] - ) : ( - - - - - )} -
    -) +export const LoggedInSection = () => { + const location = useLocation() + return ( + + ) +} -const Navbar = ({ fullWidth, children }) => ( - -) + return ( + + + + + OpenDC + + + + + + + + + ) +} export default Navbar -- cgit v1.2.3