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
- Frontend: VerifyEmailSignupCode.execute(email, code)
- Backend: valida código, cria conta (create-pending-account), retorna credenciais
- Frontend: faz login com token e redireciona
Código de referência
frontend/lib/application/use_cases/verify_email_signup_code.dartbackend/functions/src/application/use-cases/email-signup-flow.tsbackend/functions/src/application/use-cases/create-pending-account.ts