Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Frontend Frontend
  • 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 2
    • Merge requests 2
  • 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
  • Vincula
  • FrontendFrontend
  • Merge requests
  • !71

Merged
Created Oct 22, 2025 by Leonardo Bertinatto@leonardo.bertinattoOwner

[167] Desabilitar botões enquanto uma chamada de API é feita

  • Overview 2
  • Commits 4
  • Pipelines 3
  • Changes 17

Tarefa relacionada

167

O que Foi Adicionado

  • Button agora aceita loading, loadingLabel e loadingIcon, exibindo spinner e gerúndio padrão (“Salvando…”, “Excluindo…”, “Removendo…”, “Adicionando…”).
  • Novas chaves em src/texts.ts para os rótulos no gerúndio e mensagens equivalentes aos fluxos (adicionar investigado/arquivo, excluir caso).
  • Cobertura de testes para os estados de carregamento no ConfirmationModal, CreateCaseModal, RemoveModal e FilesSection.

O que Foi Modificado

  • Todos os botões que disparam mutations (CreateCaseModal, fluxos de casos, investigados, permissões, arquivos) usam mutateAsync/isPending, desabilitam interações e mostram o gerúndio correto durante a chamada.
  • ConfirmationModal, AllowVisualizationModal, FilesSection, ModalAddFile e RemoveModal passaram a propagar os novos estados de carregamento.
  • Ajustes nos mocks de testes (FilesSection, Modals) para refletir as novas props (isPending, primaryLoading) e validar o comportamento atualizado.

O que Foi Removido

  • Nenhuma funcionalidade foi eliminada; apenas substituímos labels estáticos por rótulos dinâmicos.

Como Testar

  • /casos → “ADICIONAR CASO”: abrir modal, preencher nome e salvar; botão deve mostrar “Adicionando…” e ficar travado até fechar e atualizar a lista.
  • /casos/[id]:
    • “Alterar nome”: editar e salvar; observar “Salvando…” + bloqueio do botão.
    • “Alterar situação”: mesmo comportamento com “Salvando…”.
    • “Excluir caso”: confirmar e verificar “Excluindo…” até redirecionar.
    • Investigados: preencher Nome + CPF/CNPJ válido e clicar +; ícone exibe spinner “Adicionando…”. Remover investigado abre modal com “Removendo…” enquanto aguarda.
    • “Permitir visualização”: selecionar usuário, salvar e acompanhar “Salvando…” com spinner.
    • Seção Arquivos: usar ação “Delete”; modal deve mostrar “Removendo…”. Em “Upload”, enviar arquivo e confirmar que o botão mostra spinner + “Adicionando...” até concluir.

Screenshots

Captura_de_Tela_2025-10-22_às_18.12.30Alterar_SituaçãoInserir_InvestigadoPermitir_VisualizaçãoRemover_investigadoAdicionar_CasoAlterar_Nome

Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: 167/disable-button-on-api-calls