chore: Enable Thai language (th), update translations (#5095)

This commit is contained in:
Sojan Jose
2022-07-26 06:22:59 +02:00
committed by GitHub
parent ffec427513
commit 885fcf667c
170 changed files with 5601 additions and 243 deletions

View File

@@ -35,7 +35,8 @@ LANGUAGES_CONFIG = {
30 => { name: '中文 (zh-CN)', iso_639_3_code: 'zho', iso_639_1_code: 'zh_CN', enabled: true },
31 => { name: 'język polski (pl)', iso_639_3_code: 'pol', iso_639_1_code: 'pl', enabled: true },
32 => { name: 'slovenčina (sk)', iso_639_3_code: 'slk', iso_639_1_code: 'sk', enabled: true },
33 => { name: 'украї́нська мо́ва (uk)', iso_639_3_code: 'ukr', iso_639_1_code: 'uk', enabled: true }
33 => { name: 'украї́нська мо́ва (uk)', iso_639_3_code: 'ukr', iso_639_1_code: 'uk', enabled: true },
34 => { name: 'ภาษาไทย (th)', iso_639_3_code: 'tha', iso_639_1_code: 'th', enabled: true }
}.filter { |_key, val| val[:enabled] }.freeze
Rails.configuration.i18n.available_locales = LANGUAGES_CONFIG.map { |_index, lang| lang[:iso_639_1_code].to_sym }

View File

@@ -23,7 +23,7 @@ ar:
reset_password_failure: أوه! لم نتمكن من العثور على أي مستخدم بعنوان البريد الإلكتروني المحدد.
errors:
validations:
presence: must not be blank
presence: يجب ألا يكون فارغاً
webhook:
invalid: أحداث غير صالحة
signup:
@@ -33,17 +33,17 @@ ar:
failed: فشلت عملية التسجيل
data_import:
data_type:
invalid: Invalid data type
invalid: نوع البيانات غير صالح
contacts:
import:
failed: الملف فارغ
email:
invalid: Invalid email
invalid: إيميل غير صالح
phone_number:
invalid: should be in e164 format
invalid: يجب أن يكون بصيغة e164
categories:
locale:
unique: should be unique in the category and portal
unique: يجب أن تكون فريدة من نوعها في الفئة والبوابة
inboxes:
imap:
socket_error: الرجاء التحقق من اتصال الشبكة، عنوان IMAP وحاول مرة أخرى.

View File

@@ -23,7 +23,7 @@ de:
reset_password_failure: Uh ho! Wir konnten keinen Benutzer mit der angegebenen E-Mail-Adresse finden.
errors:
validations:
presence: must not be blank
presence: darf nicht leer sein
webhook:
invalid: Ungültige Events
signup:
@@ -33,17 +33,17 @@ de:
failed: Anmeldung gescheitert
data_import:
data_type:
invalid: Invalid data type
invalid: Ungültiger Datentyp
contacts:
import:
failed: Datei ist leer
email:
invalid: Invalid email
invalid: Ungültige E-Mail
phone_number:
invalid: should be in e164 format
invalid: sollte im e164-Format vorliegen
categories:
locale:
unique: should be unique in the category and portal
unique: sollte in der Kategorie und im Portal eindeutig sein
inboxes:
imap:
socket_error: Bitte überprüfen Sie die Netzwerkverbindung, die IMAP-Adresse und versuchen Sie es erneut.

View File

@@ -0,0 +1,61 @@
#Additional translations at https://github.com/plataformatec/devise/wiki/I18n
ka:
devise:
confirmations:
confirmed: "Your email address has been successfully confirmed."
send_instructions: "You will receive an email with instructions for how to confirm your email address in a few minutes."
send_paranoid_instructions: "If your email address exists in our database, you will receive an email with instructions for how to confirm your email address in a few minutes."
failure:
already_authenticated: "You are already signed in."
inactive: "Your account is not activated yet."
invalid: "Invalid %{authentication_keys}/password or account is not verified yet."
locked: "Your account is locked."
last_attempt: "You have one more attempt before your account is locked."
not_found_in_database: "Invalid %{authentication_keys} or password."
timeout: "Your session expired. Please sign in again to continue."
unauthenticated: "You need to sign in or sign up before continuing."
unconfirmed: "You have to confirm your email address before continuing."
mailer:
confirmation_instructions:
subject: "Confirmation Instructions"
reset_password_instructions:
subject: "Reset password instructions"
unlock_instructions:
subject: "Unlock instructions"
password_change:
subject: "Password Changed"
omniauth_callbacks:
failure: "Could not authenticate you from %{kind} because \"%{reason}\"."
success: "Successfully authenticated from %{kind} account."
passwords:
no_token: "You can't access this page without coming from a password reset email. If you do come from a password reset email, please make sure you used the full URL provided."
send_instructions: "You will receive an email with instructions on how to reset your password in a few minutes."
send_paranoid_instructions: "If your email address exists in our database, you will receive a password recovery link at your email address in a few minutes."
updated: "Your password has been changed successfully. You are now signed in."
updated_not_active: "Your password has been changed successfully."
registrations:
destroyed: "Bye! Your account has been successfully cancelled. We hope to see you again soon."
signed_up: "Welcome! You have signed up successfully."
signed_up_but_inactive: "You have signed up successfully. However, we could not sign you in because your account is not yet activated."
signed_up_but_locked: "You have signed up successfully. However, we could not sign you in because your account is locked."
signed_up_but_unconfirmed: "A message with a confirmation link has been sent to your email address. Please follow the link to activate your account."
update_needs_confirmation: "You updated your account successfully, but we need to verify your new email address. Please check your email and follow the confirm link to confirm your new email address."
updated: "Your account has been updated successfully."
sessions:
signed_in: "Signed in successfully."
signed_out: "Signed out successfully."
already_signed_out: "Signed out successfully."
unlocks:
send_instructions: "You will receive an email with instructions for how to unlock your account in a few minutes."
send_paranoid_instructions: "If your account exists, you will receive an email with instructions for how to unlock it in a few minutes."
unlocked: "Your account has been unlocked successfully. Please sign in to continue."
errors:
messages:
already_confirmed: "was already confirmed, please try signing in"
confirmation_period_expired: "needs to be confirmed within %{period}, please request a new one"
expired: "has expired, please request a new one"
not_found: "not found"
not_locked: "was not locked"
not_saved:
one: "1 error prohibited this %{resource} from being saved:"
other: "%{count} errors prohibited this %{resource} from being saved:"

View File

@@ -96,7 +96,7 @@ fa:
conversations:
messages:
instagram_story_content: "%{story_sender} در داستان به شما اشاره کرده: "
instagram_deleted_story_content: This story is no longer available.
instagram_deleted_story_content: این داستان دیگر در دسترس نیست.
deleted: این پیام حذف شد
activity:
status:

View File

@@ -23,7 +23,7 @@ it:
reset_password_failure: Uh ho! Non siamo riusciti a trovare alcun utente con l'email specificata.
errors:
validations:
presence: must not be blank
presence: non deve essere vuoto
webhook:
invalid: Eventi non validi
signup:
@@ -33,17 +33,17 @@ it:
failed: Registrazione non riuscita
data_import:
data_type:
invalid: Invalid data type
invalid: Tipo di dato non valido
contacts:
import:
failed: Il file è vuoto
email:
invalid: Invalid email
invalid: Email non valida
phone_number:
invalid: should be in e164 format
invalid: dovrebbe essere nel formato e164
categories:
locale:
unique: should be unique in the category and portal
unique: dovrebbe essere unico nella categoria e nel portale
inboxes:
imap:
socket_error: Controlla la connessione di rete, l'indirizzo IMAP e riprova.

151
config/locales/ka.yml Normal file
View File

@@ -0,0 +1,151 @@
#Files in the config/locales directory are used for internationalization
#and are automatically loaded by Rails. If you want to use locales other
#than English, add the necessary files in this directory.
#To use the locales, use `I18n.t`:
#I18n.t 'hello'
#In views, this is aliased to just `t`:
#<%= t('hello') %>
#To use a different locale, set it with `I18n.locale`:
#I18n.locale = :es
#This would use the information in config/locales/es.yml.
#The following keys must be escaped otherwise they will not be retrieved by
#the default I18n backend:
#true, false, on, off, yes, no
#Instead, surround them with single quotes.
#en:
#'true': 'foo'
#To learn more, please read the Rails Internationalization guide
#available at https://guides.rubyonrails.org/i18n.html.
ka:
hello: "Hello world"
messages:
reset_password_success: Woot! Request for password reset is successful. Check your mail for instructions.
reset_password_failure: Uh ho! We could not find any user with the specified email.
errors:
validations:
presence: must not be blank
webhook:
invalid: Invalid events
signup:
disposable_email: We do not allow disposable emails
invalid_email: You have entered an invalid email
email_already_exists: "You have already signed up for an account with %{email}"
failed: Signup failed
data_import:
data_type:
invalid: Invalid data type
contacts:
import:
failed: File is blank
email:
invalid: Invalid email
phone_number:
invalid: should be in e164 format
categories:
locale:
unique: should be unique in the category and portal
inboxes:
imap:
socket_error: Please check the network connection, IMAP address and try again.
no_response_error: Please check the IMAP credentials and try again.
host_unreachable_error: Host unreachable, Please check the IMAP address, IMAP port and try again.
connection_timed_out_error: Connection timed out for %{address}:%{port}
connection_closed_error: Connection closed.
validations:
name: should not start or end with symbols, and it should not have < > / \ @ characters.
reports:
period: Reporting period %{since} to %{until}
agent_csv:
agent_name: Agent name
conversations_count: Conversations count
avg_first_response_time: Avg first response time (Minutes)
avg_resolution_time: Avg resolution time (Minutes)
inbox_csv:
inbox_name: Inbox name
inbox_type: Inbox type
conversations_count: No. of conversations
avg_first_response_time: Avg first response time (Minutes)
avg_resolution_time: Avg resolution time (Minutes)
label_csv:
label_title: Label
conversations_count: No. of conversations
avg_first_response_time: Avg first response time (Minutes)
avg_resolution_time: Avg resolution time (Minutes)
team_csv:
team_name: Team name
conversations_count: Conversations count
avg_first_response_time: Avg first response time (Minutes)
avg_resolution_time: Avg resolution time (Minutes)
default_group_by: day
csat:
headers:
contact_name: Contact Name
contact_email_address: Contact Email Address
contact_phone_number: Contact Phone Number
link_to_the_conversation: Link to the conversation
agent_name: Agent Name
rating: Rating
feedback: Feedback Comment
recorded_at: Recorded date
notifications:
notification_title:
conversation_creation: "[New conversation] - #%{display_id} has been created in %{inbox_name}"
conversation_assignment: "[Assigned to you] - #%{display_id} has been assigned to you"
assigned_conversation_new_message: "[New message] - #%{display_id} %{content}"
conversation_mention: "You have been mentioned in conversation [ID - %{display_id}] by %{name}"
conversations:
messages:
instagram_story_content: "%{story_sender} mentioned you in the story: "
instagram_deleted_story_content: This story is no longer available.
deleted: This message was deleted
activity:
status:
resolved: "Conversation was marked resolved by %{user_name}"
contact_resolved: "Conversation was resolved by %{contact_name}"
open: "Conversation was reopened by %{user_name}"
pending: "Conversation was marked as pending by %{user_name}"
snoozed: "Conversation was snoozed by %{user_name}"
auto_resolved: "Conversation was marked resolved by system due to %{duration} days of inactivity"
assignee:
self_assigned: "%{user_name} self-assigned this conversation"
assigned: "Assigned to %{assignee_name} by %{user_name}"
removed: "Conversation unassigned by %{user_name}"
team:
assigned: "Assigned to %{team_name} by %{user_name}"
assigned_with_assignee: "Assigned to %{assignee_name} via %{team_name} by %{user_name}"
removed: "Unassigned from %{team_name} by %{user_name}"
labels:
added: "%{user_name} added %{labels}"
removed: "%{user_name} removed %{labels}"
muted: "%{user_name} has muted the conversation"
unmuted: "%{user_name} has unmuted the conversation"
templates:
greeting_message_body: "%{account_name} typically replies in a few hours."
ways_to_reach_you_message_body: "Give the team a way to reach you."
email_input_box_message_body: "Get notified by email"
csat_input_message_body: "Please rate the conversation"
reply:
email:
header:
from_with_name: '%{assignee_name} from %{inbox_name} <%{from_email}>'
reply_with_name: '%{assignee_name} from %{inbox_name} <reply+%{reply_email}>'
email_subject: "New messages on this conversation"
transcript_subject: "Conversation Transcript"
survey:
response: "Please rate this conversation, %{link}"
contacts:
online:
delete: "%{contact_name} is Online, please try again later"
integration_apps:
slack:
name: "Slack"
description: "Slack is a chat tool that brings all your communication together in one place. By integrating Slack, you can get notified of all the new conversations in your account right inside your Slack."
webhooks:
name: "Webhooks"
description: "Webhook events provide you the realtime information about what's happening in your account. You can make use of the webhooks to communicate the events to your favourite apps like Slack or Github. Click on Configure to set up your webhooks."
dialogflow:
name: "Dialogflow"
description: "Build chatbots using Dialogflow and connect them to your inbox quickly. Let the bots handle the queries before handing them off to a customer service agent."
fullcontact:
name: "Fullcontact"
description: "FullContact integration helps to enrich visitor profiles. Identify the users as soon as they share their email address and offer them tailored customer service. Connect your FullContact to your account by sharing the FullContact API Key."

View File

@@ -23,7 +23,7 @@ pt_BR:
reset_password_failure: Uh ho! Não conseguimos encontrar nenhum usuário com o e-mail especificado.
errors:
validations:
presence: must not be blank
presence: não pode ficar em branco
webhook:
invalid: Eventos inválidos
signup:
@@ -33,17 +33,17 @@ pt_BR:
failed: Registro falhou
data_import:
data_type:
invalid: Invalid data type
invalid: Tipo de dado inválido
contacts:
import:
failed: Arquivo vazio
email:
invalid: Invalid email
invalid: E-mail inválido
phone_number:
invalid: should be in e164 format
invalid: deve estar no formato e164
categories:
locale:
unique: should be unique in the category and portal
unique: deve ser único na categoria e no portal
inboxes:
imap:
socket_error: Por favor, verifique a conexão de rede, endereço de IMAP e tente novamente.

View File

@@ -33,7 +33,7 @@ uk:
failed: Помилка реєстрації
data_import:
data_type:
invalid: Invalid data type
invalid: Некоректний тип даних
contacts:
import:
failed: Файл порожній
@@ -48,7 +48,7 @@ uk:
imap:
socket_error: Перевірте підключення до мережі, адреса IMAP і повторіть спробу.
no_response_error: Будь ласка, перевірте облікові дані IMAP і повторіть спробу.
host_unreachable_error: Хост недоступний. Будь-ласка, перевірте адресу IMAP, порт IMAP і повторіть спробу.
host_unreachable_error: Хост недоступний. Будь ласка, перевірте адресу IMAP, порт IMAP і повторіть спробу.
connection_timed_out_error: Вичерпано час очікування з'єднання для %{address}:%{port}
connection_closed_error: З'єднання закрито.
validations: