From 5ad78fcced66aa7b19fab5b61ea1cb973629f610 Mon Sep 17 00:00:00 2001 From: Aleksander Grygier Date: Mon, 15 Dec 2025 12:14:43 +0100 Subject: [PATCH] fix: Decode HTML entities using `DOMParser` --- tools/server/webui/src/lib/utils/clipboard.ts | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/tools/server/webui/src/lib/utils/clipboard.ts b/tools/server/webui/src/lib/utils/clipboard.ts index 69ed949b53..91e8ea75ae 100644 --- a/tools/server/webui/src/lib/utils/clipboard.ts +++ b/tools/server/webui/src/lib/utils/clipboard.ts @@ -65,13 +65,8 @@ export async function copyCodeToClipboard( successMessage = 'Code copied to clipboard', errorMessage = 'Failed to copy code' ): Promise { - // Decode HTML entities - const decodedCode = rawCode - .replace(/&/g, '&') - .replace(/</g, '<') - .replace(/>/g, '>') - .replace(/"/g, '"') - .replace(/'/g, "'"); + const doc = new DOMParser().parseFromString(rawCode, 'text/html'); + const decodedCode = doc.body.textContent ?? rawCode; return copyToClipboard(decodedCode, successMessage, errorMessage); }