feat(content-docs): draft docs excluded from build & sidebars (#6457)

Co-authored-by: sebastienlorber <lorber.sebastien@gmail.com>
Co-authored-by: Joshua Chen <sidachen2003@gmail.com>
This commit is contained in:
Jody Heavener 2022-04-13 13:02:05 -03:00 committed by GitHub
parent ee4c984bc7
commit 5fb0a2e274
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
27 changed files with 396 additions and 58 deletions

View file

@ -22,6 +22,7 @@ import {
import type {LoadContext, Plugin} from '@docusaurus/types';
import {loadSidebars, resolveSidebarPathOption} from './sidebars';
import {CategoryMetadataFilenamePattern} from './sidebars/generator';
import type {DocEnv} from './docs';
import {
readVersionDocs,
processDocMetadata,
@ -58,6 +59,7 @@ import type {
} from '@docusaurus/plugin-content-docs';
import {createSidebarsUtils} from './sidebars/utils';
import {getCategoryGeneratedIndexMetadataList} from './categoryGeneratedIndex';
import _ from 'lodash';
export default async function pluginContentDocs(
context: LoadContext,
@ -147,6 +149,7 @@ export default async function pluginContentDocs(
versionMetadata,
context,
options,
env: process.env.NODE_ENV as DocEnv,
});
}
return Promise.all(docFiles.map(processVersionDoc));
@ -155,14 +158,17 @@ export default async function pluginContentDocs(
async function doLoadVersion(
versionMetadata: VersionMetadata,
): Promise<LoadedVersion> {
const docs: DocMetadataBase[] = await loadVersionDocsBase(
const docsBase: DocMetadataBase[] = await loadVersionDocsBase(
versionMetadata,
);
const [drafts, docs] = _.partition(docsBase, (doc) => doc.draft);
const sidebars = await loadSidebars(versionMetadata.sidebarFilePath, {
sidebarItemsGenerator: options.sidebarItemsGenerator,
numberPrefixParser: options.numberPrefixParser,
docs,
drafts,
version: versionMetadata,
sidebarOptions: {
sidebarCollapsed: options.sidebarCollapsed,
@ -180,6 +186,7 @@ export default async function pluginContentDocs(
sidebarsUtils,
versionMetadata.sidebarFilePath as string,
),
drafts,
sidebars,
mainDocId: getMainDocId({docs, sidebarsUtils}),
categoryGeneratedIndices: getCategoryGeneratedIndexMetadataList({