import { ClipboardList, Calendar, Hash, Users, Car, Gauge, Clock, UserCheck, Briefcase, Receipt, DollarSign, } from "lucide-react" import { Card, CardContent, CardHeader, CardTitle, } from "@/shared/components/ui/card" import { Badge } from "@/shared/components/ui/badge" import { Separator } from "@/shared/components/ui/separator" import { JobCardActions } from "./job-card-actions" import { JobCardRemarksList } from "./job-card-remarks-list" import { JobCardRecommendationsList } from "./job-card-recommendations-list" import { getVehicleLabel } from "../vehicles/utils/getVehicleLabel" import { getFullName } from "@/shared/utils/getFullName" import { CrudShowResponse, JobCardsClient, PAYMENT_RECEIVED_ROUTES, PaymentReceivedClient } from "@garage/api" import { ResourcePage } from "@/shared/data-view/resource-page" import PaymentReceivedPage from "@/app/(authenticated)/sales/payment-received/page" import JobCardPaymentsReceived from "./job-card-payments-received" import { formatDate } from "@/shared/utils/formatters" import type { JobCardShowData } from "@garage/api" type JobCard = JobCardShowData function InfoItem({ icon: Icon, label, value, }: { icon: React.ComponentType<{ className?: string }> label: string value?: string | null }) { return (