feat: improve BGP protocol summary handling by introducing isBGPProtocolSummaryRow function. Update SummarizeProtocolsOutput and related tests to ensure evobgp_* static names are not counted as BGP sessions, enhancing accuracy in protocol summaries.
CI / changes (push) Successful in 5s
CI / openapi (push) Has been skipped
CI / go (push) Successful in 23s
CI / bird2 (push) Has been cancelled
CI / docker-go (deploy/docker/evobgp-agent/Dockerfile, , evobgp-agent) (push) Has been cancelled
CI / docker-go (evobgp-all, 1, deploy/docker/gobinary/Dockerfile, , evobgp-all) (push) Has been cancelled
CI / docker-go (evobgp-api, 1, deploy/docker/gobinary/Dockerfile, , evobgp-api) (push) Has been cancelled
CI / docker-go (evobgp-deploy, 0, deploy/docker/gobinary/Dockerfile, , evobgp-deploy) (push) Has been cancelled
CI / docker-go (evobgp-ingest, 0, deploy/docker/gobinary/Dockerfile, , evobgp-ingest) (push) Has been cancelled
CI / docker-go (evobgp-node, 0, deploy/docker/gobinary/Dockerfile, , evobgp-node) (push) Has been cancelled
CI / docker-go (evobgp-render, 0, deploy/docker/gobinary/Dockerfile, , evobgp-render) (push) Has been cancelled
CI / docker-go (evobgp-scheduler, 0, deploy/docker/gobinary/Dockerfile, , evobgp-scheduler) (push) Has been cancelled
CI / docker-web (deploy/docker/evobgp-web/Dockerfile, , evobgp-web) (push) Has started running
CI / docker-web (deploy/docker/evobgp-web/Dockerfile, evobgp-all, evobgp-web-all) (push) Has been cancelled
CI / docker-bird (push) Has been cancelled

This commit is contained in:
Denozordec
2026-04-06 00:41:59 +07:00
parent 94a4c6acd4
commit 399622cc70
6 changed files with 129 additions and 39 deletions
@@ -0,0 +1,29 @@
<script lang="ts">
import { cn } from '$lib/utils.js';
/** preserve — вывод CLI (колонки birdc); wrap — конфиги и JSON с длинными строками */
type Variant = 'preserve' | 'wrap';
let {
variant = 'preserve',
text,
class: className = ''
}: {
variant?: Variant;
text: string;
class?: string;
} = $props();
const shell =
'border-border bg-muted/40 relative isolate min-w-0 overflow-auto rounded-lg border [scrollbar-gutter:stable] overscroll-contain';
const prePreserve =
'text-foreground m-0 block w-max min-w-full p-4 font-mono text-[0.8125rem] leading-normal whitespace-pre select-text';
const preWrap =
'text-foreground m-0 block min-w-0 w-full max-w-none p-4 font-mono text-[0.8125rem] leading-relaxed whitespace-pre-wrap break-words select-text';
</script>
<div class={cn(shell, className)} data-slot="scroll-pre-block">
<pre class={variant === 'preserve' ? prePreserve : preWrap}>{text}</pre>
</div>
+21
View File
@@ -0,0 +1,21 @@
/**
* Общая разметка для модалок с прокручиваемым контентом (превью BIRD, вывод birdc, логи).
* DialogContent по умолчанию — grid + p-4; здесь переопределяем на flex-колонку без внешних отступов.
*/
export const dialogContentDocument =
'!flex w-[min(100vw-2rem,56rem)] max-h-[min(92vh,880px)] flex-col gap-0 overflow-hidden !p-0 sm:max-w-4xl';
export const dialogHeaderDocument =
'shrink-0 space-y-1.5 border-b border-border/70 px-6 pt-5 pb-3 pr-14 text-left';
export const dialogBodyDocument =
'flex min-h-0 min-w-0 flex-1 flex-col gap-3 overflow-hidden px-6 py-4';
/** Компактные модалки (детали задачи, формы): единая шапка и тело */
export const dialogContentPanel =
'!flex max-h-[min(90vh,40rem)] w-full max-w-lg flex-col gap-0 overflow-hidden !p-0 sm:max-w-lg';
export const dialogHeaderPanel =
'shrink-0 space-y-1.5 border-b border-border/70 px-6 pt-5 pb-3 pr-14 text-left';
export const dialogBodyPanel = 'min-h-0 flex-1 overflow-y-auto px-6 py-4';