semillero-special-hotel/src/lib/roles.ts

27 lines
1.1 KiB
TypeScript

export interface RoleDetail {
id: string;
nameEn: string;
nameEs: string;
}
export const ROLES: Record<string, RoleDetail> = {
admin: { id: 'admin', nameEn: 'Administrator', nameEs: 'Administrador' },
director: { id: 'director', nameEn: 'Director', nameEs: 'Director' },
hotel_manager: { id: 'hotel_manager', nameEn: 'Hotel Manager', nameEs: 'Gerente de Hotel' },
commercial_leader: { id: 'commercial_leader', nameEn: 'Commercial Leader', nameEs: 'Líder Comercial' },
analyst: { id: 'analyst', nameEn: 'Analyst', nameEs: 'Analista' },
auditor: { id: 'auditor', nameEn: 'Auditor', nameEs: 'Auditor' },
collaborator: { id: 'collaborator', nameEn: 'Collaborator', nameEs: 'Colaborador' }
};
export function getRoleLabel(roleId: string, locale: 'en' | 'es' = 'es'): string {
const role = ROLES[roleId.toLowerCase()];
if (!role) return roleId;
return locale === 'en' ? role.nameEn : role.nameEs;
}
export function getRoleBilingualLabel(roleId: string): string {
const role = ROLES[roleId.toLowerCase()];
if (!role) return roleId;
return `${role.nameEs} / ${role.nameEn}`;
}