import { fmtAge, fmtDate } from "@/lib/format";
import type { Database } from "@/lib/supabase/types";

type EmployeeRow = Database["public"]["Views"]["employees_directory"]["Row"];
type Location = Database["public"]["Tables"]["locations"]["Row"];

export function StammdatenTab({ employee, location }: { employee: EmployeeRow; location?: Location }) {
  const rows: [string, string][] = [
    ["Geburtsdatum", `${fmtDate(employee.birth_date)} (${fmtAge(employee.birth_date)} Jahre)`],
    ["SV-Nummer", employee.sv_nummer ?? "–"],
    ["Staatsbürgerschaft", employee.nationality],
    ["E-Mail", employee.email],
    ["Telefon", employee.phone ?? "–"],
    ["Standort", location ? `${location.name} (${location.country})` : "–"],
    ["Adresse", employee.address ?? "–"],
    ["Geschlecht", employee.gender === "m" ? "männlich" : "weiblich"],
  ];
  return (
    <dl className="grid grid-cols-1 gap-x-8 gap-y-4 sm:grid-cols-2 lg:grid-cols-3">
      {rows.map(([label, value]) => (
        <div key={label}>
          <dt className="text-xs font-semibold uppercase tracking-wide text-ink-muted">{label}</dt>
          <dd className="mt-1 text-sm text-ink">{value}</dd>
        </div>
      ))}
    </dl>
  );
}
