diff --git a/apps/web/src/components/layout/system-monitor-popover.tsx b/apps/web/src/components/layout/system-monitor-popover.tsx index 94c7285..c1d241b 100644 --- a/apps/web/src/components/layout/system-monitor-popover.tsx +++ b/apps/web/src/components/layout/system-monitor-popover.tsx @@ -25,7 +25,12 @@ type MonitorCheck = { to: '/sync-journal' | '/settings/notifications' | '/accounts' | '/vps' | '/dashboard' } -const TONE_TEXT: Record = { er: 'text-destructive', wn: 'text-warning', ok: 'text-success' } +// text-warning/text-success на белом фоне не проходят контраст — *-foreground в светлой теме (как в KPI). +const TONE_TEXT: Record = { + er: 'text-destructive', + wn: 'text-warning-foreground dark:text-warning', + ok: 'text-success-foreground dark:text-success', +} const TONE_BG: Record = { er: 'bg-destructive', wn: 'bg-warning', ok: 'bg-success' } type SyncStatusRow = { @@ -195,7 +200,7 @@ export function SystemMonitorPopover() { > {alert ? 'Внимание' : 'Норма'} diff --git a/docs/features.md b/docs/features.md index f3f03d5..0884561 100644 --- a/docs/features.md +++ b/docs/features.md @@ -147,7 +147,11 @@ ![Статус блокировок](screenshots/blocking.png) -Проверка доступности популярных сервисов **с самого VPS** (через [censorcheck](https://github.com/vernette/censorcheck)): доступен, заблокирован, отказ (403), редирект, таймаут. Результат автоматически привязывается к VPS по IP; есть история прогонов и группировка по VPS или по сервису. +Проверка доступности популярных сервисов **с самого VPS** (через [censorcheck](https://github.com/vernette/censorcheck)): доступен, заблокирован, отказ (403), редирект, таймаут. Результат автоматически привязывается к VPS по IP. + +- **Шкала времени**: каждая капсула — час с измерениями; высота — число проб, красная/жёлтая часть — доля прогонов с ограничениями. Переход кликом, кнопками ‹ ›, клавишами ← → или пресетами «Сейчас / −1 ч / −6 ч / −24 ч / −7 д» — матрица показывает состояние на выбранный момент. +- **Матрица**: строка — VPS с флагом страны, колонка — сервис с иконкой бренда; цветной значок статуса и колонка «Доступно X из Y» с полосой. Переключение «По VPS / По сервису», фильтры по статусу, сервису, хостеру, стране; клик открывает детали прогона. +- **История** — все сохранённые прогоны. Запуск на сервере — одна команда (скрипт ставит недостающие `jq`/`dig`, показывает прогресс и отправляет результат с одноразовым токеном): @@ -171,7 +175,11 @@ curl -fsSL https://vt.example.com/cc | bash -s -- --remove-daily ![GeoIP](screenshots/geo.png) -Какую страну видят у вашего IP GeoIP-базы (MaxMind, RIPE, ipinfo, Cloudflare…) и сервисы (Google, YouTube, Netflix, ChatGPT…), включая CDN, — через [ipregion](https://github.com/vernette/ipregion). Матрица VPS × сервис, переключение «по VPS / по сервису», подсветка расхождений, история. +Какую страну видят у вашего IP GeoIP-базы (MaxMind, RIPE, ipinfo, Cloudflare…) и сервисы (Google, YouTube, Netflix, ChatGPT…), включая CDN, — через [ipregion](https://github.com/vernette/ipregion). + +- Ячейки матрицы — флаг и ISO-код страны; сервис, который видит **другую** страну, чем большинство, подсвечен жёлтым. +- Колонка «Страна» — итоговая страна по большинству и «совпадает N из M». +- Та же шкала времени, что у блокировок: жёлтые капсулы — часы с расхождениями. Запуск так же, как у блокировок: `curl -fsSL https://vt.example.com/ic | bash` (`--daily`, `--remove-daily`), для MikroTik — `ic.rsc`. diff --git a/docs/screenshots/accounts.png b/docs/screenshots/accounts.png index d393c64..9dbf3f1 100644 Binary files a/docs/screenshots/accounts.png and b/docs/screenshots/accounts.png differ diff --git a/docs/screenshots/audit.png b/docs/screenshots/audit.png index 72a7169..64ca62a 100644 Binary files a/docs/screenshots/audit.png and b/docs/screenshots/audit.png differ diff --git a/docs/screenshots/balance.png b/docs/screenshots/balance.png index 926246e..f2ea60a 100644 Binary files a/docs/screenshots/balance.png and b/docs/screenshots/balance.png differ diff --git a/docs/screenshots/blocking.png b/docs/screenshots/blocking.png index 4097a4c..906b462 100644 Binary files a/docs/screenshots/blocking.png and b/docs/screenshots/blocking.png differ diff --git a/docs/screenshots/dashboard-charts.png b/docs/screenshots/dashboard-charts.png index e493784..691e3a7 100644 Binary files a/docs/screenshots/dashboard-charts.png and b/docs/screenshots/dashboard-charts.png differ diff --git a/docs/screenshots/dashboard.png b/docs/screenshots/dashboard.png index 3aacc25..3aedfb1 100644 Binary files a/docs/screenshots/dashboard.png and b/docs/screenshots/dashboard.png differ diff --git a/docs/screenshots/geo.png b/docs/screenshots/geo.png index f84e9d8..2d6657c 100644 Binary files a/docs/screenshots/geo.png and b/docs/screenshots/geo.png differ diff --git a/docs/screenshots/mobile-dashboard.png b/docs/screenshots/mobile-dashboard.png index c149579..abd2745 100644 Binary files a/docs/screenshots/mobile-dashboard.png and b/docs/screenshots/mobile-dashboard.png differ diff --git a/docs/screenshots/mobile-vps.png b/docs/screenshots/mobile-vps.png index 60c40ef..d335ddc 100644 Binary files a/docs/screenshots/mobile-vps.png and b/docs/screenshots/mobile-vps.png differ diff --git a/docs/screenshots/payments.png b/docs/screenshots/payments.png index 5c0b97b..202ff4d 100644 Binary files a/docs/screenshots/payments.png and b/docs/screenshots/payments.png differ diff --git a/docs/screenshots/project-detail.png b/docs/screenshots/project-detail.png index 3b76754..8331ec2 100644 Binary files a/docs/screenshots/project-detail.png and b/docs/screenshots/project-detail.png differ diff --git a/docs/screenshots/projects.png b/docs/screenshots/projects.png index d1e2076..741dc7f 100644 Binary files a/docs/screenshots/projects.png and b/docs/screenshots/projects.png differ diff --git a/docs/screenshots/providers.png b/docs/screenshots/providers.png index c5fd628..16ad7ed 100644 Binary files a/docs/screenshots/providers.png and b/docs/screenshots/providers.png differ diff --git a/docs/screenshots/renewals.png b/docs/screenshots/renewals.png index 55455d2..3789b26 100644 Binary files a/docs/screenshots/renewals.png and b/docs/screenshots/renewals.png differ diff --git a/docs/screenshots/reports.png b/docs/screenshots/reports.png index 1f1cfcc..236dde4 100644 Binary files a/docs/screenshots/reports.png and b/docs/screenshots/reports.png differ diff --git a/docs/screenshots/resources.png b/docs/screenshots/resources.png index 9c9431f..9d99139 100644 Binary files a/docs/screenshots/resources.png and b/docs/screenshots/resources.png differ diff --git a/docs/screenshots/settings-integrations.png b/docs/screenshots/settings-integrations.png index 2df1465..0d90c00 100644 Binary files a/docs/screenshots/settings-integrations.png and b/docs/screenshots/settings-integrations.png differ diff --git a/docs/screenshots/settings-notifications.png b/docs/screenshots/settings-notifications.png index 200bd77..c4015e4 100644 Binary files a/docs/screenshots/settings-notifications.png and b/docs/screenshots/settings-notifications.png differ diff --git a/docs/screenshots/settings-sync.png b/docs/screenshots/settings-sync.png index 308553c..ebcf588 100644 Binary files a/docs/screenshots/settings-sync.png and b/docs/screenshots/settings-sync.png differ diff --git a/docs/screenshots/settings.png b/docs/screenshots/settings.png index ba7323e..beec95a 100644 Binary files a/docs/screenshots/settings.png and b/docs/screenshots/settings.png differ diff --git a/docs/screenshots/sync-journal.png b/docs/screenshots/sync-journal.png index ba57145..da47e8d 100644 Binary files a/docs/screenshots/sync-journal.png and b/docs/screenshots/sync-journal.png differ diff --git a/docs/screenshots/tariffs.png b/docs/screenshots/tariffs.png index 8ea568c..960d963 100644 Binary files a/docs/screenshots/tariffs.png and b/docs/screenshots/tariffs.png differ diff --git a/docs/screenshots/topology.png b/docs/screenshots/topology.png index 0fc4d1f..1935197 100644 Binary files a/docs/screenshots/topology.png and b/docs/screenshots/topology.png differ diff --git a/docs/screenshots/vps-detail-finance.png b/docs/screenshots/vps-detail-finance.png index c957b3d..6c6fe44 100644 Binary files a/docs/screenshots/vps-detail-finance.png and b/docs/screenshots/vps-detail-finance.png differ diff --git a/docs/screenshots/vps-detail.png b/docs/screenshots/vps-detail.png index f5288f9..fa516f8 100644 Binary files a/docs/screenshots/vps-detail.png and b/docs/screenshots/vps-detail.png differ diff --git a/docs/screenshots/vps.png b/docs/screenshots/vps.png index 9936cdf..2f451b8 100644 Binary files a/docs/screenshots/vps.png and b/docs/screenshots/vps.png differ