mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-06-21 14:21:46 +00:00
chore: move i18n to shared package (#1066)
* chore: move i18n to shared package * chore: move server translations to shared package and apply linter and prettier on entire shared package
This commit is contained in:
@@ -0,0 +1,367 @@
|
||||
import type { TranslationStrings } from '../types';
|
||||
|
||||
const admin: TranslationStrings = {
|
||||
'admin.notifications.title': 'Notificações',
|
||||
'admin.notifications.hint':
|
||||
'Escolha um canal de notificação. Apenas um pode estar ativo por vez.',
|
||||
'admin.notifications.none': 'Desativado',
|
||||
'admin.notifications.email': 'E-mail (SMTP)',
|
||||
'admin.notifications.webhook': 'Webhook',
|
||||
'admin.notifications.save': 'Salvar configurações de notificação',
|
||||
'admin.notifications.saved': 'Configurações de notificação salvas',
|
||||
'admin.notifications.testWebhook': 'Enviar webhook de teste',
|
||||
'admin.notifications.testWebhookSuccess':
|
||||
'Webhook de teste enviado com sucesso',
|
||||
'admin.notifications.testWebhookFailed': 'Falha ao enviar webhook de teste',
|
||||
'admin.smtp.title': 'E-mail e notificações',
|
||||
'admin.smtp.hint': 'Configuração SMTP para envio de notificações por e-mail.',
|
||||
'admin.smtp.testButton': 'Enviar e-mail de teste',
|
||||
'admin.webhook.hint':
|
||||
'Enviar notificações para um webhook externo (Discord, Slack, etc.).',
|
||||
'admin.smtp.testSuccess': 'E-mail de teste enviado com sucesso',
|
||||
'admin.smtp.testFailed': 'Falha ao enviar e-mail de teste',
|
||||
'admin.title': 'Administração',
|
||||
'admin.subtitle': 'Gestão de usuários e configurações do sistema',
|
||||
'admin.tabs.users': 'Usuários',
|
||||
'admin.tabs.categories': 'Categorias',
|
||||
'admin.tabs.backup': 'Backup',
|
||||
'admin.stats.users': 'Usuários',
|
||||
'admin.stats.trips': 'Viagens',
|
||||
'admin.stats.places': 'Lugares',
|
||||
'admin.stats.photos': 'Fotos',
|
||||
'admin.stats.files': 'Arquivos',
|
||||
'admin.table.user': 'Usuário',
|
||||
'admin.table.email': 'E-mail',
|
||||
'admin.table.role': 'Função',
|
||||
'admin.table.created': 'Criado',
|
||||
'admin.table.lastLogin': 'Último acesso',
|
||||
'admin.table.actions': 'Ações',
|
||||
'admin.you': '(Você)',
|
||||
'admin.editUser': 'Editar usuário',
|
||||
'admin.newPassword': 'Nova senha',
|
||||
'admin.newPasswordHint': 'Deixe em branco para manter a senha atual',
|
||||
'admin.deleteUser':
|
||||
'Excluir o usuário "{name}"? Todas as viagens serão excluídas permanentemente.',
|
||||
'admin.deleteUserTitle': 'Excluir usuário',
|
||||
'admin.newPasswordPlaceholder': 'Digite a nova senha…',
|
||||
'admin.toast.loadError': 'Falha ao carregar dados do admin',
|
||||
'admin.toast.userUpdated': 'Usuário atualizado',
|
||||
'admin.toast.updateError': 'Falha ao atualizar',
|
||||
'admin.toast.userDeleted': 'Usuário excluído',
|
||||
'admin.toast.deleteError': 'Falha ao excluir',
|
||||
'admin.toast.cannotDeleteSelf': 'Não é possível excluir a própria conta',
|
||||
'admin.toast.userCreated': 'Usuário criado',
|
||||
'admin.toast.createError': 'Falha ao criar usuário',
|
||||
'admin.toast.fieldsRequired':
|
||||
'Nome de usuário, e-mail e senha são obrigatórios',
|
||||
'admin.createUser': 'Criar usuário',
|
||||
'admin.invite.title': 'Links de convite',
|
||||
'admin.invite.subtitle': 'Crie links de cadastro de uso único',
|
||||
'admin.invite.create': 'Criar link',
|
||||
'admin.invite.createAndCopy': 'Criar e copiar',
|
||||
'admin.invite.empty': 'Nenhum link de convite criado ainda',
|
||||
'admin.invite.maxUses': 'Máx. usos',
|
||||
'admin.invite.expiry': 'Expira após',
|
||||
'admin.invite.uses': 'usado(s)',
|
||||
'admin.invite.expiresAt': 'expira',
|
||||
'admin.invite.createdBy': 'por',
|
||||
'admin.invite.active': 'Ativo',
|
||||
'admin.invite.expired': 'Expirado',
|
||||
'admin.invite.usedUp': 'Esgotado',
|
||||
'admin.invite.copied': 'Link de convite copiado para a área de transferência',
|
||||
'admin.invite.copyLink': 'Copiar link',
|
||||
'admin.invite.deleted': 'Link de convite excluído',
|
||||
'admin.invite.createError': 'Falha ao criar link de convite',
|
||||
'admin.invite.deleteError': 'Falha ao excluir link de convite',
|
||||
'admin.tabs.settings': 'Configurações',
|
||||
'admin.allowRegistration': 'Permitir cadastro',
|
||||
'admin.allowRegistrationHint': 'Novos usuários podem se cadastrar sozinhos',
|
||||
'admin.authMethods': 'Authentication Methods',
|
||||
'admin.passwordLogin': 'Password Login',
|
||||
'admin.passwordLoginHint': 'Allow users to sign in with email and password',
|
||||
'admin.passwordRegistration': 'Password Registration',
|
||||
'admin.passwordRegistrationHint':
|
||||
'Allow new users to register with email and password',
|
||||
'admin.oidcLogin': 'SSO Login',
|
||||
'admin.oidcLoginHint': 'Allow users to sign in with SSO',
|
||||
'admin.oidcRegistration': 'SSO Auto-Provisioning',
|
||||
'admin.oidcRegistrationHint':
|
||||
'Automatically create accounts for new SSO users',
|
||||
'admin.envOverrideHint':
|
||||
'Password login settings are controlled by the OIDC_ONLY environment variable and cannot be changed here.',
|
||||
'admin.lockoutWarning': 'At least one login method must remain enabled',
|
||||
'admin.requireMfa': 'Exigir autenticação em dois fatores (2FA)',
|
||||
'admin.requireMfaHint':
|
||||
'Usuários sem 2FA precisam concluir a configuração em Configurações antes de usar o app.',
|
||||
'admin.apiKeys': 'Chaves de API',
|
||||
'admin.apiKeysHint':
|
||||
'Opcional. Habilita dados estendidos de lugares, como fotos e clima.',
|
||||
'admin.mapsKey': 'Chave da API Google Maps',
|
||||
'admin.mapsKeyHint':
|
||||
'Necessária para busca de lugares. Obtenha em console.cloud.google.com',
|
||||
'admin.mapsKeyHintLong':
|
||||
'Sem chave de API, o OpenStreetMap é usado na busca. Com uma chave Google, também podem ser carregadas fotos, avaliações e horários. Obtenha em console.cloud.google.com.',
|
||||
'admin.recommended': 'Recomendado',
|
||||
'admin.weatherKey': 'Chave OpenWeatherMap',
|
||||
'admin.weatherKeyHint':
|
||||
'Para dados meteorológicos. Grátis em openweathermap.org',
|
||||
'admin.validateKey': 'Testar',
|
||||
'admin.keyValid': 'Conectado',
|
||||
'admin.keyInvalid': 'Inválida',
|
||||
'admin.keySaved': 'Chaves de API salvas',
|
||||
'admin.oidcTitle': 'Login Único (OIDC)',
|
||||
'admin.oidcSubtitle':
|
||||
'Permitir login via provedores externos como Google, Apple, Authentik ou Keycloak.',
|
||||
'admin.oidcDisplayName': 'Nome exibido',
|
||||
'admin.oidcIssuer': 'URL do emissor',
|
||||
'admin.oidcIssuerHint':
|
||||
'URL do emissor OpenID Connect do provedor, ex.: https://accounts.google.com',
|
||||
'admin.oidcSaved': 'Configuração OIDC salva',
|
||||
'admin.oidcOnlyMode': 'Desativar login por senha',
|
||||
'admin.oidcOnlyModeHint':
|
||||
'Quando ativado, só é permitido login SSO. Login e cadastro por senha ficam bloqueados.',
|
||||
'admin.fileTypes': 'Tipos de arquivo permitidos',
|
||||
'admin.fileTypesHint':
|
||||
'Configure quais tipos de arquivo os usuários podem enviar.',
|
||||
'admin.fileTypesFormat':
|
||||
'Extensões separadas por vírgula (ex.: jpg,png,pdf,doc). Use * para permitir todos.',
|
||||
'admin.fileTypesSaved': 'Configurações de tipos de arquivo salvas',
|
||||
'admin.placesPhotos.title': 'Fotos de Locais',
|
||||
'admin.placesPhotos.subtitle':
|
||||
'Busca fotos da Google Places API. Desative para economizar cota da API. Fotos do Wikimedia não são afetadas.',
|
||||
'admin.placesAutocomplete.title': 'Autocompletar de Locais',
|
||||
'admin.placesAutocomplete.subtitle':
|
||||
'Usa a Google Places API para sugestões de pesquisa. Desative para economizar cota da API.',
|
||||
'admin.placesDetails.title': 'Detalhes do Local',
|
||||
'admin.placesDetails.subtitle':
|
||||
'Busca informações detalhadas do local (horários, avaliação, site) da Google Places API. Desative para economizar cota da API.',
|
||||
'admin.bagTracking.title': 'Rastreamento de malas',
|
||||
'admin.bagTracking.subtitle':
|
||||
'Ativar peso e atribuição de mala para itens da lista',
|
||||
'admin.collab.chat.title': 'Chat',
|
||||
'admin.collab.chat.subtitle': 'Mensagens em tempo real para colaboração',
|
||||
'admin.collab.notes.title': 'Notas',
|
||||
'admin.collab.notes.subtitle': 'Notas e documentos compartilhados',
|
||||
'admin.collab.polls.title': 'Enquetes',
|
||||
'admin.collab.polls.subtitle': 'Enquetes e votações em grupo',
|
||||
'admin.collab.whatsnext.title': 'Próximos passos',
|
||||
'admin.collab.whatsnext.subtitle':
|
||||
'Sugestões de atividades e próximos passos',
|
||||
'admin.tabs.config': 'Personalização',
|
||||
'admin.tabs.defaults': 'Padrões do usuário',
|
||||
'admin.defaultSettings.title': 'Configurações padrão do usuário',
|
||||
'admin.defaultSettings.description':
|
||||
'Defina padrões para toda a instância. Usuários que não alteraram uma configuração verão esses valores. As próprias alterações deles sempre têm prioridade.',
|
||||
'admin.defaultSettings.saved': 'Padrão salvo',
|
||||
'admin.defaultSettings.reset': 'Redefinir para o padrão integrado',
|
||||
'admin.defaultSettings.resetToBuiltIn': 'redefinir',
|
||||
'admin.tabs.templates': 'Modelos de mala',
|
||||
'admin.packingTemplates.title': 'Modelos de mala',
|
||||
'admin.packingTemplates.subtitle':
|
||||
'Crie listas de mala reutilizáveis para suas viagens',
|
||||
'admin.packingTemplates.create': 'Novo modelo',
|
||||
'admin.packingTemplates.namePlaceholder': 'Nome do modelo (ex.: Praia)',
|
||||
'admin.packingTemplates.empty': 'Nenhum modelo criado ainda',
|
||||
'admin.packingTemplates.items': 'itens',
|
||||
'admin.packingTemplates.categories': 'categorias',
|
||||
'admin.packingTemplates.itemName': 'Nome do item',
|
||||
'admin.packingTemplates.itemCategory': 'Categoria',
|
||||
'admin.packingTemplates.categoryName': 'Nome da categoria (ex.: Roupas)',
|
||||
'admin.packingTemplates.addCategory': 'Adicionar categoria',
|
||||
'admin.packingTemplates.created': 'Modelo criado',
|
||||
'admin.packingTemplates.deleted': 'Modelo excluído',
|
||||
'admin.packingTemplates.loadError': 'Falha ao carregar modelos',
|
||||
'admin.packingTemplates.createError': 'Falha ao criar modelo',
|
||||
'admin.packingTemplates.deleteError': 'Falha ao excluir modelo',
|
||||
'admin.packingTemplates.saveError': 'Falha ao salvar',
|
||||
'admin.tabs.addons': 'Complementos',
|
||||
'admin.addons.title': 'Complementos',
|
||||
'admin.addons.subtitle':
|
||||
'Ative ou desative recursos para personalizar sua experiência no TREK.',
|
||||
'admin.addons.catalog.memories.name': 'Memórias',
|
||||
'admin.addons.catalog.memories.description':
|
||||
'Álbuns de fotos compartilhados em cada viagem',
|
||||
'admin.addons.catalog.packing.name': 'Listas',
|
||||
'admin.addons.catalog.packing.description':
|
||||
'Listas de bagagem e tarefas a fazer para suas viagens',
|
||||
'admin.addons.catalog.budget.name': 'Orçamento',
|
||||
'admin.addons.catalog.budget.description':
|
||||
'Acompanhe despesas e planeje o orçamento da viagem',
|
||||
'admin.addons.catalog.documents.name': 'Documentos',
|
||||
'admin.addons.catalog.documents.description':
|
||||
'Armazene e gerencie documentos de viagem',
|
||||
'admin.addons.catalog.vacay.name': 'Férias',
|
||||
'admin.addons.catalog.vacay.description':
|
||||
'Planejador de férias pessoal com visão em calendário',
|
||||
'admin.addons.catalog.atlas.name': 'Atlas',
|
||||
'admin.addons.catalog.atlas.description':
|
||||
'Mapa mundial com países visitados e estatísticas',
|
||||
'admin.addons.catalog.collab.name': 'Colab',
|
||||
'admin.addons.catalog.collab.description':
|
||||
'Notas, enquetes e chat em tempo real para planejar a viagem',
|
||||
'admin.addons.catalog.mcp.name': 'MCP',
|
||||
'admin.addons.catalog.mcp.description':
|
||||
'Model Context Protocol para integração com assistentes de IA',
|
||||
'admin.addons.subtitleBefore':
|
||||
'Ative ou desative recursos para personalizar sua ',
|
||||
'admin.addons.subtitleAfter': ' experiência.',
|
||||
'admin.addons.enabled': 'Ativado',
|
||||
'admin.addons.disabled': 'Desativado',
|
||||
'admin.addons.type.trip': 'Viagem',
|
||||
'admin.addons.type.global': 'Global',
|
||||
'admin.addons.type.integration': 'Integração',
|
||||
'admin.addons.tripHint': 'Disponível como aba em cada viagem',
|
||||
'admin.addons.globalHint':
|
||||
'Disponível como seção própria na navegação principal',
|
||||
'admin.addons.toast.updated': 'Complemento atualizado',
|
||||
'admin.addons.toast.error': 'Falha ao atualizar complemento',
|
||||
'admin.addons.noAddons': 'Nenhum complemento disponível',
|
||||
'admin.addons.integrationHint':
|
||||
'Serviços de backend e integrações de API sem página dedicada',
|
||||
'admin.weather.title': 'Dados meteorológicos',
|
||||
'admin.weather.badge': 'Desde 24 de março de 2026',
|
||||
'admin.weather.description':
|
||||
'O TREK usa Open-Meteo como fonte de clima. Open-Meteo é um serviço gratuito e de código aberto — sem chave de API.',
|
||||
'admin.weather.forecast': 'Previsão de 16 dias',
|
||||
'admin.weather.forecastDesc': 'Antes eram 5 dias (OpenWeatherMap)',
|
||||
'admin.weather.climate': 'Dados climáticos históricos',
|
||||
'admin.weather.climateDesc':
|
||||
'Médias dos últimos 85 anos para dias além da previsão de 16 dias',
|
||||
'admin.weather.requests': '10.000 requisições / dia',
|
||||
'admin.weather.requestsDesc': 'Grátis, sem chave de API',
|
||||
'admin.weather.locationHint':
|
||||
'O clima usa o primeiro lugar com coordenadas de cada dia. Se nenhum lugar estiver atribuído ao dia, qualquer lugar da lista serve como referência.',
|
||||
'admin.tabs.audit': 'Auditoria',
|
||||
'admin.audit.subtitle':
|
||||
'Eventos sensíveis de segurança e administração (backups, usuários, 2FA, configurações).',
|
||||
'admin.audit.empty': 'Nenhum registro de auditoria.',
|
||||
'admin.audit.refresh': 'Atualizar',
|
||||
'admin.audit.loadMore': 'Carregar mais',
|
||||
'admin.audit.showing': '{count} carregados · {total} no total',
|
||||
'admin.audit.col.time': 'Hora',
|
||||
'admin.audit.col.user': 'Usuário',
|
||||
'admin.audit.col.action': 'Ação',
|
||||
'admin.audit.col.resource': 'Recurso',
|
||||
'admin.audit.col.ip': 'IP',
|
||||
'admin.audit.col.details': 'Detalhes',
|
||||
'admin.tabs.github': 'GitHub',
|
||||
'admin.github.title': 'Histórico de versões',
|
||||
'admin.github.subtitle': 'Últimas atualizações de {repo}',
|
||||
'admin.github.latest': 'Mais recente',
|
||||
'admin.github.prerelease': 'Pré-lançamento',
|
||||
'admin.github.showDetails': 'Mostrar detalhes',
|
||||
'admin.github.hideDetails': 'Ocultar detalhes',
|
||||
'admin.github.loadMore': 'Carregar mais',
|
||||
'admin.github.loading': 'Carregando...',
|
||||
'admin.github.error': 'Falha ao carregar versões',
|
||||
'admin.github.by': 'por',
|
||||
'admin.github.support': 'Ajuda a continuar desenvolvendo o TREK',
|
||||
'admin.update.available': 'Atualização disponível',
|
||||
'admin.update.text':
|
||||
'O TREK {version} está disponível. Você está na {current}.',
|
||||
'admin.update.button': 'Ver no GitHub',
|
||||
'admin.update.install': 'Instalar atualização',
|
||||
'admin.update.confirmTitle': 'Instalar atualização?',
|
||||
'admin.update.confirmText':
|
||||
'O TREK será atualizado de {current} para {version}. O servidor reiniciará automaticamente em seguida.',
|
||||
'admin.update.dataInfo':
|
||||
'Todos os seus dados (viagens, usuários, chaves de API, envios, Vacay, Atlas, orçamentos) serão preservados.',
|
||||
'admin.update.warning':
|
||||
'O app ficará brevemente indisponível durante o reinício.',
|
||||
'admin.update.confirm': 'Atualizar agora',
|
||||
'admin.update.installing': 'Atualizando…',
|
||||
'admin.update.success': 'Atualização instalada! O servidor está reiniciando…',
|
||||
'admin.update.failed': 'Falha na atualização',
|
||||
'admin.update.backupHint': 'Recomendamos criar um backup antes de atualizar.',
|
||||
'admin.update.backupLink': 'Ir para Backup',
|
||||
'admin.update.howTo': 'Como atualizar',
|
||||
'admin.update.dockerText':
|
||||
'Sua instância TREK roda no Docker. Para atualizar para {version}, execute no servidor:',
|
||||
'admin.update.reloadHint': 'Recarregue a página em alguns segundos.',
|
||||
'admin.tabs.permissions': 'Permissões',
|
||||
'admin.tabs.mcpTokens': 'Acesso MCP',
|
||||
'admin.mcpTokens.title': 'Acesso MCP',
|
||||
'admin.mcpTokens.subtitle':
|
||||
'Gerenciar sessões OAuth e tokens de API de todos os usuários',
|
||||
'admin.mcpTokens.sectionTitle': 'Tokens de API',
|
||||
'admin.mcpTokens.owner': 'Proprietário',
|
||||
'admin.mcpTokens.tokenName': 'Nome do Token',
|
||||
'admin.mcpTokens.created': 'Criado',
|
||||
'admin.mcpTokens.lastUsed': 'Último uso',
|
||||
'admin.mcpTokens.never': 'Nunca',
|
||||
'admin.mcpTokens.empty': 'Nenhum token MCP foi criado ainda',
|
||||
'admin.mcpTokens.deleteTitle': 'Excluir Token',
|
||||
'admin.mcpTokens.deleteMessage':
|
||||
'Isso revogará o token imediatamente. O usuário perderá o acesso MCP por este token.',
|
||||
'admin.mcpTokens.deleteSuccess': 'Token excluído',
|
||||
'admin.mcpTokens.deleteError': 'Falha ao excluir token',
|
||||
'admin.mcpTokens.loadError': 'Falha ao carregar tokens',
|
||||
'admin.oauthSessions.sectionTitle': 'Sessões OAuth',
|
||||
'admin.oauthSessions.clientName': 'Cliente',
|
||||
'admin.oauthSessions.owner': 'Proprietário',
|
||||
'admin.oauthSessions.scopes': 'Permissões',
|
||||
'admin.oauthSessions.created': 'Criado',
|
||||
'admin.oauthSessions.empty': 'Nenhuma sessão OAuth ativa',
|
||||
'admin.oauthSessions.revokeTitle': 'Revogar sessão',
|
||||
'admin.oauthSessions.revokeMessage':
|
||||
'Esta sessão OAuth será revogada imediatamente. O cliente perderá o acesso MCP.',
|
||||
'admin.oauthSessions.revokeSuccess': 'Sessão revogada',
|
||||
'admin.oauthSessions.revokeError': 'Falha ao revogar sessão',
|
||||
'admin.oauthSessions.loadError': 'Falha ao carregar sessões OAuth',
|
||||
'admin.notifications.emailPanel.title': 'Email (SMTP)',
|
||||
'admin.notifications.webhookPanel.title': 'Webhook',
|
||||
'admin.notifications.inappPanel.title': 'In-App',
|
||||
'admin.notifications.inappPanel.hint':
|
||||
'As notificações no aplicativo estão sempre ativas e não podem ser desativadas globalmente.',
|
||||
'admin.notifications.adminWebhookPanel.title': 'Webhook de admin',
|
||||
'admin.notifications.adminWebhookPanel.hint':
|
||||
'Este webhook é usado exclusivamente para notificações de admin (ex. alertas de versão). É independente dos webhooks de usuários e dispara automaticamente quando uma URL está configurada.',
|
||||
'admin.notifications.adminWebhookPanel.saved':
|
||||
'URL do webhook de admin salva',
|
||||
'admin.notifications.adminWebhookPanel.testSuccess':
|
||||
'Webhook de teste enviado com sucesso',
|
||||
'admin.notifications.adminWebhookPanel.testFailed':
|
||||
'Falha no webhook de teste',
|
||||
'admin.notifications.adminWebhookPanel.alwaysOnHint':
|
||||
'O webhook de admin dispara automaticamente quando uma URL está configurada',
|
||||
'admin.notifications.ntfy': 'Ntfy',
|
||||
'admin.ntfy.hint':
|
||||
'Permite que os usuários configurem seus próprios tópicos ntfy para notificações push. Configure o servidor padrão abaixo para preencher as configurações do usuário.',
|
||||
'admin.notifications.testNtfy': 'Enviar Ntfy de teste',
|
||||
'admin.notifications.testNtfySuccess': 'Ntfy de teste enviado com sucesso',
|
||||
'admin.notifications.testNtfyFailed': 'Falha ao enviar Ntfy de teste',
|
||||
'admin.notifications.adminNtfyPanel.title': 'Ntfy de admin',
|
||||
'admin.notifications.adminNtfyPanel.hint':
|
||||
'Este tópico Ntfy é usado exclusivamente para notificações de admin (ex. alertas de versão). É independente dos tópicos por usuário e sempre dispara quando configurado.',
|
||||
'admin.notifications.adminNtfyPanel.serverLabel': 'URL do servidor Ntfy',
|
||||
'admin.notifications.adminNtfyPanel.serverHint':
|
||||
'Também usado como servidor padrão para notificações ntfy dos usuários. Deixe em branco para usar ntfy.sh. Os usuários podem substituir isso em suas próprias configurações.',
|
||||
'admin.notifications.adminNtfyPanel.serverPlaceholder': 'https://ntfy.sh',
|
||||
'admin.notifications.adminNtfyPanel.topicLabel': 'Tópico de admin',
|
||||
'admin.notifications.adminNtfyPanel.topicPlaceholder': 'trek-admin-alerts',
|
||||
'admin.notifications.adminNtfyPanel.tokenLabel': 'Token de acesso (opcional)',
|
||||
'admin.notifications.adminNtfyPanel.tokenCleared':
|
||||
'Token de acesso admin removido',
|
||||
'admin.notifications.adminNtfyPanel.saved':
|
||||
'Configurações de Ntfy de admin salvas',
|
||||
'admin.notifications.adminNtfyPanel.test': 'Enviar Ntfy de teste',
|
||||
'admin.notifications.adminNtfyPanel.testSuccess':
|
||||
'Ntfy de teste enviado com sucesso',
|
||||
'admin.notifications.adminNtfyPanel.testFailed':
|
||||
'Falha ao enviar Ntfy de teste',
|
||||
'admin.notifications.adminNtfyPanel.alwaysOnHint':
|
||||
'O Ntfy de admin sempre dispara quando um tópico está configurado',
|
||||
'admin.notifications.adminNotificationsHint':
|
||||
'Configure quais canais entregam notificações de admin (ex. alertas de versão). O webhook dispara automaticamente se uma URL de webhook de admin estiver definida.',
|
||||
'admin.notifications.tripReminders.title': 'Lembretes de viagem',
|
||||
'admin.notifications.tripReminders.hint':
|
||||
'Envia uma notificação de lembrete antes do início de uma viagem (requer dias de lembrete definidos na viagem).',
|
||||
'admin.notifications.tripReminders.enabled': 'Lembretes de viagem ativados',
|
||||
'admin.notifications.tripReminders.disabled':
|
||||
'Lembretes de viagem desativados',
|
||||
'admin.tabs.notifications': 'Notificações',
|
||||
'admin.addons.catalog.journey.name': 'Jornada',
|
||||
'admin.addons.catalog.journey.description':
|
||||
'Rastreamento de viagens e diário de viajante com check-ins, fotos e histórias diárias',
|
||||
};
|
||||
export default admin;
|
||||
Reference in New Issue
Block a user