import Link from "next/link"; import { Card, CardHeader, CardTitle, CardDescription, CardContent, StatusBadge, JobTypeBadge } from "@/app/components/ui"; import type { TranslateFunction } from "@/lib/i18n/dictionaries"; interface JobOverviewCardProps { job: { id: string; type: string; status: string; library_id: string | null; book_id: string | null; started_at: string | null; finished_at: string | null; }; typeInfo: { label: string; description: string | null }; t: TranslateFunction; formatDuration: (start: string, end: string | null) => string; } export function JobOverviewCard({ job, typeInfo, t, formatDuration }: JobOverviewCardProps) { return ( {t("jobDetail.overview")} {typeInfo.description && ( {typeInfo.description} )}
ID {job.id}
{t("jobsList.type")}
{typeInfo.label}
{t("jobsList.status")}
{t("jobDetail.library")} {job.library_id || t("jobDetail.allLibraries")}
{job.book_id && (
{t("jobDetail.book")} {job.book_id.slice(0, 8)}…
)} {job.started_at && (
{t("jobsList.duration")} {formatDuration(job.started_at, job.finished_at)}
)}
); }