Skip to main content
Docusaurus

Search documentation

Type to search this documentation.

On this pageOverview

Static methods

Static methods are not part of the plugin instance—they are attached to the constructor function. These methods are used to validate and normalize the plugin options and theme config, which are then used as constructor parameters to initialize the plugin instance.

Returns validated and normalized options for the plugin. This method is called before the plugin is initialized. You must return the options since they will be passed to the plugin during initialization.

validateOptions is called with options passed to plugin for validation and normalization.

validateOptions is called with validate function which takes a Joi schema and options as the arguments, returns validated and normalized options. validate will automatically handle error and validation config.

If you don't use Joi for validation you can throw an Error in case of invalid options and return options in case of success.

my-plugin/src/index.js
export default function myPlugin(context, options) {  return {    name: 'docusaurus-plugin',    // rest of methods  };}export function validateOptions({options, validate}) {  const validatedOptions = validate(myValidationSchema, options);  return validatedOptions;}

validateThemeConfig({themeConfig, validate})

Section titled “validateThemeConfig({themeConfig, validate})”

Return validated and normalized configuration for the theme.

validateThemeConfig is called with themeConfig provided in docusaurus.config.js for validation and normalization.

validateThemeConfig is called with validate function which takes a Joi schema and themeConfig as the arguments, returns validated and normalized options. validate will automatically handle error and validation config.

If you don't use Joi for validation you can throw an Error in case of invalid options.

my-theme/src/index.js
export default function myPlugin(context, options) {  return {    name: 'docusaurus-plugin',    // rest of methods  };}export function validateThemeConfig({themeConfig, validate}) {  const validatedThemeConfig = validate(myValidationSchema, options);  return validatedThemeConfig;}
Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu