{ "language": { "name": "Português" }, "app": { "title": "DeFlock" }, "about": { "title": "DeFlock - Transparência da Vigilância", "description": "DeFlock é um aplicativo móvel focado na privacidade para mapear infraestrutura de vigilância pública usando OpenStreetMap. Documente câmeras, ALPRs, detectores de tiros e outros dispositivos de vigilância em sua comunidade para tornar essa infraestrutura visível e pesquisável.", "features": "• Mapeamento com capacidade offline com áreas para download\n• Upload direto para OpenStreetMap com OAuth2\n• Perfis integrados para principais fabricantes\n• Respeitoso à privacidade - nenhum dado do usuário coletado\n• Múltiplos provedores de mapas (OSM, imagens de satélite)", "initiative": "Parte da iniciativa mais ampla DeFlock para promover transparência na vigilância.", "footer": "Visite: deflock.me\nConstruído com Flutter • Código Aberto" }, "actions": { "tagNode": "Novo Nó", "download": "Baixar", "settings": "Configurações", "edit": "Editar", "delete": "Excluir", "cancel": "Cancelar", "ok": "OK", "close": "Fechar", "submit": "Enviar", "saveEdit": "Salvar Edição", "clear": "Limpar" }, "followMe": { "off": "Ativar seguir-me (norte para cima)", "northUp": "Ativar seguir-me (rotação)", "rotating": "Desativar seguir-me" }, "settings": { "title": "Configurações", "language": "Idioma", "systemDefault": "Padrão do Sistema", "aboutInfo": "Sobre / Informações", "aboutThisApp": "Sobre este App", "aboutSubtitle": "Informações do aplicativo e créditos", "languageSubtitle": "Escolha seu idioma preferido", "maxNodes": "Máx. de nós desenhados", "maxNodesSubtitle": "Definir um limite superior para o número de nós no mapa (padrão: 250).", "maxNodesWarning": "Você provavelmente não quer fazer isso a menos que tenha certeza absoluta de que tem uma boa razão para isso.", "offlineMode": "Modo Offline", "offlineModeSubtitle": "Desabilitar todas as requisições de rede exceto para áreas locais/offline.", "offlineModeWarningTitle": "Downloads Ativos", "offlineModeWarningMessage": "Ativar o modo offline cancelará qualquer download de área ativo. Deseja continuar?", "enableOfflineMode": "Ativar Modo Offline", "profiles": "Perfis", "profilesSubtitle": "Gerenciar perfis de nós e operadores", "offlineSettings": "Configurações Offline", "offlineSettingsSubtitle": "Gerenciar modo offline e áreas baixadas", "advancedSettings": "Configurações Avançadas", "advancedSettingsSubtitle": "Configurações de desempenho, alertas e provedores de mapas", "proximityAlerts": "Alertas de Proximidade", "networkStatusIndicator": "Indicador de Status de Rede" }, "proximityAlerts": { "getNotified": "Receba notificações ao se aproximar de dispositivos de vigilância", "batteryUsage": "Usa bateria extra para monitoramento contínuo de localização", "notificationsEnabled": "✓ Notificações habilitadas", "notificationsDisabled": "⚠ Notificações desabilitadas", "permissionRequired": "Permissão de notificação necessária", "permissionExplanation": "Notificações push estão desabilitadas. Você só verá alertas dentro do app e não será notificado quando o app estiver em segundo plano.", "enableNotifications": "Habilitar Notificações", "checkingPermissions": "Verificando permissões...", "alertDistance": "Distância de alerta: ", "meters": "metros", "rangeInfo": "Faixa: {}-{} metros (padrão: {})" }, "node": { "title": "Nó #{}", "tagSheetTitle": "Tags do Dispositivo de Vigilância", "queuedForUpload": "Nó na fila para envio", "editQueuedForUpload": "Edição de nó na fila para envio", "deleteQueuedForUpload": "Exclusão de nó na fila para envio", "confirmDeleteTitle": "Excluir Nó", "confirmDeleteMessage": "Tem certeza de que deseja excluir o nó #{}? Esta ação não pode ser desfeita." }, "addNode": { "profile": "Perfil", "direction": "Direção {}°", "profileNoDirectionInfo": "Este perfil não requer uma direção.", "mustBeLoggedIn": "Você deve estar logado para enviar novos nós. Por favor, faça login via Configurações.", "enableSubmittableProfile": "Ative um perfil enviável nas Configurações para enviar novos nós.", "profileViewOnlyWarning": "Este perfil é apenas para visualização do mapa. Por favor, selecione um perfil enviável para enviar novos nós.", "refineTags": "Refinar Tags", "refineTagsWithProfile": "Refinar Tags ({})" }, "editNode": { "title": "Editar Nó #{}", "profile": "Perfil", "direction": "Direção {}°", "profileNoDirectionInfo": "Este perfil não requer uma direção.", "mustBeLoggedIn": "Você deve estar logado para editar nós. Por favor, faça login via Configurações.", "sandboxModeWarning": "Não é possível enviar edições de nós de produção para o sandbox. Mude para o modo Produção nas Configurações para editar nós.", "enableSubmittableProfile": "Ative um perfil enviável nas Configurações para editar nós.", "profileViewOnlyWarning": "Este perfil é apenas para visualização do mapa. Por favor, selecione um perfil enviável para editar nós.", "refineTags": "Refinar Tags", "refineTagsWithProfile": "Refinar Tags ({})" }, "download": { "title": "Baixar Área do Mapa", "maxZoomLevel": "Nível máx. de zoom", "storageEstimate": "Estimativa de armazenamento:", "tilesAndSize": "{} tiles, {} MB", "minZoom": "Zoom mín.:", "maxRecommendedZoom": "Zoom máx. recomendado: Z{}", "withinTileLimit": "Dentro do limite de {} tiles", "exceedsTileLimit": "A seleção atual excede o limite de {} tiles", "offlineModeWarning": "Downloads desabilitados no modo offline. Desative o modo offline para baixar novas áreas.", "downloadStarted": "Download iniciado! Buscando tiles e nós...", "downloadFailed": "Falha ao iniciar o download: {}" }, "uploadMode": { "title": "Destino do Upload", "subtitle": "Escolha onde as câmeras são enviadas", "production": "Produção", "sandbox": "Sandbox", "simulate": "Simular", "productionDescription": "Enviar para o banco de dados OSM ao vivo (visível para todos os usuários)", "sandboxDescription": "Uploads vão para o Sandbox OSM (seguro para testes, redefine regularmente).", "simulateDescription": "Simular uploads (não contacta servidores OSM)" }, "auth": { "loggedInAs": "Logado como {}", "loginToOSM": "Fazer login no OpenStreetMap", "tapToLogout": "Toque para sair", "requiredToSubmit": "Necessário para enviar dados de câmeras", "loggedOut": "Deslogado", "testConnection": "Testar Conexão", "testConnectionSubtitle": "Verificar se as credenciais OSM estão funcionando", "connectionOK": "Conexão OK - credenciais são válidas", "connectionFailed": "Conexão falhou - por favor, faça login novamente" }, "queue": { "pendingUploads": "Uploads pendentes: {}", "simulateModeEnabled": "Modo simulação ativado – uploads simulados", "sandboxMode": "Modo sandbox – uploads vão para o Sandbox OSM", "tapToViewQueue": "Toque para ver a fila", "clearUploadQueue": "Limpar Fila de Upload", "removeAllPending": "Remover todos os {} uploads pendentes", "clearQueueTitle": "Limpar Fila", "clearQueueConfirm": "Remover todos os {} uploads pendentes?", "queueCleared": "Fila limpa", "uploadQueueTitle": "Fila de Upload ({} itens)", "queueIsEmpty": "A fila está vazia", "cameraWithIndex": "Câmera {}", "error": " (Erro)", "completing": " (Completando...)", "destination": "Dest: {}", "latitude": "Lat: {}", "longitude": "Lon: {}", "direction": "Direção: {}°", "attempts": "Tentativas: {}", "uploadFailedRetry": "Upload falhou. Toque em tentar novamente para tentar novamente.", "retryUpload": "Tentar upload novamente", "clearAll": "Limpar Tudo" }, "tileProviders": { "title": "Provedores de Tiles", "noProvidersConfigured": "Nenhum provedor de tiles configurado", "tileTypesCount": "{} tipos de tiles", "apiKeyConfigured": "Chave API configurada", "needsApiKey": "Precisa de chave API", "editProvider": "Editar Provedor", "addProvider": "Adicionar Provedor", "deleteProvider": "Excluir Provedor", "deleteProviderConfirm": "Tem certeza de que deseja excluir \"{}\"?", "providerName": "Nome do Provedor", "providerNameHint": "ex., Mapas Personalizados Inc.", "providerNameRequired": "Nome do provedor é obrigatório", "apiKey": "Chave API (Opcional)", "apiKeyHint": "Insira a chave API se necessária pelos tipos de tiles", "tileTypes": "Tipos de Tiles", "addType": "Adicionar Tipo", "noTileTypesConfigured": "Nenhum tipo de tile configurado", "atLeastOneTileTypeRequired": "Pelo menos um tipo de tile é obrigatório", "manageTileProviders": "Gerenciar Provedores" }, "tileTypeEditor": { "editTileType": "Editar Tipo de Tile", "addTileType": "Adicionar Tipo de Tile", "name": "Nome", "nameHint": "ex., Satélite", "nameRequired": "Nome é obrigatório", "urlTemplate": "Modelo de URL", "urlTemplateHint": "https://exemplo.com/{z}/{x}/{y}.png", "urlTemplateRequired": "Modelo de URL é obrigatório", "urlTemplatePlaceholders": "URL deve conter os marcadores {z}, {x} e {y}", "attribution": "Atribuição", "attributionHint": "© Provedor de Mapas", "attributionRequired": "Atribuição é obrigatória", "maxZoom": "Nível de Zoom Máximo", "maxZoomHint": "Nível de zoom máximo (1-23)", "maxZoomRequired": "Zoom máximo é obrigatório", "maxZoomInvalid": "Zoom máximo deve ser um número", "maxZoomRange": "Zoom máximo deve estar entre {} e {}", "fetchPreview": "Buscar Preview", "previewTileLoaded": "Tile de preview carregado com sucesso", "previewTileFailed": "Falha ao buscar preview: {}", "save": "Salvar" }, "profiles": { "nodeProfiles": "Perfis de Nó", "newProfile": "Novo Perfil", "builtIn": "Integrado", "custom": "Personalizado", "view": "Ver", "deleteProfile": "Excluir Perfil", "deleteProfileConfirm": "Tem certeza de que deseja excluir \"{}\"?", "profileDeleted": "Perfil excluído" }, "mapTiles": { "title": "Tiles do Mapa", "manageProviders": "Gerenciar Provedores", "attribution": "Atribuição do Mapa" }, "profileEditor": { "viewProfile": "Ver Perfil", "newProfile": "Novo Perfil", "editProfile": "Editar Perfil", "profileName": "Nome do perfil", "profileNameHint": "ex., Câmera ALPR Personalizada", "profileNameRequired": "Nome do perfil é obrigatório", "requiresDirection": "Requer Direção", "requiresDirectionSubtitle": "Se câmeras deste tipo precisam de uma tag de direção", "submittable": "Enviável", "submittableSubtitle": "Se este perfil pode ser usado para envios de câmeras", "osmTags": "Tags OSM", "addTag": "Adicionar Tag", "saveProfile": "Salvar Perfil", "keyHint": "chave", "valueHint": "valor", "atLeastOneTagRequired": "Pelo menos uma tag é obrigatória", "profileSaved": "Perfil \"{}\" salvo" }, "operatorProfileEditor": { "newOperatorProfile": "Novo Perfil de Operador", "editOperatorProfile": "Editar Perfil de Operador", "operatorName": "Nome do operador", "operatorNameHint": "ex., Departamento de Polícia de Austin", "operatorNameRequired": "Nome do operador é obrigatório", "operatorProfileSaved": "Perfil de operador \"{}\" salvo" }, "operatorProfiles": { "title": "Perfis de Operador", "noProfilesMessage": "Nenhum perfil de operador definido. Crie um para aplicar tags de operador aos envios de nós.", "tagsCount": "{} tags", "deleteOperatorProfile": "Excluir Perfil de Operador", "deleteOperatorProfileConfirm": "Tem certeza de que deseja excluir \"{}\"?", "operatorProfileDeleted": "Perfil de operador excluído" }, "offlineAreas": { "title": "Áreas Offline", "noAreasTitle": "Nenhuma área offline", "noAreasSubtitle": "Baixe uma área do mapa para uso offline.", "provider": "Provedor", "maxZoom": "Zoom máx", "zoomLevels": "Z{}-{}", "latitude": "Lat", "longitude": "Lon", "tiles": "Tiles", "size": "Tamanho", "nodes": "Nós", "areaIdFallback": "Área {}...", "renameArea": "Renomear área", "refreshWorldTiles": "Atualizar/rebaixar tiles mundiais", "deleteOfflineArea": "Excluir área offline", "cancelDownload": "Cancelar download", "renameAreaDialogTitle": "Renomear Área Offline", "areaNameLabel": "Nome da Área", "renameButton": "Renomear", "megabytes": "MB", "kilobytes": "KB", "progress": "{}%", "refreshArea": "Atualizar área", "refreshAreaDialogTitle": "Atualizar Área Offline", "refreshAreaDialogSubtitle": "Escolha o que atualizar para esta área:", "refreshTiles": "Atualizar Tiles do Mapa", "refreshTilesSubtitle": "Baixar novamente todos os tiles para imagens atualizadas", "refreshNodes": "Atualizar Nós", "refreshNodesSubtitle": "Buscar novamente os dados dos nós para esta área", "startRefresh": "Iniciar Atualização", "refreshStarted": "Atualização iniciada!", "refreshFailed": "Atualização falhou: {}" }, "refineTagsSheet": { "title": "Refinar Tags", "operatorProfile": "Perfil de Operador", "done": "Concluído", "none": "Nenhum", "noAdditionalOperatorTags": "Nenhuma tag adicional de operador", "additionalTags": "tags adicionais", "additionalTagsTitle": "Tags Adicionais", "noTagsDefinedForProfile": "Nenhuma tag definida para este perfil de operador.", "noOperatorProfiles": "Nenhum perfil de operador definido", "noOperatorProfilesMessage": "Crie perfis de operador nas Configurações para aplicar tags adicionais aos seus envios de nós." }, "layerSelector": { "cannotChangeTileTypes": "Não é possível alterar tipos de tiles durante o download de áreas offline", "selectMapLayer": "Selecionar Camada do Mapa", "noTileProvidersAvailable": "Nenhum provedor de tiles disponível" }, "networkStatus": { "showIndicator": "Exibir indicador de status de rede", "showIndicatorSubtitle": "Mostrar status de carregamento e erro de rede no mapa" }, "navigation": { "searchLocation": "Buscar localização", "searchPlaceholder": "Buscar locais ou coordenadas...", "routeTo": "Rota para", "routeFrom": "Rota de", "selectLocation": "Selecionar localização", "calculatingRoute": "Calculando rota...", "routeCalculationFailed": "Falha no cálculo da rota", "start": "Iniciar", "resume": "Continuar", "endRoute": "Terminar rota", "routeOverview": "Visão geral da rota", "retry": "Tentar novamente", "cancelSearch": "Cancelar busca", "noResultsFound": "Nenhum resultado encontrado", "searching": "Buscando...", "location": "Localização", "startPoint": "Início", "endPoint": "Fim", "startSelect": "Início (selecionar)", "endSelect": "Fim (selecionar)", "distance": "Distância: {} km", "routeActive": "Rota ativa", "navigationSettings": "Navegação", "navigationSettingsSubtitle": "Configurações de planejamento de rota e evasão", "avoidanceDistance": "Distância de evasão", "avoidanceDistanceSubtitle": "Distância mínima para ficar longe de dispositivos de vigilância", "searchHistory": "Histórico máximo de busca", "searchHistorySubtitle": "Número máximo de buscas recentes para lembrar", "units": "Unidades", "unitsSubtitle": "Unidades de exibição para distâncias e medidas", "metric": "Métrico (km, m)", "imperial": "Imperial (mi, ft)", "meters": "metros", "feet": "pés" } }