From 3eccc2f9e338f63e6e0f84ad70b3b7f0439110e1 Mon Sep 17 00:00:00 2001 From: Maze Winther Date: Wed, 15 Apr 2026 00:29:04 +0200 Subject: [PATCH] fix: copy to markdown formatting --- .../components/copy-markdown-button.tsx | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/apps/web/src/app/changelog/components/copy-markdown-button.tsx b/apps/web/src/app/changelog/components/copy-markdown-button.tsx index ddf7bbb1..bc7e94bf 100644 --- a/apps/web/src/app/changelog/components/copy-markdown-button.tsx +++ b/apps/web/src/app/changelog/components/copy-markdown-button.tsx @@ -29,14 +29,12 @@ function buildMarkdown({ for (const type of orderedTypes) { if (isSectionCollapsible({ type })) { lines.push( - "
", - `${getSectionTitle({ type })}`, + buildCollapsibleMarkdownSection({ + title: getSectionTitle({ type }), + changes: grouped[type], + }), "", ); - for (const change of grouped[type]) { - lines.push(`- ${change.text}`); - } - lines.push("", "
", ""); continue; } @@ -50,6 +48,18 @@ function buildMarkdown({ return lines.join("\n").trimEnd(); } +function buildCollapsibleMarkdownSection({ + title, + changes, +}: { + title: string; + changes: Change[]; +}): string { + const bulletLines = changes.map((change) => `- ${change.text}`).join("\n"); + + return `
\n${title}\n\n${bulletLines}\n\n
`; +} + export function CopyMarkdownButton({ description, changes,