-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.tsx
More file actions
123 lines (113 loc) · 3.79 KB
/
index.tsx
File metadata and controls
123 lines (113 loc) · 3.79 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
'use client';
import React, {
useCallback,
useState,
} from 'react';
import { MdMenu } from 'react-icons/md';
import { _cs } from '@togglecorp/fujs';
import Image from 'next/image';
import { usePathname } from 'next/navigation';
import Button from '#components/Button';
import Link from '#components/Link';
import logo from '#public/logo.png';
import PopupButton from '../PopupButton';
import styles from './styles.module.css';
interface Props {
className?: string;
}
export default function Navbar(props: Props) {
const {
className,
} = props;
const pathname = usePathname();
const [isNavShown, setNavShown] = useState(false);
const handleNavToggle = useCallback(() => {
setNavShown((oldVal) => !oldVal);
}, []);
return (
<div className={_cs(className, styles.navbar)}>
<div className={styles.content}>
<div className={styles.imageContainer}>
<Image
className={styles.image}
src={logo}
alt="logo"
/>
</div>
<div className={_cs(isNavShown && styles.navShown, styles.links)}>
<PopupButton
persistent={false}
label="About"
>
<Link
href="/about/approach"
variant="navigation"
active={pathname === '/about/approach/'}
>
Our Approach
</Link>
<Link
href="/about"
variant="navigation"
active={pathname === '/about/'}
>
Our Journey
</Link>
<Link
href="/about"
variant="navigation"
active={pathname === '/about/'}
>
Our Members
</Link>
</PopupButton>
<Link
href="/"
variant="navigation"
active={pathname === '/work/'}
>
Work
</Link>
<Link
href="/"
variant="navigation"
active={pathname === '/resources/'}
>
Resources
</Link>
<Link
href="/"
variant="navigation"
active={pathname === '/updates/'}
>
Updates
</Link>
<Link
href="/"
variant="navigation"
active={pathname === '/contact/'}
>
Contact
</Link>
</div>
<Link
className={styles.supportLink}
href="/"
variant="reverse"
>
Support Us
</Link>
<div className={styles.rightContainer}>
<Button
className={_cs(styles.menu)}
name="toggle"
variant="transparent"
onClick={handleNavToggle}
>
<MdMenu />
</Button>
</div>
</div>
</div>
);
}