From 5aecfc061b3f009768ebac83c0d0ff596a371e9b Mon Sep 17 00:00:00 2001 From: sazzadulalambd Date: Wed, 13 May 2026 02:12:40 +0600 Subject: [PATCH] feat: add deposit field and enable inline editing for membership type in biker profile --- src/app/admin/bikers/[id]/page.tsx | 36 ++++++++++++++++++++++++++---- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/src/app/admin/bikers/[id]/page.tsx b/src/app/admin/bikers/[id]/page.tsx index e37154b..95accc6 100644 --- a/src/app/admin/bikers/[id]/page.tsx +++ b/src/app/admin/bikers/[id]/page.tsx @@ -16,7 +16,7 @@ import { Package, Fuel, Gauge, Timer, Coins, Receipt, ArrowRightLeft, Truck, Battery, Zap, Settings2, Siren, Printer, Clock3, UserCheck, Globe2, Building, HeartPulse, UsersRound, MessageSquareDashed, BellRing, - ListTodo, ClipboardList, BugOff, Info, SendHorizontal, PhoneOutgoing, Edit + ListTodo, ClipboardList, BugOff, Info, SendHorizontal, PhoneOutgoing, Edit, Pencil } from 'lucide-react'; import toast from 'react-hot-toast'; @@ -264,6 +264,7 @@ interface Biker { membershipType: string; rating: number; totalRatings: number; + depositAmount: number; role: string; totalRentals: number; activeRentals: number; @@ -284,6 +285,7 @@ const mockBiker: Biker = { membershipType: 'Premium', rating: 4.8, totalRatings: 156, + depositAmount: 5000, kyc: { fullName: 'Mohammad Rafiqul Islam', phone: '01712345678', @@ -880,8 +882,30 @@ export default function BikerDetailPage() { {biker.kycStatus === 'pending' && } KYC: {biker.kycStatus} - - {biker.membershipType} + + {editingSection === 'membership' ? ( + <> + + + + + ) : ( + <> + + {biker.membershipType} + + )} {biker.rating > 0 && ( @@ -2242,7 +2266,7 @@ export default function BikerDetailPage() { {activeTab === 'rent' && (
{/* Financial Summary */} -
+

Total Paid

৳{biker.totalPaid.toLocaleString()}

@@ -2255,6 +2279,10 @@ export default function BikerDetailPage() {

Pending

৳{biker.pendingAmount.toLocaleString()}

+
+

Deposit

+

৳{biker.depositAmount.toLocaleString()}

+

Penalties Paid

৳{biker.totalPenaltiesPaid.toLocaleString()}