feat: implement comprehensive admin CRUD interfaces for swap stations, users, merchants, and roles with sidebar navigation updates

This commit is contained in:
sazzadulalambd
2026-04-26 18:32:52 +06:00
parent 03062bfc48
commit eadcf9b79c
13 changed files with 3895 additions and 10 deletions

View File

@@ -273,6 +273,14 @@ export default function RentalDetailPage() {
cancelled: 'bg-slate-100 text-slate-700',
locked: 'bg-red-100 text-red-700'
};
const statusLabels: Record<string, string> = {
active: 'Active',
pending: 'Pending',
completed: 'Completed',
disputed: 'Disputed',
cancelled: 'Cancelled',
locked: 'Locked'
};
return (
<div className="p-4 lg:p-6 max-w-8xl mx-auto">
@@ -290,7 +298,7 @@ export default function RentalDetailPage() {
<div className="flex items-center gap-3">
<h1 className="text-2xl font-extrabold text-slate-800">{rental.id}</h1>
<span className={`inline-flex items-center gap-1 text-xs font-medium px-2.5 py-1 rounded-full ${statusColors[rental.status]}`}>
{rental.status}
{statusLabels[rental.status] || rental.status}
</span>
{rental.status === 'locked' && (
<span className="inline-flex items-center gap-1 text-xs font-medium px-2.5 py-1 rounded-full bg-red-100 text-red-700">