fix: escape heading on user message item (#4301)
This commit is contained in:
parent
c7a5cb52e3
commit
714097851a
@ -19,9 +19,15 @@ import { useClipboard } from '@/hooks/useClipboard'
|
|||||||
import { getLanguageFromExtension } from '@/utils/codeLanguageExtension'
|
import { getLanguageFromExtension } from '@/utils/codeLanguageExtension'
|
||||||
|
|
||||||
export const MarkdownTextMessage = memo(
|
export const MarkdownTextMessage = memo(
|
||||||
({ text }: { id: string; text: string }) => {
|
({ text, isUser }: { id: string; text: string; isUser: boolean }) => {
|
||||||
const clipboard = useClipboard({ timeout: 1000 })
|
const clipboard = useClipboard({ timeout: 1000 })
|
||||||
|
|
||||||
|
// Escapes headings
|
||||||
|
function preprocessMarkdown(text: string): string {
|
||||||
|
if (!isUser) return text
|
||||||
|
return text.replace(/^#{1,6} /gm, (match) => `\\${match}`)
|
||||||
|
}
|
||||||
|
|
||||||
function extractCodeLines(node: { children: { children: any[] }[] }) {
|
function extractCodeLines(node: { children: { children: any[] }[] }) {
|
||||||
const codeLines: any[] = []
|
const codeLines: any[] = []
|
||||||
|
|
||||||
@ -204,7 +210,7 @@ export const MarkdownTextMessage = memo(
|
|||||||
wrapCodeBlocksWithoutVisit,
|
wrapCodeBlocksWithoutVisit,
|
||||||
]}
|
]}
|
||||||
>
|
>
|
||||||
{text}
|
{preprocessMarkdown(text)}
|
||||||
</Markdown>
|
</Markdown>
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
|
|||||||
@ -144,7 +144,11 @@ const MessageContainer: React.FC<
|
|||||||
)}
|
)}
|
||||||
dir="ltr"
|
dir="ltr"
|
||||||
>
|
>
|
||||||
<MarkdownTextMessage id={props.id} text={text} />
|
<MarkdownTextMessage
|
||||||
|
id={props.id}
|
||||||
|
text={text}
|
||||||
|
isUser={isUser}
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
</>
|
</>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user