// Pacote de idioma Português Brasileiro
export default {
  // TabBar
  'tabBar.home': 'Início',
  'tabBar.deviceConfig': 'Config. de Rede',
  'tabBar.settings': 'Sistema',
  // Settings page title
  'settings.title': 'Configurações',
  // Login page
  'login.pageTitle': 'Entrar',
  'login.navigationTitle': 'Entrar',
  'login.fetchConfigError': 'Falha ao buscar configuração:',
  'login.selectLanguage': 'Selecionar Idioma',
  'login.selectLanguageTip': 'Pt',
  'login.welcomeBack': 'Bem-vindo de Volta',
  'login.pleaseLogin': 'Por favor, entre na sua conta',
  'login.enterUsername': 'Por favor, insira o nome de usuário',
  'login.enterPassword': 'Por favor, insira a senha',
  'login.enterCaptcha': 'Por favor, insira o código de verificação',
  'login.loginButton': 'Entrar',
  'login.loggingIn': 'Entrando...',
  'login.noAccount': 'Cadastrar',
  'login.enterPhone': 'Por favor, insira o número de telefone',
  'login.selectCountry': 'Selecionar País/Região',
  'login.confirm': 'Confirmar',
  'login.serverSetting': 'Configurações do Servidor',
  'login.requiredUsername': 'O nome de usuário não pode estar vazio',
  'login.requiredPassword': 'A senha não pode estar vazia',
  'login.requiredCaptcha': 'O código de verificação não pode estar vazio',
  'login.requiredMobile': 'Por favor, insira um número de telefone válido',
  'login.captchaError': 'Erro no código de verificação gráfico',
    'login.forgotPassword': 'Esqueceu a Senha',
    'login.userAgreement': 'Termos de Uso',
    'login.privacyPolicy': 'Política de Privacidade',

  // Register page
  'register.pageTitle': 'Cadastro',
  'register.createAccount': 'Criar Conta',
  'register.enterUsername': 'Por favor, insira o nome de usuário',
  'register.enterPassword': 'Por favor, insira a senha',
  'register.confirmPassword': 'Por favor, confirme a senha',
  'register.enterPhone': 'Por favor, insira o número de telefone',
  'register.enterCode': 'Por favor, insira o código de verificação',
  'register.getCode': 'Obter Código',
  'register.agreeTerms': 'Li e concordo com os',
  'register.terms': 'Termos de Uso',
  'register.privacy': 'Política de Privacidade',
  'register.registerButton': 'Cadastrar',
  'register.registering': 'Cadastrando...',
  'register.haveAccount': 'Já tem uma conta?',
  'register.loginNow': 'Entrar Agora',
  'register.selectCountry': 'Selecionar País/Região',
  'register.confirm': 'Confirmar',
  'register.captchaSendSuccess': 'Código de verificação enviado com sucesso',

  // Home page
  'home.pageTitle': 'Início',
  'home.createAgent': 'Criar Agente',
  'home.agentName': 'Agente',
  'home.modelInfo': 'Info do Modelo',
  'home.lastActive': 'Última Atividade',
  'home.greeting': 'Olá Jarvis',
  'home.subtitle': 'Vamos ter',
  'home.wonderfulDay': 'um dia maravilhoso!',
  'home.emptyState': 'Nenhum agente disponível',
  'home.deviceManagement': 'Gerenciamento de Dispositivos',
  'home.lastConversation': 'Última Conversa:',
  'home.delete': 'Excluir',
  'home.createFirstAgent': 'Clique no botão + no canto inferior direito para criar seu primeiro agente',
  'home.dialogTitle': 'Criar Agente',
  'home.inputPlaceholder': 'ex: Assistente de Atendimento, Assistente de Voz, Perguntas e Respostas',
  'home.createError': 'O comprimento do nome deve estar entre 1 e 64 caracteres',
  'home.createNow': 'Criar Agora',
  'home.justNow': 'Agora mesmo',
  'home.minutesAgo': 'minutos atrás',
  'home.hoursAgo': 'horas atrás',
  'home.daysAgo': 'dias atrás',
  'home.languageModel': 'LLM',
  'home.voiceModel': 'TTS',

  // Agent page
  'agent.pageTitle': 'Agente',
  'agent.roleConfig': 'Configuração de Papel',
  'agent.deviceManagement': 'Gerenciamento de Dispositivos',
  'agent.chatHistory': 'Histórico de Conversas',
  'agent.voiceprintManagement': 'Gerenciamento de Impressão Vocal',
  'agent.editTitle': 'Editar Agente',
  'agent.toolsTitle': 'Editar Funcionalidades',
  'agent.voiceActivityDetection': 'Detecção de Atividade de Voz',
  'agent.speechRecognition': 'Reconhecimento de Fala',
  'agent.largeLanguageModel': 'Modelo de Linguagem Grande',
  'agent.save': 'Salvar',
  'agent.cancel': 'Cancelar',
  // Agent Edit Page
  'agent.basicInfo': 'Informações Básicas',
  'agent.agentName': 'Nome do Agente',
  'agent.inputAgentName': 'Por favor, insira o nome do agente',
  'agent.roleMode': 'Modo de Papel',
  'agent.agentTag': 'Etiquetas de corpo inteligente',
  'agent.addAgentTag': 'Adicionar etiqueta',
  'agent.inputAgentTag': 'Por favor, insira o rótulo do corpo inteligente',
  'agent.contextProvider': 'Contexto',
  'agent.contextProviderSuccess': '{count} fontes adicionadas com sucesso.',
  'agent.contextProviderDocLink': 'Como implantar provedor de contexto',
  'agent.editContextProvider': 'Editar Fonte',
  'agent.roleDescription': 'Descrição do Papel',
  'agent.inputRoleDescription': 'Por favor, insira a descrição do papel',
  'agent.modelConfig': 'Configuração do Modelo',
  'agent.vad': 'Detecção de Atividade de Voz',
  'agent.asr': 'Reconhecimento de Fala',
  'agent.llm': 'Modelo de Linguagem Grande',
  'agent.vllm': 'Modelo de Linguagem Visual',
  'agent.intent': 'Reconhecimento de Intenção',
  'agent.memory': 'Memória',
  'agent.voiceSettings': 'Configurações de Voz',
  'agent.tts': 'Texto para Fala',
  'agent.voiceprint': 'Voz do Agente',
  'agent.plugins': 'Plugins',
  'agent.editFunctions': 'Editar Funções',
  'agent.historyMemory': 'Memória de Histórico',
  'agent.memoryContent': 'Conteúdo da memória',
  'agent.saving': 'Salvando...',
  'agent.saveSuccess': 'Salvo com sucesso',
  'agent.saveFail': 'Falha ao salvar',
  'agent.loadFail': 'Falha ao carregar',
  'agent.pleaseInputAgentName': 'Por favor, insira o nome do agente',
  'agent.pleaseInputRoleDescription': 'Por favor, insira a descrição do papel',
  'agent.pleaseSelect': 'Por favor, selecione',
  'agent.reportText': 'Enviar Texto',
  'agent.reportTextVoice': 'Enviar Texto+Voz',
  'agent.reportMode': 'Modo de Envio',
  'agent.language': 'Idioma de Conversa',
  'agent.languageConfig': 'Configuração de Voz',
  'agent.ttsVolume': 'Volume',
  'agent.ttsRate': 'Taxa de Fala',
  'agent.ttsPitch': 'Tonalidade',
  'agent.volumeHint': '-100=Mínimo, 0=Padrão, 100=Máximo',
  'agent.speedHint': '-100=Slower, 0=Standard, 100=Faster',
  'agent.pitchHint': '-100=Lowest, 0=Standard, 100=Highest',

  // Diálogo de provedor de contexto
  'contextProviderDialog.title': 'Editar Fonte',
  'contextProviderDialog.noContextApi': 'Sem API de Contexto',
  'contextProviderDialog.add': 'Adicionar',
  'contextProviderDialog.apiUrl': 'URL da API',
  'contextProviderDialog.apiUrlPlaceholder': 'http://api.example.com/data',
  'contextProviderDialog.requestHeaders': 'Cabeçalhos da Requisição',
  'contextProviderDialog.headerKeyPlaceholder': 'Chave',
  'contextProviderDialog.headerValuePlaceholder': 'Valor',
  'contextProviderDialog.noHeaders': 'Sem Cabeçalhos',
  'contextProviderDialog.addHeader': 'Adicionar Cabeçalho',
  'contextProviderDialog.cancel': 'Cancelar',
  'contextProviderDialog.confirm': 'Confirmar',

  // Diálogo de adição manual de dispositivo
  'manualAddDeviceDialog.title': 'Adicionar Dispositivo Manualmente',
  'manualAddDeviceDialog.deviceType': 'Tipo de Dispositivo',
  'manualAddDeviceDialog.deviceTypePlaceholder': 'Por favor, selecione o tipo de dispositivo',
  'manualAddDeviceDialog.firmwareVersion': 'Versão do Firmware',
  'manualAddDeviceDialog.firmwareVersionPlaceholder': 'Por favor, insira a versão do firmware',
  'manualAddDeviceDialog.macAddress': 'Endereço MAC',
  'manualAddDeviceDialog.macAddressPlaceholder': 'Por favor, insira o endereço MAC',
  'manualAddDeviceDialog.confirm': 'Confirmar',
  'manualAddDeviceDialog.cancel': 'Cancelar',
  'manualAddDeviceDialog.requiredMacAddress': 'Por favor, insira o endereço MAC',
  'manualAddDeviceDialog.invalidMacAddress': 'Por favor, insira o formato correto de endereço MAC, ex.: 00:1A:2B:3C:4D:5E',
  'manualAddDeviceDialog.requiredDeviceType': 'Por favor, selecione o tipo de dispositivo',
  'manualAddDeviceDialog.requiredFirmwareVersion': 'Por favor, insira a versão do firmware',
  'manualAddDeviceDialog.getFirmwareTypeFailed': 'Falha ao obter tipo de firmware',
  'manualAddDeviceDialog.addSuccess': 'Dispositivo adicionado com sucesso',
  'manualAddDeviceDialog.addFailed': 'Falha ao adicionar',
  'manualAddDeviceDialog.bindWithCode': 'Vincular com Código de 6 Dígitos',

  // Chat History Page
  'chatHistory.getChatSessions': 'Obter lista de sessões de conversa',
  'chatHistory.noSelectedAgent': 'Nenhum agente selecionado',
  'chatHistory.getChatSessionsFailed': 'Falha ao obter lista de sessões de conversa:',
  'chatHistory.unknownTime': 'Hora desconhecida',
  'chatHistory.justNow': 'Agora mesmo',
  'chatHistory.minutesAgo': '{minutes} minutos atrás',
  'chatHistory.hoursAgo': '{hours} horas atrás',
  'chatHistory.daysAgo': '{days} dias atrás',
  'chatHistory.conversationRecord': 'Registro de Conversas',
  'chatHistory.totalChats': '{count} conversas no total',
  'chatHistory.loading': 'Carregando...',
  'chatHistory.noMoreData': 'Não há mais dados',
  'chatHistory.noChatRecords': 'Nenhum registro de conversa',
  'chatHistory.chatRecordsDescription': 'Os registros de conversas com agentes serão exibidos aqui',
  // Chat History Detail Page
  'chatHistory.pageTitle': 'Detalhe da Conversa',
  'chatHistory.assistantName': 'Assistente Inteligente',
  'chatHistory.userName': 'Usuário',
  'chatHistory.aiAssistantName': 'Assistente IA',
  'chatHistory.loadFailed': 'Falha ao carregar histórico de conversas',
  'chatHistory.parameterError': 'Erro de parâmetro da página',
  'chatHistory.invalidAudioId': 'ID de áudio inválido',
  'chatHistory.audioPlayFailed': 'Falha na reprodução de áudio',
  'chatHistory.playAudioFailed': 'Falha ao reproduzir áudio',

  // Device management page
  'device.pageTitle': 'Gerenciamento de Dispositivos',
  'device.noDevices': 'Nenhum dispositivo disponível',
  'device.macAddress': 'Endereço MAC',
  'device.firmwareVersion': 'Versão do Firmware',
  'device.lastConnected': 'Última Conversa',
  'device.otaUpdate': 'Atualização OTA',
  'device.unbind': 'Desvincular',
  'device.confirmUnbind': 'Confirmar',
  'device.bindDevice': 'Vincular Novo Dispositivo',
  'device.deviceType': 'Tipo de Dispositivo',
  'device.loading': 'Carregando...',
  'device.neverConnected': 'Nunca conectado',
  'device.justNow': 'Agora mesmo',
  'device.minutesAgo': '{minutes} minutos atrás',
  'device.hoursAgo': '{hours} horas atrás',
  'device.daysAgo': '{days} dias atrás',
  'device.otaAutoUpdateEnabled': 'Atualização automática OTA ativada',
  'device.otaAutoUpdateDisabled': 'Atualização automática OTA desativada',
  'device.operationFailed': 'Operação falhou, por favor tente novamente',
  'device.deviceUnbound': 'Dispositivo desvinculado',
  'device.unbindFailed': 'Falha ao desvincular, por favor tente novamente',
  'device.unbindDevice': 'Desvincular Dispositivo',
  'device.confirmUnbindDevice': 'Tem certeza que deseja desvincular o dispositivo "{macAddress}"?',
  'device.cancel': 'Cancelar',
  'device.noDevice': 'Nenhum Dispositivo',
  'device.pleaseSelectAgent': 'Por favor, selecione um agente primeiro',
  'device.deviceBindSuccess': 'Dispositivo vinculado com sucesso!',
  'device.bindFailed': 'Falha ao vincular, por favor verifique se o código de verificação está correto',
  'device.enterDeviceCode': 'Por favor, insira o código de verificação do dispositivo',
  'device.bindNow': 'Vincular Agora',
  'device.lastConnection': 'Última Conexão',
  'device.clickToBindFirstDevice': 'Clique no botão + no canto inferior direito para vincular seu primeiro dispositivo',

  // Common
  'common.success': 'Sucesso',
  'common.fail': 'Falhou',
  'common.loading': 'Carregando...',
  'common.confirm': 'Confirmar',
  'common.cancel': 'Cancelar',
  'common.delete': 'Excluir',
  'common.edit': 'Editar',
  'common.add': 'Adicionar',
  'common.pleaseSelect': 'Por favor, selecione',
  'common.unknownError': 'Erro desconhecido',
  'common.networkError': 'Erro de rede',

  // Retrieve Password page
  'retrievePassword.title': 'Redefinir Senha',
  'retrievePassword.subtitle': 'Recupere a senha da sua conta pelo número de celular',
  'retrievePassword.mobileRequired': 'Por favor, insira o número de celular',
  'retrievePassword.inputCorrectMobile': 'Por favor, insira um número de celular válido',
  'retrievePassword.captchaRequired': 'Por favor, insira o código de verificação gráfico',
  'retrievePassword.mobileCaptchaRequired': 'Por favor, insira o código de verificação por SMS',
  'retrievePassword.newPasswordRequired': 'Por favor, insira a nova senha',
  'retrievePassword.confirmNewPasswordRequired': 'Por favor, confirme a nova senha',
  'retrievePassword.passwordsNotMatch': 'As senhas não coincidem',
  'retrievePassword.mobilePlaceholder': 'Por favor, insira o número de celular',
  'retrievePassword.captchaPlaceholder': 'Por favor, insira o código de verificação gráfico',
  'retrievePassword.mobileCaptchaPlaceholder': 'Por favor, insira o código de verificação por SMS',
  'retrievePassword.newPasswordPlaceholder': 'Por favor, insira a nova senha',
  'retrievePassword.confirmNewPasswordPlaceholder': 'Por favor, confirme a nova senha',
  'retrievePassword.getMobileCaptcha': 'Obter Código',
  'retrievePassword.captchaSendSuccess': 'Código de verificação enviado com sucesso',
  'retrievePassword.passwordUpdateSuccess': 'Senha redefinida com sucesso',
  'retrievePassword.resetButton': 'Redefinir Senha',
  'retrievePassword.goToLogin': 'Voltar ao Login',

  // SM2 encryption related error messages
  'sm2.publicKeyNotConfigured': 'Chave pública SM2 não configurada, por favor entre em contato com o administrador',
  'sm2.encryptionFailed': 'Falha na criptografia da senha',
  'sm2.keyGenerationFailed': 'Falha na geração do par de chaves',
  'sm2.invalidPublicKey': 'Formato de chave pública inválido',
  'sm2.encryptionError': 'Ocorreu um erro durante a criptografia',
  'sm2.publicKeyRetry': 'Tentando obter a chave pública novamente...',
  'sm2.publicKeyRetryFailed': 'Falha na nova tentativa de obter a chave pública',

  // Voiceprint page
  'voiceprint.noSelectedAgent': 'Nenhum agente selecionado',
  'voiceprint.pleaseSelectAgent': 'Por favor, selecione um agente primeiro',
  'voiceprint.fetchHistoryFailed': 'Falha ao buscar histórico de conversas',
  'voiceprint.clickToSelectVector': 'Clique para selecionar vetor de impressão vocal',
  'voiceprint.pleaseInputName': 'Por favor, insira o nome',
  'voiceprint.pleaseSelectVector': 'Por favor, selecione o vetor de impressão vocal',
  'voiceprint.addSuccess': 'Adicionado com sucesso',
  'voiceprint.addFailed': 'Falha ao adicionar locutor',
  'voiceprint.editSuccess': 'Editado com sucesso',
  'voiceprint.editFailed': 'Falha ao editar locutor',
  'voiceprint.deleteConfirmMsg': 'Tem certeza que deseja excluir este locutor?',
  'voiceprint.deleteConfirmTitle': 'Confirmar Exclusão',
  'voiceprint.deleteSuccess': 'Excluído com sucesso',
  'voiceprint.loading': 'Carregando...',
  'voiceprint.delete': 'Excluir',
  'voiceprint.emptyTitle': 'Nenhum dado de impressão vocal',
  'voiceprint.emptyDesc': 'Clique no botão + no canto inferior direito para adicionar seu primeiro locutor',
  'voiceprint.addSpeaker': 'Adicionar Locutor',
  'voiceprint.voiceVector': 'Vetor de Impressão Vocal',
  'voiceprint.name': 'Nome',
  'voiceprint.description': 'Descrição',
  'voiceprint.pleaseInputDescription': 'Por favor, insira a descrição',
  'voiceprint.cancel': 'Cancelar',
  'voiceprint.save': 'Salvar',
  'voiceprint.editSpeaker': 'Editar Locutor',
  'voiceprint.selectVector': 'Selecionar Vetor de Impressão Vocal',
  'voiceprint.voiceprintInterfaceNotConfigured': 'Interface de impressão vocal não configurada',

  // Settings page
  'settings.pageTitle': 'Configurações',
  'settings.navigationTitle': 'Configurações',
  'settings.networkSettings': 'Configurações de Rede',
  'settings.serverApiUrl': 'URL da API do Servidor',
  'settings.validServerUrl': 'Por favor, insira um endereço de servidor válido (começando com http ou https e terminando com /xiaozhi)',
  'settings.saveSettings': 'Salvar Configurações',
  'settings.resetDefault': 'Restaurar Padrão',
  'settings.restartApp': 'Reiniciar App',
  'settings.restartNow': 'Reiniciar Agora',
  'settings.restartLater': 'Depois',
  // About us
  'settings.aboutApp': 'Sobre o Console XiaoZhi',
  'settings.aboutContent': 'Console XiaoZhi\n\nUm aplicativo móvel de gerenciamento multiplataforma construído com Vue.js 3 + uni-app, oferecendo gerenciamento de dispositivos, configuração de agentes e outras funcionalidades para o hardware inteligente xiaozhi ESP32.\n\n© 2025 xiaozhi-esp32-server {version}',
  'settings.restartSuccess': 'Salvo, você pode reiniciar o app manualmente depois',
  'settings.serverUrlSavedAndCacheCleared': 'URL do servidor salva e cache limpo',
  'settings.resetToDefaultAndCacheCleared': 'Restaurado ao padrão e cache limpo',
  'settings.resetSuccess': 'Restauração bem-sucedida',
  'settings.enterServerUrl': 'Por favor, insira a URL do servidor',
  'settings.clearCacheFailed': 'Falha ao limpar o cache',
  'settings.cacheManagement': 'Gerenciamento de Cache',
  'settings.totalCacheSize': 'Tamanho Total do Cache',
  'settings.appDataSize': 'Tamanho Total dos Dados do App',
  'settings.cacheClear': 'Limpar Cache',
  'settings.clearAllCache': 'Limpar todos os dados de cache',
  'settings.clearCache': 'Limpar Cache',
  'settings.modifyWillClearCache': 'Modificações irão limpar o cache',
  'settings.appInfo': 'Informações do App',
  'settings.aboutUs': 'Sobre Nós',
  'settings.appVersion': 'Versão do App e Info da Equipe',
  'settings.confirmClear': 'Confirmar Limpeza',
  'settings.confirmClearMessage': 'Tem certeza que deseja limpar todo o cache? Isso excluirá todos os dados, incluindo o status de login, e exigirá novo login.',
  'settings.cacheCleared': 'Cache limpo com sucesso, redirecionando para a página de login',
  'settings.languageSettings': 'Configurações de Idioma',
  'settings.language': 'Idioma',
  'settings.selectLanguage': 'Selecionar Idioma',
  'settings.languageChanged': 'Idioma alterado com sucesso',

  // Messages
  'message.loginSuccess': 'Login realizado com sucesso!',
  'message.loginFail': 'Falha no login',
  'message.registerSuccess': 'Cadastro realizado com sucesso',
  'message.registerFail': 'Falha no cadastro',
  'message.saveSuccess': 'Salvo com sucesso',
  'message.saveFail': 'Falha ao salvar',
  'message.deleteSuccess': 'Excluído com sucesso',
  'message.deleteFail': 'Falha ao excluir',
  'message.bindSuccess': 'Vinculação realizada com sucesso',
  'message.bindFail': 'Falha na vinculação',
  'message.unbindSuccess': 'Desvinculação realizada com sucesso',
  'message.unbindFail': 'Falha na desvinculação',
  'message.networkError': 'Erro de rede, por favor verifique sua conexão',
  'message.serverError': 'Erro no servidor, por favor tente novamente mais tarde',
  'message.invalidAddress': 'O endereço pode ser inválido, verifique se o servidor está iniciado ou se a conexão de rede está correta; Também pode ser impossível enviar solicitações devido a problemas com o protocolo HTTPS',
  'message.languageChanged': 'Idioma alterado',
  'message.passwordError': 'Conta ou senha incorretos',
  'message.phoneRegistered': 'Este número de telefone já está cadastrado',

  // Agent Tools Page
  'agent.tools.pageTitle': 'Ferramentas do Agente',
  'agent.tools.unselected': 'Não selecionado',
  'agent.tools.selected': 'Selecionado',
  'agent.tools.noMorePlugins': 'Não há mais plugins',
  'agent.tools.pleaseSelectPlugin': 'Por favor, selecione a função do plugin',
  'agent.tools.builtInPlugins': 'Plugins Integrados',
  'agent.tools.mcpAccessPoint': 'Ponto de Acesso MCP',
  'agent.tools.copy': 'Copiar',
  'agent.tools.noTools': 'Nenhuma ferramenta disponível',
  'agent.tools.parameterConfig': 'Configuração',
  'agent.tools.noParamsNeeded': 'Nenhum parâmetro necessário',
  'agent.tools.pleaseInput': 'Por favor, insira',
  'agent.tools.inputOneItemPerLine': 'Insira um item por linha',
  'agent.tools.pleaseInputValidJson': 'Por favor, insira um formato JSON válido',
  'agent.tools.enableFunction': 'Ativar Função',
  'agent.tools.toggleFunction': 'Ativar ou desativar esta função',
  'agent.tools.jsonFormatError': 'Erro no formato JSON',
  'agent.tools.noMcpAddressToCopy': 'Nenhum endereço MCP para copiar',
  'agent.tools.mcpAddressCopied': 'Endereço MCP copiado para a área de transferência',
  'agent.tools.copyFailed': 'Falha ao copiar, por favor tente novamente',
  'agent.tools.defaultValue': 'Valor padrão',
  'agent.tools.notSelected': 'Não selecionado',
  'agent.tools.clickToConfigure': 'Clique para configurar',
  'agent.tools.mcpEndpoint': 'Endpoint MCP',
  'agent.tools.eachLineOneItem': 'Insira um item por linha',

  // Device Config page
  'deviceConfig.pageTitle': 'Configuração do Dispositivo',
  'deviceConfig.wifiConfig': 'Configuração WiFi',
  'deviceConfig.ultrasonicConfig': 'Configuração Ultrassônica',
  'deviceConfig.selectConfigMethod': 'Selecionar Método de Configuração',
  'deviceConfig.networkConfig': 'Configuração de Rede',
  'deviceConfig.selectedNetwork': 'Rede Selecionada',
  'deviceConfig.signal': 'Sinal',
  'deviceConfig.openNetwork': 'Rede Aberta',
  'deviceConfig.encryptedNetwork': 'Rede Criptografada',
  'deviceConfig.password': 'Senha',
  'deviceConfig.pleaseEnterPassword': 'Por favor, insira a senha do WiFi',
  'deviceConfig.startConfig': 'Iniciar Configuração',
  'deviceConfig.connectToXiaozhiHotspot': 'Por favor, conecte-se ao hotspot xiaozhi primeiro',
  'deviceConfig.detecting': 'Detectando...',
  'deviceConfig.reDetect': 'Detectar Novamente',
  'deviceConfig.alreadyConnected': 'Conectado ao hotspot xiaozhi',
  'deviceConfig.refreshStatus': 'Atualizar Status',
  'deviceConfig.wifiNetworks': 'Redes WiFi',
  'deviceConfig.selectWifiNetwork': 'Selecionar Rede WiFi',
  'deviceConfig.refreshScan': 'Atualizar Busca',
  'deviceConfig.noWifiNetworks': 'Nenhuma rede WiFi disponível',
  'deviceConfig.clickToRefreshScan': 'Por favor, clique em Atualizar Busca',
  'deviceConfig.signalStrong': 'Sinal Forte',
  'deviceConfig.signalGood': 'Sinal Bom',
  'deviceConfig.signalFair': 'Sinal Regular',
  'deviceConfig.signalWeak': 'Sinal Fraco',
  'deviceConfig.channel': 'Canal',
  'deviceConfig.about': 'aproximadamente',
  'deviceConfig.seconds': 'segundos',
  'deviceConfig.generating': 'Gerando...',
  'deviceConfig.playing': 'Reproduzindo...',
  'deviceConfig.generateAndPlaySoundWave': 'Gerar e Reproduzir Onda Sonora',
  'deviceConfig.playSoundWave': 'Reproduzir Onda Sonora',
  'deviceConfig.stopPlaying': 'Parar Reprodução',
  'deviceConfig.autoLoopPlaySoundWave': 'Reproduzir Onda Sonora em Loop Automático',
  'deviceConfig.configAudioFile': 'Arquivo de Áudio de Configuração',
  'deviceConfig.duration': 'Duração',
  'deviceConfig.ultrasonicConfigInstructions': 'Instruções de Configuração Ultrassônica',
  'deviceConfig.ensureWifiNetworkSelectedAndPasswordEntered': 'Certifique-se de que a rede WiFi foi selecionada e a senha foi inserida',
  'deviceConfig.clickGenerateAndPlaySoundWave': 'Clique em Gerar e Reproduzir Onda Sonora, o sistema codificará as informações de configuração em áudio',
  'deviceConfig.bringPhoneCloseToXiaozhiDevice': 'Aproxime o celular do dispositivo xiaozhi (distância de 1-2 metros)',
  'deviceConfig.duringAudioPlaybackXiaozhiWillReceive': 'Durante a reprodução do áudio, o xiaozhi receberá e decodificará as informações de configuração',
  'deviceConfig.afterConfigSuccessDeviceWillConnect': 'Após a configuração bem-sucedida, o dispositivo se conectará automaticamente à rede WiFi',
  'deviceConfig.usesAfskModulation': 'Utiliza tecnologia de modulação AFSK, transmitindo dados pelas frequências de 1800Hz e 1500Hz',
  'deviceConfig.ensureModeratePhoneVolume': 'Por favor, certifique-se de que o volume do celular está moderado para evitar interferência de ruídos ambientais',
  'deviceConfig.generatingUltrasonicConfigAudio': 'Gerando áudio de configuração ultrassônica',
  'deviceConfig.configData': 'Dados de configuração',
  'deviceConfig.dataBytesLength': 'Comprimento dos bytes de dados',
  'deviceConfig.bitStreamLength': 'Comprimento do fluxo de bits',
  'deviceConfig.base64Length': 'Comprimento Base64',
  'deviceConfig.audioFileTooLarge': 'Arquivo de áudio muito grande, por favor reduza o tamanho do SSID ou da senha',
  'deviceConfig.audioGenerationSuccess': 'Áudio gerado com sucesso',
  'deviceConfig.samplePoints': 'Pontos de amostra',
  'deviceConfig.soundWaveGenerationSuccess': 'Onda sonora gerada com sucesso',
  'deviceConfig.audioGenerationFailed': 'Falha na geração do áudio',
  'deviceConfig.soundWaveGenerationFailed': 'Falha na geração da onda sonora',
  'deviceConfig.pleaseGenerateAudioFirst': 'Por favor, gere o áudio primeiro',
  'deviceConfig.startPlayingUltrasonicConfigAudio': 'Iniciando reprodução do áudio de configuração ultrassônica',
  'deviceConfig.ultrasonicAudioStartedPlaying': 'Reprodução do áudio ultrassônico iniciada',
  'deviceConfig.startPlayingConfigSoundWave': 'Reprodução da onda sonora de configuração iniciada',
  'deviceConfig.ultrasonicAudioPlaybackEnded': 'Reprodução do áudio ultrassônico finalizada',
  'deviceConfig.audioPlaybackFailed': 'Falha na reprodução do áudio',
  'deviceConfig.audioResourceBusy': 'Recurso de áudio ocupado, por favor tente novamente mais tarde',
  'deviceConfig.audioFormatNotSupported': 'Formato de áudio não suportado, pode ser um problema de URI de dados',
  'deviceConfig.audioFileError': 'Erro no arquivo de áudio',
  'deviceConfig.cleaningUpAudioContext': 'Limpando contexto de áudio',
  'deviceConfig.cleaningUpAudioContextFailed': 'Falha ao limpar contexto de áudio',
  'deviceConfig.stoppedPlayingUltrasonicAudio': 'Reprodução do áudio ultrassônico interrompida',
  'deviceConfig.stoppedPlaying': 'Reprodução interrompida',
  'deviceConfig.configMethod': 'Método de Configuração',
  'deviceConfig.enterWifiPassword': 'Por favor, insira a senha do WiFi',
  'deviceConfig.xiaozhi': 'xiaozhi',
  'deviceConfig.connectXiaozhiHotspot': 'Por favor, conecte-se ao hotspot xiaozhi',
  'deviceConfig.wifiScanResponse': 'Resposta da busca WiFi',
  'deviceConfig.scanSuccess': 'Busca bem-sucedida',
  'deviceConfig.networks': 'redes',
  'deviceConfig.wifiScanFailed': 'Falha na busca WiFi',
  'deviceConfig.scanFailedCheckConnection': 'Falha na busca, por favor verifique a conexão',
  'deviceConfig.checking': 'Verificando',
  'deviceConfig.reCheck': 'Verificar Novamente',
  'deviceConfig.connectedXiaozhiHotspot': 'Conectado ao hotspot xiaozhi',
  'deviceConfig.wifiNetwork': 'Rede WiFi',
  'deviceConfig.scanning': 'Buscando',
  'deviceConfig.cancel': 'Cancelar',
  'deviceConfig.clickRefreshScan': 'Por favor, clique em Atualizar Busca',
  'deviceConfig.esp32ConnectionCheckFailed': 'Falha na verificação de conexão ESP32',
  'deviceConfig.startWifiConfig': 'Iniciando configuração WiFi',
  'deviceConfig.configSuccess': 'Configuração bem-sucedida',
  'deviceConfig.deviceWillConnectTo': 'O dispositivo se conectará a',
  'deviceConfig.deviceWillRestart': 'O dispositivo será reiniciado',
  'deviceConfig.pleaseDisconnectXiaozhiHotspot': 'Por favor, desconecte-se do hotspot xiaozhi',
  'deviceConfig.configFailed': 'Falha na configuração',
  'deviceConfig.wifiConfigFailed': 'Falha na configuração WiFi',
  'deviceConfig.pleaseCheckNetworkConnection': 'Por favor, verifique a conexão de rede',
  'deviceConfig.startWifiConfigButton': 'Iniciar Configuração',
  'deviceConfig.wifiConfigInstructions': 'Instruções de Configuração WiFi',
  'deviceConfig.phoneConnectXiaozhiHotspot': 'Conecte o celular ao hotspot xiaozhi',
  'deviceConfig.selectTargetWifiNetwork': 'Selecione a rede WiFi de destino',
  'deviceConfig.enterWifiPasswordIfNeeded': 'Insira a senha do WiFi se necessário',
  'deviceConfig.clickStartConfigAndWait': 'Clique em Iniciar Configuração e aguarde',
  'deviceConfig.afterConfigSuccessDeviceWillRestart': 'Após a configuração bem-sucedida, o dispositivo reiniciará automaticamente',
  'deviceConfig.audioPlaybackError': 'Erro na reprodução de áudio',
  'deviceConfig.playbackFailed': 'Falha na reprodução',

  // Voiceprint page
  'voiceprint.audioNotExist': 'O áudio não existe',
  'voiceprint.getAudioFailed': 'Falha ao obter áudio',
  'voiceprint.audioPlayFailed': 'Falha na reprodução de áudio',
}
