ProfileDialog — Diálogo de perfil
Aberto ao clicar no avatar no header da Home (quando logado). Contém abas e ações de perfil.
Abas
- Dados Pessoais — Nome, apelido, email (readonly), telefone, igreja, avatar (preview, URL/câmera/galeria)
- Perfil na EBD — Cargo ativo, cargo desejado, solicitações de cargo, aprovar/rejeitar
- Mensagens e Preferências — Sub-tabs: Mensagens (lista do perfil), Preferências (skin: default/light/dark/sepia)
Ações gerais
- Sair — Botão no header do diálogo; clear + FirebaseAuth.signOut
Contratos de API (desta feature)
- GET
myProfileHttp— carga do perfil - POST
userGatewayHttp— USER_GET, USER_PROFILE_UPDATE, USER_ROLES_AVAILABLE_LIST, USER_ROLE_REQUEST, etc. - GET
publicChurchesHttp— opções de igreja (tab Dados) registerPendingAccount(callable) — registro inicial (quando perfil não existe)
Código de referência
frontend/lib/presentation/modules/profile_dialog/backend/functions/src/interfaces/http/my-profile-http-controller.ts