fix: script rendering in message (#10807)

Co-authored-by: crazywoola <427733928@qq.com>
This commit is contained in:
zxhlyh 2024-11-18 19:19:10 +08:00 committed by GitHub
parent 7f1fdb774c
commit de6d3e493c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -211,6 +211,12 @@ const AudioBlock: CodeComponent = memo(({ node }) => {
})
AudioBlock.displayName = 'AudioBlock'
const ScriptBlock = memo(({ node }: any) => {
const scriptContent = node.children[0]?.value || ''
return `<script>${scriptContent}</script>`
})
ScriptBlock.displayName = 'ScriptBlock'
const Paragraph = (paragraph: any) => {
const { node }: any = paragraph
const children_node = node.children
@ -265,7 +271,7 @@ export function Markdown(props: { content: string; className?: string }) {
}
},
]}
disallowedElements={['script', 'iframe', 'head', 'html', 'meta', 'link', 'style', 'body']}
disallowedElements={['iframe', 'head', 'html', 'meta', 'link', 'style', 'body']}
components={{
code: CodeBlock,
img: Img,
@ -275,6 +281,7 @@ export function Markdown(props: { content: string; className?: string }) {
p: Paragraph,
button: MarkdownButton,
form: MarkdownForm,
script: ScriptBlock,
}}
linkTarget='_blank'
>