@@ -7,6 +7,17 @@ import { FiAlignJustify, FiX } from "react-icons/fi";
77export default function Navbar ( ) {
88 const router = useRouter ( ) ;
99 const [ menuOpen , setMenuOpen ] = useState ( false ) ;
10+ type NavLink = {
11+ label : string ;
12+ href : string ;
13+ } ;
14+ const navlinks : NavLink [ ] = [
15+ { label : "Home" , href : "/" } ,
16+ { label : "Schedule" , href : "/schedule" } ,
17+ { label : "Format & Rules" , href : "/format-rules" } ,
18+ { label : "Sponsor & Guest" , href : "/sponsor-guest" } ,
19+ { label : "Leaderboard" , href : "/leaderboard" } ,
20+ ] ;
1021 const handleNav = ( ) => {
1122 setMenuOpen ( ! menuOpen ) ;
1223 } ;
@@ -27,21 +38,17 @@ export default function Navbar() {
2738
2839 { /* Navbar traversal options container */ }
2940 < div className = "hidden items-center gap-8 sm:flex" >
30- < Link href = "/" className = "nav-link-active" >
31- Home
32- </ Link >
33- < Link href = "/schedule" className = "nav-link" >
34- Schedule
35- </ Link >
36- < Link href = "/format-rules" className = "nav-link text-dark" >
37- Format & Rules
38- </ Link >
39- < Link href = "/sponsor-guest" className = "nav-link text-dark" >
40- Sponsor & Guest
41- </ Link >
42- < Link href = "/leaderboard" className = "nav-link text-dark" >
43- Leaderboard
44- </ Link >
41+ { navlinks . map ( ( link ) => (
42+ < Link
43+ key = { link . href }
44+ href = { link . href }
45+ className = {
46+ router . pathname === link . href ? "nav-link-active" : "nav-link"
47+ }
48+ >
49+ { link . label }
50+ </ Link >
51+ ) ) }
4552 < div className = "mr-10 rounded-2xl bg-primary p-3 px-6 font-semibold text-light" >
4653 View Live Results
4754 </ div >
@@ -63,21 +70,17 @@ export default function Navbar() {
6370 </ div >
6471 </ div >
6572 < div className = "flex flex-col py-6" >
66- < Link href = "/" className = "nav-link-active" >
67- Home
68- </ Link >
69- < Link href = "/schedule" className = "nav-link" >
70- Schedule
71- </ Link >
72- < Link href = "/format-rules" className = "nav-link text-dark" >
73- Format & Rules
74- </ Link >
75- < Link href = "/sponsor-guest" className = "nav-link text-dark" >
76- Sponsor & Guest
77- </ Link >
78- < Link href = "/leaderboard" className = "nav-link text-dark" >
79- Leaderboard
80- </ Link >
73+ { navlinks . map ( ( link ) => (
74+ < Link
75+ key = { link . href }
76+ href = { link . href }
77+ className = {
78+ router . pathname === link . href ? "nav-link-active" : "nav-link"
79+ }
80+ >
81+ { link . label }
82+ </ Link >
83+ ) ) }
8184 </ div >
8285 </ div >
8386 </ >
0 commit comments