Add enums, AuthService, and integrate backend registration endpoints
- 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
2026-03-27 18:01:42 +00:00
|
|
|
/**
|
|
|
|
|
* IdentityType Enum
|
|
|
|
|
* Tenant identity document type
|
|
|
|
|
* Used in: Property booking, allowedIdentities filter
|
|
|
|
|
*/
|
|
|
|
|
const IdentityType = Object.freeze({
|
|
|
|
|
SYRIAN: 'syrian',
|
|
|
|
|
PASSPORT: 'passport',
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// Map type → Arabic label
|
|
|
|
|
const IdentityTypeLabels = Object.freeze({
|
|
|
|
|
[IdentityType.SYRIAN]: 'هوية سورية',
|
|
|
|
|
[IdentityType.PASSPORT]: 'جواز سفر',
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// Map type → flag emoji
|
|
|
|
|
const IdentityTypeFlags = Object.freeze({
|
|
|
|
|
[IdentityType.SYRIAN]: '🇸🇾',
|
|
|
|
|
[IdentityType.PASSPORT]: '🛂',
|
|
|
|
|
});
|
|
|
|
|
|
2026-07-01 15:43:58 +03:00
|
|
|
const IdentityTypeTranslationKeys = Object.freeze({
|
|
|
|
|
[IdentityType.SYRIAN]: 'identityType.syrian',
|
|
|
|
|
[IdentityType.PASSPORT]: 'identityType.passport',
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
export { IdentityType, IdentityTypeLabels, IdentityTypeFlags, IdentityTypeTranslationKeys };
|