diff --git a/cypress/platform/per.html b/cypress/platform/per.html index a6d3397c3..b2484e848 100644 --- a/cypress/platform/per.html +++ b/cypress/platform/per.html @@ -91,7 +91,7 @@ stateDiagram-v2
stateDiagram - StateID + StateA diff --git a/packages/mermaid/src/config.type.ts b/packages/mermaid/src/config.type.ts index afe636144..0da68187a 100644 --- a/packages/mermaid/src/config.type.ts +++ b/packages/mermaid/src/config.type.ts @@ -68,7 +68,7 @@ export interface MermaidConfig { * Defines which main look to use for the diagram. * */ - look?: 'classic' | 'handdrawn'; + look?: 'classic' | 'handdrawn' | 'neo'; /** * Defines the seed to be used when using handdrawn look. This is important for the automated tests as they will always find differences without the seed. The default value is 0 which gives a random seed. * diff --git a/packages/mermaid/src/diagrams/state/stateRenderer-v3-unified.ts b/packages/mermaid/src/diagrams/state/stateRenderer-v3-unified.ts index 8d3421ed0..df4695f88 100644 --- a/packages/mermaid/src/diagrams/state/stateRenderer-v3-unified.ts +++ b/packages/mermaid/src/diagrams/state/stateRenderer-v3-unified.ts @@ -7,6 +7,7 @@ import { setupViewPortForSVG } from '../../rendering-util/setupViewPortForSVG.js import type { LayoutData } from '../../rendering-util/types.js'; import utils from '../../utils.js'; import { CSS_DIAGRAM, DEFAULT_NESTED_DOC_DIR } from './stateCommon.js'; +import { lookUpDomId } from '../flowchart/flowDb'; /** * Get the direction from the statement items. @@ -83,11 +84,14 @@ export const draw = async function ( const config = getConfig(); if (config.look === 'neo') { data4Layout.markers = ['barbNeo']; + data4Layout.nodes.forEach((node) => { + node.look = 'neo'; + }); } else { data4Layout.markers = ['barb']; } data4Layout.diagramId = id; - // console.log('REF1:', data4Layout); + console.log('REF1:', data4Layout); await render(data4Layout, svg, element, positions); const padding = 8; utils.insertTitle( diff --git a/packages/mermaid/src/rendering-util/rendering-elements/shapes/drawRect.ts b/packages/mermaid/src/rendering-util/rendering-elements/shapes/drawRect.ts index 0f98f4d19..2e765d9fe 100644 --- a/packages/mermaid/src/rendering-util/rendering-elements/shapes/drawRect.ts +++ b/packages/mermaid/src/rendering-util/rendering-elements/shapes/drawRect.ts @@ -23,7 +23,6 @@ export const drawRect = async (parent: SVGAElement, node: Node, options: RectOpt const y = -totalHeight / 2; let rect; - node.look = look; let { rx, ry } = node; const { cssStyles } = node; diff --git a/packages/mermaid/src/rendering-util/rendering-elements/shapes/roundedRect.ts b/packages/mermaid/src/rendering-util/rendering-elements/shapes/roundedRect.ts index d275f77cb..0704df05b 100644 --- a/packages/mermaid/src/rendering-util/rendering-elements/shapes/roundedRect.ts +++ b/packages/mermaid/src/rendering-util/rendering-elements/shapes/roundedRect.ts @@ -4,7 +4,6 @@ import { getConfig } from '$root/diagram-api/diagramAPI.js'; export const roundedRect = async (parent: SVGAElement, node: Node) => { const { look } = getConfig(); - node.look = look; const options = { rx: node.look === 'neo' ? 3 : 5, ry: node.look === 'neo' ? 3 : 5, diff --git a/packages/mermaid/src/rendering-util/rendering-elements/shapes/state.ts b/packages/mermaid/src/rendering-util/rendering-elements/shapes/state.ts index dbb080894..4cd505801 100644 --- a/packages/mermaid/src/rendering-util/rendering-elements/shapes/state.ts +++ b/packages/mermaid/src/rendering-util/rendering-elements/shapes/state.ts @@ -4,8 +4,6 @@ import { getConfig } from '$root/diagram-api/diagramAPI.js'; export const state = async (parent: SVGAElement, node: Node) => { const { look } = getConfig(); - node.look = look; - const options = { rx: node.look === 'neo' ? 3 : 5, ry: node.look === 'neo' ? 3 : 5, diff --git a/packages/mermaid/src/schemas/config.schema.yaml b/packages/mermaid/src/schemas/config.schema.yaml index 107a0e2ec..37d06cea4 100644 --- a/packages/mermaid/src/schemas/config.schema.yaml +++ b/packages/mermaid/src/schemas/config.schema.yaml @@ -78,6 +78,7 @@ properties: enum: - classic - handdrawn + - neo default: 'classic' handdrawnSeed: description: |