TDD — Registro (RegisterPage)
Status
Section titled “Status”Implementado
Contexto
Section titled “Contexto”Tela de registro. Fluxo de signup por email (start → verify → resend). Seleção de igreja via publicChurchesHttp.
Interface de Usuário (UI)
Section titled “Interface de Usuário (UI)”Tela de registro com fluxos paralelos: Signup email e Signup com Google.
Componentes e organização:
- Abas ou seções: Email (start → verify → resend) e Google
- Signup email: campos Email, Senha, Nome (opcional), Igreja (dropdown
publicChurchesHttp); botão “Enviar código”; navegação para verify e resend - Signup Google: campos Nome e Igreja; botão “Continuar com Google”
- Link para voltar ao Login
Observação: A seleção de igreja é obrigatória para ambos os fluxos; lista de igrejas vem de publicChurchesHttp.
Contratos
Section titled “Contratos”emailSignupStartHttp— iniciar signup (email)emailSignupVerifyHttp— verificar códigoemailSignupResendHttp— reenviar códigopublicChurchesHttp— opções de igreja para signupregisterPendingAccount(callable) — criar conta pendente após verify
- Usuário informa email, igreja → start
- Recebe código por email → verify
- Se sucesso → registerPendingAccount (ou fluxo similar)
- Login e redirecionamento
Código de referência
Section titled “Código de referência”frontend/lib/presentation/pages/login/register_page.dartfrontend/lib/application/use_cases/start_email_signup.dartfrontend/lib/application/use_cases/verify_email_signup_code.dartfrontend/lib/application/use_cases/resend_email_signup_code.dartbackend/functions/src/interfaces/http/email-signup-http-controller.tsbackend/functions/src/interfaces/http/public-churches-http-controller.ts