From 57dcf306f31fb770f6577e3c165b75d076b32717 Mon Sep 17 00:00:00 2001 From: Denozordec Date: Tue, 19 May 2026 12:01:11 +0700 Subject: [PATCH] web(ui): migrate dashboard, schedule, monitoring to ui patterns Co-authored-by: Cursor --- web/src/routes/+page.svelte | 21 +++++-------- web/src/routes/monitoring/+page.svelte | 43 ++++++++++---------------- web/src/routes/schedule/+page.svelte | 34 +++++++++----------- 3 files changed, 40 insertions(+), 58 deletions(-) diff --git a/web/src/routes/+page.svelte b/web/src/routes/+page.svelte index f40ed23..dbffdea 100644 --- a/web/src/routes/+page.svelte +++ b/web/src/routes/+page.svelte @@ -17,6 +17,7 @@ const resolve = (path: string) => path as any; import Clock from '@lucide/svelte/icons/clock'; import ArrowRight from '@lucide/svelte/icons/arrow-right'; import LayoutDashboard from '@lucide/svelte/icons/layout-dashboard'; + import PageHeader from '$lib/ui/app/page-header/page-header.svelte'; let healthy = $state(null); let modules = $state(0); @@ -133,19 +134,13 @@ const resolve = (path: string) => path as any; ]); -
-
- -
-

Обзор

-

Состояние панели управления EvoBGP.

-
-
+
+ diff --git a/web/src/routes/monitoring/+page.svelte b/web/src/routes/monitoring/+page.svelte index 1353be5..c289518 100644 --- a/web/src/routes/monitoring/+page.svelte +++ b/web/src/routes/monitoring/+page.svelte @@ -12,6 +12,7 @@ import Server from '@lucide/svelte/icons/server'; import Hash from '@lucide/svelte/icons/hash'; import AlertTriangle from '@lucide/svelte/icons/alert-triangle'; + import PageHeader from '$lib/ui/app/page-header/page-header.svelte'; type ReadyStatus = { status: string; checks?: Record }; type VersionInfo = { version?: string; git_sha?: string; build_time?: string; [k: string]: unknown }; @@ -136,32 +137,22 @@ onMount(load); -
-
-
- -
-

Мониторинг

-

- Состояние API, BGP и задач для быстрой диагностики инцидентов. -

- {#if lastUpdated} -

- Обновлено: {lastUpdated.toLocaleTimeString('ru-RU')} -

- {/if} -
-
- -
+
+ + {#snippet actions()} + + {/snippet} +
diff --git a/web/src/routes/schedule/+page.svelte b/web/src/routes/schedule/+page.svelte index 13ffde6..09e84e7 100644 --- a/web/src/routes/schedule/+page.svelte +++ b/web/src/routes/schedule/+page.svelte @@ -16,6 +16,7 @@ import { toast } from 'svelte-sonner'; import RefreshCw from '@lucide/svelte/icons/refresh-cw'; import CalendarClock from '@lucide/svelte/icons/calendar-clock'; + import PageHeader from '$lib/ui/app/page-header/page-header.svelte'; import { jobStatusRu, moduleTypeRu } from '$lib/ui-labels.js'; import { jobKindTitle } from '$lib/operations/job-kind-label.js'; @@ -80,25 +81,20 @@ const failedJobsCount = $derived(jobs.filter((j) => j.status === 'failed').length); -
-
-
- -
-

Расписание и задачи

-

Интервалы обновления модулей и ручной запуск обновления.

-
-
- -
+
+ + {#snippet actions()} + + {/snippet} +