Files
SnapOtter/packages/shared/src/i18n/uk.ts
T
SnapOtterandGitHub 5d36ac06d8 feat(analytics): build-time bake + telemetry depth (#336)
Bake PostHog + Sentry into the published Docker image (SNAPOTTER_ANALYTICS
build arg, codegen script). Delete entire consent system. Move event emission
to BullMQ worker. Add cross-tier identity stitching, Sentry performance
tracing on both tiers, frontend funnel events. Fix stateful regex bug.

86 files changed, 1593 insertions(+), 3747 deletions(-)
2026-06-24 11:05:39 +08:00

3462 lines
166 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import type { TranslationKeys } from "./en.js";
export const uk: TranslationKeys = {
common: {
upload: "Завантажити з комп'ютера",
process: "Обробити",
download: "Завантажити",
cancel: "Скасувати",
save: "Зберегти",
delete: "Видалити",
settings: "Налаштування",
search: "Пошук інструментів...",
dropFiles: "Перетягніть файли сюди або натисніть кнопку завантаження",
loading: "Завантаження...",
saving: "Збереження...",
error: "Сталася помилка",
confirm: "Підтвердити",
close: "Закрити",
back: "Назад",
next: "Далі",
clear: "Очистити",
copy: "Копіювати",
copied: "Скопійовано!",
noResults: "Нічого не знайдено",
showLess: "Показати менше",
showMore: "Показати ще {count}",
experimental: "Експериментальний",
enabled: "Увімкнено",
disabled: "Вимкнено",
rename: "Перейменувати",
edit: "Редагувати",
actions: "Дії",
create: "Створити",
or: "або",
goHome: "На головну",
somethingWentWrong: "Щось пішло не так",
unexpectedError: "Сталася неочікувана помилка.",
retry: "Повторити",
privacyPolicy: "Політика конфіденційності",
pageNotFound: "Сторінку не знайдено",
pageNotFoundDescription: "Сторінка, яку ви шукаєте, не існує або була переміщена.",
},
categories: {
essentials: "Основні",
adjustments: "Корекція",
enhance: "Покращення та AI",
watermark: "Водяний знак і накладання",
layout: "Компонування та композиція",
utilities: "Утиліти",
optimization: "Оптимізація",
format: "Формат і конвертація",
"video-edit": "Video",
"video-convert": "Конвертація",
"video-effects": "Ефекти та композиція",
"video-subtitles": "Субтитри",
"video-metadata": "Метадані",
"audio-edit": "Редагування",
"audio-convert": "Конвертація",
"audio-effects": "Ефекти та композиція",
"audio-metadata": "Метадані",
"pdf-organize": "Впорядкування",
"pdf-edit": "Редагування та анотації",
"pdf-security": "Безпека",
"pdf-optimize": "Оптимізація",
"doc-convert": "Конвертація",
data: "Файли",
archives: "Архіви",
},
modalities: {
image: "Зображення",
video: "Відео",
audio: "Аудіо",
documentsAndFiles: "PDF та файли",
},
tools: {
resize: {
name: "Зміна розміру",
description: "Зміна розміру в пікселях, відсотках або за шаблонами соцмереж",
},
crop: {
name: "Обрізка",
description: "Довільна обрізка, шаблони пропорцій, фігурна обрізка",
},
rotate: {
name: "Обертання та відображення",
description: "Обертання, відображення та вирівнювання зображень",
},
convert: { name: "Конвертація", description: "Конвертація між форматами зображень" },
compress: {
name: "Стиснення",
description: "Зменшення розміру файлу за якістю або цільовим розміром",
},
"optimize-for-web": {
name: "Оптимізація для вебу",
description:
"Оптимізація зображень для вебу з конвертацією формату, контролем якості та попереднім переглядом",
},
"strip-metadata": {
name: "Видалення метаданих",
description: "Видалення EXIF, GPS та інформації про камеру",
},
"edit-metadata": {
name: "Редагування метаданих",
description: "Редагування EXIF, IPTC, XMP, GPS, ключових слів і дат",
},
"bulk-rename": {
name: "Масове перейменування",
description: "Перейменування кількох файлів за шаблоном",
},
"image-to-pdf": {
name: "Зображення у PDF",
description: "Об'єднання зображень у документ PDF",
},
"pdf-to-image": {
name: "PDF у зображення",
description: "Конвертація сторінок PDF у зображення",
},
favicon: {
name: "Генератор Favicon",
description: "Генерація всіх розмірів Favicon та іконок застосунку",
},
"adjust-colors": {
name: "Налаштування кольорів",
description:
"Яскравість, контрастність, експозиція, насиченість, температура, різкість та ефекти",
},
sharpening: {
name: "Підвищення різкості",
description: "Адаптивна, маска нерізкості та високочастотна різкість із шаблонами",
},
"replace-color": {
name: "Заміна та інверсія кольору",
description: "Заміна окремих кольорів або інверсія",
},
"color-blindness": {
name: "Симуляція дальтонізму",
description: "Симуляція сприйняття зображень за різних типів порушення кольорового зору",
},
"remove-background": {
name: "Видалення фону",
description: "Видалення фону за допомогою AI",
},
upscale: {
name: "Збільшення зображення",
description: "AI-збільшення з надроздільністю",
},
"erase-object": {
name: "Видалення об'єктів",
description: "Видалення небажаних об'єктів за допомогою AI",
},
ocr: {
name: "OCR / Витягування тексту",
description: "Витягування тексту із зображень з точністю AI",
},
"ocr-pdf": {
name: "OCR PDF",
description: "Витягування тексту з PDF-документiв за допомогою OCR на базi ШI",
},
"blur-faces": {
name: "Розмиття облич / ПД",
description: "Автоматичне виявлення та розмиття облич і конфіденційних даних",
},
"enhance-faces": {
name: "Поліпшення облич",
description: "Відновлення та поліпшення облич за допомогою AI",
},
"smart-crop": {
name: "Розумна обрізка",
description: "Розумна обрізка за об'єктом, обличчям або обрізка полів",
},
"image-enhancement": {
name: "Поліпшення зображення",
description:
"Автоматичне поліпшення в один клік: розумна корекція експозиції, контрасту, кольору та різкості",
},
"noise-removal": {
name: "Видалення шуму",
description: "Видалення шуму та зернистості за допомогою AI",
},
"red-eye-removal": {
name: "Видалення червоних очей",
description: "Виявлення та корекція червоних очей на фото зі спалахом за допомогою AI",
},
"restore-photo": {
name: "Відновлення фотографій",
description: "Виправлення подряпин, розривів і пошкоджень на старих фото за допомогою AI",
},
"content-aware-resize": {
name: "Контентно-залежне масштабування",
description: "Інтелектуальна зміна розміру зі збереженням важливого вмісту",
},
"ai-canvas-expand": {
name: "AI-розширення полотна",
description: "Розширення полотна з AI-заповненням",
},
colorize: {
name: "AI-колоризація",
description:
"Перетворення чорно-білих фотографій на кольорові за допомогою AI-моделей глибокого навчання",
},
"passport-photo": {
name: "Фото на документи",
description:
"Створення фотографій для паспорта, візи та посвідчень з автоматичним виявленням обличчя",
},
"transcribe-audio": {
name: "Транскрипцiя аудiо",
description: "Перетворення мовлення на текст за допомогою ШI",
},
"auto-subtitles": {
name: "Автоматичнi субтитри",
description: "Генерацiя файлiв субтитрiв з аудiодорiжок вiдео",
},
"transparency-fixer": {
name: "Виправлення прозорості PNG",
description: "Виправлення хибної прозорості PNG в один клік",
},
"background-replace": {
name: "Заміна фону",
description: "Замінити фон зображення суцільним кольором",
},
"blur-background": {
name: "Розмиття фону",
description: "Розмити фон зберігаючи різкість об'єкта",
},
"watermark-text": {
name: "Текстовий водяний знак",
description: "Додавання текстового водяного знаку",
},
"watermark-image": {
name: "Графічний водяний знак",
description: "Накладання логотипу як водяного знаку",
},
"text-overlay": {
name: "Накладання тексту",
description: "Додавання стилізованого тексту на зображення",
},
compose: {
name: "Композиція зображень",
description: "Накладання зображень з налаштуванням позиції та прозорості",
},
"meme-generator": {
name: "Генератор Meme",
description:
"Створення мемів із популярними шаблонами або власними зображеннями. Класичний текст у стилі Impact з налаштовуваними шрифтами, кольорами та розташуванням.",
},
info: {
name: "Інформація про зображення",
description: "Перегляд усіх метаданих та властивостей зображення",
},
compare: {
name: "Порівняння зображень",
description: "Порівняння двох зображень пліч-о-пліч",
},
"find-duplicates": {
name: "Пошук дублікатів",
description: "Виявлення точних та приблизних дублікатів зображень",
},
"color-palette": {
name: "Кольорова палітра",
description: "Витягування домінуючих кольорів із зображення",
},
"qr-generate": {
name: "Генератор QR-кодів",
description:
"Генерація стилізованих QR-кодів з налаштовуваними кольорами, візерунками та логотипами",
},
"html-to-image": {
name: "HTML у зображення",
description: "Захоплення вебсторінок як якісних зображень",
},
"barcode-read": {
name: "Сканер штрихкодів",
description: "Сканування зображень на наявність QR-кодів, штрихкодів та 2D-кодів",
},
collage: {
name: "Колаж / Сітка",
description: "Об'єднання зображень у красиві колажі-сітки з 25+ шаблонами",
},
stitch: {
name: "Об'єднання / Склейка",
description: "З'єднання зображень поруч, стопкою або сіткою",
},
split: {
name: "Розділення зображення",
description:
"Розділення зображень на плитки сітки або за розміром у пікселях з попереднім переглядом",
},
border: {
name: "Рамка та обрамлення",
description:
"Додавання рамок, відступів, заокруглених кутів та тіней з шаблонами в один клік",
},
beautify: {
name: "Прикрашання знімку екрана",
description:
"Додавання градієнтних фонів, рамок пристроїв, тіней та розмірів для соцмереж до знімків екрана",
},
"circle-crop": {
name: "Кругове обрізання",
description: "Обрізати зображення до кола по центру з прозорими кутами",
},
duotone: {
name: "Дуотон",
description: "Двоколірний ефект дуотону з налаштуванням кольорів тіней та світла",
},
"image-pad": {
name: "Відступи зображення",
description:
"Додати відступи до цільового співвідношення сторін із суцільним кольоровим фоном",
},
pixelate: {
name: "Піксилізація",
description: "Ефект піксилізації на все зображення або окрему ділянку",
},
vignette: {
name: "Віньєтка",
description: "Додати ефект віньєтки з регульованою інтенсивністю та кольором",
},
"gif-webp": {
name: "Конвертер GIF/WebP",
description: "Конвертувати анімований GIF у WebP і навпаки зі збереженням усіх кадрів",
},
histogram: {
name: "Гістограма",
description: "Створити діаграму RGB-гістограми із зображення",
},
"lqip-placeholder": {
name: "LQIP-заповнювач",
description: "Створити мініатюрний заповнювач низької якості з base64 data URI",
},
"sprite-sheet": {
name: "Спрайт-аркуш",
description: "Об'єднати кілька зображень в один спрайт-аркуш",
},
"svg-to-raster": {
name: "SVG у растр",
description:
"Конвертація SVG у PNG, JPEG, WebP, AVIF, TIFF, GIF або HEIF з налаштовуваним масштабом та DPI",
},
vectorize: {
name: "Зображення у SVG",
description: "Конвертація зображень у масштабовану векторну графіку",
},
"gif-tools": {
name: "Інструменти GIF",
description:
"Зміна розміру, оптимізація, швидкості, реверс, витягування кадрів та обертання анімованих GIF",
},
"image-to-base64": {
name: "Зображення у Base64",
description: "Конвертація зображень у рядки Base64 для вбудовування у HTML, CSS та інше",
},
"barcode-generate": {
name: "Генератор штрихкодів",
description:
"Створити штрихкоди у форматах Code 128, EAN-13, UPC-A, Code 39, ITF-14 та Data Matrix",
},
"chart-maker": {
name: "Створення діаграм",
description: "Створити стовпчикові, лінійні або кругові діаграми з даних CSV або JSON",
},
"convert-video": {
name: "Конвертація відео",
description: "Конвертувати відео між форматами MP4, MOV та WebM",
},
"compress-video": {
name: "Стиснення відео",
description: "Зменшити розмір відеофайлу з контролем якості",
},
"trim-video": {
name: "Обрізка відео",
description: "Вирізати фрагмент із відео",
},
"mute-video": {
name: "Вимкнення звуку відео",
description: "Видалити аудіодоріжку з відео",
},
"video-to-gif": {
name: "Відео у GIF",
description: "Перетворити відеокліп на анімований GIF",
},
"resize-video": {
name: "Зміна розміру відео",
description: "Масштабувати відео до нової роздільності або стандартного розміру",
},
"crop-video": {
name: "Кадрування відео",
description: "Обрізати область відеокадру",
},
"rotate-video": {
name: "Обертання відео",
description: "Обернути або відзеркалити відео",
},
"change-fps": {
name: "Зміна FPS",
description: "Змінити частоту кадрів відео",
},
"video-color": {
name: "Колір відео",
description: "Налаштувати яскравість, контраст, насиченість та гамму",
},
"video-speed": {
name: "Швидкість відео",
description: "Прискорити або сповільнити відтворення відео",
},
"reverse-video": {
name: "Реверс відео",
description: "Відтворити відеокліп у зворотному порядку",
},
"video-loudnorm": {
name: "Нормалізація звуку",
description: "Нормалізувати гучність аудіо відео до ефірного стандарту",
},
"aspect-pad": {
name: "Відступи за пропорціями",
description: "Додати суцільні смуги для цільового співвідношення сторін",
},
"blur-pad": {
name: "Розмиті відступи",
description: "Заповнити смуги розмитою копією відео",
},
"watermark-video": {
name: "Водяний знак на відео",
description: "Накласти текстовий водяний знак на кадри відео",
},
"stabilize-video": {
name: "Стабілізація відео",
description: "Зменшити тремтіння камери двопрохідною стабілізацією",
},
"gif-to-video": {
name: "GIF у відео",
description: "Конвертувати анімований GIF у відео MP4 або WebM",
},
"video-to-webp": {
name: "Відео у WebP",
description: "Конвертувати відеокліп в анімоване зображення WebP",
},
"video-to-frames": {
name: "Відео у кадри",
description: "Витягти кадри з відео як ZIP-архів зображень",
},
"merge-videos": {
name: "Об'єднання відео",
description: "З'єднати кілька відеокліпів в один файл",
},
"replace-audio": {
name: "Заміна аудіо",
description: "Замінити аудіодоріжку відео іншим файлом",
},
"burn-subtitles": {
name: "Вшивання субтитрів",
description: "Назавжди накласти субтитри на кадри відео",
},
"embed-subtitles": {
name: "Вбудовування субтитрів",
description: "Додати доріжку субтитрів у контейнер відео",
},
"extract-subtitles": {
name: "Витягнення субтитрів",
description: "Витягти доріжку субтитрів з відео як файл SRT",
},
"images-to-video": {
name: "Зображення у відео",
description: "Перетворити набір зображень на слайд-шоу відео",
},
"video-metadata": {
name: "Очищення метаданих відео",
description: "Видалити метадані з відео та показати знайдене",
},
"convert-audio": {
name: "Конвертація аудіо",
description: "Конвертувати аудіо між форматами MP3, WAV, OGG та іншими",
},
"trim-audio": {
name: "Обрізка аудіо",
description: "Вирізати фрагмент з аудіофайлу",
},
"extract-audio": {
name: "Витягнення аудіо",
description: "Витягти аудіодоріжку з відео",
},
"volume-adjust": {
name: "Регулювання гучності",
description: "Збільшити або зменшити гучність аудіо на фіксоване значення",
},
"normalize-audio": {
name: "Нормалізація аудіо",
description: "Вирівняти гучність до ефірного стандарту",
},
"fade-audio": {
name: "Затухання аудіо",
description: "Додати ефекти наростання та затухання до аудіо",
},
"reverse-audio": {
name: "Реверс аудіо",
description: "Відтворити аудіо у зворотному порядку",
},
"audio-speed": {
name: "Швидкість аудіо",
description: "Прискорити або сповільнити відтворення аудіо",
},
"pitch-shift": {
name: "Зміна тону",
description: "Підвищити або понизити тон на півтони без зміни швидкості",
},
"audio-channels": {
name: "Аудіоканали",
description: "Конвертувати між моно, стерео або поміняти лівий та правий канали",
},
"silence-removal": {
name: "Видалення тиші",
description: "Видалити тихі ділянки з аудіо",
},
"noise-reduction": {
name: "Зменшення шуму",
description: "Зменшити фоновий шум за допомогою FFT-шумозаглушення",
},
"merge-audio": {
name: "Об'єднання аудіо",
description: "Об'єднати кілька аудіофайлів в один",
},
"split-audio": {
name: "Розділення аудіо",
description: "Розділити аудіо за часом, на рівні частини або за виявленням тиші",
},
"ringtone-maker": {
name: "Створення рингтону",
description: "Створити рингтон з будь-якого аудіофайлу",
},
"waveform-image": {
name: "Зображення хвильової форми",
description: "Створити візуалізацію хвильової форми як зображення PNG",
},
"audio-metadata": {
name: "Метадані аудіо",
description: "Переглянути, змінити або видалити теги аудіо (ID3)",
},
"merge-pdf": {
name: "Об'єднання PDF",
description: "Об'єднати кілька PDF в один",
},
"split-pdf": {
name: "Розділення PDF",
description: "Витягти сторінки або розділити на частини",
},
"compress-pdf": {
name: "Стиснення PDF",
description: "Зменшити розмір файлу PDF",
},
"rotate-pdf": {
name: "Обертання PDF",
description: "Обернути сторінки в PDF",
},
"convert-document": {
name: "Конвертація документа",
description: "Конвертувати між форматами Word, OpenDocument, RTF та простим текстом",
},
"convert-presentation": {
name: "Конвертація презентації",
description: "Конвертувати між форматами PowerPoint та OpenDocument для презентацій",
},
"convert-spreadsheet": {
name: "Конвертація таблиці",
description:
"Конвертувати між форматами Excel, OpenDocument та CSV. Для книг з кількома аркушами в CSV експортується перший аркуш.",
},
"excel-to-pdf": {
name: "Excel у PDF",
description:
"Конвертувати таблиці у PDF. Широкі аркуші можуть розбиватися на кілька сторінок.",
},
"word-to-pdf": {
name: "Word у PDF",
description: "Конвертувати документи Word у PDF",
},
"extract-pages": {
name: "Витягнення сторінок",
description: "Витягти вибрані сторінки в новий PDF",
},
"remove-pages": {
name: "Видалення сторінок",
description: "Видалити певні сторінки з PDF",
},
"organize-pdf": {
name: "Впорядкування PDF",
description: "Змінити порядок сторінок за вказаною послідовністю",
},
"protect-pdf": {
name: "Захист PDF",
description: "Додати захист паролем (шифрування AES-256)",
},
"unlock-pdf": {
name: "Розблокування PDF",
description: "Зняти захист паролем із PDF",
},
"repair-pdf": {
name: "Відновлення PDF",
description: "Спробувати відновити пошкоджений PDF",
},
"linearize-pdf": {
name: "Оптимізація PDF для вебу",
description: "Лінеаризувати PDF для швидкого перегляду в інтернеті",
},
"grayscale-pdf": {
name: "PDF у відтінках сірого",
description: "Перетворити всі кольори на відтінки сірого",
},
"pdfa-convert": {
name: "Конвертація у PDF/A",
description: "Конвертувати в архівний формат PDF/A-2",
},
"crop-pdf": {
name: "Обрізання PDF",
description: "Обрізати всі сторінки з однаковими полями",
},
"nup-pdf": {
name: "N-up PDF",
description: "Розмістити кілька сторінок на одному аркуші",
},
"booklet-pdf": {
name: "Буклет PDF",
description: "Розмістити сторінки для згортання в буклет",
},
"watermark-pdf": {
name: "Водяний знак PDF",
description: "Додати текстовий водяний знак на кожну сторінку",
},
"pdf-page-numbers": {
name: "Нумерація сторінок PDF",
description: "Додати номери сторінок на кожну сторінку",
},
"flatten-pdf": {
name: "Зведення PDF",
description: "Вбудувати форми та анотації у вміст сторінок",
},
"redact-pdf": {
name: "Затирання PDF",
description: "Назавжди видалити входження тексту (перевірене справжнє затирання)",
},
"pdf-to-text": {
name: "PDF у текст",
description: "Витягти простий текст з PDF",
},
"pdf-to-word": {
name: "PDF у Word",
description: "Найкраще для текстових PDF; скановані сторінки потребують OCR",
},
"pdf-metadata": {
name: "Метадані PDF",
description: "Читати та записувати метадані документа PDF",
},
"powerpoint-to-pdf": {
name: "PowerPoint у PDF",
description: "Конвертувати презентації у PDF",
},
"html-to-pdf": {
name: "HTML у PDF",
description: "Конвертувати HTML-файл у PDF. Зовнішні ресурси вимкнені для конфіденційності.",
},
"markdown-to-docx": {
name: "Markdown у Word",
description: "Конвертувати файл Markdown у документ Word (DOCX)",
},
"markdown-to-html": {
name: "Markdown у HTML",
description:
"Конвертувати файл Markdown у самостійну HTML-сторінку. Зовнішні зображення залишаються без змін.",
},
"markdown-to-pdf": {
name: "Markdown у PDF",
description:
"Конвертувати файл Markdown у стилізований PDF. Зовнішні ресурси вимкнені для конфіденційності.",
},
"epub-convert": {
name: "Конвертація EPUB",
description:
"Конвертувати EPUB у PDF, DOCX, HTML або Markdown. Зовнішні ресурси книги не завантажуються.",
},
"to-epub": {
name: "Конвертація в EPUB",
description: "Конвертувати файли Word, Markdown, HTML або простий текст в EPUB",
},
"csv-excel": {
name: "CSV у Excel",
description: "Конвертувати між CSV та Excel (XLSX) в обох напрямках",
},
"csv-json": {
name: "CSV у JSON",
description: "Конвертувати між CSV та JSON в обох напрямках",
},
"json-xml": {
name: "JSON у XML",
description: "Конвертувати між JSON та XML в обох напрямках",
},
"split-csv": {
name: "Розділення CSV",
description: "Розділити CSV на менші файли за кількістю рядків",
},
"merge-csvs": {
name: "Об'єднання CSV",
description: "Об'єднати кілька файлів CSV або TSV з відповідними стовпцями в один",
},
"yaml-json": {
name: "YAML / JSON",
description: "Конвертувати між YAML та JSON в обох напрямках",
},
"xml-to-csv": {
name: "XML у CSV",
description: "Витягти повторювані елементи з XML у таблицю CSV",
},
"create-zip": {
name: "Створення ZIP",
description: "Запакувати кілька файлів в один архів ZIP",
},
"extract-zip": {
name: "Розпакування ZIP",
description:
"Безпечно розпакувати файли з архіву ZIP із захистом від ZIP-бомб. Архіви з одним файлом повертають файл напряму.",
},
pipeline: {
name: "Конструктор Pipeline",
description: "Об'єднання кількох інструментів у робочий процес",
},
processing: { canceled: "Обробку скасовано" },
mediaPlayer: {
unsupported: "Ваш браузер не підтримує цей медіаформат.",
},
documentView: {
loadFailed: "Не вдалося завантажити документ.",
previousPage: "Попередня сторінка",
nextPage: "Наступна сторінка",
inputNotPreviewable: "Попередній перегляд недоступний для цього типу файлу",
},
},
toolSettings: {
compress: {
compressionMode: "Режим стиснення",
targetSize: "Цільовий розмір",
quality: "Якість",
smallestFile: "Найменший файл",
bestQuality: "Найкраща якість",
submit: "Стиснути",
submitBatch: "Стиснути ({count} файлів)",
progressLabel: "Стиснення",
original: "Оригінал: {size} KB",
processed: "Оброблено: {size} KB",
saved: "Зекономлено: {percent}%",
},
resize: {
customSize: "Власний розмір",
scale: "Масштаб",
presets: "Шаблони",
contentAware: "Контентно-залежний",
widthPx: "Ширина (px)",
heightPx: "Висота (px)",
fitMode: "Режим вписування",
cropToFit: "Обрізати за розміром",
fitInside: "Вписати всередину",
stretch: "Розтягнути",
limitToOriginalSize: "Обмежити оригінальним розміром",
limitToOriginalSizeHint:
"Якщо зображення вже менше за цільовий розмір, залишити як є замість збільшення",
scalePercent: "Масштаб (%)",
resizeToSquare: "Привести до квадрату",
protectFaces: "Захистити обличчя",
smoothing: "Згладжування",
edgeSensitivity: "Чутливість до країв",
submit: "Змінити розмір",
submitBatch: "Змінити розмір ({count} файлів)",
progressLabel: "Зміна розміру",
},
crop: {
aspectRatio: "Пропорції",
custom: "Власне",
positionAndSize: "Позиція та розмір",
ruleOfThirds: "Правило третин",
leftOffsetPx: "Відступ зліва (px)",
topOffsetPx: "Відступ зверху (px)",
submit: "Обрізати",
submitBatch: "Обрізати ({count} файлів)",
progressLabel: "Обрізка",
},
rotate: {
rotate: "Обернути",
angle: "Кут",
straighten: "Вирівняти",
flip: "Відобразити",
horizontal: "Горизонтально",
vertical: "Вертикально",
resetAllChanges: "Скинути всі зміни",
submit: "Застосувати",
submitBatch: "Застосувати ({count} файлів)",
progressLabel: "Застосування",
},
convert: {
targetFormat: "Цільовий формат",
sourceFormat: "Вихідний формат",
quality: "Якість",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"optimize-for-web": {
outputFormat: "Формат виводу",
quality: "Якість",
smallestFile: "Найменший файл",
bestQuality: "Найкраща якість",
maxDimensions: "Макс. розміри",
maxWidth: "Макс. ширина",
maxHeight: "Макс. висота",
stripMetadata: "Видалити метадані",
sizeComparison: "Порівняння розмірів",
optimized: "Оптимізовано:",
smaller: "На {percent}% менше",
larger: "На {percent}% більше",
submit: "Обробити й завантажити",
submitBatch: "Обробити й завантажити ({count} файлів)",
progressLabel: "Оптимізація",
},
"strip-metadata": {
currentMetadata: "Поточні метадані",
readingMetadata: "Читання метаданих...",
noMetadataFound: "Метадані у цьому зображенні не знайдено.",
removeAllMetadata: "Видалити всі метадані",
selectSpecific: "Або оберіть конкретні метадані:",
stripExif: "Видалити EXIF (інформація про камеру, дата, експозиція)",
stripGps: "Видалити GPS (дані про місцезнаходження)",
stripIcc: "Видалити ICC (колірний профіль)",
stripXmp: "Видалити XMP (розширювані метадані)",
locationFound: "місцезнаходження знайдено",
locationWarning:
"Це зображення містить Ваше точне місцезнаходження. Рекомендуємо видалити GPS-дані перед публікацією.",
metadataSections: "Знайдено {count} розділ метаданих",
metadataSectionsPlural: "Знайдено {count} розділів метаданих",
metadataRemoved: "Метадані видалено: {size} KB",
submit: "Видалити метадані",
progressLabel: "Видалення метаданих",
},
"edit-metadata": {
readingMetadata: "Читання метаданих...",
couldNotReadMetadata: "Не вдалося прочитати метадані. Поля будуть порожніми.",
basicInfo: "Основна інформація",
description: "Опис",
artist: "Автор",
copyright: "Авторські права",
software: "Програма",
iptc: "IPTC",
title: "Заголовок",
headline: "Підзаголовок",
city: "Місто",
stateProvince: "Область/Регіон",
country: "Країна",
dateAndTime: "Дата і час",
editDates: "Редагувати дати",
shiftAllDates: "Зсунути всі дати",
dateModified: "Дата зміни",
dateTaken: "Дата зйомки",
shiftHint: "Зсунути всі поля дат на вказаний інтервал (корисно для корекції часових поясів)",
direction: "Напрямок",
forward: "+ Уперед",
backward: "- Назад",
hoursMinutes: "Години:Хвилини",
locationGps: "Місцезнаходження (GPS)",
locationDataFound: "Дані про місцезнаходження знайдено",
noGpsData: "Немає GPS-даних. Додайте координати нижче.",
latitude: "Широта",
longitude: "Довгота",
altitudeMeters: "Висота (метри)",
removeAllGpsData: "Видалити всі GPS-дані",
keywords: "Ключові слова",
addKeywordPlaceholder: "Додайте ключове слово та натисніть Enter",
addToExisting: "Додати до наявних",
replaceAll: "Замінити всі",
allMetadata: "Усі метадані",
templates: "Шаблони",
templateNamePlaceholder: "Назва шаблону",
uploadPrompt: "Завантажте зображення для редагування метаданих.",
changes: "Змін: {count}:",
modified: "Змінено: {count}",
removed: "Видалено: {count}",
gpsCleared: "GPS видалено",
gpsAdded: "GPS додано",
datesShifted: "дати зсунуто",
submit: "Застосувати метадані",
progressLabel: "Запис метаданих",
},
"bulk-rename": {
pattern: "Шаблон",
patternHint: "Змінні: {{index}}, {{padded}}, {{original}}",
startIndex: "Початковий індекс",
preview: "Попередній перегляд",
andMore: "... і ще {count}",
renaming: "Перейменування...",
submit: "Перейменувати {count} файлів",
zipDownloaded: "ZIP-архів успішно завантажено",
},
"image-to-pdf": {
imageCount: "{count} зображення буде сконвертовано у {mode}",
imageCountPlural: "{count} зображень буде сконвертовано у {mode}",
singlePdfMode: "один PDF, одне зображення на сторінку",
separatePdfMode: "окремі PDF, по одному на зображення",
combineAllImages: "Об'єднати всі зображення в один PDF",
pageSize: "Розмір сторінки",
orientation: "Орієнтація",
portrait: "Книжкова",
landscape: "Альбомна",
margin: "Поля",
targetSizeLabel: "Цільовий розмір файлу (необов'язково)",
targetSizePlaceholder: "напр. 2",
targetSizeHint: "Залиште порожнім для максимальної якості",
targetSizeMet: "Цільовий розмір досягнуто",
targetSizeNotMet:
"Не вдалося досягти цільового розміру. Файл стиснуто до мінімальної якості.",
targetSizeTooSmall: "Цільовий розмір має бути не менше 50KB",
jpegQualityLabel: "Використана якість JPEG",
noImage: "Немає зображення",
submitCollate: "Створити PDF ({count} сторінок)",
submitSeparate: "Створити {count} PDF",
downloadPdf: "Завантажити PDF",
downloadZip: "Завантажити ZIP",
progressLabel: "Створення PDF",
uploadingImages: "Завантаження зображень...",
processingPages: "Обробка {count} сторінок...",
},
"pdf-to-image": {
dropPdf: "Перетягніть PDF сюди або натисніть для вибору",
readingPdf: "Читання PDF...",
pageCount: "{count} сторінка",
pageCountPlural: "{count} сторінок",
outputFormat: "Формат виводу",
quality: "Якість",
resolutionDpi: "Роздільність (DPI)",
dpiScreen: "Екран",
dpiStandard: "Стандарт",
dpiPrint: "Друк",
dpiHighQuality: "Висока якість",
colorMode: "Колірний режим",
colorModeColor: "Кольоровий",
colorModeGrayscale: "Відтінки сірого",
colorModeBw: "Ч/Б",
pages: "Сторінки",
allPages: "Усі сторінки",
pagesHint: "напр. 1-3, 5, 8-10 (у документі {count} сторінок)",
converting: "Конвертація...",
submit: "Конвертувати {count} сторінку",
submitPlural: "Конвертувати {count} сторінок",
downloadAllZip: "Завантажити все (ZIP)",
},
favicon: {
uploadHint:
"Завантажте квадратні зображення (рекомендовано 512x512 або більше) для генерації всіх розмірів Favicon та іконок застосунку.",
multipleHint: "Кожне з {count} зображень отримає власну теку у ZIP-архіві.",
generatedSizes: "Розміри, що генеруються (на зображення)",
plusManifest: "+ manifest.json + HTML-фрагмент",
submit: "Згенерувати Favicon ({count} зображення)",
submitPlural: "Згенерувати Favicon ({count} зображень)",
downloadZip: "Завантажити ZIP з Favicon",
progressLabel: "Генерація Favicon",
},
"adjust-colors": {
light: "Світло",
brightness: "Яскравість",
contrast: "Контраст",
exposure: "Експозиція",
color: "Колір",
saturation: "Насиченість",
temperature: "Температура",
temperatureHint: "холодна / тепла",
tint: "Відтінок",
tintHint: "зелений / пурпуровий",
hue: "Тон",
detail: "Деталізація",
sharpness: "Різкість",
effects: "Ефекти",
none: "немає",
grayscale: "відтінки сірого",
sepia: "сепія",
invert: "інверсія",
colorChannels: "Кольорові канали",
channelModified: "змінено",
red: "Червоний",
green: "Зелений",
blue: "Синій",
resetAll: "Скинути все",
submit: "Застосувати",
submitBatch: "Застосувати ({count} файлів)",
progressLabel: "Налаштування кольорів",
},
sharpening: {
method: "Метод",
adaptive: "Адаптивний",
unsharpMask: "Маска нерізкості",
highPass: "Високочастотний",
presets: "Шаблони",
textureAmount: "Кількість текстури",
amount: "Кількість",
strength: "Сила",
noiseReduction: "Придушення шуму",
off: "вимк.",
lightDenoise: "легке",
mediumDenoise: "середнє",
strongDenoise: "сильне",
advancedControls: "Розширені налаштування",
radius: "Радіус",
flatProtection: "Захист рівних ділянок",
detailThreshold: "Поріг деталізації",
haloLimitLight: "Обмеження ореолу (світлий)",
haloLimitDark: "Обмеження ореолу (темний)",
threshold: "Поріг",
kernelSize: "Розмір ядра",
submit: "Підвищити різкість",
submitBatch: "Підвищити різкість ({count} файлів)",
progressLabel: "Підвищення різкості",
},
"replace-color": {
sourceColor: "Вихідний колір (для заміни)",
targetColor: "Цільовий колір (замінник)",
makeTransparent: "Зробити прозорим",
tolerance: "Допуск",
exactMatch: "Точний збіг",
wideRange: "Широкий діапазон",
submit: "Замінити колір",
submitBatch: "Замінити колір ({count} файлів)",
progressLabel: "Заміна кольору",
},
"color-blindness": {
simulationType: "Тип симуляції",
redGreen: "Червоно-зелений",
blueYellow: "Синьо-жовтий",
monochromatic: "Монохроматичний",
submit: "Симулювати",
submitBatch: "Симулювати ({count} файлів)",
progressLabel: "Симуляція дальтонізму",
},
"remove-background": {
subject: "Об'єкт",
people: "Люди",
products: "Товари",
general: "Загальне",
passportIdPhoto: "Паспорт / Посвідчення",
quality: "Якість",
fast: "Швидко",
hd: "HD",
max: "Макс.",
ultra: "Ультра",
background: "Фон",
transparent: "Прозорий",
bgColor: "Колір",
gradient: "Градієнт",
image: "Зображення",
gradientDirection: "Напрямок",
chooseBackgroundImage: "Оберіть фонове зображення",
effectsSection: "Ефекти",
effectsActive: "активні",
blurBackground: "Розмиття фону",
intensity: "Інтенсивність",
addShadow: "Додати тінь",
opacity: "Непрозорість",
outputFormat: "Формат виводу",
edgeSmoothing: "Згладжування країв",
edgeSmoothingOff: "Вимкнено",
edgeSmoothingLight: "Легке",
edgeSmoothingMedium: "Середнє",
edgeSmoothingStrong: "Сильне",
colorDecontamination: "Очищення кольору",
rendering: "Рендеринг...",
submit: "Видалити фон",
submitBatch: "Видалити фон ({count} файлів)",
progressLabel: "Видалення фону",
},
upscale: {
scaleFactor: "Коефіцієнт масштабування",
quality: "Якість",
enhanceFaces: "Поліпшити обличчя",
noiseReduction: "Придушення шуму",
noiseReductionHint:
"Згладжує зернистість і шум. Вищі значення видаляють більше шуму, але можуть розмити деталі.",
outputFormat: "Формат виводу",
submit: "Збільшити {scale}x",
submitBatch: "Збільшити {scale}x ({count} файлів)",
progressLabel: "Збільшення зображення",
progressLabelBatch: "Збільшення {count} зображень",
},
"erase-object": {
brushSize: "Розмір пензля",
fine: "Тонкий",
wide: "Широкий",
undo: "Скасувати",
clear: "Очистити",
outputFormat: "Формат виводу",
quality: "Якість",
paintHint: "Замалюйте об'єкти, які хочете видалити. Натисніть Ctrl+Z для скасування.",
submit: "Видалити об'єкт",
submitBatch: "Видалити все ({count})",
progressLabel: "Видалення об'єкта",
},
ocr: {
quality: "Якість",
enhanceBeforeScanning: "Поліпшити перед скануванням",
enhanceHint:
"Автоматичне вирівнювання, поліпшення контрасту, видалення шуму та збільшення зображення перед скануванням для кращої точності.",
language: "Мова",
autoDetect: "Автовизначення",
extractedText: "Витягнутий текст",
noTextDetected: "Текст на цьому зображенні не виявлено",
characters: "{count} символів",
submit: "Витягнути текст",
submitBatch: "Витягнути текст ({count} файлів)",
progressLabel: "Витягування тексту",
},
"ocr-pdf": {
quality: "Якiсть",
language: "Мова",
autoDetect: "Автовизначення",
pages: "Сторiнки",
pagesPlaceholder: "всі, 1-3, 5",
pagesHint: "Введiть номери сторiнок або дiапазони (напр. 1-3, 5, 8-10). Макс. 50 сторiнок.",
submit: "Витягнути текст",
submitBatch: "Витягнути текст ({count} файлiв)",
progressLabel: "Витягування тексту з PDF",
},
"blur-faces": {
blurRadius: "Радіус розмиття",
blurLight: "Легке",
blurHeavy: "Сильне",
detectionSensitivity: "Чутливість виявлення",
moreFaces: "Більше облич",
fewerFaces: "Менше облич",
submit: "Розмити обличчя",
progressLabel: "Розмиття облич",
},
"enhance-faces": {
quality: "Якість",
enhancementStrength: "Сила поліпшення",
onlyCenterFace: "Лише центральне обличчя",
detectionSensitivity: "Чутливість виявлення",
submit: "Поліпшити обличчя",
submitBatch: "Поліпшити обличчя ({count} файлів)",
progressLabel: "Поліпшення облич",
},
"smart-crop": {
subjectFocus: "Фокус на об'єкті",
faceFocus: "Фокус на обличчі",
autoTrim: "Автообрізка",
customSize: "Власний розмір",
socialPresets: "Шаблони для соцмереж",
detectionStrategy: "Стратегія виявлення",
detectionStrategyHint:
"Увага знаходить найбільш візуально помітну ділянку. Ентропія знаходить ділянку з найбільшою деталізацією та інформацією.",
attention: "Увага",
entropy: "Ентропія",
padding: "Відступ",
paddingHint: "Додатковий простір навколо ділянки фокусу",
outputQuality: "Якість виводу",
outputQualityHint: "Для виводу у JPEG та WebP. PNG завжди без втрат.",
subjectDescription:
"Визначає найцікавішу ділянку за допомогою аналізу помітності та обрізає до цільового розміру.",
framing: "Кадрування",
facePadding: "Відступ навколо обличчя",
facePaddingHint: "Додатковий простір навколо виявлених облич",
fewerFalsePositives: "Менше хибних спрацювань",
faceDescription:
"Використовує AI-виявлення облич для правильного кадрування. За відсутності облич перемикається на фокус по об'єкту.",
trimTolerance: "Допуск",
trimDescription:
"Наскільки піксель рамки може відрізнятися від кольору краю і все ще бути обрізаним. Вище = агресивніше.",
padToSquare: "Доповнити до квадрату",
targetSizePx: "Цільовий розмір (px)",
padColor: "Колір заповнення",
trimHint:
'Видаляє однокольорові рамки навколо об\'єкта. Увімкніть "Доповнити до квадрату" для зображень, готових до e-commerce.',
submitSubject: "Розумна обрізка",
submitFace: "Обрізка по обличчю",
submitTrim: "Обрізати поля",
},
imageEnhancement: {
enhancementMode: "Режим поліпшення",
auto: "Авто",
portrait: "Портрет",
landscape: "Пейзаж",
lowLight: "Слабке освітлення",
food: "Їжа",
document: "Документ",
intensity: "Інтенсивність",
deepEnhance: "Глибоке поліпшення (AI)",
deepEnhanceDescription: "Видаляє шум та артефакти за допомогою AI",
deepEnhanceRequires: "Потрібен пакет збільшення й поліпшення",
analyzingImage: "Аналіз зображення...",
detectedIssues: "Виявлені проблеми",
imageLooksGood: "Зображення виглядає добре. Підлаштуйте за допомогою повзунка інтенсивності.",
issueUnderexposed: "Низька експозиція",
issueOverexposed: "Переекспоновано",
issueLowContrast: "Плоский контраст",
issueColorCast: "Колірний зсув",
issueDesaturated: "Знебарвлено",
issueSoftFocus: "М'який фокус",
issueNoisy: "Зашумлено",
submit: "Поліпшити",
submitDeep: "Глибоке поліпшення",
submitBatch: "Поліпшити ({count} файлів)",
submitDeepBatch: "Глибоке поліпшення ({count} файлів)",
progressLabel: "Поліпшення зображення",
progressLabelBatch: "Поліпшення {count} зображень",
},
"noise-removal": {
denoisingTier: "Рівень шумозаглушення",
quick: "Швидкий",
balanced: "Збалансований",
quality: "Якість",
maximum: "Максимальний",
quickDesc: "Швидкий, легкий",
balancedDesc: "Добра якість, помірна швидкість",
qualityDesc: "На основі AI, повільний",
maximumDesc: "Найкраща AI-модель, найповільніший",
strength: "Сила",
subtle: "Легка",
aggressive: "Агресивна",
detailPreservation: "Збереження деталей",
smooth: "Гладкі",
sharp: "Чіткі",
colorNoise: "Кольоровий шум",
heavy: "Сильний",
outputFormat: "Формат виводу",
gifAiWarning:
"AI-шумозаглушення для файлів GIF обробляє лише перший кадр. Для анімованих GIF використовуйте швидкий або збалансований рівень.",
submit: "Видалити шум",
submitBatch: "Видалити шум ({count} файлів)",
progressLabel: "Видалення шуму",
progressLabelBatch: "Видалення шуму з {count} зображень",
},
"red-eye-removal": {
sensitivity: "Чутливість",
strict: "Сувора",
aggressive: "Агресивна",
correctionStrength: "Сила корекції",
subtle: "Легка",
dark: "Темна",
outputFormat: "Формат виводу",
quality: "Якість",
submit: "Виправити червоні очі",
submitBatch: "Виправити червоні очі ({count} файлів)",
progressLabel: "Виправлення червоних очей",
progressLabelBatch: "Виправлення червоних очей на {count} зображеннях",
},
"restore-photo": {
scratchRemoval: "Видалення подряпин",
scratchRemovalDesc: "Виявлення та відновлення подряпин, розривів, плям",
faceEnhancement: "Поліпшення облич",
faceEnhancementDesc: "Відновлення пошкоджених облич за допомогою CodeFormer AI",
faceFidelity: "Вірність обличчя",
enhanced: "Поліпшене",
faithful: "Вірне",
noiseReduction: "Придушення шуму",
noiseReductionDesc: "Видалення зернистості та шуму зі старих фото",
denoiseStrength: "Сила шумозаглушення",
autoColorize: "Автоколоризація",
autoColorizeDesc: "Додавання кольору до чорно-білих фото за допомогою DDColor AI",
colorizeStrength: "Сила колоризації",
vivid: "Яскравий",
submit: "Відновити фото",
submitBatch: "Відновити фото ({count})",
progressLabel: "Відновлення фото",
progressLabelBatch: "Відновлення {count} фотографій",
},
"content-aware-resize": {
widthPx: "Ширина (px)",
heightPx: "Висота (px)",
resizeToSquare: "Привести до квадрату",
protectFaces: "Захистити обличчя",
protectFacesHint:
"Виявлення та захист ділянок облич від видалення швів за допомогою розпізнавання облич",
smoothing: "Згладжування",
edgeSensitivity: "Чутливість до країв",
submit: "Змінити розмір",
submitBatch: "Змінити розмір ({count} файлів)",
progressLabel: "Контентно-залежне масштабування",
},
"ai-canvas-expand": {
quality: "Якість",
fast: "Швидко",
balanced: "Збалансовано",
highQuality: "Висока якість",
fastDesc: "Швидкий попередній перегляд, менше проходів AI",
balancedDesc: "Добра якість, помірна швидкість",
highQualityDesc: "Найкращий результат, повільніше",
extendToAspectRatio: "Розширити до пропорцій",
extendByPixels: "Розширити на (пікселі)",
top: "Зверху",
right: "Справа",
bottom: "Знизу",
left: "Зліва",
newSize: "Новий розмір: {width} x {height}",
submit: "Розширити полотно",
submitBatch: "Розширити ({count} файлів)",
progressLabel: "Розширення полотна",
},
colorize: {
aiModel: "AI-модель",
fast: "Швидка",
fastDesc: "Швидкий результат",
balanced: "Збалансована",
balancedDesc: "Найкраща з доступних",
best: "Найкраща",
bestDesc: "Найвища якість",
colorIntensity: "Інтенсивність кольору",
grayscaleLabel: "Відтінки сірого",
subtleLabel: "Приглушений",
naturalLabel: "Натуральний",
vividLabel: "Яскравий",
intensityHint: "Нижчі значення дають більш приглушені, вінтажні кольори.",
strength: "Сила колоризації",
submit: "Колоризувати",
submitBatch: "Колоризувати ({count} файлів)",
progressLabel: "Колоризація",
progressLabelBatch: "Колоризація {count} зображень",
},
"passport-photo": {
country: "Країна",
searchCountries: "Пошук країн...",
noCountriesFound: "Країни не знайдено",
customDimensions: "Власні розміри",
documentType: "Тип документа",
dimensionsMm: "Розміри (мм)",
dpi: "DPI",
pixelsPerInch: "пікселів на дюйм",
backgroundColor: "Колір фону",
maxFileSize: "Макс. розмір файлу",
noLimit: "Без обмежень",
customKb: "Вказати у KB...",
uploadPortrait: "Завантажте портретне фото",
uploadHint:
"Перетягніть або завантажте зображення на ліву панель для попереднього перегляду фото на документи",
analyzingPhoto: "Аналіз фото",
detectingLandmarks: "Визначення орієнтирів обличчя та видалення фону...",
generatePassportPhoto: "Створити фото на документи",
generating: "Створення...",
downloadPhoto: "Завантажити фото",
faceCentered: "Обличчя по центру",
headLevel: "Голова рівно",
lookingStraight: "Погляд прямо",
faceSize: "Розмір обличчя",
whatYouSee: "Ви завантажуєте те, що бачите",
dragToAdjust: "Перетягніть для налаштування",
scrollToZoom: "Прокрутіть для масштабування",
photoGenerated: "Фото створено. Завантажте з лівої панелі.",
},
"transcribe-audio": {
language: "Мова",
autoDetect: "Автовизначення",
outputFormat: "Формат виводу",
plainText: "Звичайний текст",
submit: "Транскрибувати",
submitBatch: "Транскрибувати ({count} файлiв)",
progressLabel: "Транскрипцiя аудiо",
},
"auto-subtitles": {
language: "Мова",
autoDetect: "Автовизначення",
format: "Формат субтитрiв",
submit: "Створити субтитри",
submitBatch: "Створити субтитри ({count} файлiв)",
progressLabel: "Створення субтитрiв",
},
"transparency-fixer": {
description: "Завантажте PNG з хибною прозорістю, і ми виправимо його в один клік.",
removeWatermark: "Видалити водяний знак",
removeWatermarkHelp: "Виявлення та видалення напівпрозорих водяних знаків",
requiresEraser: "Потрібен пакет видалення об'єктів",
advanced: "Розширені",
defringe: "Видалення ореолу",
outputFormat: "Формат виводу",
submit: "Виправити прозорість",
submitBatch: "Виправити прозорість ({count} файлів)",
progressLabel: "Виправлення прозорості",
},
"background-replace": {
color: "Колір фону",
submit: "Замінити фон",
submitBatch: "Замінити фон ({count} файлів)",
progressLabel: "Заміна фону",
},
"blur-background": {
intensity: "Інтенсивність розмиття",
submit: "Розмити фон",
submitBatch: "Розмити фон ({count} файлів)",
progressLabel: "Розмиття фону",
},
"watermark-text": {
watermarkText: "Текст водяного знаку",
fontSize: "Розмір шрифту",
color: "Колір",
opacity: "Непрозорість",
position: "Позиція",
rotation: "Обертання",
center: "Центр",
topLeft: "Зверху ліворуч",
topRight: "Зверху праворуч",
bottomLeft: "Знизу ліворуч",
bottomRight: "Знизу праворуч",
tiled: "Плиткою",
submit: "Додати водяний знак",
submitBatch: "Додати водяний знак ({count} файлів)",
progressLabel: "Додавання водяного знаку",
},
"watermark-image": {
uploadWatermark: "Завантажити зображення водяного знаку",
position: "Позиція",
opacity: "Непрозорість",
scale: "Масштаб",
submit: "Застосувати водяний знак",
submitBatch: "Застосувати водяний знак ({count} файлів)",
},
"text-overlay": {
text: "Текст",
fontSize: "Розмір шрифту",
color: "Колір",
position: "Позиція",
top: "Зверху",
center: "Центр",
bottom: "Знизу",
backgroundBox: "Фоновий блок",
backgroundColor: "Колір фону",
shadow: "Тінь",
submit: "Додати текст",
submitBatch: "Додати текст ({count} файлів)",
progressLabel: "Додавання тексту",
download: "Завантажити",
defaultText: "Ваш текст тут",
},
compose: {
uploadOverlay: "Завантажити зображення для накладання",
xPosition: "Позиція X",
yPosition: "Позиція Y",
opacity: "Непрозорість",
blendMode: "Режим накладання",
submit: "Накласти",
},
"meme-generator": {
selectTemplate: "Оберіть шаблон з галереї або завантажте власне зображення для початку.",
chooseLayout: "Оберіть макет тексту для Вашого зображення.",
textContent: "Текст",
textStyle: "Стиль тексту",
font: "Шрифт",
fontSize: "Розмір шрифту",
textColor: "Колір тексту",
strokeColor: "Колір обведення",
allCaps: "ВСІ ВЕЛИКІ",
generate: "Створити Meme",
generating: "Створення...",
downloadMeme: "Завантажити Meme",
backToGallery: "Назад до галереї",
},
info: {
loadingInfo: "Завантаження інформації...",
filename: "Ім'я файлу",
fileSize: "Розмір файлу",
dimensions: "Розміри",
format: "Формат",
channels: "Канали",
colorSpace: "Колірний простір",
density: "Щільність",
bitDepth: "Глибина кольору",
progressive: "Прогресивний",
pages: "Сторінки",
hasAlpha: "Альфа-канал",
hasProfile: "Профіль",
hasExif: "EXIF",
hasIcc: "ICC",
hasXmp: "XMP",
readInfo: "Прочитати інформацію",
reading: "Зчитування...",
channelStats: "Статистика каналів",
yes: "Так",
no: "Ні",
na: "Н/Д",
failedToRead: "Не вдалося прочитати інформацію",
},
compare: {
uploadSecondImage: "Завантажити друге зображення",
similarity: "Подібність: {percent}%",
submit: "Порівняти",
downloadDiff: "Завантажити різницю",
},
"find-duplicates": {
preset: "Шаблон",
exact: "Точні",
similar: "Подібні",
loose: "Приблизні",
exactDesc: "Ідентичні копії, одне зображення у різних форматах.",
similarDesc: "Масштабовані, перестиснені або злегка відредаговані копії.",
looseDesc: "Візуально пов'язані зображення, незначні кадрування, різна експозиція.",
threshold: "Поріг",
submit: "Шукати дублікати",
scanning: "Сканування...",
},
"color-palette": {
submit: "Витягнути палітру",
extracting: "Витягування...",
dominantColors: "Домінуючі кольори",
clickToCopy: "Натисніть для копіювання",
},
"qr-generate": {
contentType: "Тип вмісту",
url: "URL",
text: "Текст",
wifi: "WiFi",
vcard: "vCard",
email: "Ел. пошта",
phone: "Телефон",
sms: "SMS",
styling: "Стилізація",
dotStyle: "Стиль точок",
cornerSquareStyle: "Стиль кутових квадратів",
cornerDotStyle: "Стиль кутових точок",
foregroundColor: "Колір переднього плану",
bgColor: "Колір фону",
logo: "Логотип",
downloadFormat: "Формат завантаження",
submit: "Згенерувати QR-код",
download: "Завантажити QR-код",
},
"html-to-image": {
modeUrl: "URL",
modeHtml: "HTML-файл",
htmlFile: "HTML-файл",
url: "URL",
urlPlaceholder: "https://snapotter.com",
format: "Формат виводу",
quality: "Якість",
devicePreset: "Пристрій",
viewportWidth: "Ширина",
viewportHeight: "Висота",
fullPage: "Вся сторінка",
submit: "Захопити",
download: "Завантажити знімок",
capturing: "Захоплення сторінки...",
errorTimeout: "Сторінка завантажувалась занадто довго",
errorBlocked: "Цей URL неможливо захопити",
errorUnavailable: "Сервіс знімків екрана недоступний",
errorFailed: "Не вдалося захопити сторінку",
placeholder: "Введіть URL і натисніть Захопити",
presets: {
desktop: "Комп'ютер",
tablet: "Планшет",
mobile: "Мобільний",
custom: "Довільний",
},
},
"barcode-read": {
submit: "Сканувати штрихкоди",
submitBatch: "Сканувати ({count} файлів)",
scanning: "Сканування...",
noBarcodesFound: "Штрихкоди не знайдено",
barcodesFound: "Знайдено {count} штрихкод",
barcodesFoundPlural: "Знайдено {count} штрихкодів",
},
collage: {
template: "Шаблон",
aspectRatio: "Пропорції",
gap: "Відступ",
cornerRadius: "Заокруглення кутів",
backgroundColor: "Колір фону",
outputFormat: "Формат виводу",
quality: "Якість",
submit: "Створити колаж",
downloadCollage: "Завантажити колаж",
},
stitch: {
direction: "Напрямок",
horizontal: "Горизонтально",
vertical: "Вертикально",
grid: "Сітка",
gridColumns: "Стовпці сітки",
resizeMode: "Режим масштабування",
fit: "Вписати",
original: "Оригінал",
stretchMode: "Розтягнути",
cropMode: "Обрізати",
alignment: "Вирівнювання",
start: "Початок",
center: "Центр",
end: "Кінець",
gap: "Відступ",
border: "Рамка",
cornerRadius: "Заокруглення кутів",
backgroundColor: "Колір фону",
outputFormat: "Формат виводу",
quality: "Якість",
submit: "Об'єднати зображення",
},
split: {
modeGrid: "Сітка",
modeTileSize: "Розмір плитки",
presets: "Шаблони",
columns: "Стовпці",
rows: "Рядки",
tileWidth: "Ширина плитки",
tileHeight: "Висота плитки",
outputFormat: "Формат виводу",
quality: "Якість",
submit: "Розділити зображення",
downloadAll: "Завантажити все (ZIP)",
},
border: {
presets: "Шаблони",
borderWidth: "Ширина рамки",
borderColor: "Колір рамки",
padding: "Відступ",
paddingColor: "Колір відступу",
cornerRadius: "Заокруглення кутів",
shadow: "Тінь",
shadowBlur: "Розмиття тіні",
shadowOffsetX: "Зсув тіні X",
shadowOffsetY: "Зсув тіні Y",
shadowColor: "Колір тіні",
shadowOpacity: "Непрозорість тіні",
submit: "Додати рамку",
submitBatch: "Додати рамку ({count} файлів)",
progressLabel: "Додавання рамки",
},
beautify: {
preset: "Шаблон",
backgroundType: "Тип фону",
solidColor: "Суцільний колір",
linearGradient: "Лінійний градієнт",
radialGradient: "Радіальний градієнт",
customImage: "Власне зображення",
gradientAngle: "Кут градієнта",
padding: "Відступ",
borderRadius: "Заокруглення кутів",
shadowPreset: "Шаблон тіні",
deviceFrame: "Рамка пристрою",
submit: "Прикрасити",
submitBatch: "Прикрасити ({count} файлів)",
progressLabel: "Прикрашання знімку екрана",
},
"circle-crop": {
submit: "Кругове обрізання",
submitBatch: "Кругове обрізання ({count} файлів)",
progressLabel: "Обрізання по колу",
},
duotone: {
shadow: "Колір тіні",
highlight: "Колір світла",
submit: "Застосувати двотон",
submitBatch: "Застосувати двотон ({count} файлів)",
progressLabel: "Застосування двотону",
},
"image-pad": {
target: "Цільове співвідношення",
color: "Колір фону",
submit: "Додати поля",
submitBatch: "Додати поля ({count} файлів)",
progressLabel: "Додавання полів",
},
pixelate: {
blockSize: "Розмір блоку",
submit: "Пікселізувати",
submitBatch: "Пікселізувати ({count} файлів)",
progressLabel: "Пікселізація",
},
vignette: {
strength: "Інтенсивність",
color: "Колір віньєтки",
submit: "Застосувати віньєтку",
submitBatch: "Застосувати віньєтку ({count} файлів)",
progressLabel: "Застосування віньєтки",
},
"gif-webp": {
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація анімації",
},
histogram: {
submit: "Створити гістограму",
submitBatch: "Створити гістограму ({count} файлів)",
progressLabel: "Створення гістограми",
},
"lqip-placeholder": {
width: "Ширина",
blur: "Розмиття",
submit: "Створити заповнювач",
submitBatch: "Створити заповнювач ({count} файлів)",
progressLabel: "Створення заповнювача",
},
"sprite-sheet": {
columns: "Стовпці",
padding: "Відступ",
background: "Колір фону",
submit: "Створити спрайт-лист",
submitBatch: "Створити спрайт-лист",
progressLabel: "Створення спрайт-листа",
},
"svg-to-raster": {
outputFormat: "Формат виводу",
sizing: "Розмір",
scaleMode: "Масштаб",
customMode: "Власний",
scalePresets: "Шаблони масштабу",
dpiPresets: "Шаблони DPI",
customWidth: "Ширина (px)",
customHeight: "Висота (px)",
background: "Фон",
bgTransparent: "Прозорий",
bgColor: "Колір",
quality: "Якість",
submit: "Конвертувати SVG",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація SVG",
},
vectorize: {
preset: "Шаблон",
logo: "Логотип",
illustration: "Ілюстрація",
photo: "Фотографія",
sketch: "Ескіз",
customPreset: "Власний",
colorMode: "Колірний режим",
bw: "Ч/Б",
colorModeColor: "Кольоровий",
threshold: "Поріг",
colorPrecision: "Точність кольору",
layerDifference: "Різниця шарів",
filterSpeckle: "Фільтр артефактів",
pathMode: "Режим контурів",
cornerThreshold: "Поріг кутів",
invertColors: "Інвертувати кольори",
submit: "Векторизувати",
submitBatch: "Векторизувати ({count} файлів)",
progressLabel: "Векторизація",
},
"gif-tools": {
mode: "Режим",
resize: "Змінити розмір",
optimize: "Оптимізувати",
speed: "Швидкість",
reverse: "Реверс",
extract: "Витягнути",
rotateMode: "Обернути",
pixel: "Пікселі",
percentage: "Відсотки",
colors: "Кольори",
dither: "Дизеринг",
effort: "Зусилля",
speedFactor: "Коефіцієнт швидкості",
loopControl: "Керування циклом",
infinite: "Нескінченний",
once: "Один раз",
customLoop: "Власний",
loopCount: "Кількість циклів",
extractSingle: "Один кадр",
extractRange: "Діапазон",
extractAll: "Усі",
frameNumber: "Номер кадру",
frameStart: "Початковий кадр",
frameEnd: "Кінцевий кадр",
extractFormat: "Формат",
submit: "Обробити GIF",
submitBatch: "Обробити ({count} файлів)",
progressLabel: "Обробка GIF",
},
"image-to-base64": {
outputFormat: "Формат виводу",
keepOriginal: "Зберегти оригінал",
quality: "Якість",
maxWidth: "Макс. ширина",
maxHeight: "Макс. висота",
submit: "Конвертувати у Base64",
submitBatch: "Конвертувати ({count} файлів)",
copyBase64: "Копіювати Base64",
copyDataUri: "Копіювати Data URI",
copyImgTag: "Копіювати <img>",
copyCssUrl: "Копіювати CSS url()",
},
"barcode-generate": {
text: "Текст",
type: "Тип штрихкоду",
scale: "Масштаб",
includeText: "Додати текст",
submit: "Створити штрихкод",
download: "Завантажити штрихкод",
},
"chart-maker": {
kind: "Тип діаграми",
title: "Заголовок",
width: "Ширина",
height: "Висота",
submit: "Створити діаграму",
submitBatch: "Створити діаграму ({count} файлів)",
progressLabel: "Створення діаграми",
},
"enhance-faces-standalone": {
model: "Модель",
fast: "Швидка",
balanced: "Збалансована",
best: "Найкраща",
},
"convert-video": {
format: "Вихідний формат",
quality: "Якість",
high: "Висока",
balanced: "Збалансована",
small: "Найменший",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"compress-video": {
quality: "Стиснення",
light: "Легке",
balanced: "Збалансоване",
strong: "Сильне",
resolution: "Роздільна здатність",
original: "Оригінальна",
submit: "Стиснути",
submitBatch: "Стиснути ({count} файлів)",
progressLabel: "Стиснення",
},
"trim-video": {
start: "Початок (секунди)",
end: "Кінець (секунди)",
precise: "Покадрова точність (перекодування)",
submit: "Обрізати",
submitBatch: "Обрізати ({count} файлів)",
progressLabel: "Обрізання",
},
"mute-video": {
submit: "Видалити аудіо",
submitBatch: "Видалити аудіо ({count} файлів)",
progressLabel: "Вимкнення звуку",
},
"video-to-gif": {
fps: "Кадрів на секунду",
width: "Ширина (px)",
start: "Початок (секунди)",
duration: "Тривалість (секунди)",
submit: "Створити GIF",
submitBatch: "Створити GIF ({count} файлів)",
progressLabel: "Створення GIF",
},
"resize-video": {
preset: "Шаблон",
width: "Ширина (px)",
height: "Висота (px)",
hint: "Залиште одне поле порожнім, щоб зберегти пропорції",
submit: "Змінити розмір",
submitBatch: "Змінити розмір ({count} файлів)",
progressLabel: "Зміна розміру",
},
"crop-video": {
width: "Ширина (px)",
height: "Висота (px)",
x: "Зміщення X",
y: "Зміщення Y",
submit: "Обрізати",
submitBatch: "Обрізати ({count} файлів)",
progressLabel: "Обрізання",
},
"rotate-video": {
transform: "Трансформація",
cw90: "Повернути на 90° за годинниковою стрілкою",
ccw90: "Повернути на 90° проти годинникової стрілки",
rotate180: "Повернути на 180°",
hflip: "Відобразити горизонтально",
vflip: "Відобразити вертикально",
submit: "Повернути",
submitBatch: "Повернути ({count} файлів)",
progressLabel: "Обертання",
},
"change-fps": {
fps: "Кадрів на секунду",
submit: "Змінити FPS",
submitBatch: "Змінити FPS ({count} файлів)",
progressLabel: "Зміна FPS",
},
"video-color": {
brightness: "Яскравість",
contrast: "Контраст",
saturation: "Насиченість",
gamma: "Гамма",
submit: "Застосувати",
submitBatch: "Застосувати ({count} файлів)",
progressLabel: "Налаштування кольору",
},
"video-speed": {
factor: "Множник швидкості",
keepPitch: "Зберегти оригінальну висоту тону",
submit: "Змінити швидкість",
submitBatch: "Змінити швидкість ({count} файлів)",
progressLabel: "Зміна швидкості",
},
"reverse-video": {
hint: "Обмежено кліпами до 5 хвилин",
submit: "Реверс",
submitBatch: "Реверс ({count} файлів)",
progressLabel: "Реверсування",
},
"video-loudnorm": {
hint: "Нормалізує аудіо до стандарту мовлення EBU R128",
submit: "Нормалізувати",
submitBatch: "Нормалізувати ({count} файлів)",
progressLabel: "Нормалізація",
},
"aspect-pad": {
target: "Цільове співвідношення",
color: "Колір фону",
colorHint: "HEX-колір, напр. #000000",
submit: "Додати поля",
submitBatch: "Додати поля ({count} файлів)",
progressLabel: "Додавання полів",
},
"blur-pad": {
target: "Цільове співвідношення",
blur: "Сила розмиття",
submit: "Додати поля",
submitBatch: "Додати поля ({count} файлів)",
progressLabel: "Додавання полів",
},
"watermark-video": {
text: "Текст водяного знаку",
position: "Позиція",
fontSize: "Розмір шрифту",
opacity: "Прозорість",
color: "Колір",
colorHint: "HEX-колір, напр. #ffffff",
submit: "Водяний знак",
submitBatch: "Водяний знак ({count} файлів)",
progressLabel: "Нанесення водяного знаку",
},
"stabilize-video": {
smoothing: "Згладжування",
hint: "Виконує два проходи і працює довше за більшість інструментів",
submit: "Стабілізувати",
submitBatch: "Стабілізувати ({count} файлів)",
progressLabel: "Стабілізація",
},
"gif-to-video": {
format: "Вихідний формат",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"video-to-webp": {
fps: "Кадрів на секунду",
width: "Ширина (px)",
quality: "Якість",
loop: "Зациклити анімацію",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"video-to-frames": {
mode: "Режим видобування",
modeAll: "Усі кадри",
modeNth: "Кожен N-й кадр",
modeTimestamps: "Конкретні мітки часу",
n: "Брати кожен N-й кадр",
timestamps: "Мітки часу (секунди)",
timestampsHint: "Через кому, напр. 0.5, 2, 4.5",
format: "Формат зображення",
submit: "Видобути кадри",
submitBatch: "Видобути кадри ({count} файлів)",
progressLabel: "Видобування кадрів",
},
"merge-videos": {
hint: "Файли об'єднуються в порядку завантаження",
submit: "Об'єднати",
submitBatch: "Об'єднати ({count} файлів)",
progressLabel: "Об'єднання",
},
"replace-audio": {
hint: "Спочатку завантажте відео, потім аудіо",
submit: "Замінити аудіо",
submitBatch: "Замінити аудіо ({count} файлів)",
progressLabel: "Заміна аудіо",
},
"burn-subtitles": {
fontSize: "Розмір шрифту",
hint: "Завантажте відео та файл субтитрів (.srt або .vtt)",
submit: "Вшити субтитри",
submitBatch: "Вшити субтитри ({count} файлів)",
progressLabel: "Вшивання субтитрів",
},
"embed-subtitles": {
language: "Код мови",
languageHint: "Трилітерний код ISO 639-2, напр. eng, spa, fra",
submit: "Вбудувати субтитри",
submitBatch: "Вбудувати субтитри ({count} файлів)",
progressLabel: "Вбудовування субтитрів",
},
"extract-subtitles": {
submit: "Видобути субтитри",
submitBatch: "Видобути субтитри ({count} файлів)",
progressLabel: "Видобування субтитрів",
},
"images-to-video": {
secondsPerImage: "Секунд на зображення",
resolution: "Роздільна здатність",
fps: "Кадрів на секунду",
submit: "Створити відео",
submitBatch: "Створити відео ({count} файлів)",
progressLabel: "Створення слайд-шоу",
},
"video-metadata": {
hint: "Звіт метаданих з'явиться у результаті",
submit: "Видалити метадані",
submitBatch: "Видалити метадані ({count} файлів)",
progressLabel: "Видалення метаданих",
},
"convert-audio": {
format: "Вихідний формат",
bitrate: "Бітрейт (kbps)",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"trim-audio": {
start: "Початок (секунди)",
end: "Кінець (секунди)",
submit: "Обрізати",
submitBatch: "Обрізати ({count} файлів)",
progressLabel: "Обрізання",
},
"extract-audio": {
format: "Вихідний формат",
submit: "Видобути",
submitBatch: "Видобути ({count} файлів)",
progressLabel: "Видобування",
},
"volume-adjust": {
"gain-db": "Підсилення (dB)",
submit: "Налаштувати гучність",
submitBatch: "Налаштувати гучність ({count} файлів)",
progressLabel: "Налаштування гучності",
},
"normalize-audio": {
hint: "Нормалізація гучності EBU R128",
submit: "Нормалізувати",
submitBatch: "Нормалізувати ({count} файлів)",
progressLabel: "Нормалізація",
},
"fade-audio": {
"fade-in-s": "Наростання (секунди)",
"fade-out-s": "Затухання (секунди)",
submit: "Застосувати затухання",
submitBatch: "Застосувати затухання ({count} файлів)",
progressLabel: "Застосування затухання",
},
"reverse-audio": {
submit: "Реверс",
submitBatch: "Реверс ({count} файлів)",
progressLabel: "Реверсування",
},
"audio-speed": {
factor: "Коефіцієнт швидкості",
submit: "Змінити швидкість",
submitBatch: "Змінити швидкість ({count} файлів)",
progressLabel: "Зміна швидкості",
},
"pitch-shift": {
semitones: "Напівтони",
hint: "0 напівтонів не дозволено",
submit: "Змінити тон",
submitBatch: "Змінити тон ({count} файлів)",
progressLabel: "Зміна тону",
},
"audio-channels": {
mode: "Режим каналів",
"stereo-to-mono": "Стерео в моно",
"mono-to-stereo": "Моно в стерео",
swap: "Поміняти лівий/правий",
submit: "Конвертувати канали",
submitBatch: "Конвертувати канали ({count} файлів)",
progressLabel: "Конвертація каналів",
},
"silence-removal": {
"threshold-db": "Поріг тиші (dB)",
"min-silence-s": "Мінімальна тривалість тиші (секунди)",
submit: "Видалити тишу",
submitBatch: "Видалити тишу ({count} файлів)",
progressLabel: "Видалення тиші",
},
"noise-reduction": {
strength: "Інтенсивність",
light: "Легка",
medium: "Середня",
strong: "Сильна",
submit: "Зменшити шум",
submitBatch: "Зменшити шум ({count} файлів)",
progressLabel: "Зменшення шуму",
},
"merge-audio": {
format: "Вихідний формат",
mp3: "MP3",
wav: "WAV",
flac: "FLAC",
m4a: "M4A",
"order-hint": "Файли буде об'єднано в порядку завантаження",
submit: "Об'єднати аудіо",
submitBatch: "Об'єднати аудіо ({count} файлів)",
progressLabel: "Об'єднання аудіо",
},
"split-audio": {
mode: "Режим розділення",
time: "За часом",
parts: "Рівні частини",
silence: "За тишею",
"segment-s": "Довжина сегмента (секунди)",
"num-parts": "Кількість частин",
"threshold-db": "Поріг тиші (dB)",
"min-silence-s": "Мінімальна тривалість тиші (секунди)",
submit: "Розділити аудіо",
submitBatch: "Розділити аудіо ({count} файлів)",
progressLabel: "Розділення аудіо",
},
"ringtone-maker": {
"start-s": "Час початку (секунди)",
"duration-s": "Тривалість (секунди)",
"max-hint": "Максимум 30 секунд",
submit: "Створити рингтон",
submitBatch: "Створити рингтон ({count} файлів)",
progressLabel: "Створення рингтону",
},
"waveform-image": {
width: "Ширина (px)",
height: "Висота (px)",
color: "Колір хвильової форми",
submit: "Створити хвильову форму",
submitBatch: "Створити хвильову форму ({count} файлів)",
progressLabel: "Створення хвильової форми",
},
"audio-metadata": {
strip: "Видалити всі метадані",
title: "Назва",
artist: "Виконавець",
album: "Альбом",
submit: "Застосувати метадані",
submitBatch: "Застосувати метадані ({count} файлів)",
progressLabel: "Застосування метаданих",
},
"merge-pdf": {
addFiles: "Додайте PDF для об'єднання",
needTwo: "Потрібно щонайменше два PDF",
orderHint: "{count} PDF буде об'єднано в цьому порядку",
submit: "Об'єднати",
submitBatch: "Об'єднати ({count} файлів)",
progressLabel: "Об'єднання",
},
"split-pdf": {
mode: "Режим розділення",
range: "Діапазон сторінок",
rangeHint: "напр. 1-3, 5, 7-z",
everyN: "Сторінок на частину",
submit: "Розділити",
submitBatch: "Розділити ({count} файлів)",
progressLabel: "Розділення",
},
"compress-pdf": {
preset: "Шаблон якості",
screen: "Екран (найменший)",
ebook: "Електронна книга (збалансований)",
printer: "Друк (найкраща якість)",
submit: "Стиснути",
submitBatch: "Стиснути ({count} файлів)",
progressLabel: "Стиснення",
},
"rotate-pdf": {
angle: "Кут повороту",
range: "Діапазон сторінок",
rangeHint: "напр. 1-3, 5, 1-z (усі сторінки)",
submit: "Повернути",
submitBatch: "Повернути ({count} файлів)",
progressLabel: "Поворот",
},
"convert-document": {
format: "Вихідний формат",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"convert-presentation": {
format: "Вихідний формат",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"convert-spreadsheet": {
format: "Вихідний формат",
hint: "Книги з кількома аркушами експортують перший аркуш у CSV.",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"excel-to-pdf": {
submit: "Конвертувати у PDF",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"powerpoint-to-pdf": {
submit: "Конвертувати у PDF",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"word-to-pdf": {
submit: "Конвертувати у PDF",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"extract-pages": {
range: "Діапазон сторінок",
rangeHint: "напр. 1-3, 5, 7-z",
submit: "Витягти",
submitBatch: "Витягти ({count} файлів)",
progressLabel: "Витягнення",
},
"remove-pages": {
pages: "Сторінки для видалення",
pagesHint: "напр. 2, 4-6, z (остання сторінка)",
submit: "Видалити",
submitBatch: "Видалити ({count} файлів)",
progressLabel: "Видалення",
},
"organize-pdf": {
order: "Порядок сторінок",
orderHint: "напр. 3,1,2 або 1-z (без змін)",
submit: "Переупорядкувати",
submitBatch: "Переупорядкувати ({count} файлів)",
progressLabel: "Переупорядкування",
},
"protect-pdf": {
userPassword: "Пароль користувача",
ownerPassword: "Пароль власника (необов'язково)",
ownerPasswordHint: "За замовчуванням використовується пароль користувача",
submit: "Захистити",
submitBatch: "Захистити ({count} файлів)",
progressLabel: "Шифрування",
},
"unlock-pdf": {
password: "Пароль",
submit: "Розблокувати",
submitBatch: "Розблокувати ({count} файлів)",
progressLabel: "Дешифрування",
},
"repair-pdf": {
submit: "Відновити",
submitBatch: "Відновити ({count} файлів)",
progressLabel: "Відновлення",
},
"linearize-pdf": {
submit: "Оптимізувати",
submitBatch: "Оптимізувати ({count} файлів)",
progressLabel: "Лінеаризація",
},
"grayscale-pdf": {
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"pdfa-convert": {
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"crop-pdf": {
margin: "Поля (пункти)",
submit: "Обрізати",
submitBatch: "Обрізати ({count} файлів)",
progressLabel: "Обрізання",
},
"nup-pdf": {
perSheet: "Сторінок на аркуш",
submit: "Розмістити",
submitBatch: "Розмістити ({count} файлів)",
progressLabel: "Розміщення",
},
"booklet-pdf": {
perSheet: "Сторінок на аркуш",
submit: "Створити буклет",
submitBatch: "Створити буклет ({count} файлів)",
progressLabel: "Створення буклета",
},
"watermark-pdf": {
text: "Текст водяного знака",
position: "Позиція",
fontSize: "Розмір шрифту",
opacity: "Непрозорість",
rotation: "Обертання",
submit: "Додати водяний знак",
submitBatch: "Додати водяний знак ({count} файлів)",
progressLabel: "Додавання водяного знака",
},
"pdf-page-numbers": {
position: "Позиція",
fontSize: "Розмір шрифту",
submit: "Додати номери",
submitBatch: "Додати номери ({count} файлів)",
progressLabel: "Нумерація",
},
"flatten-pdf": {
submit: "Звести",
submitBatch: "Звести ({count} файлів)",
progressLabel: "Зведення",
},
"redact-pdf": {
terms: "Терміни для зачернення",
termsHint: "Один термін на рядок (макс. 50)",
caseSensitive: "Враховувати регістр",
submit: "Зачернити",
submitBatch: "Зачернити ({count} файлів)",
progressLabel: "Зачернення",
},
"pdf-to-text": {
submit: "Витягти текст",
submitBatch: "Витягти текст ({count} файлів)",
progressLabel: "Витягнення",
},
"pdf-to-word": {
hint: "Найкраще для текстових PDF; скановані сторінки потребують OCR",
submit: "Конвертувати у Word",
submitBatch: "Конвертувати у Word ({count} файлів)",
progressLabel: "Конвертація",
},
"pdf-metadata": {
title: "Назва",
author: "Автор",
subject: "Тема",
keywords: "Ключові слова",
submit: "Встановити метадані",
submitBatch: "Встановити метадані ({count} файлів)",
progressLabel: "Встановлення метаданих",
},
"html-to-pdf": {
hint: "Віддалені ресурси вимкнено для конфіденційності.",
submit: "Конвертувати у PDF",
submitBatch: "Конвертувати у PDF ({count} файлів)",
progressLabel: "Конвертація",
},
"markdown-to-docx": {
submit: "Конвертувати у DOCX",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"markdown-to-html": {
hint: "Віддалені зображення у вихідному файлі залишаються без змін.",
submit: "Конвертувати у HTML",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"markdown-to-pdf": {
hint: "Віддалені ресурси вимкнено для конфіденційності.",
submit: "Конвертувати у PDF",
submitBatch: "Конвертувати у PDF ({count} файлів)",
progressLabel: "Конвертація",
},
"epub-convert": {
format: "Вихідний формат",
hint: "Віддалені ресурси з книги не завантажуються.",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"to-epub": {
submit: "Конвертувати у EPUB",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"csv-excel": {
sheet: "Номер аркуша",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"csv-json": {
pretty: "Форматований вивід",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"json-xml": {
pretty: "Форматований вивід",
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"split-csv": {
rowsPerFile: "Рядків на файл",
keepHeader: "Зберігати заголовок у кожному файлі",
submit: "Розділити",
submitBatch: "Розділити ({count} файлів)",
progressLabel: "Розділення",
},
"merge-csvs": {
submit: "Об'єднати",
submitBatch: "Об'єднати ({count} файлів)",
progressLabel: "Об'єднання",
},
"yaml-json": {
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"xml-to-csv": {
submit: "Конвертувати",
submitBatch: "Конвертувати ({count} файлів)",
progressLabel: "Конвертація",
},
"create-zip": {
submit: "Створити ZIP",
submitBatch: "Створити ZIP ({count} файлів)",
progressLabel: "Архівація",
},
"extract-zip": {
submit: "Витягти",
submitBatch: "Витягти ({count} файлів)",
progressLabel: "Витягнення",
},
},
urlImport: {
title: "Імпорт за URL",
placeholder: "Вставте URL зображень, по одному на рядок...",
importButton: "Імпортувати URL",
addButton: "Додати {count} файлів",
adding: "Додавання...",
retryButton: "Повторити",
cancelButton: "Скасувати",
readyCount: "{count} готово",
failedStatus: "Помилка",
},
comparison: {
original: "Оригінал",
processed: "Оброблено",
before: "До",
after: "Після",
savings: "Економія",
},
toolPage: {
emptyPrompt: "Перетягніть або завантажте зображення для початку",
filesCount: "Файли ({count})",
addMore: "+ Додати ще",
clearAll: "Очистити все",
acceptDescription: "Лише файли {exts}",
notFound: "Інструмент не знайдено",
configureAndGenerate: "Налаштуйте параметри та запустіть генерацію.",
processingFailed: "Обробка цього файлу не вдалася",
conversionComplete: "Конвертацію завершено",
cannotPreviewDownload:
"Файли {type} неможливо переглянути у браузері. Скористайтеся кнопкою завантаження для збереження файлу.",
generatingPreview: "Генерація попереднього перегляду...",
cannotPreviewWillProcess:
"Файли {ext} неможливо переглянути у браузері. Інструмент все одно обробить цей файл.",
previousImage: "Попередній файл",
nextImage: "Наступний файл",
imageCounter: "{current} / {total}",
settingsLabel: "Налаштування",
downloadAllZip: "Завантажити все (ZIP)",
hideSettings: "Сховати налаштування",
imageArea: "Область попереднього перегляду",
disabledByAdmin: "Цей інструмент було вимкнено адміністратором",
browseOtherTools: "Переглянути інші інструменти",
privacyNote: "Файли обробляються на вашому сервері й ніколи не залишають вашу мережу",
applyAndDownload: "Застосувати та завантажити",
andMore: "та ще {count}",
importFromFiles: "Імпортувати з файлів",
saveToFiles: "Зберегти у файли",
savedToFiles: "Збережено у файли",
adjustSettings: "Налаштувати параметри",
startOver: "Почати спочатку з новим файлом",
newFile: "Новий файл",
previewUnavailable: "Попередній перегляд буде доступний після обробки",
generatePreview: "Створити попередній перегляд",
previewFailed: "Не вдалося створити попередній перегляд",
backToTools: "Назад до інструментів",
original: "Оригінал",
processed: "Оброблено",
saved: "Збережено",
noChange: "без змін",
download: "Завантажити",
settingsSaved: "Ваші налаштування збережено.",
tryAgain: "Спробувати знову",
tryDifferentFile: "Спробувати інший файл",
batchPartialSuccess: "{success} з {total} оброблено. {failed} не вдалося.",
dataResultsHint:
"Результати показано вище. Використовуйте кнопку копіювання на панелі результатів.",
downloadAsFile: "Завантажити як файл",
downloadAll: "Завантажити все",
downloadFiles: "Завантажити {count} файлів",
audioDecodeUnsupported: "Цей аудіоформат не можна переглянути у браузері",
},
homePage: {
generatingPreview: "Генерація попереднього перегляду...",
loadingPreview: "Завантаження попереднього перегляду...",
changeFile: "Змінити файл",
quickActions: "Швидкі дії",
allTools: "Усі інструменти",
searchPlaceholder: "Пошук серед {count} інструментів...",
recent: "Нещодавні",
popular: "Популярні",
browseByCategory: "Перегляд за категорією",
gettingStarted: "Початок роботи",
noToolsMatch: 'Інструментів за запитом "{query}" не знайдено',
clearSearch: "Очистити пошук",
all: "Усі",
documents: "PDF",
data: "Файли",
pdf: "PDF",
files: "Файли",
toolCount: "{count} інструментів",
heading: "Інструменти SnapOtter",
},
fullscreenGrid: {
searchPlaceholder: "Пошук інструментів...",
hideDetails: "Сховати деталі",
showDetails: "Показати деталі",
switchToSidebar: "Перемкнути на бічну панель",
sidebarButton: "Бічна панель",
noToolsFound: "Інструменти не знайдено",
tryDifferent: "Спробуйте інший пошуковий запит",
},
editor: {
menu: {
file: {
label: "Файл",
new: "Новий",
open: "Відкрити",
save: "Зберегти",
exportAs: "Експортувати як...",
quickExportPng: "Швидкий експорт у PNG",
close: "Закрити",
},
edit: {
label: "Редагування",
undo: "Скасувати",
redo: "Повторити",
cut: "Вирізати",
copy: "Копіювати",
copyMerged: "Копіювати зведене",
paste: "Вставити",
pasteInPlace: "Вставити на місце",
delete: "Видалити",
freeTransform: "Вільна трансформація",
transform: {
label: "Трансформація",
scale: "Масштаб",
rotate: "Обертання",
skew: "Нахил",
flipHorizontal: "Відобразити горизонтально",
flipVertical: "Відобразити вертикально",
},
},
image: {
label: "Зображення",
imageSize: "Розмір зображення...",
canvasSize: "Розмір полотна...",
rotation: {
label: "Обертання зображення",
cw90: "90° за годинниковою",
ccw90: "90° проти годинникової",
r180: "180°",
flipHorizontal: "Відобразити горизонтально",
flipVertical: "Відобразити вертикально",
},
trim: "Обрізати",
adjustments: {
label: "Корекція",
brightnessContrast: "Яскравість/Контраст",
hueSaturation: "Тон/Насиченість",
colorBalance: "Колірний баланс",
levels: "Рівні",
curves: "Криві",
},
},
layer: {
label: "Шар",
newLayer: "Новий шар",
duplicateLayer: "Дублювати шар",
deleteLayer: "Видалити шар",
arrange: {
label: "Розташування",
bringToFront: "На передній план",
bringForward: "Перемістити вперед",
sendBackward: "Перемістити назад",
sendToBack: "На задній план",
},
mergeDown: "Об'єднати з нижнім",
flattenImage: "Зведення зображення",
},
select: {
label: "Виділення",
all: "Виділити все",
deselect: "Зняти виділення",
inverse: "Інвертувати",
colorRange: "Колірний діапазон...",
},
filter: {
label: "Фільтр",
blur: {
label: "Розмиття",
gaussian: "Розмиття за Гаусом",
motion: "Розмиття руху",
radial: "Радіальне розмиття",
surface: "Поверхневе розмиття",
},
sharpen: {
label: "Різкість",
sharpen: "Підвищити різкість",
unsharpMask: "Маска нерізкості",
},
noise: {
label: "Шум",
addNoise: "Додати шум",
reduceNoise: "Зменшити шум",
},
pixelate: {
label: "Піксельизація",
pixelate: "Піксельизація",
mosaic: "Мозаїка",
},
stylize: {
label: "Стилізація",
emboss: "Тиснення",
solarize: "Соляризація",
posterize: "Постеризація",
},
grayscale: "Відтінки сірого",
sepia: "Сепія",
invert: "Інверсія",
},
view: {
label: "Вигляд",
zoomIn: "Збільшити",
zoomOut: "Зменшити",
fitOnScreen: "Вмістити на екрані",
actualPixels: "Реальний розмір",
rulers: "Лінійки",
grid: "Сітка",
guides: "Напрямні",
snap: "Прив'язка",
panels: "Панелі",
},
},
menuBar: {
backTitle: "Назад до SnapOtter",
},
welcome: {
ariaLabel: "Зона перетягування зображень",
heading: "Редактор зображень",
dropDescription: "Перетягніть зображення сюди для початку роботи",
openImageButton: "Відкрити зображення",
newDocumentButton: "Новий документ",
pasteHint: "Або вставте з буфера обміну (Ctrl+V)",
},
mobile: {
heading: "Рекомендовано настільний ПК",
description:
"Редактор зображень найкраще працює на великих екранах. Переключіться на пристрій з більшим дисплеєм для повноцінного редагування.",
},
errors: {
serverDecodeFailed: "Помилка декодування на сервері",
},
shapes: {
shape: "Фігура",
fill: "Заливка",
stroke: "Обведення",
strokeWidth: "Ширина",
cornerRadius: "Радіус",
sides: "Сторони",
points: "Точки",
dashStyle: "Штрих",
solid: "Суцільна",
dashed: "Штрихова",
dotted: "Пунктирна",
none: "Немає",
opacity: "Прозорість",
rectangle: "Прямокутник",
ellipse: "Еліпс",
line: "Лінія",
arrow: "Стрілка",
polygon: "Багатокутник",
star: "Зірка",
},
},
settings: {
heading: "Налаштування",
nav: {
general: "Загальні",
systemSettings: "Системні налаштування",
security: "Безпека",
people: "Користувачі",
teams: "Команди",
roles: "Ролі",
auditLog: "Журнал аудиту",
usage: "Використання",
apiKeys: "API-ключі",
aiFeatures: "AI-функції",
tools: "Інструменти",
about: "Про програму",
},
general: {
heading: "Загальні",
description: "Налаштування користувача та параметри відображення.",
loading: "Завантаження...",
logOut: "Вийти",
defaultToolViewLabel: "Вигляд інструментів за замовчуванням",
defaultToolViewDescription: "Як інструменти відображаються на головній сторінці",
sidebarOption: "Бічна панель",
fullscreenGridOption: "Повноекранна сітка",
appVersionLabel: "Версія застосунку",
appVersionDescription: "Поточна версія SnapOtter",
saveButton: "Зберегти налаштування",
saveSuccess: "Налаштування збережено.",
saveFailed: "Не вдалося зберегти налаштування.",
},
system: {
heading: "Системні налаштування",
description: "Серверні налаштування та обмеження.",
fileUploadLimitLabel: "Обмеження завантаження файлів (MB)",
fileUploadLimitDescription: "Максимальний розмір файлу за завантаження",
defaultThemeLabel: "Тема за замовчуванням",
defaultThemeDescription: "Тема, що застосовується для нових сесій",
lightOption: "Світла",
darkOption: "Темна",
systemOption: "Системна",
languageLabel: "Мова",
languageDescription: "Мова інтерфейсу",
loginAttemptLimitLabel: "Ліміт спроб входу",
loginAttemptLimitDescription: "Максимум невдалих спроб входу на хвилину до блокування",
fileManagementHeading: "Керування файлами",
maxFileAgeLabel: "Макс. час зберігання файлів (години)",
maxFileAgeDescription: "Як довго оброблені файли зберігаються до автоматичного очищення",
startupCleanupLabel: "Очищення при запуску",
startupCleanupDescription: "Видаляти старі тимчасові файли при запуску сервера",
saveButton: "Зберегти налаштування",
saveSuccess: "Налаштування збережено.",
saveFailed: "Не вдалося зберегти налаштування.",
limitsAndResources: "Обмеження та ресурси",
maxFileSize: "Макс. розмір файлу",
maxBatchSize: "Макс. розмір пакета",
concurrentJobs: "Паралельні завдання",
workerThreads: "Робочі потоки",
maxPipelineSteps: "Макс. кроків Pipeline",
processingTimeout: "Тайм-аут обробки",
rateLimitPerMin: "Ліміт запитів (запитів/хв)",
unlimited: "Без обмежень",
auto: "Авто",
envOverride: "Задано змінною середовища",
maxCanvasPixels: "Макс. пікселів полотна",
maxSvgSize: "Макс. розмір SVG",
maxSplitGrid: "Макс. сітка розділення",
maxPdfPages: "Макс. сторінок PDF",
sessionDuration: "Тривалість сесії",
supportBundleButton: "Завантажити пакет підтримки",
supportBundleDescription:
"Завантажте діагностичний архів із відредагованими конфігурацією, журналами та даними завдань для усунення неполадок.",
supportBundleFailed: "Не вдалося завантажити пакет підтримки.",
},
security: {
heading: "Безпека",
description: "Налаштування пароля та автентифікації.",
changePasswordHeading: "Зміна пароля",
currentPasswordPlaceholder: "Поточний пароль",
newPasswordPlaceholder: "Новий пароль",
confirmPasswordPlaceholder: "Підтвердіть новий пароль",
passwordsMismatch: "Паролі не збігаються",
passwordTooShort: "Пароль має містити щонайменше 4 символи",
changeSuccess: "Пароль успішно змінено",
changeFailed: "Не вдалося змінити пароль",
currentPasswordIncorrect: "Поточний пароль невірний",
changePasswordButton: "Змінити пароль",
loginAttemptLimitNote: "Ліміти спроб входу можна налаштувати в Системних налаштуваннях.",
adminHeading: "Налаштування безпеки адміністратора",
adminDescription:
"Корпоративні налаштування політики безпеки. Застосовуються до всіх користувачів.",
sessionIdleTimeout: "Тайм-аут неактивної сесії (хвилини)",
sessionIdleTimeoutDesc: "Автоматичний вихід із неактивних сесій. 0 = вимкнено.",
maxSessionsPerUser: "Максимум сесій на користувача",
maxSessionsPerUserDesc: "Обмеження одночасних сесій на користувача. 0 = необмежено.",
mfaPolicy: "Політика MFA",
mfaPolicyDesc: "Вимагати багатофакторну автентифікацію для користувачів.",
mfaPolicyOptional: "Необов'язково",
mfaPolicyAdminsOnly: "Обов'язково для адміністраторів",
mfaPolicyRequired: "Обов'язково для всіх користувачів",
ssoEnforcement: "Примусове SSO",
ssoEnforcementDesc: "Вимагати вхід через SSO для всіх звичайних користувачів.",
ssoBreakGlassUsername: "Ім'я аварійного адміністратора",
ssoBreakGlassUsernameDesc:
"Цей адміністратор може входити з локальними обліковими даними, коли SSO примусове.",
passwordMinLength: "Мінімальна довжина пароля",
passwordMinLengthDesc: "Мінімальна кількість символів для паролів.",
passwordRequireUppercase: "Вимагати великі літери",
passwordRequireUppercaseDesc: "Вимагати принаймні одну велику літеру.",
passwordRequireNumber: "Вимагати цифру",
passwordRequireNumberDesc: "Вимагати принаймні одну цифру.",
passwordRequireSpecial: "Вимагати спеціальний символ",
passwordRequireSpecialDesc: "Вимагати принаймні один спеціальний символ.",
passwordPolicyHeading: "Політика паролів",
securitySettingsSaved: "Налаштування безпеки збережено",
securitySettingsFailed: "Не вдалося зберегти налаштування безпеки",
},
people: {
heading: "Користувачі",
description: "Керування учасниками робочого простору та їхніми правами",
userCount: "{count} користувач",
userCountPlural: "{count} користувачів",
searchPlaceholder: "Пошук учасників...",
addMembersButton: "Додати учасників",
newMemberHeading: "Новий учасник",
usernamePlaceholder: "Ім'я користувача",
passwordPlaceholder: "Пароль",
roleUserOption: "Користувач",
roleEditorOption: "Редактор",
roleAdminOption: "Адміністратор",
roleUserDescription: "Базовий доступ до інструментів",
roleEditorDescription: "Усі файли та Pipeline",
roleAdminDescription: "Повний доступ",
noDescription: "Без опису",
defaultTeamOption: "За замовчуванням",
createButton: "Створити",
cancelButton: "Скасувати",
createSuccess: "Користувача успішно створено",
createFailed: "Не вдалося створити користувача",
userLimitReached: "Досягнуто ліміту користувачів (макс. {max})",
deleteConfirm: 'Видалити користувача "{username}"? Цю дію не можна скасувати.',
deleteSuccess: 'Користувача "{username}" видалено',
deleteFailed: "Не вдалося видалити користувача",
editHeading: "Редагування {username}",
updateSuccess: "Користувача оновлено",
updateFailed: "Не вдалося оновити користувача",
cannotRemoveOwnAdmin: "Неможливо зняти з себе роль адміністратора",
resetPasswordHeading: "Скидання пароля для {username}",
newPasswordLabel: "Новий пароль (мін. 8 символів)",
resetPasswordButton: "Скинути пароль",
resetPasswordWarning: "Це анулює всі сесії та API-ключі цього користувача.",
resetSuccess: "Пароль успішно скинуто",
resetFailed: "Не вдалося скинути пароль",
tableHeaderUser: "Користувач",
tableHeaderRole: "Роль",
tableHeaderTeam: "Команда",
noSearchResults: "Учасників не знайдено.",
noUsersFound: "Користувачів не знайдено.",
authBadgeLocalOidc: "Локальний + OIDC",
authBadgeOidc: "OIDC",
editRoleTeamAction: "Змінити роль / команду",
resetPasswordAction: "Скинути пароль",
deleteUserAction: "Видалити користувача",
saveButton: "Зберегти",
copyPasswordButton: "Скопіювати пароль",
passwordCopied: "Скопійовано!",
copyPasswordWarning:
"Скопіюйте цей пароль зараз. Після створення користувача ви не зможете його побачити.",
},
teams: {
heading: "Команди",
description: "Організуйте учасників у команди для зручного керування.",
createButton: "Створити нову команду",
newTeamHeading: "Нова команда",
teamNamePlaceholder: "Назва команди",
createSubmitButton: "Створити",
cancelButton: "Скасувати",
createSuccess: "Команду успішно створено",
createFailed: "Не вдалося створити команду",
duplicateTeamError: "Команда з такою назвою вже існує",
renameSuccess: "Команду перейменовано",
renameFailed: "Не вдалося перейменувати команду",
deleteConfirm: 'Видалити команду "{name}"? Учасники будуть відкріплені.',
deleteSuccess: 'Команду "{name}" видалено',
deleteFailed: "Не вдалося видалити команду",
cannotDeleteDefault: "Неможливо видалити команду за замовчуванням або команду з учасниками",
tableHeaderTeamName: "Назва команди",
tableHeaderMembers: "Учасники",
emptyState: "Команд не знайдено.",
renameSaveButton: "Зберегти",
renameCancelButton: "Скасувати",
renameAction: "Перейменувати",
deleteAction: "Видалити",
totalMembers: "Усього учасників",
nameRequired: "Назва команди обов'язкова",
nameTooLong: "Назва команди не може перевищувати 50 символів",
duplicateName: "Команда з такою назвою вже існує",
teamStorageQuota: "Квота сховища (MB)",
teamStorageQuotaDesc:
"Максимальний обсяг сховища для цієї команди в MB. Залиште порожнім для необмеженого обсягу.",
teamRetentionHours: "Зберігання (години)",
teamRetentionHoursDesc:
"Час зберігання файлів обробки для цієї команди. Залиште порожнім для глобального значення.",
quotaSaved: "Налаштування команди збережено",
},
roles: {
heading: "Ролі",
description: "Керування ролями та їхніми правами. Вбудовані ролі не можна змінювати.",
createButton: "Створити власну роль",
newRoleHeading: "Нова роль",
roleNamePlaceholder: "Назва ролі",
descriptionPlaceholder: "Опис (необов'язково)",
permissionsLabel: "Права доступу",
createSubmitButton: "Створити",
cancelButton: "Скасувати",
createSuccess: "Роль успішно створено",
createFailed: "Не вдалося створити роль",
duplicateRoleError: "Роль з такою назвою вже існує",
editHeading: "Редагування ролі: {name}",
editSaveButton: "Зберегти",
editCancelButton: "Скасувати",
updateSuccess: "Роль оновлено",
updateFailed: "Не вдалося оновити роль",
deleteConfirm: 'Видалити роль "{name}"? {count} користувачу(ам) потрібне перепризначення.',
deleteConfirmSimple: 'Видалити роль "{name}"?',
deleteSuccess: 'Роль "{name}" видалено',
deleteFailed: "Не вдалося видалити роль",
emptyState: "Ролей не знайдено.",
builtInBadge: "Вбудована",
userCountBadge: "{count} користувач(ів)",
editRoleTitle: "Редагувати роль",
deleteRoleTitle: "Видалити роль",
permGroup: {
tools: "Інструменти",
files: "Файли",
apiKeys: "API-ключі",
pipelines: "Pipeline",
settings: "Налаштування",
users: "Користувачі",
teams: "Команди",
system: "Система",
},
},
auditLog: {
heading: "Журнал аудиту",
allActionsFilter: "Усі дії",
emptyState: "Записів у журналі аудиту немає.",
tableHeaderTime: "Час",
tableHeaderUser: "Користувач",
tableHeaderAction: "Дія",
tableHeaderTarget: "Об'єкт",
paginationInfo: "Сторінка {page} з {totalPages} ({total} записів)",
previousButton: "Попередня",
nextButton: "Наступна",
justNow: "щойно",
minutesAgo: "{mins} хв тому",
hoursAgo: "{hrs} год тому",
daysAgo: "{days} дн. тому",
},
usage: {
heading: "Використання",
description: "Локальна статистика використання завдань та сховища файлів.",
periodLabel: "Період",
days7: "7 днів",
days30: "30 днів",
days90: "90 днів",
jobsPerDayHeading: "Завдань на день",
topToolsHeading: "Найпопулярніші інструменти",
perUserHeading: "Обсяг на користувача",
durationsHeading: "Перцентилі тривалості",
noData: "Немає даних за цей період.",
dayColumn: "День",
totalColumn: "Всього",
completedColumn: "Завершено",
failedColumn: "Невдалі",
toolColumn: "Інструмент",
runsColumn: "Запуски",
userColumn: "Користувач",
bytesInColumn: "Вхідні байти",
poolColumn: "Пул",
p50Column: "p50",
p95Column: "p95",
storageHeading: "Сховище бібліотеки",
storageFiles: "{count} файлів",
unknownUser: "(невідомий)",
storageByTeam: "Сховище за командою",
teamColumn: "Команда",
storageColumn: "Сховище",
usersColumn: "Користувачі",
},
apiKeys: {
heading: "API-ключі",
description: "Керування API-ключами для програмного доступу до SnapOtter.",
keyNamePlaceholder: "Назва ключа (необов'язково)",
generateButton: "Згенерувати API-ключ",
removeScopingLabel: "Прибрати обмеження прав",
restrictPermissionsLabel: "Обмежити права (необов'язково)",
expiresLabel: "Спливає:",
clearButton: "Очистити",
copyTitle: "Копіювати",
keyWarning: "Збережіть цей ключ у безпечному місці. Він більше не буде показаний.",
existingKeysHeading: "Наявні ключі",
createdPrefix: "Створено {date}",
scopedPrefix: "Область:",
expiresPrefix: "Спливає {date}",
deleteKeyTitle: "Видалити ключ",
deleteConfirm:
"Видалити цей API-ключ? Усі інтеграції, що його використовують, перестануть працювати.",
emptyState: "API-ключів поки немає. Згенеруйте один для початку.",
},
tools: {
heading: "Інструменти",
description:
"Увімкнення та вимкнення окремих інструментів. Вимкнені інструменти приховані від усіх користувачів.",
restartBanner: "Для застосування змін потрібен перезапуск.",
searchPlaceholder: "Пошук інструментів...",
noSearchResults: "Інструменти не знайдено.",
loadFailedError:
"Не вдалося завантажити налаштування інструментів. Збереження вимкнено для запобігання втраті даних.",
saveButton: "Зберегти налаштування інструментів",
disabledCount: "Вимкнено {count} інструмент(ів)",
},
experimental: {
label: "Увімкнути експериментальні інструменти",
description:
"Показати інструменти, що перебувають у розробці. Вони можуть працювати нестабільно.",
},
fileManagement: {
title: "Керування файлами",
maxAge: "Макс. час зберігання файлів (години)",
maxAgeDescription: "Як довго оброблені файли зберігаються до автоматичного очищення",
startupCleanup: "Очищення при запуску",
startupCleanupDescription: "Видаляти старі тимчасові файли при запуску сервера",
},
dataRetention: {
title: "Зберігання даних",
fileMaxAgeHours: "Зберігання файлів обробки (години)",
fileMaxAgeHoursDesc: "Як довго зберігати завантажені та оброблені файли. Типово: 72 години.",
jobsRetentionDays: "Зберігання записів завдань (дні)",
jobsRetentionDaysDesc: "Як довго зберігати метадані завдань. 0 = назавжди. Типово: 30 днів.",
auditRetentionDays: "Зберігання журналу аудиту (дні)",
auditRetentionDaysDesc:
"Як довго зберігати записи журналу аудиту. 0 = назавжди. Типово: назавжди.",
},
aiFeatures: {
title: "AI-функції",
description: "Керування пакетами AI-моделей для розширеної обробки файлів.",
installAll: "Встановити все",
diskUsage: "Використання диска: {size}",
installed: "Встановлено",
notInstalled: "Не встановлено",
queued: "У черзі",
install: "Встановити",
repair: "Відновити",
uninstall: "Видалити",
installing: "Встановлення...",
importBundle: "Імпортувати пакет",
importDescription: "Завантажте архів пакету .tar.gz, експортований з іншої інсталяції.",
importButton: "Імпортувати з файлу",
importing: "Імпортування...",
importSuccess: "Пакет успішно імпортовано.",
importError: "Не вдалося імпортувати пакет: {error}",
},
about: {
heading: "Про програму",
appName: "SnapOtter",
appDescription:
"Самостійно розміщуваний набір інструментів для обробки файлів з пріоритетом конфіденційності, 157 інструментів. Конвертація, стиснення, редагування, транскрипція, OCR та автоматизація робочих процесів із зображеннями, відео, аудіо, документами та даними без надсилання даних у хмару.",
versionLabel: "Версія:",
linksHeading: "Посилання",
githubLink: "Репозиторій GitHub",
docsLink: "Документація",
apiRefLink: "Довідник API (Swagger)",
licenseLabel: "Ліцензія:",
licenseDescription:
"SnapOtter — програмне забезпечення з відкритим кодом, ліцензоване за GNU Affero General Public License v3 (AGPLv3).",
},
},
auth: {
login: "Вхід",
logout: "Вийти",
username: "Ім'я користувача",
password: "Пароль",
loginButton: "Увійти",
loggingIn: "Вхід...",
invalidCredentials: "Невірне ім'я користувача або пароль",
connectionError: "Помилка з'єднання",
signInWith: "Увійти через {provider}",
signInWithSso: "Увійти через SSO",
or: "або",
methodLocal: "Локальний",
methodOidc: "OIDC",
methodBoth: "Локальний + OIDC",
oidcAuthFailed: "Автентифікація не вдалася. Спробуйте знову.",
oidcProviderUnreachable:
"Не вдалося зв'язатися з постачальником ідентифікації. Спробуйте пізніше.",
oidcSessionExpired: "Сесія входу завершилась. Спробуйте знову.",
oidcUserNotAuthorized:
"Ваш обліковий запис не має доступу до цього застосунку. Зверніться до адміністратора.",
oidcUserLimitReached: "Досягнуто ліміту користувачів. Зверніться до адміністратора.",
oidcGenericError: "Помилка автентифікації. Спробуйте знову.",
samlAuthFailed: "Автентифікація SAML не вдалася. Спробуйте ще раз.",
samlUserNotAuthorized:
"Ваш обліковий запис не має доступу до цього застосунку. Зверніться до адміністратора.",
samlUserLimitReached: "Ліміт користувачів досягнуто. Зверніться до адміністратора.",
ssoEnforcedLocalRestricted: "Локальний вхід доступний лише авторизованим адміністраторам.",
mfaRequired: "Введіть код автентифікації",
mfaRecoveryHint: "Також можна використати код відновлення",
verify: "Перевірити",
verifying: "Перевірка...",
mfaInvalidCode: "Невірний код. Спробуйте ще раз.",
mfaEnrollmentRequired:
"Ваша організація вимагає багатофакторну автентифікацію. Налаштуйте MFA в параметрах облікового запису.",
methodSaml: "SAML",
passwordManagedByProvider: "Керування паролем здійснюється Вашим постачальником ідентифікації.",
enterUsername: "Введіть ім'я користувача",
enterPassword: "Введіть пароль",
heroTitle: "Ваші файли. Залишаються Вашими.",
heroSubtitle: "Усі інструменти, які Вам потрібні.",
rotatingPhrases: [
"Без реєстрації. Без облікових записів.",
"Жодних завантажень у хмару. Ніколи.",
"100% локальна обробка.",
"Безкоштовно. Назавжди.",
"Без обмежень. Без прихованих лімітів.",
"Повністю працює офлайн.",
"Пакетна обробка без обмежень.",
"157 інструментів.",
"16 AI-моделей. На Вашому обладнанні.",
"Блискавична швидкість. На базі Sharp.",
"Готовий до ізольованих мереж.",
"Один Docker-контейнер.",
"Відкритий вихідний код. Завжди.",
"Кожен піксель залишається на Вашому обладнанні.",
"Ваш сервер. Ваші правила.",
"Встановлення однією командою docker pull.",
"Альтернатива хмарним сервісам.",
"Зміна розміру, стиснення, конвертація. Локально.",
"Безкоштовний редактор. Без водяних знаків.",
"Пакетна обробка файлів. Без лімітів.",
"Видалення фону офлайн.",
"Заміна Canva для власного сервера.",
"API-ключі не потрібні.",
"Відповідність GDPR за замовчуванням.",
"Працює без інтернету.",
],
},
changePassword: {
title: "Зміна пароля",
description:
"Необхідно встановити новий пароль перед продовженням. Пароль має містити щонайменше 8 символів, включно з великими, малими літерами та цифрою.",
usernameLabel: "Ім'я користувача",
currentPasswordLabel: "Поточний пароль",
currentPasswordPlaceholder: "Введіть поточний пароль",
newPasswordLabel: "Новий пароль",
generateButton: "Згенерувати надійний пароль",
newPasswordPlaceholder: "Щонайменше 8 символів",
confirmPasswordLabel: "Підтвердіть новий пароль",
confirmPasswordPlaceholder: "Повторіть новий пароль",
passwordsMismatch: "Паролі не збігаються",
failedError: "Не вдалося змінити пароль",
connectionError: "Помилка з'єднання",
changingButton: "Зміна...",
changeButton: "Змінити пароль",
sidebarTitle: "Майже готово",
sidebarDescription:
"Встановіть надійний пароль для захисту Вашого облікового запису, і можна починати.",
},
automate: {
title: "Автоматизація",
invalidPipelineFile: "Недійсний файл Pipeline SnapOtter",
newerVersion: "Цей Pipeline створено у новішій версії SnapOtter",
missingName: "У файлі Pipeline відсутня назва",
noSteps: "У файлі Pipeline немає кроків",
importFailed: "Імпорт не вдався",
couldNotRead: "Не вдалося прочитати файл Pipeline",
fileCount: "{count} файл",
fileCountPlural: "{count} файлів",
importFromLibrary: "Імпорт із бібліотеки",
addButton: "+ Додати",
libraryButton: "Бібліотека",
clearButton: "Очистити",
processingFailed: "Обробка цього файлу не вдалася",
processingMultiple: "Обробка {count} файлів...",
processingPipeline: "Виконання Pipeline...",
processButton: "Обробити",
processButtonMultiple: "Обробити ({count})",
processAllButton: "Обробити все ({count})",
addTool: "Додати інструмент",
toolPalette: "Палітра інструментів",
clickToAdd: "Натисніть для додавання до Pipeline",
savedLabel: "Збережені",
importButton: "Імпорт",
noSavedPipelines: "Немає збережених Pipeline",
stepCount: "({count} крок)",
stepCountPlural: "({count} кроків)",
exportPipeline: "Експортувати Pipeline",
deletePipeline: "Видалити Pipeline",
moreCount: "+{count} ще",
pipelineBuilder: "Конструктор Pipeline",
addToolsPrompt: "Додайте інструменти з палітри для початку",
stepsConfigured: "Налаштовано {count} крок",
stepsConfiguredPlural: "Налаштовано {count} кроків",
noFilesLoaded: "Файли не завантажено",
downloadZip: "Завантажити ZIP",
saveButton: "Зберегти",
pipelineNamePlaceholder: "Назва Pipeline",
descriptionPlaceholder: "Опис",
savingIndicator: "...",
cancelButton: "Скасувати",
preview: "Попередній перегляд",
previousImage: "Попередній файл",
nextImage: "Наступний файл",
imageCounter: "{current} / {total}",
imageArea: "Область попереднього перегляду",
templateSocialMedia: "Готово для соцмереж",
templatePrivacyClean: "Очищення конфіденційності",
templateWebOptimization: "Веб-оптимізація",
templateProfilePicture: "Фото профілю",
templateWatermarkBatch: "Пакетні водяні знаки",
createNew: "Створити нову автоматизацію",
savedAutomations: "Збережені автоматизації",
templates: "Шаблони",
addStep: "Додати крок",
removeStep: "Видалити",
moveUp: "Перемістити вгору",
moveDown: "Перемістити вниз",
savePipeline: "Зберегти Pipeline",
runPipeline: "Обробити",
pipelineName: "Назва Pipeline",
pipelineDescription: "Опис (необов'язково)",
noStepsPrompt: "Додайте кроки для побудови автоматизації",
noStepsHeading: "Кроків поки немає",
searchToolsPlaceholder: "Пошук інструментів...",
step: "Крок",
modalityWarning: "Невідповідність модальності",
modalityWarningTooltip:
"Цей крок очікує {expected}, але отримує {received}; він може завершитися помилкою під час запуску конвеєра.",
},
nav: {
tools: "Інструменти",
reader: "Рідер",
automate: "Автоматизація",
editor: "Редактор",
files: "Файли",
help: "Довідка",
settings: "Налаштування",
grid: "Сітка",
},
files: {
myFiles: "Мої файли",
recentTab: "Нещодавні",
uploadTab: "Завантажити файли",
fileDetailsAriaLabel: "Деталі файлу",
fileDetailsHeading: "Деталі файлу",
searchPlaceholder: "Пошук файлів...",
selectedCount: "{count} вибрано",
fileCount: "{count} файлів",
fileCountSingular: "{count} файл",
noFilesFound: "Файлів не знайдено",
selectFilePrompt: "Виберіть файл для перегляду деталей",
openFile: "Відкрити файл",
selectFile: "Вибрати файл",
openInPipeline: "Відкрити в конвеєрі",
dropFilesHere: "Перетягніть файли сюди",
orClickToSelect: "або натисніть, щоб вибрати файли",
name: "Назва",
format: "Формат",
size: "Розмір",
dimensions: "Розміри",
version: "Версія",
toolsUsed: "Використані інструменти",
none: "Немає",
delete: "Видалити",
pipeline: "Конвеєр",
download: "Завантажити",
},
dropzone: {
unsupportedFileType: "Цей тип файлу не підтримується цим інструментом",
urlFetchFailed: "Не вдалося завантажити зображення за URL",
ariaLabel: "Зона перетягування файлів",
dropPrompt: "Перетягніть зображення сюди",
browseOrPaste: "натисніть будь-де для вибору або вставте з буфера обміну",
uploadButton: "Завантажити",
defaultFormats: "PNG, JPG, WebP, HEIC, RAW, PSD та 65+ форматів",
orSeparator: "або",
urlPlaceholder: "Вставте URL зображення...",
urlLoadingIndicator: "...",
addUrlButton: "Додати",
importMultipleUrls: "Імпорт кількох URL...",
filesSelected: "Обрано файлів: {count}",
dropToAdd: "Відпустіть, щоб додати файли",
dropToReplace: "Відпустіть, щоб замінити файл",
},
reviewPanel: {
processedResultAlt: "Результат обробки",
sizeLabel: "Розмір: {size}",
typeLabel: "Тип: {type}",
processedLabel: "Оброблено: {time}",
undoButton: "Скасувати",
downloadButton: "Завантажити",
openInEditor: "Відкрити у редакторі",
reviewHeading: "Огляд",
continueEditing: "Продовжити редагування",
},
features: {
notEnabledTitle: "Функція не активована",
notEnabledDescription:
"Ця функція не активована. Попросіть адміністратора увімкнути її у Налаштуваннях.",
requiresDownload: "Для цієї функції потрібне додаткове завантаження (~{size})",
retryButton: "Повторити",
queued: "У черзі на встановлення...",
enableButton: "Увімкнути {name}",
repairRequired: "Потрібне відновлення",
repairDescription:
"Деякі файли моделей відсутні або пошкоджені. Відновлення завантажить їх повторно.",
repairButton: "Відновити {name}",
lessThanMinute: "Залишилось менше хвилини",
oneMinuteLeft: "Залишилась ~1 хвилина",
minutesLeft: "Залишилось ~{mins} хвилин",
progressMessages: [
"Майже готово... мабуть...",
"Гарні речі потребують часу...",
"Все одно швидше, ніж чекати, поки висохне фарба...",
"Ваше терпіння гідне захоплення...",
"Працюємо старанніше, ніж здається...",
"Зараз найцікавіше, повірте...",
"За лаштунками відбуваються важливі справи...",
"Якщо Ви це читаєте, все працює...",
"Готуємо щось неймовірне...",
"Варте кожної секунди, чесне слово...",
"Інтрига наростає...",
"Навчаємо Ваш комп'ютер нових фокусів...",
"Налаштовуємо Ваші суперздібності...",
"Ваші файли потім подякують...",
"Завантаження... але зі стилем...",
"Саме час для чашки кави...",
"Київ теж не за один день збудували...",
"Тихо... геній працює...",
"Ваші проєкти вже заздрять тому, що буде...",
"Збираємо команду мрії...",
"Розпаковуємо чудовість...",
"Майже закінчили думати про початок... жартуємо...",
"Поворот сюжету: тут справді щось відбувається...",
"Прогріваємо творчі двигуни...",
"Уява завантажується...",
"Це не заставка, обіцяємо...",
"Великому мистецтву потрібен час на встановлення...",
'Ваше майбутнє "я" подякує Вам...',
"Завантажуємо дуже розумні файли...",
"Зачекайте, найкраще ще попереду...",
],
},
help: {
heading: "Довідка",
gettingStarted: {
heading: "Початок роботи",
description:
"Оберіть інструмент із бічної панелі або скористайтесь пошуком. Завантажте файл, перетягнувши його на сторінку або натиснувши область завантаження. Налаштуйте параметри та завантажте результат.",
},
keyboardShortcuts: {
heading: "Гарячі клавіші",
focusSearchBar: "Фокус на рядку пошуку",
goToTools: "Перейти до інструментів",
toggleTheme: "Перемкнути тему",
goToResize: "Перейти до зміни розміру",
goToCrop: "Перейти до обрізки",
goToCompress: "Перейти до стиснення",
goToConvert: "Перейти до конвертації",
goToRemoveBackground: "Перейти до видалення фону",
goToWatermarkText: "Перейти до текстового водяного знаку",
goToStripMetadata: "Перейти до видалення метаданих",
goToImageInfo: "Перейти до інформації про зображення",
processFile: "Обробити файл",
downloadResult: "Завантажити результат",
},
resources: {
heading: "Ресурси",
githubLink: "Репозиторій GitHub",
reportIssueLink: "Повідомити про проблему",
docsLink: "Документація",
apiRefLink: "Довідник API (Swagger)",
},
versionLabel: "SnapOtter v{version}",
},
errors: {
generic: "Сталася помилка",
offline: "Ви не в мережі",
reconnecting: "Перепід'єднання до сервера...",
connected: "Під'єднано",
processingFailed: "Обробка цього файлу не вдалася",
timeout: "Час очікування вичерпано. Сервер може бути перевантажений. Спробуйте знову.",
networkError: "Помилка мережі. Перевірте з'єднання.",
invalidCredentials: "Невірне ім'я користувача або пароль",
connectionError: "Помилка з'єднання",
},
sidebar: {
tools: "Інструменти",
grid: "Сітка",
automate: "Автоматизація",
editor: "Редактор",
files: "Файли",
help: "Довідка",
settings: "Налаштування",
},
toolCard: {
addToFavourites: "Додати до обраного",
},
appLayout: {
mobileNavTools: "Інструменти",
mobileNavAutomate: "Автоматизація",
mobileNavEditor: "Редактор",
mobileNavFiles: "Файли",
mobileNavSettings: "Налаштування",
},
a11y: {
skipToContent: "Перейти до основного вмісту",
openSidebar: "Відкрити бічну панель",
closeSidebar: "Закрити бічну панель",
closeSettings: "Закрити налаштування",
closeHelp: "Закрити довідку",
closeDialog: "Закрити діалог",
zoomIn: "Збільшити",
zoomOut: "Зменшити",
fitToView: "Вписати у вікно",
actualSize: "Справжній розмір",
pan: "Переміщення",
previousImage: "Попередній файл",
nextImage: "Наступний файл",
imageArea: "Область попереднього перегляду",
imageViewer: "Переглядач файлів",
fileDropZone: "Зона перетягування файлів",
imageDropZone: "Зона перетягування файлів",
beforeAfterSlider: "Повзунок порівняння до/після",
imageControls: "Елементи керування переглядом",
zoomControls: "Керування масштабом",
dragToReorder: "Перетягніть для зміни порядку",
whiteBackground: "Біле тло",
blackBackground: "Чорне тло",
expandPanel: "Розгорнути панель",
collapsePanel: "Згорнути панель",
swapDimensions: "Поміняти розміри місцями",
applyCrop: "Застосувати обрізання",
cancelCrop: "Скасувати обрізання",
fontFamily: "Шрифт",
textColor: "Колір тексту",
flipHorizontal: "Віддзеркалити горизонтально",
flipVertical: "Віддзеркалити вертикально",
hexColorValue: "Значення кольору HEX",
backgroundColor: "Колір тла",
foregroundColor: "Колір переднього плану",
swapColors: "Поміняти кольори переднього плану та тла",
resetColors: "Скинути до чорного та білого",
foregroundHex: "HEX-значення кольору переднього плану",
undo: "Скасувати",
redo: "Повторити",
layers: "Шари",
addLayer: "Додати шар",
deleteLayer: "Видалити шар",
cancelOperation: "Скасувати операцію",
fill: "Заливка",
fileDetails: "Деталі файлу",
language: "Мова",
selected: "Вибрано",
deleteKey: "Видалити ключ",
editRole: "Редагувати роль",
deleteRole: "Видалити роль",
notInstalled: "Не встановлено",
queued: "У черзі на встановлення",
installing: "Встановлення",
imageNOfTotal: "Зображення {n} з {total}",
processingComplete: "Зображення успішно оброблено",
processingFailed: "Обробка не вдалася",
settingsDialog: "Налаштування",
helpDialog: "Довідка",
navigationMenu: "Навігація",
homeLink: "Головна SnapOtter",
},
} as const;