feat(Viewer): add XML/SVG export to viewer
This commit adds export of XML/SVG code via our Modeler/Viewer APIs. It is a first step to solve #10.
This commit is contained in:
parent
7ccc9bf48e
commit
9fe8609fcd
|
@ -20,6 +20,48 @@ Viewer.prototype.importXML = function(xml, done) {
|
|||
});
|
||||
};
|
||||
|
||||
Viewer.prototype.saveXML = function(options, done) {
|
||||
|
||||
if (!done) {
|
||||
done = options;
|
||||
options = {};
|
||||
}
|
||||
|
||||
var definitions = this.definitions;
|
||||
|
||||
if (!definitions) {
|
||||
return done(new Error('no definitions loaded'));
|
||||
}
|
||||
|
||||
Model.toXML(definitions, options, function(err, xml) {
|
||||
done(err, xml);
|
||||
});
|
||||
};
|
||||
|
||||
|
||||
var SVG_HEADER =
|
||||
'<?xml version="1.0" encoding="utf-8"?>\n' +
|
||||
'<!-- created with bpmn-js / http://bpmn.io -->\n' +
|
||||
'<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1 Basic//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd">\n' +
|
||||
'<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" baseProfile="basic">\n';
|
||||
|
||||
Viewer.prototype.saveSVG = function(options, done) {
|
||||
if (!done) {
|
||||
done = options;
|
||||
options = {};
|
||||
}
|
||||
|
||||
if (!this.definitions) {
|
||||
return done(new Error('no definitions loaded'));
|
||||
}
|
||||
|
||||
var svg = this.container.innerHTML;
|
||||
|
||||
svg = svg.replace(/<svg[^>]+>/, SVG_HEADER);
|
||||
|
||||
done(null, svg);
|
||||
};
|
||||
|
||||
Viewer.prototype.importDefinitions = function(definitions, done) {
|
||||
|
||||
if (this.diagram) {
|
||||
|
|
Loading…
Reference in New Issue