Skip to content

Commit 59c3984

Browse files
feat(phrases): add uk-UA locale (#7205)
* feat(phrases): added uk-ua locale * refactor(phrases): revert to standart formatting * fix: lint errors * fix: directory name * fix: directory name * refactor: add missing translations --------- Co-authored-by: Charles Zhao <[email protected]>
1 parent a89b479 commit 59c3984

File tree

12 files changed

+329
-0
lines changed

12 files changed

+329
-0
lines changed

packages/phrases-experience/src/index.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import ptBR from './locales/pt-br/index.js';
1616
import ptPT from './locales/pt-pt/index.js';
1717
import ru from './locales/ru/index.js';
1818
import trTR from './locales/tr-tr/index.js';
19+
import ukUA from './locales/uk-ua/index.js';
1920
import zhCN from './locales/zh-cn/index.js';
2021
import zhHK from './locales/zh-hk/index.js';
2122
import zhTW from './locales/zh-tw/index.js';
@@ -39,6 +40,7 @@ export const builtInLanguages = [
3940
'pt-BR',
4041
'ru',
4142
'tr-TR',
43+
'uk-UA',
4244
'zh-CN',
4345
'zh-HK',
4446
'zh-TW',
@@ -69,6 +71,7 @@ const resource: Resource = {
6971
'pt-BR': ptBR,
7072
ru,
7173
'tr-TR': trTR,
74+
'uk-UA': ukUA,
7275
'zh-CN': zhCN,
7376
'zh-HK': zhHK,
7477
'zh-TW': zhTW,
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
const action = {
2+
sign_in: 'Увійти',
3+
continue: 'Продовжити',
4+
continue_as: 'Продовжити як {{name}}',
5+
create_account: 'Створити обліковий запис',
6+
create_account_without_linking: 'Створити новий замість цього',
7+
create: 'Створити',
8+
enter_passcode: 'Введіть код підтвердження',
9+
confirm: 'Підтвердити',
10+
cancel: 'Скасувати',
11+
save_password: 'Зберегти пароль',
12+
bind: 'Зв’язати з {{address}}',
13+
bind_and_continue: 'Зв’язати та продовжити',
14+
back: 'Повернутися',
15+
nav_back: 'Назад',
16+
nav_skip: 'Пропустити',
17+
agree: 'Погодитися',
18+
got_it: 'Зрозуміло',
19+
sign_in_with: 'Продовжити з {{name}}',
20+
forgot_password: 'Забули пароль?',
21+
switch_to: 'Перемкнутися на {{method}}',
22+
sign_in_via_passcode: 'Увійти за допомогою коду підтвердження',
23+
sign_in_via_password: 'Увійти за допомогою пароля',
24+
change: 'Змінити {{method}}',
25+
link_another_email: 'Зв’язати іншу електронну пошту',
26+
link_another_phone: 'Зв’язати інший телефон',
27+
link_another_email_or_phone: 'Зв’язати іншу електронну пошту або телефон',
28+
show_password: 'Показати пароль',
29+
copy: 'Копіювати',
30+
verify_via_passkey: 'Підтвердити за допомогою ключа доступу',
31+
download: 'Завантажити',
32+
single_sign_on: 'Єдиний вхід (SSO)',
33+
authorize: 'Авторизуватися',
34+
use_another_account: 'Використати інший обліковий запис',
35+
back_to_current_account: 'Повернутися до поточного облікового запису',
36+
};
37+
38+
export default Object.freeze(action);
Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
const description = {
2+
email: 'електронна пошта',
3+
phone_number: 'номер телефону',
4+
username: "ім'я користувача",
5+
reminder: 'Нагадування',
6+
not_found: '404 Не знайдено',
7+
agree_with_terms: 'Я прочитав(ла) і погоджуюся з ',
8+
agree_with_terms_modal: 'Щоб продовжити, будь ласка, погодьтеся з <link></link>.',
9+
terms_of_use: 'Умовами використання',
10+
sign_in: 'Увійти',
11+
privacy_policy: 'Політикою конфіденційності',
12+
create_account: 'Створити обліковий запис',
13+
switch_account: 'Змінити обліковий запис',
14+
or: 'або',
15+
and: 'та',
16+
enter_passcode: 'Код підтвердження було надіслано на {{address}} {{target}}',
17+
passcode_sent: 'Код підтвердження було повторно надіслано',
18+
resend_after_seconds: 'Не отримали код? Повторна відправка через <span>{{seconds}}</span> секунд',
19+
resend_passcode: 'Не отримали код? <a>Надіслати повторно</a>',
20+
create_account_id_exists: 'Обліковий запис з {{type}} {{value}} вже існує, бажаєте увійти?',
21+
link_account_id_exists: 'Обліковий запис з {{type}} {{value}} вже існує. Бажаєте зв’язати?',
22+
sign_in_id_does_not_exist:
23+
'Обліковий запис з {{type}} {{value}} не існує, бажаєте створити новий?',
24+
sign_in_id_does_not_exist_alert: 'Обліковий запис з {{type}} {{value}} не існує.',
25+
create_account_id_exists_alert:
26+
'Обліковий запис з {{type}} {{value}} пов’язаний з іншим обліковим записом. Будь ласка, спробуйте інший {{type}}.',
27+
social_identity_exist:
28+
'{{type}} {{value}} пов’язаний з іншим обліковим записом. Будь ласка, спробуйте інший {{type}}.',
29+
bind_account_title: 'Зв’язати або створити обліковий запис',
30+
social_create_account: 'Ви можете створити новий обліковий запис.',
31+
social_link_email: 'Ви можете зв’язати іншу електронну пошту',
32+
social_link_phone: 'Ви можете зв’язати інший телефон',
33+
social_link_email_or_phone: 'Ви можете зв’язати іншу електронну пошту або телефон',
34+
social_bind_with_existing:
35+
'Ми знайшли відповідний обліковий запис, який уже зареєстровано. Ви можете зв’язати його безпосередньо.',
36+
skip_social_linking: 'Пропустити зв’язування з існуючим обліковим записом?',
37+
reset_password: 'Скинути пароль',
38+
reset_password_description:
39+
'Введіть {{types, list(type: disjunction;)}}, пов’язаний з вашим обліковим записом, і ми надішлемо вам код підтвердження для скидання пароля.',
40+
new_password: 'Новий пароль',
41+
set_password: 'Встановити пароль',
42+
password_changed: 'Пароль змінено',
43+
no_account: 'Ще не маєте облікового запису?',
44+
have_account: 'Вже маєте обліковий запис?',
45+
enter_password: 'Введіть пароль',
46+
enter_password_for: 'Увійдіть за допомогою пароля до {{method}} {{value}}',
47+
enter_username: 'Встановити ім’я користувача',
48+
enter_username_description:
49+
'Ім’я користувача є альтернативою для входу. Воно має містити лише літери, цифри та підкреслення.',
50+
link_email: 'Зв’язати електронну пошту',
51+
link_phone: 'Зв’язати телефон',
52+
link_email_or_phone: 'Зв’язати електронну пошту або телефон',
53+
link_email_description:
54+
'Для додаткової безпеки, будь ласка, зв’яжіть вашу електронну пошту з обліковим записом.',
55+
link_phone_description:
56+
'Для додаткової безпеки, будь ласка, зв’яжіть ваш телефон з обліковим записом.',
57+
link_email_or_phone_description:
58+
'Для додаткової безпеки, будь ласка, зв’яжіть вашу електронну пошту або телефон з обліковим записом.',
59+
continue_with_more_information:
60+
'Для додаткової безпеки, будь ласка, заповніть наведені нижче дані облікового запису.',
61+
create_your_account: 'Створіть свій обліковий запис',
62+
sign_in_to_your_account: 'Увійдіть до свого облікового запису',
63+
no_region_code_found: 'Код регіону не знайдено',
64+
verify_email: 'Підтвердіть вашу електронну пошту',
65+
verify_phone: 'Підтвердіть ваш номер телефону',
66+
password_requirements: 'Пароль {{items, list}}.',
67+
password_requirement: {
68+
length_one: 'має містити щонайменше {{count}} символ',
69+
length_two: 'має містити щонайменше {{count}} символи',
70+
length_few: 'має містити щонайменше {{count}} символів',
71+
length_many: 'має містити щонайменше {{count}} символів',
72+
length_other: 'має містити щонайменше {{count}} символів',
73+
character_types_one:
74+
'має містити щонайменше {{count}} тип символів: великі літери, малі літери, цифри та спеціальні символи',
75+
character_types_two:
76+
'має містити щонайменше {{count}} типи символів: великі літери, малі літери, цифри та спеціальні символи',
77+
character_types_few:
78+
'має містити щонайменше {{count}} типів символів: великі літери, малі літери, цифри та спеціальні символи',
79+
character_types_many:
80+
'має містити щонайменше {{count}} типів символів: великі літери, малі літери, цифри та спеціальні символи',
81+
character_types_other:
82+
'має містити щонайменше {{count}} типів символів: великі літери, малі літери, цифри та спеціальні символи',
83+
},
84+
use: 'Використовувати',
85+
single_sign_on_email_form: 'Введіть вашу корпоративну електронну адресу',
86+
single_sign_on_connectors_list:
87+
'Ваше підприємство увімкнуло єдиний вхід (SSO) для електронної пошти {{email}}. Ви можете продовжити вхід за допомогою таких постачальників SSO.',
88+
single_sign_on_enabled: 'Єдиний вхід (SSO) увімкнено для цього облікового запису',
89+
authorize_title: 'Авторизувати {{name}}',
90+
request_permission: '{{name}} запитує доступ до:',
91+
grant_organization_access: 'Надати доступ організації:',
92+
authorize_personal_data_usage: 'Дозволити використання ваших персональних даних:',
93+
authorize_organization_access: 'Дозволити доступ до конкретної організації:',
94+
user_scopes: 'Персональні дані користувача',
95+
organization_scopes: 'Доступ до організації',
96+
authorize_agreement: 'Авторизуючи доступ, ви погоджуєтесь з <link></link> {{name}}.',
97+
authorize_agreement_with_redirect:
98+
'Авторизуючи доступ, ви погоджуєтесь з <link></link> {{name}}, і вас буде перенаправлено на {{uri}}.',
99+
not_you: 'Це не ви?',
100+
user_id: 'Ідентифікатор користувача: {{id}}',
101+
redirect_to: 'Вас буде перенаправлено на {{name}}.',
102+
auto_agreement: 'Продовжуючи, ви погоджуєтесь з <link></link>.',
103+
identifier_sign_in_description: 'Введіть {{types, list(type: disjunction;)}} для входу.',
104+
all_sign_in_options: 'Усі варіанти входу',
105+
identifier_register_description:
106+
'Введіть {{types, list(type: disjunction;)}} для створення нового облікового запису.',
107+
all_account_creation_options: 'Усі варіанти створення облікового запису',
108+
back_to_sign_in: 'Повернутися до входу',
109+
support_email: 'Електронна пошта підтримки: <link></link>',
110+
support_website: 'Вебсайт підтримки: <link></link>',
111+
switch_account_title: 'Ви ввійшли як {{account}}',
112+
switch_account_description:
113+
'Щоб продовжити, ви будете вийдені з поточного облікового запису та автоматично переключені на новий.',
114+
};
115+
116+
export default Object.freeze(description);
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
const development_tenant = {
2+
notification: 'Ви перебуваєте в режимі розробки',
3+
};
4+
5+
export default Object.freeze(development_tenant);
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import password_rejected from './password-rejected.js';
2+
3+
const error = {
4+
general_required: 'Необхідно вказати {{types, list(type: disjunction;)}}',
5+
general_invalid: '{{types, list(type: disjunction;)}} є недійсним',
6+
username_required: "Ім'я користувача є обов'язковим",
7+
password_required: "Пароль є обов'язковим",
8+
username_exists: "Таке ім'я користувача вже існує",
9+
username_should_not_start_with_number: "Ім'я користувача не повинно починатися з цифри",
10+
username_invalid_charset: "Ім'я користувача може містити лише літери, цифри та підкреслення.",
11+
invalid_email: 'Недійсна електронна пошта',
12+
invalid_phone: 'Недійсний номер телефону',
13+
passwords_do_not_match: 'Паролі не збігаються. Будь ласка, спробуйте ще раз.',
14+
invalid_passcode: 'Недійсний код підтвердження.',
15+
invalid_connector_auth: 'Недійсна авторизація',
16+
invalid_connector_request: 'Недійсні дані конектора',
17+
unknown: 'Невідома помилка. Будь ласка, спробуйте пізніше.',
18+
invalid_session: 'Сесію не знайдено. Будь ласка, поверніться назад і увійдіть знову.',
19+
timeout: 'Час очікування вийшов. Будь ласка, спробуйте ще раз пізніше.',
20+
password_rejected,
21+
sso_not_enabled: 'Єдиний вхід (SSO) не ввімкнено для цього облікового запису.',
22+
invalid_link: 'Недійсне посилання',
23+
invalid_link_description: 'Ваш одноразовий токен міг спливти або більше не є дійсним.',
24+
captcha_verification_failed: 'Не вдалося пройти перевірку капчи.',
25+
something_went_wrong: 'Щось пішло не так.',
26+
};
27+
28+
export default Object.freeze(error);
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
const password_rejected = {
2+
too_short: 'Мінімальна довжина – {{min}} символів.',
3+
too_long: 'Максимальна довжина – {{max}} символів.',
4+
character_types: 'Необхідно щонайменше {{min}} типи символів.',
5+
unsupported_characters: 'Знайдено непідтримуваний символ.',
6+
pwned: 'Уникайте простих паролів, які легко вгадати.',
7+
restricted_found: 'Уникайте надмірного використання {{list, list}}.',
8+
restricted: {
9+
repetition: 'повторюваних символів',
10+
sequence: 'послідовних символів',
11+
user_info: 'ваших персональних даних',
12+
words: 'контексту продукту',
13+
},
14+
};
15+
16+
export default Object.freeze(password_rejected);
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
import { type DeepPartial } from '@silverhand/essentials';
2+
3+
import type { LocalePhrase } from '../../types.js';
4+
5+
import action from './action.js';
6+
import description from './description.js';
7+
import development_tenant from './development-tenant.js';
8+
import error from './error/index.js';
9+
import input from './input.js';
10+
import list from './list.js';
11+
import mfa from './mfa.js';
12+
import secondary from './secondary.js';
13+
import user_scopes from './user-scopes.js';
14+
15+
const uk_ua = {
16+
translation: {
17+
input,
18+
secondary,
19+
action,
20+
description,
21+
error,
22+
list,
23+
mfa,
24+
development_tenant,
25+
user_scopes,
26+
},
27+
} satisfies DeepPartial<LocalePhrase>;
28+
29+
export default Object.freeze(uk_ua);
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
const input = {
2+
username: "Ім'я користувача",
3+
password: 'Пароль',
4+
email: 'Електронна пошта',
5+
phone_number: 'Номер телефону',
6+
confirm_password: 'Підтвердити пароль',
7+
search_region_code: 'Пошук коду регіону',
8+
backup_code: 'Резервний код',
9+
};
10+
11+
export default Object.freeze(input);
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
const list = {
2+
or: 'або',
3+
and: 'і',
4+
separator: ',',
5+
};
6+
7+
export default Object.freeze(list);

0 commit comments

Comments
 (0)