import { drawingApi } from "@/lib/api/drawings"; import { notFound } from "next/navigation"; import { Button } from "@/components/ui/button"; import { ArrowLeft, Download, FileText, GitCompare } from "lucide-react"; import Link from "next/link"; import { Badge } from "@/components/ui/badge"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { Separator } from "@/components/ui/separator"; import { RevisionHistory } from "@/components/drawings/revision-history"; import { format } from "date-fns"; export default async function DrawingDetailPage({ params, }: { params: { id: string }; }) { const id = parseInt(params.id); if (isNaN(id)) { notFound(); } const drawing = await drawingApi.getById(id); if (!drawing) { notFound(); } return (
{/* Header */}

{drawing.drawingNumber}

{drawing.title}

{(drawing.revisionCount ?? 0) > 1 && ( )}
{/* Main Info */}
Drawing Details {drawing.type}

Discipline

{typeof drawing.discipline === 'object' && drawing.discipline ? `${drawing.discipline.disciplineName} (${drawing.discipline.disciplineCode})` : drawing.discipline || 'N/A'}

Sheet Number

{drawing.sheetNumber}

Scale

{drawing.scale || "N/A"}

Latest Issue Date

{drawing.issueDate ? format(new Date(drawing.issueDate), "dd MMM yyyy") : 'N/A'}

Preview

PDF Preview Placeholder

{/* Revisions */}
); }