Configurações — Módulo
Gerado pelo Writer (Reversa) em 2026-05-11
doc_level: detalhado
Visão Geral
Módulo de preferências do usuário que controla a aparência da visualização de músicas (fonte, tamanho, estilo do refrão) e o tema da UI. Configurações são persistidas via MMKV e carregadas no Redux na inicialização do app.
Regras de Negócio
- Configurações persistidas via MMKV (
react-native-mmkv) — acesso síncrono 🟢
- Carregamento inicial só executa uma vez (guard via
ConfiguracoesSelect.iniciado) 🟢
- Tema alterado aplica
UnistylesRuntime.setTheme(tema) sincrônico via RTK 🟢
- Fallback para valores padrão se chave ausente no MMKV 🟢
fonte: PADRAO, tamanho: NORMAL, estiloRefrao: NEGRITO, tema: CLARO
- Configurações de música e tema são agrupadas em
GrupoConfiguracoes 🟢
Requisitos Funcionais
| ID |
Requisito |
Prioridade |
Critério de Aceite |
| RF-01 |
Carregar configurações do MMKV na inicialização |
Must |
carregarConfiguracoes executado apenas uma vez; store preenchido |
| RF-02 |
Alterar família de fonte |
Must |
alterarFamiliaFonte persiste e atualiza store |
| RF-03 |
Alterar tamanho de fonte |
Must |
alterarTamanhoFonte persiste e atualiza store |
| RF-04 |
Alterar estilo do refrão |
Must |
alterarEstiloRefrao persiste e atualiza store |
| RF-05 |
Alterar tema |
Must |
alterarTema persiste, atualiza store e aplica UnistylesRuntime.setTheme |
Enums
| Enum |
Valores |
FonteMusica |
PADRAO, SERIFADO, MONOESPACADA |
TamanhoFonte |
NORMAL, MODERADO, GRANDE |
EstiloRefrao |
NEGRITO, ITALICO, CAIXA_ALTA |
Tema |
CLARO, ESCURO, CLARO_LEGADO, CLARO_ALTERNATIVO |
Rastreabilidade de Código
| Arquivo |
Função / Classe |
Cobertura |
src/store/ui/Configuracoes/Configuracoes.action.ts |
carregarConfiguracoes, alterarFamiliaFonte, alterarTamanhoFonte, alterarEstiloRefrao, alterarTema |
🟢 |
src/store/ui/Configuracoes/Configuracoes.types.ts |
Enums, interfaces |
🟢 |
src/repository/ConfiguracoesUsuarioRepository.ts |
getConfiguracoes, setConfiguracao |
🟢 |
src/view/screen/ConfiguracoesScreen.tsx |
ConfiguracoesScreen |
🟡 |
Dependências Externas
| Dependência |
Uso |
react-native-mmkv |
Persistência síncrona de configurações |
react-native-unistyles UnistylesRuntime |
Aplicação de tema em runtime |