diff --git a/backend/app/version.py b/backend/app/version.py index 09637d6..4287def 100644 --- a/backend/app/version.py +++ b/backend/app/version.py @@ -1,5 +1,5 @@ """Единый источник версии SAC (API, health, логи, OpenAPI).""" APP_NAME = "Security Alert Center" -APP_VERSION = "0.9.7" +APP_VERSION = "0.9.8" APP_VERSION_LABEL = f"{APP_NAME} v.{APP_VERSION}" diff --git a/frontend/src/components/ReportBodyCard.vue b/frontend/src/components/ReportBodyCard.vue index 965e758..db18c93 100644 --- a/frontend/src/components/ReportBodyCard.vue +++ b/frontend/src/components/ReportBodyCard.vue @@ -11,9 +11,9 @@
{{ plainBody }}
+
-
+ {{ plainBody }}
{{ summary }}
@@ -28,6 +28,7 @@ import { computed } from "vue"; import { reportActiveUserLines, + normalizeReportPlainText, reportBodyFromDetails, reportHtmlFromDetails, reportStatEntries, @@ -50,5 +51,8 @@ const htmlContent = computed(() => { return raw ? sanitizeAgentHtml(raw) : null; }); -const plainBody = computed(() => reportBodyFromDetails(props.details)); +const plainBody = computed(() => { + const raw = reportBodyFromDetails(props.details); + return raw ? normalizeReportPlainText(raw) : null; +}); diff --git a/frontend/src/style.css b/frontend/src/style.css index 343e2f8..21c2254 100644 --- a/frontend/src/style.css +++ b/frontend/src/style.css @@ -378,6 +378,13 @@ pre { .report-body-html .agent-report { white-space: normal; + word-break: break-word; +} + +.report-body-html .agent-report br { + display: block; + margin-bottom: 0.25em; + content: ""; } .report-body-plain { @@ -406,6 +413,43 @@ pre { margin-bottom: 1rem; } +.detail-fields { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); + gap: 0.85rem 1.25rem; + margin: 0; +} + +.detail-fields-compact { + grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); +} + +.detail-field { + min-width: 0; +} + +.detail-field-wide { + grid-column: 1 / -1; +} + +.detail-field dt { + margin: 0 0 0.2rem; + font-size: 0.75rem; + font-weight: 600; + color: #9aa4b2; +} + +.detail-field dd { + margin: 0; + color: #e8edf2; + word-break: break-word; + line-height: 1.45; +} + +.detail-field dd code { + word-break: break-all; +} + .raw-details { margin-top: 1rem; } diff --git a/frontend/src/utils/reportDisplay.ts b/frontend/src/utils/reportDisplay.ts index 8eba0d4..fdd483d 100644 --- a/frontend/src/utils/reportDisplay.ts +++ b/frontend/src/utils/reportDisplay.ts @@ -49,10 +49,27 @@ export interface NormalizedReportStat { value: string | number; } +export const DAILY_REPORT_TYPE_LABELS: Record
-
{{ error }}
-Загрузка…
- -{{ event.summary }}
-{{ JSON.stringify(event.details, null, 2) }}
-
{{ JSON.stringify(event.details, null, 2) }}
-
{{ JSON.stringify(event.payload, null, 2) }}
-
{{ windowsInfo }}
+Имя компьютера: {{ computerName }}
@@ -38,7 +68,7 @@
- Ежедневные сводки с узлов (report.daily.ssh, report.daily.rdp). Нажмите на строку,
- чтобы открыть полный отчёт с форматированием.
+ Ежедневные сводки с агентов. Нажмите на строку, чтобы открыть полный отчёт с форматированием.
{{ e.type }}