mirror of
https://github.com/facebook/docusaurus.git
synced 2025-05-31 01:47:17 +02:00
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:
parent
a2729128db
commit
4d06f26c1f
28 changed files with 271 additions and 54 deletions
|
@ -16,7 +16,8 @@ import {
|
|||
getFolderContainingFile,
|
||||
addTrailingPathSeparator,
|
||||
Globby,
|
||||
createMatcher,
|
||||
createAbsoluteFilePathMatcher,
|
||||
normalizeUrl,
|
||||
} from '@docusaurus/utils';
|
||||
import {
|
||||
LoadContext,
|
||||
|
@ -124,8 +125,11 @@ export default function pluginContentPages(
|
|||
|
||||
const source = path.join(contentPath, relativeSource);
|
||||
const aliasedSourcePath = aliasedSitePath(source, siteDir);
|
||||
const pathName = encodePath(fileToPath(relativeSource));
|
||||
const permalink = pathName.replace(/^\//, baseUrl || '');
|
||||
const permalink = normalizeUrl([
|
||||
baseUrl,
|
||||
options.routeBasePath,
|
||||
encodePath(fileToPath(relativeSource)),
|
||||
]);
|
||||
if (isMarkdownSource(relativeSource)) {
|
||||
return {
|
||||
type: 'mdx',
|
||||
|
@ -194,6 +198,7 @@ export default function pluginContentPages(
|
|||
beforeDefaultRehypePlugins,
|
||||
beforeDefaultRemarkPlugins,
|
||||
} = options;
|
||||
const contentDirs = getContentPathList(contentPaths);
|
||||
return {
|
||||
resolve: {
|
||||
alias: {
|
||||
|
@ -204,7 +209,7 @@ export default function pluginContentPages(
|
|||
rules: [
|
||||
{
|
||||
test: /(\.mdx?)$/,
|
||||
include: getContentPathList(contentPaths)
|
||||
include: contentDirs
|
||||
// Trailing slash is important, see https://github.com/facebook/docusaurus/pull/3970
|
||||
.map(addTrailingPathSeparator),
|
||||
use: [
|
||||
|
@ -217,7 +222,10 @@ export default function pluginContentPages(
|
|||
beforeDefaultRehypePlugins,
|
||||
beforeDefaultRemarkPlugins,
|
||||
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.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue