import type { OperatorRole, ServerStatus, SubscriptionStatus, IncidentSeverity, IncidentStatus, AuditActionType } from '../contracts'; export const RU_ROLES: Record = { platform_owner: { label: 'Владелец платформы', shortLabel: 'Владелец', description: 'Полный доступ ко всей инфраструктуре, биллингу, лицензиям и управлению платформой', }, platform_admin: { label: 'Администратор платформы', shortLabel: 'Админ', description: 'Управление организациями, инсталляциями, серверами и техническими параметрами', }, support_operator: { label: 'Оператор поддержки', shortLabel: 'Поддержка', description: 'Диагностика организаций, сброс кэша, техническая помощь и расследования', }, billing_manager: { label: 'Менеджер биллинга', shortLabel: 'Биллинг', description: 'Финансовые показатели, тарифы, подписки, продления и льготные периоды', }, security_auditor: { label: 'Аудитор безопасности', shortLabel: 'Аудитор', description: 'Только чтение: сквозной журнал аудита (SHA-256), события безопасности и логи', }, release_manager: { label: 'Релиз-инженер', shortLabel: 'Релизы', description: 'Управление версиями модулей, каталогом расширений и плановыми обновлениями', }, }; export const RU_SERVER_STATUS: Record = { healthy: { label: 'Работает нормально', badgeVariant: 'success' }, degraded: { label: 'Работает с ограничениями', badgeVariant: 'warning' }, offline: { label: 'Недоступен', badgeVariant: 'danger' }, }; export const RU_SUBSCRIPTION_STATUS: Record = { trial: { label: 'Пробный период', badgeVariant: 'info' }, active: { label: 'Активна', badgeVariant: 'success' }, grace: { label: 'Льготный период', badgeVariant: 'warning' }, suspended: { label: 'Приостановлена', badgeVariant: 'danger' }, canceled: { label: 'Отменена', badgeVariant: 'neutral' }, }; export const RU_INCIDENT_SEVERITY: Record = { P0_CRITICAL: { label: 'P0 Критическая авария', short: 'P0 Критическая' }, P1_MAJOR: { label: 'P1 Серьёзный инцидент', short: 'P1 Серьёзный' }, P2_DEGRADED: { label: 'P2 Ограничение работы', short: 'P2 Деградация' }, P3_INFO: { label: 'P3 Информационный', short: 'P3 Инфо' }, }; export const RU_INCIDENT_STATUS: Record = { investigating: 'Расследуется', identified: 'Локализован', monitoring: 'Мониторинг устранения', resolved: 'Устранён', }; export const RU_AUDIT_ACTION: Record = { suspend_tenant: 'Приостановка организации', resume_tenant: 'Возобновление организации', drain_node: 'Вывод сервера на обслуживание (Drain)', enable_maintenance: 'Включение режима тех. обслуживания', disable_maintenance: 'Выключение режима тех. обслуживания', grant_grace_period: 'Предоставление льготного периода', restart_gateway: 'Перезапуск шлюза обмена', invalidate_cache: 'Инвалидация распределённого кэша', rollback_module: 'Откат версии модуля', circuit_breaker_trip: 'Аварийное срабатывание Circuit Breaker', circuit_breaker_reset: 'Восстановление связи мониторинга', }; export const RU_MODULE_CATEGORY: Record = { core: 'Базовые модули', trade: 'Торговля и продажи', kitchen: 'Кухня и производство', finance: 'Финансы и учёт', management: 'Управление персоналом', analytics: 'Аналитика и AI', }; export const RU_PLATFORMS: Record = { web: 'Веб-версия', desktop: 'Компьютеры (Desktop)', android: 'Android-устройства', }; export const RU_THEMES = { 'soft-light': 'Мягкая светлая', light: 'Классическая светлая', dark: 'Тёмная', } as const; export const RU_UI = { brand: 'Krona Control Center', tagline: 'Кабинет оператора платформы', scope: 'Контур платформы', productionScope: 'Боевой контур (Production)', gateTitle: 'Защита доступа оператора', gateSubtitle: 'Демонстрационный стенд закрытого кабинета оператора платформы', gatePinPlaceholder: 'Введите код доступа (например: krona2026 или 8492)...', gateSubmit: 'Войти в консоль оператора', gateDemoLogin: 'Быстрый демо-вход в 1 клик (Режим ревьюера)', gateError: 'Неверный код доступа. Попробуйте krona2026 или 8492.', forbiddenTitle: 'Доступ ограничен политикой безопасности', forbiddenDescription: 'У текущей роли оператора недостаточно прав для выполнения этого действия.', forbiddenBack: 'Вернуться в Обзор', nav: { overview: 'Обзор', organizations: 'Организации', incidents: 'Инциденты', servers: 'Серверы', more: 'Ещё', billing: 'Подписки и платежи', modules: 'Каталог модулей', installations: 'Установки', announcements: 'Оповещения', audit: 'Журнал аудита', settings: 'Настройки оператора', }, overviewTabs: { attention: 'Требует внимания', metrics: 'Показатели', infrastructure: 'Инфраструктура', }, filters: { title: 'Фильтры', apply: 'Применить', reset: 'Сбросить фильтры', searchPlaceholder: 'Поиск...', statusAll: 'Все статусы', roleAll: 'Все роли', }, inspector: { title: 'Инспектор объекта 360°', tabOverview: 'Сводка', tabModules: 'Модули', tabInstallations: 'Установки', tabBilling: 'Биллинг', close: 'Закрыть', }, system: { synced: 'Синхронизировано', syncing: 'Синхронизация...', nodeLabel: 'Узел', resetDemo: 'Сбросить демоданные', simulateOutage: 'Имитировать сбой мониторинга', restoreMonitoring: 'Восстановить мониторинг', themeLabel: 'Тема оформления', exitToClient: 'Перейти в Krona Business OS', operatorProfile: 'Профиль оператора', }, };