mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-08-09 21:00:58 +00:00
feat(ui): redesign the overview page as a trend-first command deck
Replace the ten-small-cards overview with an action bar, four vitals
tiles carrying 72-sample sparklines seeded from /server/history, a
two-series throughput chart, a TCP/UDP connections chart, and a
grouped system strip (uptime xray|os, panel ram|threads, ip
addresses). StatusCard and XrayStatusCard are deleted; every modal
stays reachable from the action bar, the Xray error message moves
into a tooltip on the state pill, and the panel version text keeps
opening the update modal (the dev-channel switch lives there) even
when no update is available. Live values sit beside the
upload/download and tcp/udp legends, a health sentence appears only
when a vital crosses the shared warn/crit thresholds now exported
from models/status, and load average is left to System History.
The sidebar becomes an auto-collapsed 72px icon rail that expands as
an overlay on hover: rail width, brand-row height and menu paddings
are pinned so nothing shifts during the transition, the collapsed-menu
tooltips are disabled, hover state survives the per-page sidebar
remounts (with a matches(':hover') resync), and the manual collapse
trigger is gone.
Sparkline gains rgb()/rgba() support in its fill gradient, a
showLegend prop so pages stop reaching into its internals, and loses
a dependency-less repaint effect that doubled canvas paints. Chart
tooltips show clock time via the new TimeFormatter.formatClock;
accents come from theme tokens instead of status.cpu.color. Verified
by screenshot at 390/800/1150/1280/1400/1600px in light and dark,
en and fa-IR, plus programmatic geometry checks on the sidebar.
Locale files gain 8 keys and lose 9 dead ones across all 13
languages.
This commit is contained in:
@@ -106,7 +106,6 @@
|
||||
"routing": "Маршрутизация",
|
||||
"outbounds": "Исходящие",
|
||||
"apiDocs": "Документация API",
|
||||
"link": "Управление",
|
||||
"donate": "Поддержать",
|
||||
"hosts": "Хосты",
|
||||
"docs": "Документация",
|
||||
@@ -127,12 +126,9 @@
|
||||
},
|
||||
"index": {
|
||||
"cpu": "ЦП",
|
||||
"logicalProcessors": "Логические процессоры",
|
||||
"frequency": "Частота",
|
||||
"swap": "Подкачка",
|
||||
"storage": "Диск",
|
||||
"memory": "Память",
|
||||
"threads": "Потоки",
|
||||
"xrayStatus": "Xray",
|
||||
"stopXray": "Стоп",
|
||||
"restartXray": "Перезапуск",
|
||||
@@ -153,7 +149,6 @@
|
||||
"xrayStatusRunning": "Запущен",
|
||||
"xrayStatusStop": "Остановлен",
|
||||
"xrayStatusError": "Ошибка",
|
||||
"operationHours": "Время работы системы",
|
||||
"systemHistoryTitle": "История системы",
|
||||
"historyTitleCpu": "Загрузка ЦП",
|
||||
"historyTitleMem": "Использование памяти",
|
||||
@@ -171,7 +166,6 @@
|
||||
"historyTabLoad": "Нагрузка",
|
||||
"historyTabConnections": "Соединения",
|
||||
"historyTabDiskUsage": "Использование диска",
|
||||
"charts": "Графики",
|
||||
"xrayMetricsTitle": "Метрики Xray",
|
||||
"xrayTitleHeap": "Выделенная память кучи",
|
||||
"xrayTitleSys": "Память, зарезервированная у ОС",
|
||||
@@ -200,7 +194,6 @@
|
||||
"overallSpeed": "Общая скорость передачи трафика",
|
||||
"upload": "Загрузка",
|
||||
"download": "Скачать",
|
||||
"totalData": "Общий объем трафика",
|
||||
"sent": "Отправлено",
|
||||
"received": "Получено",
|
||||
"xraySwitchVersionDialog": "Переключить версию Xray",
|
||||
@@ -250,7 +243,18 @@
|
||||
"exportDatabasePgDesc": "Нажмите, чтобы скачать дамп PostgreSQL (.dump) текущей базы данных на ваше устройство.",
|
||||
"importDatabasePgDesc": "Нажмите, чтобы выбрать и загрузить резервную копию PostgreSQL (.dump), базу данных SQLite (.db) или миграционный дамп SQLite для восстановления базы данных. Это заменит все текущие данные.",
|
||||
"migrationDownload": "Скачать файл миграции",
|
||||
"migrationDownloadPgDesc": "Нажмите, чтобы скачать базу данных SQLite (.db), собранную из ваших данных PostgreSQL и готовую для запуска панели на SQLite."
|
||||
"migrationDownloadPgDesc": "Нажмите, чтобы скачать базу данных SQLite (.db), собранную из ваших данных PostgreSQL и готовую для запуска панели на SQLite.",
|
||||
"avg": "среднее",
|
||||
"peak": "пик",
|
||||
"free": "свободно",
|
||||
"openSockets": "открытых сокетов",
|
||||
"throughputSub": "Всего по интерфейсу",
|
||||
"avgWindow": "Среднее за период",
|
||||
"healthWarm": "{list} — повышенная нагрузка",
|
||||
"healthCritical": "{list} — критический уровень",
|
||||
"panel": "Панель",
|
||||
"threads": "Потоки",
|
||||
"uptime": "Время работы"
|
||||
},
|
||||
"inbounds": {
|
||||
"totalDownUp": "Отправлено/получено",
|
||||
|
||||
Reference in New Issue
Block a user