import { notFound } from "next/navigation"; import { getCommissionLabels } from "@/lib/commission/catalog"; import { getCommissionTicket } from "@/lib/commission/tickets"; import { publicMediaUrl } from "@/lib/media/storage"; import { HttpError } from "@/lib/security/http"; import { CommissionRequestSummary } from "./request-summary"; import { CommissionTicketChat } from "./ticket-chat"; import { CommissionSlipDialog } from "./slip-dialog"; import { CommissionTicketPanels } from "./ticket-panels"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; export async function CommissionTicketDetail({ id, admin }: { id: string; admin: boolean }) { let data: Awaited>; try { data = await getCommissionTicket(id); } catch (cause) { if (cause instanceof HttpError && (cause.status === 401 || cause.status === 403 || cause.status === 404)) notFound(); throw cause; } const catalog = await getCommissionLabels(data.checkout.request); return
รายละเอียดคำขอ - ฿{data.checkout.amountBaht} {catalog && }

การชำระเงิน: {data.payment.transRef} - {data.payment.transferredAt.toLocaleString("th-TH")}

} chat={ ({ ...message, imageUrls: [imageObjectKey, ...(imageObjectKeys ?? [])].filter((key): key is string => Boolean(key)) .map(publicMediaUrl) }))} admin={admin} />} />
; }