diff --git a/packages/docusaurus-mdx-loader/src/remark/utils/index.ts b/packages/docusaurus-mdx-loader/src/remark/utils/index.ts index 2309a8dd10..29beb5a1d5 100644 --- a/packages/docusaurus-mdx-loader/src/remark/utils/index.ts +++ b/packages/docusaurus-mdx-loader/src/remark/utils/index.ts @@ -8,31 +8,29 @@ import escapeHtml from 'escape-html'; import toString from 'mdast-util-to-string'; import type {Parent} from 'unist'; -import type {StaticPhrasingContent, Heading} from 'mdast'; +import type {PhrasingContent, Heading} from 'mdast'; export function stringifyContent(node: Parent): string { - return ((node.children || []) as StaticPhrasingContent[]) - .map(toValue) - .join(''); + return ((node.children || []) as PhrasingContent[]).map(toValue).join(''); } -export function toValue(node: StaticPhrasingContent | Heading): string { - if (node && node.type) { - switch (node.type) { - case 'text': - return escapeHtml(node.value); - case 'heading': - return stringifyContent(node); - case 'inlineCode': - return `${escapeHtml(node.value)}`; - case 'emphasis': - return `${stringifyContent(node)}`; - case 'strong': - return `${stringifyContent(node)}`; - case 'delete': - return `${stringifyContent(node)}`; - default: - } +export function toValue(node: PhrasingContent | Heading): string { + switch (node?.type) { + case 'text': + return escapeHtml(node.value); + case 'heading': + return stringifyContent(node); + case 'inlineCode': + return `${escapeHtml(node.value)}`; + case 'emphasis': + return `${stringifyContent(node)}`; + case 'strong': + return `${stringifyContent(node)}`; + case 'delete': + return `${stringifyContent(node)}`; + case 'link': + return stringifyContent(node); + default: } return toString(node);