/
githubmirror
/
docusaurus
Обзор
Документация
Войти
/
githubmirror
/
docusaurus
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
packages/docusaurus-mdx-loader/src/preprocessor.ts
47 строк
1 KB
Sébastien Lorber
feat(core, mdx-loader): deduplicate MDX compilation - `siteConfig.future.experimental_faster.mdxCrossCompilerCache` (#10479)
06 сен 2024, 17:07
Не верифицирован
06 сен 2024, 17:07
5bab0b5
Код
Авторство
О чём код?
/** * Copyright (c) Facebook, Inc. and its affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ import { escapeMarkdownHeadingIds, unwrapMdxCodeBlocks, admonitionTitleToDirectiveLabel, } from '@docusaurus/utils'; import {normalizeAdmonitionOptions} from './remark/admonitions'; import type {Options} from './options'; /** * Preprocess the string before passing it to MDX * This is not particularly recommended but makes it easier to upgrade to MDX 2 */ export default function preprocessContent({ fileContent: initialFileContent, filePath, markdownConfig, admonitions, }: { fileContent: string; filePath: string; markdownConfig: Options['markdownConfig']; admonitions: Options['admonitions'] | undefined; }): string { let fileContent = initialFileContent; if (markdownConfig.preprocessor) { fileContent = markdownConfig.preprocessor({ fileContent, filePath, }); } fileContent = unwrapMdxCodeBlocks(fileContent); if (markdownConfig.mdx1Compat.headingIds) { fileContent = escapeMarkdownHeadingIds(fileContent); } if (markdownConfig.mdx1Compat.admonitions && admonitions) { const {keywords} = normalizeAdmonitionOptions(admonitions); fileContent = admonitionTitleToDirectiveLabel(fileContent, keywords); } return fileContent; }