From 576e43aef4b9321e353b47248986924bad9ec483 Mon Sep 17 00:00:00 2001 From: Divyansh Singh <40380293+brc-dd@users.noreply.github.com> Date: Thu, 18 Apr 2024 22:21:25 +0530 Subject: [PATCH] refactor: simplify code --- src/node/markdown/plugins/restoreEntities.ts | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/src/node/markdown/plugins/restoreEntities.ts b/src/node/markdown/plugins/restoreEntities.ts index d15bc522569..5198bea37bd 100644 --- a/src/node/markdown/plugins/restoreEntities.ts +++ b/src/node/markdown/plugins/restoreEntities.ts @@ -1,19 +1,11 @@ import type MarkdownIt from 'markdown-it' export function restoreEntities(md: MarkdownIt): void { - md.core.ruler.before('text_join', 'entity', (state) => { - for (const token of state.tokens) { - if (token.type !== 'inline' || !token.children) continue - - for (const child of token.children) { - if (child.type === 'text_special' && child.info === 'entity') { - child.type = 'entity' - } - } + md.core.ruler.disable('text_join') + md.renderer.rules.text_special = (tokens, idx) => { + if (tokens[idx].info === 'entity') { + return tokens[idx].markup // leave as is so Vue can handle it } - }) - - md.renderer.rules.entity = (tokens, idx) => { - return tokens[idx].markup // leave as is so Vue can handle it + return md.utils.escapeHtml(tokens[idx].content) } }