diff --git a/src/public/app/services/mermaid.js b/src/public/app/services/mermaid.ts similarity index 93% rename from src/public/app/services/mermaid.js rename to src/public/app/services/mermaid.ts index 152f14252..e553e89e2 100644 --- a/src/public/app/services/mermaid.js +++ b/src/public/app/services/mermaid.ts @@ -11,7 +11,7 @@ let elkLoaded = false; * * @param mermaidContent the plain text of the mermaid diagram, potentially including a frontmatter. */ -export async function loadElkIfNeeded(mermaidContent) { +export async function loadElkIfNeeded(mermaidContent: string) { if (elkLoaded) { // Exit immediately since the ELK library is already loaded. return; diff --git a/src/public/app/types.d.ts b/src/public/app/types.d.ts index 8a509b71c..147ca34d6 100644 --- a/src/public/app/types.d.ts +++ b/src/public/app/types.d.ts @@ -128,8 +128,20 @@ declare global { securityLevel: "antiscript" }): void; render(selector: string, data: string); + } + interface MermaidLoader { + } var mermaid: { mermaidAPI: MermaidApi; + registerLayoutLoaders(loader: MermaidLoader); + parse(content: string, opts: { + suppressErrors: true + }): { + config: { + layout: string; + } + } }; + var MERMAID_ELK: MermaidLoader; }