From 26e95f2a927f90793a99ad2371271beb364d019d Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sat, 17 Jan 2026 18:39:24 +0100 Subject: [PATCH] fix-csv-export (#20688) --- .../chat/Messages/Markdown/MarkdownTokens.svelte | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte b/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte index bf8ad9993..d22cd2e7d 100644 --- a/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte +++ b/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte @@ -53,16 +53,16 @@ const exportTableToCSVHandler = (token, tokenIdx = 0) => { console.log('Exporting table to CSV'); - // Extract header row text and escape for CSV. - const header = token.header.map((headerCell) => `"${headerCell.text.replace(/"/g, '""')}"`); + // Extract header row text, decode HTML entities, and escape for CSV. + const header = token.header.map((headerCell) => `"${decode(headerCell.text).replace(/"/g, '""')}"`); // Create an array for rows that will hold the mapped cell text. const rows = token.rows.map((row) => row.map((cell) => { // Map tokens into a single text const cellContent = cell.tokens.map((token) => token.text).join(''); - // Escape double quotes and wrap the content in double quotes - return `"${cellContent.replace(/"/g, '""')}"`; + // Decode HTML entities and escape double quotes, wrap in double quotes + return `"${decode(cellContent).replace(/"/g, '""')}"`; }) );