Newer
Older
tgclient-mcp / frontend / src / i18n / messages / ru.js
// Русский — полный словарь (тот же набор ключей, что en.js); нет ключа — падает en.
export default {
  // app / shell / nav
  'app.docTitle': 'tgclient',
  'shell.title': 'Аккаунты Telegram',
  'shell.subtitle': 'tgclient',
  'nav.accounts': 'Аккаунты',
  'nav.mcpKeys': 'MCP-ключи',
  'nav.admin': 'Админка',
  'nav.settings': 'Настройки',
  'nav.signOut': 'Выйти',

  // login screen
  'login.title': 'Вход',
  'login.subtitle': 'tgclient закрыт gnexus-auth',
  'login.offline': 'Нет соединения — вход требует доступности сервиса',
  'login.action': 'Войти',

  // common
  'common.copy': 'Копировать',
  'common.cancel': 'Отмена',
  'common.close': 'Закрыть',
  'common.delete': 'Удалить',
  'common.failed': 'Не получилось',
  'common.loading': 'Загрузка',

  // time
  'time.never': 'никогда',
  'time.now': 'только что',
  'time.secondsAgo': '{n} с назад',
  'time.minutesAgo': '{n} мин назад',
  'time.hoursAgo': '{n} ч назад',
  'time.daysAgo': '{n} дн назад',

  // accounts page
  'accounts.title': 'Аккаунты Telegram',
  'accounts.addAccount': 'Добавить аккаунт',
  'accounts.emptyTitle': 'Аккаунтов пока нет',
  'accounts.emptyText': 'Добавьте первый Telegram-аккаунт — код придёт в приложение.',
  'accounts.maxAccounts': 'Аккаунты: {n} / {limit}',
  'accounts.colPhone': 'Телефон',
  'accounts.colUser': 'Пользователь ТГ',
  'accounts.colLabel': 'Заметка',
  'accounts.colStatus': 'Статус',
  'accounts.colConnected': 'Подключён',
  'accounts.colLastUsed': 'Использован',
  'accounts.colActions': '',
  'accounts.statusActive': 'активен',
  'accounts.statusLoggedOut': 'вышел',
  'accounts.statusError': 'ошибка',
  'accounts.connectedYes': 'подключён',
  'accounts.connectedNo': 'не активен',
  'accounts.connect': 'Подключить',
  'accounts.disconnect': 'Отключить',
  'accounts.delete': 'Выйти из ТГ',
  'accounts.deleteTitle': 'Выйти из Telegram?',
  'accounts.deleteMessage':
    'Сессия Telegram будет отозвана (log_out), аккаунт удалён из tgclient. Действие необратимо.',
  'accounts.deleted': 'Аккаунт удалён',
  'accounts.connectFailed': 'Не удалось подключить',
  'accounts.loginAgain': 'Перелогиниться',

  // login wizard
  'wizard.title': 'Добавить Telegram-аккаунт',
  'wizard.subtitle': 'Введите номер телефона — код придёт в Telegram',
  'wizard.phone': 'Телефон (E.164, например +79991234567)',
  'wizard.label': 'Заметка (необязательно)',
  'wizard.labelPlaceholder': 'например, рабочий',
  'wizard.sendCode': 'Отправить код',
  'wizard.codeStep': 'Код из Telegram',
  'wizard.codeHint': 'Код отправлен на {phone} — действует до {until}',
  'wizard.code': 'Код',
  'wizard.submitCode': 'Подтвердить код',
  'wizard.passwordStep': 'Cloud-пароль (2FA)',
  'wizard.passwordHint': 'Аккаунт защищён облачным паролем Telegram',
  'wizard.password': 'Пароль',
  'wizard.submitPassword': 'Подтвердить пароль',
  'wizard.success': 'Аккаунт добавлен',
  'wizard.done': 'Готово — закрываю…',
  'wizard.reused': 'По этому номеру уже ждут код — код уже отправлен',
  'wizard.attemptsLeft': 'Осталось попыток: {n}',
  'wizard.wrongCode': 'Неверный код',
  'wizard.wrongPassword': 'Неверный пароль',
  'wizard.viaQr': 'Вход по QR',
  'wizard.qrHint': 'Открой Telegram → Настройки → Устройства → «Слинковать устройство» — и отсканируй QR. Код по SMS не нужен',
  'wizard.cancelFailed': 'Не удалось отменить логин',
  'wizard.cancel': 'Отменить логин',
  'wizard.expired': 'Время логина истекло — начните заново',

  // mcp keys page
  'mcpKeys.title': 'MCP-ключи',
  'mcpKeys.myKeys': 'Мои ключи',
  'mcpKeys.myKeysNote':
    'Персональные MCP-ключи открывают ИИ-агентам ваши Telegram-аккаунты. Роль ключа — снейпшот вашей роли на момент выпуска.',
  'mcpKeys.limits': 'Активных: {count} / {limit}',
  'mcpKeys.generate': 'Выдать ключ',
  'mcpKeys.newKey': 'Новый ключ',
  'mcpKeys.plaintextOnceName': 'Новый ключ будет показан один раз — сразу после создания.',
  'mcpKeys.plaintextHint': 'Ключ показывается один раз. Сохраните его — повторно показан не будет.',
  'mcpKeys.createdTitle': 'Ключ создан',
  'mcpKeys.keyName': 'Имя ключа',
  'mcpKeys.namePlaceholder': 'например, рабочий-агент',
  'mcpKeys.defaultName': 'agent',
  'mcpKeys.authOff':
    'Сервис открыт (gnexus-auth не настроен): персональные ключи не выдаются — используйте статический админ-токен.',
  'mcpKeys.loading': 'Загрузка ключей',
  'mcpKeys.colKey': 'Имя',
  'mcpKeys.colTail': 'Хвост',
  'mcpKeys.colRole': 'Роль',
  'mcpKeys.colCreated': 'Создан',
  'mcpKeys.colUsed': 'Использован',
  'mcpKeys.colStatus': 'Статус',
  'mcpKeys.colOwner': 'Владелец',
  'mcpKeys.badgeActive': 'активен',
  'mcpKeys.badgeRevoked': 'отозван',
  'mcpKeys.revoke': 'Отозвать',
  'mcpKeys.revokeTitle': 'Отозвать ключ?',
  'mcpKeys.revokeMessage': 'Ключ «{name}» перестанет работать сразу. Отзыв необратим.',
  'mcpKeys.revokedTitle': 'Ключ отозван',
  'mcpKeys.emptyOwn': 'Ключей пока нет',
  'mcpKeys.emptyAll': 'Ключей нет',
  'mcpKeys.allKeysAdmin': 'Все ключи (админ)',
  'mcpKeys.allKeysNote': 'Все ключи сервиса, включая отозванные.',
  'mcpKeys.howToConnect': 'Подключение агента',
  'mcpKeys.connectNote':
    'Агент ходит в MCP-эндпоинт; доступ — только к вашим аккаунтам.',
  'mcpKeys.endpoint': 'MCP-эндпоинт',

  // admin page
  'admin.title': 'Админка',
  'admin.tabUsers': 'Пользователи',
  'admin.tabAccounts': 'Аккаунты',
  'admin.tabTokens': 'Ключи',
  'admin.notAllowed': 'Нужна роль admin/superadmin',
  'admin.colUser': 'Пользователь',
  'admin.colEmail': 'E-mail',
  'admin.colRole': 'Роль',
  'admin.colBlocked': 'Заблокирован',
  'admin.colOwner': 'Владелец',
  'admin.colName': 'Имя',
  'admin.colPhone': 'Телефон',
  'admin.colStatus': 'Статус',
  'admin.colConnected': 'Подключён',
  'admin.colLastUsed': 'Использован',
  'admin.colHint': 'Хвост',
  'admin.colCreatedAt': 'Создан',
  'admin.colActions': '',
  'admin.revokeSession': 'Отключить',
  'admin.revokeSessionTitle': 'Отключить клиент?',
  'admin.revokeSessionMessage':
    'Живой клиент аккаунта будет снят с пула (сессия остаётся в БД — это не логаут Telegram).',
  'admin.revokeSessionDone': 'Клиент отключён',
  'admin.pendingLogins': 'Ожидают логина: {n} · лимит аккаунтов: {max}',
  'admin.colPendingLabel': 'Заметка',
  'admin.yes': 'да',
  'admin.no': 'нет',

  // settings page
  'settings.title': 'Настройки',
  'settings.locale': 'Язык',
  'settings.localeOff': 'по умолчанию (из аккаунта)',
  'settings.localeSaved': 'Язык сохранён',
  'settings.statusTitle': 'Состояние сервиса',
  'settings.statusVersion': 'Версия',
  'settings.statusAccounts': 'Аккаунты (активных / подключено / логинов в процессе)',
  'settings.statusDb': 'База данных',
  'settings.statusMaxAccounts': 'Лимит аккаунтов на пользователя',
}