import React from "react"; import { View, ScrollView, Pressable } from "react-native"; import { useLocalSearchParams, router, Stack } from "expo-router"; import { Text } from "@/components/ui/text"; import { Button } from "@/components/ui/button"; import { Card } from "@/components/ui/card"; import { FileText, Calendar, Share2, Download, ArrowLeft, Tag, CreditCard, Building2, ExternalLink, } from "@/lib/icons"; import { MOCK_INVOICES } from "@/lib/mock-data"; import { ScreenWrapper } from "@/components/ScreenWrapper"; import { ShadowWrapper } from "@/components/ShadowWrapper"; const MOCK_ITEMS = [ { description: "Marketing Landing Page Package", qty: 1, unitPrice: 1000, total: 1000, }, { description: "Instagram Post Initial Design", qty: 4, unitPrice: 100, total: 400, }, ]; export default function InvoiceDetailScreen() { const { id } = useLocalSearchParams<{ id: string }>(); const invoice = MOCK_INVOICES.find((i) => i.id === id); return ( router.back()} className="h-10 w-10 rounded-[10px] bg-card items-center justify-center border border-border" > Invoice Details {/* Status Hero Card */} {invoice?.status || "Pending"} Total Amount ${invoice?.amount.toLocaleString() ?? "—"} Due {invoice?.dueDate || "—"} #{invoice?.invoiceNumber || id} {/* Recipient & Category — inline info strip */} Recipient {invoice?.recipient || "—"} Category Subscription {/* Items / Billing Summary */} Billing Summary {MOCK_ITEMS.map((item, i) => ( {item.description} QTY: {item.qty} · ${item.unitPrice}/unit ${item.total.toLocaleString()} ))} Total Balance ${invoice?.amount.toLocaleString() || "0"} {/* Actions */} ); }