fix(v2): Fix MDX docs being considered as partials when siteDir match the _ prefix convention (#5199)

* Add _ to dogfood docs folder to cover against edge case

* Fix edge case with MDX partials when site / content dir contains a _ prefix

* add globUtils tests

* proper dogfooding folder re-organization, all content plugins being used

* refactor dogfooding folder + expose /tests page index

* fix page plugin ignoring options.routeBasePath
This commit is contained in:
Sébastien Lorber 2021-07-21 14:13:51 +02:00 committed by GitHub
parent a2729128db
commit 4d06f26c1f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
28 changed files with 271 additions and 54 deletions

View file

@ -16,7 +16,7 @@ import {
reportMessage,
posixPath,
addTrailingPathSeparator,
createMatcher,
createAbsoluteFilePathMatcher,
} from '@docusaurus/utils';
import {
STATIC_DIR_NAME,
@ -437,6 +437,7 @@ export default function pluginContentBlog(
},
};
const contentDirs = getContentPathList(contentPaths);
return {
resolve: {
alias: {
@ -447,7 +448,7 @@ export default function pluginContentBlog(
rules: [
{
test: /(\.mdx?)$/,
include: getContentPathList(contentPaths)
include: contentDirs
// Trailing slash is important, see https://github.com/facebook/docusaurus/pull/3970
.map(addTrailingPathSeparator),
use: [
@ -460,7 +461,10 @@ export default function pluginContentBlog(
beforeDefaultRemarkPlugins,
beforeDefaultRehypePlugins,
staticDir: path.join(siteDir, STATIC_DIR_NAME),
isMDXPartial: createMatcher(options.exclude),
isMDXPartial: createAbsoluteFilePathMatcher(
options.exclude,
contentDirs,
),
metadataPath: (mdxPath: string) => {
// Note that metadataPath must be the same/in-sync as
// the path from createData for each MDX.