mirror of
https://github.com/mermaid-js/mermaid.git
synced 2025-10-22 15:39:41 +02:00

Fixes #2492 The flowchart parser was incorrectly consuming 'o' or 'x' characters from node names when they appeared after arrows without spaces. For example, `dev---ops` was parsed as "dev" → "ps" instead of "dev" → "ops". Changes: - Modified lexer patterns in flow.jison to distinguish between: - Intentional arrow markers (--o, --x) followed by whitespace or uppercase - Node names starting with 'o' or 'x' (lowercase continuation) - Added 10 comprehensive tests to flow-arrows.spec.js covering: - Bug cases (dev---ops, dev---xerxes) - Backwards compatibility (A--oB, A --o B, etc.) - All arrow types (solid, thick, dotted) The fix uses smart pattern matching: - `--o ` (with space) → circle arrow marker - `--oB` (uppercase) → circle arrow marker - `--ops` (lowercase) → plain arrow, 'ops' is node name All 24 new tests pass. All 293 existing edge tests pass.