From 37269b47b5744eef6944badd77e8750a333648f1 Mon Sep 17 00:00:00 2001 From: Anthony Juckel Date: Sun, 2 Mar 2025 21:26:43 -0600 Subject: [PATCH] Default to markdown for nodes from metadata --- packages/mermaid/src/diagrams/flowchart/flowDb.ts | 12 ++++++++++++ packages/mermaid/src/diagrams/flowchart/types.ts | 4 ++-- packages/mermaid/src/types.ts | 1 + 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/packages/mermaid/src/diagrams/flowchart/flowDb.ts b/packages/mermaid/src/diagrams/flowchart/flowDb.ts index 190312c7f..e2ccca412 100644 --- a/packages/mermaid/src/diagrams/flowchart/flowDb.ts +++ b/packages/mermaid/src/diagrams/flowchart/flowDb.ts @@ -85,6 +85,17 @@ export class FlowDB implements DiagramDB { return common.sanitizeText(txt, this.config); } + private sanitizeNodeLabelType(labelType: string) { + switch (labelType) { + case 'markdown': + case 'string': + case 'text': + return labelType; + default: + return 'markdown'; + } + } + /** * Function to lookup domId from id in the graph definition. * @@ -208,6 +219,7 @@ export class FlowDB implements DiagramDB { if (doc?.label) { vertex.text = doc?.label; + vertex.labelType = this.sanitizeNodeLabelType(doc?.labelType ?? 'markdown'); } if (doc?.icon) { vertex.icon = doc?.icon; diff --git a/packages/mermaid/src/diagrams/flowchart/types.ts b/packages/mermaid/src/diagrams/flowchart/types.ts index 54156091b..ac2d04015 100644 --- a/packages/mermaid/src/diagrams/flowchart/types.ts +++ b/packages/mermaid/src/diagrams/flowchart/types.ts @@ -29,7 +29,7 @@ export interface FlowVertex { domId: string; haveCallback?: boolean; id: string; - labelType: 'text'; + labelType: 'markdown' | 'string' | 'text'; link?: string; linkTarget?: string; props?: any; @@ -62,7 +62,7 @@ export interface FlowEdge { style?: string[]; length?: number; text: string; - labelType: 'text'; + labelType: 'markdown' | 'string' | 'text'; classes: string[]; id?: string; animation?: 'fast' | 'slow'; diff --git a/packages/mermaid/src/types.ts b/packages/mermaid/src/types.ts index d1394e71b..8402aa576 100644 --- a/packages/mermaid/src/types.ts +++ b/packages/mermaid/src/types.ts @@ -1,6 +1,7 @@ export interface NodeMetaData { shape?: string; label?: string; + labelType?: string; icon?: string; form?: string; pos?: 't' | 'b';