From 51091f05f04109104bc9f34477ef1c7ede5286e8 Mon Sep 17 00:00:00 2001 From: Alex Turchyn Date: Thu, 24 Apr 2025 18:57:50 +0300 Subject: [PATCH] add Japanese language to the signing form --- app/javascript/submission_form/i18n.js | 123 +++++++++++++++++++++++-- config/application.rb | 3 +- config/locales/i18n.yml | 91 +++++++++++++++++- 3 files changed, 209 insertions(+), 8 deletions(-) diff --git a/app/javascript/submission_form/i18n.js b/app/javascript/submission_form/i18n.js index 252058e7..e47b4525 100644 --- a/app/javascript/submission_form/i18n.js +++ b/app/javascript/submission_form/i18n.js @@ -148,6 +148,7 @@ const es = { sign_now: 'Firmar ahora', type_here_: 'Escribe aquí...', optional: 'opcional', + option: 'Opción', appears_on: 'Aparece en', page: 'Página', select_your_option: 'Selecciona tu opción', @@ -245,6 +246,7 @@ const it = { sign_now: 'Firma ora', type_here_: 'Digita qui...', optional: 'opzionale', + option: 'Opzione', appears_on: 'Compare su', page: 'Pagina', take_photo: 'Scattare una foto', @@ -265,7 +267,7 @@ const it = { document_has_been_signed: 'Il documento è stato firmato!', documents_have_been_signed: 'I documenti sono stati firmati!', create_a_free_account: 'Crea un Account Gratuito', - powered_by: 'Desarrollado por', + powered_by: 'Fornito da', please_check_the_box_to_continue: 'Si prega di spuntare la casella per continuare.', open_source_documents_software: 'software di documenti open source', verified_phone_number: 'Verifica numero di telefono', @@ -343,6 +345,7 @@ const de = { sign_now: 'Jetzt unterschreiben', type_here_: 'Hier eingeben...', optional: 'optional', + option: 'Option', appears_on: 'Erscheint auf', page: 'Seite', take_photo: 'Foto aufnehmen', @@ -393,8 +396,8 @@ const de = { const fr = { complete_all_required_fields_to_proceed_with_identity_verification: "Veuillez remplir tous les champs obligatoires pour continuer la vérification de l'identité.", - verif_id: "Vérification de l'ID", - verif_identite: "Vérification de l'identité", + verify_id: "Vérification de l'ID", + identity_verification: "Vérification de l'identité", complete: 'Terminer', fill_all_required_fields_to_complete: 'Veuillez remplir tous les champs obligatoires pour compléter', sign_and_complete: 'Signer et Terminer', @@ -441,6 +444,7 @@ const fr = { sign_now: 'Signer maintenant', type_here_: 'Tapez ici...', optional: 'facultatif', + option: 'Option', appears_on: 'Apparaît sur', page: 'Page', take_photo: 'Prendre une photo', @@ -539,6 +543,7 @@ const pl = { sign_now: 'Podpisz teraz', type_here_: 'Wpisz tutaj...', optional: 'opcjonalny', + option: 'Opcja', appears_on: 'Pojawia się na', page: 'Strona', select_your_option: 'Wybierz swoją opcję', @@ -583,7 +588,8 @@ const pl = { reupload: 'Ponowne przesłanie', upload: 'Przesyłanie', files: 'Pliki', - signature_is_too_small_or_simple_please_redraw: 'Podpis jest zbyt mały lub zbyt prosty. Proszę narysować go ponownie.' + signature_is_too_small_or_simple_please_redraw: 'Podpis jest zbyt mały lub zbyt prosty. Proszę narysować go ponownie.', + wait_countdown_seconds: 'Poczekaj {countdown} sekund' } const uk = { @@ -636,6 +642,7 @@ const uk = { sign_now: 'Підписати зараз', type_here_: 'Введіть тут', optional: 'необов’язково', + option: 'Опція', appears_on: "З'являється на", page: 'Сторінка', take_photo: 'Зробити фото', @@ -658,7 +665,7 @@ const uk = { create_a_free_account: 'Створити безкоштовний обліковий запис', powered_by: 'Працює на базі', please_check_the_box_to_continue: 'Будь ласка, позначте прапорець, щоб продовжити.', - open_source_documents_software: 'відкритий програмний засіб для документів', + open_source_documents_software: 'відкрите програмне забезпечення для документів', verified_phone_number: 'Підтвердіть номер телефону', use_international_format: 'Використовуйте міжнародний формат: +1xxx', six_digits_code: '6-значний код', @@ -734,6 +741,7 @@ const cs = { sign_now: 'Podepsat nyní', type_here_: 'Zadejte zde', optional: 'volitelné', + option: 'Možnost', appears_on: 'Zobrazuje se na', page: 'Stránka', select_your_option: 'Vyberte svou volbu', @@ -832,6 +840,7 @@ const pt = { sign_now: 'Assinar agora', type_here_: 'Digite aqui', optional: 'opcional', + option: 'Opção', appears_on: 'Aparece em', page: 'Página', take_photo: 'Tirar foto', @@ -1097,6 +1106,7 @@ const ar = { select_a_reason: 'اختر سببًا', value_is_invalid: 'القيمة غير صالحة', verification_code_is_invalid: 'رمز التحقق غير صالح', + already_paid: 'تم الدفع بالفعل', drawn_signature_on_a_touchscreen_device: 'توقيع مرسوم على جهاز بشاشة تعمل باللمس', scan_the_qr_code_with_the_camera_app_to_open_the_form_on_mobile_and_draw_your_signature: 'امسح رمز الاستجابة السريعة باستخدام تطبيق الكاميرا لفتح النموذج على الهاتف المحمول ورسم توقيعك', by_clicking_you_agree_to_the: 'بالنقر فوق "{button}"، أنت توافق على', @@ -1198,6 +1208,8 @@ const ko = { by_clicking_you_agree_to_the: '"{button}"를 클릭함으로써, 다음에 동의하게 됩니다', electronic_signature_disclosure: '전자 서명 공개', esignature_disclosure: '전자 서명 공개', + value_is_invalid: '값이 올바르지 않습니다', + verification_code_is_invalid: '인증 코드가 올바르지 않습니다', already_paid: '이미 지불됨', text: '텍스트', signature: '서명', @@ -1273,6 +1285,105 @@ const ko = { wait_countdown_seconds: '{countdown}초 기다리세요' } -const i18n = { en, es, it, de, fr, pl, uk, cs, pt, he, nl, ar, ko } +const ja = { + complete_all_required_fields_to_proceed_with_identity_verification: '本人確認を進めるには、すべての必須項目を入力してください。', + verify_id: '本人確認', + identity_verification: '本人確認', + complete: '完了', + fill_all_required_fields_to_complete: '完了するにはすべての必須項目を入力してください', + sign_and_complete: '署名して完了', + text: 'テキスト', + by_clicking_you_agree_to_the: '"{button}" をクリックすることで、次に同意したことになります:', + electronic_signature_disclosure: '電子署名に関する開示', + esignature_disclosure: '電子署名開示', + signature: '署名', + initials: 'イニシャル', + drawn_signature_on_a_touchscreen_device: 'タッチスクリーンデバイスで描かれた署名', + approved: '承認済み', + reviewed: '確認済み', + other: 'その他', + authored_by_me: '自分が作成', + invite: '招待', + email: 'メール', + approved_by: '承認者', + reviewed_by: '確認者', + authored_by: '作成者', + select_a_reason: '理由を選択', + scan_the_qr_code_with_the_camera_app_to_open_the_form_on_mobile_and_draw_your_signature: 'QRコードをカメラアプリで読み取り、モバイルでフォームを開いて署名を描いてください', + date: '日付', + number: '数値', + value_is_invalid: '無効な値です', + verification_code_is_invalid: '認証コードが無効です', + already_paid: 'すでに支払い済み', + image: '画像', + pay: '支払う', + take_photo: '写真を撮る', + number_phone_is_invalid: '{number} の電話番号は無効です', + file: 'ファイル', + digitally_signed_by: '電子署名者:', + reason: '理由', + select: '選択', + checkbox: 'チェックボックス', + multiple: '複数選択', + radio: 'ラジオボタン', + cells: 'セル', + stamp: 'スタンプ', + minimize: '最小化', + payment: '支払い', + phone: '電話', + start_now: '今すぐ開始', + continue: '続行', + sign_now: '今すぐ署名', + type_here_: 'ここに入力...', + optional: '任意', + option: 'オプション', + appears_on: '表示ページ', + page: 'ページ', + select_your_option: 'オプションを選択', + complete_hightlighted_checkboxes_and_click: 'ハイライトされたチェックボックスを完了し、クリックしてください', + submit: '送信', + next: '次へ', + click_to_upload: 'クリックしてアップロード', + or_drag_and_drop_files: 'またはファイルをドラッグ&ドロップ', + send_copy_via_email: 'メールでコピーを送信', + download: 'ダウンロード', + clear: 'クリア', + redraw: '描き直す', + draw_initials: 'イニシャルを描く', + type_signature_here: 'ここに署名を入力', + type_initial_here: 'ここにイニシャルを入力', + form_has_been_completed: 'フォームが完了しました!', + document_has_been_signed: 'ドキュメントが署名されました!', + documents_have_been_signed: 'ドキュメントがすべて署名されました!', + create_a_free_account: '無料アカウントを作成', + powered_by: '提供元:', + please_check_the_box_to_continue: '続行するにはボックスにチェックを入れてください。', + open_source_documents_software: 'オープンソースのドキュメントソフトウェア', + verified_phone_number: '電話番号を認証', + use_international_format: '国際形式を使用してください:+1xxx', + six_digits_code: '6桁のコード', + change_phone_number: '電話番号を変更', + sending: '送信中...', + resend_code: 'コードを再送信', + verification_code_has_been_resent: '認証コードがSMSで再送信されました', + please_fill_all_required_fields: 'すべての必須項目を入力してください', + set_today: '今日の日付を設定', + toggle_multiline_text: '複数行テキスト切り替え', + draw_signature: '署名を描く', + type_initial: 'イニシャルを入力', + draw: '描く', + type: '入力', + type_text: 'テキストを入力', + email_has_been_sent: 'メールが送信されました', + processing: '処理中', + pay_with_strip: 'Stripeで支払う', + reupload: '再アップロード', + upload: 'アップロード', + files: 'ファイル', + signature_is_too_small_or_simple_please_redraw: '署名が小さすぎるか単純すぎます。もう一度描いてください。', + wait_countdown_seconds: '{countdown} 秒お待ちください' +} + +const i18n = { en, es, it, de, fr, pl, uk, cs, pt, he, nl, ar, ko, ja } export default i18n diff --git a/config/application.rb b/config/application.rb index 758d2f81..8021f58a 100644 --- a/config/application.rb +++ b/config/application.rb @@ -25,7 +25,8 @@ module DocuSeal config.active_storage.draw_routes = ENV['MULTITENANT'] != 'true' - config.i18n.available_locales = %i[en en-US en-GB es-ES fr-FR pt-PT de-DE it-IT es it de fr pl uk cs pt he nl ar ko] + config.i18n.available_locales = %i[en en-US en-GB es-ES fr-FR pt-PT de-DE it-IT + es it de fr pl uk cs pt he nl ar ko ja] config.i18n.fallbacks = [:en] config.exceptions_app = ->(env) { ErrorsController.action(:show).call(env) } diff --git a/config/locales/i18n.yml b/config/locales/i18n.yml index 2fbf8328..dbbdb244 100644 --- a/config/locales/i18n.yml +++ b/config/locales/i18n.yml @@ -18,6 +18,7 @@ en: &en language_nl: Nederlands language_ar: العربية language_ko: 한국어 + language_ja: 日本語 hi_there: Hi there thanks: Thanks bcc_recipients: BCC recipients @@ -3447,7 +3448,7 @@ pt: &pt verify_pdf: Verificar PDF sign_out: Sair page_number: 'Página %{number}' - powered_by: Oferecido por + powered_by: Desenvolvido por count_documents_signed_with_html: '%{count} documentos assinados com' storage: Armazenamento notifications: Notificações @@ -4767,6 +4768,9 @@ pl: too_many_attempts: Zbyt wiele prób. verification_code: Kod Weryfikacyjny resend_code: Wyślij Kod Ponownie + powered_by: 'Napędzany prze' + count_documents_signed_with_html: '%{count} dokumentów podpisanych za pomocą' + open_source_documents_software: 'oprogramowanie do dokumentów open source' uk: require_phone_2fa_to_open: Вимагати двофакторну автентифікацію через телефон для відкриття @@ -4831,6 +4835,9 @@ uk: too_many_attempts: Забагато спроб. verification_code: Код перевірки resend_code: Відправити код знову + powered_by: 'Працює на базі' + count_documents_signed_with_html: '%{count} документів підписано за допомогою' + open_source_documents_software: 'відкрите програмне забезпечення для документів' cs: require_phone_2fa_to_open: Vyžadovat otevření pomocí telefonního 2FA @@ -4895,6 +4902,9 @@ cs: too_many_attempts: Příliš mnoho pokusů. verification_code: Ověřovací Kód resend_code: Znovu Odeslat Kód + powered_by: 'Poháněno' + count_documents_signed_with_html: '%{count} dokumentů podepsáno pomocí' + open_source_documents_software: 'open source software pro dokumenty' he: require_phone_2fa_to_open: דרוש אימות דו-שלבי באמצעות טלפון לפתיחה @@ -4959,6 +4969,9 @@ he: too_many_attempts: יותר מדי ניסיונות. verification_code: קוד אימות resend_code: שלח קוד מחדש + powered_by: 'מופעל על ידי' + count_documents_signed_with_html: '%{count} מסמכים נחתמו באמצעות' + open_source_documents_software: 'תוכנה בקוד פתוח למסמכים' nl: require_phone_2fa_to_open: Vereis telefoon 2FA om te openen @@ -5023,6 +5036,9 @@ nl: too_many_attempts: Te veel pogingen. verification_code: Verificatiecode resend_code: Code Opnieuw Verzenden + powered_by: 'Aangedreven door' + count_documents_signed_with_html: '%{count} documenten ondertekend met' + open_source_documents_software: 'open source documenten software' ar: require_phone_2fa_to_open: "تطلب فتح عبر تحقق الهاتف ذو العاملين" @@ -5087,6 +5103,9 @@ ar: too_many_attempts: عدد المحاولات كبير جدًا. verification_code: رمز التحقق resend_code: إعادة إرسال الرمز + powered_by: 'مشغل بواسطة' + count_documents_signed_with_html: '%{count} مستندات تم توقيعها باستخدام' + open_source_documents_software: 'برنامج مستندات مفتوح المصدر' ko: require_phone_2fa_to_open: 휴대폰 2FA를 열 때 요구함 @@ -5151,6 +5170,76 @@ ko: too_many_attempts: 시도 횟수가 너무 많습니다. verification_code: 인증 코드 resend_code: 코드 재전송 + powered_by: '제공:' + count_documents_signed_with_html: '%{count}개의 문서가 다음을 통해 서명됨' + open_source_documents_software: '오픈소스 문서 소프트웨어' + +ja: + require_phone_2fa_to_open: 電話による2段階認証が必要です + the_sender_has_requested_a_two_factor_authentication_via_one_time_password_sent_to_your_html: 送信者は、%{phone} に送信されたワンタイムパスワードによる2段階認証を要求しました。 + send_verification_code: 認証コードを送信 + code_has_been_resent: コードが再送信されました + invalid_code: 無効なコードです + awaiting_completion_by_the_other_party: 他の当事者による完了を待機中 + view: 表示 + hi_there: こんにちは + download: ダウンロード + decline: 辞退 + declined: 辞退済み + decline_reason: 辞退の理由 + provide_a_reason: 理由を入力してください + notify_the_sender_with_the_reason_you_declined: 辞退理由を送信者に通知してください + form_has_been_declined_on_html: '%{time} にフォームが辞退されました' + name_declined_by_submitter: '"%{name}" は %{submitter} により辞退されました' + name_declined_by_submitter_with_the_following_reason: '"%{name}" は %{submitter} により次の理由で辞退されました:' + email: メール + digitally_signed_by: 電子署名者 + role: 役割 + provide_your_email_to_start: 開始するにはメールアドレスを入力してください + start: 開始 + reason: 理由 + starting: 開始中 + form_expired_at_html: '%{time} にフォームの有効期限が切れました' + invited_by_html: '%{name} により招待されました' + you_have_been_invited_to_submit_a_form: フォームの提出に招待されました + verification_code_code: '認証コード: %{code}' + signed_on_time: '%{time} に署名済み' + completed_on_time: '%{time} に完了' + document_has_been_signed_already: ドキュメントはすでに署名されています + form_has_been_submitted_already: フォームはすでに送信されています + send_copy_to_email: メールにコピーを送信 + sending: 送信中 + resubmit: 再送信 + form_has_been_deleted_by_html: '%{name} によりフォームが削除されました。' + or: または + download_documents: ドキュメントをダウンロード + downloading: ダウンロード中 + completed_successfully: 正常に完了しました + password: パスワード + sign_in: サインイン + signing_in: サインイン中 + sign_in_with_microsoft: Microsoftでサインイン + sign_in_with_google: Googleでサインイン + forgot_your_password_: パスワードをお忘れですか? + create_free_account: 無料アカウントを作成 + already_have_an_account: すでにアカウントをお持ちですか? + first_name: 名 + last_name: 姓 + sign_up: 登録 + signing_up: 登録中 + profile_details: プロフィールの詳細 + sign_up_with_google: Googleで登録 + sign_up_with_microsoft: Microsoftで登録 + by_creating_an_account_you_agree_to_our_html: 'プライバシーポリシーおよび利用規約に同意の上、アカウントを作成します。' + enter_email_to_continue: 続行するにはメールを入力してください + the_code_has_been_sent_to_your_email: コードがあなたのメールに送信されました + enter_the_verification_code_from_your_email: メールに記載された認証コードを入力してください + too_many_attempts: 試行回数が多すぎます + verification_code: 認証コード + resend_code: コードを再送信 + powered_by: '提供元:' + count_documents_signed_with_html: '%{count} 件のドキュメントが以下で署名されました' + open_source_documents_software: 'オープンソースのドキュメントソフトウェア' en-US: <<: *en