fix: v3 admonitions should support v2 title syntax for nested admonitions (#9535)

Fix admonition title mdx v1 compat option when admonition is nested
This commit is contained in:
Sébastien Lorber 2023-11-11 22:23:27 +01:00 committed by GitHub
parent 95d3a65e74
commit b464545629
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 82 additions and 9 deletions

View file

@ -97,14 +97,14 @@ export function admonitionTitleToDirectiveLabel(
const directiveNameGroup = `(${admonitionContainerDirectives.join('|')})`;
const regexp = new RegExp(
`^(?<directive>:{3,}${directiveNameGroup}) +(?<title>.*)$`,
`^(?<indentation>( +|\t+))?(?<directive>:{3,}${directiveNameGroup}) +(?<title>.*)$`,
'gm',
);
return content.replaceAll(regexp, (substring, ...args: any[]) => {
const groups = args.at(-1);
return `${groups.directive}[${groups.title}]`;
return `${groups.indentation ?? ''}${groups.directive}[${groups.title}]`;
});
}