Skip to content

Commit e788eeb

Browse files
author
Malin Kussi
committed
Changed Nav bar layout and combined 3 projects into dropdown
1 parent 792ccc7 commit e788eeb

File tree

3 files changed

+63
-13
lines changed

3 files changed

+63
-13
lines changed

src/pages/general/navigation/Navigation.tsx

Lines changed: 25 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
// Third party
2-
import React from 'react'
3-
import { Navbar, NavLink } from 'react-bootstrap'
2+
import React, { useState } from 'react'
3+
import { Navbar, NavLink, NavDropdown } from 'react-bootstrap'
44
import { Link } from 'react-router-dom'
5-
//import {motion} from 'framer-motion'; framer motion bug (maybe this project is just too outdated)
65

76
// Custom styles
87
import Styles from './NavigationStyles'
@@ -17,10 +16,13 @@ import nasaLogo from '../../../assets/pics/logos/nasa.png'
1716
const Navigation = (): React.ReactElement => {
1817
const { scroll } = getScrollY()
1918
const { width } = useWindowSize()
20-
const TEAMS = `https://teams.microsoft.com/l/team/19%3aeaf903fd81cd48eba95d8e769ed78544%40thread.tacv2/conversations?groupId=8f
19+
const TEAMS = `https://teams.microsoft.com/l/team/19%3aeaf903fd81cd48eba95d8e769ed78544%40thread.tacv2/conversations?groupId=8f
2120
78ecbb-62f3-4b2c-bda7-7488eca908ee&tenantId=716e81ef-b522-4473-8e31-10bd02ccf6e5`
22-
return (
2321

22+
// State for handling dropdown hover
23+
const [showDropdown, setShowDropdown] = useState(false)
24+
25+
return (
2426
<>
2527
{/* The rest of the navigation bar. The className is dependent on whether the navbar is expanded or not */}
2628
<Styles.NavigationBar id='navbar-transition'
@@ -44,12 +46,24 @@ const Navigation = (): React.ReactElement => {
4446
<NavLink eventKey='1' as={Link} to={Constants.PATHS.HOME} onClick={scrollToTop}>Home</NavLink>
4547
<NavLink eventKey='2' as={Link} to={Constants.PATHS.EVENTS} onClick={scrollToTop}>Events</NavLink>
4648
<NavLink eventKey='3' as={Link} to={Constants.PATHS.SPONSORS} onClick={scrollToTop}>Sponsors</NavLink>
47-
<NavLink eventKey='4' as={Link} to={Constants.PATHS.ROBOTICS} onClick={scrollToTop}>Robotics</NavLink>
48-
<NavLink eventKey='5' as={Link} to={Constants.PATHS.ROCKSAT} onClick={scrollToTop}>RockSat</NavLink>
49-
<NavLink eventKey='6' as={Link} to={Constants.PATHS.BALLOONING} onClick={scrollToTop}>NASA Ballooning</NavLink>
50-
<NavLink eventKey='8' as={Link} to={Constants.PATHS.MEETTHELEADS} onClick={scrollToTop}>
51-
Meet Our Robotics Leads
52-
</NavLink>
49+
{/* Projects Dropdown - Opens on Hover */}
50+
<NavDropdown
51+
title='Projects'
52+
id='projects-dropdown'
53+
show={showDropdown}
54+
onMouseEnter={() => setShowDropdown(true)}
55+
onMouseLeave={() => setShowDropdown(false)}
56+
className='nav-link'>
57+
<NavDropdown.Item as={Link} to={Constants.PATHS.ROBOTICS} onClick={scrollToTop}>
58+
Robotics
59+
</NavDropdown.Item>
60+
<NavDropdown.Item as={Link} to={Constants.PATHS.ROCKSAT} onClick={scrollToTop}>
61+
RockSat
62+
</NavDropdown.Item>
63+
<NavDropdown.Item as={Link} to={Constants.PATHS.BALLOONING} onClick={scrollToTop}>
64+
NASA Ballooning
65+
</NavDropdown.Item>
66+
</NavDropdown>
5367
</Styles.NavbarLinks>
5468
</Navbar.Collapse>
5569
</Styles.NavigationBar>

src/pages/general/navigation/NavigationStyles.tsx

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,5 +73,41 @@ export default class NavigationStyles {
7373
padding-left: 5%;
7474
font-size: 18px;
7575
}
76+
77+
/* Dropdown Styling */
78+
.nav-item {
79+
position: relative;
80+
padding: 4px 8px 8px 8px;
81+
}
82+
83+
a.dropdown-toggle {
84+
background-color: ${props => props.toggle ? `${COLORS.SELECTED}` : 'transparent'} !important;
85+
color: ${COLORS.TEXT} !important;
86+
font-size: 16px;
87+
}
88+
89+
/* Show dropdown on hover */
90+
.nav-item:hover .dropdown-menu {
91+
display: block !important;
92+
}
93+
94+
.dropdown-menu {
95+
display: none;
96+
position: absolute;
97+
background-color: ${props => props.toggle ? `${COLORS.SELECTED}` : 'transparent'} !important;
98+
padding: 0px 8px 8px 13px;
99+
border: none;
100+
}
101+
102+
.dropdown-item {
103+
color: ${COLORS.TEXT} !important;
104+
font-size: 15px;
105+
border: none;
106+
}
107+
108+
.dropdown-item:hover {
109+
background-color: ${props => props.toggle ? `${COLORS.SELECTED}` : 'transparent'} !important;
110+
color: ${COLORS.HOVER_TEXT} !important;
111+
}
76112
`
77113
}

src/pages/home/Home.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,9 @@ const Home = (): React.ReactElement => {
3838

3939
<Styles.SectionHeaderGradient>
4040
<Styles.SectionHeader>
41-
<h2>Sign up for volunteering and contact us on teams!</h2>
41+
<h2>Contact us on teams!</h2>
4242
<div className='button-container'>
43-
<Button text={'Sign up to Volunteer'} size={'large'} source={'https://forms.gle/1RcJw5DNXHVX2YzD8'}/>
43+
{/* <Button text={'Sign up to Volunteer'} size={'large'} source={'https://forms.gle/1RcJw5DNXHVX2YzD8'}/> */}
4444
<Button text='Join Teams Here!' source={TEAMS}/>
4545
</div>
4646
</Styles.SectionHeader>

0 commit comments

Comments
 (0)