feat: daemon health panel, brand-rail status chips, user timezone selector
Build / build (push) Successful in 10m35s
Build / build (push) Successful in 10m35s
- Health API now surfaces Docker /info + /version (version, platform, kernel, container/image counts, storage driver, memory, latency) and NPM aggregates (proxy host total, managed-by-Tinyforge count, access lists, certificates, endpoint URL). - Docker/NPM indicators moved out of the sidebar footer and into a compact mono-styled rail directly under the Tinyforge brand title, with pulse/fault animations and click-to-expand error hints. - New SystemDaemonsCard on the dashboard: two terminal-styled panels (Docker Engine + Proxy) with a running/paused/stopped stacked bar, key-value diagnostics, and a total-vs-managed proportion meter on the proxy-hosts tile. - Shared health store so the sidebar and dashboard share a single 30 s poll instead of duplicating traffic. - User-facing timezone preference with auto-detect fallback; all dates across projects, sites, stacks, settings, backup, event log and stale containers now render through \$fmt.date / \$fmt.datetime. - en/ru translations for both features.
This commit is contained in:
@@ -859,6 +859,43 @@
|
||||
"proxies": "Прокси",
|
||||
"recentErrors": "Недавние ошибки"
|
||||
},
|
||||
"daemons": {
|
||||
"title": "Демоны",
|
||||
"refresh": "Обновить",
|
||||
"refreshing": "Обновление",
|
||||
"docker": "Docker Engine",
|
||||
"npm": "Nginx Proxy Manager",
|
||||
"traefik": "Traefik",
|
||||
"proxy": "Прокси",
|
||||
"online": "Онлайн",
|
||||
"offline": "Оффлайн",
|
||||
"notConfigured": "Не настроено",
|
||||
"containers": "Контейнеры",
|
||||
"running": "Запущено",
|
||||
"paused": "Пауза",
|
||||
"stopped": "Остановлено",
|
||||
"version": "Версия",
|
||||
"apiVersion": "Версия API",
|
||||
"platform": "Платформа",
|
||||
"kernel": "Ядро",
|
||||
"cpu": "CPU",
|
||||
"memory": "Память",
|
||||
"storage": "Хранилище",
|
||||
"images": "Образы",
|
||||
"latency": "Задержка",
|
||||
"rootDir": "Корневой каталог",
|
||||
"provider": "Провайдер",
|
||||
"endpoint": "Адрес",
|
||||
"proxyHosts": "Прокси-хосты",
|
||||
"managed": "наши",
|
||||
"external": "внешние",
|
||||
"accessLists": "Списки доступа",
|
||||
"certificates": "Сертификаты",
|
||||
"dockerHint": "Проверьте, что Docker-демон запущен и сокет доступен.",
|
||||
"proxyHint": "Проверьте URL прокси, учётные данные и доступность сервиса.",
|
||||
"noProxyDesc": "Провайдер прокси не настроен. Tinyforge поддерживает Nginx Proxy Manager или Traefik.",
|
||||
"configureProxy": "Настроить в параметрах"
|
||||
},
|
||||
"dns": {
|
||||
"title": "DNS-записи",
|
||||
"description": "Просмотр и управление DNS-записями, созданными Tinyforge.",
|
||||
@@ -1021,5 +1058,26 @@
|
||||
"fetchLogs": "Не удалось загрузить логи"
|
||||
}
|
||||
}
|
||||
},
|
||||
"timezone": {
|
||||
"eyebrow": "The Forge // Хронограф",
|
||||
"title": "Часовой пояс отображения",
|
||||
"subtitle": "Все даты в Tinyforge — лог событий, деплои, бэкапы, сайты — показываются в этом поясе.",
|
||||
"modeLabel": "Режим определения",
|
||||
"modeAuto": "Автоопределение",
|
||||
"modeManual": "Вручную",
|
||||
"autoDetect": "Автоопределение из браузера",
|
||||
"autoBadge": "Авто",
|
||||
"activeZone": "Активный пояс",
|
||||
"changeZone": "Сменить часовой пояс",
|
||||
"clickToChange": "Нажмите, чтобы выбрать пояс →",
|
||||
"pickerTitle": "Выбор часового пояса",
|
||||
"pickerPlaceholder": "Поиск — город, регион, смещение UTC…",
|
||||
"groupAuto": "Определение",
|
||||
"groupPopular": "Популярные",
|
||||
"groupAll": "Все пояса",
|
||||
"previewFull": "Полная метка времени",
|
||||
"previewDate": "Только дата",
|
||||
"previewHint": "Метки времени в логе событий будут выглядеть именно так."
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user