From 265d0fd468e48d4b8631fda1ff079842f2258f24 Mon Sep 17 00:00:00 2001 From: Frank <97429702+tsubasakong@users.noreply.github.com> Date: Thu, 12 Mar 2026 12:24:31 -0700 Subject: [PATCH] fix: render standalone HTML documents as code blocks --- .../message_list_comps/MessagePartsRenderer.vue | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/dashboard/src/components/chat/message_list_comps/MessagePartsRenderer.vue b/dashboard/src/components/chat/message_list_comps/MessagePartsRenderer.vue index 5fd7f59bed..4e45c11301 100644 --- a/dashboard/src/components/chat/message_list_comps/MessagePartsRenderer.vue +++ b/dashboard/src/components/chat/message_list_comps/MessagePartsRenderer.vue @@ -63,7 +63,7 @@ @@ -151,6 +151,21 @@ const emitDownloadFile = (file) => { emit('download-file', file); }; +const FULL_HTML_DOCUMENT_RE = /^\s*(?:]*>\s*)?\s*$/i; + +const normalizeMarkdownContent = (text) => { + if (typeof text !== 'string') { + return text; + } + + const trimmed = text.trim(); + if (!trimmed || !FULL_HTML_DOCUMENT_RE.test(trimmed)) { + return text; + } + + return `\`\`\`html\n${trimmed}\n\`\`\``; +}; + const formatDuration = (seconds) => { if (seconds < 1) { return `${Math.round(seconds * 1000)}ms`;