From b79191e39cda535f6e17701718792a72f8d7f409 Mon Sep 17 00:00:00 2001 From: Sidharth Vinod Date: Sat, 27 Jul 2024 15:14:52 +0530 Subject: [PATCH 1/4] chore: Simplify dataFetcher helper functions --- .../mermaid/src/diagrams/state/dataFetcher.js | 38 ++----------------- 1 file changed, 3 insertions(+), 35 deletions(-) diff --git a/packages/mermaid/src/diagrams/state/dataFetcher.js b/packages/mermaid/src/diagrams/state/dataFetcher.js index 35c1d933f..ec4b0518b 100644 --- a/packages/mermaid/src/diagrams/state/dataFetcher.js +++ b/packages/mermaid/src/diagrams/state/dataFetcher.js @@ -172,43 +172,11 @@ function insertOrUpdateNode(nodes, nodeData, classes) { * @returns {string} */ function getClassesFromDbInfo(dbInfoItem) { - if (dbInfoItem === undefined || dbInfoItem === null) { - return ''; - } else { - if (dbInfoItem.classes) { - let classStr = ''; - // for each class in classes, add it to the string as comma separated - for (let i = 0; i < dbInfoItem.classes.length; i++) { - //do not add comma for the last class - if (i === dbInfoItem.classes.length - 1) { - classStr += dbInfoItem.classes[i]; - } - //add comma for all other classes - else { - classStr += dbInfoItem.classes[i] + ' '; - } - } - return classStr; - } else { - return ''; - } - } + return dbInfoItem?.classes?.join(' ') ?? ''; } -/** - * Get classes from the db for the info item. - * If there aren't any or if dbInfoItem isn't defined, return an empty string. - * Else create 1 string from the list of classes found - */ + function getStylesFromDbInfo(dbInfoItem) { - if (dbInfoItem === undefined || dbInfoItem === null) { - return; - } else { - if (dbInfoItem.styles) { - return dbInfoItem.styles; - } else { - return []; - } - } + return dbInfoItem?.styles ?? []; } export const dataFetcher = ( From cdca63dcfe81804c5e48721522aefe0d75175b1d Mon Sep 17 00:00:00 2001 From: Sidharth Vinod Date: Sat, 27 Jul 2024 15:18:09 +0530 Subject: [PATCH 2/4] chore: Simplify dataFetcher helper functions --- packages/mermaid/src/diagrams/state/dataFetcher.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/mermaid/src/diagrams/state/dataFetcher.js b/packages/mermaid/src/diagrams/state/dataFetcher.js index ec4b0518b..31f459b9e 100644 --- a/packages/mermaid/src/diagrams/state/dataFetcher.js +++ b/packages/mermaid/src/diagrams/state/dataFetcher.js @@ -198,10 +198,10 @@ export const dataFetcher = ( if (itemId !== 'root') { let shape = SHAPE_STATE; + // The if === true / false can be removed if we can guarantee that the parsedItem.start is always a boolean if (parsedItem.start === true) { shape = SHAPE_START; - } - if (parsedItem.start === false) { + } else if (parsedItem.start === false) { shape = SHAPE_END; } if (parsedItem.type !== DEFAULT_STATE_TYPE) { From 6b336cbe77701101550eeca827e768719eb6f393 Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Sat, 27 Jul 2024 13:16:26 +0000 Subject: [PATCH 3/4] [autofix.ci] apply automated fixes --- docs/config/setup/interfaces/mermaid.MermaidConfig.md | 2 +- packages/mermaid/src/config.type.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/config/setup/interfaces/mermaid.MermaidConfig.md b/docs/config/setup/interfaces/mermaid.MermaidConfig.md index 7cd0e7e78..e13e4fbbf 100644 --- a/docs/config/setup/interfaces/mermaid.MermaidConfig.md +++ b/docs/config/setup/interfaces/mermaid.MermaidConfig.md @@ -460,7 +460,7 @@ This is useful when you want to control how to handle syntax errors in your appl ### theme -• `Optional` **theme**: `"default"` | `"forest"` | `"dark"` | `"neutral"` | `"null"` +• `Optional` **theme**: `"default"` | `"base"` | `"dark"` | `"forest"` | `"neutral"` | `"null"` Theme, the CSS style sheet. You may also use `themeCSS` to override this value. diff --git a/packages/mermaid/src/config.type.ts b/packages/mermaid/src/config.type.ts index 2d25282f3..7bd305183 100644 --- a/packages/mermaid/src/config.type.ts +++ b/packages/mermaid/src/config.type.ts @@ -61,7 +61,7 @@ export interface MermaidConfig { * You may also use `themeCSS` to override this value. * */ - theme?: 'default' | 'forest' | 'dark' | 'neutral' | 'null'; + theme?: 'default' | 'base' | 'dark' | 'forest' | 'neutral' | 'null'; themeVariables?: any; themeCSS?: string; /** From 4e40f29f33f7e47a8a9d4efce653c9d7ceb39cdb Mon Sep 17 00:00:00 2001 From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com> Date: Tue, 20 Aug 2024 07:12:51 +0000 Subject: [PATCH 4/4] [autofix.ci] apply automated fixes --- docs/config/setup/interfaces/mermaid.Mermaid.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/config/setup/interfaces/mermaid.Mermaid.md b/docs/config/setup/interfaces/mermaid.Mermaid.md index a340c7a97..86bdbe8fa 100644 --- a/docs/config/setup/interfaces/mermaid.Mermaid.md +++ b/docs/config/setup/interfaces/mermaid.Mermaid.md @@ -147,7 +147,7 @@ Internal helpers for mermaid | `common.sanitizeTextOrArray` | (`a`: `string` \| `string`\[] \| `string`\[]\[], `config`: [`MermaidConfig`](mermaid.MermaidConfig.md)) => `string` \| `string`\[] | | `common.splitBreaks` | (`text`: `string`) => `string`\[] | | `getConfig` | () => [`MermaidConfig`](mermaid.MermaidConfig.md) | -| `insertCluster` | (`elem`: `any`, `node`: `any`) => `any` | +| `insertCluster` | (`elem`: `any`, `node`: `any`) => `Promise`<`any`> | | `insertEdge` | (`elem`: `any`, `edge`: `any`, `clusterDb`: `any`, `diagramType`: `any`, `startNode`: `any`, `endNode`: `any`, `id`: `any`) => { `originalPath`: `any` ; `updatedPath`: `any` } | | `insertEdgeLabel` | (`elem`: `any`, `edge`: `any`) => `Promise`<`any`> | | `insertMarkers` | (`elem`: `any`, `markerArray`: `any`, `type`: `any`, `id`: `any`) => `void` |