fix: Extend direct HTML rendering to math elements

Co-authored-by: aider (gemini/gemini-2.5-pro) <aider@aider.chat>
This commit is contained in:
2025-12-04 20:24:08 +00:00
parent 2d10abf9aa
commit 02d165b2b2

View File

@@ -5,6 +5,7 @@ import localForage from 'localforage';
import { sourceLink, infoLine, ToggleDot } from './utils.js'; import { sourceLink, infoLine, ToggleDot } from './utils.js';
const VOID_ELEMENTS = ['area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input', 'link', 'meta', 'param', 'source', 'track', 'wbr']; const VOID_ELEMENTS = ['area', 'base', 'br', 'col', 'embed', 'hr', 'img', 'input', 'link', 'meta', 'param', 'source', 'track', 'wbr'];
const DANGEROUS_TAGS = ['svg', 'math'];
function Article({ cache }) { function Article({ cache }) {
const { id } = useParams(); const { id } = useParams();
@@ -106,7 +107,7 @@ function Article({ cache }) {
return null; return null;
} }
if (v.localName === 'svg') { if (DANGEROUS_TAGS.includes(v.localName)) {
return <span key={key} dangerouslySetInnerHTML={{ __html: v.outerHTML }} />; return <span key={key} dangerouslySetInnerHTML={{ __html: v.outerHTML }} />;
} }