Files
edr-platform/apps/edr-passenger-web/portal/src/components/schedules/ScheduleTable.tsx
2026-06-02 19:14:34 +03:00

46 lines
972 B
TypeScript

import { Table, type TableColumn } from "@edr/ui-common";
interface ISchedule {
id: string;
trainCode: string;
status: string;
departureTime: string;
arrivalTime: string;
basePrice: number;
}
export interface ScheduleTableProps {
schedules: ISchedule[];
}
const columns: TableColumn<ISchedule>[] = [
{ key: "trainCode", header: "Train" },
{ key: "status", header: "Status" },
{
key: "departureTime",
header: "Departure",
render: (row) => new Date(row.departureTime).toLocaleString(),
},
{
key: "arrivalTime",
header: "Arrival",
render: (row) => new Date(row.arrivalTime).toLocaleString(),
},
{
key: "basePrice",
header: "Base price",
render: (row) => row.basePrice.toFixed(2),
},
];
const ScheduleTable = ({ schedules }: ScheduleTableProps) => (
<Table
columns={columns}
data={schedules}
rowKey={(row) => row.id}
emptyMessage="No schedules yet"
/>
);
export default ScheduleTable;