import { FormDialog } from "@repo/shadcn-ui/components/form-dialog"; import { useTranslation } from "react-i18next"; import type { WorkstationDTO } from "../common"; export function WorkstationHistoryDialog({ workstation, personName, siteName, members, onClose, }: { workstation: WorkstationDTO; personName: (id: string | null) => string; siteName: (id: string | null) => string; members: (ids: readonly string[], empty?: string) => string; onClose: () => void; }) { const { t, i18n } = useTranslation("assets"); return ( { if (!open) { onClose(); } }} open title={t("workstationHistory")} wide >
    {[...workstation.history].reverse().map((revision) => (
  1. {new Intl.DateTimeFormat(i18n.language, { dateStyle: "medium", timeStyle: "short", }).format(new Date(revision.recordedAt))}{" "} · {t("recordedBy", { name: revision.actorName })}

    {revision.values.name} · {t(revision.values.active ? "active" : "inactive")}

    {siteName(revision.values.siteId)} · {personName(revision.values.personId)}

    {t("exclusiveWorkstationAssets")}: {members(revision.values.assetIds)}

    {t("sharedWorkstationAssets")}:{" "} {members(revision.values.sharedAssetIds, "noSharedWorkstationAssets")}

  2. ))}
); }