import { FileText, Calendar, Hash, Users, Car, Building2, CircleDollarSign, Clock, Mail, Phone, 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 { formatDate, formatCurrency, formatEnum, formatNumber } from "@/shared/utils/formatters" type InvoiceData = { id?: number subject?: string invoice_number?: string invoice_title?: string invoice_date?: string due_date?: string status?: string notes?: string terms_and_conditions?: string customer_name?: string customer_id?: number customer?: any vehicle_name?: string vehicle_id?: number vehicle?: any department_name?: string department_id?: number payment_terms_id?: number payment_mode_id?: number amount?: number | string | null received_payment?: number | string | null discount?: string has_insurance?: number | boolean insurer_id?: number | null insurer?: any kms_in?: number | null invoice_to_id?: number | null billing_address_id?: number | null delivery_address_id?: number | null created_at?: string updated_at?: string } type InvoiceGeneralInfoProps = { invoice: InvoiceData } function InfoItem({ icon: Icon, label, value, }: { icon: React.ComponentType<{ className?: string }> label: string value?: string | null }) { return (
{customer.address_line_1}
{customer.address_line_2 ? `, ${customer.address_line_2}` : ""}
{customer.city ? `${customer.city}` : ""}
{customer.zip_code ? `, ${customer.zip_code}` : ""}
{invoice.notes}
{invoice.terms_and_conditions}