namespace LazyBear.MCP.TUI.Localization; /// /// Все строки TUI для одной локали. /// При добавлении новой строки: добавить свойство сюда и перевод в оба статических экземпляра. /// public sealed record TuiResources { // ── Подсказка и вкладки ────────────────────────────────────────────────── public string HintBar { get; init; } = ""; public string TabOverview { get; init; } = ""; public string TabLogs { get; init; } = ""; public string TabSettings { get; init; } = ""; // ── Dashboard ──────────────────────────────────────────────────────────── public string OverviewTitle { get; init; } = ""; public string OverviewHint { get; init; } = ""; public string OverviewEmpty { get; init; } = ""; public string DashboardEndpointLabel { get; init; } = ""; public string StateOn { get; init; } = ""; public string StateOff { get; init; } = ""; public string FooterModule { get; init; } = ""; public string FooterTools { get; init; } = ""; // ── Logs ───────────────────────────────────────────────────────────────── public string LogsTitle { get; init; } = ""; public string LogsHint { get; init; } = ""; public string LogsEmpty { get; init; } = ""; public string LogsPlaceholder { get; init; } = ""; public string LogsSticky { get; init; } = ""; public string LogsManual { get; init; } = ""; public string FilterLabel { get; init; } = ""; public string FilterAll { get; init; } = ""; // ── Settings ───────────────────────────────────────────────────────────── public string SettingsTitle { get; init; } = ""; public string SettingsHint { get; init; } = ""; public string SettingsEmpty { get; init; } = ""; public string SettingsUnavailable { get; init; } = ""; public string ModuleOff { get; init; } = ""; public string ModuleOffPreserved { get; init; } = ""; // ── Локали ─────────────────────────────────────────────────────────────── public static readonly TuiResources En = new() { HintBar = "Tab: tabs | Arrows: navigate | Space: toggle | Enter: open | L: language | Q: quit", TabOverview = "Dashboard", TabLogs = "Logs", TabSettings = "Settings", OverviewTitle = "Dashboard", OverviewHint = "Up/Down: select module. Enter: open settings.", OverviewEmpty = "No modules registered.", DashboardEndpointLabel = "MCP Endpoint", StateOn = "ON", StateOff = "OFF", FooterModule = "Module", FooterTools = "Tools", LogsTitle = "Runtime Logs", LogsHint = "Left/Right: filter | Up/Down: scroll | PageUp/Down: page", LogsEmpty = "No log entries yet.", LogsPlaceholder = "Incoming log entries will appear here.", LogsSticky = "sticky", LogsManual = "manual", FilterLabel = "Filter", FilterAll = "All", SettingsTitle = "Tool Registry", SettingsHint = "Up/Down: select | Left/Right: expand/collapse | Space: toggle", SettingsEmpty = "No modules available.", SettingsUnavailable = "Runtime enable/disable settings are unavailable.", ModuleOff = "(module off)", ModuleOffPreserved = "(module is OFF, tool state is preserved)" }; public static readonly TuiResources Ru = new() { HintBar = "Tab: вкладки | Стрелки: навигация | Space: вкл/выкл | Enter: открыть | L: язык | Q: выход", TabOverview = "Dashboard", TabLogs = "Логи", TabSettings = "Настройки", OverviewTitle = "Dashboard", OverviewHint = "Вверх/вниз: выбор модуля. Enter: открыть настройки.", OverviewEmpty = "Нет зарегистрированных модулей.", DashboardEndpointLabel = "MCP Endpoint", StateOn = "ВКЛ", StateOff = "ВЫКЛ", FooterModule = "Модуль", FooterTools = "Инструменты", LogsTitle = "Логи", LogsHint = "Лево/право: фильтр | Вверх/вниз: прокрутка | PageUp/Down: страница", LogsEmpty = "Записей пока нет.", LogsPlaceholder = "Новые записи будут появляться здесь.", LogsSticky = "следить", LogsManual = "вручную", FilterLabel = "Фильтр", FilterAll = "Все", SettingsTitle = "Реестр инструментов", SettingsHint = "Вверх/вниз: выбор | Лево/право: развернуть/свернуть | Space: вкл/выкл", SettingsEmpty = "Нет доступных модулей.", SettingsUnavailable = "Настройки включения/выключения недоступны.", ModuleOff = "(модуль выкл)", ModuleOffPreserved = "(модуль ВЫКЛ, состояние инструментов сохранено)" }; }