All checks were successful
Build frontend / build (push) Successful in 57s
- Add separate enum files: BuildingType, PropertyStatus, BookingStatus, CommissionType, IdentityType, UserRole, City, LoginMethod, OwnerType, CustomerType - Add AuthService (addToken/getToken/deleteToken) - Update api.js: use AuthService, add Owner/Add and Customer/Add endpoints - Update login page to use AuthService for token storage - Rewrite owner register: 3-step flow with OwnerType dropdown, backend integration, OTP verification - Rewrite tenant register: 2-step flow with CustomerType dropdown, backend integration, OTP verification - Update homepage and property detail to use enums instead of hardcoded maps - Update AddPropertyForm to import from enums directly - Add console logs and status toasts linked to API response messages
34 lines
947 B
JavaScript
34 lines
947 B
JavaScript
/**
|
|
* PropertyStatus Enum
|
|
* Backend values are numeric (0, 1, 2)
|
|
* Used in: PropertyInformation.status
|
|
*/
|
|
const PropertyStatus = Object.freeze({
|
|
AVAILABLE: 0,
|
|
BOOKED: 1,
|
|
MAINTENANCE: 2,
|
|
});
|
|
|
|
// Map numeric value → Arabic label
|
|
const PropertyStatusLabels = Object.freeze({
|
|
[PropertyStatus.AVAILABLE]: 'متاح',
|
|
[PropertyStatus.BOOKED]: 'محجوز',
|
|
[PropertyStatus.MAINTENANCE]: 'صيانة',
|
|
});
|
|
|
|
// Map numeric value → English key (for UI filters)
|
|
const PropertyStatusKeys = Object.freeze({
|
|
[PropertyStatus.AVAILABLE]: 'available',
|
|
[PropertyStatus.BOOKED]: 'booked',
|
|
[PropertyStatus.MAINTENANCE]: 'maintenance',
|
|
});
|
|
|
|
// Reverse map: English key → numeric value
|
|
const PropertyStatusByKey = Object.freeze({
|
|
available: PropertyStatus.AVAILABLE,
|
|
booked: PropertyStatus.BOOKED,
|
|
maintenance: PropertyStatus.MAINTENANCE,
|
|
});
|
|
|
|
export { PropertyStatus, PropertyStatusLabels, PropertyStatusKeys, PropertyStatusByKey };
|