Idiomas e textos
Três idiomas vêm incluídos: en, pt-BR e es.
Escolhendo um idioma
<OfflineDetector locale="pt-BR">
<App />
</OfflineDetector>
Na web, a prop locale decide, e en é usado quando ela não é informada. No nativo, a prop locale
vence e, sem ela, usa-se o idioma do dispositivo. Qualquer valor desconhecido resolve para en. O
resolvedor nunca lança erro:
import { resolveLocale } from '@rogeriodocarmo/offline-detector-web'; // or -native
resolveLocale('pt-PT'); // 'pt-BR'
resolveLocale('es-MX'); // 'es'
resolveLocale('fr'); // 'en'
Qualquer variante de pt dá pt-BR, qualquer es-* dá es, e todo o resto dá en.
Os textos
| Chave | en | pt-BR | es |
|---|---|---|---|
offline | No internet | Sem internet | Sin internet |
offlineNoInterface | No network connection | Sem conexão com a rede | Sin conexión de red |
offlineNoInternet | Connected, but no internet | Conectado, mas sem internet | Conectado, pero sin internet |
online | Back online | Conexão restabelecida | Conexión restablecida |
retry | Retry | Tentar novamente | Reintentar |
checking | Checking… | Verificando… | Verificando… |
continueOffline | Continue offline | Continuar offline | Continuar sin conexión |
dismiss | Dismiss | Fechar | Cerrar |
dismissHint | Swipe left or right to dismiss | Deslize para a esquerda ou direita para fechar | Desliza a izquierda o a derecha para descartar |
indicatorLabelOnline | Online | Online | En línea |
indicatorLabelOffline | No internet | Sem internet | Sin internet |
indicatorLabelChecking | Checking connection | Verificando conexão | Verificando conexión |
indicatorAccessibleName | Connection status: {status} | Status da conexão: {status} | Estado de la conexión: {status} |
fullScreenTitle | No internet | Sem internet | Sin internet |
fullScreenBody | Check your connection and try again. | Verifique sua conexão e tente novamente. | Revisa tu conexión e inténtalo de nuevo. |
fullScreenRetry | Try again | Tentar novamente | Intentar de nuevo |
{status} é substituído pelo texto indicatorLabel* correspondente.
Sobrescrevendo textos
Passe um objeto parcial. Cada chave que você informar vence o texto do idioma; as demais ficam.
<OfflineDetector
locale="pt-BR"
strings={{ offline: 'Você está offline', retry: 'Outra vez' }}
>
<App />
</OfflineDetector>
A mesma mesclagem está disponível como função. Esses auxiliares, e resolveLocale acima, são
exportados por @rogeriodocarmo/offline-detector-web e por
@rogeriodocarmo/offline-detector-native; um só pacote basta para importá-los:
import {
resolveStrings,
offlineMessage,
indicatorName,
} from '@rogeriodocarmo/offline-detector-web'; // or -native
const strings = resolveStrings('pt-BR', { retry: 'Outra vez' });
offlineMessage(state, strings); // 'Sem internet' (sempre, por padrão)
offlineMessage(state, strings, true); // ciente do motivo: 'Sem conexão com a rede' ou 'Conectado, mas sem internet'
indicatorName(strings, strings.indicatorLabelOffline); // 'Status da conexão: Sem internet'
Uma sobrescrita igual a undefined é ignorada, e uma string vazia é mantida. indicatorName trata
o rótulo como texto simples.
Mensagens que dizem o motivo
Por padrão, toda mensagem de offline é offline. Com distinguishReason, a mensagem passa a ser
offlineNoInterface quando o motivo é no-interface e offlineNoInternet quando é no-internet.
O corpo da tela cheia não muda. O título da tela cheia é fullScreenTitle, na web e no nativo,
a menos que distinguishReason esteja ligado: então é a mensagem que depende do motivo.
Adicionando um idioma
As tabelas incluídas cobrem três idiomas. Para outro idioma, passe um objeto strings completo, ou
as chaves de que precisar, junto com o locale incluído mais próximo.
Sobre esta documentação
Esta documentação está disponível nos mesmos três idiomas. As traduções foram feitas com cuidado, mas ainda precisam de revisão por falantes nativos.