import { Link as RouterLink } from "react-router-dom"; import Box from "@mui/material/Box"; import Typography from "@mui/material/Typography"; import Avatar from "@mui/material/Avatar"; import { Card, Button, StatusChip, EmptyState } from "../../ui"; import { LEAVE_TYPE_LABELS, STATUS_LABELS } from "../../utils/dashboardHelpers"; interface AttendanceUser { user_id: number | string; name: string; initials?: string; status: string; leave_type?: string; arrived_at?: string; } interface AttendanceData { users: AttendanceUser[]; } interface DashAttendanceTodayProps { attendance: AttendanceData | null; } // Maps the attendance status to the StatusChip / avatar tint color. // Mirrors the legacy dash-status-* dot classes: in→success, away→warning, // out→default, leave→error. const STATUS_COLOR: Record< string, "default" | "success" | "warning" | "error" > = { in: "success", away: "warning", out: "default", leave: "error", }; export default function DashAttendanceToday({ attendance, }: DashAttendanceTodayProps) { if (!attendance) { return null; } return ( Docházka dnes {attendance.users.length === 0 ? ( ) : ( {attendance.users.map((u, i) => { const color = STATUS_COLOR[u.status] ?? "default"; const isDefault = color === "default"; return ( {u.initials || "?"} {u.name} {u.arrived_at && ( {u.arrived_at} )} ); })} )} ); }