// Словарь uk: ті самі slugs, що й у en/ru.
export default {
"app.docTitle": "Synapse Admin",
"app.subtitle": "Хаб сповіщень Gnexus",
"app.loading": "Завантаження…",
"common.signOut": "Вийти",
"nav.dashboard": "Огляд",
"nav.sources": "Джерела",
"nav.types": "Типи",
"nav.targets": "Цілі",
"nav.rules": "Правила",
"nav.deliveries": "Доставки",
"nav.mcpKeys": "MCP-ключі",
"nav.myEvents": "Мої події",
"nav.settings": "Налаштування",
"settings.language": "Мова інтерфейсу",
"settings.languageAuto": "Авто",
"settings.languageHelp": "«Авто» — мова акаунта gnexus-auth; вибір перекриває її лише для Synapse і переживає вихід.",
"settings.languageSaved": "Мову змінено",
"dashboard.title": "Огляд",
"dashboard.subtitle": "Стан хаба сповіщень",
"dashboard.loaderChecking": "Опитую сервіс…",
"dashboard.errorUnavailable": "Сервіс недоступний: {message}",
"dashboard.metricService": "Сервіс",
"dashboard.getStartTitle": "З чого почати",
"dashboard.getStartText": "Порядок налаштування: Джерела — зареєструвати сервіс і видати йому API-ключ; Цілі — куди доставляти (журнал, сервіс через s2s); Правила — яка подія та в яку ціль іде. Доставки покажуть, що реально пішло.",
"deliveries.title": "Доставки",
"deliveries.subtitle": "Лог спроб: канал, ціль, статус, ретраї та текст, реально надісланий у канал",
"deliveries.filterAll": "всі",
"deliveries.filterStatus": "Статус",
"deliveries.filterChannel": "Канал",
"deliveries.refresh": "Оновити",
"deliveries.loading": "Завантаження…",
"deliveries.empty": "Доставок ще не було",
"deliveries.colTime": "Час",
"deliveries.colEvent": "Подія",
"deliveries.colEventHint": "Ідентифікатор події, що породила доставку",
"deliveries.colChannel": "Канал",
"deliveries.colTarget": "Ціль",
"deliveries.colStatus": "Статус",
"deliveries.colStatusHint": "delivered — доставлено; pending — чекає надсилання або ретраю; skipped — відфільтровано як шум; failed — спроби вичерпано",
"deliveries.colAttempts": "Спроби",
"deliveries.colAttemptsHint": "Скільки разів намагалися надіслати (ретраї 30с → 2хв → 10хв → 30хв)",
"deliveries.colError": "Помилка",
"deliveries.colMessage": "Повідомлення",
"denied.cardTitle": "Доступ заборонено",
"denied.cardText": "Налаштування Synapse доступні ролі admin і вище; особистий розділ — за посиланням «Мої події». Зазвичай сюди потрапляють лише за застарілим посиланням на адмін-частину.",
"denied.backToLogin": "На сторінку входу",
"login.title": "Вітаємо в Synapse",
"login.subtitle": "Увійдіть, щоб отримати доступ до хаба сповіщень",
"login.signInButton": "Увійти через GNEXUS",
"oauth.checkingLabel": "Перевірка входу…",
"myEvents.title": "Мої події",
"myEvents.subtitle": "Події, скеровані особисто вам правилами маршрутизації: що сталося і що про це сказали",
"myEvents.loading": "Завантаження…",
"myEvents.empty": "Ще немає подій, скерованих особисто вам: вони з'являються, коли правило маршрутизації надсилає подію в канал user",
"myEvents.colTime": "Час",
"myEvents.colEvent": "Подія",
"myEvents.colPriority": "Пріоритет",
"myEvents.priorityTip": "Пріоритет події з конверта: low, normal, high, critical",
"myEvents.colMessage": "Повідомлення",
"sources.pageTitle": "Джерела",
"sources.pageSubtitle": "Сервіси, які надсилають події в хаб. Опис, ключі та типи — на сторінці джерела",
"sources.toastCreated": "Джерело створено",
"sources.toastDeleted": "Джерело видалено",
"sources.createButton": "Джерело",
"sources.loading": "Завантаження…",
"sources.empty": "Джерел ще немає — створіть перше",
"sources.colSlug": "Slug",
"sources.colSlugHelp": "Ім'я джерела в події (поле source конверта). Клік — сторінка джерела",
"sources.colLabel": "Назва",
"sources.colCreated": "Створено",
"sources.rowDelete": "Видалити джерело",
"sources.createTitle": "Нове джерело",
"sources.formSlugLabel": "Slug (name)",
"sources.formSlugHelp": "Наприклад monitoring; лише a-z 0-9 . _ -",
"sources.formLabelHelp": "Людиночитаєма назва",
"sources.formDescriptionLabel": "Опис",
"sources.formDescriptionHelp": "Що це за сервіс — побачать людина й ІІ-агент в адмінці",
"sources.cancel": "Скасувати",
"sources.create": "Створити",
"sources.confirmTitle": "Видалити джерело?",
"sources.confirmMessage": "Джерело «{name}» буде видалене разом із типами та ключами. Якщо в джерела є події, видалення буде відхилено.",
"sources.delete": "Видалити",
"sourceDetail.notFound": "Джерело не знайдено",
"sourceDetail.toastKeyRevoked": "Ключ відкликано",
"sourceDetail.toastDeleted": "Джерело видалено",
"sourceDetail.backToList": "До списку джерел",
"sourceDetail.kicker": "Synapse · Джерело",
"sourceDetail.actions": "Дії",
"sourceDetail.issueKey": "Випустити ключ",
"sourceDetail.deleteSource": "Видалити джерело",
"sourceDetail.loading": "Завантаження…",
"sourceDetail.aboutTitle": "Про сервіс",
"sourceDetail.dtSlug": "Slug",
"sourceDetail.dtName": "Назва",
"sourceDetail.dtDescription": "Опис",
"sourceDetail.dtCreated": "Створено",
"sourceDetail.keysTitle": "API-ключі",
"sourceDetail.tokenLabel": "Токен",
"sourceDetail.tokenNote": " показується лише один раз під час випуску — у Synapse зберігається тільки sha256-хеш.",
"sourceDetail.keysEmpty": "Ключів немає — випустіть перший",
"sourceDetail.colKey": "Ключ",
"sourceDetail.colTail": "Хвіст",
"sourceDetail.colCreatedHelp": "Момент випуску ключа",
"sourceDetail.colUsed": "Використано",
"sourceDetail.colUsedHelp": "Остання подія з цим ключем",
"sourceDetail.colStatus": "Статус",
"sourceDetail.keyRevoked": "відкликано",
"sourceDetail.keyActive": "активний",
"sourceDetail.revoke": "Відкликати",
"sourceDetail.typesTitle": "Типи подій",
"sourceDetail.allTypes": "Усі типи",
"sourceDetail.typesEmpty": "Типів не зареєстровано — подія з незнайомою трійкою буде відхилена з 422",
"sourceDetail.colSubject": "Subject",
"sourceDetail.colSubjectHelp": "Сутність події: container, issue, build…",
"sourceDetail.colAction": "Action",
"sourceDetail.colActionHelp": "Що сталося: down, created, resolved…",
"sourceDetail.colTypeCreatedHelp": "Момент реєстрації типу",
"sourceDetail.tokenModalTitle": "Токен — показується один раз",
"sourceDetail.tokenModalText": "Токен більше не буде показаний: у Synapse зберігається тільки sha256-хеш. Скопіюйте його зараз і передайте власнику джерела.",
"sourceDetail.copy": "Копіювати",
"sourceDetail.done": "Готово",
"sourceDetail.confirmTitle": "Видалити джерело?",
"sourceDetail.confirmMessage": "Джерело «{name}» буде видалене разом із типами та ключами. Якщо в джерела є події, видалення буде відхилено.",
"sourceDetail.delete": "Видалити",
"sourceDetail.cancel": "Скасувати",
"types.pickSource": "— оберіть джерело —",
"types.toastCreated": "Тип створено",
"types.toastDeleted": "Тип видалено",
"types.pageTitle": "Типи",
"types.pageSubtitle": "Реєстр (source, subject, action). Подія з незареєстрованою трійкою відхиляється з 422",
"types.createButton": "Тип",
"types.loading": "Завантаження…",
"types.empty": "Типів немає — створіть перший",
"types.colSource": "Source",
"types.colSubject": "Subject",
"types.colAction": "Action",
"types.colCreated": "Створено",
"types.rowDelete": "Видалити тип",
"types.createTitle": "Новий тип",
"types.formSourceLabel": "Джерело",
"types.formSubjectHelp": "Сутність: container, issue, build…",
"types.formActionHelp": "Що сталося: down, created, resolved…",
"types.cancel": "Скасувати",
"types.create": "Створити",
"types.confirmTitle": "Видалити тип?",
"types.confirmMessage": "Тип ({name}, {subject}, {action}) буде видалений — події такої трійки відхилятимуться з 422.",
"types.delete": "Видалити",
"targets.invalidConfigJson": "Config — некоректний JSON",
"targets.toastCreated": "Ціль створена",
"targets.toastDeleted": "Ціль видалена",
"targets.title": "Цілі",
"targets.subtitle": "Куди доставляти: TG-чати, SMTP, s2s-точки. Креди каналів — лише в .env (gnexus-creds)",
"targets.createButton": "Додати ціль",
"targets.loading": "Завантаження…",
"targets.empty": "Цілей немає — наприклад, створіть ціль для internal_log",
"targets.colChannel": "Канал",
"targets.colName": "Назва",
"targets.colCreatedAt": "Створена",
"targets.rowDelete": "Видалити ціль",
"targets.modalCreate": "Нова ціль",
"targets.formChannel": "Канал",
"targets.formName": "Назва",
"targets.formDescription": "Опис",
"targets.formConfigLabel": "Config (JSON)",
"targets.nameHelp": "Наприклад infra-alerts",
"targets.descriptionHelp": "Для чого ця ціль (для ІІ-агента і людини)",
"targets.configHelp": "Для s2s: {\"endpoint\":\"http://…\",\"token_ref\":\"navi-rei\"}; для TG: {\"chat_id\":\"@…\"}",
"targets.cancel": "Скасувати",
"targets.create": "Створити",
"targets.confirmTitle": "Видалити ціль?",
"targets.confirmMessage": "Ціль «{name}» ({channel}) буде видалена. Посилання з правил і доставок обнуляться, історія залишиться.",
"targets.confirmDelete": "Видалити",
"targetDetail.notFound": "Ціль не знайдено",
"targetDetail.invalidConfigJson": "Config — некоректний JSON",
"targetDetail.toastSaved": "Збережено",
"targetDetail.toastEnabled": "Ціль увімкнено",
"targetDetail.toastDisabled": "Ціль вимкнено",
"targetDetail.toastDeleted": "Ціль видалено",
"targetDetail.hintS2s": "system-to-system: Synapse підписує та надсилає подію на endpoint цілі. Секрет — у .env воркера під іменем S2S_SECRET_<TOKEN_REF>.",
"targetDetail.hintTelegram": "Telegram-канал (#29, ще не реалізовано). Config зберігає ідентифікатор чату.",
"targetDetail.hintEmail": "Email-канал (#29, ще не реалізовано). Config зберігає адреси/тему.",
"targetDetail.hintInternalLog": "Внутрішній журнал Synapse: доставку записано в БД як деградацію та для аудиту.",
"targetDetail.backLink": "До списку цілей",
"targetDetail.kickerTarget": "Ціль",
"targetDetail.unnamed": "…",
"targetDetail.enabled": "Увімкнена",
"targetDetail.disabled": "Вимкнена",
"targetDetail.statusOn": "увімкнена",
"targetDetail.statusOff": "вимкнена",
"targetDetail.actions": "Дії",
"targetDetail.edit": "Редагувати",
"targetDetail.delete": "Видалити",
"targetDetail.loading": "Завантаження…",
"targetDetail.about": "Про ціль",
"targetDetail.fieldChannel": "Канал",
"targetDetail.fieldStatus": "Статус",
"targetDetail.fieldName": "Назва",
"targetDetail.fieldDescription": "Опис",
"targetDetail.fieldCreatedAt": "Створена",
"targetDetail.configTitle": "Config",
"targetDetail.copy": "Копіювати",
"targetDetail.configNote": "Ідентифікатори точки доставки. Секрети й креди в config не пишуться — лише в .env (gnexus-creds).",
"targetDetail.modalEdit": "Редагувати ціль",
"targetDetail.formName": "Назва",
"targetDetail.nameHelp": "Показується в правилах і логі доставок",
"targetDetail.formDescription": "Опис",
"targetDetail.descriptionHelp": "Для чого ця ціль (для ІІ-агента і людини)",
"targetDetail.formConfigLabel": "Config (JSON)",
"targetDetail.configExample": "Наприклад: {\"endpoint\":\"http://…\",\"token_ref\":\"navi-rei\"}",
"targetDetail.credsNote": "Креди в config не пишуться — лише .env (gnexus-creds)",
"targetDetail.cancel": "Скасувати",
"targetDetail.save": "Зберегти",
"targetDetail.confirmTitle": "Видалити ціль?",
"targetDetail.confirmMessage": "Ціль «{name}» буде видалена. Посилання з правил і доставок обнуляться, історія доставок залишиться.",
"targetDetail.confirmDelete": "Видалити",
"rules.weightTip": "Вага визначає порядок застосування правил у режимі «перше збігле» (ROUTING_MATCH_MODE=first): менша — важливіша, спрацьовує раніше. У режимі «всі» на результат не впливає.",
"rules.throttleTip": "Шумодав: не частіше однієї реальної доставки в цю ціль за N секунд. Приглушені доставки отримують статус skipped, critical проходить завжди.",
"rules.toastCreated": "Правило створено",
"rules.toastEnabled": "Правило увімкнено",
"rules.toastDisabled": "Правило вимкнено",
"rules.toastDeleted": "Правило видалено",
"rules.title": "Правила",
"rules.subtitle": "Кожну подію проганяють через правила: як тільки умови збіглися — створюється доставка в канали дії. Шумодав ріже повтори, critical проходить завжди",
"rules.createButton": "Правило",
"rules.loading": "Завантаження…",
"rules.emptyText": "Правил немає — подія, що не потрапила жодному правилу, лише фіксується історією",
"rules.colName": "Правило",
"rules.colWeight": "Вага",
"rules.colThrottle": "Шумодав",
"rules.colActions": "Дії",
"rules.actionsTip": "Куди доставити: канал і ціль. internal_log без цілі пише журнал Synapse. Умови — на сторінці правила",
"rules.colEnabled": "Увімк./вимк.",
"rules.secondsShort": "с",
"rules.deleteRule": "Видалити правило",
"rules.newRuleTitle": "Нове правило",
"rules.cancel": "Скасувати",
"rules.create": "Створити",
"rules.deleteTitle": "Видалити правило?",
"rules.deleteMessage": "Правило «{name}» буде видалене разом з діями. Історія доставок залишиться.",
"rules.delete": "Видалити",
"ruleDetail.condSource": "Джерело: ім'я source з реєстру",
"ruleDetail.condSubjects": "Subject'и події (будь-який з)",
"ruleDetail.condActions": "Action'и події (будь-який з)",
"ruleDetail.condPriorityMin": "Мінімальний пріоритет (low/normal/high/critical)",
"ruleDetail.condPayload": "Вимоги до полів payload (усі вказані; значення-список = будь-який з)",
"ruleDetail.notFound": "Правило не знайдено",
"ruleDetail.toastEnabled": "Правило увімкнено",
"ruleDetail.toastDisabled": "Правило вимкнено",
"ruleDetail.toastSaved": "Збережено",
"ruleDetail.toastDeleted": "Правило видалено",
"ruleDetail.weightTip": "Вага визначає порядок застосування правил у режимі «перше збігле» (ROUTING_MATCH_MODE=first): менша — важливіша, спрацьовує раніше. У режимі «всі» на результат не впливає.",
"ruleDetail.throttleTip": "Шумодав: не частіше однієї реальної доставки в цю ціль за N секунд. Приглушені доставки отримують статус skipped, critical проходить завжди.",
"ruleDetail.backToList": "До списку правил",
"ruleDetail.kicker": "Synapse · Правило",
"ruleDetail.noName": "…",
"ruleDetail.subtitle": "Умови → дії маршрутизації",
"ruleDetail.enabled": "Увімкнено",
"ruleDetail.disabled": "Вимкнено",
"ruleDetail.actionsLabel": "Дії",
"ruleDetail.edit": "Редагувати",
"ruleDetail.delete": "Видалити",
"ruleDetail.loading": "Завантаження…",
"ruleDetail.paramsTitle": "Параметри",
"ruleDetail.statusLabel": "Статус",
"ruleDetail.stateOn": "увімкнено",
"ruleDetail.stateOff": "вимкнено",
"ruleDetail.weightLabel": "Вага",
"ruleDetail.throttleLabel": "Шумодав",
"ruleDetail.createdLabel": "Створено",
"ruleDetail.secondsShort": "с",
"ruleDetail.conditionsTitle": "Умови",
"ruleDetail.conditionsNote": "Подія проходить за правилом, лише коли всі умови нижче збіглися. Якщо умов немає — правило підходить до будь-якої події.",
"ruleDetail.templateTitle": "Шаблон повідомлення",
"ruleDetail.templateNote1": "Текст Jinja2, який піде в канал:",
"ruleDetail.templateNote2": "підставить значення з payload події. Якщо шаблону немає — у дії нижче може бути свій.",
"ruleDetail.templateEmpty": "— не задано",
"ruleDetail.actionsTitle": "Дії",
"ruleDetail.actionsNote": "Коли подія збігається з умовами, для кожної дії створюється доставка. internal_log пише в журнал Synapse (аудит і деградація), s2s — підписане надсилання в сервіс; канали telegram/email — #29, ще не працюють.",
"ruleDetail.withoutTarget": "без цілі",
"ruleDetail.actionTemplate": "шаблон дії:",
"ruleDetail.noTemplate": "шаблон не задано",
"ruleDetail.editTitle": "Редагувати правило",
"ruleDetail.cancel": "Скасувати",
"ruleDetail.save": "Зберегти",
"ruleDetail.deleteTitle": "Видалити правило?",
"ruleDetail.deleteMessage": "Правило «{name}» буде видалене разом з діями. Історія доставок залишиться.",
"ruleForm.priorityAny": "— будь-який —",
"ruleForm.weightTip": "Вага визначає порядок застосування правил у режимі «перше збігле» (ROUTING_MATCH_MODE=first): менша — важливіша, спрацьовує раніше. У режимі «всі» на результат не впливає.",
"ruleForm.throttleTip": "Шумодав: не частіше однієї реальної доставки в цю ціль за N секунд. Приглушені доставки отримують статус skipped, critical проходить завжди.",
"ruleForm.anySource": "— будь-яке джерело —",
"ruleForm.errName": "Задайте назву правила",
"ruleForm.errPayloadJson": "Вимоги payload — некоректний JSON",
"ruleForm.errNoActions": "Додайте принаймні одну дію — куди доставляти",
"ruleForm.nameLabel": "Назва",
"ruleForm.nameHelp": "Як правило підписане в списку, наприклад «контейнери впали»",
"ruleForm.weightLabel": "Вага (weight)",
"ruleForm.throttleLabel": "Шумодав, с",
"ruleForm.conditionsTitle": "Умови",
"ruleForm.conditionsNote": "Правило застосовується до події, лише коли всі задані умови збіглися. Порожні умови = підходить завжди.",
"ruleForm.sourceLabel": "Джерело",
"ruleForm.subjectsHelp": "Сутності через кому: container, build…; порожньо = будь-які",
"ruleForm.actionsHelp": "Дії події через кому: down, created…; порожньо = будь-які",
"ruleForm.payloadLabel": "Вимоги до payload (JSON)",
"ruleForm.payloadHelp": "Наприклад {\"host\": [\"melody\",\"pilar\"]} — подія має нести host melody або pilar; порожньо = без вимоги",
"ruleForm.actionsTitle": "Дії",
"ruleForm.actionsNote": "Що робити, коли правило збіглося: створити доставку в кожному каналі нижче. internal_log без цілі — запис у журнал Synapse (аудит); user — особистий лог користувача з payload.user_id; s2s — підписане надсилання в сервіс; канали telegram/email — #29, ще не працюють.",
"ruleForm.tplLabel": "Шаблон за замовчуванням (Jinja2)",
"ruleForm.tplHelp": "{{ payload.поле }} — значення з payload події, наприклад \"Контейнер {{ payload.container }} впав\"; у дії може бути свій шаблон",
"ruleForm.channelLabel": "Канал",
"ruleForm.targetLabel": "Ціль",
"ruleForm.noTarget": "— без цілі —",
"ruleForm.removeAction": "Прибрати дію",
"ruleForm.addAction": "Дія",
"ruleForm.errTitle": "Помилка форми",
"settings.title": "Налаштування",
"settings.subtitleAdmin": "Особисте підписання на пуші та конфігурація Synapse (перебиває дефолти .env)",
"settings.subtitleUser": "Особисте: підписання на push-повідомлення цього браузера",
"settings.loading": "Завантаження…",
"settings.toastDeviceRemoved": "Підписку видалено",
"settings.toastNotConfigured": "Пуші ще не налаштовані — адміністратор задасть VAPID-ключі в налаштуваннях",
"settings.toastPermissionDenied": "Браузеру заборонено показувати повідомлення для цього сайту — увімкніть їх у налаштуваннях сайту",
"settings.toastPushEnabled": "Пуші увімкнено",
"settings.toastPushDisabled": "Пуші вимкнено",
"settings.toastSaved": "Налаштування збережено",
"settings.sectionRouting": "Маршрутизація",
"settings.sectionPush": "Web Push",
"settings.sectionTelegram": "Telegram",
"settings.sectionSmtp": "Email · SMTP",
"settings.deviceTip": "Пристрій, підписаний на ваші пуші (один рядок — один браузер). Видаліть рядок, якщо пристрою більше немає.",
"settings.pushTitle": "Push-повідомлення цього браузера",
"settings.pushUnsupportedTitle": "Пуші недоступні",
"settings.pushUnsupportedText": "Браузер не підтримує web-push (потрібні Service Worker і Notification API; на http-сторінці — лише https/localhost).",
"settings.pushNotConfiguredTitle": "Сервер ще не налаштований",
"settings.pushNotConfiguredText": "Адміністратор не задав VAPID-ключі — увімкніть після налаштування (адмін: Налаштування → Web Push).",
"settings.permissionDeniedNote": "Дозвіл на повідомлення заборонено — увімкніть його в налаштуваннях сайту браузера.",
"settings.permissionUnsupportedNote": "Браузер не вміє web-push.",
"settings.pushSwitchLabel": "Отримувати пуші від Synapse",
"settings.pushActiveNote": "Підписання цього браузера активне",
"settings.pushInactiveNote": "Події з адресатом саме вам (payload.user_id) відкриватимуться як системні повідомлення",
"settings.removeDeviceLabel": "Видалити підписку",
"settings.secretSetPlaceholder": "••••• задано — залишіть порожнім, щоб не змінювати",
"settings.notSetPlaceholder": "не задано",
"settings.writeOnlyHelp": "write-only: {text}",
"settings.overrideButton": "Перебити дефолти",
"settings.overrideHint": "Значення звідси перекривають .env на льоту — контейнер перезапускати не потрібно",
"mcpKeys.title": "MCP-ключі",
"mcpKeys.subtitle": "Особисті токени доступу до MCP-сервера Synapse: агент із ключом діє вашою роллю",
"mcpKeys.loading": "Завантаження…",
"mcpKeys.myKeys": "Мої ключі",
"mcpKeys.tokenWord": "Токен",
"mcpKeys.myKeysNote": "показується один раз під час випуску — в Synapse зберігається лише sha256-хеш. Діє роллю власника на момент випуску: після зміни ролі випустіть ключ заново, а старий відкличте. Одночасно активно до 10 ключів.",
"mcpKeys.namePlaceholder": "Назва ключа: «агент Navi rei»",
"mcpKeys.generate": "Згенерувати ключ",
"mcpKeys.defaultName": "ключ",
"mcpKeys.toastRevoked": "Ключ відкликано",
"mcpKeys.emptyOwn": "Ключів немає — згенеруйте перший і віддайте його своєму ІІ-агенту",
"mcpKeys.colKey": "Ключ",
"mcpKeys.colTail": "Хвіст",
"mcpKeys.colRole": "Роль",
"mcpKeys.colCreated": "Створено",
"mcpKeys.colCreatedTip": "Момент випуску ключа",
"mcpKeys.colUsed": "Використано",
"mcpKeys.colUsedTip": "Останній MCP-запрос цим ключем",
"mcpKeys.colStatus": "Статус",
"mcpKeys.badgeRevoked": "відкликано",
"mcpKeys.badgeActive": "активний",
"mcpKeys.revoke": "Відкликати",
"mcpKeys.howToConnect": "Як підключити агента",
"mcpKeys.connectNoteBefore": "Клієнту MCP (Claude Code, IDE тощо) потрібна URL-адреса ендпоінта",
"mcpKeys.connectNoteAfter": "цього Synapse та Bearer-ключ із випуску: той, хто отримав ключ, діє роллю власника (адмін-тули — лише для ролей admin+).",
"mcpKeys.copyConfig": "Копіювати конфіг",
"mcpKeys.allKeysAdmin": "Усі ключі (адмін)",
"mcpKeys.allKeysNote": "Випуск — самостійний (кожен на своїй сторінці /mcp-keys); тут — огляд усіх і відкликання, наприклад після зміни ролі користувача на gnexus-auth.",
"mcpKeys.emptyAll": "Персональних ключів ще немає — вони з'являться, коли користувачі випустять собі їх",
"mcpKeys.colOwner": "Власник",
"mcpKeys.modalTitle": "Токен — показується один раз",
"mcpKeys.modalAlert": "Налаштуйте агента зараз: у Synapse зберігається лише sha256-хеш, токен більше не буде показано.",
"mcpKeys.copy": "Копіювати",
"mcpKeys.done": "Готово",
"mcpKeys.revokeConfirmTitle": "Відкликати чужий ключ?",
"mcpKeys.revokeConfirmMessage": "Ключ «{name}» ({owner}) перестане працювати в його агента. Користувач випустить собі новий за потреби.",
"mcpKeys.cancel": "Скасувати",
'push.unsupported': 'Браузер не підтримує web-push',
'push.swNotReady': 'Service worker ще не готовий (оновіть сторінку)',
};