diff --git a/web/public/locales/uk/common.json b/web/public/locales/uk/common.json
index 029364971..c84d8a25e 100644
--- a/web/public/locales/uk/common.json
+++ b/web/public/locales/uk/common.json
@@ -152,7 +152,15 @@
"en": "Англійська",
"yue": "粵語 (Кантонська)",
"th": "ไทย (Тайська)",
- "ca": "Català (Каталанська)"
+ "ca": "Català (Каталанська)",
+ "ptBR": "Português brasileiro (Бразильська португальська)",
+ "sr": "Српски (Сербська)",
+ "sl": "Slovenščina (Словенська)",
+ "lt": "Lietuvių (Литовська)",
+ "bg": "Български (Болгарська)",
+ "gl": "Galego (Галісійська)",
+ "id": "Bahasa Indonesia (Індонезійська)",
+ "ur": "اردو (Урду)"
},
"system": "Система",
"systemMetrics": "Системна метріка",
diff --git a/web/public/locales/uk/components/dialog.json b/web/public/locales/uk/components/dialog.json
index 43cb9bd9b..fadbb19e0 100644
--- a/web/public/locales/uk/components/dialog.json
+++ b/web/public/locales/uk/components/dialog.json
@@ -110,5 +110,12 @@
"content": "Цю сторінку буде перезавантажено за {{countdown}} секунд.",
"button": "Примусово перезавантажити"
}
+ },
+ "imagePicker": {
+ "selectImage": "Вибір мініатюри відстежуваного об'єкта",
+ "search": {
+ "placeholder": "Пошук за міткою або підміткою..."
+ },
+ "noImages": "Для цієї камери не знайдено мініатюр"
}
}
diff --git a/web/public/locales/uk/components/filter.json b/web/public/locales/uk/components/filter.json
index 95c01f349..73968cfbe 100644
--- a/web/public/locales/uk/components/filter.json
+++ b/web/public/locales/uk/components/filter.json
@@ -122,5 +122,13 @@
"placeholder": "Введіть для пошуку номерні знаки…",
"noLicensePlatesFound": "Номерних знаків не знайдено.",
"selectPlatesFromList": "Виберіть одну або кілька пластин зі списку."
+ },
+ "classes": {
+ "label": "Заняття",
+ "all": {
+ "title": "Усі класи"
+ },
+ "count_one": "Клас {{count}}",
+ "count_other": "{{count}} Класи"
}
}
diff --git a/web/public/locales/uk/views/configEditor.json b/web/public/locales/uk/views/configEditor.json
index c9a664113..0e3ef13cb 100644
--- a/web/public/locales/uk/views/configEditor.json
+++ b/web/public/locales/uk/views/configEditor.json
@@ -12,5 +12,7 @@
"copyConfig": "Скопіювати конфігурацію",
"saveOnly": "Тільки зберегти",
"configEditor": "Налаштування редактора",
- "confirm": "Вийти без збереження?"
+ "confirm": "Вийти без збереження?",
+ "safeConfigEditor": "Редактор конфігурації (безпечний режим)",
+ "safeModeDescription": "Фрегат перебуває в безпечному режимі через помилку перевірки конфігурації."
}
diff --git a/web/public/locales/uk/views/events.json b/web/public/locales/uk/views/events.json
index e84c418ec..f94c99f0c 100644
--- a/web/public/locales/uk/views/events.json
+++ b/web/public/locales/uk/views/events.json
@@ -34,5 +34,7 @@
"label": "Переглянути нові елементи огляду",
"button": "Нові матеріали для перегляду"
},
- "detected": "виявлено"
+ "detected": "виявлено",
+ "suspiciousActivity": "Підозріла активність",
+ "threateningActivity": "Загрожувальна діяльність"
}
diff --git a/web/public/locales/uk/views/explore.json b/web/public/locales/uk/views/explore.json
index cdbcdb6ee..494801e4b 100644
--- a/web/public/locales/uk/views/explore.json
+++ b/web/public/locales/uk/views/explore.json
@@ -101,12 +101,14 @@
"success": {
"updatedLPR": "Номерний знак успішно оновлено.",
"updatedSublabel": "Підмітку успішно оновлено.",
- "regenerate": "Новий опис було запрошено від {{provider}}. Залежно від швидкості вашого провайдера, його перегенерація може зайняти деякий час."
+ "regenerate": "Новий опис було запрошено від {{provider}}. Залежно від швидкості вашого провайдера, його перегенерація може зайняти деякий час.",
+ "audioTranscription": "Запит на аудіотранскрипцію успішно надіслано."
},
"error": {
"regenerate": "Не вдалося звернутися до {{provider}} для отримання нового опису: {{errorMessage}}",
"updatedSublabelFailed": "Не вдалося оновити підмітку: {{errorMessage}}",
- "updatedLPRFailed": "Не вдалося оновити номерний знак: {{errorMessage}}"
+ "updatedLPRFailed": "Не вдалося оновити номерний знак: {{errorMessage}}",
+ "audioTranscription": "Не вдалося надіслати запит на транскрипцію аудіо: {{errorMessage}}"
}
},
"button": {
@@ -158,7 +160,10 @@
}
},
"expandRegenerationMenu": "Розгорнути меню регенерації",
- "regenerateFromSnapshot": "Відновити зі знімка"
+ "regenerateFromSnapshot": "Відновити зі знімка",
+ "score": {
+ "label": "Рахунок"
+ }
},
"dialog": {
"confirmDelete": {
@@ -193,6 +198,14 @@
},
"deleteTrackedObject": {
"label": "Видалити цей відстежуваний об'єкт"
+ },
+ "addTrigger": {
+ "label": "Додати тригер",
+ "aria": "Додати тригер для цього відстежуваного об'єкта"
+ },
+ "audioTranscription": {
+ "label": "Транскрибувати",
+ "aria": "Запит на аудіотранскрипцію"
}
},
"noTrackedObjects": "Відстежуваних об'єктів не знайдено",
@@ -205,5 +218,11 @@
"video": "відео",
"object_lifecycle": "життєвий цикл об'єкта"
},
- "exploreMore": "Дослідіть більше об'єктів {{label}}"
+ "exploreMore": "Дослідіть більше об'єктів {{label}}",
+ "aiAnalysis": {
+ "title": "Аналіз ШІ"
+ },
+ "concerns": {
+ "label": "Проблеми"
+ }
}
diff --git a/web/public/locales/uk/views/live.json b/web/public/locales/uk/views/live.json
index 27a8c518a..e8ce0aa8d 100644
--- a/web/public/locales/uk/views/live.json
+++ b/web/public/locales/uk/views/live.json
@@ -85,6 +85,14 @@
"center": {
"label": "Клацніть у кадрі, щоб відцентрувати камеру PTZ"
}
+ },
+ "focus": {
+ "in": {
+ "label": "Фокус PTZ-камери"
+ },
+ "out": {
+ "label": "Вихід PTZ-камери для фокусування"
+ }
}
},
"editLayout": {
@@ -94,7 +102,7 @@
"label": "Редагувати групу камер"
}
},
- "documentTitle": "Прямий трансляція - Frigate",
+ "documentTitle": "Пряма трансляція - Frigate",
"documentTitle.withCamera": "{{camera}} - Пряма трансляція - Frigate",
"lowBandwidthMode": "Економічний режим",
"twoWayTalk": {
@@ -142,7 +150,8 @@
"recording": "Записування",
"snapshots": "Знімки",
"audioDetection": "Виявлення звуку",
- "autotracking": "Автотрекiнг"
+ "autotracking": "Автотрекiнг",
+ "transcription": "Аудіотранскрипція"
},
"history": {
"label": "Показати історичні кадри"
@@ -154,5 +163,9 @@
"active_objects": "Активні об'єкти"
},
"notAllTips": "Ваш {{source}} конфігурацію збереження записів встановлено на режим: {{effectiveRetainMode}}
, тому цей запис на вимогу збереже лише сегменти з {{effectiveRetainModeName}}."
+ },
+ "transcription": {
+ "enable": "Увімкнути транскрипцію аудіо в реальному часі",
+ "disable": "Вимкнути транскрипцію аудіо в реальному часі"
}
}
diff --git a/web/public/locales/uk/views/settings.json b/web/public/locales/uk/views/settings.json
index a5e7d511f..77ccc09a1 100644
--- a/web/public/locales/uk/views/settings.json
+++ b/web/public/locales/uk/views/settings.json
@@ -86,7 +86,44 @@
"title": "Огляд",
"desc": "Тимчасово ввімкнути/вимкнути сповіщення та виявлення для цієї камери до перезавантаження Frigate. Якщо вимкнено, нові елементи огляду не створюватимуться. "
},
- "title": "Налаштування камери"
+ "title": "Налаштування камери",
+ "object_descriptions": {
+ "title": "Генеративні описи об'єктів штучного інтелекту",
+ "desc": "Тимчасово ввімкнути/вимкнути генеративні описи об'єктів ШІ для цієї камери. Якщо вимкнено, згенеровані ШІ описи не запитуватимуться для об'єктів, що відстежуються на цій камері."
+ },
+ "review_descriptions": {
+ "title": "Описи генеративного ШІ-огляду",
+ "desc": "Тимчасово ввімкнути/вимкнути генеративні описи огляду за допомогою штучного інтелекту для цієї камери. Якщо вимкнено, для елементів огляду на цій камері не запитуватимуться згенеровані штучним інтелектом описи."
+ },
+ "addCamera": "Додати нову камеру",
+ "editCamera": "Редагувати камеру:",
+ "selectCamera": "Виберіть камеру",
+ "backToSettings": "Назад до налаштувань камери",
+ "cameraConfig": {
+ "add": "Додати камеру",
+ "edit": "Редагувати камеру",
+ "description": "Налаштуйте параметри камери, включаючи потокові входи та ролі.",
+ "name": "Назва камери",
+ "nameRequired": "Потрібно вказати назву камери",
+ "nameInvalid": "Назва камери повинна містити лише літери, цифри, символи підкреслення або дефіси",
+ "namePlaceholder": "наприклад, вхідні_двері",
+ "enabled": "Увімкнено",
+ "ffmpeg": {
+ "inputs": "Вхідні потоки",
+ "path": "Шлях потоку",
+ "pathRequired": "Шлях потоку обов'язковий",
+ "pathPlaceholder": "'rtsp://...",
+ "roles": "Ролі",
+ "rolesRequired": "Потрібна хоча б одна роль",
+ "rolesUnique": "Кожна роль (аудіо, виявлення, запис) може бути призначена лише одному потоку",
+ "addInput": "Додати вхідний потік",
+ "removeInput": "Вилучити вхідний потік",
+ "inputsRequired": "Потрібен принаймні один вхідний потік"
+ },
+ "toast": {
+ "success": "Камеру {{cameraName}} успішно збережено"
+ }
+ }
},
"masksAndZones": {
"motionMasks": {
@@ -308,7 +345,12 @@
"tips": "
Поля руху
Червоні поля будуть накладені на області кадру, де наразі виявляється рух
" }, "objectList": "Список об'єктів", - "noObjects": "Без об'єктів" + "noObjects": "Без об'єктів", + "paths": { + "title": "Шляхи", + "desc": "Показувати важливі точки шляху відстежуваного об'єкта", + "tips": "Шляхи
Лінії та кола позначатимуть важливі точки, які відстежуваний об'єкт переміщував протягом свого життєвого циклу.
" + } }, "classification": { "licensePlateRecognition": { @@ -498,7 +540,7 @@ "classification": "Налаштування класифікації – Фрегат", "masksAndZones": "Редактор масок та зон – Фрегат", "motionTuner": "Тюнер руху - Фрегат", - "general": "Основна налаштування – Frigate", + "general": "Основна Налаштування – Frigate", "frigatePlus": "Налаштування Frigate+ – Frigate", "enrichments": "Налаштуваннях збагачення – Frigate" }, @@ -681,6 +723,101 @@ "desc": "Класифікація птахів ідентифікує відомих птахів за допомогою квантованої моделі тензорного потоку. Коли відомого птаха розпізнано, його загальну назву буде додано як підмітку. Ця інформація відображається в інтерфейсі, фільтрах, а також у сповіщеннях.", "title": "Класифікація птахів" }, - "title": "Налаштуваннях збагачення" + "title": "Налаштуваннях Збагачення" + }, + "triggers": { + "documentTitle": "Тригери", + "management": { + "title": "Управління тригерами", + "desc": "Керуйте тригерами для {{camera}}. Використовуйте тип мініатюри для спрацьовування на схожих мініатюрах до вибраного об’єкта відстеження, а тип опису – для спрацьовування на схожих описах до вказаного вами тексту." + }, + "addTrigger": "Додати Тригер", + "table": { + "name": "Ім'я", + "type": "Тип", + "content": "Зміст", + "threshold": "Поріг", + "actions": "Дії", + "noTriggers": "Для цієї камери не налаштовано жодних тригерів.", + "edit": "Редагувати", + "deleteTrigger": "Видалити тригер", + "lastTriggered": "Остання активація" + }, + "type": { + "thumbnail": "Мініатюра", + "description": "Опис" + }, + "actions": { + "alert": "Позначити як сповіщення", + "notification": "Надіслати сповіщення" + }, + "dialog": { + "createTrigger": { + "title": "Створити тригер", + "desc": "Створіть тригер для камери {{camera}}" + }, + "editTrigger": { + "title": "Редагувати тригер", + "desc": "Редагувати налаштування для тригера на камері {{camera}}" + }, + "deleteTrigger": { + "title": "Видалити тригер", + "desc": "Ви впевнені, що хочете видалити тригер {{triggerName}}? Цю дію не можна скасувати." + }, + "form": { + "name": { + "title": "Ім'я", + "placeholder": "Введіть назву тригера", + "error": { + "minLength": "Ім'я має містити щонайменше 2 символи.", + "invalidCharacters": "Ім'я може містити лише літери, цифри, символи підкреслення та дефіси.", + "alreadyExists": "Тригер із такою назвою вже існує для цієї камери." + } + }, + "enabled": { + "description": "Увімкнути або вимкнути цей тригер" + }, + "type": { + "title": "Тип", + "placeholder": "Виберіть тип тригера" + }, + "content": { + "title": "Зміст", + "imagePlaceholder": "Виберіть зображення", + "textPlaceholder": "Введіть текстовий вміст", + "imageDesc": "Виберіть зображення, щоб запустити цю дію, коли буде виявлено схоже зображення.", + "textDesc": "Введіть текст, щоб запустити цю дію, коли буде виявлено схожий опис відстежуваного об’єкта.", + "error": { + "required": "Контент обов'язковий." + } + }, + "threshold": { + "title": "Поріг", + "error": { + "min": "Поріг має бути щонайменше 0", + "max": "Поріг має бути не більше 1" + } + }, + "actions": { + "title": "Дії", + "desc": "За замовчуванням Frigate надсилає повідомлення MQTT для всіх тригерів. Виберіть додаткову дію, яку потрібно виконати, коли цей тригер спрацьовує.", + "error": { + "min": "Потрібно вибрати принаймні одну дію." + } + } + } + }, + "toast": { + "success": { + "createTrigger": "Тригер {{name}} успішно створено.", + "updateTrigger": "Тригер {{name}} успішно оновлено.", + "deleteTrigger": "Тригер {{name}} успішно видалено." + }, + "error": { + "createTriggerFailed": "Не вдалося створити тригер: {{errorMessage}}", + "updateTriggerFailed": "Не вдалося оновити тригер: {{errorMessage}}", + "deleteTriggerFailed": "Не вдалося видалити тригер: {{errorMessage}}" + } + } } }