diff --git a/packages/eui/src-docs/src/views/markdown_editor/markdown_link_validation.js b/packages/eui/src-docs/src/views/markdown_editor/markdown_link_validation.js
index ee6185544d8..0d7863e6ce5 100644
--- a/packages/eui/src-docs/src/views/markdown_editor/markdown_link_validation.js
+++ b/packages/eui/src-docs/src/views/markdown_editor/markdown_link_validation.js
@@ -6,15 +6,18 @@ import {
EuiMarkdownFormat,
} from '../../../../src/components';
-// find the validation plugin and configure it to only allow https: and mailto: links
-const parsingPlugins = getDefaultEuiMarkdownParsingPlugins();
-parsingPlugins.find(([plugin, config]) => {
- const isValidationPlugin = plugin === euiMarkdownLinkValidator;
- if (isValidationPlugin) {
- config.allowProtocols = ['https:', 'mailto:'];
- }
- return isValidationPlugin;
-});
+const parsingPlugins = [
+ // Exclude the default validation plugin, we're configuring our own that excludes `http` as a protocol
+ ...getDefaultEuiMarkdownParsingPlugins({
+ exclude: ['linkValidator'],
+ }),
+ [
+ euiMarkdownLinkValidator,
+ {
+ allowProtocols: ['https:', 'mailto:'],
+ },
+ ],
+];
const markdown = `**Standalone links**
https://example.com
diff --git a/packages/eui/src-docs/src/views/markdown_editor/markdown_plugin_example.js b/packages/eui/src-docs/src/views/markdown_editor/markdown_plugin_example.js
index 94a3471b1bc..b839bfbdb34 100644
--- a/packages/eui/src-docs/src/views/markdown_editor/markdown_plugin_example.js
+++ b/packages/eui/src-docs/src/views/markdown_editor/markdown_plugin_example.js
@@ -327,28 +327,24 @@ export const MarkdownPluginExample = {
),
snippet: [
- `// change what link protocols are allowed
-const parsingPlugins = getDefaultEuiMarkdownParsingPlugins();
-parsingPlugins.find(([plugin, config]) => {
- const isValidationPlugin = plugin === euiMarkdownLinkValidator;
- if (isValidationPlugin) {
- config.allowProtocols = ['https:', 'mailto:'];
- }
- return isValidationPlugin;
-});`,
- `// filter out the link validation plugin
-const parsingPlugins = getDefaultEuiMarkdownParsingPlugins().filter(([plugin]) => {
- return plugin !== euiMarkdownLinkValidator;
-});`,
- `// disable relative urls
-const parsingPlugins = getDefaultEuiMarkdownParsingPlugins();
-parsingPlugins.find(([plugin, config]) => {
- const isValidationPlugin = plugin === euiMarkdownLinkValidator;
- if (isValidationPlugin) {
- config.allowRelative = false;
- }
- return isValidationPlugin;
-});`,
+ `// customize what link protocols are allowed
+const parsingPlugins = [
+ ...getDefaultEuiMarkdownParsingPlugins({
+ // Exclude the default validation plugin - we're configuring our own
+ exclude: ['linkValidator'],
+ }),
+ [
+ euiMarkdownLinkValidator,
+ {
+ // Customize what link protocols are allowed
+ allowProtocols: ['https:', 'mailto:'],
+ },
+ ]
+];
+
+// Pass the customized parsing plugins to your markdown component
+
+`,
],
demo: ,
},