diff --git a/src/i18n/index.js b/src/i18n/index.js new file mode 100644 index 000000000..0d8620b16 --- /dev/null +++ b/src/i18n/index.js @@ -0,0 +1,9 @@ +import enUS from 'src/i18n/en-us'; +import esEs from 'src/i18n/es-es'; +import ptBR from 'src/i18n/pt-br'; + +export default { + 'en-us': enUS, + 'es-es': esEs, + 'pt-br': ptBR, +}; \ No newline at end of file diff --git a/src/i18n/pt-br/index.js b/src/i18n/pt-br/index.js new file mode 100644 index 000000000..ae3184156 --- /dev/null +++ b/src/i18n/pt-br/index.js @@ -0,0 +1,252 @@ +export default { + pages: { + staking: { + note_unstaking_period: 'Lembre-se que há um período de retirada de {period}', + claim_tlos: 'Resgatar TLOS', + add_stlos_to_metamask: 'Iniciar interação com o MetaMask para adicionar sTLOS', + metamask_fox_logo: 'Logotipo de raposa do MetaMask', + cancel: 'Cancelar', + stake_tlos_confirm: 'continuar significa aplicar TLOS em troca de sTLOS. ' + + 'TLOS podem ser resgatados por TLOS a qualquer momento usando a aba Desaplicar.', + stake_tlos_confirm_2a: 'Depois que desaplicar os TLOS, eles ficarão bloqueados por um período de', /* unstakePeriodPretty...*/ + stake_tlos_confirm_2b: /*...unstakePeriodPretty */ 'depois disso, podem ser retirados da sua conta na aba Resgatar.', + stake_tlos_confirm_3: 'Deseja continuar?', + stake_tlos: 'Aplicar TLOS', + stake_tlos_subheader: 'Aplicar seus TLOS por sTLOS te dá acesso a uma renda estável e várias aplicações DeFi, ' + + 'aumentando ainda mais a rentabilidade. Conforme a quantidade de recompensas aumenta, a taxa de conversão de TLOS para sTLOS mudará ' + + 'com o tempo. Portanto, a quantidade de sTLOS recebida é menor que a quantidade de TLOS aplicada. As recompensas se ' + + 'auto-compensarão. Não é necessária nenhuma ação adicional.', + receive_stlos: 'Receber sTLOS', + available: '{balanceTlos} Disponível', + insufficient_tlos_balance: 'Saldo de TLOS insuficiente para aplicar', + login_using_an_evm_wallet: 'Logar usando uma carteira EVM', + wallet_not_connected: 'Carteira não conectada', + click_to_input_full_wallet_balance: 'Clique para inserir o saldo completo de sua carteira\n\n' + + 'O saldo mostrado é reduzido em 1 TLOS para manter sua conta operacional.\n' + + 'Saldo exato (menos as tarifas de gás aproximadas):\n' + + '{prettyBalance} TLOS', + loading: 'Carregando...', + get_more_tlos: 'Obter mais TLOS', + connect_wallet: 'Conectar carteira', + minutes: 'minutos', + hours: 'horas', + days: 'dias', + unstake: 'Desaplicar', + stake: 'Aplicar', + withdraw: 'Retirar', + telos_evm_staking: 'Aplicação de TLOS em EVM', + stake_tlos_earn_interest: 'Aplicar TLOS em sTLOS para ganhar juros do pool de recompensas por aplicação', + tooltip_1: 'RPA: Rendimento Percentual Anual (APY em inglês)\n\nA taxa de retorno anual depois de receber o juros composto na conta.\n\n' + + 'Os juros são compostos aproximadamente a cada 30 minutos. A taxa percentual não é fixa, o que significa que ' + + 'mudará ao longo do tempo com a quantidade total de TLOS aplicados em Telos EVM e Telos Native. ' + + 'As recompensas são pagas de um pool de recompensas da comunidade para o contrato sTLOS.', + tooltip_2: 'VTB: Valor Total Bloqueado (TVL em inglês)\n\nO valor atual, em TLOS, de todos os ativos mantidos no sTLOS ' + + '(TLOS aplicados) contrato inteligente, ou seja, a soma de todos os TLOS aplicados no Telos EVM neste momento.', + tooltip_3: 'Aplicado\n\n' + + 'O montante total aplicado associado com a conta logada, ou seja, ' + + 'seu saldo de tokens sTLOS, junto com seu valor em TLOS', + tooltip_4: 'Desaplicado\n\n' + + 'O valor total de TLOS desaplicados que você tem, tanto bloqueados quanto desbloqueados.\n\n' + + 'Quando você desaplica\u2014ou seja, resgata\u2014parte do valor em sTLOS, a quantidade equivalente de ' + + 'TLOS permanece como garantia ("bloqueado") por {unlockPeriod}; durante este tempo, ' + + 'não pode interagir com este TLOS.\n\n' + + 'Depois de decorrido o período de desbloqueio, você pode reivindicar seu TLOS disponível na aba Resgatar ' + + 'nesta página, assim será adicionado ao saldo TLOS da sua conta.', + confirm_unstake_1a: 'Continuar resgatará sTLOS em troca de TLOS. ' + + 'O TLOS não aplicado permanecerá bloqueado por um período de', /* unstakePeriodPretty...*/ + confirm_unstake_1b: /*...unstakePeriodPretty */ 'após o qual pode ser transferido para sua conta na aba Resgatar', + confirm_unstake_2a: 'Esteja atento que, pode desaplicar ', /* remainingDeposits...*/ + confirm_unstake_2b: /*...remainingDeposits */ 'mais vezes antes ' + + 'de atingir o máximo de ações simultâneas de desaplicação. Quando atingir o máximo, você precisará resgatar ' + + 'TLOS desbloqueado para continuar desaplicando. Se você não tiver nenhum TLOS resgatável nesse momento, você deve ' + + 'aguardar até que a duração do bloqueio acabe, antes de resgatar o TLOS desbloqueado e desaplicar mais sTLOS. -', + unstake_stlos_for_tlos: 'Desaplicar sTLOS em troca de TLOS', + unstake_stlos: 'Desaplicar sTLOS', + receive_tlos: 'Receber TLOS', + amount: 'Montante', + time_remaining: 'Tempo restante', + full_staked_balance_tooltip: 'Clique para inserir o saldo total aplicado\n\n' + + 'Saldo exato (menos as tarifas de gás aproximadas):\n' + + '{prettyBalance} sTLOS', + login_using_evm_wallet: 'Logar usando uma carteira EVM', + max_unstake_transactions_reached: 'Você atingiu o número máximo de transações de desaplicação pendentes, ' + + 'Por favor resgate o TLOS disponível ou aguarde que o TLOS não aplicado pendente se torne resgatável antes de fazer outro depósito.', + click_to_change_time_format: 'Clique para mudar o formato de hora', + unstaking: 'Desaplicando', + available_to_withdraw: 'Disponível para retirar', + withdraw_tlos: 'Retirar TLOS', + withdraw_successful: 'Retirada bem-sucedida! Ver transação:', + no_withdrawable_positions: 'Não há posições disponíveis para retirar', + }, + + explore_transactions: 'Explorar transações', + recent_transactions: 'Transações recentes', + telos_evm_explorer: 'Explorador Telos EVM', + rpc_endpoints: 'Endpoints RPC', + monitor: 'Monitor', + oops: 'Ops! Nada por aqui...', + go_home: 'Ver Início', + select_sol_file: 'Selecione o arquivo de contrato .sol para carregar', + select_json_file: 'Selecione o arquivo de objeto de entrada JSON convencional para carregar', + paste_contract_contents: 'você deve selecionar um arquivo para carrregar ou alternar a entrada para colar conteúdos do contrato', + contract_address: 'Endereço do contrato', + enter_contract_address: 'Por favor digite o endereço do contrato \'0x0123...\'', + invalid_address_format: 'formato de endereço inválido', + compiler_version: 'Versão do compilador', + select_compiler_version: 'selecione a versão do compilador', + eg_contracts: 'por exemplo, \'contratos/\'', + contract_file_directory_path: 'Caminho do diretório do(s) arquivo(s) do contrato (deixe em branco se não houver nenhum)', + invalid_path_format: 'O caminho deve terminar com uma barra inclinada /', + upload_file: 'carregar arquivo', + text_input: 'entrada de texto', + runs_value_for_optimization: 'Valor de execuções para otimização', + constructor_arguments: 'Argumentos do construtor', + comma_seperated_values: 'valores separados por vírgula, por exemplo, Bob,123,0x12345...', + no_trailing_commas: 'sem vírgulas finais', + paste_contract_code_here: 'copie e cole o código do contrato aqui...', + enter_contract_text: 'digite ou cole o texto do contrato', + verify_contract: 'Verificar contrato', + reset: 'Reiniciar', + gas_used: 'Gas usado', + transactions: 'Transações', + account: 'Conta', + contract: 'Contrato', + erc20_transfers: 'Transferências ERC20', + erc721_transfers: 'Transferências ERC721', + erc1155_transfers: 'Transferências ERC1155', + created_at_trx: 'Criada na TRX', + by_address: 'Por endereço', + number_used_once: 'Número usado uma vez', + native_account: 'Conta nativa', + balance: 'Saldo', + }, + components: { + verify_contract: 'Verificar contrato', + search_evm_address_failed: 'A busca pelo endereço EVM vinculado à conta nativa { accountName } falhou. Você pode criar uma em wallet.telos.net', + connect_wallet: 'Conectar carteira', + view_address: 'Ver endereço', + disconnect: 'Desconectar', + evm_wallets: 'Carteiras EVM', + advanced: 'Avançado', + continue_on_metamask: 'Continuar no Metamask', + text1_native_wallets: 'Carteiras nativas para', + text2_advanced_users: 'usuários avançados', + text3_or_to_recover_assets: 'ou para recuperar ativos enviados a um endereço vinculado nativo', + copy_to_clipboard: 'Copiar { text } para a Área de Transferência', + latest_block: 'Último bloqueio', + tlos_price: 'Preço da TLOS', + click_to_expand: 'Clique para expandir a assinatura da função', + search_evm_failed: 'A busca pelo endereço EVM vinculado à conta nativa { search_term } falhou.', + search_failed: 'A busca falhou, digite um termo de pesquisa válido.', + add_to_metamask: 'Adicionar { symbol } ao MetaMask', + tx_hash: 'Tx Hash', + block: 'Bloqueio', + date: 'Data', + method: 'Método', + from: 'De', + to: 'Para', + to_interacted_with: 'Para / Interagido com', + value_transfer: 'Valor / Transferência', + value: 'Valor', + token: 'Token', + unknown_precision: 'Precisão desconhecida', + click_to_change_format: 'Clique para mudar o formato', + func_exed_based_on_dec_data: 'Função executada com base nos dados decodificados', + balance: 'Saldo', + error_fetching_balance: 'erro ao recuperar o saldo', + launch_metamask_dialog_to_add: 'Iniciar interação com o MetaMask para adicionar { symbol }', + search_hints: 'Transação,Endereço,Bloqueio', + + transaction: { + form_from: 'De : ', + form_to: 'Para : ', + form_token: 'Token : ', + consult_collection: 'Consultar coleção', + consult_metadata: 'Consultar metadados', + consult_media: 'Consultar mídia', + show_total: 'Mostrar total', + show_wei: 'Mostrar wei', + value_uint256: 'Valor (uint256) : ', + tlos_transfer: 'Transferência TLOS', + unknown: 'Desconhecido', + contract_deployment: 'Implantação de contrato', + no_internal_trxs_found: 'Nenhuma transação interna encontrada', + human_readable: 'Legível por humanos', + no_logs_found: 'Nenhum registro encontrado', + verify_related_contract: 'Verifique o contrato relacionado para cada registro para ver sua versão legível por humanos', + }, + + input: { + incorrect_address_array_length: 'Deve haver { size } endereços na matriz', + incorrect_booleans_array_length: 'Deve haver { size } booleanos na matriz', + incorrect_bytes_array_length: 'Deve haver { size } bytes na matriz', + incorrect_sigint_array_length: 'Deve haver { size } inteiros assinados na matriz', + incorrect_strings_array_length: 'Deve haver { size } strings (sequência de textos) na matriz', + incorrect_unsigint_array_length: 'Deve haver { size } inteiros sem assinar na matriz', + + invalid_address_array_string: 'O valor inserido não representa uma matriz de endereços', + invalid_booleans_array_string: 'O valor inserido não representa uma matriz de booleanos', + invalid_bytes_array_string: 'O valor inserido não representa uma matriz de bytes', + invalid_sigint_array_string: 'O valor inserido não representa uma matriz de inteiros assinados', + invalid_strings_array_string: 'O valor inserido não representa uma matriz de strings (sequência de textos)', + invalid_unsigint_array_string: 'O valor inserido não representa uma matriz de inteiros sem assinar', + + invalid_address_length: 'Um endereço deve ter exatamente 40 caracteres, sem incluir "0x"', + invalid_address_start: 'Um endereço deve começar com 0x', + invalid_address_characters: 'A entrada contém caracteres inválidos', + readonly: 'Este campo é só de leitura', + required: 'Este campo é obrigatório', + too_large: 'O valor máximo para int{ size } é { max }', + too_small: 'O valor mínimo para int{ size } é { max }', + too_large_pow2: 'O valor máximo para uint{ size } é 2^{ size } - 1', + too_small_pow2: 'O valor mínimo para int{ size } é -(2^{ size }) + 1', + too_large_unsigint: 'O valor máximo para uint{ size } é 2^{ size } - 1', + no_negative_unsigint: 'O valor para uint{ size } não deve ser negativo', + invalid_signed_integer: 'Inteiro assinado inválido', + invalid_unsigint: 'A entrada deve ser um inteiro não assinado válido', + str_input_placeholder: '["algum valor", ... , "valor final"]', + str_input_hint: 'Aspas duplas em strings (sequência de textos) devem ser evitadas(\\")', + }, + health: { + status: 'Estado', + checked_at: 'Verificado em', + task: 'Tarefa', + message: 'Mensagem', + block_height: 'Altura do bloqueio', + latency: 'Latência', + }, + contract_tab: { + code: 'Código', + read: 'Ler', + write: 'Escrever', + amount: 'Montante', + value: 'Valor', + ok: 'Ok', + cancel: 'Cancelar', + custom_decimals: 'Decimais personalizados', + custom: 'Personalizado', + }, + hecontract_tabalth: { + unverified_contract_source: 'O código fonte deste contrato não foi verificado.', + click_here: 'Clique aqui', + upload_source_files: 'para carregar arquivos de código fonte e verificar este contrato. ' + + 'Como alternativa, você pode interagir com o contrato usando um ABI arbitrário:', + use_erc20_abi: 'Usar ABI ERC20', + use_erc721_abi: 'Usar ABI ERC721', + abi_from_json: 'ABI de JSON', + paste_abi_json_here: 'Cole o ABI JSON aqui', + abi_json_preview: 'Prévia do ABI JSON', + provided_abi_invalid: 'O ABI fornecido é inválido', + provided_json_invalid: 'O JSON fornecido é inválido', + read_functions: 'Funções de leitura', + write_functions: 'Funções de escrita', + unverified_contract: 'Contrato não verificado', + }, + }, + layouts: { + health_status: 'Estado de saúde', + stake_telos: 'Stake TLOS', + teloscan_mainnet: 'Teloscan Mainnet', + teloscan_testnet: 'Teloscan Testnet', + }, +} \ No newline at end of file