diff --git a/packages/docusaurus-plugin-content-docs/package.json b/packages/docusaurus-plugin-content-docs/package.json index 8f8e6e21d9..54916f75b6 100644 --- a/packages/docusaurus-plugin-content-docs/package.json +++ b/packages/docusaurus-plugin-content-docs/package.json @@ -5,6 +5,7 @@ "main": "lib/index.js", "exports": { "./client": "./lib/client/index.js", + "./server": "./lib/server/index.js", ".": "./lib/index.js" }, "types": "src/plugin-content-docs.d.ts", diff --git a/packages/docusaurus-plugin-content-docs/src/server/index.ts b/packages/docusaurus-plugin-content-docs/src/server/index.ts new file mode 100644 index 0000000000..1be860cede --- /dev/null +++ b/packages/docusaurus-plugin-content-docs/src/server/index.ts @@ -0,0 +1,19 @@ +/** + * 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. + */ + +// APIs available to Node.js +export * from '../constants'; + +export { + filterVersions, + getDefaultVersionBanner, + getVersionBadge, + getVersionBanner, + getVersionsFilePath, + readVersionsFile, + readVersionNames, +} from '../versions'; diff --git a/packages/docusaurus-plugin-content-docs/src/versions.ts b/packages/docusaurus-plugin-content-docs/src/versions.ts index fc76c649a2..18031cfa9c 100644 --- a/packages/docusaurus-plugin-content-docs/src/versions.ts +++ b/packages/docusaurus-plugin-content-docs/src/versions.ts @@ -85,7 +85,7 @@ function ensureValidVersionArray( versionArray.forEach(ensureValidVersionString); } -async function readVersionsFile( +export async function readVersionsFile( siteDir: string, pluginId: string, ): Promise { @@ -98,7 +98,7 @@ async function readVersionsFile( return null; } -async function readVersionNames( +export async function readVersionNames( siteDir: string, options: Pick< PluginOptions, @@ -257,7 +257,7 @@ function getVersionEditUrls({ }; } -function getDefaultVersionBanner({ +export function getDefaultVersionBanner({ versionName, versionNames, lastVersionName, @@ -280,7 +280,7 @@ function getDefaultVersionBanner({ return 'unmaintained'; } -function getVersionBanner({ +export function getVersionBanner({ versionName, versionNames, lastVersionName, @@ -302,7 +302,7 @@ function getVersionBanner({ }); } -function getVersionBadge({ +export function getVersionBadge({ versionName, versionNames, options, @@ -531,10 +531,10 @@ function checkVersionsOptions( * Note: we preserve the order in which versions are provided; * the order of the onlyIncludeVersions array does not matter */ -function filterVersions( +export function filterVersions( versionNamesUnfiltered: string[], options: Pick, -) { +): string[] { if (options.onlyIncludeVersions) { return versionNamesUnfiltered.filter((name) => (options.onlyIncludeVersions || []).includes(name),