Skip to main content

TDD — Signup email — Verify

Status

Implementado

Contexto

Verificação do código enviado por email. Ao validar, cria conta pendente e permite login.

Contratos

POST emailSignupVerifyHttp

  • Method: POST
  • Payload: { email, code }
  • Response 200: { ok: true, data: { verified: true }, error: null, debug }
  • Backend: valida código, cria conta pendente, habilita usuário Firebase

Interface de Usuário (UI)

Segundo passo do fluxo Signup email — tela de verificação de código.

Componentes e organização:

  • Exibição do email — "Enviamos um código para email@exemplo.com"
  • Campo Código — TextField ou OTP pins (6 dígitos)
  • Botão Verificar — submit; loading durante validação
  • Link "Reenviar código" — chama tdd-signup-resend (com cooldown)
  • Link "Voltar" para o start (opcional)

Observação: Código expira em tempo limitado; mensagem de erro exibida quando código inválido ou expirado.

Fluxo

  1. Frontend: VerifyEmailSignupCode.execute(email, code)
  2. Backend: valida código, cria conta (create-pending-account), retorna credenciais
  3. Frontend: faz login com token e redireciona

Código de referência

  • frontend/lib/application/use_cases/verify_email_signup_code.dart
  • backend/functions/src/application/use-cases/email-signup-flow.ts
  • backend/functions/src/application/use-cases/create-pending-account.ts