import {X} from "lucide-react"; import {useNavigate} from "react-router-dom"; import type {LoginResponse} from "../api/dtos/LoginResponse.ts"; import {getUserUrl} from "../routes.ts"; import Button from "./basics/Button.tsx"; import {ButtonType} from "./basics/BasicButtonDefinitions.ts"; import type {UserDto} from "../api/dtos/UserDto.ts"; /** * Overlay settings menu that displays current user info * and provides navigation to user management. */ type SettingsMenuProps = { onClose: () => void; }; export function SettingsMenu({onClose}: SettingsMenuProps) { const navigate = useNavigate(); const storedSession = localStorage.getItem("session"); const loginData: LoginResponse | null = storedSession ? JSON.parse(storedSession) : null; const user = loginData?.userData; const formatUserName = (user: UserDto) => { const parts = []; if (user.firstName) parts.push(user.firstName); if (user.lastName) parts.push(user.lastName); return parts.length > 0 ? parts.join(" ") : user.userName; }; return (
{/* Close button */}

Einstellungen

{user ? ( <>

{formatUserName(user)}

{user.role === "admin" ? "Administrator" : "Benutzer"}

); }