Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • T taskee_frontend_mobile
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Taskee
  • taskee_frontend_mobile
  • Merge requests
  • !31

Merged
Created Nov 11, 2025 by Suzan Stockey Pereira@suzan.pereira😊Developer4 of 7 tasks completed4/7 tasks

feat(profile): Adiciona estrutura inicial da tela de Perfil (WIP)

  • Overview 0
  • Commits 16
  • Changes 25

Descrição

Este PR implementa a funcionalidade completa da tela de Editar Perfil, desde a estrutura inicial até a integração total com o backend, validação de campos e componentização.

Principais Funcionalidades:

  • Integração de API: handleSave (PUT /users/{id}), handleDeleteAccount (DELETE /users/{id}) e handleLogout (auth.signOut) estão 100% funcionais.

  • Validação: Adicionado sistema de validação (validateFields) que destaca os campos com borda vermelha (error prop) e exibe um Alert com mensagens de erro específicas.

  • Componentização: Criados TaskeeDatePickerField e TaskeePhoneField para encapsular a lógica de seleção de data e a lógica de DDI+Telefone.

  • Refatoração de Dropdown: Substituída a biblioteca de dropdown por react-native-dropdown-picker, que corrige o bug de VirtualizedList (com listMode="MODAL") e adiciona a funcionalidade de busca.

Principais Correções de Bugs:

  • Corrigida a lógica de splitPhoneNumber para separar DDI/Telefone corretamente.

  • Corrigida a "race condition" (bug de useEffect) que fazia os campos "País", "Estado" e "Cidade" ficarem em branco após Salvar ou Cancelar.

  • Corrigido o bug onde clicar em "Editar Perfil" (agora no Header) resetava os estados do formulário.

  • Adicionadas melhorias de UI, como "País (Brasil)" e "Estado (RS)".

US e Task

Link da tarefa

  • US:
  • Task:

Tipo de Mudança

  • Nova funcionalidade (feat)
  • Correção de bug (fix)
  • Outro

Como Testar

Passos para reproduzir/testar:

    1. Navegue até a tela de Perfil. Verifique se todos os dados (incluindo DDI/Telefone, País (Brasil), Estado (RS)) são carregados corretamente.
    1. Clique no ícone de Editar no cabeçalho.
    1. Teste as Validações:
    • Apague o "Nome" e clique em "Salvar".
    • Verifique se as bordas ficam vermelhas e se o Alerta exibe as mensagens corretas (ex: "O nome não pode estar em branco.").
    1. Teste os Dropdowns:
    • Abra o dropdown "País". Verifique se a barra de busca funciona.
    • Selecione "Brazil (Brasil)", abra "Estado" e verifique a busca e as siglas (RS).
    1. Teste a Lógica de Estado:
    • Altere o Estado e clique em "Salvar". Verifique se o campo não fica em branco após o sucesso.
    • Altere o Estado, clique em "Cancelar". Verifique se o estado original (com a sigla) é restaurado.
    1. Teste as Ações:
    • Faça uma alteração válida e clique em "Salvar". Verifique a mensagem de sucesso.
    • Clique em "Sair da Conta" e verifique se é redirecionado para a tela inicial do app.
    • Faça login novamente, vá ao perfil e clique em "Deletar Conta". Verifique o modal de confirmação e a ação.

Checklist

  • Código segue o padrão definido
  • As string estão sendo pegas do arquivo String.ts
  • Documentação atualizada (se necessário)
  • PR revisado antes de enviar
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: feat/view-edit-profile