diff --git a/public/index.html b/public/index.html index 9f6504b..96d157d 100644 --- a/public/index.html +++ b/public/index.html @@ -186,6 +186,11 @@ - (Norwegian) + + Português do Brasil + - + (Brazilian Portuguese) + Română - diff --git a/public/lang/pt-BR.json b/public/lang/pt-BR.json new file mode 100644 index 0000000..1cd6283 --- /dev/null +++ b/public/lang/pt-BR.json @@ -0,0 +1,165 @@ +{ + "header": { + "about_title": "Sobre o PairDrop", + "language-selector_title": "Definir idioma", + "about_aria-label": "Abrir Sobre o PairDrop", + "theme-auto_title": "Adaptar o tema ao sistema automaticamente", + "theme-light_title": "Sempre usar o tema claro", + "theme-dark_title": "Sempre usar o tema escuro", + "notification_title": "Ativar notificações", + "install_title": "Instalar o PairDrop", + "pair-device_title": "Emparelhar seus dispositivos permanentemente", + "edit-paired-devices_title": "Editar dispositivos emparelhados", + "join-public-room_title": "Entrar em uma sala pública temporariamente", + "cancel-paste-mode": "Concluído" + }, + "instructions": { + "no-peers_data-drop-bg": "Solte para selecionar o destinatário", + "no-peers-title": "Abra o PairDrop em outros dispositivos para enviar arquivos", + "no-peers-subtitle": "Emparelhe dispositivos ou entre em uma sala pública para ser descoberto em outras redes", + "x-instructions_desktop": "Clique para enviar arquivos ou clique com o botão direito para enviar uma mensagem", + "x-instructions_mobile": "Toque para enviar arquivos ou toque e segure para enviar uma mensagem", + "x-instructions_data-drop-peer": "Solte para enviar para o par", + "x-instructions_data-drop-bg": "Solte para selecionar o destinatário", + "click-to-send": "Clique para enviar", + "tap-to-send": "Toque para enviar", + "activate-paste-mode-base": "Abra o PairDrop em outros dispositivos para enviar", + "activate-paste-mode-and-other-files": "e {{count}} outros arquivos", + "activate-paste-mode-shared-text": "texto compartilhado" + }, + "footer": { + "known-as": "Você é conhecido como:", + "display-name_data-placeholder": "Carregando…", + "display-name_title": "Edite o nome do seu dispositivo permanentemente", + "discovery": "Você pode ser descoberto:", + "on-this-network": "nesta rede", + "on-this-network_title": "Você pode ser descoberto por todos nesta rede.", + "paired-devices": "por dispositivos emparelhados", + "paired-devices_title": "Você pode ser descoberto por dispositivos emparelhados a qualquer momento, independentemente da rede.", + "public-room-devices": "na sala {{roomId}}", + "public-room-devices_title": "Você pode ser descoberto por dispositivos nesta sala pública, independentemente da rede.", + "traffic": "O tráfego é", + "routed": "roteado pelo servidor", + "webrtc": "se o WebRTC não estiver disponível." + }, + "dialogs": { + "pair-devices-title": "Emparelhar Dispositivos Permanentemente", + "input-key-on-this-device": "Insira esta chave em outro dispositivo", + "scan-qr-code": "ou escaneie o código QR.", + "enter-key-from-another-device": "Insira a chave de outro dispositivo aqui.", + "temporary-public-room-title": "Sala Pública Temporária", + "input-room-id-on-another-device": "Insira este ID de sala em outro dispositivo", + "enter-room-id-from-another-device": "Insira o ID da sala de outro dispositivo para entrar na sala.", + "hr-or": "OU", + "pair": "Emparelhar", + "cancel": "Cancelar", + "edit-paired-devices-title": "Editar Dispositivos Emparelhados", + "unpair": "Desemparelhar", + "paired-devices-wrapper_data-empty": "Nenhum dispositivo emparelhado.", + "auto-accept-instructions-1": "Ative", + "auto-accept": "auto-aceitar", + "auto-accept-instructions-2": "para aceitar automaticamente todos os arquivos enviados por esse dispositivo.", + "close": "Fechar", + "join": "Entrar", + "leave": "Sair", + "would-like-to-share": "gostaria de compartilhar", + "accept": "Aceitar", + "decline": "Recusar", + "has-sent": "enviou:", + "share": "Compartilhar", + "download": "Baixar", + "send-message-title": "Enviar Mensagem", + "send-message-to": "Enviar uma Mensagem para", + "message_title": "Insira a mensagem a ser enviada", + "send": "Enviar", + "receive-text-title": "Mensagem Recebida", + "copy": "Copiar", + "base64-processing": "Processando…", + "base64-tap-to-paste": "Toque aqui para colar {{type}}", + "base64-paste-to-send": "Cole aqui para enviar {{type}}", + "base64-text": "texto", + "base64-files": "arquivos", + "file-other-description-image": "e mais 1 imagem", + "file-other-description-file": "e mais 1 arquivo", + "file-other-description-image-plural": "e mais {{count}} imagens", + "file-other-description-file-plural": "e mais {{count}} arquivos", + "title-image": "Imagem", + "title-file": "Arquivo", + "title-image-plural": "Imagens", + "title-file-plural": "Arquivos", + "receive-title": "{{descriptor}} Recebido", + "download-again": "Baixar novamente", + "language-selector-title": "Definir idioma", + "system-language": "Idioma do sistema", + "public-room-qr-code_title": "Clique para copiar o link da sala pública", + "pair-devices-qr-code_title": "Clique para copiar o link para emparelhar este dispositivo" + }, + "about": { + "close-about_aria-label": "Fechar Sobre o PairDrop", + "claim": "A maneira mais fácil de transferir arquivos entre dispositivos", + "github_title": "PairDrop no GitHub", + "buy-me-a-coffee_title": "Me compre um café!", + "tweet_title": "Tweet sobre o PairDrop", + "faq_title": "Perguntas frequentes" + }, + "notifications": { + "display-name-changed-permanently": "O nome de exibição é alterado permanentemente.", + "display-name-changed-temporarily": "O nome de exibição é alterado apenas para esta sessão.", + "display-name-random-again": "O nome de exibição é gerado aleatoriamente novamente.", + "download-successful": "{{descriptor}} baixado", + "pairing-tabs-error": "Emparelhar duas abas do navegador web é impossível.", + "pairing-success": "Dispositivos emparelhados.", + "pairing-not-persistent": "Dispositivos emparelhados não são persistentes.", + "pairing-key-invalid": "Chave inválida", + "pairing-key-invalidated": "Chave {{key}} invalidada.", + "pairing-cleared": "Todos os dispositivos desemparelhados.", + "public-room-id-invalid": "ID da sala inválido", + "public-room-left": "Saiu da sala pública {{publicRoomId}}", + "copied-to-clipboard": "Copiado para a área de transferência", + "pair-url-copied-to-clipboard": "Link para emparelhar este dispositivo copiado para a área de transferência", + "room-url-copied-to-clipboard": "Link para a sala pública copiado para a área de transferência", + "copied-to-clipboard-error": "Cópia não possível. Copie manualmente.", + "text-content-incorrect": "O conteúdo do texto está incorreto.", + "file-content-incorrect": "O conteúdo do arquivo está incorreto.", + "clipboard-content-incorrect": "O conteúdo da área de transferência está incorreto.", + "notifications-enabled": "Notificações ativadas.", + "notifications-permissions-error": "A permissão de notificações foi bloqueada porque o usuário dispensou o prompt de permissão várias vezes. Isso pode ser redefinido nas Informações da Página, que podem ser acessadas clicando no ícone de cadeado ao lado da barra de URL.", + "link-received": "Link recebido por {{name}} - Clique para abrir", + "message-received": "Mensagem recebida por {{name}} - Clique para copiar", + "click-to-download": "Clique para baixar", + "request-title": "{{name}} gostaria de transferir {{count}} {{descriptor}}", + "click-to-show": "Clique para mostrar", + "copied-text": "Texto copiado para a área de transferência", + "copied-text-error": "Escrever na área de transferência falhou. Copie manualmente!", + "offline": "Você está offline", + "online": "Você está online novamente", + "connected": "Conectado.", + "online-requirement-pairing": "Você precisa estar online para emparelhar dispositivos.", + "online-requirement-public-room": "Você precisa estar online para criar uma sala pública.", + "connecting": "Conectando…", + "files-incorrect": "Os arquivos estão incorretos.", + "file-transfer-completed": "Transferência de arquivo concluída.", + "ios-memory-limit": "Enviar arquivos para iOS só é possível até 200 MB de uma vez", + "message-transfer-completed": "Transferência de mensagem concluída.", + "unfinished-transfers-warning": "Há transferências inacabadas. Tem certeza de que deseja fechar o PairDrop?", + "rate-limit-join-key": "Limite de taxa atingido. Aguarde 10 segundos e tente novamente.", + "selected-peer-left": "Par selecionado saiu." + }, + "document-titles": { + "file-received": "Arquivo recebido", + "file-received-plural": "{{count}} Arquivos recebidos", + "file-transfer-requested": "Transferência de arquivo solicitada", + "image-transfer-requested": "Transferência de imagem solicitada", + "message-received": "Mensagem recebida", + "message-received-plural": "{{count}} mensagens recebidas" + }, + "peer-ui": { + "click-to-send-paste-mode": "Clique para enviar {{descriptor}}", + "click-to-send": "Clique para enviar arquivos ou clique com o botão direito para enviar uma mensagem", + "connection-hash": "Para verificar a segurança da criptografia de ponta a ponta, compare este número de segurança em ambos os dispositivos", + "preparing": "Preparando…", + "waiting": "Aguardando…", + "processing": "Processando…", + "transferring": "Transferindo…" + } +} \ No newline at end of file diff --git a/public/scripts/localization.js b/public/scripts/localization.js index d8390c1..5c37728 100644 --- a/public/scripts/localization.js +++ b/public/scripts/localization.js @@ -1,7 +1,7 @@ class Localization { constructor() { Localization.defaultLocale = "en"; - Localization.supportedLocales = ["ar", "de", "en", "es", "fr", "id", "it", "ja", "nb", "nl", "ro", "ru", "tr", "zh-CN"]; + Localization.supportedLocales = ["ar", "de", "en", "es", "fr", "id", "it", "ja", "nb", "nl", "ro", "ru", "tr", "zh-CN","pt-BR"]; Localization.supportedLocalesRTL = ["ar"]; Localization.translations = {}; diff --git a/public_included_ws_fallback/index.html b/public_included_ws_fallback/index.html index 8387ab7..a2713d1 100644 --- a/public_included_ws_fallback/index.html +++ b/public_included_ws_fallback/index.html @@ -191,6 +191,11 @@ - (Norwegian) + + Português do Brasil + - + (Brazilian Portuguese) + Română - diff --git a/public_included_ws_fallback/lang/pt-BR.json b/public_included_ws_fallback/lang/pt-BR.json new file mode 100644 index 0000000..1cd6283 --- /dev/null +++ b/public_included_ws_fallback/lang/pt-BR.json @@ -0,0 +1,165 @@ +{ + "header": { + "about_title": "Sobre o PairDrop", + "language-selector_title": "Definir idioma", + "about_aria-label": "Abrir Sobre o PairDrop", + "theme-auto_title": "Adaptar o tema ao sistema automaticamente", + "theme-light_title": "Sempre usar o tema claro", + "theme-dark_title": "Sempre usar o tema escuro", + "notification_title": "Ativar notificações", + "install_title": "Instalar o PairDrop", + "pair-device_title": "Emparelhar seus dispositivos permanentemente", + "edit-paired-devices_title": "Editar dispositivos emparelhados", + "join-public-room_title": "Entrar em uma sala pública temporariamente", + "cancel-paste-mode": "Concluído" + }, + "instructions": { + "no-peers_data-drop-bg": "Solte para selecionar o destinatário", + "no-peers-title": "Abra o PairDrop em outros dispositivos para enviar arquivos", + "no-peers-subtitle": "Emparelhe dispositivos ou entre em uma sala pública para ser descoberto em outras redes", + "x-instructions_desktop": "Clique para enviar arquivos ou clique com o botão direito para enviar uma mensagem", + "x-instructions_mobile": "Toque para enviar arquivos ou toque e segure para enviar uma mensagem", + "x-instructions_data-drop-peer": "Solte para enviar para o par", + "x-instructions_data-drop-bg": "Solte para selecionar o destinatário", + "click-to-send": "Clique para enviar", + "tap-to-send": "Toque para enviar", + "activate-paste-mode-base": "Abra o PairDrop em outros dispositivos para enviar", + "activate-paste-mode-and-other-files": "e {{count}} outros arquivos", + "activate-paste-mode-shared-text": "texto compartilhado" + }, + "footer": { + "known-as": "Você é conhecido como:", + "display-name_data-placeholder": "Carregando…", + "display-name_title": "Edite o nome do seu dispositivo permanentemente", + "discovery": "Você pode ser descoberto:", + "on-this-network": "nesta rede", + "on-this-network_title": "Você pode ser descoberto por todos nesta rede.", + "paired-devices": "por dispositivos emparelhados", + "paired-devices_title": "Você pode ser descoberto por dispositivos emparelhados a qualquer momento, independentemente da rede.", + "public-room-devices": "na sala {{roomId}}", + "public-room-devices_title": "Você pode ser descoberto por dispositivos nesta sala pública, independentemente da rede.", + "traffic": "O tráfego é", + "routed": "roteado pelo servidor", + "webrtc": "se o WebRTC não estiver disponível." + }, + "dialogs": { + "pair-devices-title": "Emparelhar Dispositivos Permanentemente", + "input-key-on-this-device": "Insira esta chave em outro dispositivo", + "scan-qr-code": "ou escaneie o código QR.", + "enter-key-from-another-device": "Insira a chave de outro dispositivo aqui.", + "temporary-public-room-title": "Sala Pública Temporária", + "input-room-id-on-another-device": "Insira este ID de sala em outro dispositivo", + "enter-room-id-from-another-device": "Insira o ID da sala de outro dispositivo para entrar na sala.", + "hr-or": "OU", + "pair": "Emparelhar", + "cancel": "Cancelar", + "edit-paired-devices-title": "Editar Dispositivos Emparelhados", + "unpair": "Desemparelhar", + "paired-devices-wrapper_data-empty": "Nenhum dispositivo emparelhado.", + "auto-accept-instructions-1": "Ative", + "auto-accept": "auto-aceitar", + "auto-accept-instructions-2": "para aceitar automaticamente todos os arquivos enviados por esse dispositivo.", + "close": "Fechar", + "join": "Entrar", + "leave": "Sair", + "would-like-to-share": "gostaria de compartilhar", + "accept": "Aceitar", + "decline": "Recusar", + "has-sent": "enviou:", + "share": "Compartilhar", + "download": "Baixar", + "send-message-title": "Enviar Mensagem", + "send-message-to": "Enviar uma Mensagem para", + "message_title": "Insira a mensagem a ser enviada", + "send": "Enviar", + "receive-text-title": "Mensagem Recebida", + "copy": "Copiar", + "base64-processing": "Processando…", + "base64-tap-to-paste": "Toque aqui para colar {{type}}", + "base64-paste-to-send": "Cole aqui para enviar {{type}}", + "base64-text": "texto", + "base64-files": "arquivos", + "file-other-description-image": "e mais 1 imagem", + "file-other-description-file": "e mais 1 arquivo", + "file-other-description-image-plural": "e mais {{count}} imagens", + "file-other-description-file-plural": "e mais {{count}} arquivos", + "title-image": "Imagem", + "title-file": "Arquivo", + "title-image-plural": "Imagens", + "title-file-plural": "Arquivos", + "receive-title": "{{descriptor}} Recebido", + "download-again": "Baixar novamente", + "language-selector-title": "Definir idioma", + "system-language": "Idioma do sistema", + "public-room-qr-code_title": "Clique para copiar o link da sala pública", + "pair-devices-qr-code_title": "Clique para copiar o link para emparelhar este dispositivo" + }, + "about": { + "close-about_aria-label": "Fechar Sobre o PairDrop", + "claim": "A maneira mais fácil de transferir arquivos entre dispositivos", + "github_title": "PairDrop no GitHub", + "buy-me-a-coffee_title": "Me compre um café!", + "tweet_title": "Tweet sobre o PairDrop", + "faq_title": "Perguntas frequentes" + }, + "notifications": { + "display-name-changed-permanently": "O nome de exibição é alterado permanentemente.", + "display-name-changed-temporarily": "O nome de exibição é alterado apenas para esta sessão.", + "display-name-random-again": "O nome de exibição é gerado aleatoriamente novamente.", + "download-successful": "{{descriptor}} baixado", + "pairing-tabs-error": "Emparelhar duas abas do navegador web é impossível.", + "pairing-success": "Dispositivos emparelhados.", + "pairing-not-persistent": "Dispositivos emparelhados não são persistentes.", + "pairing-key-invalid": "Chave inválida", + "pairing-key-invalidated": "Chave {{key}} invalidada.", + "pairing-cleared": "Todos os dispositivos desemparelhados.", + "public-room-id-invalid": "ID da sala inválido", + "public-room-left": "Saiu da sala pública {{publicRoomId}}", + "copied-to-clipboard": "Copiado para a área de transferência", + "pair-url-copied-to-clipboard": "Link para emparelhar este dispositivo copiado para a área de transferência", + "room-url-copied-to-clipboard": "Link para a sala pública copiado para a área de transferência", + "copied-to-clipboard-error": "Cópia não possível. Copie manualmente.", + "text-content-incorrect": "O conteúdo do texto está incorreto.", + "file-content-incorrect": "O conteúdo do arquivo está incorreto.", + "clipboard-content-incorrect": "O conteúdo da área de transferência está incorreto.", + "notifications-enabled": "Notificações ativadas.", + "notifications-permissions-error": "A permissão de notificações foi bloqueada porque o usuário dispensou o prompt de permissão várias vezes. Isso pode ser redefinido nas Informações da Página, que podem ser acessadas clicando no ícone de cadeado ao lado da barra de URL.", + "link-received": "Link recebido por {{name}} - Clique para abrir", + "message-received": "Mensagem recebida por {{name}} - Clique para copiar", + "click-to-download": "Clique para baixar", + "request-title": "{{name}} gostaria de transferir {{count}} {{descriptor}}", + "click-to-show": "Clique para mostrar", + "copied-text": "Texto copiado para a área de transferência", + "copied-text-error": "Escrever na área de transferência falhou. Copie manualmente!", + "offline": "Você está offline", + "online": "Você está online novamente", + "connected": "Conectado.", + "online-requirement-pairing": "Você precisa estar online para emparelhar dispositivos.", + "online-requirement-public-room": "Você precisa estar online para criar uma sala pública.", + "connecting": "Conectando…", + "files-incorrect": "Os arquivos estão incorretos.", + "file-transfer-completed": "Transferência de arquivo concluída.", + "ios-memory-limit": "Enviar arquivos para iOS só é possível até 200 MB de uma vez", + "message-transfer-completed": "Transferência de mensagem concluída.", + "unfinished-transfers-warning": "Há transferências inacabadas. Tem certeza de que deseja fechar o PairDrop?", + "rate-limit-join-key": "Limite de taxa atingido. Aguarde 10 segundos e tente novamente.", + "selected-peer-left": "Par selecionado saiu." + }, + "document-titles": { + "file-received": "Arquivo recebido", + "file-received-plural": "{{count}} Arquivos recebidos", + "file-transfer-requested": "Transferência de arquivo solicitada", + "image-transfer-requested": "Transferência de imagem solicitada", + "message-received": "Mensagem recebida", + "message-received-plural": "{{count}} mensagens recebidas" + }, + "peer-ui": { + "click-to-send-paste-mode": "Clique para enviar {{descriptor}}", + "click-to-send": "Clique para enviar arquivos ou clique com o botão direito para enviar uma mensagem", + "connection-hash": "Para verificar a segurança da criptografia de ponta a ponta, compare este número de segurança em ambos os dispositivos", + "preparing": "Preparando…", + "waiting": "Aguardando…", + "processing": "Processando…", + "transferring": "Transferindo…" + } +} \ No newline at end of file diff --git a/public_included_ws_fallback/scripts/localization.js b/public_included_ws_fallback/scripts/localization.js index d8390c1..5c37728 100644 --- a/public_included_ws_fallback/scripts/localization.js +++ b/public_included_ws_fallback/scripts/localization.js @@ -1,7 +1,7 @@ class Localization { constructor() { Localization.defaultLocale = "en"; - Localization.supportedLocales = ["ar", "de", "en", "es", "fr", "id", "it", "ja", "nb", "nl", "ro", "ru", "tr", "zh-CN"]; + Localization.supportedLocales = ["ar", "de", "en", "es", "fr", "id", "it", "ja", "nb", "nl", "ro", "ru", "tr", "zh-CN","pt-BR"]; Localization.supportedLocalesRTL = ["ar"]; Localization.translations = {};