import { CheckCircle2, XCircle } from "lucide-react";
import type { ExportJobRecord } from "../api/schemas";
import { exportDownloadUrl } from "../api/service";
import { formatInt } from "../lib/format";
/**
* Presentational status line for an async export job. Polling is the
* caller's responsibility (react-query `refetchInterval`).
*/
export function WorkflowStatus({
job,
runId,
}: {
job: ExportJobRecord;
runId: string;
}) {
if (job.status === "complete") {
return (
Export ready · {formatInt(job.objectCount)} objects
Download tar
);
}
if (job.status === "failed") {
return (
Export failed{job.error ? `: ${job.error}` : ""}
);
}
return (
Export running…
);
}