Files
CPLv4.0/components/Navigation.jsx
ISA 372a785af6 feat: Header- und Navigationskomponenten angepasst
- Header-Layout optimiert, um Temperatur und Icons korrekt anzuzeigen.
- Anpassungen in der Navigation Abstand zwischen die Elemente.
- Verbesserte Ausrichtung und Abstände für Header-Elemente.
- Farbanpassungen und Styling-Optimierungen in der Header.
-Auf verschiedene Bildschirm Auflösungen getestet (Full-HD und 2K/QHD)
2024-09-27 10:59:33 +02:00

47 lines
1.3 KiB
JavaScript

"use client";
import React, { useEffect, useState } from "react";
import Link from "next/link";
import { usePathname } from "next/navigation";
function Navigation() {
const pathname = usePathname();
const [activeLink, setActiveLink] = useState("");
useEffect(() => {
if (pathname) {
setActiveLink(pathname);
}
}, [pathname]);
const menuItems = [
{ name: "Übersicht", path: "/dashboard" },
{ name: "Kabelüberwachung", path: "/kabelueberwachung" },
{ name: "Zutrittskontrolle", path: "/access" },
{ name: "Ein- und Ausgänge", path: "/einausgaenge" },
{ name: "Analoge Eingänge", path: "/analogeEingaenge" },
{ name: "Meldungen", path: "/meldungen" },
];
return (
<aside>
<nav className="w-64 flex-shrink-0 h-full mt-24">
{menuItems.map((item) => (
<Link href={item.path} key={item.name}>
<div
className={`block px-4 py-2 mb-4 font-bold whitespace-nowrap transition duration-300 ${
activeLink === item.path
? "bg-sky-500 text-white rounded-r-full"
: "text-black hover:bg-gray-200 rounded-r-full"
}`}
>
{item.name}
</div>
</Link>
))}
</nav>
</aside>
);
}
export default Navigation;