diff --git a/src/markdown/index.ts b/src/markdown/index.ts index 91db7a5..01dc613 100644 --- a/src/markdown/index.ts +++ b/src/markdown/index.ts @@ -10,10 +10,8 @@ import markedCodeBlockYamlTag from "./code-block-yaml-tag"; let globalIconPrefix: string | undefined = undefined; function overrideIconPrefix(path?: string) { globalIconPrefix = path; - return { - [Symbol.dispose]() { - globalIconPrefix = undefined; - }, + return () => { + globalIconPrefix = undefined; }; } @@ -96,8 +94,12 @@ const marked = new Marked() ); export function parseMarkdown(content: string, iconPrefix?: string): string { - using prefix = overrideIconPrefix(iconPrefix); - return marked.parse(content.trimStart()) as string; + const restore = overrideIconPrefix(iconPrefix); + try { + return marked.parse(content.trimStart()) as string; + } finally { + restore(); + } } export { marked }; diff --git a/tsconfig.json b/tsconfig.json index 146fd53..d961dbf 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -15,8 +15,8 @@ "outDir": "./dist", "rootDir": "./src", "lib": ["ES2022", "DOM", "DOM.Iterable"], - "types": ["node", "jest"] + "types": ["node", "jest"], }, "include": ["src/**/*"], - "exclude": ["node_modules", "dist"] + "exclude": ["node_modules", "dist"], }