diff --git a/src/components/markdown/markdown.tsx b/src/components/markdown/markdown.tsx index b4c703c6..e964d4f4 100644 --- a/src/components/markdown/markdown.tsx +++ b/src/components/markdown/markdown.tsx @@ -153,12 +153,14 @@ const Markdown = ({ content, title }: MarkdownProps) => { const processedContent = useMemo(() => { let md = content; - // Preserve newlines in code blocks - md = md.replace(/```[\s\S]*?```/g, (m) => m.replace(/\n/g, '\n ')); - // Add an extra newline after blockquote lines - md = md.replace(/^(>.*)\n(?!>)/gm, '$1\n\n'); - // Retain empty lines - md = md.replace(/(?<=\n\n)(?![*-])\n/g, ' \n '); + if (md) { + // Preserve newlines in code blocks + md = md.replace(/```[\s\S]*?```/g, (m) => m.replace(/\n/g, '\n ')); + // Add an extra newline after blockquote lines + md = md.replace(/^(>.*)\n(?!>)/gm, '$1\n\n'); + // Retain empty lines + md = md.replace(/(?<=\n\n)(?![*-])\n/g, ' \n '); + } return md; }, [content]);