/* |-------------------------------------------------------------------------- | Agência PSI |-------------------------------------------------------------------------- | Criado e desenvolvido por Leonardo Nohama | | Tecnologia aplicada à escuta. | Estrutura para o cuidado. | | Arquivo: src/constants/roles.js | Data: 2026 | Local: São Carlos/SP — Brasil |-------------------------------------------------------------------------- | © 2026 — Todos os direitos reservados |-------------------------------------------------------------------------- */ /** * Roles canônicas do sistema (tenant-level) * Esses valores devem refletir exatamente o que existe no banco. */ export const ROLES = { CLINIC_ADMIN: 'clinic_admin', TENANT_ADMIN: 'tenant_admin', // legado (compatibilidade) THERAPIST: 'therapist', PATIENT: 'patient' }; /** * Retorna a rota base (home) de cada role. * Usado após login, guards e redirecionamentos. */ export function roleToHome(role) { switch (role) { case ROLES.CLINIC_ADMIN: case ROLES.TENANT_ADMIN: // compatibilidade return '/admin'; case ROLES.THERAPIST: return '/therapist'; case ROLES.PATIENT: return '/portal'; default: return '/'; } } /** * Lista todas as roles válidas * Útil para validações e guards */ export const ALL_ROLES = Object.values(ROLES); /** * Verifica se uma role é válida */ export function isValidRole(role) { return ALL_ROLES.includes(role); }