diff --git a/src/core/render/compiler.js b/src/core/render/compiler.js index c27c4951e..74d9ed382 100644 --- a/src/core/render/compiler.js +++ b/src/core/render/compiler.js @@ -30,6 +30,11 @@ const compileMedia = { url } }, + mermaid(url) { + return { + url + } + }, iframe(url, title) { return { code: `` @@ -141,6 +146,8 @@ export class Compiler { let type = 'code' if (/\.(md|markdown)/.test(href)) { type = 'markdown' + } else if (/\.mmd/.test(href)) { + type = 'mermaid' } else if (/\.html?/.test(href)) { type = 'iframe' } else if (/\.(mp4|ogg)/.test(href)) { diff --git a/src/core/render/embed.js b/src/core/render/embed.js index f82a77d57..5a4874d52 100644 --- a/src/core/render/embed.js +++ b/src/core/render/embed.js @@ -27,6 +27,9 @@ function walkFetchEmbed({embedTokens, compile, fetch}, cb) { text.replace(/`/g, '@DOCSIFY_QM@') + '\n```\n' ) + } else if (token.embed.type === 'mermaid') { + embedToken = [{type: 'html', text: `