import Link from "next/link"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { DueBadge } from "@/components/due-badge"; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from "@/components/ui/table"; import { JOB_STATUS_LABELS, PROSTHETIC_TYPE_LABELS, } from "@/lib/appwrite/job-types"; import type { JobWithCounterpart } from "@/lib/appwrite/job-queries"; import type { JobStatus } from "@/lib/appwrite/schema"; const dateFormatter = new Intl.DateTimeFormat("tr-TR", { day: "2-digit", month: "2-digit", year: "numeric", }); function statusVariant(status: JobStatus): "default" | "secondary" | "outline" | "destructive" { switch (status) { case "delivered": return "default"; case "sent": return "secondary"; case "in_progress": return "secondary"; case "cancelled": return "destructive"; default: return "outline"; } } export function JobsTable({ rows, counterpartLabel, emptyMessage, }: { rows: JobWithCounterpart[]; counterpartLabel: string; emptyMessage: string; }) { if (rows.length === 0) { return (
{emptyMessage}
); } return (