From 66dbc7da3973527ee09108e99e90fb1f82f53bca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Lorber?= Date: Thu, 20 Nov 2025 13:27:29 +0100 Subject: [PATCH] chore(docs, blog, pages): refactor/normalize plugin option id types for all content plugins (#11563) --- packages/docusaurus-plugin-content-blog/src/index.ts | 3 +-- packages/docusaurus-plugin-content-blog/src/options.ts | 3 ++- .../src/plugin-content-blog.d.ts | 2 +- packages/docusaurus-plugin-content-blog/src/routes.ts | 2 +- packages/docusaurus-plugin-content-pages/src/index.ts | 3 +-- packages/docusaurus-plugin-content-pages/src/options.ts | 3 ++- .../src/plugin-content-pages.d.ts | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/docusaurus-plugin-content-blog/src/index.ts b/packages/docusaurus-plugin-content-blog/src/index.ts index 0d5f7e4062..ae76530f88 100644 --- a/packages/docusaurus-plugin-content-blog/src/index.ts +++ b/packages/docusaurus-plugin-content-blog/src/index.ts @@ -17,7 +17,6 @@ import { createAbsoluteFilePathMatcher, getContentPathList, getDataFilePath, - DEFAULT_PLUGIN_ID, resolveMarkdownLinkPathname, getLocaleConfig, } from '@docusaurus/utils'; @@ -83,7 +82,7 @@ export default async function pluginContentBlog( }) : undefined, }; - const pluginId = options.id ?? DEFAULT_PLUGIN_ID; + const pluginId = options.id; const pluginDataDirRoot = path.join(generatedFilesDir, PluginName); const dataDir = path.join(pluginDataDirRoot, pluginId); diff --git a/packages/docusaurus-plugin-content-blog/src/options.ts b/packages/docusaurus-plugin-content-blog/src/options.ts index fe2d64e664..b808e144c8 100644 --- a/packages/docusaurus-plugin-content-blog/src/options.ts +++ b/packages/docusaurus-plugin-content-blog/src/options.ts @@ -15,7 +15,7 @@ import { RouteBasePathSchema, URISchema, } from '@docusaurus/utils-validation'; -import {GlobExcludeDefault} from '@docusaurus/utils'; +import {DEFAULT_PLUGIN_ID, GlobExcludeDefault} from '@docusaurus/utils'; import type { PluginOptions, Options, @@ -25,6 +25,7 @@ import type { import type {OptionValidationContext} from '@docusaurus/types'; export const DEFAULT_OPTIONS: PluginOptions = { + id: DEFAULT_PLUGIN_ID, feedOptions: { type: ['rss', 'atom'], copyright: '', diff --git a/packages/docusaurus-plugin-content-blog/src/plugin-content-blog.d.ts b/packages/docusaurus-plugin-content-blog/src/plugin-content-blog.d.ts index 40feadd2c8..944a113c0a 100644 --- a/packages/docusaurus-plugin-content-blog/src/plugin-content-blog.d.ts +++ b/packages/docusaurus-plugin-content-blog/src/plugin-content-blog.d.ts @@ -431,7 +431,7 @@ declare module '@docusaurus/plugin-content-blog' { export type PluginOptions = MDXOptions & TagsPluginOptions & { /** Plugin ID. */ - id?: string; + id: string; /** * Path to the blog content directory on the file system, relative to site * directory. diff --git a/packages/docusaurus-plugin-content-blog/src/routes.ts b/packages/docusaurus-plugin-content-blog/src/routes.ts index 27cde516ec..55bb98212e 100644 --- a/packages/docusaurus-plugin-content-blog/src/routes.ts +++ b/packages/docusaurus-plugin-content-blog/src/routes.ts @@ -71,7 +71,7 @@ export async function buildAllRoutes({ postsPerPage, pageBasePath, } = options; - const pluginId = options.id!; + const pluginId = options.id; const {createData} = actions; const { blogTitle, diff --git a/packages/docusaurus-plugin-content-pages/src/index.ts b/packages/docusaurus-plugin-content-pages/src/index.ts index aea10501f2..cb2a647b00 100644 --- a/packages/docusaurus-plugin-content-pages/src/index.ts +++ b/packages/docusaurus-plugin-content-pages/src/index.ts @@ -13,7 +13,6 @@ import { addTrailingPathSeparator, createAbsoluteFilePathMatcher, getContentPathList, - DEFAULT_PLUGIN_ID, } from '@docusaurus/utils'; import {createMDXLoaderRule} from '@docusaurus/mdx-loader'; import {createAllRoutes} from './routes'; @@ -38,7 +37,7 @@ export default async function pluginContentPages( generatedFilesDir, 'docusaurus-plugin-content-pages', ); - const dataDir = path.join(pluginDataDirRoot, options.id ?? DEFAULT_PLUGIN_ID); + const dataDir = path.join(pluginDataDirRoot, options.id); async function createPagesMDXLoaderRule(): Promise { const { diff --git a/packages/docusaurus-plugin-content-pages/src/options.ts b/packages/docusaurus-plugin-content-pages/src/options.ts index 2ffda3e7c2..8d6383c7ae 100644 --- a/packages/docusaurus-plugin-content-pages/src/options.ts +++ b/packages/docusaurus-plugin-content-pages/src/options.ts @@ -14,11 +14,12 @@ import { RouteBasePathSchema, URISchema, } from '@docusaurus/utils-validation'; -import {GlobExcludeDefault} from '@docusaurus/utils'; +import {DEFAULT_PLUGIN_ID, GlobExcludeDefault} from '@docusaurus/utils'; import type {OptionValidationContext} from '@docusaurus/types'; import type {PluginOptions, Options} from '@docusaurus/plugin-content-pages'; export const DEFAULT_OPTIONS: PluginOptions = { + id: DEFAULT_PLUGIN_ID, path: 'src/pages', // Path to data on filesystem, relative to site dir. routeBasePath: '/', // URL Route. include: ['**/*.{js,jsx,ts,tsx,md,mdx}'], // Extensions to include. diff --git a/packages/docusaurus-plugin-content-pages/src/plugin-content-pages.d.ts b/packages/docusaurus-plugin-content-pages/src/plugin-content-pages.d.ts index c0e02f40ae..ca5bd518f3 100644 --- a/packages/docusaurus-plugin-content-pages/src/plugin-content-pages.d.ts +++ b/packages/docusaurus-plugin-content-pages/src/plugin-content-pages.d.ts @@ -19,7 +19,7 @@ declare module '@docusaurus/plugin-content-pages' { }; export type PluginOptions = MDXOptions & { - id?: string; + id: string; path: string; routeBasePath: string; include: string[];