Internacionalizacao (i18n)
O template suporta multiplos idiomas com selecao em build-time. Apenas um idioma e incluido no bundle final.
Idiomas disponiveis
| Codigo | Idioma |
|---|---|
pt-br | Portugues (Brasil) |
en | Ingles |
es | Espanhol |
es-mx | Espanhol (Mexico) |
Configuracao
Defina o idioma da marca na variavel de ambiente:
BRAND_LANGUAGE=pt-br
Isso determina qual conjunto de traducoes sera incluido no build.
Sobrescrevendo traducoes
Para personalizar textos sem alterar o SDK, crie arquivos de override:
1. Criar arquivo de override
app/locales/overrides/common.json
2. Adicionar apenas as chaves que deseja alterar
{
"button": {
"save": "Gravar"
}
}
3. Resultado
Apenas button.save sera sobrescrito. Todas as outras chaves mantem o valor original do SDK.
Namespaces disponiveis
| Namespace | Descricao |
|---|---|
common | Botoes, status, erros, paginacao |
auth | Login, registro, esqueceu senha |
payments | Deposito, saque, metodos de pagamento |
games | Cassino, busca, detalhes de jogo |
user | Conta, carteira, seguranca |
validation | Steps de validacao (email, telefone, KYC) |
sports | Esportes, ao vivo, apostas |
gamification | VIP, missoes, torneios, loja |
layout | Header, sidebar, footer, navegacao |
Exemplo de override completo
Para uma marca que quer personalizar o header e os botoes:
app/locales/overrides/layout.json:
{
"header": {
"deposit": "Adicionar saldo",
"register": "Criar conta"
}
}
app/locales/overrides/common.json:
{
"button": {
"confirm": "Confirmar operacao",
"cancel": "Voltar"
}
}
Interpolacao
As traducoes suportam variaveis dinamicas:
{
"greeting": "Ola, {{name}}!",
"balance": "Saldo: {{currency}} {{value}}"
}
Pluralizacao
Chaves com _one e _other para pluralizacao automatica:
{
"results_one": "{{count}} resultado",
"results_other": "{{count}} resultados"
}