/** * BookingStatus Enum * Backend values are strings * Used in: Reservation workflow */ const BookingStatus = Object.freeze({ PENDING: 'pending', OWNER_APPROVED: 'owner_approved', ADMIN_APPROVED: 'admin_approved', ACTIVE: 'active', COMPLETED: 'completed', REJECTED: 'rejected', CANCELLED: 'cancelled', }); // Map status → Arabic label const BookingStatusLabels = Object.freeze({ [BookingStatus.PENDING]: 'بانتظار الموافقة', [BookingStatus.OWNER_APPROVED]: 'موافقة المالك', [BookingStatus.ADMIN_APPROVED]: 'موافقة الإدارة', [BookingStatus.ACTIVE]: 'إيجار نشط', [BookingStatus.COMPLETED]: 'منتهي', [BookingStatus.REJECTED]: 'مرفوض', [BookingStatus.CANCELLED]: 'ملغي', }); // Map status → color class (Tailwind bg) const BookingStatusColors = Object.freeze({ [BookingStatus.PENDING]: 'yellow', [BookingStatus.OWNER_APPROVED]: 'blue', [BookingStatus.ADMIN_APPROVED]: 'green', [BookingStatus.ACTIVE]: 'purple', [BookingStatus.COMPLETED]: 'gray', [BookingStatus.REJECTED]: 'red', [BookingStatus.CANCELLED]: 'red', }); export { BookingStatus, BookingStatusLabels, BookingStatusColors };