Skip to content

Conversation

@guing2003
Copy link
Owner

No description provided.

- Adicionadas telas de `LoginScreen`, `RegisterScreen` e `ForgotPasswordScreen` para gerenciar o acesso do usuário.
- Atualizado `AppNavHost` para incluir as novas rotas de autenticação e definir Login como destino inicial.
- Criados componentes de UI reutilizáveis: `PrimaryButton`, `EmailTextField`, `GenericOutlinedTextField` e `PasswordTextField` (com toggle de visibilidade).
- Expandido `AppDestinations` com as rotas `Register`, `Login` e `ForgotPassword`.
- Adicionados assets vetoriais para ícones de visibilidade de senha.
Adicionando configuração do Firebase Analytics e limpeza de imports

- Configurado plugin `google-services` no `build.gradle.kts` (raiz e app).
- Adicionado dependências do Firebase BOM e Analytics no `app/build.gradle.kts`.
- Incluído arquivo de configuração `google-services.json`.
- Removido import não utilizado em `RegisterScreen.kt`.
…ssão)

- Adicionado `AuthRepository`, wrapper de `FirebaseAuth` e `UserExtraData` para persistência no Firestore.
- Implementados `AuthViewModel`, `RegisterViewModel` e `SessionViewModel` para gerenciamento de estados e sessão.
- Integrada lógica de autenticação nas telas `LoginScreen` e `RegisterScreen` com feedback de erro e carregamento.
- Atualizado `AppNavHost` para redirecionamento baseado no estado da sessão (logado/deslogado).
- Configurada injeção de dependência dos novos componentes no `AppModule`.
- Implementado `AuthLocalDataSource` via DataStore para armazenar e recuperar o UID do usuário.
- Reestruturado pacote `remote`, separando implementações de `webApi` e `firebase`.
- Atualizados modelos (DTOs) e `UserRepository` para distinguir dados do GitHub (`UserForGit`) e Firebase (`UserForFirebase`).
- Ajustada rota da `Home` em `AppDestinations` para suportar argumento `uid`.
- Atualizado `AuthRepositoryImpl` para salvar o usuário localmente após login.
- Atualizado `UserRepository` para recuperar UID via `AuthLocalDataSource` internamente e retornar modelo de domínio.
- Separado estado de usuário em `userForGit` (busca) e `userForFirebase` (logado) no `HomeViewModel` e `HomeState`.
- Atualizada `HomeScreen` para exibir nome e username do usuário logado na TopAppBar e corrigida chamada de busca para `getUserForSearchGit`.
- Ajustada injeção de dependência do `UserRepository` no `AppModule`.
- Atualizado `AuthLocalDataSourceImpl` para retornar UID nulo e removido lançamento de exceção.
- Ajustado `UserRepositoryImpl` para retornar objeto vazio caso o UID seja nulo.
- Movida chamada `getUserForFirebase` do bloco `init` do ViewModel para `LaunchedEffect` na `HomeScreen`.
- Renomeado campo `userForGit` para `userForSearchGit` no `HomeState` e classes relacionadas.
- Atualizada `HomeScreen` para exibir avatar do usuário logado e menu dropdown com opção de sair.
- Implementado fluxo de `signOut` no `HomeViewModel`, `AuthRepository` e `AuthLocalDataSource` para limpar a sessão (`clearUID`).
- Adicionada lógica para buscar dados do GitHub do usuário autenticado separadamente da busca de usuários (`getUserForGit`).
- Refatorado `AuthLocalDataSource` renomeando `saveUser` para `saveUID`.
- Atualizado `AppModule` para injetar `AuthRepository` no `HomeViewModel`.
@guing2003 guing2003 merged commit b56fb4f into master Dec 12, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants