From e8f1a694c6e7425a99cac0578910345b5ddc460e Mon Sep 17 00:00:00 2001 From: Vitor Luis Date: Mon, 18 Mar 2019 20:09:40 +0100 Subject: [PATCH] I18n: Add Portuguese (Portugal) (#722) --- app/i18n/index.js | 3 +- app/i18n/locales/pt-PT.js | 358 ++++++++++++++++++++++++++++++++ app/views/SettingsView/index.js | 5 +- 3 files changed, 364 insertions(+), 2 deletions(-) create mode 100644 app/i18n/locales/pt-PT.js diff --git a/app/i18n/index.js b/app/i18n/index.js index 16aae6d33..f6521862e 100644 --- a/app/i18n/index.js +++ b/app/i18n/index.js @@ -5,12 +5,13 @@ import fr from './locales/fr'; import de from './locales/de'; import ptBR from './locales/pt-BR'; import zhCN from './locales/zh-CN'; +import ptPT from './locales/pt-PT'; I18n.fallbacks = true; I18n.defaultLocale = 'en'; I18n.translations = { - en, ru, 'pt-BR': ptBR, 'zh-CN': zhCN, fr, de + en, ru, 'pt-BR': ptBR, 'zh-CN': zhCN, fr, de, 'pt-PT': ptPT }; export default I18n; diff --git a/app/i18n/locales/pt-PT.js b/app/i18n/locales/pt-PT.js new file mode 100644 index 000000000..90ce5510c --- /dev/null +++ b/app/i18n/locales/pt-PT.js @@ -0,0 +1,358 @@ +export default { + '1_person_reacted': '1 pessoa reagiu', + '1_user': '1 utilizador', + 'error-action-not-allowed': '{{action}} não é permitida', + 'error-application-not-found': 'Aplicação não encontrada', + 'error-archived-duplicate-name': 'Existe um canal arquivado com o nome {{room_name}}', + 'error-avatar-invalid-url': 'URL de avatar inválido: {{url}}', + 'error-avatar-url-handling': 'Erro ao manipular a configuração de avatar de um URL ({{url}}) para {{username}}', + 'error-cant-invite-for-direct-room': 'Não pode convidar utilizadores para salas de mensagens directas', + 'error-could-not-change-email': 'Não foi possível alterar o e-mail', + 'error-could-not-change-name': 'Não foi possível alterar o nome', + 'error-could-not-change-username': 'Não foi possível alterar o nome de utilizador', + 'error-delete-protected-role': 'Não é possível eliminar uma função protegida', + 'error-department-not-found': 'Departamento não encontrado', + 'error-direct-message-file-upload-not-allowed': 'Partilha de ficheiros não permitido em mensagens diretas', + 'error-duplicate-channel-name': 'Um canal com o nome {{channel_name}} existe', + 'error-email-domain-blacklisted': 'O domínio de e-mail está na lista negra', + 'error-email-send-failed': 'Erro ao tentar enviar e-mail: {{message}}', + 'error-field-unavailable': '{{field}} já está em uso :(', + 'error-file-too-large': 'Ficheiro demasiado grande', + 'error-importer-not-defined': 'O importador não foi definido correctamente, a classe Import está em falta.', + 'error-input-is-not-a-valid-field': '{{input}} não é um {{field}} válido', + 'error-invalid-actionlink': 'Link de acção inválido', + 'error-invalid-arguments': 'Argumentos inválidos', + 'error-invalid-asset': 'Ficheiro inválida', + 'error-invalid-channel': 'Canal inválido.', + 'error-invalid-channel-start-with-chars': 'Canal inválido. Começa por @ ou #', + 'error-invalid-custom-field': 'Campo personalizado inválido', + 'error-invalid-custom-field-name': 'Nome de campo personalizado inválido. Use apenas letras, números, hífens e sublinhados.', + 'error-invalid-date': 'Data inválida fornecida.', + 'error-invalid-description': 'Descrição inválida', + 'error-invalid-domain': 'Domínio inválido', + 'error-invalid-email': 'E-mail inválido {{emai}}', + 'error-invalid-email-address': 'Endereço de e-mail invalido', + 'error-invalid-file-height': 'Altura de ficheiro inválida', + 'error-invalid-file-type': 'Tipo de ficheiro inválido', + 'error-invalid-file-width': 'Largura de ficheiro inválida', + 'error-invalid-from-address': 'Você informou um endereço DE inválido.', + 'error-invalid-integration': 'Integração inválida', + 'error-invalid-message': 'Mensagem inválida', + 'error-invalid-method': 'Método inválido', + 'error-invalid-name': 'Nome inválido', + 'error-invalid-password': 'Palavra-passe inválida', + 'error-invalid-redirectUri': 'redirectUri inválido', + 'error-invalid-role': 'Função inválido', + 'error-invalid-room': 'Sala inválida', + 'error-invalid-room-name': '{{room_name}} não é um nome de sala válido', + 'error-invalid-room-type': '{{type}} não é um tipo de sala válido.', + 'error-invalid-settings': 'Configurações inválidas fornecidas', + 'error-invalid-subscription': 'Subscrição inválida', + 'error-invalid-token': 'Token inválido', + 'error-invalid-triggerWords': 'triggerWords inválido', + 'error-invalid-urls': 'URLs inválidos', + 'error-invalid-user': 'Utilizador inválido', + 'error-invalid-username': 'Nome de utilizador inválido', + 'error-invalid-webhook-response': 'O URL do webhook respondeu com um estado diferente de 200', + 'error-message-deleting-blocked': 'A remoção de mensagens está bloqueada', + 'error-message-editing-blocked': 'A edição de mensagens está bloqueada', + 'error-message-size-exceeded': 'O tamanho da mensagem excede Message_MaxAllowedSize', + 'error-missing-unsubscribe-link': 'Você deve fornecer o link para cancelar a subscrição: [unsubscribe].', + 'error-no-tokens-for-this-user': 'Não há tokens para este utilizador', + 'error-not-allowed': 'Não permitido', + 'error-not-authorized': 'Não autorizado', + 'error-push-disabled': 'Push está desactivado', + 'error-remove-last-owner': 'Este é o último proprietário. Por favor, defina um novo proprietário antes de remover este.', + 'error-role-in-use': 'Não é possível remover função porque está em uso', + 'error-role-name-required': 'Nome da função requerido', + 'error-the-field-is-required': 'O campo {{field}} é obrigatório.', + 'error-too-many-requests': 'Erro, demasiados pedidos. Por favor, diminua a velocidade. Você deve esperar {{seconds}} segundos antes de tentar novamente.', + 'error-user-is-not-activated': 'O utilizador não está activado', + 'error-user-has-no-roles': 'O utilizador não tem funções', + 'error-user-limit-exceeded': 'O número de utilizadores que você está a tentar convidar para #channel_name excede o limite definido pelo administrador', + 'error-user-not-in-room': 'O utilizador não está nesta sala', + 'error-user-registration-custom-field': 'error-user-registration-custom-field', + 'error-user-registration-disabled': 'O registo de utilizadores está desactivado', + 'error-user-registration-secret': 'O registo de utilizadores só é permitido por meio de um URL secreto', + 'error-you-are-last-owner': 'Você é o último proprietário. Por favor, defina novo proprietário antes de sair da sala.', + Actions: 'Acções', + activity: 'actividade', + Activity: 'Actividade', + Add_Reaction: 'Adicionar Reacção', + Add_Server: 'Adicionar Servidor', + Add_user: 'Adicionar utilizador', + Alert: 'Alerta', + alert: 'alerta', + alerts: 'alertas', + All_users_in_the_channel_can_write_new_messages: 'Todos os utilizadores no canal podem escrever novas mensagens', + All: 'Todos', + Allow_Reactions: 'Permitir Reacções', + Alphabetical: 'Alfabética', + and_more: 'e mais', + and: 'e', + announcement: 'anúncio', + Announcement: 'Anúncio', + ARCHIVE: 'ARQUIVAR', + archive: 'arquivar', + are_typing: 'estão a escrever', + Are_you_sure_question_mark: 'Tem a certeza?', + Are_you_sure_you_want_to_leave_the_room: 'Tem certeza de que quer sair da sala {{room}}?', + Authenticating: 'Autenticando', + Avatar_changed_successfully: 'Avatar alterado com sucesso!', + Avatar_Url: 'URL do Avatar', + Away: 'Ausente', + Block_user: 'Bloquear utilizador', + Broadcast_channel_Description: 'Apenas utilizadores autorizados podem escrever novas mensagens, mas os outros utilizadores poderão responder', + Broadcast_Channel: 'Canal de Transmissão', + Busy: 'Ocupado', + By_proceeding_you_are_agreeing: 'Ao prosseguir você concorda com o(s) nosso(s)', + Cancel_editing: 'Cancelar edição', + Cancel_recording: 'Cancelar gravação', + Cancel: 'Cancelar', + changing_avatar: 'a alterar avatar', + creating_channel: 'a criar canal', + Channel_Name: 'Nome do Canal', + Channels: 'Canais', + Chats: 'Chats', + Close: 'Fechar', + Close_emoji_selector: 'Fechar selector de emoticons', + Choose: 'Escolher', + Choose_from_library: 'Escolher da biblioteca', + Code: 'Código', + Collaborative: 'Colaborativa', + Confirm: 'Confirmar', + Connect: 'Ligar', + Connect_to_a_server: 'Ligue-se a um servidor', + Connected: 'Ligado', + Connecting: 'A ligar...', + Continue_with: 'Continuar com', + Copied_to_clipboard: 'Copiado para a área de transferência!', + Copy: 'Copiar', + Permalink: 'Link permanente', + Create_account: 'Criar uma conta', + Create_Channel: 'Criar Canal', + Created_snippet: 'Criado um extracto', + Create_a_new_workspace: 'Criar um novo espaço de trabalho', + Create: 'Criar', + Delete_Room_Warning: 'Apagar uma sala irá remover todas as mensagens contidas nela. Isto não pode ser desfeito.', + delete: 'apagar', + Delete: 'Apagar', + DELETE: 'APAGAR', + description: 'descrição', + Description: 'Descrição', + Disable_notifications: 'Desactivar notificações', + Direct_Messages: 'Mensagens Directas', + Dont_Have_An_Account: 'Não tem uma conta?', + Do_you_really_want_to_key_this_room_question_mark: 'Você quer mesmo {{key}} esta sala?', + edit: 'editar', + erasing_room: 'apagando sala', + Edit: 'Editar', + Email_or_password_field_is_empty: 'O campo de e-mail ou palavra-passe está vazio', + Email: 'E-mail', + email: 'e-mail', + Enable_notifications: 'Activar notificações', + Everyone_can_access_this_channel: 'Todos podem aceder a este canal', + Error_uploading: 'Erro ao fazer o envio', + Favorites: 'Favoritos', + Files: 'Ficheiros', + File_description: 'Descrição do ficheiro', + File_name: 'Nome do ficheiro', + Finish_recording: 'Terminar a gravação', + For_your_security_you_must_enter_your_current_password_to_continue: 'Para sua segurança, você deve escrever a sua palavra-passe actual para continuar', + Forgot_my_password: 'Esqueci minha palavra-passe', + Forgot_password_If_this_email_is_registered: 'Se este e-mail estiver registado, enviaremos instruções sobre como repor a sua palavra-passe. Se você não receber um e-mail em breve, volte e tente novamente.', + Forgot_password: 'Esquecer palavra-passe', + Forgot_Password: 'Esquecer Palavra-passe', + Group_by_favorites: 'Agrupar por favoritos', + Group_by_type: 'Agrupar por tipo', + Has_joined_the_channel: 'Entrou no canal', + Has_left_the_channel: 'Saiu do canal', + Invisible: 'Invisível', + Invite: 'Convidar', + is_a_valid_RocketChat_instance: 'é uma instância válida do Rocket.Chat', + is_not_a_valid_RocketChat_instance: 'is not a valid Rocket.Chat instance', + is_typing: 'está a escrever', + Invalid_server_version: 'O servidor ao qual esta tentando ligar-se, utiliza uma versão que não é suporta pela aplicação: {{currentVersion}}.\n\nA versão mínima requerida é {{minVersion}}', + Join_the_community: 'Junte-se à comunidade', + Join: 'Entrar', + Just_invited_people_can_access_this_channel: 'Apenas utilizadores convidados podem aceder a este canal', + Language: 'Idioma', + last_message: 'última mensagem', + Leave_channel: 'Sair do canal', + leaving_room: 'a sair da sala', + leave: 'sair', + Legal: 'Legal', + Livechat: 'Livechat', + Login: 'Entrar', + Login_error: 'As suas credenciais foram rejeitadas! Por favor, tente novamente.', + Login_with: 'Entrar com', + Logout: 'Sair', + members: 'membros', + Members: 'Membros', + Mentioned_Messages: 'Mensagens Mencionadas', + mentioned: 'mencionado', + Mentions: 'Menções', + Message_accessibility: 'Mensagem de {{user}} às {{time}}: {{message}}', + Message_actions: 'Acções de mensagem', + Message_pinned: 'Mensagem afixada', + Message_removed: 'Mensagem removida', + Messages: 'Mensagens', + Microphone_Permission_Message: 'O Rocket Chat necessita de acesso ao seu microfone para que você possa enviar mensagens de áudio.', + Microphone_Permission: 'Permissão de Microfone', + Mute: 'Silenciar', + muted: 'silenciado', + My_servers: 'Meus servidores', + N_people_reacted: '{{n}} pessoas reagiram', + N_users: '{{n}} utilizadores', + name: 'nome', + Name: 'Nome', + New_Message: 'Nova Mensagem', + New_Password: 'Nova Palavra-passe', + New_Server: 'Novo Servidor', + Next: 'Próximo', + No_files: 'Nenhum ficheiro', + No_mentioned_messages: 'Nenhuma mensagem mencionada', + No_pinned_messages: 'Nenhuma mensagem afixada', + No_results_found: 'Nenhum resultado encontrado', + No_starred_messages: 'Nenhuma mensagem marcada com estrela', + No_announcement_provided: 'Nenhum anúncio fornecido.', + No_description_provided: 'Nenhuma descrição fornecida.', + No_topic_provided: 'Nenhum tópico fornecido.', + No_Message: 'Nenhuma mensagem', + No_Reactions: 'Nenhuma reação', + Not_logged: 'Não ligado', + Nothing_to_save: 'Nada para guardar!', + Notify_active_in_this_room: 'Notifica utilizadores activos nesta sala', + Notify_all_in_this_room: 'Notifica todos os utilizadores nesta sala', + Offline: 'Desligado', + Oops: 'Oops!', + Online: 'Ligado', + Only_authorized_users_can_write_new_messages: 'Apenas utilizadores autorizados podem escrever novas mensagens', + Open_emoji_selector: 'Abra o selector de emoticons', + Open_Source_Communication: 'Comunicação Open Source', + Password: 'Palavra-passe', + Permalink_copied_to_clipboard: 'Link permanente copiado para a área de transferência!', + Pin: 'Afixar', + Pinned_Messages: 'Mensagens Afixadas', + pinned: 'afixada', + Pinned: 'Afixada', + Please_enter_your_password: 'Por favor, introduza a sua palavra-passe', + Preferences_saved: 'Preferências guardadas!', + Privacy_Policy: ' Política de Privacidade', + Private_Channel: 'Canal Privado', + Private_Groups: 'Grupos Privados', + Private: 'Privado', + Profile_saved_successfully: 'Perfil actualizado com sucesso!', + Profile: 'Perfil', + Public_Channel: 'Canal Público', + Public: 'Público', + Quote: 'Citar', + Reactions_are_disabled: 'Reacções desactivadas', + Reactions_are_enabled: 'Reacções activadas', + Reactions: 'Reacções', + Read_Only_Channel: 'Canal só de leitura', + Read_Only: 'Só de Leitura', + Register: 'Registar', + Repeat_Password: 'Repita a palavra-passe', + Reply: 'Responder', + Resend: 'Reenviar', + Reset_password: 'Repor palavra-passe', + resetting_password: 'a repor palavra-passe', + RESET: 'REPOR', + Roles: 'Funções', + Room_actions: 'Ações de sala', + Room_changed_announcement: 'Anúncio da sala alterado para: {{announcement}} por {{userBy}}', + Room_changed_description: 'Descrição da sala alterada para: {{description}} por {{userBy}}', + Room_changed_privacy: 'Tipo de sala alterado para: {{type}} por {{userBy}}', + Room_changed_topic: 'Tópico da sala alterado para: {{topic}} por {{userBy}}', + Room_Files: 'Fiheiros da Sala', + Room_Info_Edit: 'Editar Informação da Sala', + Room_Info: 'Informação da Sala', + Room_Members: 'Membros da Sala', + Room_name_changed: 'Nome da sala alterado para: {{name}} por {{userBy}}', + SAVE: 'GUARDAR', + Save_Changes: 'Guardar Alterações', + Save: 'Guardar', + saving_preferences: 'a guardar preferências', + saving_profile: 'a guardar perfil', + saving_settings: 'a guardar configurações', + Search_Messages: 'Pesquisar Mensagens', + Search: 'Pesquisar', + Select_Avatar: 'Seleccionar Avatar', + Select_Users: 'Seleccionar Utilizadores', + Send: 'Enviar', + Send_audio_message: 'Enviar mensagem de áudio', + Send_message: 'Enviar mensagem', + Server: 'Servidor', + Servers: 'Servidores', + Set_username_subtitle: 'O nome de utilizador é usado para permitir que outros mencionem você em mensagens', + Settings: 'Definições', + Settings_succesfully_changed: 'Definições guardadas com sucesso!', + Share: 'Partilhar', + Sign_in_your_server: 'Entre no seu servidor', + Sign_Up: 'Inscreva-se', + Some_field_is_invalid_or_empty: 'Algum campo é inválido ou está vazio', + Sorting_by: 'Ordenar por {{key}}', + Star_room: 'Marcar como favorito', + Star: 'Dar estrela', + Starred_Messages: 'Mensagens com estrela', + starred: 'deu uma estrela', + Starred: 'Deu uma estrela', + Start_of_conversation: 'Início da conversa', + Submit: 'Enviar', + Take_a_photo: 'Tirar uma foto', + tap_to_change_status: 'toque para alterar o estado', + Tap_to_view_servers_list: 'Toque para ver a lista de servidores', + Terms_of_Service: ' Termos do Serviço ', + The_URL_is_invalid: 'O URL que você inseriu é inválido. Verifique e tente novamente, por favor!', + There_was_an_error_while_action: 'Houve um erro enquanto {{action}}!', + This_room_is_blocked: 'Esta sala está bloqueada', + This_room_is_read_only: 'Esta sala é apenas de leitura', + Timezone: 'Fuso Horário', + Toggle_Drawer: 'Toggle_Drawer', + topic: 'tópico', + Topic: 'Tópico', + Try_again: 'Tente novamente', + Two_Factor_Authentication: 'Autenticação 2FA', + Type_the_channel_name_here: 'Escreva o nome do canal aqui', + unarchive: 'desarquivar', + UNARCHIVE: 'DESARQUIVAR', + Unblock_user: 'Desbloquear utilizador', + Unmute: 'Retirar silêncio', + unmuted: 'silêncio removido', + Unpin: 'Desafixar', + unread_messages: 'não lidas', + Unread: 'Não lidas', + Unread_on_top: 'Não lidas no topo', + Unstar: 'Retirar estrela', + Updating: 'A actualizar...', + Uploading: 'A enviar', + Upload_file_question_mark: 'Enviar ficheiro?', + User_added_by: 'Utilizador {{userAdded}} adicionado por {{userBy}}', + User_has_been_key: 'Utilizador foi {{key}}!', + User_is_no_longer_role_by_: '{{userBy}} removeu o estatuto de {{role}} de {{user}}', + User_muted_by: 'Utilizador {{userMuted}} foi silenciado por {{userBy}}', + User_removed_by: 'Utilizador {{userRemoved}} removido por {{userBy}}', + User_sent_an_attachment: '{{user}} enviou um ficheiro', + User_unmuted_by: '{{userBy}} retirou o silêncio a {{userUnmuted}}', + User_was_set_role_by_: '{{userBy}} deu estatuto de {{role}} a {{user}}', + Username_is_empty: 'O nome de utilizador está vazio', + Username: 'Nome de utilizador', + Username_or_email: 'Nome de utilizador ou e-mail', + Validating: 'A validar', + Video_call: 'Video chamada', + Voice_call: 'Chamada de voz', + Welcome: 'Bem vindo(a)', + Welcome_to_RocketChat: 'Bem vindo(a) ao Rocket.Chat', + Whats_your_2fa: 'Qual é o seu código 2FA?', + Yes_action_it: 'Sim, {{action}}!', + Yesterday: 'Ontem', + You_are_in_preview_mode: 'Você está no modo de pré-visualização', + You_are_offline: 'Você está desligado', + You_can_search_using_RegExp_eg: 'Você pode pesquisar usando RegEx. por exemplo, `/^text$/i`', + You_colon: 'Você: ', + you_were_mentioned: 'você foi mencionado', + you: 'você', + You: 'Você', + You_will_not_be_able_to_recover_this_message: 'Você será incapaz de recuperar esta mensagem!' +}; diff --git a/app/views/SettingsView/index.js b/app/views/SettingsView/index.js index 514c8f3f6..75c853f11 100644 --- a/app/views/SettingsView/index.js +++ b/app/views/SettingsView/index.js @@ -47,7 +47,7 @@ export default class SettingsView extends LoggedView { label: 'English', value: 'en' }, { - label: 'Português', + label: 'Português (BR)', value: 'pt-BR' }, { label: 'Russian', @@ -61,6 +61,9 @@ export default class SettingsView extends LoggedView { }, { label: 'Deutsch', value: 'de' + }, { + label: 'Português (PT)', + value: 'pt-PT' }], saving: false };