"use client"; import { useTranslations } from "next-intl"; import { DataTable } from "@/components/admin/data-table"; import { Badge } from "@/components/ui/badge"; import { formatTimestamp } from "@/lib/admin-helpers"; import type { DataTableColumn, PaginatedResult } from "@/types"; interface TradeLogRow { id: number; userOneName: string; userTwoName: string; status: string; timestamp: number; } interface TradesTableProps { data: PaginatedResult; } export function TradesTable({ data }: TradesTableProps) { const t = useTranslations("pages.admin.logs"); const columns: DataTableColumn[] = [ { key: "id", label: t("colId"), sortable: true }, { key: "userOneName", label: t("trades.colUserOne") }, { key: "userTwoName", label: t("trades.colUserTwo") }, { key: "status", label: t("trades.colStatus"), sortable: true, render: (value) => { const v = String(value); const variant = v === "completed" ? "default" : v === "cancelled" ? "destructive" : "secondary"; return ( {v || t("trades.statusUnknown")} ); }, }, { key: "timestamp", label: t("colTime"), sortable: true, render: (value) => {formatTimestamp(Number(value))}, }, ]; return ( ); }