import { useNavigate } from "react-router-dom"; import { Paper, Stack, Table, Text } from "@mantine/core"; import { BookingPriorityBadge } from "@/components/bookings/BookingPriorityBadge"; import { BookingStatusBadge } from "@/components/bookings/BookingStatusBadge"; import type { IOverviewRecentBooking } from "@/types/overview"; function formatAmount(amount: number | null, currency: string | null) { if (amount == null) return "—"; const code = currency === "USD" ? "USD" : "ETB"; return new Intl.NumberFormat("en-US", { style: "currency", currency: code, maximumFractionDigits: 0, }).format(amount); } export function OverviewRecentBookingsTable({ bookings, }: { bookings: IOverviewRecentBooking[]; }) { const navigate = useNavigate(); return ( Recent bookings {bookings.length === 0 ? ( No recent bookings ) : ( Reference Customer Status Priority Amount Created {bookings.map((booking) => ( navigate(`/dashboard/booking-requests/${booking.id}`)} > {booking.reference} {booking.customerLabel} {formatAmount(booking.totalAmount, booking.paymentCurrency)} {new Date(booking.createdAt).toLocaleDateString()} ))}
)}
); }