Skip to content

Internal error on subgraph with numeric identifier #7609

@ABorgna

Description

@ABorgna

Description

The mermaid code below produces a "TypeError: Cannot set properties of undefined (setting 'rank')".
This only happens when inner has a numeric identifier. The diagram renders correctly when replacing 1 with a letter.

Steps to reproduce

Example diagram:

graph LR
    subgraph outer
        subgraph 1 ["inner"]
            external
            subgraph sub
                internal
            end
            sub-->external
        end
    end

Render error:

graph LR
    subgraph outer
        subgraph 1 ["inner"]
            external
            subgraph sub
                internal
            end
            sub-->external
        end
    end
Loading

Backtrace:

TypeError: Cannot set properties of undefined (setting 'rank')
    at #evaluate (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/ExecutionContext.js:388:19)
    at async ExecutionContext.evaluate (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/ExecutionContext.js:275:16)
    at async IsolatedWorld.evaluate (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/puppeteer-core/lib/esm/puppeteer/cdp/IsolatedWorld.js:97:16)
    at async CdpJSHandle.evaluate (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/puppeteer-core/lib/esm/puppeteer/api/JSHandle.js:146:20)
    at async CdpElementHandle.evaluate (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/puppeteer-core/lib/esm/puppeteer/api/ElementHandle.js:340:20)
    at async CdpElementHandle.$eval (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/puppeteer-core/lib/esm/puppeteer/api/ElementHandle.js:494:24)
    at async CdpFrame.$eval (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/puppeteer-core/lib/esm/puppeteer/api/Frame.js:450:20)
    at async CdpPage.$eval (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/puppeteer-core/lib/esm/puppeteer/api/Page.js:450:20)
    at async renderMermaid (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/src/index.js:266:22)
    at recursiveRender (.../.nvm/versions/node/v22.22.0/lib/node_modules/@mermaid-js/mermaid-cli/node_modules/mermaid/dist/mermaid.js:58234:8)

Screenshots

No response

Code Sample


Setup

  • mmdc --version: 11.12.0

Suggested Solutions

No response

Additional Context

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions