Skip to content

Commit

Permalink
Adds Portuguese (Brazil) translation for wallet connection (#5674)
Browse files Browse the repository at this point in the history
Signed-off-by: Joaquim Verges <[email protected]>
Co-authored-by: Joaquim Verges <[email protected]>
  • Loading branch information
devfelipenunes and joaquim-verges authored Dec 11, 2024
1 parent 3f56252 commit 8020bdb
Show file tree
Hide file tree
Showing 10 changed files with 245 additions and 1 deletion.
5 changes: 5 additions & 0 deletions .changeset/olive-camels-live.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"thirdweb": patch
---

This pull request adds the complete Portuguese (Brazil) translation for the wallet connection module. It includes translations for connecting a wallet, sending/receiving funds, network management, and other wallet-related actions. This improves the user experience for Portuguese-speaking users.
124 changes: 124 additions & 0 deletions packages/thirdweb/src/react/web/ui/ConnectWallet/locale/br.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
import type { ConnectLocale } from "./types.js";

const connectWalletLocalPtBr: ConnectLocale = {
id: "pt_BR",
signIn: "Entrar",
defaultButtonTitle: "Conectar carteira",
connecting: "Conectando",
switchNetwork: "Trocar de rede",
switchingNetwork: "Trocando de rede",
defaultModalTitle: "Conectar",
recommended: "Recomendado",
installed: "Instalado",
continueAsGuest: "Continuar como convidado",
connectAWallet: "Conectar uma carteira",
newToWallets: "Novo em carteiras?",
getStarted: "Começar",
guest: "Convidado",
send: "Enviar",
receive: "Receber",
buy: "Comprar",
transactions: "Transações",
payTransactions: "Transações Fiat",
walletTransactions: "Transações de Carteira",
viewAllTransactions: "Ver todas as transações",
currentNetwork: "Rede atual",
switchAccount: "Trocar conta",
requestTestnetFunds: "Solicitar fundos para Testnet",
backupWallet: "Fazer backup da carteira",
guestWalletWarning:
"Esta é uma carteira de convidado temporária. Faça um backup se não quiser perder o acesso a ela",
switchTo: "Trocar para",
connectedToSmartWallet: "carteira inteligente",
confirmInWallet: "Confirmar na carteira",
disconnectWallet: "Desconectar carteira",
copyAddress: "Copiar endereço",
personalWallet: "Carteira pessoal",
smartWallet: "Carteira inteligente",
or: "Ou",
goBackButton: "Voltar",
passkeys: {
title: "Chave de acesso",
linkPasskey: "Vincular uma chave de acesso",
},
welcomeScreen: {
defaultTitle: "Sua porta de entrada para o mundo descentralizado",
defaultSubtitle: "Conecte uma carteira para começar",
},
agreement: {
prefix: "Ao conectar, você aceita os",
termsOfService: "Termos de serviço",
and: "e",
privacyPolicy: "Política de privacidade",
},
networkSelector: {
title: "Selecionar rede",
mainnets: "Redes principais",
testnets: "Redes de teste",
allNetworks: "Todas",
addCustomNetwork: "Adicionar rede personalizada",
inputPlaceholder: "Buscar rede ou ID da cadeia",
categoryLabel: {
recentlyUsed: "Usadas recentemente",
popular: "Populares",
others: "Outras redes",
},
loading: "Carregando",
failedToSwitch: "Erro ao trocar de rede",
},
receiveFundsScreen: {
title: "Receber fundos",
instruction:
"Copie o endereço da carteira para enviar fundos para esta carteira",
},
sendFundsScreen: {
title: "Enviar fundos",
submitButton: "Enviar",
token: "Token",
sendTo: "Enviar para",
amount: "Quantidade",
successMessage: "Transação bem-sucedida",
invalidAddress: "Endereço inválido",
noTokensFound: "Nenhum token encontrado",
searchToken: "Buscar ou colar o endereço do token",
transactionFailed: "Transação falhou",
transactionRejected: "Transação rejeitada",
insufficientFunds: "Fundos insuficientes",
selectTokenTitle: "Selecione um Token",
sending: "Enviando",
},
signatureScreen: {
instructionScreen: {
title: "Entrar",
instruction:
"Por favor, assine a solicitação de mensagem na sua carteira para continuar",
signInButton: "Entrar",
disconnectWallet: "Desconectar carteira",
},
signingScreen: {
title: "Entrando",
prompt: "Assine a solicitação de assinatura na sua carteira",
promptForSafe:
"Assine a solicitação de assinatura na sua carteira e aprove a transação no Safe",
approveTransactionInSafe: "Aprovar transação no Safe",
tryAgain: "Tentar novamente",
failedToSignIn: "Erro ao entrar",
inProgress: "Aguardando confirmação",
},
},
manageWallet: {
title: "Gerenciar Carteira",
linkedProfiles: "Perfis vinculados",
linkProfile: "Vincular um perfil",
connectAnApp: "Conectar um Aplicativo",
exportPrivateKey: "Exportar chave privada",
},
viewFunds: {
title: "Ver Fundos",
viewNFTs: "Ver NFTs",
viewTokens: "Ver Tokens",
viewAssets: "Ver Ativos",
},
};

export default connectWalletLocalPtBr;
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ export async function getConnectLocale(localeId: LocaleId) {
case "fr_FR": {
return (await import("./fr.js")).default;
}
case "pt_BR": {
return (await import("./br.js")).default;
}
default: {
return (await import("./en.js")).default;
}
Expand Down
3 changes: 2 additions & 1 deletion packages/thirdweb/src/react/web/ui/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,5 @@ export type LocaleId =
| "tl_PH"
| "vi_VN"
| "de_DE"
| "fr_FR";
| "fr_FR"
| "pt_BR";
27 changes: 27 additions & 0 deletions packages/thirdweb/src/react/web/wallets/injected/locale/br.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import type { InjectedWalletLocale } from "./types.js";

/**
* @internal
*/
const injectedWalletLocalePtBr = (wallet: string): InjectedWalletLocale => ({
connectionScreen: {
inProgress: "Aguardando Confirmação",
failed: "Falha na conexão",
instruction: `Aceite a solicitação de conexão no ${wallet}`,
retry: "Tentar novamente",
},
getStartedScreen: {
instruction: `Escaneie o código QR para baixar o aplicativo ${wallet}`,
},
scanScreen: {
instruction: `Escaneie o código QR com o aplicativo ${wallet} para conectar`,
},
getStartedLink: `Não tem o ${wallet}?`,
download: {
chrome: "Baixar extensão para Chrome",
android: "Baixar no Google Play",
iOS: "Baixar na App Store",
},
});

export default injectedWalletLocalePtBr;
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ export async function getInjectedWalletLocale(
return (await import("./kr.js")).default;
case "fr_FR":
return (await import("./fr.js")).default;
case "pt_BR": {
return (await import("./br.js")).default;
}
default:
return (await import("./en.js")).default;
}
Expand Down
62 changes: 62 additions & 0 deletions packages/thirdweb/src/react/web/wallets/shared/locale/br.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
import type { InAppWalletLocale } from "./types.js";

export default {
signInWithGoogle: "Google",
signInWithFacebook: "Facebook",
signInWithApple: "Apple",
signInWithDiscord: "Discord",
emailPlaceholder: "Endereço de e-mail",
submitEmail: "Continuar",
signIn: "Entrar",
or: "ou",
emailRequired: "Endereço de e-mail é obrigatório",
invalidEmail: "Endereço de e-mail inválido",
maxAccountsExceeded:
"Número máximo de contas excedido. Por favor, notifique o desenvolvedor do aplicativo.",
socialLoginScreen: {
title: "Entrar",
instruction: "Faça login na sua conta no pop-up",
failed: "Falha ao entrar",
retry: "Tentar novamente",
},
emailLoginScreen: {
title: "Entrar",
enterCodeSendTo: "Digite o código de verificação enviado para",
newDeviceDetected: "Novo dispositivo detectado",
enterRecoveryCode:
"Digite o código de recuperação enviado por e-mail quando você se cadastrou",
invalidCode: "Código de verificação inválido",
invalidCodeOrRecoveryCode:
"Código de verificação ou código de recuperação inválido",
verify: "Verificar",
failedToSendCode: "Falha ao enviar código de verificação",
sendingCode: "Enviando código de verificação",
resendCode: "Reenviar código de verificação",
},
createPassword: {
title: "Criar senha",
instruction:
"Defina uma senha para sua conta. Você precisará dessa senha ao conectar-se de um novo dispositivo.",
saveInstruction: "Certifique-se de salvá-la",
inputPlaceholder: "Digite sua senha",
confirmation: "Eu salvei minha senha",
submitButton: "Definir senha",
failedToSetPassword: "Falha ao definir senha",
},
enterPassword: {
title: "Digite a senha",
instruction: "Digite a senha da sua conta",
inputPlaceholder: "Digite sua senha",
submitButton: "Verificar",
wrongPassword: "Senha incorreta",
},
signInWithEmail: "Entrar com e-mail",
invalidPhone: "Número de telefone inválido",
phonePlaceholder: "Número de telefone",
signInWithPhone: "Entrar com número de telefone",
phoneRequired: "Número de telefone é obrigatório",
passkey: "Chave de acesso",
signInWithWallet: "Entrar com carteira",
linkWallet: "Vincular uma carteira",
loginAsGuest: "Continuar como convidado",
} satisfies InAppWalletLocale;
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ export async function getInAppWalletLocale(
return (await import("./kr.js")).default;
case "fr_FR":
return (await import("./fr.js")).default;
case "pt_BR": {
return (await import("./br.js")).default;
}
default:
return (await import("./en.js")).default;
}
Expand Down
13 changes: 13 additions & 0 deletions packages/thirdweb/src/react/web/wallets/smartWallet/locale/br.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import type { SmartWalletLocale } from "./types.js";

const smartWalletLocalePtBr: SmartWalletLocale = {
connecting: "Conectando à Conta Inteligente",
failedToConnect: "Falha ao conectar à Conta Inteligente",
wrongNetworkScreen: {
title: "Rede Incorreta",
subtitle: "Sua carteira não está conectada à rede requerida",
failedToSwitch: "Falha ao mudar de rede",
},
};

export default smartWalletLocalePtBr;
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,9 @@ export async function getSmartWalletLocale(
return (await import("./kr.js")).default;
case "fr_FR":
return (await import("./fr.js")).default;
case "pt_BR": {
return (await import("./br.js")).default;
}
default:
return (await import("./en.js")).default;
}
Expand Down

0 comments on commit 8020bdb

Please sign in to comment.