From 4f5cab7f4cf8a31be6e7a448f29b599f1e2a83fd Mon Sep 17 00:00:00 2001 From: kerwin612 Date: Fri, 11 Mar 2022 16:32:04 +0800 Subject: [PATCH] fix: autonumber bug --- src/diagrams/sequence/sequenceDb.js | 1 + src/diagrams/sequence/sequenceDiagram.spec.js | 20 +++++++++++++++++++ src/mermaidAPI.js | 1 + 3 files changed, 22 insertions(+) mode change 100755 => 100644 src/mermaidAPI.js diff --git a/src/diagrams/sequence/sequenceDb.js b/src/diagrams/sequence/sequenceDb.js index 7492e6d11..60a07a2e3 100644 --- a/src/diagrams/sequence/sequenceDb.js +++ b/src/diagrams/sequence/sequenceDb.js @@ -139,6 +139,7 @@ export const autoWrap = () => wrapEnabled; export const clear = function () { actors = {}; messages = []; + sequenceNumbersEnabled = false; }; export const parseMessage = function (str) { diff --git a/src/diagrams/sequence/sequenceDiagram.spec.js b/src/diagrams/sequence/sequenceDiagram.spec.js index 437e0e6e9..c20dc54a4 100644 --- a/src/diagrams/sequence/sequenceDiagram.spec.js +++ b/src/diagrams/sequence/sequenceDiagram.spec.js @@ -1619,4 +1619,24 @@ participant Alice models.lastActor().y + models.lastActor().height + mermaid.sequence.boxMargin ); }); + it('it should hide sequence numbers when autonumber is removed when autonumber is enabled', function () { + const str1 = ` +sequenceDiagram +autonumber +Alice->Bob:Hello Bob, how are you? +Note right of Bob: Bob thinks +Bob-->Alice: I am good thanks!`; + + mermaidAPI.parse(str1); + expect(parser.yy.showSequenceNumbers()).toBe(true); + + const str2 = ` +sequenceDiagram +Alice->Bob:Hello Bob, how are you? +Note right of Bob: Bob thinks +Bob-->Alice: I am good thanks!`; + + mermaidAPI.parse(str2); + expect(parser.yy.showSequenceNumbers()).toBe(false); + }); }); diff --git a/src/mermaidAPI.js b/src/mermaidAPI.js old mode 100755 new mode 100644 index 06eaa3ce3..9d1b18b71 --- a/src/mermaidAPI.js +++ b/src/mermaidAPI.js @@ -94,6 +94,7 @@ function parse(text) { parser.parser.yy = flowDb; break; case 'sequence': + sequenceDb.clear(); parser = sequenceParser; parser.parser.yy = sequenceDb; break;