all files / diagram/serialization/ sequence-diagram-mermaid.js

100% Statements 23/23
100% Branches 4/4
100% Functions 5/5
100% Lines 22/22
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34           344× 22×   22× 22× 22× 22× 22× 22× 22× 22×            
define(["require", "exports"], function (require, exports) {
    "use strict";
    Object.defineProperty(exports, "__esModule", { value: true });
    function saveSequenceDiagramAsMermaid(diagram) {
        var model = diagram.model;
        if (!model.isLoadedFromMermaid) {
            return model.generateMermaidFromModel();
        }
        else {
            return model.mermaidData;
        }
    }
    exports.saveSequenceDiagramAsMermaid = saveSequenceDiagramAsMermaid;
    function isSequenceDiagram(input) {
        var lines = input.split(/\r?\n/).filter(function (line) { return line.trim().length > 0; });
        return lines.length > 0 && lines[0].trim() === 'sequenceDiagram';
    }
    exports.isSequenceDiagram = isSequenceDiagram;
    function loadSequenceDiagramFromMermaid(mermaidText, diagram) {
        diagram.model = {};
        diagram.model.parse(mermaidText, diagram);
        diagram.initLayerObjects();
        diagram.protectPropertyChange(true);
        diagram.model.loadDiagramFromMermaid(mermaidText, diagram);
        diagram.refreshDiagramLayer();
        diagram.protectPropertyChange(false);
        diagram.fitToPage({
            mode: 'Page', region: 'Content', margin: { left: 10, top: 10, right: 10, bottom: 10 },
            canZoomIn: true, canZoomOut: true
        });
    }
    exports.loadSequenceDiagramFromMermaid = loadSequenceDiagramFromMermaid;
});