refactor(auth): Centraliza e padroniza o fluxo de autenticação #7

Closed
StsDanilo wants to merge 1 commits from testeLira into testeDeiro
Owner

Esta refatoração unifica todo o sistema de login e logout da aplicação, resolvendo inconsistências e eliminando código duplicado.

Problema Anterior:

  • A lógica de login estava espalhada por múltiplos componentes e páginas (/doctor/login, /patient/login, etc.).
  • Cada layout de área restrita (DoctorLayout, PatientLayout, etc.) tinha sua própria lógica de verificação de segurança e logout, resultando em bugs (ex: uso de Cookies vs. localStorage).

Solução Aplicada:

  • Foi criado um componente LoginForm unificado e inteligente, responsável por toda a interação de login.
  • Toda a lógica de comunicação com a API de autenticação foi centralizada no serviço api.mjs, incluindo uma nova função api.logout().
  • Todos os layouts de áreas restritas (DoctorLayout, PatientLayout, etc.) foram padronizados para usar localStorage.getItem('token') para verificação e para chamar api.logout() ao sair.
  • As páginas de login específicas de cada perfil foram atualizadas para usar o novo LoginForm genérico.
Esta refatoração unifica todo o sistema de login e logout da aplicação, resolvendo inconsistências e eliminando código duplicado. Problema Anterior: - A lógica de login estava espalhada por múltiplos componentes e páginas (`/doctor/login`, `/patient/login`, etc.). - Cada layout de área restrita (`DoctorLayout`, `PatientLayout`, etc.) tinha sua própria lógica de verificação de segurança e logout, resultando em bugs (ex: uso de Cookies vs. localStorage). Solução Aplicada: - Foi criado um componente `LoginForm` unificado e inteligente, responsável por toda a interação de login. - Toda a lógica de comunicação com a API de autenticação foi centralizada no serviço `api.mjs`, incluindo uma nova função `api.logout()`. - Todos os layouts de áreas restritas (`DoctorLayout`, `PatientLayout`, etc.) foram padronizados para usar `localStorage.getItem('token')` para verificação e para chamar `api.logout()` ao sair. - As páginas de login específicas de cada perfil foram atualizadas para usar o novo `LoginForm` genérico.
StsDanilo added 1 commit 2025-10-16 18:49:06 +00:00
Esta refatoração unifica todo o sistema de login e logout da aplicação, resolvendo inconsistências e eliminando código duplicado.

Problema Anterior:
- A lógica de login estava espalhada por múltiplos componentes e páginas (`/doctor/login`, `/patient/login`, etc.).
- Cada layout de área restrita (`DoctorLayout`, `PatientLayout`, etc.) tinha sua própria lógica de verificação de segurança e logout, resultando em bugs (ex: uso de Cookies vs. localStorage).

Solução Aplicada:
- Foi criado um componente `LoginForm` unificado e inteligente, responsável por toda a interação de login.
- Toda a lógica de comunicação com a API de autenticação foi centralizada no serviço `api.mjs`, incluindo uma nova função `api.logout()`.
- Todos os layouts de áreas restritas (`DoctorLayout`, `PatientLayout`, etc.) foram padronizados para usar `localStorage.getItem('token')` para verificação e para chamar `api.logout()` ao sair.
- As páginas de login específicas de cada perfil foram atualizadas para usar o novo `LoginForm` genérico.
StsDanilo closed this pull request 2025-10-21 12:41:39 +00:00

Pull request closed

Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: StsDanilo/riseup-squad21#7
No description provided.