feat(phase3): PWA, auto-discovery, bookmarklet, multi-tab sync
- PWA: manifest, service worker (cache-first static, network-first API), offline page, install prompt banner - Auto-discovery: Docker socket + Traefik API scanning, approval UI - Quick-add bookmarklet: popup-based add page, favicon auto-detect - Multi-tab sync: BroadcastChannel for theme + data changes - i18n translations for all new strings (EN/RU)
This commit is contained in:
+277
-260
@@ -1,219 +1,228 @@
|
||||
{
|
||||
"app_name": "App Launcher",
|
||||
"app_title": "Web App Launcher",
|
||||
|
||||
"nav.navigation": "\u041d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f",
|
||||
"nav.boards": "\u0414\u043e\u0441\u043a\u0438",
|
||||
"nav.apps": "\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f",
|
||||
"nav.admin": "\u0410\u0434\u043c\u0438\u043d",
|
||||
"nav.admin_panel": "\u041f\u0430\u043d\u0435\u043b\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430",
|
||||
|
||||
"auth.login": "\u0412\u043e\u0439\u0442\u0438",
|
||||
"auth.login_title": "\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c",
|
||||
"auth.login_subtitle": "\u0412\u043e\u0439\u0434\u0438\u0442\u0435 \u0432 \u0441\u0432\u043e\u0439 \u0430\u043a\u043a\u0430\u0443\u043d\u0442",
|
||||
"auth.login_submit": "\u0412\u043e\u0439\u0442\u0438",
|
||||
"auth.login_submitting": "\u0412\u0445\u043e\u0434...",
|
||||
"auth.register": "\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f",
|
||||
"auth.register_title": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0430\u043a\u043a\u0430\u0443\u043d\u0442",
|
||||
"auth.register_subtitle": "\u041d\u0430\u0447\u043d\u0438\u0442\u0435 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 App Launcher",
|
||||
"auth.register_submit": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0430\u043a\u043a\u0430\u0443\u043d\u0442",
|
||||
"auth.register_submitting": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430...",
|
||||
"auth.email": "\u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u0430\u044f \u043f\u043e\u0447\u0442\u0430",
|
||||
"nav.navigation": "Навигация",
|
||||
"nav.boards": "Доски",
|
||||
"nav.apps": "Приложения",
|
||||
"nav.admin": "Админ",
|
||||
"nav.admin_panel": "Панель администратора",
|
||||
"auth.login": "Войти",
|
||||
"auth.login_title": "Добро пожаловать",
|
||||
"auth.login_subtitle": "Войдите в свой аккаунт",
|
||||
"auth.login_submit": "Войти",
|
||||
"auth.login_submitting": "Вход...",
|
||||
"auth.register": "Регистрация",
|
||||
"auth.register_title": "Создать аккаунт",
|
||||
"auth.register_subtitle": "Начните работу с App Launcher",
|
||||
"auth.register_submit": "Создать аккаунт",
|
||||
"auth.register_submitting": "Создание аккаунта...",
|
||||
"auth.email": "Электронная почта",
|
||||
"auth.email_placeholder": "you@example.com",
|
||||
"auth.password": "\u041f\u0430\u0440\u043e\u043b\u044c",
|
||||
"auth.password_placeholder": "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u0430\u0440\u043e\u043b\u044c",
|
||||
"auth.password_placeholder_register": "\u041d\u0435 \u043c\u0435\u043d\u0435\u0435 6 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432",
|
||||
"auth.display_name": "\u0418\u043c\u044f",
|
||||
"auth.display_name_placeholder": "\u0412\u0430\u0448\u0435 \u0438\u043c\u044f",
|
||||
"auth.logout": "\u0412\u044b\u0445\u043e\u0434",
|
||||
"auth.oauth_signin": "\u0412\u043e\u0439\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 OAuth",
|
||||
"auth.or": "\u0438\u043b\u0438",
|
||||
"auth.no_account": "\u041d\u0435\u0442 \u0430\u043a\u043a\u0430\u0443\u043d\u0442\u0430?",
|
||||
"auth.have_account": "\u0423\u0436\u0435 \u0435\u0441\u0442\u044c \u0430\u043a\u043a\u0430\u0443\u043d\u0442?",
|
||||
"auth.sign_in_link": "\u0412\u043e\u0439\u0442\u0438",
|
||||
|
||||
"board.title": "\u0414\u043e\u0441\u043a\u0438",
|
||||
"board.boards_available": "\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u043e \u0434\u043e\u0441\u043e\u043a: {count}",
|
||||
"board.new": "\u041d\u043e\u0432\u0430\u044f \u0434\u043e\u0441\u043a\u0430",
|
||||
"board.edit": "\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c",
|
||||
"board.edit_board": "\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u043e\u0441\u043a\u0438",
|
||||
"board.all_boards": "\u0412\u0441\u0435 \u0434\u043e\u0441\u043a\u0438",
|
||||
"board.back_to_boards": "\u041d\u0430\u0437\u0430\u0434 \u043a \u0434\u043e\u0441\u043a\u0430\u043c",
|
||||
"board.back_to_board": "\u041d\u0430\u0437\u0430\u0434 \u043a \u0434\u043e\u0441\u043a\u0435",
|
||||
"board.no_boards": "\u0414\u043e\u0441\u043a\u0438 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.",
|
||||
"board.sign_in_more": "\u0412\u043e\u0439\u0434\u0438\u0442\u0435, \u0447\u0442\u043e\u0431\u044b \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u043e\u0441\u043e\u043a.",
|
||||
"board.no_sections": "\u041d\u0430 \u044d\u0442\u043e\u0439 \u0434\u043e\u0441\u043a\u0435 \u043f\u043e\u043a\u0430 \u043d\u0435\u0442 \u0440\u0430\u0437\u0434\u0435\u043b\u043e\u0432.",
|
||||
"board.default": "\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",
|
||||
"board.guest": "\u0413\u043e\u0441\u0442\u0435\u0432\u0430\u044f",
|
||||
"board.sections_count": "\u0420\u0430\u0437\u0434\u0435\u043b\u043e\u0432: {count}",
|
||||
"board.properties": "\u0421\u0432\u043e\u0439\u0441\u0442\u0432\u0430 \u0434\u043e\u0441\u043a\u0438",
|
||||
"board.save": "\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0434\u043e\u0441\u043a\u0443",
|
||||
"board.create": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0434\u043e\u0441\u043a\u0443",
|
||||
"board.creating": "\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435...",
|
||||
"board.default_board": "\u0414\u043e\u0441\u043a\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",
|
||||
"board.guest_accessible": "\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0433\u043e\u0441\u0442\u044f\u043c",
|
||||
"board.guest_access_title": "\u0413\u043e\u0441\u0442\u0435\u0432\u043e\u0439 \u0434\u043e\u0441\u0442\u0443\u043f",
|
||||
"board.guest_access_description": "\u041f\u0440\u0438 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u044d\u0442\u0430 \u0434\u043e\u0441\u043a\u0430 \u0432\u0438\u0434\u043d\u0430 \u043d\u0435\u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u043c \u043f\u043e\u0441\u0435\u0442\u0438\u0442\u0435\u043b\u044f\u043c \u0431\u0435\u0437 \u0432\u0445\u043e\u0434\u0430 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0443.",
|
||||
"board.guest_access_enabled": "\u042d\u0442\u0430 \u0434\u043e\u0441\u043a\u0430 \u043e\u0431\u0449\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430",
|
||||
"board.guest_access_disabled": "\u042d\u0442\u0430 \u0434\u043e\u0441\u043a\u0430 \u043f\u0440\u0438\u0432\u0430\u0442\u043d\u0430",
|
||||
"board.permissions_title": "\u041f\u0440\u0430\u0432\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430",
|
||||
"board.permissions_description": "\u0423\u043f\u0440\u0430\u0432\u043b\u044f\u0439\u0442\u0435, \u043a\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c, \u0440\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u043b\u0438 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u0443 \u0434\u043e\u0441\u043a\u0443.",
|
||||
"board.access_grant": "\u041d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f",
|
||||
"board.access_search_placeholder": "\u041f\u043e\u0438\u0441\u043a...",
|
||||
"board.access_loading": "\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043f\u0440\u0430\u0432...",
|
||||
"board.access_none": "\u041f\u0440\u0430\u0432\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u0434\u043e\u0441\u043a\u0438 \u043d\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b.",
|
||||
"board.access_private": "\u041f\u0440\u0438\u0432\u0430\u0442\u043d\u0430\u044f",
|
||||
"board.access_shared": "\u041e\u0431\u0449\u0430\u044f",
|
||||
"board.share": "\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f",
|
||||
"board.share_title": "\u041f\u043e\u0434\u0435\u043b\u0438\u0442\u044c\u0441\u044f \u00ab{name}\u00bb",
|
||||
"board.share_copy_link": "\u041a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0441\u044b\u043b\u043a\u0443",
|
||||
"board.share_copied": "\u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u043e!",
|
||||
"board.share_guest_description": "\u041b\u044e\u0431\u043e\u0439 \u0441 \u044d\u0442\u043e\u0439 \u0441\u0441\u044b\u043b\u043a\u043e\u0439 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u043e\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u0434\u043e\u0441\u043a\u0443 \u0431\u0435\u0437 \u0432\u0445\u043e\u0434\u0430.",
|
||||
"board.share_add_access": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043b\u044e\u0434\u0435\u0439 \u0438\u043b\u0438 \u0433\u0440\u0443\u043f\u043f\u044b",
|
||||
"board.share_current_access": "\u0422\u0435\u043a\u0443\u0449\u0438\u0439 \u0434\u043e\u0441\u0442\u0443\u043f",
|
||||
|
||||
"section.title_label": "\u0417\u0430\u0433\u043e\u043b\u043e\u0432\u043e\u043a",
|
||||
"section.icon_label": "\u0418\u043a\u043e\u043d\u043a\u0430",
|
||||
"section.icon_placeholder": "\u041d\u0435\u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e",
|
||||
"section.sections": "\u0420\u0430\u0437\u0434\u0435\u043b\u044b",
|
||||
"section.add": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u0434\u0435\u043b",
|
||||
"section.create": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0440\u0430\u0437\u0434\u0435\u043b",
|
||||
"section.order": "\u041f\u043e\u0440\u044f\u0434\u043e\u043a: {order}",
|
||||
|
||||
"widget.add": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u0438\u0434\u0436\u0435\u0442",
|
||||
"widget.select_app": "\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435",
|
||||
"widget.choose_app": "\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435...",
|
||||
"widget.no_widgets": "\u0412 \u044d\u0442\u043e\u043c \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u043d\u0435\u0442 \u0432\u0438\u0434\u0436\u0435\u0442\u043e\u0432.",
|
||||
"widget.no_widgets_dnd": "\u041d\u0435\u0442 \u0432\u0438\u0434\u0436\u0435\u0442\u043e\u0432. \u041f\u0435\u0440\u0435\u0442\u0430\u0449\u0438\u0442\u0435 \u0441\u044e\u0434\u0430 \u0438\u043b\u0438 \u0434\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0432\u044b\u0448\u0435.",
|
||||
"widget.type": "\u0412\u0438\u0434\u0436\u0435\u0442 {type}",
|
||||
"widget.number": "\u0412\u0438\u0434\u0436\u0435\u0442 #{order}",
|
||||
"widget.remove": "\u0423\u0434\u0430\u043b\u0438\u0442\u044c",
|
||||
|
||||
"app.title": "\u0420\u0435\u0435\u0441\u0442\u0440 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439",
|
||||
"app.apps_registered": "\u0417\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439: {count}",
|
||||
"app.add": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435",
|
||||
"app.new": "\u041d\u043e\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435",
|
||||
"app.no_apps": "\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0435\u0449\u0451 \u043d\u0435 \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u044b.",
|
||||
"app.no_apps_hint": "\u041d\u0430\u0436\u043c\u0438\u0442\u0435 \u00ab\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u00bb, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u0435\u0440\u0432\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.",
|
||||
"app.all_categories": "\u0412\u0441\u0435",
|
||||
"app.name": "\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435",
|
||||
"app.name_placeholder": "\u041c\u043e\u0451 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435",
|
||||
"auth.password": "Пароль",
|
||||
"auth.password_placeholder": "Введите пароль",
|
||||
"auth.password_placeholder_register": "Не менее 6 символов",
|
||||
"auth.display_name": "Имя",
|
||||
"auth.display_name_placeholder": "Ваше имя",
|
||||
"auth.logout": "Выход",
|
||||
"auth.oauth_signin": "Войти через OAuth",
|
||||
"auth.or": "или",
|
||||
"auth.no_account": "Нет аккаунта?",
|
||||
"auth.have_account": "Уже есть аккаунт?",
|
||||
"auth.sign_in_link": "Войти",
|
||||
"board.title": "Доски",
|
||||
"board.boards_available": "Доступно досок: {count}",
|
||||
"board.new": "Новая доска",
|
||||
"board.edit": "Редактировать",
|
||||
"board.edit_board": "Редактирование доски",
|
||||
"board.all_boards": "Все доски",
|
||||
"board.back_to_boards": "Назад к доскам",
|
||||
"board.back_to_board": "Назад к доске",
|
||||
"board.no_boards": "Доски не найдены.",
|
||||
"board.sign_in_more": "Войдите, чтобы увидеть больше досок.",
|
||||
"board.no_sections": "На этой доске пока нет разделов.",
|
||||
"board.default": "По умолчанию",
|
||||
"board.guest": "Гостевая",
|
||||
"board.sections_count": "Разделов: {count}",
|
||||
"board.properties": "Свойства доски",
|
||||
"board.save": "Сохранить доску",
|
||||
"board.create": "Создать доску",
|
||||
"board.creating": "Создание...",
|
||||
"board.default_board": "Доска по умолчанию",
|
||||
"board.guest_accessible": "Доступна гостям",
|
||||
"board.guest_access_title": "Гостевой доступ",
|
||||
"board.guest_access_description": "При включении эта доска видна неавторизованным посетителям без входа в систему.",
|
||||
"board.guest_access_enabled": "Эта доска общедоступна",
|
||||
"board.guest_access_disabled": "Эта доска приватна",
|
||||
"board.permissions_title": "Права доступа",
|
||||
"board.permissions_description": "Управляйте, кто может просматривать, редактировать или администрировать эту доску.",
|
||||
"board.access_grant": "Назначить доступ",
|
||||
"board.access_search_placeholder": "Поиск...",
|
||||
"board.access_loading": "Загрузка прав...",
|
||||
"board.access_none": "Права доступа для этой доски не настроены.",
|
||||
"board.access_private": "Приватная",
|
||||
"board.access_shared": "Общая",
|
||||
"board.share": "Поделиться",
|
||||
"board.share_title": "Поделиться «{name}»",
|
||||
"board.share_copy_link": "Копировать ссылку",
|
||||
"board.share_copied": "Скопировано!",
|
||||
"board.share_guest_description": "Любой с этой ссылкой может просматривать доску без входа.",
|
||||
"board.share_add_access": "Добавить людей или группы",
|
||||
"board.share_current_access": "Текущий доступ",
|
||||
"section.title_label": "Заголовок",
|
||||
"section.icon_label": "Иконка",
|
||||
"section.icon_placeholder": "Необязательно",
|
||||
"section.sections": "Разделы",
|
||||
"section.add": "Добавить раздел",
|
||||
"section.create": "Создать раздел",
|
||||
"section.order": "Порядок: {order}",
|
||||
"widget.add": "Добавить виджет",
|
||||
"widget.select_app": "Выберите приложение",
|
||||
"widget.choose_app": "Выберите приложение...",
|
||||
"widget.no_widgets": "В этом разделе нет виджетов.",
|
||||
"widget.no_widgets_dnd": "Нет виджетов. Перетащите сюда или добавьте выше.",
|
||||
"widget.type": "Виджет {type}",
|
||||
"widget.number": "Виджет #{order}",
|
||||
"widget.remove": "Удалить",
|
||||
"app.title": "Реестр приложений",
|
||||
"app.apps_registered": "Зарегистрировано приложений: {count}",
|
||||
"app.add": "Добавить приложение",
|
||||
"app.new": "Новое приложение",
|
||||
"app.no_apps": "Приложения ещё не зарегистрированы.",
|
||||
"app.no_apps_hint": "Нажмите «Добавить приложение», чтобы зарегистрировать первое приложение.",
|
||||
"app.all_categories": "Все",
|
||||
"app.name": "Название",
|
||||
"app.name_placeholder": "Моё приложение",
|
||||
"app.url": "URL",
|
||||
"app.url_placeholder": "https://my-app.local:8080",
|
||||
"app.description": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",
|
||||
"app.description_placeholder": "\u041a\u0440\u0430\u0442\u043a\u043e\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f",
|
||||
"app.category": "\u041a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f",
|
||||
"app.category_placeholder": "\u043d\u0430\u043f\u0440. \u041c\u0435\u0434\u0438\u0430, \u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433, \u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435",
|
||||
"app.tags": "\u0422\u0435\u0433\u0438",
|
||||
"app.tags_placeholder": "\u0422\u0435\u0433\u0438 \u0447\u0435\u0440\u0435\u0437 \u0437\u0430\u043f\u044f\u0442\u0443\u044e",
|
||||
"app.icon": "\u0418\u043a\u043e\u043d\u043a\u0430",
|
||||
"app.description": "Описание",
|
||||
"app.description_placeholder": "Краткое описание приложения",
|
||||
"app.category": "Категория",
|
||||
"app.category_placeholder": "напр. Медиа, Мониторинг, Хранилище",
|
||||
"app.tags": "Теги",
|
||||
"app.tags_placeholder": "Теги через запятую",
|
||||
"app.icon": "Иконка",
|
||||
"app.icon_lucide": "Lucide",
|
||||
"app.icon_simple": "Simple Icons",
|
||||
"app.icon_url": "URL \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u044f",
|
||||
"app.icon_emoji": "\u042d\u043c\u043e\u0434\u0437\u0438",
|
||||
"app.icon_lucide_placeholder": "\u043d\u0430\u043f\u0440. globe, server, home",
|
||||
"app.icon_simple_placeholder": "\u043d\u0430\u043f\u0440. github, docker",
|
||||
"app.icon_url": "URL изображения",
|
||||
"app.icon_emoji": "Эмодзи",
|
||||
"app.icon_lucide_placeholder": "напр. globe, server, home",
|
||||
"app.icon_simple_placeholder": "напр. github, docker",
|
||||
"app.icon_url_placeholder": "https://example.com/icon.png",
|
||||
"app.icon_emoji_placeholder": "\u043d\u0430\u043f\u0440. \ud83c\udf10",
|
||||
"app.icon_preview": "\u041f\u0440\u0435\u0432\u044c\u044e \u0438\u043a\u043e\u043d\u043a\u0438",
|
||||
"app.save": "\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c",
|
||||
"app.saving": "\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435...",
|
||||
"app.healthcheck_toggle": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u044f",
|
||||
"app.healthcheck_show": "\u041f\u043e\u043a\u0430\u0437\u0430\u0442\u044c",
|
||||
"app.healthcheck_hide": "\u0421\u043a\u0440\u044b\u0442\u044c",
|
||||
"app.healthcheck_enabled": "\u0412\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u044f",
|
||||
"app.healthcheck_method": "\u041c\u0435\u0442\u043e\u0434",
|
||||
"app.healthcheck_expected_status": "\u041e\u0436\u0438\u0434\u0430\u0435\u043c\u044b\u0439 \u0441\u0442\u0430\u0442\u0443\u0441",
|
||||
"app.healthcheck_timeout": "\u0422\u0430\u0439\u043c\u0430\u0443\u0442 (\u043c\u0441)",
|
||||
"app.healthcheck_interval": "\u0418\u043d\u0442\u0435\u0440\u0432\u0430\u043b (\u0441\u0435\u043a\u0443\u043d\u0434\u044b)",
|
||||
"app.icon_board_label": "\u0418\u043a\u043e\u043d\u043a\u0430 (Lucide)",
|
||||
"app.uptime": "\u0430\u043f\u0442\u0430\u0439\u043c",
|
||||
"app.history_loading": "\u0417\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0438\u0441\u0442\u043e\u0440\u0438\u0438...",
|
||||
|
||||
"admin.panel": "\u041f\u0430\u043d\u0435\u043b\u044c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430",
|
||||
"admin.users": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438",
|
||||
"admin.groups": "\u0413\u0440\u0443\u043f\u043f\u044b",
|
||||
"admin.settings": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438",
|
||||
|
||||
"admin.user_management": "\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438",
|
||||
"admin.create_user": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f",
|
||||
"admin.new_user": "\u041d\u043e\u0432\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c",
|
||||
"admin.user_column": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c",
|
||||
"admin.email_column": "\u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u0430\u044f \u043f\u043e\u0447\u0442\u0430",
|
||||
"admin.role_column": "\u0420\u043e\u043b\u044c",
|
||||
"admin.provider_column": "\u041f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440",
|
||||
"admin.groups_column": "\u0413\u0440\u0443\u043f\u043f\u044b",
|
||||
"admin.actions_column": "\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u044f",
|
||||
"admin.role_user": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c",
|
||||
"admin.role_admin": "\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440",
|
||||
"admin.select_group": "\u0412\u044b\u0431\u0440\u0430\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u0443",
|
||||
"admin.add_to_group": "+ \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c",
|
||||
"admin.remove_from_group": "\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0438\u0437 \u0433\u0440\u0443\u043f\u043f\u044b",
|
||||
"admin.no_users": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.",
|
||||
|
||||
"admin.group_management": "\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0433\u0440\u0443\u043f\u043f\u0430\u043c\u0438",
|
||||
"admin.create_group": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u0443",
|
||||
"admin.new_group": "\u041d\u043e\u0432\u0430\u044f \u0433\u0440\u0443\u043f\u043f\u0430",
|
||||
"admin.name_column": "\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435",
|
||||
"admin.description_column": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",
|
||||
"admin.members_column": "\u0423\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u0438",
|
||||
"admin.default_column": "\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",
|
||||
"admin.default_group_hint": "\u0413\u0440\u0443\u043f\u043f\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e (\u0430\u0432\u0442\u043e-\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043d\u043e\u0432\u044b\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c)",
|
||||
"admin.no_groups": "\u0413\u0440\u0443\u043f\u043f\u044b \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u044b.",
|
||||
"admin.yes": "\u0414\u0430",
|
||||
"admin.no": "\u041d\u0435\u0442",
|
||||
|
||||
"admin.system_settings": "\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438",
|
||||
"admin.settings_description": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.",
|
||||
"admin.authentication": "\u0410\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f",
|
||||
"admin.auth_mode": "\u0420\u0435\u0436\u0438\u043c \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438",
|
||||
"admin.auth_local": "\u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439",
|
||||
"app.icon_emoji_placeholder": "напр. 🌐",
|
||||
"app.icon_preview": "Превью иконки",
|
||||
"app.save": "Сохранить",
|
||||
"app.saving": "Сохранение...",
|
||||
"app.healthcheck_toggle": "Настройки проверки здоровья",
|
||||
"app.healthcheck_show": "Показать",
|
||||
"app.healthcheck_hide": "Скрыть",
|
||||
"app.healthcheck_enabled": "Включить проверку здоровья",
|
||||
"app.healthcheck_method": "Метод",
|
||||
"app.healthcheck_expected_status": "Ожидаемый статус",
|
||||
"app.healthcheck_timeout": "Таймаут (мс)",
|
||||
"app.healthcheck_interval": "Интервал (секунды)",
|
||||
"app.icon_board_label": "Иконка (Lucide)",
|
||||
"app.uptime": "аптайм",
|
||||
"app.history_loading": "Загрузка истории...",
|
||||
"admin.panel": "Панель администратора",
|
||||
"admin.users": "Пользователи",
|
||||
"admin.groups": "Группы",
|
||||
"admin.settings": "Настройки",
|
||||
"admin.user_management": "Управление пользователями",
|
||||
"admin.create_user": "Создать пользователя",
|
||||
"admin.new_user": "Новый пользователь",
|
||||
"admin.user_column": "Пользователь",
|
||||
"admin.email_column": "Электронная почта",
|
||||
"admin.role_column": "Роль",
|
||||
"admin.provider_column": "Провайдер",
|
||||
"admin.groups_column": "Группы",
|
||||
"admin.actions_column": "Действия",
|
||||
"admin.role_user": "Пользователь",
|
||||
"admin.role_admin": "Администратор",
|
||||
"admin.select_group": "Выбрать группу",
|
||||
"admin.add_to_group": "+ Добавить",
|
||||
"admin.remove_from_group": "Удалить из группы",
|
||||
"admin.no_users": "Пользователи не найдены.",
|
||||
"admin.group_management": "Управление группами",
|
||||
"admin.create_group": "Создать группу",
|
||||
"admin.new_group": "Новая группа",
|
||||
"admin.name_column": "Название",
|
||||
"admin.description_column": "Описание",
|
||||
"admin.members_column": "Участники",
|
||||
"admin.default_column": "По умолчанию",
|
||||
"admin.default_group_hint": "Группа по умолчанию (авто-назначение новым пользователям)",
|
||||
"admin.no_groups": "Группы не найдены.",
|
||||
"admin.yes": "Да",
|
||||
"admin.no": "Нет",
|
||||
"admin.system_settings": "Системные настройки",
|
||||
"admin.settings_description": "Настройка глобальных параметров приложения.",
|
||||
"admin.authentication": "Аутентификация",
|
||||
"admin.auth_mode": "Режим аутентификации",
|
||||
"admin.auth_local": "Локальный",
|
||||
"admin.auth_oauth": "OAuth",
|
||||
"admin.auth_both": "\u041e\u0431\u0430",
|
||||
"admin.registration_enabled": "\u0420\u0430\u0437\u0440\u0435\u0448\u0438\u0442\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439",
|
||||
"admin.oauth_config": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 OAuth",
|
||||
"admin.oauth_description": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u0442\u0435 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440 OIDC (\u043d\u0430\u043f\u0440. Authentik, Keycloak). \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0435 \u0440\u0435\u0436\u0438\u043c \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438 \u00abOAuth\u00bb \u0438\u043b\u0438 \u00ab\u041e\u0431\u0430\u00bb \u0432\u044b\u0448\u0435, \u0447\u0442\u043e\u0431\u044b \u0432\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0432\u0445\u043e\u0434 \u0447\u0435\u0440\u0435\u0437 OAuth.",
|
||||
"admin.auth_both": "Оба",
|
||||
"admin.registration_enabled": "Разрешить регистрацию пользователей",
|
||||
"admin.oauth_config": "Настройка OAuth",
|
||||
"admin.oauth_description": "Настройте провайдер OIDC (напр. Authentik, Keycloak). Установите режим аутентификации «OAuth» или «Оба» выше, чтобы включить вход через OAuth.",
|
||||
"admin.oauth_client_id": "Client ID",
|
||||
"admin.oauth_client_id_placeholder": "OAuth client ID",
|
||||
"admin.oauth_client_secret": "\u0421\u0435\u043a\u0440\u0435\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0430",
|
||||
"admin.oauth_client_secret_placeholder": "\u0421\u0435\u043a\u0440\u0435\u0442 OAuth \u043a\u043b\u0438\u0435\u043d\u0442\u0430",
|
||||
"admin.oauth_client_secret": "Секрет клиента",
|
||||
"admin.oauth_client_secret_placeholder": "Секрет OAuth клиента",
|
||||
"admin.oauth_discovery_url": "Discovery URL",
|
||||
"admin.oauth_discovery_url_placeholder": "https://example.com/.well-known/openid-configuration",
|
||||
"admin.oauth_test": "\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435",
|
||||
"admin.oauth_testing": "\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435...",
|
||||
"admin.oauth_connected": "\u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u043a: {issuer}",
|
||||
"admin.oauth_network_error": "\u041e\u0448\u0438\u0431\u043a\u0430 \u0441\u0435\u0442\u0438 \u2014 \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0441\u0432\u044f\u0437\u0430\u0442\u044c\u0441\u044f \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c",
|
||||
"admin.theme_defaults": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0442\u0435\u043c\u044b",
|
||||
"admin.default_theme": "\u0422\u0435\u043c\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",
|
||||
"admin.default_primary_color": "\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0446\u0432\u0435\u0442 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e",
|
||||
"admin.healthcheck_defaults": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u044f",
|
||||
"admin.healthcheck_defaults_description": "JSON-\u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e (\u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b, \u0442\u0430\u0439\u043c\u0430\u0443\u0442, \u043c\u0435\u0442\u043e\u0434).",
|
||||
"admin.healthcheck_defaults_label": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 (JSON)",
|
||||
"admin.save_settings": "\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438",
|
||||
"admin.saving_settings": "\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435...",
|
||||
"admin.oauth_test": "Тестировать подключение",
|
||||
"admin.oauth_testing": "Тестирование...",
|
||||
"admin.oauth_connected": "Подключено к: {issuer}",
|
||||
"admin.oauth_network_error": "Ошибка сети — не удалось связаться с сервером",
|
||||
"admin.theme_defaults": "Настройки темы",
|
||||
"admin.default_theme": "Тема по умолчанию",
|
||||
"admin.default_primary_color": "Основной цвет по умолчанию",
|
||||
"admin.healthcheck_defaults": "Настройки проверки здоровья",
|
||||
"admin.healthcheck_defaults_description": "JSON-конфигурация проверки здоровья по умолчанию (интервал, таймаут, метод).",
|
||||
"admin.healthcheck_defaults_label": "Настройки (JSON)",
|
||||
"admin.save_settings": "Сохранить настройки",
|
||||
"admin.saving_settings": "Сохранение...",
|
||||
"admin.perm_title": "Назначить права",
|
||||
"admin.perm_entity_type": "Тип объекта",
|
||||
"admin.perm_entity": "Объект",
|
||||
"admin.perm_target_type": "Тип цели",
|
||||
"admin.perm_target": "Цель",
|
||||
"admin.perm_level": "Уровень",
|
||||
"admin.perm_board": "Доска",
|
||||
"admin.perm_app": "Приложение",
|
||||
"admin.perm_user": "Пользователь",
|
||||
"admin.perm_group": "Группа",
|
||||
"admin.perm_view": "Просмотр",
|
||||
"admin.perm_edit": "Редактирование",
|
||||
"admin.perm_admin": "Администратор",
|
||||
"admin.perm_grant": "Назначить",
|
||||
"admin.perm_revoke": "Отозвать",
|
||||
"admin.perm_select": "Выбрать...",
|
||||
"admin.perm_entity_column": "Объект",
|
||||
"admin.perm_target_column": "Цель",
|
||||
"admin.perm_level_column": "Уровень",
|
||||
"admin.perm_action_column": "Действие",
|
||||
"admin.perm_none": "Права не настроены.",
|
||||
"admin.perm_search_placeholder": "Начните вводить...",
|
||||
|
||||
"admin.perm_title": "\u041d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c \u043f\u0440\u0430\u0432\u0430",
|
||||
"admin.perm_entity_type": "\u0422\u0438\u043f \u043e\u0431\u044a\u0435\u043a\u0442\u0430",
|
||||
"admin.perm_entity": "\u041e\u0431\u044a\u0435\u043a\u0442",
|
||||
"admin.perm_target_type": "\u0422\u0438\u043f \u0446\u0435\u043b\u0438",
|
||||
"admin.perm_target": "\u0426\u0435\u043b\u044c",
|
||||
"admin.perm_level": "\u0423\u0440\u043e\u0432\u0435\u043d\u044c",
|
||||
"admin.perm_board": "\u0414\u043e\u0441\u043a\u0430",
|
||||
"admin.perm_app": "\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435",
|
||||
"admin.perm_user": "\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c",
|
||||
"admin.perm_group": "\u0413\u0440\u0443\u043f\u043f\u0430",
|
||||
"admin.perm_view": "\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440",
|
||||
"admin.perm_edit": "\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435",
|
||||
"admin.perm_admin": "\u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440",
|
||||
"admin.perm_grant": "\u041d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c",
|
||||
"admin.perm_revoke": "\u041e\u0442\u043e\u0437\u0432\u0430\u0442\u044c",
|
||||
"admin.perm_select": "\u0412\u044b\u0431\u0440\u0430\u0442\u044c...",
|
||||
"admin.perm_entity_column": "\u041e\u0431\u044a\u0435\u043a\u0442",
|
||||
"admin.perm_target_column": "\u0426\u0435\u043b\u044c",
|
||||
"admin.perm_level_column": "\u0423\u0440\u043e\u0432\u0435\u043d\u044c",
|
||||
"admin.perm_action_column": "\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435",
|
||||
"admin.perm_none": "\u041f\u0440\u0430\u0432\u0430 \u043d\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u044b.",
|
||||
"admin.perm_search_placeholder": "\u041d\u0430\u0447\u043d\u0438\u0442\u0435 \u0432\u0432\u043e\u0434\u0438\u0442\u044c...",
|
||||
"admin.discovery_title": "Обнаружение сервисов",
|
||||
"admin.discovery_description": "Сканируйте Docker-контейнеры и маршруты Traefik для автоматического обнаружения работающих сервисов и их регистрации как приложений.",
|
||||
"admin.discovery_scan": "Сканировать сервисы",
|
||||
"admin.discovery_scanning": "Сканирование...",
|
||||
"admin.discovery_approve": "Одобрить выбранные",
|
||||
"admin.discovery_approving": "Одобрение...",
|
||||
"admin.discovery_source": "Источник",
|
||||
"admin.discovery_status": "Статус",
|
||||
"admin.discovery_source_docker": "Docker",
|
||||
"admin.discovery_source_traefik": "Traefik",
|
||||
"admin.discovery_already_registered": "Уже зарегистрировано",
|
||||
"admin.discovery_new": "Новый",
|
||||
"admin.discovery_no_results": "Сервисы не обнаружены. Проверьте путь к Docker-сокету или URL API Traefik.",
|
||||
"admin.discovery_config": "Настройка обнаружения сервисов",
|
||||
"admin.discovery_config_description": "Настройте конечные точки Docker и Traefik для автоматического обнаружения сервисов. Эти настройки используются панелью обнаружения ниже.",
|
||||
"admin.discovery_docker_socket": "Путь к Docker-сокету",
|
||||
"admin.discovery_docker_socket_hint": "Путь к Docker-сокету (напр. /var/run/docker.sock). Задаётся через DOCKER_SOCKET_PATH.",
|
||||
"admin.discovery_traefik_url": "URL API Traefik",
|
||||
"admin.discovery_traefik_url_hint": "Базовый URL API Traefik (напр. http://traefik:8080). Задаётся через TRAEFIK_API_URL.",
|
||||
|
||||
"admin.import_export_title": "Импорт / Экспорт",
|
||||
"admin.import_export_description": "Экспортируйте все данные (приложения, доски, группы, настройки) в формате JSON или импортируйте из ранее экспортированного файла.",
|
||||
@@ -231,65 +240,73 @@
|
||||
"admin.import_importing": "Импорт...",
|
||||
"admin.import_success": "Импорт завершён.",
|
||||
"admin.import_invalid_json": "Выбранный файл не является корректным JSON.",
|
||||
|
||||
"search.placeholder": "Поиск приложений и досок...",
|
||||
"search.trigger": "\u041f\u043e\u0438\u0441\u043a...",
|
||||
"search.min_chars": "\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043c\u0438\u043d\u0438\u043c\u0443\u043c 2 \u0441\u0438\u043c\u0432\u043e\u043b\u0430 \u0434\u043b\u044f \u043f\u043e\u0438\u0441\u043a\u0430",
|
||||
"search.no_results": "\u041d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d\u043e \u043f\u043e \u0437\u0430\u043f\u0440\u043e\u0441\u0443 \u00ab{query}\u00bb",
|
||||
"search.apps": "\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f",
|
||||
"search.boards": "\u0414\u043e\u0441\u043a\u0438",
|
||||
|
||||
"common.save": "\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c",
|
||||
"common.cancel": "\u041e\u0442\u043c\u0435\u043d\u0430",
|
||||
"common.delete": "\u0423\u0434\u0430\u043b\u0438\u0442\u044c",
|
||||
"common.create": "\u0421\u043e\u0437\u0434\u0430\u0442\u044c",
|
||||
"common.back": "\u041d\u0430\u0437\u0430\u0434",
|
||||
"common.edit": "\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c",
|
||||
"common.add": "\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c",
|
||||
"common.confirm": "\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044c?",
|
||||
"common.yes": "\u0414\u0430",
|
||||
"common.no": "\u041d\u0435\u0442",
|
||||
"common.name": "\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435",
|
||||
"common.description": "\u041e\u043f\u0438\u0441\u0430\u043d\u0438\u0435",
|
||||
"search.trigger": "Поиск...",
|
||||
"search.min_chars": "Введите минимум 2 символа для поиска",
|
||||
"search.no_results": "Ничего не найдено по запросу «{query}»",
|
||||
"search.apps": "Приложения",
|
||||
"search.boards": "Доски",
|
||||
"common.save": "Сохранить",
|
||||
"common.cancel": "Отмена",
|
||||
"common.delete": "Удалить",
|
||||
"common.create": "Создать",
|
||||
"common.back": "Назад",
|
||||
"common.edit": "Редактировать",
|
||||
"common.add": "Добавить",
|
||||
"common.confirm": "Подтвердить?",
|
||||
"common.yes": "Да",
|
||||
"common.no": "Нет",
|
||||
"common.name": "Название",
|
||||
"common.description": "Описание",
|
||||
"common.required": "*",
|
||||
|
||||
"status.online": "\u041e\u043d\u043b\u0430\u0439\u043d",
|
||||
"status.offline": "\u041e\u0444\u0444\u043b\u0430\u0439\u043d",
|
||||
"status.degraded": "\u041d\u0435\u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e",
|
||||
"status.unknown": "\u041d\u0435\u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e",
|
||||
|
||||
"theme.dark": "\u0422\u0451\u043c\u043d\u0430\u044f",
|
||||
"theme.light": "\u0421\u0432\u0435\u0442\u043b\u0430\u044f",
|
||||
"theme.system": "\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u0430\u044f",
|
||||
"theme.toggle": "\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0442\u0435\u043c\u0443 (\u0442\u0435\u043a\u0443\u0449\u0430\u044f: {mode})",
|
||||
"theme.title": "\u0422\u0435\u043c\u0430: {mode}",
|
||||
|
||||
"bg.mesh": "\u041c\u0435\u0448-\u0433\u0440\u0430\u0434\u0438\u0435\u043d\u0442",
|
||||
"bg.particles": "\u0427\u0430\u0441\u0442\u0438\u0446\u044b",
|
||||
"bg.aurora": "\u0421\u0438\u044f\u043d\u0438\u0435",
|
||||
"bg.none": "\u041d\u0435\u0442",
|
||||
"bg.title": "\u042d\u0444\u0444\u0435\u043a\u0442 \u0444\u043e\u043d\u0430",
|
||||
"bg.aria_label": "\u0418\u0437\u043c\u0435\u043d\u0438\u0442\u044c \u044d\u0444\u0444\u0435\u043a\u0442 \u0444\u043e\u043d\u0430",
|
||||
|
||||
"sidebar.expand": "\u0420\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0431\u043e\u043a\u043e\u0432\u0443\u044e \u043f\u0430\u043d\u0435\u043b\u044c",
|
||||
"sidebar.collapse": "\u0421\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0431\u043e\u043a\u043e\u0432\u0443\u044e \u043f\u0430\u043d\u0435\u043b\u044c",
|
||||
"sidebar.toggle": "\u041f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0431\u043e\u043a\u043e\u0432\u0443\u044e \u043f\u0430\u043d\u0435\u043b\u044c",
|
||||
"sidebar.close": "\u0417\u0430\u043a\u0440\u044b\u0442\u044c \u0431\u043e\u043a\u043e\u0432\u0443\u044e \u043f\u0430\u043d\u0435\u043b\u044c",
|
||||
|
||||
"home.welcome": "\u0414\u043e\u0431\u0440\u043e \u043f\u043e\u0436\u0430\u043b\u043e\u0432\u0430\u0442\u044c, {name}. \u0414\u043e\u0441\u043a\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0435\u0449\u0451 \u043d\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d\u0430.",
|
||||
"home.view_boards": "\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0434\u043e\u0441\u043a\u0438",
|
||||
"home.browse_apps": "\u041e\u0431\u0437\u043e\u0440 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439",
|
||||
|
||||
"language.label": "\u042f\u0437\u044b\u043a",
|
||||
|
||||
"settings.title": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438",
|
||||
"settings.theme": "\u0420\u0435\u0436\u0438\u043c \u0442\u0435\u043c\u044b",
|
||||
"settings.primary_color": "\u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0446\u0432\u0435\u0442",
|
||||
"settings.hue": "\u041e\u0442\u0442\u0435\u043d\u043e\u043a",
|
||||
"settings.saturation": "\u041d\u0430\u0441\u044b\u0449\u0435\u043d\u043d\u043e\u0441\u0442\u044c",
|
||||
"settings.background": "\u042d\u0444\u0444\u0435\u043a\u0442 \u0444\u043e\u043d\u0430",
|
||||
"settings.language": "\u042f\u0437\u044b\u043a",
|
||||
"settings.save": "\u0421\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438",
|
||||
"settings.saving": "\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435...",
|
||||
"settings.saved": "\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b!"
|
||||
"status.online": "Онлайн",
|
||||
"status.offline": "Оффлайн",
|
||||
"status.degraded": "Нестабильно",
|
||||
"status.unknown": "Неизвестно",
|
||||
"theme.dark": "Тёмная",
|
||||
"theme.light": "Светлая",
|
||||
"theme.system": "Системная",
|
||||
"theme.toggle": "Переключить тему (текущая: {mode})",
|
||||
"theme.title": "Тема: {mode}",
|
||||
"bg.mesh": "Меш-градиент",
|
||||
"bg.particles": "Частицы",
|
||||
"bg.aurora": "Сияние",
|
||||
"bg.none": "Нет",
|
||||
"bg.title": "Эффект фона",
|
||||
"bg.aria_label": "Изменить эффект фона",
|
||||
"sidebar.expand": "Развернуть боковую панель",
|
||||
"sidebar.collapse": "Свернуть боковую панель",
|
||||
"sidebar.toggle": "Переключить боковую панель",
|
||||
"sidebar.close": "Закрыть боковую панель",
|
||||
"home.welcome": "Добро пожаловать, {name}. Доска по умолчанию ещё не настроена.",
|
||||
"home.view_boards": "Посмотреть доски",
|
||||
"home.browse_apps": "Обзор приложений",
|
||||
"language.label": "Язык",
|
||||
"settings.title": "Настройки",
|
||||
"settings.theme": "Режим темы",
|
||||
"settings.primary_color": "Основной цвет",
|
||||
"settings.hue": "Оттенок",
|
||||
"settings.saturation": "Насыщенность",
|
||||
"settings.background": "Эффект фона",
|
||||
"settings.language": "Язык",
|
||||
"settings.save": "Сохранить настройки",
|
||||
"settings.saving": "Сохранение...",
|
||||
"settings.saved": "Настройки сохранены!",
|
||||
"settings.bookmarklet_title": "Быстрое добавление (букмарклет)",
|
||||
"settings.bookmarklet_instructions": "Перетащите кнопку ниже на панель закладок браузера. При посещении любой страницы нажмите её, чтобы быстро добавить сайт в App Launcher.",
|
||||
"settings.bookmarklet_drag": "Добавить в Launcher",
|
||||
"settings.bookmarklet_drag_hint": "Перетащите на панель закладок",
|
||||
"settings.bookmarklet_show_code": "Показать код букмарклета",
|
||||
"app.quick_add_title": "Быстрое добавление приложения",
|
||||
"app.quick_add_description": "Проверьте данные ниже и сохраните, чтобы добавить приложение в лаунчер.",
|
||||
"app.quick_add_success": "Приложение успешно добавлено!",
|
||||
"app.quick_add_view_apps": "Посмотреть приложения",
|
||||
"app.quick_add_close": "Закрыть окно",
|
||||
"offline.title": "Нет подключения",
|
||||
"offline.description": "Похоже, вы потеряли подключение к интернету. Проверьте сеть и попробуйте снова.",
|
||||
"offline.retry": "Повторить",
|
||||
"install.title": "Установить приложение",
|
||||
"install.description": "Добавьте Web App Launcher на главный экран для быстрого доступа.",
|
||||
"install.button": "Установить",
|
||||
"install.dismiss": "Скрыть предложение установки"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user