diff --git a/assets/typescript/list/index.ts b/assets/typescript/list/index.ts index 3f37eed38..4c63a80a9 100644 --- a/assets/typescript/list/index.ts +++ b/assets/typescript/list/index.ts @@ -13,12 +13,15 @@ import ko from 'apexcharts/dist/locales/ko.json'; import nl from 'apexcharts/dist/locales/nl.json'; import pl from 'apexcharts/dist/locales/pl.json'; import sq from 'apexcharts/dist/locales/sq.json'; +import uk from 'apexcharts/dist/locales/ua.json'; import zh_CN from 'apexcharts/dist/locales/zh-cn.json'; import zh_TW from 'apexcharts/dist/locales/zh-tw.json'; import 'leaflet/dist/leaflet.css'; -const locales = [de, en, es, fr, hu, it, ja, ko, nl, pl, sq, zh_CN, zh_TW]; +uk.name = 'uk'; // Overwrite "ua" by "uk" + +const locales = [de, en, es, fr, hu, it, ja, ko, nl, pl, sq, uk, zh_CN, zh_TW]; const mapElement = document.getElementById('map-region'); if (mapElement !== null) { diff --git a/config/services.yaml b/config/services.yaml index 59d5be288..ce8be0d95 100644 --- a/config/services.yaml +++ b/config/services.yaml @@ -7,7 +7,7 @@ parameters: osmcha.api.url: 'https://osmcha.org/api/v1/' osmcha.api.key: '%env(OSMCHA_API_KEY)%' osm.api.url: 'https://api.openstreetmap.org/api/0.6/' - app.locales: ['en','fr','it','nl','bg','es_ES','ja','pl','de','sq','zh_TW','zh_CN','hu','ko'] + app.locales: ['en','fr','it','nl','bg','es_ES','ja','pl','de','sq','zh_TW','zh_CN','hu','ko','uk'] app.userAgent: 'OpenStreetMap Welcome Tool' app.title: 'OpenStreetMap Welcome Tool' diff --git a/translations/messages.uk.xlf b/translations/messages.uk.xlf new file mode 100644 index 000000000..4f9fdfe88 --- /dev/null +++ b/translations/messages.uk.xlf @@ -0,0 +1,492 @@ + + + +
+ +
+ + + Albania + Албанія + + + Austria + Австрія + + + Bangladesh + Бангладеш + + + Belgium + Бельгія + + + Bolivia + Болівія + + + Bulgaria + Болгарія + + + British Columbia + Британська Колумбія + + + Ontario + Онтаріо + + + Catalan Countries + Каталонські землі + + + Chile + Чилі + + + China + Китай + + + Beijing + Пекін + + + Hunan + Хунань + + + Colombia + Колумбія + + + Bogotá + Богота + + + DACHLI-Obersee-Rheintal + Верхня долина Рейну + + + Democratic Republic of the Congo + Демократична Республіка Конго + + + France + Франція + + + Germany + Німеччина + + + Berlin + Берлін + + + Berlin-Neukölln + Берлін-Нойкельн + + + Bremen + Бремен + + + Ghana + Гана + + + Hong Kong + Гонконг + + + Hungary + Угорщина + + + Indonesia + Індонезія + + + Ireland + Ірландія + + + Italy + Італія + + + Japan + Японія + + + Kosovo + Косово + + + Libya + Лівія + + + Liberia + Ліберія + + + Luxembourg + Люксембург + + + Macao + Макао + + + Niger + Ніґер + + + Nigeria + Нігерія + + + North Korea + Північна Корея + + + Pakistan + Пакистан + + + Panama + Панама + + + Philippines + Філіппіни + + + Poland + Польща + + + Romania + Румунія + + + Scotland + Шотландія + + + South Korea + Південна Корея + + + Spain + Іспанія + + + Taiwan + Тайвань + + + Tanzania + Танзанія + + + Togo + Тоґо + + + Turkey + Туреччина + + + Uganda + Уганда + + + Ukraine + Україна + + + California + Каліфорнія + + + Kansas + Канзас + + + Commonwealth of Massachusetts + Співдружність Массачусетсу + + + Michigan + Мічиган + + + New York State + Нью-Йорк + + + Oregon + Орегон + + + Utah + Юта + + + Vermont + Вермонт + + + Washington State + Штат Вашингтон + + + Review requested + Запит на перевірку + + + Invalid tag modification + Неприпустима модифікація теґу + + + No note. + Нотаток немає. + + + Markdown is allowed. + Підтримується markdown. + + + View + Перегляд + + + Open other tools + Відкрийте інші інструменти + + + Harmful + Шкідливий + + + Checked + Перевірено + + + Timeline + Хронологія + + + Account created + Обліковий запис створено + + + Mapper since {date} + Мапер з {date} + + + Profile + Обліковий запис + + + Send a welcome message + Створення привітального повідомлення + + + Templates + Шаблони + + + Copy text to clipboard + Копіювати текст до буфера обміну + + + Load message in osm.org + Завантажити повідомлення до osm.org + + + Changesets + Набори змін + + + History + Історія + + + Home + Головна + + + List + Перелік + + + Mapper + Мапер + + + Username + Мапер + + + First changeset + Перший набір змін + + + Editor + Редактор + + + Locale + Локаль + + + View profile + Переглянути профіль + + + Mappers + Мапери + + + List of mappers that have their first edit in the region + Перелік маперів, які вперше внесли зміни тут + + + Previous month + Попередній місяць + + + Next month + Наступний місяць + + + Note + Нотатка + + + Add + Додати + + + Add a note + Додати нотатку + + + Welcomed by {userlink} + Привітав {userlink} + + + {mapper} has been welcomed + {mapper} отримав привітання + + + {mapper} has replied + {mapper} відповів(ла) + + + Changeset + Набір змін + + + Not welcomed yet + Ще не привітали + + + Not replied yet + Відповідь ще не отримана + + + {userlink} has replied + {userlink} відповів(ла) + + + Login with OSM + Увійти в OSM + + + Open user menu + Відкрити меню користувача + + + Welcomed + Вітання надіслане + + + Last update + Останнє оновлення + + + Logout + Вийти + + + Notes + Нотатки + + + This is the OpenStreetMap Welcome Tool. +It helps you discover new mappers in your region and welcome them. + Це інструмент OpenStreetMap Welcome. +Він допоможе вам знайти нових маперів у вашому регіоні та привітати їх. + + + If you want to add your region or your language to the Welcome Tool, check our {contributing_link_start}contributing guide{link_end}. + Якщо ви хочете додати свій регіон або мову до Welcome Tool, перегляньте {contributing_link_start}наш посібник{link_end}. + + + Developed by {osmbe_link_start}OpenStreetMap Belgium{link_end} and supported by the {lccwg_link_start}Local Chapters and Communities Working Group{link_end}. + Розроблено {osmbe_link_start}OpenStreetMap Бельгія{link_end} та підтримується {lccwg_link_start}Робочою групою Місцевих осередків та спільнот{link_end}. + + + Previous mapper + Попередній мапер + + + Next mapper + Наступний мапер + + + africa + Африка + + + asia + Азія + + + australia + Австралія + + + europe + Європа + + + north-america + Північна Америка + + + south-america + Південна Америка + + + {count} new mappers ({percent} %) have already been welcomed + {count} нових маперів ({percent} %) яких вже привітали + + + Mapper detected in {count} region(s) + Мапера помічено у {count} регіоні(ах) + + + Download OSMCha RSS feed + Завантажити RSS-стрічку OSMCha + + +
+
diff --git a/translations/security.uk.xlf b/translations/security.uk.xlf new file mode 100644 index 000000000..a4bc793bb --- /dev/null +++ b/translations/security.uk.xlf @@ -0,0 +1,86 @@ + + + +
+ +
+ + + An authentication exception occurred. + Помилка автентифікації. + + + Authentication credentials could not be found. + Автентифікаційні дані не знайдено. + + + Authentication request could not be processed due to a system problem. + Запит на автентифікацію не може бути опрацьовано у зв’язку з проблемою в системі. + + + Invalid credentials. + Невірні автентифікаційні дані. + + + Cookie has already been used by someone else. + Хтось інший вже використав цей сookie. + + + Not privileged to request the resource. + Відсутні права на запит цього ресурсу. + + + Invalid CSRF token. + Невірний токен CSRF. + + + No authentication provider found to support the authentication token. + Не знайдено провайдера автентифікації, що підтримує токен автентифікаціії. + + + No session available, it either timed out or cookies are not enabled. + Сесія недоступна, її час вийшов, або cookies вимкнено. + + + No token could be found. + Токен не знайдено. + + + Username could not be found. + Ім’я користувача не знайдено. + + + Account has expired. + Термін дії облікового запису вичерпано. + + + Credentials have expired. + Термін дії автентифікаційних даних вичерпано. + + + Account is disabled. + Обліковий запис відключено. + + + Account is locked. + Обліковий запис заблоковано. + + + Too many failed login attempts, please try again later. + Забагато невдалих спроб входу. Будь ласка, спробуйте пізніше. + + + Invalid or expired login link. + Посилання для входу недійсне, або термін його дії закінчився. + + + Too many failed login attempts, please try again in %minutes% minute. + Забагато невдалих спроб входу. Будь ласка, спробуйте знову через %minutes% хвилину. + + + Too many failed login attempts, please try again in %minutes% minutes. + Забагато невдалих спроб входу. Будь ласка, спробуйте знову через %minutes% хв. + + +
+
diff --git a/translations/time+intl-icu.uk.xlf b/translations/time+intl-icu.uk.xlf new file mode 100644 index 000000000..8c9d3637c --- /dev/null +++ b/translations/time+intl-icu.uk.xlf @@ -0,0 +1,14 @@ + + + +
+ +
+ + + diff.empty + Зараз + + +
+
diff --git a/translations/validators.uk.xlf b/translations/validators.uk.xlf new file mode 100644 index 000000000..83ead011a --- /dev/null +++ b/translations/validators.uk.xlf @@ -0,0 +1,542 @@ + + + +
+ +
+ + + This value should be false. + Значення повинно бути Ні. + + + This value should be true. + Значення повинно бути Так. + + + This value should be of type {{ type }}. + Тип значення повинен бути {{ type }}. + + + This value should be blank. + Значення повинно бути пустим. + + + The value you selected is not a valid choice. + Обране вами значення недопустиме. + + + You must select at least {{ limit }} choice.|You must select at least {{ limit }} choices. + Ви повинні обрати хоча б {{ limit }} варіант.|Ви повинні обрати хоча б {{ limit }} варіанти.|Ви повинні обрати хоча б {{ limit }} варіантів. + + + You must select at most {{ limit }} choice.|You must select at most {{ limit }} choices. + Ви повинні обрати не більше ніж {{ limit }} варіантів. + + + One or more of the given values is invalid. + Одне або кілька заданих значень є недопустимі. + + + This field was not expected. + Це поле не очікується. + + + This field is missing. + Це поле не вистачає. + + + This value is not a valid date. + Дане значення не є вірною датою. + + + This value is not a valid datetime. + Дане значення дати та часу недопустиме. + + + This value is not a valid email address. + Значення адреси электронної пошти недопустиме. + + + The file could not be found. + Файл не знайдено. + + + The file is not readable. + Файл не читається. + + + The file is too large ({{ size }} {{ suffix }}). Allowed maximum size is {{ limit }} {{ suffix }}. + Файл занадто великий ({{ size }} {{ suffix }}). Дозволений максимальний розмір {{ limit }} {{ suffix }}. + + + The mime type of the file is invalid ({{ type }}). Allowed mime types are {{ types }}. + MIME-тип файлу недопустимий ({{ type }}). Допустимі MIME-типи файлів {{ types }}. + + + This value should be {{ limit }} or less. + Значення повинно бути {{ limit }} або менше. + + + This value is too long. It should have {{ limit }} character or less.|This value is too long. It should have {{ limit }} characters or less. + Значення занадто довге. Повинно бути рівне {{ limit }} символу або менше.|Значення занадто довге. Повинно бути рівне {{ limit }} символам або менше.|Значення занадто довге. Повинно бути рівне {{ limit }} символам або менше. + + + This value should be {{ limit }} or more. + Значення повинно бути {{ limit }} або більше. + + + This value is too short. It should have {{ limit }} character or more.|This value is too short. It should have {{ limit }} characters or more. + Значення занадто коротке. Повинно бути рівне {{ limit }} символу або більше.|Значення занадто коротке. Повинно бути рівне {{ limit }} символам або більше.|Значення занадто коротке. Повинно бути рівне {{ limit }} символам або більше. + + + This value should not be blank. + Значення не повинно бути пустим. + + + This value should not be null. + Значення не повинно бути null. + + + This value should be null. + Значення повинно бути null. + + + This value is not valid. + Значення недопустиме. + + + This value is not a valid time. + Значення часу недопустиме. + + + This value is not a valid URL. + Значення URL недопустиме. + + + The two values should be equal. + Обидва занчення повинні бути одинаковими. + + + The file is too large. Allowed maximum size is {{ limit }} {{ suffix }}. + Файл занадто великий. Максимальний допустимий розмір {{ limit }} {{ suffix }}. + + + The file is too large. + Файл занадто великий. + + + The file could not be uploaded. + Файл не можливо завантажити. + + + This value should be a valid number. + Значення має бути допустимим числом. + + + This file is not a valid image. + Цей файл не є допустимим форматом зображення. + + + This is not a valid IP address. + Це некоректна IP адреса. + + + This value is not a valid language. + Це некоректна мова. + + + This value is not a valid locale. + Це некоректна локалізація. + + + This value is not a valid country. + Це некоректна країна. + + + This value is already used. + Це значення вже використовується. + + + The size of the image could not be detected. + Не вдалося визначити розмір зображення. + + + The image width is too big ({{ width }}px). Allowed maximum width is {{ max_width }}px. + Ширина зображення занадто велика ({{ width }}px). Максимально допустима ширина {{ max_width }}px. + + + The image width is too small ({{ width }}px). Minimum width expected is {{ min_width }}px. + Ширина зображення занадто мала ({{ width }}px). Мінімально допустима ширина {{ min_width }}px. + + + The image height is too big ({{ height }}px). Allowed maximum height is {{ max_height }}px. + Висота зображення занадто велика ({{ height }}px). Максимально допустима висота {{ max_height }}px. + + + The image height is too small ({{ height }}px). Minimum height expected is {{ min_height }}px. + Висота зображення занадто мала ({{ height }}px). Мінімально допустима висота {{ min_height }}px. + + + This value should be the user's current password. + Значення має бути поточним паролем користувача. + + + This value should have exactly {{ limit }} character.|This value should have exactly {{ limit }} characters. + Значення повиино бути рівним {{ limit }} символу.|Значення повиино бути рівним {{ limit }} символам.|Значення повиино бути рівним {{ limit }} символам. + + + The file was only partially uploaded. + Файл був завантажений лише частково. + + + No file was uploaded. + Файл не був завантажений. + + + No temporary folder was configured in php.ini. + Не налаштована тимчасова директорія в php.ini. + + + Cannot write temporary file to disk. + Неможливо записати тимчасовий файл на диск. + + + A PHP extension caused the upload to fail. + Розширення PHP викликало помилку при завантаженні. + + + This collection should contain {{ limit }} element or more.|This collection should contain {{ limit }} elements or more. + Ця колекція повинна містити {{ limit }} елемент чи більше.|Ця колекція повинна містити {{ limit }} елемента чи більше.|Ця колекція повинна містити {{ limit }} елементів чи більше. + + + This collection should contain {{ limit }} element or less.|This collection should contain {{ limit }} elements or less. + Ця колекція повинна містити {{ limit }} елемент чи менше.|Ця колекція повинна містити {{ limit }} елемента чи менше.|Ця колекція повинна містити {{ limit }} елементов чи менше. + + + This collection should contain exactly {{ limit }} element.|This collection should contain exactly {{ limit }} elements. + Ця колекція повинна містити рівно {{ limit }} елемент.|Ця колекція повинна містити рівно {{ limit }} елемента.|Ця колекція повинна містити рівно {{ limit }} елементів. + + + Invalid card number. + Невірний номер карти. + + + Unsupported card type or invalid card number. + Непідтримуваний тип карти або невірний номер карти. + + + This is not a valid International Bank Account Number (IBAN). + Це не дійсний міжнародний номер банківського рахунку (IBAN). + + + This value is not a valid ISBN-10. + Значення не у форматі ISBN-10. + + + This value is not a valid ISBN-13. + Значення не у форматі ISBN-13. + + + This value is neither a valid ISBN-10 nor a valid ISBN-13. + Значення не відповідає форматам ISBN-10 та ISBN-13. + + + This value is not a valid ISSN. + Значення має невірний формат ISSN. + + + This value is not a valid currency. + Значення має невірний формат валюти. + + + This value should be equal to {{ compared_value }}. + Значення повинно дорівнювати {{ compared_value }}. + + + This value should be greater than {{ compared_value }}. + Значення має бути більше ніж {{ compared_value }}. + + + This value should be greater than or equal to {{ compared_value }}. + Значення має бути більше або дорівнювати {{ compared_value }}. + + + This value should be identical to {{ compared_value_type }} {{ compared_value }}. + Значення має бути ідентичним {{ compared_value_type }} {{ compared_value }}. + + + This value should be less than {{ compared_value }}. + Значення повинно бути менше ніж {{ compared_value }}. + + + This value should be less than or equal to {{ compared_value }}. + Значення повинно бути менше або дорівнювати {{ compared_value }}. + + + This value should not be equal to {{ compared_value }}. + Значення не повинно дорівнювати {{ compared_value }}. + + + This value should not be identical to {{ compared_value_type }} {{ compared_value }}. + Значення не повинно бути ідентичним {{ compared_value_type }} {{ compared_value }}. + + + The image ratio is too big ({{ ratio }}). Allowed maximum ratio is {{ max_ratio }}. + Співвідношення сторін зображення занадто велике ({{ ratio }}). Максимальне співвідношення сторін {{ max_ratio }}. + + + The image ratio is too small ({{ ratio }}). Minimum ratio expected is {{ min_ratio }}. + Співвідношення сторін зображення занадто мало ({{ ratio }}). Мінімальне співвідношення сторін {{ min_ratio }}. + + + The image is square ({{ width }}x{{ height }}px). Square images are not allowed. + Зображення квадратне ({{ width }}x{{ height }}px). Квадратні зображення не дозволені. + + + The image is landscape oriented ({{ width }}x{{ height }}px). Landscape oriented images are not allowed. + Зображення альбомної орієнтації ({{ width }}x{{ height }}px). Зображення альбомної орієнтації не дозволені. + + + The image is portrait oriented ({{ width }}x{{ height }}px). Portrait oriented images are not allowed. + Зображення в портретній орієнтації ({{ width }}x{{ height }}px). Зображення в портретної орієнтації не дозволені. + + + An empty file is not allowed. + Порожні файли не дозволені. + + + The host could not be resolved. + Ім'я хоста не знайдено. + + + This value does not match the expected {{ charset }} charset. + Значення не збігається з очікуваним {{ charset }} кодуванням. + + + This is not a valid Business Identifier Code (BIC). + Це не дійсний банківський код (BIC). + + + Error + Помилка + + + This is not a valid UUID. + Це не валідне значення UUID. + + + This value should be a multiple of {{ compared_value }}. + Це значення повинне бути кратним {{ compared_value }}. + + + This Business Identifier Code (BIC) is not associated with IBAN {{ iban }}. + Банківський код (BIC) не пов’язаний із міжнародним номером банківського рахунку (IBAN) {{ iban }}. + + + This value should be valid JSON. + Значення має бути корректним JSON. + + + This collection should contain only unique elements. + Ця колекція повинна мати тільки унікальни значення. + + + This value should be positive. + Значення має бути позитивним. + + + This value should be either positive or zero. + Значення має бути позитивним або дорівнювати нулю. + + + This value should be negative. + Значення має бути негативним. + + + This value should be either negative or zero. + Значення має бути негативним або дорівнювати нулю. + + + This value is not a valid timezone. + Значення не є дійсним часовим поясом. + + + This password has been leaked in a data breach, it must not be used. Please use another password. + Цей пароль був скомпрометований в результаті витоку даних та не повинен використовуватися. Будь ласка, використовуйте інший пароль. + + + This value should be between {{ min }} and {{ max }}. + Значення має бути між {{ min }} та {{ max }}. + + + This value is not a valid hostname. + Значення не є дійсним іменем хоста. + + + The number of elements in this collection should be a multiple of {{ compared_value }}. + Кількість елементів у цій колекції повинна бути кратною {{ compared_value }}. + + + This value should satisfy at least one of the following constraints: + Значення повинно задовольняти хоча б одному з наступних обмежень: + + + Each element of this collection should satisfy its own set of constraints. + Кожен елемент цієї колекції повинен задовольняти власному набору обмежень. + + + This value is not a valid International Securities Identification Number (ISIN). + Це значення не є дійсним міжнародним ідентифікаційним номером цінних паперів (ISIN). + + + This value should be a valid expression. + Це значення має бути дійсним виразом. + + + This value is not a valid CSS color. + Це значення не є дійсним CSS кольором. + + + This value is not a valid CIDR notation. + Це значення не є дійсною CIDR нотаціею. + + + The value of the netmask should be between {{ min }} and {{ max }}. + Значення в мережевій масці має бути між {{ min }} та {{ max }}. + + + This form should not contain extra fields. + Ця форма не повинна містити додаткових полів. + + + The uploaded file was too large. Please try to upload a smaller file. + Завантажений файл занадто великий. Будь ласка, спробуйте завантажити файл меншого розміру. + + + The CSRF token is invalid. Please try to resubmit the form. + CSRF значення недопустиме. Будь ласка, спробуйте відправити форму знову. + + + This value is not a valid HTML5 color. + Це значення не є допустимим кольором HTML5. + + + Please enter a valid birthdate. + Будь ласка, введіть дійсну дату народження. + + + The selected choice is invalid. + Обраний варіант недійсний. + + + The collection is invalid. + Колекція недійсна. + + + Please select a valid color. + Будь ласка, оберіть дійсний колір. + + + Please select a valid country. + Будь ласка, оберіть дійсну країну. + + + Please select a valid currency. + Будь ласка, оберіть дійсну валюту. + + + Please choose a valid date interval. + Будь ласка, оберіть дійсний інтервал дати. + + + Please enter a valid date and time. + Будь ласка, введіть дійсну дату та час. + + + Please enter a valid date. + Будь ласка, введіть дійсну дату. + + + Please select a valid file. + Будь ласка, оберіть дійсний файл. + + + The hidden field is invalid. + Приховане поле недійсне. + + + Please enter an integer. + Будь ласка, введіть ціле число. + + + Please select a valid language. + Будь ласка, оберіть дійсну мову. + + + Please select a valid locale. + Будь ласка, оберіть дійсну локаль. + + + Please enter a valid money amount. + Будь ласка, введіть дійсну суму грошей. + + + Please enter a number. + Будь ласка, введіть число. + + + The password is invalid. + Пароль недійсний. + + + Please enter a percentage value. + Будь ласка, введіть процентне значення. + + + The values do not match. + Значення не збігаються. + + + Please enter a valid time. + Будь ласка, введіть дійсний час. + + + Please select a valid timezone. + Будь ласка, оберіть дійсний часовий пояс. + + + Please enter a valid URL. + Будь ласка, введіть дійсну URL-адресу. + + + Please enter a valid search term. + Будь ласка, введіть дійсний пошуковий термін. + + + Please provide a valid phone number. + Будь ласка, введіть дійсний номер телефону. + + + The checkbox has an invalid value. + Прапорець має недійсне значення. + + + Please enter a valid email address. + Будь ласка, введіть дійсну адресу електронної пошти. + + + Please select a valid option. + Будь ласка, оберіть дійсний варіант. + + + Please select a valid range. + Будь ласка, оберіть дійсний діапазон. + + + Please enter a valid week. + Будь ласка, введіть дійсний тиждень. + + +
+