5.6.0.4 release

This commit is contained in:
Gaudenz Alder 2016-09-12 13:14:09 +02:00
parent 47e26e5d94
commit 884146df91
24 changed files with 6751 additions and 6727 deletions

View file

@ -1,3 +1,17 @@
12-SEP-2016: 5.6.0.4
- Uses mxGraph 3.6.0.1
- Adds reset for undo history of in-place editor
- Fixes inconsistent selection check for cursor keys
- Adds hash listener for pages with url parameters
- Fixes PDF, image with XML export for multiple pages
- File ID has precedence over create, url parameters
- Adds validation for grid size in page setup dialog
- Fixes fullscreen toggle in embed mode for Kennedy
- Adds keyboard shortcuts in toolbar tooltips
- Uses mxfile wrapper for embedded HTML files
- Adds optional callback argument in App.main
07-SEP-2016: 5.6.0.3 07-SEP-2016: 5.6.0.3
- Uses mxGraph 3.6 - Uses mxGraph 3.6

View file

@ -1 +1 @@
5.6.0.3 5.6.0.4

View file

@ -488,6 +488,7 @@
<exclude name="glyphicons_blogger.png"/> <exclude name="glyphicons_blogger.png"/>
<exclude name="glyphicons_google.png"/> <exclude name="glyphicons_google.png"/>
<exclude name="glyphicons_twitter.png"/> <exclude name="glyphicons_twitter.png"/>
<exclude name="glyphicons_github.png"/>
<exclude name="stop-flat-icon-80.png"/> <exclude name="stop-flat-icon-80.png"/>
<exclude name="1x1.png"/> <exclude name="1x1.png"/>
<exclude name="2x2.png"/> <exclude name="2x2.png"/>

View file

@ -1,4 +1,4 @@
var mxClient={VERSION:"3.6.0.0",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&& var mxClient={VERSION:"3.6.0.1",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&
0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&& 0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&&
0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&& 0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&&
0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")|| 0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")||
@ -862,16 +862,16 @@ mxGraphSelectionModel.prototype.addCells=function(a){if(null!=a){var b=null;this
mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}}; mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}};
mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null} mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null}
mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)|| mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)||
this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler)}mxCellEditor.prototype.graph=null; this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};
mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20); function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler);this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null==this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler)}
mxCellEditor.prototype.graph=null;mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20);
mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)}; mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)};
mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&(8!=document.documentMode&&9!=document.documentMode&&10!=document.documentMode)&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")}; mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&(8!=document.documentMode&&9!=document.documentMode&&10!=document.documentMode)&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")};
mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a}; mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a};
mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null== mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&
this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler);var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length|| a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length||"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?
"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&(this.autoSize&&!mxEvent.isConsumed(a))&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread), "input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&(this.autoSize&&!mxEvent.isConsumed(a))&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread),this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",
this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)}; c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)};mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left= mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left=
Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width= Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=
Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds= Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds=
@ -889,13 +889,13 @@ mxConstants.DEFAULT_TEXT_DIRECTION);d==mxConstants.TEXT_DIRECTION_AUTO&&null!=c&
(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}), (this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}),
0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&(0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange))&&document.execCommand("selectAll",!1,null)}catch(n){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText}; 0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&(0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange))&&document.execCommand("selectAll",!1,null)}catch(n){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText};
mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="", mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="",
this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b))}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)}; this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b));mxEvent.release(this.textarea);this.textarea=null}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)};
mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,k=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]|| mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,k=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]||
0)+mxText.prototype.baseSpacingRight)*c+g,l=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-k-l)),l=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&& 0)+mxText.prototype.baseSpacingRight)*c+g,l=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-k-l)),l=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&&
l==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=k;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width), l==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=k;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width),
f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b== f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b==
mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell}; mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell};
mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null,null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null),this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null))};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector; mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null);null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null);this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null)};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector;
mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape); mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape);
mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon); mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon);
mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape); mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape);

0
etc/sandstorm/build.sh Executable file → Normal file
View file

0
etc/sandstorm/stage.sh Executable file → Normal file
View file

View file

@ -331,7 +331,7 @@ public class GliffyDiagramConverter {
GliffyImage image = graphic.getImage(); GliffyImage image = graphic.getImage();
cell.setVertex(true); cell.setVertex(true);
style.append("shape=" + StencilTranslator.translate(gliffyObject.uid)).append(";"); style.append("shape=" + StencilTranslator.translate(gliffyObject.uid)).append(";");
style.append("image=" + image.getUrl()); style.append("image=" + image.getUrl()).append(";");
text = gliffyObject.getText(); text = gliffyObject.getText();
} }

View file

@ -1,7 +1,7 @@
CACHE MANIFEST CACHE MANIFEST
# THIS FILE WAS GENERATED. DO NOT MODIFY! # THIS FILE WAS GENERATED. DO NOT MODIFY!
# 09/07/2016 03:32 PM # 09/12/2016 12:53 PM
/app.html /app.html
/index.html?offline=1 /index.html?offline=1
@ -49,6 +49,7 @@ CACHE MANIFEST
/images/glyphicons_google.png /images/glyphicons_google.png
/images/glyphicons_facebook.png /images/glyphicons_facebook.png
/images/glyphicons_twitter.png /images/glyphicons_twitter.png
/images/glyphicons_github.png
/js/jscolor/arrow.gif /js/jscolor/arrow.gif
/js/jscolor/hs.png /js/jscolor/hs.png
/js/jscolor/cross.gif /js/jscolor/cross.gif

Binary file not shown.

After

Width:  |  Height:  |  Size: 393 B

View file

@ -353,6 +353,10 @@
<a href="https://www.twitter.com/drawio" title="draw.io on Twitter" target="_blank"> <a href="https://www.twitter.com/drawio" title="draw.io on Twitter" target="_blank">
<img border="0" width="24" height="24" src="images/glyphicons_twitter.png" alt="draw.io on Twitter"/> <img border="0" width="24" height="24" src="images/glyphicons_twitter.png" alt="draw.io on Twitter"/>
</a> </a>
&nbsp;
<a href="https://github.com/jgraph/draw.io" title="draw.io on GitHub" target="_blank">
<img border="0" width="24" height="24" src="images/glyphicons_github.png" alt="draw.io on GitHub"/>
</a>
</div> </div>
<table align="center"> <table align="center">
<tr> <tr>

1143
war/js/app.min.js vendored

File diff suppressed because one or more lines are too long

View file

@ -44,18 +44,18 @@ function(){return this.h&&decodeURIComponent(this.h)};g.prototype.ca=function(a)
!(a instanceof Array)&&(a instanceof Object||"[object Array]"!==Object.prototype.toString.call(a))){var b=[],c=-1,d;for(d in a){var e=a[d];"string"===typeof e&&(b[++c]=d,b[++c]=e)}a=b}for(var b=[],c="",f=0;f<a.length;)d=a[f++],e=a[f++],b.push(c,encodeURIComponent(d.toString())),c="\x26",e&&b.push("\x3d",encodeURIComponent(e.toString()));this.l=b.join("")};g.prototype.fa=function(a){this.o=a?a:c};g.prototype.Z=function(){return c!==this.o};var m=/^(?:([^:/?#]+):)?(?:\/\/(?:([^/?#]*)@)?([^/?#:@]*)(?::([0-9]+))?)?([^?#]+)?(?:\?([^#]*))?(?:#(.*))?$/, !(a instanceof Array)&&(a instanceof Object||"[object Array]"!==Object.prototype.toString.call(a))){var b=[],c=-1,d;for(d in a){var e=a[d];"string"===typeof e&&(b[++c]=d,b[++c]=e)}a=b}for(var b=[],c="",f=0;f<a.length;)d=a[f++],e=a[f++],b.push(c,encodeURIComponent(d.toString())),c="\x26",e&&b.push("\x3d",encodeURIComponent(e.toString()));this.l=b.join("")};g.prototype.fa=function(a){this.o=a?a:c};g.prototype.Z=function(){return c!==this.o};var m=/^(?:([^:/?#]+):)?(?:\/\/(?:([^/?#]*)@)?([^/?#:@]*)(?::([0-9]+))?)?([^?#]+)?(?:\?([^#]*))?(?:#(.*))?$/,
q=/[#\/\?@]/g,p=/[\#\?]/g;g.parse=a;g.create=function(a,e,f,k,l,n,m){a=new g(b(a,q),b(e,q),"string"==typeof f?encodeURIComponent(f):c,0<k?k.toString():c,b(l,p),c,"string"==typeof m?encodeURIComponent(m):c);n&&("string"===typeof n?a.O(n.replace(/[^?&=0-9A-Za-z_\-~.%]/g,d)):a.ba(n));return a};g.N=f;g.ma=e;g.ha={ua:function(b){return/\.html$/.test(a(b).U())?"text/html":"application/javascript"},N:function(b,c){return b?f(a(b),a(c)).toString():""+c}};return g}();"undefined"!==typeof window&&(window.URI= q=/[#\/\?@]/g,p=/[\#\?]/g;g.parse=a;g.create=function(a,e,f,k,l,n,m){a=new g(b(a,q),b(e,q),"string"==typeof f?encodeURIComponent(f):c,0<k?k.toString():c,b(l,p),c,"string"==typeof m?encodeURIComponent(m):c);n&&("string"===typeof n?a.O(n.replace(/[^?&=0-9A-Za-z_\-~.%]/g,d)):a.ba(n));return a};g.N=f;g.ma=e;g.ha={ua:function(b){return/\.html$/.test(a(b).U())?"text/html":"application/javascript"},N:function(b,c){return b?f(a(b),a(c)).toString():""+c}};return g}();"undefined"!==typeof window&&(window.URI=
n);var m=a,p=a,s=a,r=a;(function(){function e(a){return"string"===typeof a?'url("'+a.replace(y,g)+'")':'url("about:blank")'}function g(a){return E[a]}function k(a,b){return a?n.ha.N(a,b):b}function t(a,b,d){if(!d)return c;var e=(""+a).match(D);return e&&(!e[1]||F.test(e[1]))?d(a,b):c}function C(a){return a.replace(/^-(?:apple|css|epub|khtml|moz|mso?|o|rim|wap|webkit|xv)-(?=[a-z])/,"")}var y=/[\n\f\r\"\'()*<>]/g,E={"\n":"%0a","\f":"%0c","\r":"%0d",'"':"%22","'":"%27","(":"%28",")":"%29","*":"%2a", n);var m=a,p=a,s=a,r=a;(function(){function e(a){return"string"===typeof a?'url("'+a.replace(y,g)+'")':'url("about:blank")'}function g(a){return E[a]}function k(a,b){return a?n.ha.N(a,b):b}function t(a,b,d){if(!d)return c;var e=(""+a).match(D);return e&&(!e[1]||F.test(e[1]))?d(a,b):c}function C(a){return a.replace(/^-(?:apple|css|epub|khtml|moz|mso?|o|rim|wap|webkit|xv)-(?=[a-z])/,"")}var y=/[\n\f\r\"\'()*<>]/g,E={"\n":"%0a","\f":"%0c","\r":"%0d",'"':"%22","'":"%27","(":"%28",")":"%29","*":"%2a",
"\x3c":"%3c","\x3e":"%3e"},D=/^(?:([^:/?# ]+):)?/,F=/^(?:https?|mailto|data)$/i;m=function(){var a={};return function R(b,c,d,g,n){b=C(b);var m=f[b];if(!m||"object"!==typeof m)c.length=0;else{for(var q=m.cssPropBits,p=q&80,x=q&1536,G=NaN,D=0,s=0;D<c.length;++D){var r=c[D].toLowerCase(),A=r.charCodeAt(0),F,H,E,y,Q,ha;if(32===A)r="";else if(34===A)r=16===p?d?e(t(k(g,l(c[D].substring(1,r.length-1))),b,d)):"":q&8&&!(p&p-1)?r:"";else if("inherit"!==r){if(Q=m.cssLitGroup){var ea;if(!(ea=m.cssLitMap)){ea= "\x3c":"%3c","\x3e":"%3e"},D=/^(?:([^:/?# ]+):)?/,F=/^(?:https?|mailto|data)$/i;m=function(){var a={};return function R(b,c,d,g,n){b=C(b);var m=f[b];if(!m||"object"!==typeof m)c.length=0;else{for(var q=m.cssPropBits,p=q&80,x=q&1536,G=NaN,s=0,D=0;s<c.length;++s){var r=c[s].toLowerCase(),A=r.charCodeAt(0),F,H,E,y,Q,ha;if(32===A)r="";else if(34===A)r=16===p?d?e(t(k(g,l(c[s].substring(1,r.length-1))),b,d)):"":q&8&&!(p&p-1)?r:"";else if("inherit"!==r){if(Q=m.cssLitGroup){var ea;if(!(ea=m.cssLitMap)){ea=
{};for(var W=Q.length;0<=--W;)for(var ga=Q[W],ka=ga.length;0<=--ka;)ea[ga[ka]]=a;ea=m.cssLitMap=ea}Q=ea}else Q=a;if(!(ha=Q,ha[C(r)]===a))if(35===A&&/^#(?:[0-9a-f]{3}){1,2}$/.test(r))r=q&2?r:"";else if(48<=A&&57>=A)r=q&1?r:"";else if(F=r.charCodeAt(1),H=r.charCodeAt(2),E=48<=F&&57>=F,y=48<=H&&57>=H,43===A&&(E||46===F&&y))r=q&1?(E?"":"0")+r.substring(1):"";else if(45===A&&(E||46===F&&y))r=q&4?(E?"-":"-0")+r.substring(1):q&1?"0":"";else if(46===A&&E)r=q&1?"0"+r:"";else if('url("'===r.substring(0,5))r= {};for(var W=Q.length;0<=--W;)for(var ga=Q[W],ka=ga.length;0<=--ka;)ea[ga[ka]]=a;ea=m.cssLitMap=ea}Q=ea}else Q=a;if(!(ha=Q,ha[C(r)]===a))if(35===A&&/^#(?:[0-9a-f]{3}){1,2}$/.test(r))r=q&2?r:"";else if(48<=A&&57>=A)r=q&1?r:"";else if(F=r.charCodeAt(1),H=r.charCodeAt(2),E=48<=F&&57>=F,y=48<=H&&57>=H,43===A&&(E||46===F&&y))r=q&1?(E?"":"0")+r.substring(1):"";else if(45===A&&(E||46===F&&y))r=q&4?(E?"-":"-0")+r.substring(1):q&1?"0":"";else if(46===A&&E)r=q&1?"0"+r:"";else if('url("'===r.substring(0,5))r=
d&&q&16?e(t(k(g,c[D].substring(5,r.length-2)),b,d)):"";else if("("===r.charAt(r.length-1))a:{Q=c;ea=D;r=1;W=ea+1;for(A=Q.length;W<A&&r;)ga=Q[W++],r+=")"===ga?-1:/^[^"']*\($/.test(ga);if(!r){r=Q[ea].toLowerCase();A=C(r);Q=Q.splice(ea,W-ea,"");ea=m.cssFns;W=0;for(ga=ea.length;W<ga;++W)if(ea[W].substring(0,A.length)==A){Q[0]=Q[Q.length-1]="";R(ea[W],Q,d,g);r=r+Q.join(" ")+")";break a}}r=""}else r=x&&/^-?[a-z_][\w\-]*$/.test(r)&&!/__$/.test(r)?n&&512===x?c[D]+n:1024===x&&f[r]&&"number"===typeof f[r].oa? d&&q&16?e(t(k(g,c[s].substring(5,r.length-2)),b,d)):"";else if("("===r.charAt(r.length-1))a:{Q=c;ea=s;r=1;W=ea+1;for(A=Q.length;W<A&&r;)ga=Q[W++],r+=")"===ga?-1:/^[^"']*\($/.test(ga);if(!r){r=Q[ea].toLowerCase();A=C(r);Q=Q.splice(ea,W-ea,"");ea=m.cssFns;W=0;for(ga=ea.length;W<ga;++W)if(ea[W].substring(0,A.length)==A){Q[0]=Q[Q.length-1]="";R(ea[W],Q,d,g);r=r+Q.join(" ")+")";break a}}r=""}else r=x&&/^-?[a-z_][\w\-]*$/.test(r)&&!/__$/.test(r)?n&&512===x?c[s]+n:1024===x&&f[r]&&"number"===typeof f[r].oa?
r:"":/^\w+$/.test(r)&&64===p&&q&8?G+1===s?(c[G]=c[G].substring(0,c[G].length-1)+" "+r+'"',""):(G=s,'"'+r+'"'):""}r&&(c[s++]=r)}1===s&&'url("about:blank")'===c[0]&&(s=0);c.length=s}}}();var G=RegExp("^(active|after|before|blank|checked|default|disabled|drop|empty|enabled|first|first-child|first-letter|first-line|first-of-type|fullscreen|focus|hover|in-range|indeterminate|invalid|last-child|last-of-type|left|link|only-child|only-of-type|optional|out-of-range|placeholder-shown|read-only|read-write|required|right|root|scope|user-error|valid|visited)$"), r:"":/^\w+$/.test(r)&&64===p&&q&8?G+1===D?(c[G]=c[G].substring(0,c[G].length-1)+" "+r+'"',""):(G=D,'"'+r+'"'):""}r&&(c[D++]=r)}1===D&&'url("about:blank")'===c[0]&&(D=0);c.length=D}}}();var G=RegExp("^(active|after|before|blank|checked|default|disabled|drop|empty|enabled|first|first-child|first-letter|first-line|first-of-type|fullscreen|focus|hover|in-range|indeterminate|invalid|last-child|last-of-type|left|link|only-child|only-of-type|optional|out-of-range|placeholder-shown|read-only|read-write|required|right|root|scope|user-error|valid|visited)$"),
H={};H["\x3e"]=H["+"]=H["~"]=H;p=function(a,e,f){function g(q,p){function t(c,f,g){var k,m,q,p,r,D=b;k="";if(c<f)if(r=a[c],"*"===r)++c,k=r;else if(/^[a-zA-Z]/.test(r)&&(m=n(r.toLowerCase(),[])))"tagName"in m&&(r=m.tagName),++c,k=r;for(p=q=m="";D&&c<f;++c)if(r=a[c],"#"===r.charAt(0))/^#_|__$|[^\w#:\-]/.test(r)?D=d:m+=r+l;else if("."===r)++c<f&&/^[0-9A-Za-z:_\-]+$/.test(r=a[c])&&!/^_|__$/.test(r)?m+="."+r:D=d;else if(c+1<f&&"["===a[c]){++c;var s=a[c++].toLowerCase();r=x.m[k+"::"+s];r!==+r&&(r=x.m["*::"+ H={};H["\x3e"]=H["+"]=H["~"]=H;p=function(a,e,f){function g(q,p){function t(c,f,g){var k,m,q,p,r,s=b;k="";if(c<f)if(r=a[c],"*"===r)++c,k=r;else if(/^[a-zA-Z]/.test(r)&&(m=n(r.toLowerCase(),[])))"tagName"in m&&(r=m.tagName),++c,k=r;for(p=q=m="";s&&c<f;++c)if(r=a[c],"#"===r.charAt(0))/^#_|__$|[^\w#:\-]/.test(r)?s=d:m+=r+l;else if("."===r)++c<f&&/^[0-9A-Za-z:_\-]+$/.test(r=a[c])&&!/^_|__$/.test(r)?m+="."+r:s=d;else if(c+1<f&&"["===a[c]){++c;var D=a[c++].toLowerCase();r=x.m[k+"::"+D];r!==+r&&(r=x.m["*::"+
s]);var z;e.ia?(z=e.ia(k,s),"string"!==typeof z&&(D=d,z=s),D&&r!==+r&&(r=x.d.NONE)):(z=s,r!==+r&&(D=d));var v=s="",A=d;/^[~^$*|]?=$/.test(a[c])&&(s=a[c++],v=a[c++],/^[0-9A-Za-z:_\-]+$/.test(v)?v='"'+v+'"':"]"===v&&(v='""',--c),/^"([^\"\\]|\\.)*"$/.test(v)||(D=d),(A="i"===a[c])&&++c);"]"!==a[c]&&(++c,D=d);switch(r){case x.d.CLASSES:case x.d.LOCAL_NAME:case x.d.NONE:break;case x.d.GLOBAL_NAME:case x.d.ID:case x.d.IDREF:("\x3d"===s||"~\x3d"===s||"$\x3d"===s)&&'""'!=v&&!A?v='"'+v.substring(1,v.length- D]);var z;e.ia?(z=e.ia(k,D),"string"!==typeof z&&(s=d,z=D),s&&r!==+r&&(r=x.d.NONE)):(z=D,r!==+r&&(s=d));var v=D="",A=d;/^[~^$*|]?=$/.test(a[c])&&(D=a[c++],v=a[c++],/^[0-9A-Za-z:_\-]+$/.test(v)?v='"'+v+'"':"]"===v&&(v='""',--c),/^"([^\"\\]|\\.)*"$/.test(v)||(s=d),(A="i"===a[c])&&++c);"]"!==a[c]&&(++c,s=d);switch(r){case x.d.CLASSES:case x.d.LOCAL_NAME:case x.d.NONE:break;case x.d.GLOBAL_NAME:case x.d.ID:case x.d.IDREF:("\x3d"===D||"~\x3d"===D||"$\x3d"===D)&&'""'!=v&&!A?v='"'+v.substring(1,v.length-
1)+l+'"':"|\x3d"===s||""===s||(D=d);break;case x.d.URI:case x.d.URI_FRAGMENT:""!==s&&(D=d);break;default:D=d}D&&(q+="["+z.replace(/[^\w-]/g,"\\$\x26")+s+v+(A?" i]":"]"))}else if(c<f&&":"===a[c])if(r=a[++c],G.test(r))p+=":"+r;else break;else break;c!==f&&(D=d);D&&(c=(k+m).replace(/[^ .*#\w-]/g,"\\$\x26")+q+p+g)&&u.push(c);return D}" "===a[q]&&++q;p-1!==q&&" "===a[p]&&--p;for(var u=[],r=q,D=b,s=q;D&&s<p;++s){var z=a[s];if(H[z]===H||" "===z)t(r,s,z)?r=s+1:D=d}t(r,p,"")||(D=d);return D?(u.length&&(r= 1)+l+'"':"|\x3d"===D||""===D||(s=d);break;case x.d.URI:case x.d.URI_FRAGMENT:""!==D&&(s=d);break;default:s=d}s&&(q+="["+z.replace(/[^\w-]/g,"\\$\x26")+D+v+(A?" i]":"]"))}else if(c<f&&":"===a[c])if(r=a[++c],G.test(r))p+=":"+r;else break;else break;c!==f&&(s=d);s&&(c=(k+m).replace(/[^ .*#\w-]/g,"\\$\x26")+q+p+g)&&u.push(c);return s}" "===a[q]&&++q;p-1!==q&&" "===a[p]&&--p;for(var u=[],r=q,s=b,D=q;s&&D<p;++D){var z=a[D];if(H[z]===H||" "===z)t(r,D,z)?r=D+1:s=d}t(r,p,"")||(s=d);return s?(u.length&&(r=
u.join(""),k!==c&&(r="."+k+" "+r),m.push(r)),b):!f||f(a.slice(q,p))}var k=e.na,l=e.L,n=e.Aa,m=[],q=0,p,t=0,u;for(p=0;p<a.length;++p)if(u=a[p],"("==u||"["==u?(++t,b):")"==u||"]"==u?(t&&--t,b):!(" "==a[p]&&(t||H[a[p-1]]===H||H[a[p+1]]===H)))a[q++]=a[p];a.length=q;q=a.length;for(p=t=0;p<q;++p)if(","===a[p]){if(!g(t,p))return c;t=p+1}return!g(t,q)?c:m};(function(){var a=/^\w/,b=RegExp("^(?:(?:(?:(?:only|not) )?(?:all|aural|braille|embossed|handheld|print|projection|screen|speech|tty|tv)|\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))(?: and ?\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))*)(?: , (?:(?:(?:(?:only|not) )?(?:all|aural|braille|embossed|handheld|print|projection|screen|speech|tty|tv)|\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))(?: and ?\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))*))*$", u.join(""),k!==c&&(r="."+k+" "+r),m.push(r)),b):!f||f(a.slice(q,p))}var k=e.na,l=e.L,n=e.Aa,m=[],q=0,p,t=0,u;for(p=0;p<a.length;++p)if(u=a[p],"("==u||"["==u?(++t,b):")"==u||"]"==u?(t&&--t,b):!(" "==a[p]&&(t||H[a[p-1]]===H||H[a[p+1]]===H)))a[q++]=a[p];a.length=q;q=a.length;for(p=t=0;p<q;++p)if(","===a[p]){if(!g(t,p))return c;t=p+1}return!g(t,q)?c:m};(function(){var a=/^\w/,b=RegExp("^(?:(?:(?:(?:only|not) )?(?:all|aural|braille|embossed|handheld|print|projection|screen|speech|tty|tv)|\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))(?: and ?\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))*)(?: , (?:(?:(?:(?:only|not) )?(?:all|aural|braille|embossed|handheld|print|projection|screen|speech|tty|tv)|\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))(?: and ?\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))*))*$",
"i");r=function(c){c=c.slice();for(var d=c.length,e=0,f=0;f<d;++f){var g=c[f];" "!=g&&(c[e++]=g)}c.length=e;c=c.join(" ");return!c.length?"":!b.test(c)?"not all":a.test(c)?c:"not all , "+c}})();(function(){function e(a){var b=/^\s*[']([^']*)[']\s*$/,d=/^\s*url\s*[(]["]([^"]*)["][)]\s*$/,f=/^\s*url\s*[(][']([^']*)['][)]\s*$/,g=/^\s*url\s*[(]([^)]*)[)]\s*$/,k;return(k=/^\s*["]([^"]*)["]\s*$/.exec(a))||(k=b.exec(a))||(k=d.exec(a))||(k=f.exec(a))||(k=g.exec(a))?k[1]:c}function f(g,l,n,x,u,G,D){function s(){C= "i");r=function(c){c=c.slice();for(var d=c.length,e=0,f=0;f<d;++f){var g=c[f];" "!=g&&(c[e++]=g)}c.length=e;c=c.join(" ");return!c.length?"":!b.test(c)?"not all":a.test(c)?c:"not all , "+c}})();(function(){function e(a){var b=/^\s*[']([^']*)[']\s*$/,d=/^\s*url\s*[(]["]([^"]*)["][)]\s*$/,f=/^\s*url\s*[(][']([^']*)['][)]\s*$/,g=/^\s*url\s*[(]([^)]*)[)]\s*$/,k;return(k=/^\s*["]([^"]*)["]\s*$/.exec(a))||(k=b.exec(a))||(k=d.exec(a))||(k=f.exec(a))||(k=g.exec(a))?k[1]:c}function f(g,l,n,x,u,G,s){function D(){C=
H.length&&H[H.length-1]===c}var A=a,F=D||[0],H=[],C=d;q(l,{startStylesheet:function(){A=[]},endStylesheet:function(){},startAtrule:function(a,b){if(C)a=c;else if("@media"===a)A.push("@media"," ",r(b));else if("@keyframes"===a||"@-webkit-keyframes"===a){var d=b[0];1===b.length&&!/__$|[^\w\-]/.test(d)?(A.push(a," ",d+n.L),a="@keyframes"):a=c}else if("@import"===a&&0<b.length)if(a=c,"function"===typeof G){var l=r(b.slice(1));if("not all"!==l){++F[0];var m=[];A.push(m);var q=t(k(g,e(b[0])),function(a){var b= H.length&&H[H.length-1]===c}var A=a,F=s||[0],H=[],C=d;q(l,{startStylesheet:function(){A=[]},endStylesheet:function(){},startAtrule:function(a,b){if(C)a=c;else if("@media"===a)A.push("@media"," ",r(b));else if("@keyframes"===a||"@-webkit-keyframes"===a){var d=b[0];1===b.length&&!/__$|[^\w\-]/.test(d)?(A.push(a," ",d+n.L),a="@keyframes"):a=c}else if("@import"===a&&0<b.length)if(a=c,"function"===typeof G){var l=r(b.slice(1));if("not all"!==l){++F[0];var m=[];A.push(m);var q=t(k(g,e(b[0])),function(a){var b=
f(q,a.qa,n,x,u,G,F);--F[0];a=l?{toString:function(){return"@media "+l+" {"+b.result+"}"}}:b.result;m[0]=a;G(a,!!F[0])},u)}}else window.console&&window.console.log("@import "+b.join(" ")+" elided");C=!a;H.push(a)},endAtrule:function(){H.pop();C||A.push(";");s()},startBlock:function(){C||A.push("{")},endBlock:function(){C||(A.push("}"),C=b)},startRuleset:function(d){if(!C){var e=a;"@keyframes"===H[H.length-1]?(e=d.join(" ").match(/^ *(?:from|to|\d+(?:\.\d+)?%) *(?:, *(?:from|to|\d+(?:\.\d+)?%) *)*$/i), f(q,a.qa,n,x,u,G,F);--F[0];a=l?{toString:function(){return"@media "+l+" {"+b.result+"}"}}:b.result;m[0]=a;G(a,!!F[0])},u)}}else window.console&&window.console.log("@import "+b.join(" ")+" elided");C=!a;H.push(a)},endAtrule:function(){H.pop();C||A.push(";");D()},startBlock:function(){C||A.push("{")},endBlock:function(){C||(A.push("}"),C=b)},startRuleset:function(d){if(!C){var e=a;"@keyframes"===H[H.length-1]?(e=d.join(" ").match(/^ *(?:from|to|\d+(?:\.\d+)?%) *(?:, *(?:from|to|\d+(?:\.\d+)?%) *)*$/i),
C=!e,e&&(e=e[0].replace(/ +/g,""))):(d=p(d,n),!d||!d.length?C=b:e=d.join(", "));C||A.push(e,"{")}H.push(c)},endRuleset:function(){H.pop();C||A.push("}");s()},declaration:function(a,c){if(!C){var e=d,f=c.length;2<=f&&"!"===c[f-2]&&"important"===c[f-1].toLowerCase()&&(e=b,c.length-=2);m(a,c,x,g,n.L);c.length&&A.push(a,":",c.join(" "),e?" !important;":";")}}});return{result:{toString:function(){return A.join("")}},va:!!F[0]}}s=function(b,c,d,e){return f(b,c,d,e,a,a).result.toString()}})()})();"undefined"!== C=!e,e&&(e=e[0].replace(/ +/g,""))):(d=p(d,n),!d||!d.length?C=b:e=d.join(", "));C||A.push(e,"{")}H.push(c)},endRuleset:function(){H.pop();C||A.push("}");D()},declaration:function(a,c){if(!C){var e=d,f=c.length;2<=f&&"!"===c[f-2]&&"important"===c[f-1].toLowerCase()&&(e=b,c.length-=2);m(a,c,x,g,n.L);c.length&&A.push(a,":",c.join(" "),e?" !important;":";")}}});return{result:{toString:function(){return A.join("")}},va:!!F[0]}}s=function(b,c,d,e){return f(b,c,d,e,a,a).result.toString()}})()})();"undefined"!==
typeof window&&(window.sanitizeCssProperty=m,window.sanitizeCssSelectorList=p,window.sanitizeStylesheet=s,window.sanitizeMediaQuery=r);var q,t;(function(){function a(b,d,e,f,g){for(var k=d++;d<e&&"{"!==b[d]&&";"!==b[d];)++d;if(d<e&&(g||";"===b[d])){g=k+1;var l=d;g<e&&" "===b[g]&&++g;l>g&&" "===b[l-1]&&--l;f.startAtrule&&f.startAtrule(b[k].toLowerCase(),b.slice(g,l));d="{"===b[d]?c(b,d,e,f):d+1;f.endAtrule&&f.endAtrule()}return d}function c(b,f,g,k){++f;for(k.startBlock&&k.startBlock();f<g;){var l= typeof window&&(window.sanitizeCssProperty=m,window.sanitizeCssSelectorList=p,window.sanitizeStylesheet=s,window.sanitizeMediaQuery=r);var q,t;(function(){function a(b,d,e,f,g){for(var k=d++;d<e&&"{"!==b[d]&&";"!==b[d];)++d;if(d<e&&(g||";"===b[d])){g=k+1;var l=d;g<e&&" "===b[g]&&++g;l>g&&" "===b[l-1]&&--l;f.startAtrule&&f.startAtrule(b[k].toLowerCase(),b.slice(g,l));d="{"===b[d]?c(b,d,e,f):d+1;f.endAtrule&&f.endAtrule()}return d}function c(b,f,g,k){++f;for(k.startBlock&&k.startBlock();f<g;){var l=
b[f].charAt(0);if("}"==l){++f;break}f=" "===l||";"===l?f+1:"@"===l?a(b,f,g,k,d):"{"===l?c(b,f,g,k):e(b,f,g,k)}k.endBlock&&k.endBlock();return f}function e(a,c,d,g){var k=c,n=f(a,c,d,b);if(0>n)return n=~n,n===k?n+1:n;var m=a[n];if("{"!==m)return n===k?n+1:n;c=n+1;n>k&&" "===a[n-1]&&--n;for(g.startRuleset&&g.startRuleset(a.slice(k,n));c<d;){m=a[c];if("}"===m){++c;break}c=" "===m?c+1:l(a,c,d,g)}g.endRuleset&&g.endRuleset();return c}function f(a,b,c,d){for(var e,g=[],k=-1;b<c;++b)if(e=a[b].charAt(0), b[f].charAt(0);if("}"==l){++f;break}f=" "===l||";"===l?f+1:"@"===l?a(b,f,g,k,d):"{"===l?c(b,f,g,k):e(b,f,g,k)}k.endBlock&&k.endBlock();return f}function e(a,c,d,g){var k=c,n=f(a,c,d,b);if(0>n)return n=~n,n===k?n+1:n;var m=a[n];if("{"!==m)return n===k?n+1:n;c=n+1;n>k&&" "===a[n-1]&&--n;for(g.startRuleset&&g.startRuleset(a.slice(k,n));c<d;){m=a[c];if("}"===m){++c;break}c=" "===m?c+1:l(a,c,d,g)}g.endRuleset&&g.endRuleset();return c}function f(a,b,c,d){for(var e,g=[],k=-1;b<c;++b)if(e=a[b].charAt(0),
"["===e||"("===e)g[++k]=e;else if("]"===e&&"["===g[k]||")"===e&&"("===g[k])--k;else if("{"===e||"}"===e||";"===e||"@"===e||":"===e&&!d)break;0<=k&&(b=~(b+1));return b}function g(a,b,c){for(;b<c&&";"!==a[b]&&"}"!==a[b];)++b;return b<c&&";"===a[b]?b+1:b}function l(a,b,c,e){var k=a[b++];if(!n.test(k))return g(a,b,c);b<c&&" "===a[b]&&++b;if(b==c||":"!==a[b])return g(a,b,c);++b;b<c&&" "===a[b]&&++b;var m=f(a,b,c,d);if(0>m)m=~m;else{for(var q=[],p=0,t=b;t<m;++t)b=a[t]," "!==b&&(q[p++]=b);if(m<c){do{b=a[m]; "["===e||"("===e)g[++k]=e;else if("]"===e&&"["===g[k]||")"===e&&"("===g[k])--k;else if("{"===e||"}"===e||";"===e||"@"===e||":"===e&&!d)break;0<=k&&(b=~(b+1));return b}function g(a,b,c){for(;b<c&&";"!==a[b]&&"}"!==a[b];)++b;return b<c&&";"===a[b]?b+1:b}function l(a,b,c,e){var k=a[b++];if(!n.test(k))return g(a,b,c);b<c&&" "===a[b]&&++b;if(b==c||":"!==a[b])return g(a,b,c);++b;b<c&&" "===a[b]&&++b;var m=f(a,b,c,d);if(0>m)m=~m;else{for(var q=[],p=0,t=b;t<m;++t)b=a[t]," "!==b&&(q[p++]=b);if(m<c){do{b=a[m];
@ -198,7 +198,7 @@ ru:"\u0420\u0443\u0441\u0441\u043a\u0438\u0439",sr:"\u0421\u0440\u043f\u0441\u04
if(null==window.mxLanguages){window.mxLanguages=[];for(var lang in mxLanguageMap)"en"!=lang&&window.mxLanguages.push(lang)}window.uiTheme=window.uiTheme||function(){var a=urlParams.ui;if(null==a&&"undefined"!==typeof JSON&&isLocalStorage)try{var b=localStorage.getItem(".drawio-config");null!=b&&(a=JSON.parse(b).ui||null)}catch(c){isLocalStorage=!1}return a}();function setCurrentXml(a,b){null!=window.parent&&null!=window.parent.openFile&&window.parent.openFile.setData(a,b)} if(null==window.mxLanguages){window.mxLanguages=[];for(var lang in mxLanguageMap)"en"!=lang&&window.mxLanguages.push(lang)}window.uiTheme=window.uiTheme||function(){var a=urlParams.ui;if(null==a&&"undefined"!==typeof JSON&&isLocalStorage)try{var b=localStorage.getItem(".drawio-config");null!=b&&(a=JSON.parse(b).ui||null)}catch(c){isLocalStorage=!1}return a}();function setCurrentXml(a,b){null!=window.parent&&null!=window.parent.openFile&&window.parent.openFile.setData(a,b)}
(function(){if("undefined"!==typeof JSON&&isLocalStorage)try{var a=localStorage.getItem(".drawio-config"),b=!0;null!=a&&(b=JSON.parse(a).showStartScreen);!1==b&&(urlParams.splash="0")}catch(c){}})();var ex=urlParams["export"];null!=ex&&("http://"!=ex.substring(0,7)&&"https://"!=ex.substring(0,8)&&(ex="http://"+ex),EXPORT_URL=ex); (function(){if("undefined"!==typeof JSON&&isLocalStorage)try{var a=localStorage.getItem(".drawio-config"),b=!0;null!=a&&(b=JSON.parse(a).showStartScreen);!1==b&&(urlParams.splash="0")}catch(c){}})();var ex=urlParams["export"];null!=ex&&("http://"!=ex.substring(0,7)&&"https://"!=ex.substring(0,8)&&(ex="http://"+ex),EXPORT_URL=ex);
if("1"==urlParams.offline||"1"==urlParams.demo||"1"==urlParams.stealth||"1"==urlParams.local)urlParams.analytics="0",urlParams.picker="0",urlParams.gapi="0",urlParams.db="0",urlParams.od="0";if("1"==urlParams.offline||"1"==urlParams.local)urlParams.math="0";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||1E8;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save";window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images"; if("1"==urlParams.offline||"1"==urlParams.demo||"1"==urlParams.stealth||"1"==urlParams.local)urlParams.analytics="0",urlParams.picker="0",urlParams.gapi="0",urlParams.db="0",urlParams.od="0";if("1"==urlParams.offline||"1"==urlParams.local)urlParams.math="0";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||1E8;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save";window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images";
window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"3.6.0.0",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&& window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"3.6.0.1",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&
0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&& 0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&&
0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&& 0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&&
0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")|| 0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")||
@ -1062,16 +1062,16 @@ mxGraphSelectionModel.prototype.addCells=function(a){if(null!=a){var b=null;this
mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}}; mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}};
mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null} mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null}
mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)|| mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)||
this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler)}mxCellEditor.prototype.graph=null; this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};
mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20); function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler);this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null==this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler)}
mxCellEditor.prototype.graph=null;mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20);
mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)}; mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)};
mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&8!=document.documentMode&&(9!=document.documentMode&&10!=document.documentMode)&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")}; mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&8!=document.documentMode&&(9!=document.documentMode&&10!=document.documentMode)&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")};
mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a}; mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a};
mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null== mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&
this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler);var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length|| a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length||"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?
"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&this.autoSize&&!mxEvent.isConsumed(a)&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread), "input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&this.autoSize&&!mxEvent.isConsumed(a)&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread),this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",
this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)}; c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)};mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left= mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left=
Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width= Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=
Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds= Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds=
@ -1089,13 +1089,13 @@ mxConstants.DEFAULT_TEXT_DIRECTION);d==mxConstants.TEXT_DIRECTION_AUTO&&null!=c&
(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}), (this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}),
0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange)&&document.execCommand("selectAll",!1,null)}catch(m){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText}; 0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange)&&document.execCommand("selectAll",!1,null)}catch(m){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText};
mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="", mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="",
this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b))}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)}; this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b));mxEvent.release(this.textarea);this.textarea=null}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)};
mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,k=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]|| mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,k=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]||
0)+mxText.prototype.baseSpacingRight)*c+g,l=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-k-l)),l=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&& 0)+mxText.prototype.baseSpacingRight)*c+g,l=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-k-l)),l=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&&
l==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=k;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width), l==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=k;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width),
f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b== f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b==
mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell}; mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell};
mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null,null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null),this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null))};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector; mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null);null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null);this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null)};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector;
mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape); mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape);
mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon); mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon);
mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape); mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape);
@ -2138,17 +2138,17 @@ EditorUi.prototype.showImageDialog=function(a,b,c,d){d=this.editor.graph.cellEdi
EditorUi.prototype.showBackgroundImageDialog=function(a){a=null!=a?a:mxUtils.bind(this,function(a){this.setBackgroundImage(a)});var b=mxUtils.prompt(mxResources.get("backgroundImage"),"");if(null!=b&&0<b.length){var c=new Image;c.onload=function(){a(new mxImage(b,c.width,c.height))};c.onerror=function(){a(null);mxUtils.alert(mxResources.get("fileNotFound"))};c.src=b}else a(null)}; EditorUi.prototype.showBackgroundImageDialog=function(a){a=null!=a?a:mxUtils.bind(this,function(a){this.setBackgroundImage(a)});var b=mxUtils.prompt(mxResources.get("backgroundImage"),"");if(null!=b&&0<b.length){var c=new Image;c.onload=function(){a(new mxImage(b,c.width,c.height))};c.onerror=function(){a(null);mxUtils.alert(mxResources.get("fileNotFound"))};c.src=b}else a(null)};
EditorUi.prototype.setBackgroundImage=function(a){this.editor.graph.setBackgroundImage(a);this.editor.graph.view.validateBackgroundImage();this.fireEvent(new mxEventObject("backgroundImageChanged"))};EditorUi.prototype.confirm=function(a,b,c){mxUtils.confirm(a)?null!=b&&b():null!=c&&c()}; EditorUi.prototype.setBackgroundImage=function(a){this.editor.graph.setBackgroundImage(a);this.editor.graph.view.validateBackgroundImage();this.fireEvent(new mxEventObject("backgroundImageChanged"))};EditorUi.prototype.confirm=function(a,b,c){mxUtils.confirm(a)?null!=b&&b():null!=c&&c()};
EditorUi.prototype.createOutline=function(a){var b=new mxOutline(this.editor.graph);b.border=20;mxEvent.addListener(window,"resize",function(){b.update()});this.addListener("pageFormatChanged",function(){b.update()});return b}; EditorUi.prototype.createOutline=function(a){var b=new mxOutline(this.editor.graph);b.border=20;mxEvent.addListener(window,"resize",function(){b.update()});this.addListener("pageFormatChanged",function(){b.update()});return b};
EditorUi.prototype.createKeyHandler=function(a){function b(a,b,c){l.push(function(){if(!d.isSelectionEmpty()&&d.isEnabled())if(b=null!=b?b:1,c){d.getModel().beginUpdate();try{for(var e=d.getSelectionCells(),f=0;f<e.length;f++)if(d.getModel().isVertex(e[f])&&d.isCellResizable(e[f])){var g=d.getCellGeometry(e[f]);null!=g&&(g=g.clone(),37==a?g.width=Math.max(0,g.width-b):38==a?g.height=Math.max(0,g.height-b):39==a?g.width+=b:40==a&&(g.height+=b),d.getModel().setGeometry(e[f],g))}}finally{d.getModel().endUpdate()}}else e= EditorUi.prototype.createKeyHandler=function(a){function b(a,b,c){g.push(function(){if(!d.isSelectionEmpty()&&d.isEnabled())if(b=null!=b?b:1,c){d.getModel().beginUpdate();try{for(var e=d.getSelectionCells(),f=0;f<e.length;f++)if(d.getModel().isVertex(e[f])&&d.isCellResizable(e[f])){var g=d.getCellGeometry(e[f]);null!=g&&(g=g.clone(),37==a?g.width=Math.max(0,g.width-b):38==a?g.height=Math.max(0,g.height-b):39==a?g.width+=b:40==a&&(g.height+=b),d.getModel().setGeometry(e[f],g))}}finally{d.getModel().endUpdate()}}else e=
d.getSelectionCell(),f=d.model.getParent(e),g=null,1==d.getSelectionCount()&&(d.model.isVertex(e)&&null!=d.layoutManager&&!d.isCellLocked(e))&&(g=d.layoutManager.getLayout(f)),null!=g&&g.constructor==mxStackLayout?(g=f.getIndex(e),37==a||38==a?d.model.add(f,e,Math.max(0,g-1)):(39==a||40==a)&&d.model.add(f,e,Math.min(d.model.getChildCount(f),g+1))):(f=e=0,37==a?e=-b:38==a?f=-b:39==a?e=b:40==a&&(f=b),d.moveCells(d.getMovableCells(d.getSelectionCells()),e,f))});null!=n&&window.clearTimeout(n);n=window.setTimeout(function(){if(0< d.getSelectionCell(),f=d.model.getParent(e),g=null,1==d.getSelectionCount()&&(d.model.isVertex(e)&&null!=d.layoutManager&&!d.isCellLocked(e))&&(g=d.layoutManager.getLayout(f)),null!=g&&g.constructor==mxStackLayout?(g=f.getIndex(e),37==a||38==a?d.model.add(f,e,Math.max(0,g-1)):(39==a||40==a)&&d.model.add(f,e,Math.min(d.model.getChildCount(f),g+1))):(f=e=0,37==a?e=-b:38==a?f=-b:39==a?e=b:40==a&&(f=b),d.moveCells(d.getMovableCells(d.getSelectionCells()),e,f))});null!=k&&window.clearTimeout(k);k=window.setTimeout(function(){if(0<
l.length){d.getModel().beginUpdate();try{for(var a=0;a<l.length;a++)l[a]();l=[]}finally{d.getModel().endUpdate()}d.scrollCellToVisible(d.getSelectionCell())}},200)}var c=this,d=this.editor.graph,e=new mxKeyHandler(d),f=e.isEventIgnored;e.isEventIgnored=function(a){return(!this.isControlDown(a)||mxEvent.isShiftDown(a)||90!=a.keyCode&&89!=a.keyCode&&188!=a.keyCode&&190!=a.keyCode)&&(66!=a.keyCode&&73!=a.keyCode&&85!=a.keyCode||!this.isControlDown(a)||this.graph.cellEditor.isContentEditing()&&!mxClient.IS_FF&& g.length){d.getModel().beginUpdate();try{for(var a=0;a<g.length;a++)g[a]();g=[]}finally{d.getModel().endUpdate()}d.scrollCellToVisible(d.getSelectionCell())}},200)}var c=this,d=this.editor.graph,e=new mxKeyHandler(d),f=e.isEventIgnored;e.isEventIgnored=function(a){return(!this.isControlDown(a)||mxEvent.isShiftDown(a)||90!=a.keyCode&&89!=a.keyCode&&188!=a.keyCode&&190!=a.keyCode)&&(66!=a.keyCode&&73!=a.keyCode&&85!=a.keyCode||!this.isControlDown(a)||this.graph.cellEditor.isContentEditing()&&!mxClient.IS_FF&&
!mxClient.IS_SF)&&f.apply(this,arguments)};e.isEnabledForEvent=function(a){return!mxEvent.isConsumed(a)&&this.isGraphEvent(a)&&this.isEnabled()};e.isControlDown=function(a){return mxEvent.isControlDown(a)||mxClient.IS_MAC&&a.metaKey};var g={37:mxConstants.DIRECTION_WEST,38:mxConstants.DIRECTION_NORTH,39:mxConstants.DIRECTION_EAST,40:mxConstants.DIRECTION_SOUTH},k=e.getFunction;mxKeyHandler.prototype.getFunction=function(a){if(null!=g[a.keyCode]){var e=d.getSelectionCell();if(d.model.isVertex(e))return mxEvent.isShiftDown(a)&& !mxClient.IS_SF)&&f.apply(this,arguments)};e.isEnabledForEvent=function(a){return!mxEvent.isConsumed(a)&&this.isGraphEvent(a)&&this.isEnabled()};e.isControlDown=function(a){return mxEvent.isControlDown(a)||mxClient.IS_MAC&&a.metaKey};var g=[],k=null,l={37:mxConstants.DIRECTION_WEST,38:mxConstants.DIRECTION_NORTH,39:mxConstants.DIRECTION_EAST,40:mxConstants.DIRECTION_SOUTH},n=e.getFunction;mxKeyHandler.prototype.getFunction=function(a){if(null!=l[a.keyCode]&&!d.isSelectionEmpty())if(mxEvent.isShiftDown(a)&&
mxEvent.isAltDown(a)?function(){var b=d.connectVertex(e,g[a.keyCode],d.defaultEdgeLength,a,!0);null!=b&&0<b.length&&(1==b.length&&d.model.isEdge(b[0])?d.setSelectionCell(d.model.getTerminal(b[0],!1)):d.setSelectionCell(b[b.length-1]),null!=c.hoverIcons&&c.hoverIcons.update(d.view.getState(d.getSelectionCell())))}:this.isControlDown(a)?function(){b(a.keyCode,mxEvent.isShiftDown(a)?d.gridSize:null,!0)}:function(){b(a.keyCode,mxEvent.isShiftDown(a)?d.gridSize:null)}}return k.apply(this,arguments)};var l= mxEvent.isAltDown(a)){if(d.model.isVertex(d.getSelectionCell()))return function(){var b=d.connectVertex(d.getSelectionCell(),l[a.keyCode],d.defaultEdgeLength,a,!0);null!=b&&0<b.length&&(1==b.length&&d.model.isEdge(b[0])?d.setSelectionCell(d.model.getTerminal(b[0],!1)):d.setSelectionCell(b[b.length-1]),null!=c.hoverIcons&&c.hoverIcons.update(d.view.getState(d.getSelectionCell())))}}else return this.isControlDown(a)?function(){b(a.keyCode,mxEvent.isShiftDown(a)?d.gridSize:null,!0)}:function(){b(a.keyCode,
[],n=null;e.bindAction=mxUtils.bind(this,function(a,b,c,d){var f=this.actions.get(c);null!=f&&(c=function(){f.isEnabled()&&f.funct()},b?d?e.bindControlShiftKey(a,c):e.bindControlKey(a,c):d?e.bindShiftKey(a,c):e.bindKey(a,c))});var m=e.escape;e.escape=function(a){m.apply(this,arguments)};e.enter=function(){};e.bindControlShiftKey(36,function(){d.exitGroup()});e.bindControlShiftKey(35,function(){d.enterGroup()});e.bindKey(36,function(){d.home()});e.bindKey(35,function(){d.refresh()});e.bindAction(107, mxEvent.isShiftDown(a)?d.gridSize:null)};return n.apply(this,arguments)};e.bindAction=mxUtils.bind(this,function(a,b,c,d){var f=this.actions.get(c);null!=f&&(c=function(){f.isEnabled()&&f.funct()},b?d?e.bindControlShiftKey(a,c):e.bindControlKey(a,c):d?e.bindShiftKey(a,c):e.bindKey(a,c))});var m=e.escape;e.escape=function(a){m.apply(this,arguments)};e.enter=function(){};e.bindControlShiftKey(36,function(){d.exitGroup()});e.bindControlShiftKey(35,function(){d.enterGroup()});e.bindKey(36,function(){d.home()});
!0,"zoomIn");e.bindAction(109,!0,"zoomOut");e.bindAction(80,!0,"print");e.bindAction(79,!0,"outline",!0);e.bindAction(112,!1,"about");this.editor.chromeless||(e.bindControlKey(36,function(){d.isEnabled()&&d.foldCells(!0)}),e.bindControlKey(35,function(){d.isEnabled()&&d.foldCells(!1)}),e.bindControlKey(13,function(){d.isEnabled()&&d.setSelectionCells(d.duplicateCells(d.getSelectionCells(),!1))}),e.bindShiftKey(9,function(){d.isEnabled()&&d.selectPreviousCell()}),e.bindControlKey(9,function(){d.isEnabled()&& e.bindKey(35,function(){d.refresh()});e.bindAction(107,!0,"zoomIn");e.bindAction(109,!0,"zoomOut");e.bindAction(80,!0,"print");e.bindAction(79,!0,"outline",!0);e.bindAction(112,!1,"about");this.editor.chromeless||(e.bindControlKey(36,function(){d.isEnabled()&&d.foldCells(!0)}),e.bindControlKey(35,function(){d.isEnabled()&&d.foldCells(!1)}),e.bindControlKey(13,function(){d.isEnabled()&&d.setSelectionCells(d.duplicateCells(d.getSelectionCells(),!1))}),e.bindShiftKey(9,function(){d.isEnabled()&&d.selectPreviousCell()}),
d.selectParentCell()}),e.bindControlShiftKey(9,function(){d.isEnabled()&&d.selectChildCell()}),e.bindAction(8,!1,"delete"),e.bindAction(8,!0,"deleteAll"),e.bindAction(46,!1,"delete"),e.bindAction(46,!0,"deleteAll"),e.bindAction(72,!0,"resetView"),e.bindAction(72,!0,"fitWindow",!0),e.bindAction(74,!0,"fitPage"),e.bindAction(74,!0,"fitTwoPages",!0),e.bindAction(48,!0,"customZoom"),e.bindAction(82,!0,"turn"),e.bindAction(82,!0,"clearDefaultStyle",!0),e.bindAction(83,!0,"save"),e.bindAction(83,!0,"saveAs", e.bindControlKey(9,function(){d.isEnabled()&&d.selectParentCell()}),e.bindControlShiftKey(9,function(){d.isEnabled()&&d.selectChildCell()}),e.bindAction(8,!1,"delete"),e.bindAction(8,!0,"deleteAll"),e.bindAction(46,!1,"delete"),e.bindAction(46,!0,"deleteAll"),e.bindAction(72,!0,"resetView"),e.bindAction(72,!0,"fitWindow",!0),e.bindAction(74,!0,"fitPage"),e.bindAction(74,!0,"fitTwoPages",!0),e.bindAction(48,!0,"customZoom"),e.bindAction(82,!0,"turn"),e.bindAction(82,!0,"clearDefaultStyle",!0),e.bindAction(83,
!0),e.bindAction(65,!0,"selectAll"),e.bindAction(65,!0,"selectNone",!0),e.bindAction(73,!0,"selectVertices",!0),e.bindAction(69,!0,"selectEdges",!0),e.bindAction(69,!0,"editStyle"),e.bindAction(66,!0,"bold"),e.bindAction(66,!0,"toBack",!0),e.bindAction(70,!0,"toFront",!0),e.bindAction(68,!0,"duplicate"),e.bindAction(68,!0,"setAsDefaultStyle",!0),e.bindAction(90,!0,"undo"),e.bindAction(89,!0,"autosize",!0),e.bindAction(88,!0,"cut"),e.bindAction(67,!0,"copy"),e.bindAction(81,!0,"connectionArrows"), !0,"save"),e.bindAction(83,!0,"saveAs",!0),e.bindAction(65,!0,"selectAll"),e.bindAction(65,!0,"selectNone",!0),e.bindAction(73,!0,"selectVertices",!0),e.bindAction(69,!0,"selectEdges",!0),e.bindAction(69,!0,"editStyle"),e.bindAction(66,!0,"bold"),e.bindAction(66,!0,"toBack",!0),e.bindAction(70,!0,"toFront",!0),e.bindAction(68,!0,"duplicate"),e.bindAction(68,!0,"setAsDefaultStyle",!0),e.bindAction(90,!0,"undo"),e.bindAction(89,!0,"autosize",!0),e.bindAction(88,!0,"cut"),e.bindAction(67,!0,"copy"),
e.bindAction(81,!0,"connectionPoints",!0),e.bindAction(86,!0,"paste"),e.bindAction(71,!0,"group"),e.bindAction(77,!0,"editData"),e.bindAction(71,!0,"grid",!0),e.bindAction(73,!0,"italic"),e.bindAction(76,!0,"lockUnlock"),e.bindAction(76,!0,"layers",!0),e.bindAction(80,!0,"formatPanel",!0),e.bindAction(85,!0,"underline"),e.bindAction(85,!0,"ungroup",!0),e.bindAction(190,!0,"superscript"),e.bindAction(188,!0,"subscript"),e.bindKey(13,function(){d.isEnabled()&&d.startEditingAtCell()}),e.bindKey(113, e.bindAction(81,!0,"connectionArrows"),e.bindAction(81,!0,"connectionPoints",!0),e.bindAction(86,!0,"paste"),e.bindAction(71,!0,"group"),e.bindAction(77,!0,"editData"),e.bindAction(71,!0,"grid",!0),e.bindAction(73,!0,"italic"),e.bindAction(76,!0,"lockUnlock"),e.bindAction(76,!0,"layers",!0),e.bindAction(80,!0,"formatPanel",!0),e.bindAction(85,!0,"underline"),e.bindAction(85,!0,"ungroup",!0),e.bindAction(190,!0,"superscript"),e.bindAction(188,!0,"subscript"),e.bindKey(13,function(){d.isEnabled()&&
function(){d.isEnabled()&&d.startEditingAtCell()}));mxClient.IS_WIN?e.bindAction(89,!0,"redo"):e.bindAction(90,!0,"redo",!0);return e}; d.startEditingAtCell()}),e.bindKey(113,function(){d.isEnabled()&&d.startEditingAtCell()}));mxClient.IS_WIN?e.bindAction(89,!0,"redo"):e.bindAction(90,!0,"redo",!0);return e};
EditorUi.prototype.destroy=function(){null!=this.editor&&(this.editor.destroy(),this.editor=null);null!=this.menubar&&(this.menubar.destroy(),this.menubar=null);null!=this.toolbar&&(this.toolbar.destroy(),this.toolbar=null);null!=this.sidebar&&(this.sidebar.destroy(),this.sidebar=null);null!=this.keyHandler&&(this.keyHandler.destroy(),this.keyHandler=null);null!=this.keydownHandler&&(mxEvent.removeListener(document,"keydown",this.keydownHandler),this.keydownHandler=null);null!=this.keyupHandler&& EditorUi.prototype.destroy=function(){null!=this.editor&&(this.editor.destroy(),this.editor=null);null!=this.menubar&&(this.menubar.destroy(),this.menubar=null);null!=this.toolbar&&(this.toolbar.destroy(),this.toolbar=null);null!=this.sidebar&&(this.sidebar.destroy(),this.sidebar=null);null!=this.keyHandler&&(this.keyHandler.destroy(),this.keyHandler=null);null!=this.keydownHandler&&(mxEvent.removeListener(document,"keydown",this.keydownHandler),this.keydownHandler=null);null!=this.keyupHandler&&
(mxEvent.removeListener(document,"keyup",this.keyupHandler),this.keyupHandler=null);null!=this.resizeHandler&&(mxEvent.removeListener(window,"resize",this.resizeHandler),this.resizeHandler=null);null!=this.gestureHandler&&(mxEvent.removeGestureListeners(document,this.gestureHandler),this.gestureHandler=null);null!=this.orientationChangeHandler&&(mxEvent.removeListener(window,"orientationchange",this.orientationChangeHandler),this.orientationChangeHandler=null);null!=this.scrollHandler&&(mxEvent.removeListener(window, (mxEvent.removeListener(document,"keyup",this.keyupHandler),this.keyupHandler=null);null!=this.resizeHandler&&(mxEvent.removeListener(window,"resize",this.resizeHandler),this.resizeHandler=null);null!=this.gestureHandler&&(mxEvent.removeGestureListeners(document,this.gestureHandler),this.gestureHandler=null);null!=this.orientationChangeHandler&&(mxEvent.removeListener(window,"orientationchange",this.orientationChangeHandler),this.orientationChangeHandler=null);null!=this.scrollHandler&&(mxEvent.removeListener(window,
"scroll",this.scrollHandler),this.scrollHandler=null);if(null!=this.destroyFunctions){for(var a=0;a<this.destroyFunctions.length;a++)this.destroyFunctions[a]();this.destroyFunctions=null}for(var b=[this.menubarContainer,this.toolbarContainer,this.sidebarContainer,this.formatContainer,this.diagramContainer,this.footerContainer,this.chromelessToolbar,this.hsplit,this.sidebarFooterContainer,this.layersDialog],a=0;a<b.length;a++)null!=b[a]&&null!=b[a].parentNode&&b[a].parentNode.removeChild(b[a])};"undefined"!==typeof html4&&(html4.ATTRIBS["a::target"]=0);mxConstants.SHADOW_OPACITY=0.25;mxConstants.SHADOWCOLOR="#000000";mxConstants.VML_SHADOWCOLOR="#d0d0d0";mxGraph.prototype.pageBreakColor="#c0c0c0";mxGraph.prototype.pageScale=1;(function(){try{if(null!=navigator&&null!=navigator.language){var a=navigator.language.toLowerCase();mxGraph.prototype.pageFormat="en-us"===a||"en-ca"===a||"es-mx"===a?mxConstants.PAGE_FORMAT_LETTER_PORTRAIT:mxConstants.PAGE_FORMAT_A4_PORTRAIT}}catch(b){}})(); "scroll",this.scrollHandler),this.scrollHandler=null);if(null!=this.destroyFunctions){for(var a=0;a<this.destroyFunctions.length;a++)this.destroyFunctions[a]();this.destroyFunctions=null}for(var b=[this.menubarContainer,this.toolbarContainer,this.sidebarContainer,this.formatContainer,this.diagramContainer,this.footerContainer,this.chromelessToolbar,this.hsplit,this.sidebarFooterContainer,this.layersDialog],a=0;a<b.length;a++)null!=b[a]&&null!=b[a].parentNode&&b[a].parentNode.removeChild(b[a])};"undefined"!==typeof html4&&(html4.ATTRIBS["a::target"]=0);mxConstants.SHADOW_OPACITY=0.25;mxConstants.SHADOWCOLOR="#000000";mxConstants.VML_SHADOWCOLOR="#d0d0d0";mxGraph.prototype.pageBreakColor="#c0c0c0";mxGraph.prototype.pageScale=1;(function(){try{if(null!=navigator&&null!=navigator.language){var a=navigator.language.toLowerCase();mxGraph.prototype.pageFormat="en-us"===a||"en-ca"===a||"es-mx"===a?mxConstants.PAGE_FORMAT_LETTER_PORTRAIT:mxConstants.PAGE_FORMAT_A4_PORTRAIT}}catch(b){}})();
@ -2689,21 +2689,21 @@ e.action?(b=1==e.autosave,null!=e.modified&&null==urlParams.modified&&(urlParams
f),this.addListener("mathEnabledChanged",f),this.addListener("gridEnabledChanged",f),this.addListener("guidesEnabledChanged",f),this.addListener("pageViewChanged",f));("1"==urlParams.returnbounds||"json"==urlParams.proto)&&d.postMessage(JSON.stringify(this.createLoadMessage("load")),"*")}));var d=window.opener||window.parent,c="json"==urlParams.proto?JSON.stringify({event:"init"}):urlParams.ready||"ready";d.postMessage(c,"*")};EditorUi.prototype.addEmbedButtons=function(){if(null!=this.menubar){var a= f),this.addListener("mathEnabledChanged",f),this.addListener("gridEnabledChanged",f),this.addListener("guidesEnabledChanged",f),this.addListener("pageViewChanged",f));("1"==urlParams.returnbounds||"json"==urlParams.proto)&&d.postMessage(JSON.stringify(this.createLoadMessage("load")),"*")}));var d=window.opener||window.parent,c="json"==urlParams.proto?JSON.stringify({event:"init"}):urlParams.ready||"ready";d.postMessage(c,"*")};EditorUi.prototype.addEmbedButtons=function(){if(null!=this.menubar){var a=
document.createElement("div");a.style.display="inline-block";a.style.position="absolute";a.style.paddingTop="atlas"==uiTheme?"2px":"3px";a.style.paddingLeft="8px";a.style.paddingBottom="2px";var b=document.createElement("button");mxUtils.write(b,mxResources.get("save"));b.className="geBigButton";b.style.fontSize="12px";b.style.padding="4px 6px 4px 6px";b.style.borderRadius="3px";mxEvent.addListener(b,"click",mxUtils.bind(this,function(){this.actions.get("save").funct()}));a.appendChild(b);"1"==urlParams.saveAndExit&& document.createElement("div");a.style.display="inline-block";a.style.position="absolute";a.style.paddingTop="atlas"==uiTheme?"2px":"3px";a.style.paddingLeft="8px";a.style.paddingBottom="2px";var b=document.createElement("button");mxUtils.write(b,mxResources.get("save"));b.className="geBigButton";b.style.fontSize="12px";b.style.padding="4px 6px 4px 6px";b.style.borderRadius="3px";mxEvent.addListener(b,"click",mxUtils.bind(this,function(){this.actions.get("save").funct()}));a.appendChild(b);"1"==urlParams.saveAndExit&&
(b=document.createElement("a"),mxUtils.write(b,mxResources.get("saveAndExit")),b.style.fontSize="12px",b.style.marginLeft="6px",b.style.padding="4px",b.style.cursor="pointer",mxEvent.addListener(b,"click",mxUtils.bind(this,function(){this.actions.get("saveAndExit").funct()})),a.appendChild(b));b=document.createElement("a");mxUtils.write(b,mxResources.get("exit"));b.style.fontSize="12px";b.style.marginLeft="6px";b.style.marginRight="20px";b.style.padding="4px";b.style.cursor="pointer";mxEvent.addListener(b, (b=document.createElement("a"),mxUtils.write(b,mxResources.get("saveAndExit")),b.style.fontSize="12px",b.style.marginLeft="6px",b.style.padding="4px",b.style.cursor="pointer",mxEvent.addListener(b,"click",mxUtils.bind(this,function(){this.actions.get("saveAndExit").funct()})),a.appendChild(b));b=document.createElement("a");mxUtils.write(b,mxResources.get("exit"));b.style.fontSize="12px";b.style.marginLeft="6px";b.style.marginRight="20px";b.style.padding="4px";b.style.cursor="pointer";mxEvent.addListener(b,
"click",mxUtils.bind(this,function(){this.actions.get("exit").funct()}));a.appendChild(b);this.toolbar.container.appendChild(a);this.toolbar.staticElements.push(a);a.style.right="42px"}};EditorUi.prototype.getSearch=function(a){var b="";if("1"!=urlParams.offline&&"1"!=urlParams.demo&&null!=a&&0<window.location.search.length){var c="?",d;for(d in urlParams)0>mxUtils.indexOf(a,d)&&null!=urlParams[d]&&(b+=c+d+"\x3d"+urlParams[d],c="\x26")}else b=window.location.search;return b};EditorUi.prototype.getUrl= "click",mxUtils.bind(this,function(){this.actions.get("exit").funct()}));a.appendChild(b);this.toolbar.container.appendChild(a);this.toolbar.staticElements.push(a);a.style.right="atlas"!=uiTheme?"52px":"42px"}};EditorUi.prototype.getSearch=function(a){var b="";if("1"!=urlParams.offline&&"1"!=urlParams.demo&&null!=a&&0<window.location.search.length){var c="?",d;for(d in urlParams)0>mxUtils.indexOf(a,d)&&null!=urlParams[d]&&(b+=c+d+"\x3d"+urlParams[d],c="\x26")}else b=window.location.search;return b};
function(a){a=null!=a?a:window.location.pathname;var b=0<a.indexOf("?")?1:0;if("1"==urlParams.offline)a+=window.location.search;else{var c="tmp libs clibs state fileId code share notitle url embed client create title splash".split(" "),d;for(d in urlParams)0>mxUtils.indexOf(c,d)&&(a=0==b?a+"?":a+"\x26",null!=urlParams[d]&&(a+=d+"\x3d"+urlParams[d],b++))}return a};var n=EditorUi.prototype.createOutline;EditorUi.prototype.createOutline=function(a){var b=n.apply(this,arguments),c=this.editor.graph,d= EditorUi.prototype.getUrl=function(a){a=null!=a?a:window.location.pathname;var b=0<a.indexOf("?")?1:0;if("1"==urlParams.offline)a+=window.location.search;else{var c="tmp libs clibs state fileId code share notitle url embed client create title splash".split(" "),d;for(d in urlParams)0>mxUtils.indexOf(c,d)&&(a=0==b?a+"?":a+"\x26",null!=urlParams[d]&&(a+=d+"\x3d"+urlParams[d],b++))}return a};var n=EditorUi.prototype.createOutline;EditorUi.prototype.createOutline=function(a){var b=n.apply(this,arguments),
b.getSourceGraphBounds;b.getSourceGraphBounds=function(){if(mxUtils.hasScrollbars(c.container)&&c.pageVisible&&null!=this.source.minimumGraphSize){var a=this.source.getPagePadding(),b=this.source.view.scale;return new mxRectangle(0,0,Math.ceil(this.source.minimumGraphSize.width-2*a.x/b),Math.ceil(this.source.minimumGraphSize.height-2*a.y/b))}return d.apply(this,arguments)};var e=b.getSourceContainerSize;b.getSourceContainerSize=function(){if(mxUtils.hasScrollbars(c.container)&&null!=this.source.minimumGraphSize){var a= c=this.editor.graph,d=b.getSourceGraphBounds;b.getSourceGraphBounds=function(){if(mxUtils.hasScrollbars(c.container)&&c.pageVisible&&null!=this.source.minimumGraphSize){var a=this.source.getPagePadding(),b=this.source.view.scale;return new mxRectangle(0,0,Math.ceil(this.source.minimumGraphSize.width-2*a.x/b),Math.ceil(this.source.minimumGraphSize.height-2*a.y/b))}return d.apply(this,arguments)};var e=b.getSourceContainerSize;b.getSourceContainerSize=function(){if(mxUtils.hasScrollbars(c.container)&&
this.source.getPagePadding(),b=this.source.view.scale;return new mxRectangle(0,0,Math.ceil(this.source.minimumGraphSize.width*b-2*a.x),Math.ceil(this.source.minimumGraphSize.height*b-2*a.y))}return e.apply(this,arguments)};b.getOutlineOffset=function(a){if(mxUtils.hasScrollbars(c.container)&&null!=this.source.minimumGraphSize){var d=this.source.getPagePadding(),e=Math.max(0,(b.outline.container.clientWidth/a-(this.source.minimumGraphSize.width-2*d.x))/2),f=Math.max(0,(b.outline.container.clientHeight/ null!=this.source.minimumGraphSize){var a=this.source.getPagePadding(),b=this.source.view.scale;return new mxRectangle(0,0,Math.ceil(this.source.minimumGraphSize.width*b-2*a.x),Math.ceil(this.source.minimumGraphSize.height*b-2*a.y))}return e.apply(this,arguments)};b.getOutlineOffset=function(a){if(mxUtils.hasScrollbars(c.container)&&null!=this.source.minimumGraphSize){var d=this.source.getPagePadding(),e=Math.max(0,(b.outline.container.clientWidth/a-(this.source.minimumGraphSize.width-2*d.x))/2),
a-(this.source.minimumGraphSize.height-2*d.y))/2);return new mxPoint(Math.round(e-d.x),Math.round(f-d.y-5/a))}return new mxPoint(8/a,8/a)};var f=b.init;b.init=function(){f.apply(this,arguments);b.outline.view.getBackgroundPageBounds=function(){var a=c.getPageLayout(),b=c.getPageSize();return new mxRectangle(this.scale*(this.translate.x+a.x*b.width),this.scale*(this.translate.y+a.y*b.height),this.scale*a.width*b.width,this.scale*a.height*b.height)};b.outline.view.validateBackgroundPage()};this.editor.addListener("pageSelected", f=Math.max(0,(b.outline.container.clientHeight/a-(this.source.minimumGraphSize.height-2*d.y))/2);return new mxPoint(Math.round(e-d.x),Math.round(f-d.y-5/a))}return new mxPoint(8/a,8/a)};var f=b.init;b.init=function(){f.apply(this,arguments);b.outline.view.getBackgroundPageBounds=function(){var a=c.getPageLayout(),b=c.getPageSize();return new mxRectangle(this.scale*(this.translate.x+a.x*b.width),this.scale*(this.translate.y+a.y*b.height),this.scale*a.width*b.width,this.scale*a.height*b.height)};b.outline.view.validateBackgroundPage()};
function(a,c){var d=c.getProperty("change"),e=b.source,f=b.outline;f.pageScale=e.pageScale;f.pageFormat=e.pageFormat;f.background=e.background;f.pageVisible=e.pageVisible;f.background=e.background;var g=mxUtils.getCurrentStyle(e.container);f.container.style.backgroundColor=g.backgroundColor;null!=e.view.backgroundPageShape&&null!=f.view.backgroundPageShape&&(f.view.backgroundPageShape.fill=e.view.backgroundPageShape.fill);b.outline.view.clear(d.previousPage.root,!0);b.outline.view.validate()});return b}; this.editor.addListener("pageSelected",function(a,c){var d=c.getProperty("change"),e=b.source,f=b.outline;f.pageScale=e.pageScale;f.pageFormat=e.pageFormat;f.background=e.background;f.pageVisible=e.pageVisible;f.background=e.background;var g=mxUtils.getCurrentStyle(e.container);f.container.style.backgroundColor=g.backgroundColor;null!=e.view.backgroundPageShape&&null!=f.view.backgroundPageShape&&(f.view.backgroundPageShape.fill=e.view.backgroundPageShape.fill);b.outline.view.clear(d.previousPage.root,
var m=EditorUi.prototype.updateActionStates;EditorUi.prototype.updateActionStates=function(){m.apply(this,arguments);var a=this.editor.graph,b=this.getCurrentFile(),c=null!=b&&b.isEditable()||"1"==urlParams.embed;this.actions.get("pageSetup").setEnabled(c);this.actions.get("autosave").setEnabled(null!=b&&b.isEditable()&&b.isAutosaveOptional());this.actions.get("guides").setEnabled(c);this.actions.get("shadowVisible").setEnabled(c);this.actions.get("connectionArrows").setEnabled(c);this.actions.get("connectionPoints").setEnabled(c); !0);b.outline.view.validate()});return b};var m=EditorUi.prototype.updateActionStates;EditorUi.prototype.updateActionStates=function(){m.apply(this,arguments);var a=this.editor.graph,b=this.getCurrentFile(),c=null!=b&&b.isEditable()||"1"==urlParams.embed;this.actions.get("pageSetup").setEnabled(c);this.actions.get("autosave").setEnabled(null!=b&&b.isEditable()&&b.isAutosaveOptional());this.actions.get("guides").setEnabled(c);this.actions.get("shadowVisible").setEnabled(c);this.actions.get("connectionArrows").setEnabled(c);
this.actions.get("copyStyle").setEnabled(c&&!a.isSelectionEmpty());this.actions.get("pasteStyle").setEnabled(c&&!a.isSelectionEmpty());this.actions.get("editGeometry").setEnabled(a.getModel().isVertex(a.getSelectionCell()));this.actions.get("createShape").setEnabled(c);this.actions.get("createRevision").setEnabled(c);this.actions.get("moveToFolder").setEnabled(null!=b);this.actions.get("makeCopy").setEnabled(null!=b&&!b.isRestricted());this.actions.get("editDiagram").setEnabled("1"==urlParams.embed|| this.actions.get("connectionPoints").setEnabled(c);this.actions.get("copyStyle").setEnabled(c&&!a.isSelectionEmpty());this.actions.get("pasteStyle").setEnabled(c&&!a.isSelectionEmpty());this.actions.get("editGeometry").setEnabled(a.getModel().isVertex(a.getSelectionCell()));this.actions.get("createShape").setEnabled(c);this.actions.get("createRevision").setEnabled(c);this.actions.get("moveToFolder").setEnabled(null!=b);this.actions.get("makeCopy").setEnabled(null!=b&&!b.isRestricted());this.actions.get("editDiagram").setEnabled("1"==
null!=b&&!b.isRestricted());this.actions.get("imgur").setEnabled(null!=b&&!b.isRestricted());this.actions.get("github").setEnabled(null!=b&&!b.isRestricted());a=a.view.getState(a.getSelectionCell());this.actions.get("editShape").setEnabled(c&&null!=a&&null!=a.shape&&null!=a.shape.stencil)};Graph.prototype.defaultThemeName="default-style2";Graph.prototype.lastPasteXml=null;Graph.prototype.pasteCounter=0;Graph.prototype.edgeMode="move"!=urlParams.edge;var p=Graph.prototype.loadStylesheet;Graph.prototype.loadStylesheet= urlParams.embed||null!=b&&!b.isRestricted());this.actions.get("imgur").setEnabled(null!=b&&!b.isRestricted());this.actions.get("github").setEnabled(null!=b&&!b.isRestricted());a=a.view.getState(a.getSelectionCell());this.actions.get("editShape").setEnabled(c&&null!=a&&null!=a.shape&&null!=a.shape.stencil)};Graph.prototype.defaultThemeName="default-style2";Graph.prototype.lastPasteXml=null;Graph.prototype.pasteCounter=0;Graph.prototype.edgeMode="move"!=urlParams.edge;var p=Graph.prototype.loadStylesheet;
function(){p.apply(this,arguments);this.currentStyle="default-style2"};Graph.prototype.defaultScrollbars="0"!=urlParams.sb;Graph.prototype.defaultPageVisible="0"!=urlParams.pv;Graph.prototype.setShadowVisible=function(a,b){mxClient.IS_SVG&&(b=null!=b?b:!0,(this.shadowVisible=a)?this.view.getDrawPane().setAttribute("filter","url(#dropShadow)"):this.view.getDrawPane().removeAttribute("filter"),b&&this.fireEvent(new mxEventObject("shadowVisibleChanged")))};var s=Graph.prototype.init;Graph.prototype.init= Graph.prototype.loadStylesheet=function(){p.apply(this,arguments);this.currentStyle="default-style2"};Graph.prototype.defaultScrollbars="0"!=urlParams.sb;Graph.prototype.defaultPageVisible="0"!=urlParams.pv;Graph.prototype.setShadowVisible=function(a,b){mxClient.IS_SVG&&(b=null!=b?b:!0,(this.shadowVisible=a)?this.view.getDrawPane().setAttribute("filter","url(#dropShadow)"):this.view.getDrawPane().removeAttribute("filter"),b&&this.fireEvent(new mxEventObject("shadowVisibleChanged")))};var s=Graph.prototype.init;
function(){function a(c){b=c;if(mxClient.IS_QUIRKS||7==document.documentMode||8==document.documentMode)b=mxUtils.clone(c)}s.apply(this,arguments);var b=null;mxEvent.addListener(this.container,"mouseenter",a);mxEvent.addListener(this.container,"mousemove",a);mxEvent.addListener(this.container,"mouseleave",function(a){b=null});this.isMouseInsertPoint=function(){return null!=b};var c=this.getInsertPoint;this.getInsertPoint=function(){return null!=b?this.getPointForEvent(b):c.apply(this,arguments)};var d= Graph.prototype.init=function(){function a(c){b=c;if(mxClient.IS_QUIRKS||7==document.documentMode||8==document.documentMode)b=mxUtils.clone(c)}s.apply(this,arguments);var b=null;mxEvent.addListener(this.container,"mouseenter",a);mxEvent.addListener(this.container,"mousemove",a);mxEvent.addListener(this.container,"mouseleave",function(a){b=null});this.isMouseInsertPoint=function(){return null!=b};var c=this.getInsertPoint;this.getInsertPoint=function(){return null!=b?this.getPointForEvent(b):c.apply(this,
this.layoutManager.getLayout;this.layoutManager.getLayout=function(a){var b=this.graph.view.getState(a),b=null!=b?b.style:this.graph.getCellStyle(a);if("undefined"!=typeof mxRackContainer&&"rack"==b.childLayout){var c=new mxStackLayout(this.graph,!1);c.setChildGeometry=function(a,b){b.height=Math.max(b.height,20);if(1<b.height/20){var c=b.height%20;b.height+=10<c?20-c:-c}this.graph.getModel().setGeometry(a,b)};c.fill=!0;c.unitSize=mxRackContainer.unitSize|20;c.marginLeft=b.marginLeft||0;c.marginRight= arguments)};var d=this.layoutManager.getLayout;this.layoutManager.getLayout=function(a){var b=this.graph.view.getState(a),b=null!=b?b.style:this.graph.getCellStyle(a);if("undefined"!=typeof mxRackContainer&&"rack"==b.childLayout){var c=new mxStackLayout(this.graph,!1);c.setChildGeometry=function(a,b){b.height=Math.max(b.height,20);if(1<b.height/20){var c=b.height%20;b.height+=10<c?20-c:-c}this.graph.getModel().setGeometry(a,b)};c.fill=!0;c.unitSize=mxRackContainer.unitSize|20;c.marginLeft=b.marginLeft||
b.marginRight||0;c.marginTop=b.marginTop||0;c.marginBottom=b.marginBottom||0;c.resizeParent=!1;return c}return d.apply(this,arguments)}};mxStencilRegistry.libraries.arrows2=[SHAPES_PATH+"/mxArrows.js"];mxStencilRegistry.libraries.bpmn=[SHAPES_PATH+"/bpmn/mxBpmnShape2.js",STENCIL_PATH+"/bpmn.xml"];mxStencilRegistry.libraries.er=[SHAPES_PATH+"/er/mxER.js"];mxStencilRegistry.libraries.ios=[SHAPES_PATH+"/mockup/mxMockupiOS.js"];mxStencilRegistry.libraries.rackGeneral=[SHAPES_PATH+"/rack/mxRack.js",STENCIL_PATH+ 0;c.marginRight=b.marginRight||0;c.marginTop=b.marginTop||0;c.marginBottom=b.marginBottom||0;c.resizeParent=!1;return c}return d.apply(this,arguments)}};mxStencilRegistry.libraries.arrows2=[SHAPES_PATH+"/mxArrows.js"];mxStencilRegistry.libraries.bpmn=[SHAPES_PATH+"/bpmn/mxBpmnShape2.js",STENCIL_PATH+"/bpmn.xml"];mxStencilRegistry.libraries.er=[SHAPES_PATH+"/er/mxER.js"];mxStencilRegistry.libraries.ios=[SHAPES_PATH+"/mockup/mxMockupiOS.js"];mxStencilRegistry.libraries.rackGeneral=[SHAPES_PATH+"/rack/mxRack.js",
"/rack/general.xml"];mxStencilRegistry.libraries.rackF5=[STENCIL_PATH+"/rack/f5.xml"];mxStencilRegistry.libraries.lean_mapping=[SHAPES_PATH+"/mxLeanMap.js",STENCIL_PATH+"/lean_mapping.xml"];mxStencilRegistry.libraries.basic=[SHAPES_PATH+"/mxBasic.js",STENCIL_PATH+"/basic.xml"];mxStencilRegistry.libraries.ios7icons=[STENCIL_PATH+"/ios7/icons.xml"];mxStencilRegistry.libraries.ios7ui=[SHAPES_PATH+"/ios7/mxIOS7Ui.js",STENCIL_PATH+"/ios7/misc.xml"];mxStencilRegistry.libraries.android=[SHAPES_PATH+"/mxAndroid.js", STENCIL_PATH+"/rack/general.xml"];mxStencilRegistry.libraries.rackF5=[STENCIL_PATH+"/rack/f5.xml"];mxStencilRegistry.libraries.lean_mapping=[SHAPES_PATH+"/mxLeanMap.js",STENCIL_PATH+"/lean_mapping.xml"];mxStencilRegistry.libraries.basic=[SHAPES_PATH+"/mxBasic.js",STENCIL_PATH+"/basic.xml"];mxStencilRegistry.libraries.ios7icons=[STENCIL_PATH+"/ios7/icons.xml"];mxStencilRegistry.libraries.ios7ui=[SHAPES_PATH+"/ios7/mxIOS7Ui.js",STENCIL_PATH+"/ios7/misc.xml"];mxStencilRegistry.libraries.android=[SHAPES_PATH+
STENCIL_PATH+"/android/android.xml"];mxStencilRegistry.libraries.eeLogicGates=[STENCIL_PATH+"/electrical/logic_gates.xml"];mxStencilRegistry.libraries.eeResistors=[STENCIL_PATH+"/electrical/resistors.xml"];mxStencilRegistry.libraries.eeCapacitors=[STENCIL_PATH+"/electrical/capacitors.xml"];mxStencilRegistry.libraries.eeInductors=[STENCIL_PATH+"/electrical/inductors.xml"];mxStencilRegistry.libraries.eeSwitchesRelays=[STENCIL_PATH+"/electrical/switchesRelays.xml",STENCIL_PATH+"/electrical/electro-mechanical.xml"]; "/mxAndroid.js",STENCIL_PATH+"/android/android.xml"];mxStencilRegistry.libraries.eeLogicGates=[STENCIL_PATH+"/electrical/logic_gates.xml"];mxStencilRegistry.libraries.eeResistors=[STENCIL_PATH+"/electrical/resistors.xml"];mxStencilRegistry.libraries.eeCapacitors=[STENCIL_PATH+"/electrical/capacitors.xml"];mxStencilRegistry.libraries.eeInductors=[STENCIL_PATH+"/electrical/inductors.xml"];mxStencilRegistry.libraries.eeSwitchesRelays=[STENCIL_PATH+"/electrical/switchesRelays.xml",STENCIL_PATH+"/electrical/electro-mechanical.xml"];
mxStencilRegistry.libraries.eeDiodes=[STENCIL_PATH+"/electrical/diodes.xml"];mxStencilRegistry.libraries.eeSources=[STENCIL_PATH+"/electrical/signal_sources.xml"];mxStencilRegistry.libraries.eeTransistors=[STENCIL_PATH+"/electrical/mosfets1.xml",STENCIL_PATH+"/electrical/mosfets2.xml",STENCIL_PATH+"/electrical/transistors.xml"];mxStencilRegistry.libraries.eeMisc=[STENCIL_PATH+"/electrical/electro-mechanical.xml",STENCIL_PATH+"/electrical/miscellaneous.xml"];mxStencilRegistry.libraries.eeAudio=[STENCIL_PATH+ mxStencilRegistry.libraries.eeDiodes=[STENCIL_PATH+"/electrical/diodes.xml"];mxStencilRegistry.libraries.eeSources=[STENCIL_PATH+"/electrical/signal_sources.xml"];mxStencilRegistry.libraries.eeTransistors=[STENCIL_PATH+"/electrical/mosfets1.xml",STENCIL_PATH+"/electrical/mosfets2.xml",STENCIL_PATH+"/electrical/transistors.xml"];mxStencilRegistry.libraries.eeMisc=[STENCIL_PATH+"/electrical/electro-mechanical.xml",STENCIL_PATH+"/electrical/miscellaneous.xml"];mxStencilRegistry.libraries.eeAudio=[STENCIL_PATH+
"/electrical/radio.xml"];mxStencilRegistry.libraries.eePlcLadder=[STENCIL_PATH+"/electrical/plc_ladder.xml"];mxStencilRegistry.libraries.eeAbstract=[STENCIL_PATH+"/electrical/abstract.xml",STENCIL_PATH+"/electrical/logic_gates.xml"];mxStencilRegistry.libraries.eeOptical=[STENCIL_PATH+"/electrical/opto_electronics.xml"];mxStencilRegistry.libraries.eeVacuumTubes=[STENCIL_PATH+"/electrical/vacuum_tubes.xml"];mxStencilRegistry.libraries.eeWaveforms=[STENCIL_PATH+"/electrical/waveforms.xml"];mxStencilRegistry.libraries.eeInstruments= "/electrical/radio.xml"];mxStencilRegistry.libraries.eePlcLadder=[STENCIL_PATH+"/electrical/plc_ladder.xml"];mxStencilRegistry.libraries.eeAbstract=[STENCIL_PATH+"/electrical/abstract.xml",STENCIL_PATH+"/electrical/logic_gates.xml"];mxStencilRegistry.libraries.eeOptical=[STENCIL_PATH+"/electrical/opto_electronics.xml"];mxStencilRegistry.libraries.eeVacuumTubes=[STENCIL_PATH+"/electrical/vacuum_tubes.xml"];mxStencilRegistry.libraries.eeWaveforms=[STENCIL_PATH+"/electrical/waveforms.xml"];mxStencilRegistry.libraries.eeInstruments=
[STENCIL_PATH+"/electrical/instruments.xml"];mxStencilRegistry.libraries["mscae/cloud"]=[STENCIL_PATH+"/mscae/cloud.xml"];mxStencilRegistry.libraries["mockup/buttons"]=[SHAPES_PATH+"/mockup/mxMockupButtons.js"];mxStencilRegistry.libraries["mockup/containers"]=[SHAPES_PATH+"/mockup/mxMockupContainers.js"];mxStencilRegistry.libraries["mockup/forms"]=[SHAPES_PATH+"/mockup/mxMockupForms.js"];mxStencilRegistry.libraries["mockup/graphics"]=[SHAPES_PATH+"/mockup/mxMockupGraphics.js",STENCIL_PATH+"/mockup/misc.xml"]; [STENCIL_PATH+"/electrical/instruments.xml"];mxStencilRegistry.libraries["mscae/cloud"]=[STENCIL_PATH+"/mscae/cloud.xml"];mxStencilRegistry.libraries["mockup/buttons"]=[SHAPES_PATH+"/mockup/mxMockupButtons.js"];mxStencilRegistry.libraries["mockup/containers"]=[SHAPES_PATH+"/mockup/mxMockupContainers.js"];mxStencilRegistry.libraries["mockup/forms"]=[SHAPES_PATH+"/mockup/mxMockupForms.js"];mxStencilRegistry.libraries["mockup/graphics"]=[SHAPES_PATH+"/mockup/mxMockupGraphics.js",STENCIL_PATH+"/mockup/misc.xml"];

11557
war/js/atlas.min.js vendored

File diff suppressed because one or more lines are too long

View file

@ -353,8 +353,10 @@ App.getStoredMode = function()
/** /**
* Program flow starts here. * Program flow starts here.
*
* Optional callback is called with the app instance.
*/ */
App.main = function() App.main = function(callback)
{ {
var lastErrorMessage = null; var lastErrorMessage = null;
@ -539,6 +541,11 @@ App.main = function()
} }
} }
if (callback != null)
{
callback(ui);
}
/** /**
* For developers only * For developers only
*/ */
@ -777,18 +784,18 @@ App.prototype.init = function()
this.drive.addListener('userChanged', mxUtils.bind(this, function() this.drive.addListener('userChanged', mxUtils.bind(this, function()
{ {
// Changes the footer ads for Google Accounts // Changes the footer ads for Google Accounts
// if (this.updateAd != null) if (this.updateAd != null)
// { {
// this.adsHtml = ['<a title="Quick start video" href="https://www.youtube.com/watch?v=8OaMWa4R1SE&t=1" target="_blank">' + this.adsHtml = ['<a title="Quick start video" href="https://www.youtube.com/watch?v=8OaMWa4R1SE&t=1" target="_blank">' +
// '<img border="0" align="absmiddle" style="margin-top:-4px;" src="images/glyphicons_star.png"/>&nbsp;&nbsp;Quick start video</a>', '<img border="0" align="absmiddle" style="margin-top:-4px;" src="images/glyphicons_star.png"/>&nbsp;&nbsp;Quick start video</a>',
// '<a title="Google Docs Add-on" href="https://chrome.google.com/webstore/detail/drawio-diagrams/clpbjldiohnnmfmkngmaohehlnfkmoea" target="_blank">' + '<a title="Google Docs Add-on" href="https://chrome.google.com/webstore/detail/drawio-diagrams/clpbjldiohnnmfmkngmaohehlnfkmoea" target="_blank">' +
// '<img border="0" align="absmiddle" style="margin-top:-4px;" src="images/glyphicons_star.png"/>&nbsp;&nbsp;Google Docs Add-on</a>', '<img border="0" align="absmiddle" style="margin-top:-4px;" src="images/glyphicons_star.png"/>&nbsp;&nbsp;Google Docs Add-on</a>',
// '<a title="Google Chrome App" href="https://chrome.google.com/webstore/detail/drawio-desktop/pebppomjfocnoigkeepgbmcifnnlndla" target="_blank">' + '<a title="Google Chrome App" href="https://chrome.google.com/webstore/detail/drawio-desktop/pebppomjfocnoigkeepgbmcifnnlndla" target="_blank">' +
// '<img border="0" align="absmiddle" style="margin-top:-4px;" src="images/glyphicons_star.png"/>&nbsp;&nbsp;Google Chrome App</a>', '<img border="0" align="absmiddle" style="margin-top:-4px;" src="images/glyphicons_star.png"/>&nbsp;&nbsp;Google Chrome App</a>',
// '<a title="Please help us to 5 stars" href="https://chrome.google.com/webstore/detail/drawio-pro/onlkggianjhjenigcpigpjehhpplldkc/reviews" target="_blank">' + '<a title="Please help us to 5 stars" href="https://chrome.google.com/webstore/detail/drawio-pro/onlkggianjhjenigcpigpjehhpplldkc/reviews" target="_blank">' +
// '<img border="0" align="absmiddle" style="margin-top:-4px;" src="images/glyphicons_star.png"/>&nbsp;&nbsp;Please help us to 5 stars</a>']; '<img border="0" align="absmiddle" style="margin-top:-4px;" src="images/glyphicons_star.png"/>&nbsp;&nbsp;Please help us to 5 stars</a>'];
// this.updateAd(this.adsHtml.length - 1); this.updateAd(this.adsHtml.length - 1);
// } }
this.updateUserElement(); this.updateUserElement();
this.restoreLibraries(); this.restoreLibraries();
@ -1596,11 +1603,7 @@ App.prototype.createFileData = function(node, graph, file, url, forceXml, forceS
redirect = editLink; redirect = editLink;
} }
if (!forceSvg && !forceXml && (forceHtml || (file != null && /(\.html)$/i.test(file.getTitle())))) if (node == null)
{
return this.getHtml2(node, graph, file.getTitle(), editLink, redirect, ignoreSelection);
}
else if (node == null)
{ {
return ''; return '';
} }
@ -1608,7 +1611,7 @@ App.prototype.createFileData = function(node, graph, file, url, forceXml, forceS
{ {
var fileNode = node; var fileNode = node;
// Ignores case for for possible HTML or XML nodes // Ignores case for possible HTML or XML nodes
if (fileNode.nodeName.toLowerCase() != 'mxfile') if (fileNode.nodeName.toLowerCase() != 'mxfile')
{ {
// Removes control chars in input for correct roundtrip check // Removes control chars in input for correct roundtrip check
@ -1644,8 +1647,13 @@ App.prototype.createFileData = function(node, graph, file, url, forceXml, forceS
var xml = mxUtils.getXml(fileNode); var xml = mxUtils.getXml(fileNode);
// Writes the file as an embedded HTML file
if (!forceSvg && !forceXml && (forceHtml || (file != null && /(\.html)$/i.test(file.getTitle()))))
{
xml = this.getHtml2(fileNode, graph, file.getTitle(), editLink, redirect, ignoreSelection);
}
// Maps the XML data to the content attribute in the SVG node // Maps the XML data to the content attribute in the SVG node
if (forceSvg || (!forceXml && file != null && /(\.svg)$/i.test(file.getTitle()))) else if (forceSvg || (!forceXml && file != null && /(\.svg)$/i.test(file.getTitle())))
{ {
if (file != null && (file.getMode() == App.MODE_DEVICE || file.getMode() == App.MODE_BROWSER)) if (file != null && (file.getMode() == App.MODE_DEVICE || file.getMode() == App.MODE_BROWSER))
{ {
@ -1665,9 +1673,11 @@ App.prototype.createFileData = function(node, graph, file, url, forceXml, forceS
* @param {number} dx X-coordinate of the translation. * @param {number} dx X-coordinate of the translation.
* @param {number} dy Y-coordinate of the translation. * @param {number} dy Y-coordinate of the translation.
*/ */
App.prototype.getFileData = function(forceXml, forceSvg, forceHtml, embeddedCallback, ignoreSelection) App.prototype.getFileData = function(forceXml, forceSvg, forceHtml, embeddedCallback, ignoreSelection, currentPage)
{ {
ignoreSelection = (ignoreSelection != null) ? ignoreSelection : true; ignoreSelection = (ignoreSelection != null) ? ignoreSelection : true;
currentPage = (currentPage != null) ? currentPage : false;
var node = this.editor.getGraphXml(ignoreSelection); var node = this.editor.getGraphXml(ignoreSelection);
if (ignoreSelection && this.fileNode != null && this.currentPage != null) if (ignoreSelection && this.fileNode != null && this.currentPage != null)
@ -1676,6 +1686,12 @@ App.prototype.getFileData = function(forceXml, forceSvg, forceHtml, embeddedCall
mxUtils.setTextContent(this.currentPage.node, data); mxUtils.setTextContent(this.currentPage.node, data);
node = this.fileNode.cloneNode(false); node = this.fileNode.cloneNode(false);
if (currentPage)
{
node.appendChild(this.currentPage.node);
}
else
{
// Restores order of pages // Restores order of pages
for (var i = 0; i < this.pages.length; i++) for (var i = 0; i < this.pages.length; i++)
{ {
@ -1700,6 +1716,7 @@ App.prototype.getFileData = function(forceXml, forceSvg, forceHtml, embeddedCall
node.appendChild(this.pages[i].node); node.appendChild(this.pages[i].node);
} }
} }
}
return this.createFileData(node, this.editor.graph, this.getCurrentFile(), window.location.href, return this.createFileData(node, this.editor.graph, this.getCurrentFile(), window.location.href,
forceXml, forceSvg, forceHtml, embeddedCallback, ignoreSelection); forceXml, forceSvg, forceHtml, embeddedCallback, ignoreSelection);
@ -1858,10 +1875,7 @@ App.prototype.getDiagramId = function()
}; };
/** /**
* Main function. Program starts here. * Opens any file specified in the URL parameters.
*
* @param {number} dx X-coordinate of the translation.
* @param {number} dy Y-coordinate of the translation.
*/ */
App.prototype.open = function() App.prototype.open = function()
{ {
@ -2123,7 +2137,24 @@ App.prototype.start = function()
}), onerror, /(\.png)($|\?)/i.test(url)); }), onerror, /(\.png)($|\?)/i.test(url));
}); });
if (urlParams['url'] != null && this.spinner.spin(document.body, mxResources.get('loading'))) // Listens to changes of the hash if not in embed or client mode
if (urlParams['client'] != '1' && urlParams['embed'] != '1')
{
// KNOWN: Does not work in quirks mode
mxEvent.addListener(window, 'hashchange', mxUtils.bind(this, function(evt)
{
var id = this.getDiagramId();
var file = this.getCurrentFile();
if (file == null || file.getHash() != id)
{
this.loadFile(id, true);
}
}));
}
if ((window.location.hash == null || window.location.hash.length <= 1) &&
urlParams['url'] != null && this.spinner.spin(document.body, mxResources.get('loading')))
{ {
try try
{ {
@ -2308,7 +2339,8 @@ App.prototype.start = function()
var value = decodeURIComponent(urlParams['create'] || ''); var value = decodeURIComponent(urlParams['create'] || '');
if (value != null && value.length > 0 && this.spinner.spin(document.body, mxResources.get('loading'))) if ((window.location.hash == null || window.location.hash.length <= 1) &&
value != null && value.length > 0 && this.spinner.spin(document.body, mxResources.get('loading')))
{ {
var reconnect = mxUtils.bind(this, function() var reconnect = mxUtils.bind(this, function()
{ {
@ -2422,19 +2454,6 @@ App.prototype.start = function()
} }
else else
{ {
// Listens to changes of the hash
// Known: Does not work in quirks mode
mxEvent.addListener(window, 'hashchange', mxUtils.bind(this, function(evt)
{
var id = this.getDiagramId();
var file = this.getCurrentFile();
if (file == null || file.getHash() != id)
{
this.loadFile(id, true);
}
}));
done(); done();
} }
} }
@ -3141,37 +3160,7 @@ App.prototype.fileCreated = function(file, libs, replace, done)
{ {
this.spinner.stop(); this.spinner.stop();
if (this.mode == null && (urlParams['create'] != null || urlParams['url'] != null))
{
if (file.constructor == LocalFile)
{
// LATER: Remove create, title and mode URL params
this.fileLoaded(file);
}
else if (this.spinner.spin(document.body, mxResources.get('inserting')))
{
// Makes sure the file is not loaded when the hash changes
this.setCurrentFile(file);
window.location.hash = file.getHash();
// Removes create URL parameter and reloads page
window.location.search = this.getSearch(['create', 'title', 'notitle', 'mode', 'url']);
}
}
else
{
var fn2 = mxUtils.bind(this, function() var fn2 = mxUtils.bind(this, function()
{
// Replaces current URL for non-local files if user wants to open in same window
if (file.constructor != LocalFile && (urlParams['create'] != null || urlParams['url'] != null))
{
this.setCurrentFile(file);
window.location.hash = file.getHash();
// Removes URL parameters and reloads page
window.location.search = this.getSearch(['create', 'title', 'notitle', 'mode', 'url']);
}
else
{ {
window.openFile = null; window.openFile = null;
this.fileLoaded(file); this.fileLoaded(file);
@ -3180,7 +3169,6 @@ App.prototype.fileCreated = function(file, libs, replace, done)
{ {
this.sidebar.showEntries(libs); this.sidebar.showEntries(libs);
} }
}
if (done != null) if (done != null)
{ {
@ -3189,8 +3177,7 @@ App.prototype.fileCreated = function(file, libs, replace, done)
}); });
// Updates the file if it has been overwritten // Updates the file if it has been overwritten
if (!replace && (this.getCurrentFile() != null && (decodeURIComponent(this.getDiagramId()) != if (!replace && this.getCurrentFile() != null && this.mode != null)
decodeURIComponent(file.getHash()) || file.constructor == LocalFile)))
{ {
// Opens local file in a new window // Opens local file in a new window
if (file.constructor == LocalFile) if (file.constructor == LocalFile)
@ -3209,11 +3196,11 @@ App.prototype.fileCreated = function(file, libs, replace, done)
{ {
fn2(); fn2();
} }
}
}); });
// Updates data in memory for local files // Updates data in memory for local files and save is implicit
if (file.constructor == LocalFile) // via start of realtime for DriveFiles
if (file.constructor == LocalFile || file.constructor == DriveFile)
{ {
fn(); fn();
} }
@ -4087,8 +4074,10 @@ App.prototype.fileLoaded = function(file)
{ {
try try
{ {
file.open(); // Order is significant, current file needed for correct
// file format for initial save after starting realtime
this.setCurrentFile(file); this.setCurrentFile(file);
file.open();
this.diagramContainer.style.visibility = ''; this.diagramContainer.style.visibility = '';
this.formatContainer.style.visibility = ''; this.formatContainer.style.visibility = '';
@ -4560,44 +4549,6 @@ EditorUi.prototype.exportSvg = function(scale, transparentBackground, ignoreSele
} }
}; };
/**
* Translates this point by the given vector.
*
* @param {number} dx X-coordinate of the translation.
* @param {number} dy Y-coordinate of the translation.
*/
App.prototype.getOrCreateVoiceButton = function()
{
if (this.voiceButton == null)
{
this.voiceButton = document.createElement('div');
this.voiceButton.className = 'geBtn';
this.voiceButton.style.width = '140px';
this.voiceButton.style.minWidth = '140px';
this.voiceButton.style.textOverflow = 'ellipsis';
this.voiceButton.style.overflowX = 'hidden';
this.voiceButton.style.fontWeight = 'bold';
this.voiceButton.style.textAlign = 'center';
this.voiceButton.style.display = 'inline-block';
this.voiceButton.style.padding = '0 10px 0 10px';
this.voiceButton.style.marginTop = '-4px';
this.voiceButton.style.height = '28px';
this.voiceButton.style.lineHeight = '28px';
this.voiceButton.style.color = '#235695';
if (this.buttonContainer.firstChild != null)
{
this.buttonContainer.insertBefore(this.voiceButton, this.buttonContainer.firstChild);
}
else
{
this.buttonContainer.appendChild(this.voiceButton);
}
}
return this.voiceButton;
};
/** /**
* Translates this point by the given vector. * Translates this point by the given vector.
* *
@ -5420,7 +5371,12 @@ App.prototype.downloadFile = function(format, nonCompressed, addShadow, ignoreSe
else else
{ {
var bounds = this.editor.graph.getGraphBounds(); var bounds = this.editor.graph.getGraphBounds();
var data = this.getFileData(true, null, null, null, ignoreSelection);
// Exports only current page for PDF since it does not contain file data, but for
// the other formats with XML included we need to send the complete data and use
// the from/to URL parameters to specify the page to be exported.
var data = this.getFileData(true, null, null, null, ignoreSelection, format != 'xmlpng');
var range = '';
if (bounds.width * bounds.height <= MAX_AREA && data.length <= MAX_REQUEST_SIZE) if (bounds.width * bounds.height <= MAX_AREA && data.length <= MAX_REQUEST_SIZE)
{ {
@ -5431,11 +5387,24 @@ App.prototype.downloadFile = function(format, nonCompressed, addShadow, ignoreSe
embed = '1'; embed = '1';
format = 'png'; format = 'png';
filename = basename + '.' + format; filename = basename + '.' + format;
// Finds the current page number
if (this.pages != null && this.currentPage != null)
{
for (var i = 0; i < this.pages.length; i++)
{
if (this.pages[i] == this.currentPage)
{
range = '&from=' + i;
break;
}
}
}
} }
this.saveRequest(data, filename, format, function(newTitle, base64) this.saveRequest(data, filename, format, function(newTitle, base64)
{ {
return new mxXmlRequest(EXPORT_URL, 'format=' + format + return new mxXmlRequest(EXPORT_URL, 'format=' + format + range +
'&base64=' + base64 + '&embedXml=' + embed + '&xml=' + '&base64=' + base64 + '&embedXml=' + embed + '&xml=' +
encodeURIComponent(data) + ((newTitle != null) ? encodeURIComponent(data) + ((newTitle != null) ?
'&filename=' + encodeURIComponent(newTitle) : '')); '&filename=' + encodeURIComponent(newTitle) : ''));
@ -5902,7 +5871,7 @@ App.prototype.updateHeader = function()
this.toggleFormatElement.style.position = 'absolute'; this.toggleFormatElement.style.position = 'absolute';
this.toggleFormatElement.style.display = 'inline-block'; this.toggleFormatElement.style.display = 'inline-block';
this.toggleFormatElement.style.top = '5px'; this.toggleFormatElement.style.top = '5px';
this.toggleFormatElement.style.right = '26px'; this.toggleFormatElement.style.right = (uiTheme != 'atlas' && urlParams['embed'] != '1') ? '26px' : '10px';
this.toggleFormatElement.style.padding = '2px'; this.toggleFormatElement.style.padding = '2px';
this.toggleFormatElement.style.fontSize = '14px'; this.toggleFormatElement.style.fontSize = '14px';
this.toggleFormatElement.className = (uiTheme != 'atlas') ? 'geButton' : ''; this.toggleFormatElement.className = (uiTheme != 'atlas') ? 'geButton' : '';
@ -5935,7 +5904,7 @@ App.prototype.updateHeader = function()
this.fullscreenElement.style.position = 'absolute'; this.fullscreenElement.style.position = 'absolute';
this.fullscreenElement.style.display = 'inline-block'; this.fullscreenElement.style.display = 'inline-block';
this.fullscreenElement.style.top = '5px'; this.fullscreenElement.style.top = '5px';
this.fullscreenElement.style.right = '42px'; this.fullscreenElement.style.right = (uiTheme != 'atlas' && urlParams['embed'] != '1') ? '42px' : '26px';
this.fullscreenElement.style.padding = '2px'; this.fullscreenElement.style.padding = '2px';
this.fullscreenElement.style.fontSize = '14px'; this.fullscreenElement.style.fontSize = '14px';
this.fullscreenElement.className = (uiTheme != 'atlas') ? 'geButton' : ''; this.fullscreenElement.className = (uiTheme != 'atlas') ? 'geButton' : '';
@ -5951,7 +5920,7 @@ App.prototype.updateHeader = function()
mxEvent.addListener(this.fullscreenElement, 'click', mxUtils.bind(this, function(evt) mxEvent.addListener(this.fullscreenElement, 'click', mxUtils.bind(this, function(evt)
{ {
if (uiTheme != 'atlas') if (uiTheme != 'atlas' && urlParams['embed'] != '1')
{ {
this.toggleCompactMode(!collapsed); this.toggleCompactMode(!collapsed);
} }

View file

@ -5195,7 +5195,7 @@
this.toolbar.container.appendChild(div); this.toolbar.container.appendChild(div);
this.toolbar.staticElements.push(div); this.toolbar.staticElements.push(div);
div.style.right = '42px'; div.style.right = (uiTheme != 'atlas') ? '52px' : '42px';
} }
}; };

View file

@ -184,7 +184,7 @@ f)+"\n"+s+"}":"{"+u.join(",")+"}";f=s;return r}}"function"!==typeof Date.prototy
e=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,f,g,h={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},k;"function"!==typeof JSON.stringify&&(JSON.stringify=function(a,b,d){var e;g=f="";if("number"===typeof d)for(e=0;e<d;e+=1)g+=" ";else"string"===typeof d&&(g=d);if((k=b)&&"function"!==typeof b&&("object"!==typeof b||"number"!==typeof b.length))throw Error("JSON.stringify");return c("",{"":a})}); e=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,f,g,h={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},k;"function"!==typeof JSON.stringify&&(JSON.stringify=function(a,b,d){var e;g=f="";if("number"===typeof d)for(e=0;e<d;e+=1)g+=" ";else"string"===typeof d&&(g=d);if((k=b)&&"function"!==typeof b&&("object"!==typeof b||"number"!==typeof b.length))throw Error("JSON.stringify");return c("",{"":a})});
"function"!==typeof JSON.parse&&(JSON.parse=function(a,b){function c(a,d){var e,f,g=a[d];if(g&&"object"===typeof g)for(e in g)Object.prototype.hasOwnProperty.call(g,e)&&(f=c(g,e),void 0!==f?g[e]=f:delete g[e]);return b.call(a,d,g)}var e;a=""+a;d.lastIndex=0;d.test(a)&&(a=a.replace(d,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)}));if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "function"!==typeof JSON.parse&&(JSON.parse=function(a,b){function c(a,d){var e,f,g=a[d];if(g&&"object"===typeof g)for(e in g)Object.prototype.hasOwnProperty.call(g,e)&&(f=c(g,e),void 0!==f?g[e]=f:delete g[e]);return b.call(a,d,g)}var e;a=""+a;d.lastIndex=0;d.test(a)&&(a=a.replace(d,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)}));if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof b?c({"":e},""):e;throw new SyntaxError("JSON.parse");})})();var mxBasePath="https://www.draw.io/mxgraph/",mxLoadStylesheets=mxLoadResources=!1,mxLanguage="en";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||1E8;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save";window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images"; "]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof b?c({"":e},""):e;throw new SyntaxError("JSON.parse");})})();var mxBasePath="https://www.draw.io/mxgraph/",mxLoadStylesheets=mxLoadResources=!1,mxLanguage="en";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||1E8;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save";window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images";
window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"5.6.0.3",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&& window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"5.6.0.4",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&
0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&& 0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&&
0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&& 0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&&
0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")|| 0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")||
@ -898,16 +898,16 @@ mxGraphSelectionModel.prototype.addCells=function(a){if(null!=a){var b=null;this
mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}}; mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}};
mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null} mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null}
mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)|| mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)||
this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler)}mxCellEditor.prototype.graph=null; this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};
mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20); function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler);this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null==this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler)}
mxCellEditor.prototype.graph=null;mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20);
mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)}; mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)};
mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&(8!=document.documentMode&&9!=document.documentMode&&10!=document.documentMode)&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")}; mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&(8!=document.documentMode&&9!=document.documentMode&&10!=document.documentMode)&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")};
mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a}; mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a};
mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null== mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&
this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler);var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length|| a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length||"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?
"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&(this.autoSize&&!mxEvent.isConsumed(a))&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread), "input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&(this.autoSize&&!mxEvent.isConsumed(a))&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread),this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",
this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)}; c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)};mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left= mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left=
Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width= Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=
Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds= Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds=
@ -925,13 +925,13 @@ mxConstants.DEFAULT_TEXT_DIRECTION);d==mxConstants.TEXT_DIRECTION_AUTO&&null!=c&
(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}), (this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}),
0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&(0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange))&&document.execCommand("selectAll",!1,null)}catch(l){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText}; 0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&(0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange))&&document.execCommand("selectAll",!1,null)}catch(l){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText};
mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="", mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="",
this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b))}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)}; this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b));mxEvent.release(this.textarea);this.textarea=null}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)};
mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,h=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]|| mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,h=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]||
0)+mxText.prototype.baseSpacingRight)*c+g,k=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-h-k)),k=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&& 0)+mxText.prototype.baseSpacingRight)*c+g,k=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-h-k)),k=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&&
k==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=h;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width), k==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=h;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width),
f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b== f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b==
mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell}; mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell};
mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null,null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null),this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null))};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector; mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null);null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null);this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null)};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector;
mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape); mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape);
mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon); mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon);
mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape); mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape);

View file

@ -687,6 +687,12 @@ var PageSetupDialog = function(editorUi)
gridSizeInput.value = graph.getGridSize(); gridSizeInput.value = graph.getGridSize();
td.appendChild(gridSizeInput); td.appendChild(gridSizeInput);
mxEvent.addListener(gridSizeInput, 'change', function()
{
var value = parseInt(gridSizeInput.value);
gridSizeInput.value = Math.max(1, (isNaN(value)) ? graph.getGridSize() : value);
});
row.appendChild(td); row.appendChild(td);
tbody.appendChild(row); tbody.appendChild(row);
@ -787,7 +793,7 @@ var PageSetupDialog = function(editorUi)
if (graph.gridSize !== gridSizeInput.value) if (graph.gridSize !== gridSizeInput.value)
{ {
graph.setGridSize(parseFloat(gridSizeInput.value)); graph.setGridSize(parseInt(gridSizeInput.value));
} }
}); });
applyBtn.className = 'geBtn gePrimaryBtn'; applyBtn.className = 'geBtn gePrimaryBtn';

View file

@ -3399,69 +3399,6 @@ EditorUi.prototype.createKeyHandler = function(editor)
return mxEvent.isControlDown(evt) || (mxClient.IS_MAC && evt.metaKey); return mxEvent.isControlDown(evt) || (mxClient.IS_MAC && evt.metaKey);
}; };
// Overridden to handle special alt+shift+cursor keyboard shortcuts
var directions = {37: mxConstants.DIRECTION_WEST, 38: mxConstants.DIRECTION_NORTH,
39: mxConstants.DIRECTION_EAST, 40: mxConstants.DIRECTION_SOUTH};
var keyHandlerGetFunction = keyHandler.getFunction;
mxKeyHandler.prototype.getFunction = function(evt)
{
if (directions[evt.keyCode] != null)
{
var cell = graph.getSelectionCell();
if (graph.model.isVertex(cell))
{
if (mxEvent.isShiftDown(evt) && mxEvent.isAltDown(evt))
{
return function()
{
var cells = graph.connectVertex(cell, directions[evt.keyCode], graph.defaultEdgeLength, evt, true);
if (cells != null && cells.length > 0)
{
if (cells.length == 1 && graph.model.isEdge(cells[0]))
{
graph.setSelectionCell(graph.model.getTerminal(cells[0], false));
}
else
{
graph.setSelectionCell(cells[cells.length - 1]);
}
if (editorUi.hoverIcons != null)
{
editorUi.hoverIcons.update(graph.view.getState(graph.getSelectionCell()));
}
}
};
}
else
{
// Avoids consuming event if no vertex is selected by returning null below
// Cursor keys move and resize (ctrl) cells
if (this.isControlDown(evt))
{
return function()
{
nudge(evt.keyCode, (mxEvent.isShiftDown(evt)) ? graph.gridSize : null, true);
};
}
else
{
return function()
{
nudge(evt.keyCode, (mxEvent.isShiftDown(evt)) ? graph.gridSize : null);
};
}
}
}
}
return keyHandlerGetFunction.apply(this, arguments);
};
var queue = []; var queue = [];
var thread = null; var thread = null;
@ -3601,6 +3538,68 @@ EditorUi.prototype.createKeyHandler = function(editor)
}, 200); }, 200);
}; };
// Overridden to handle special alt+shift+cursor keyboard shortcuts
var directions = {37: mxConstants.DIRECTION_WEST, 38: mxConstants.DIRECTION_NORTH,
39: mxConstants.DIRECTION_EAST, 40: mxConstants.DIRECTION_SOUTH};
var keyHandlerGetFunction = keyHandler.getFunction;
mxKeyHandler.prototype.getFunction = function(evt)
{
if (directions[evt.keyCode] != null && !graph.isSelectionEmpty())
{
if (mxEvent.isShiftDown(evt) && mxEvent.isAltDown(evt))
{
if (graph.model.isVertex(graph.getSelectionCell()))
{
return function()
{
var cells = graph.connectVertex(graph.getSelectionCell(), directions[evt.keyCode],
graph.defaultEdgeLength, evt, true);
if (cells != null && cells.length > 0)
{
if (cells.length == 1 && graph.model.isEdge(cells[0]))
{
graph.setSelectionCell(graph.model.getTerminal(cells[0], false));
}
else
{
graph.setSelectionCell(cells[cells.length - 1]);
}
if (editorUi.hoverIcons != null)
{
editorUi.hoverIcons.update(graph.view.getState(graph.getSelectionCell()));
}
}
};
}
}
else
{
// Avoids consuming event if no vertex is selected by returning null below
// Cursor keys move and resize (ctrl) cells
if (this.isControlDown(evt))
{
return function()
{
nudge(evt.keyCode, (mxEvent.isShiftDown(evt)) ? graph.gridSize : null, true);
};
}
else
{
return function()
{
nudge(evt.keyCode, (mxEvent.isShiftDown(evt)) ? graph.gridSize : null);
};
}
}
}
return keyHandlerGetFunction.apply(this, arguments);
};
// Binds keystrokes to actions // Binds keystrokes to actions
keyHandler.bindAction = mxUtils.bind(this, function(code, control, key, shift) keyHandler.bindAction = mxUtils.bind(this, function(code, control, key, shift)
{ {

View file

@ -1731,16 +1731,6 @@ Sidebar.prototype.createThumb = function(cells, width, height, parent, title, sh
this.graph.labelsVisible = (showLabel == null || showLabel); this.graph.labelsVisible = (showLabel == null || showLabel);
var fo = mxClient.NO_FO; var fo = mxClient.NO_FO;
mxClient.NO_FO = Editor.prototype.originalNoForeignObject; mxClient.NO_FO = Editor.prototype.originalNoForeignObject;
// Paints faster by using the known width and height
if (false && realWidth != null && realHeight != null)
{
var s = Math.floor(Math.min((width - 2 * this.thumbBorder) / realWidth, (height - 2 * this.thumbBorder) / realHeight) * 100) / 100;
this.graph.view.scaleAndTranslate(s, Math.floor((width - realWidth * s) / 2 / s), Math.floor((height - realHeight * s) / 2 / s));
this.graph.addCells(cells);
}
else
{
this.graph.view.scaleAndTranslate(1, 0, 0); this.graph.view.scaleAndTranslate(1, 0, 0);
this.graph.addCells(cells); this.graph.addCells(cells);
var bounds = this.graph.getGraphBounds(); var bounds = this.graph.getGraphBounds();
@ -1748,7 +1738,6 @@ Sidebar.prototype.createThumb = function(cells, width, height, parent, title, sh
/ bounds.height) * 100) / 100; / bounds.height) * 100) / 100;
this.graph.view.scaleAndTranslate(s, Math.floor((width - bounds.width * s) / 2 / s - bounds.x), this.graph.view.scaleAndTranslate(s, Math.floor((width - bounds.width * s) / 2 / s - bounds.x),
Math.floor((height - bounds.height * s) / 2 / s - bounds.y)); Math.floor((height - bounds.height * s) / 2 / s - bounds.y));
}
var node = null; var node = null;

View file

@ -723,7 +723,14 @@ Toolbar.prototype.addItem = function(sprite, key, c, ignoreDisabled)
if (action != null) if (action != null)
{ {
elt = this.addButton(sprite, action.label, action.funct, c); var tooltip = action.label;
if (action.shortcut != null)
{
tooltip += ' (' + action.shortcut + ')';
}
elt = this.addButton(sprite, tooltip, action.funct, c);
if (!ignoreDisabled) if (!ignoreDisabled)
{ {

20
war/js/reader.min.js vendored
View file

@ -184,7 +184,7 @@ f)+"\n"+s+"}":"{"+u.join(",")+"}";f=s;return r}}"function"!==typeof Date.prototy
e=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,f,g,h={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},k;"function"!==typeof JSON.stringify&&(JSON.stringify=function(a,b,d){var e;g=f="";if("number"===typeof d)for(e=0;e<d;e+=1)g+=" ";else"string"===typeof d&&(g=d);if((k=b)&&"function"!==typeof b&&("object"!==typeof b||"number"!==typeof b.length))throw Error("JSON.stringify");return c("",{"":a})}); e=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,f,g,h={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},k;"function"!==typeof JSON.stringify&&(JSON.stringify=function(a,b,d){var e;g=f="";if("number"===typeof d)for(e=0;e<d;e+=1)g+=" ";else"string"===typeof d&&(g=d);if((k=b)&&"function"!==typeof b&&("object"!==typeof b||"number"!==typeof b.length))throw Error("JSON.stringify");return c("",{"":a})});
"function"!==typeof JSON.parse&&(JSON.parse=function(a,b){function c(a,d){var e,f,g=a[d];if(g&&"object"===typeof g)for(e in g)Object.prototype.hasOwnProperty.call(g,e)&&(f=c(g,e),void 0!==f?g[e]=f:delete g[e]);return b.call(a,d,g)}var e;a=""+a;d.lastIndex=0;d.test(a)&&(a=a.replace(d,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)}));if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g, "function"!==typeof JSON.parse&&(JSON.parse=function(a,b){function c(a,d){var e,f,g=a[d];if(g&&"object"===typeof g)for(e in g)Object.prototype.hasOwnProperty.call(g,e)&&(f=c(g,e),void 0!==f?g[e]=f:delete g[e]);return b.call(a,d,g)}var e;a=""+a;d.lastIndex=0;d.test(a)&&(a=a.replace(d,function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)}));if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,
"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof b?c({"":e},""):e;throw new SyntaxError("JSON.parse");})})();var mxBasePath="https://www.draw.io/mxgraph/",mxLoadStylesheets=mxLoadResources=!1,mxLanguage="en";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||1E8;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save";window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images"; "]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return e=eval("("+a+")"),"function"===typeof b?c({"":e},""):e;throw new SyntaxError("JSON.parse");})})();var mxBasePath="https://www.draw.io/mxgraph/",mxLoadStylesheets=mxLoadResources=!1,mxLanguage="en";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||1E8;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save";window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images";
window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"5.6.0.3",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&& window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"5.6.0.4",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&
0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&& 0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&&
0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&& 0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&&
0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")|| 0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")||
@ -898,16 +898,16 @@ mxGraphSelectionModel.prototype.addCells=function(a){if(null!=a){var b=null;this
mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}}; mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}};
mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null} mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null}
mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)|| mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)||
this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler)}mxCellEditor.prototype.graph=null; this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};
mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20); function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler);this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null==this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler)}
mxCellEditor.prototype.graph=null;mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20);
mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)}; mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)};
mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&(8!=document.documentMode&&9!=document.documentMode&&10!=document.documentMode)&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")}; mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&(8!=document.documentMode&&9!=document.documentMode&&10!=document.documentMode)&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")};
mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a}; mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a};
mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null== mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&
this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler);var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length|| a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length||"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?
"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&(this.autoSize&&!mxEvent.isConsumed(a))&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread), "input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&(this.autoSize&&!mxEvent.isConsumed(a))&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread),this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",
this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)}; c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)};mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left= mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left=
Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width= Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=
Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds= Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds=
@ -925,13 +925,13 @@ mxConstants.DEFAULT_TEXT_DIRECTION);d==mxConstants.TEXT_DIRECTION_AUTO&&null!=c&
(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}), (this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}),
0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&(0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange))&&document.execCommand("selectAll",!1,null)}catch(l){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText}; 0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&(0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange))&&document.execCommand("selectAll",!1,null)}catch(l){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText};
mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="", mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="",
this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b))}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)}; this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b));mxEvent.release(this.textarea);this.textarea=null}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)};
mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,h=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]|| mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,h=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]||
0)+mxText.prototype.baseSpacingRight)*c+g,k=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-h-k)),k=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&& 0)+mxText.prototype.baseSpacingRight)*c+g,k=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-h-k)),k=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&&
k==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=h;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width), k==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=h;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width),
f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b== f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b==
mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell}; mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell};
mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null,null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null),this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null))};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector; mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null);null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null);this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null)};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector;
mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape); mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape);
mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon); mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon);
mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape); mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape);

92
war/js/viewer.min.js vendored
View file

@ -45,18 +45,18 @@ function(){return this.h&&decodeURIComponent(this.h)};g.prototype.ca=function(a)
!(a instanceof Array)&&(a instanceof Object||"[object Array]"!==Object.prototype.toString.call(a))){var b=[],c=-1,d;for(d in a){var e=a[d];"string"===typeof e&&(b[++c]=d,b[++c]=e)}a=b}for(var b=[],c="",f=0;f<a.length;)d=a[f++],e=a[f++],b.push(c,encodeURIComponent(d.toString())),c="\x26",e&&b.push("\x3d",encodeURIComponent(e.toString()));this.l=b.join("")};g.prototype.fa=function(a){this.o=a?a:c};g.prototype.Z=function(){return c!==this.o};var m=/^(?:([^:/?#]+):)?(?:\/\/(?:([^/?#]*)@)?([^/?#:@]*)(?::([0-9]+))?)?([^?#]+)?(?:\?([^#]*))?(?:#(.*))?$/, !(a instanceof Array)&&(a instanceof Object||"[object Array]"!==Object.prototype.toString.call(a))){var b=[],c=-1,d;for(d in a){var e=a[d];"string"===typeof e&&(b[++c]=d,b[++c]=e)}a=b}for(var b=[],c="",f=0;f<a.length;)d=a[f++],e=a[f++],b.push(c,encodeURIComponent(d.toString())),c="\x26",e&&b.push("\x3d",encodeURIComponent(e.toString()));this.l=b.join("")};g.prototype.fa=function(a){this.o=a?a:c};g.prototype.Z=function(){return c!==this.o};var m=/^(?:([^:/?#]+):)?(?:\/\/(?:([^/?#]*)@)?([^/?#:@]*)(?::([0-9]+))?)?([^?#]+)?(?:\?([^#]*))?(?:#(.*))?$/,
q=/[#\/\?@]/g,p=/[\#\?]/g;g.parse=a;g.create=function(a,e,f,k,l,n,m){a=new g(b(a,q),b(e,q),"string"==typeof f?encodeURIComponent(f):c,0<k?k.toString():c,b(l,p),c,"string"==typeof m?encodeURIComponent(m):c);n&&("string"===typeof n?a.O(n.replace(/[^?&=0-9A-Za-z_\-~.%]/g,d)):a.ba(n));return a};g.N=f;g.ma=e;g.ha={ua:function(b){return/\.html$/.test(a(b).U())?"text/html":"application/javascript"},N:function(b,c){return b?f(a(b),a(c)).toString():""+c}};return g}();"undefined"!==typeof window&&(window.URI= q=/[#\/\?@]/g,p=/[\#\?]/g;g.parse=a;g.create=function(a,e,f,k,l,n,m){a=new g(b(a,q),b(e,q),"string"==typeof f?encodeURIComponent(f):c,0<k?k.toString():c,b(l,p),c,"string"==typeof m?encodeURIComponent(m):c);n&&("string"===typeof n?a.O(n.replace(/[^?&=0-9A-Za-z_\-~.%]/g,d)):a.ba(n));return a};g.N=f;g.ma=e;g.ha={ua:function(b){return/\.html$/.test(a(b).U())?"text/html":"application/javascript"},N:function(b,c){return b?f(a(b),a(c)).toString():""+c}};return g}();"undefined"!==typeof window&&(window.URI=
n);var m=a,p=a,s=a,r=a;(function(){function e(a){return"string"===typeof a?'url("'+a.replace(y,g)+'")':'url("about:blank")'}function g(a){return E[a]}function k(a,b){return a?n.ha.N(a,b):b}function t(a,b,d){if(!d)return c;var e=(""+a).match(D);return e&&(!e[1]||F.test(e[1]))?d(a,b):c}function C(a){return a.replace(/^-(?:apple|css|epub|khtml|moz|mso?|o|rim|wap|webkit|xv)-(?=[a-z])/,"")}var y=/[\n\f\r\"\'()*<>]/g,E={"\n":"%0a","\f":"%0c","\r":"%0d",'"':"%22","'":"%27","(":"%28",")":"%29","*":"%2a", n);var m=a,p=a,s=a,r=a;(function(){function e(a){return"string"===typeof a?'url("'+a.replace(y,g)+'")':'url("about:blank")'}function g(a){return E[a]}function k(a,b){return a?n.ha.N(a,b):b}function t(a,b,d){if(!d)return c;var e=(""+a).match(D);return e&&(!e[1]||F.test(e[1]))?d(a,b):c}function C(a){return a.replace(/^-(?:apple|css|epub|khtml|moz|mso?|o|rim|wap|webkit|xv)-(?=[a-z])/,"")}var y=/[\n\f\r\"\'()*<>]/g,E={"\n":"%0a","\f":"%0c","\r":"%0d",'"':"%22","'":"%27","(":"%28",")":"%29","*":"%2a",
"\x3c":"%3c","\x3e":"%3e"},D=/^(?:([^:/?# ]+):)?/,F=/^(?:https?|mailto|data)$/i;m=function(){var a={};return function R(b,c,d,g,n){b=C(b);var m=f[b];if(!m||"object"!==typeof m)c.length=0;else{for(var q=m.cssPropBits,p=q&80,x=q&1536,G=NaN,D=0,s=0;D<c.length;++D){var r=c[D].toLowerCase(),A=r.charCodeAt(0),F,H,E,y,Q,ha;if(32===A)r="";else if(34===A)r=16===p?d?e(t(k(g,l(c[D].substring(1,r.length-1))),b,d)):"":q&8&&!(p&p-1)?r:"";else if("inherit"!==r){if(Q=m.cssLitGroup){var ea;if(!(ea=m.cssLitMap)){ea= "\x3c":"%3c","\x3e":"%3e"},D=/^(?:([^:/?# ]+):)?/,F=/^(?:https?|mailto|data)$/i;m=function(){var a={};return function R(b,c,d,g,n){b=C(b);var m=f[b];if(!m||"object"!==typeof m)c.length=0;else{for(var q=m.cssPropBits,p=q&80,x=q&1536,G=NaN,s=0,D=0;s<c.length;++s){var r=c[s].toLowerCase(),A=r.charCodeAt(0),F,H,E,y,Q,ha;if(32===A)r="";else if(34===A)r=16===p?d?e(t(k(g,l(c[s].substring(1,r.length-1))),b,d)):"":q&8&&!(p&p-1)?r:"";else if("inherit"!==r){if(Q=m.cssLitGroup){var ea;if(!(ea=m.cssLitMap)){ea=
{};for(var W=Q.length;0<=--W;)for(var ga=Q[W],ka=ga.length;0<=--ka;)ea[ga[ka]]=a;ea=m.cssLitMap=ea}Q=ea}else Q=a;if(!(ha=Q,ha[C(r)]===a))if(35===A&&/^#(?:[0-9a-f]{3}){1,2}$/.test(r))r=q&2?r:"";else if(48<=A&&57>=A)r=q&1?r:"";else if(F=r.charCodeAt(1),H=r.charCodeAt(2),E=48<=F&&57>=F,y=48<=H&&57>=H,43===A&&(E||46===F&&y))r=q&1?(E?"":"0")+r.substring(1):"";else if(45===A&&(E||46===F&&y))r=q&4?(E?"-":"-0")+r.substring(1):q&1?"0":"";else if(46===A&&E)r=q&1?"0"+r:"";else if('url("'===r.substring(0,5))r= {};for(var W=Q.length;0<=--W;)for(var ga=Q[W],ka=ga.length;0<=--ka;)ea[ga[ka]]=a;ea=m.cssLitMap=ea}Q=ea}else Q=a;if(!(ha=Q,ha[C(r)]===a))if(35===A&&/^#(?:[0-9a-f]{3}){1,2}$/.test(r))r=q&2?r:"";else if(48<=A&&57>=A)r=q&1?r:"";else if(F=r.charCodeAt(1),H=r.charCodeAt(2),E=48<=F&&57>=F,y=48<=H&&57>=H,43===A&&(E||46===F&&y))r=q&1?(E?"":"0")+r.substring(1):"";else if(45===A&&(E||46===F&&y))r=q&4?(E?"-":"-0")+r.substring(1):q&1?"0":"";else if(46===A&&E)r=q&1?"0"+r:"";else if('url("'===r.substring(0,5))r=
d&&q&16?e(t(k(g,c[D].substring(5,r.length-2)),b,d)):"";else if("("===r.charAt(r.length-1))a:{Q=c;ea=D;r=1;W=ea+1;for(A=Q.length;W<A&&r;)ga=Q[W++],r+=")"===ga?-1:/^[^"']*\($/.test(ga);if(!r){r=Q[ea].toLowerCase();A=C(r);Q=Q.splice(ea,W-ea,"");ea=m.cssFns;W=0;for(ga=ea.length;W<ga;++W)if(ea[W].substring(0,A.length)==A){Q[0]=Q[Q.length-1]="";R(ea[W],Q,d,g);r=r+Q.join(" ")+")";break a}}r=""}else r=x&&/^-?[a-z_][\w\-]*$/.test(r)&&!/__$/.test(r)?n&&512===x?c[D]+n:1024===x&&f[r]&&"number"===typeof f[r].oa? d&&q&16?e(t(k(g,c[s].substring(5,r.length-2)),b,d)):"";else if("("===r.charAt(r.length-1))a:{Q=c;ea=s;r=1;W=ea+1;for(A=Q.length;W<A&&r;)ga=Q[W++],r+=")"===ga?-1:/^[^"']*\($/.test(ga);if(!r){r=Q[ea].toLowerCase();A=C(r);Q=Q.splice(ea,W-ea,"");ea=m.cssFns;W=0;for(ga=ea.length;W<ga;++W)if(ea[W].substring(0,A.length)==A){Q[0]=Q[Q.length-1]="";R(ea[W],Q,d,g);r=r+Q.join(" ")+")";break a}}r=""}else r=x&&/^-?[a-z_][\w\-]*$/.test(r)&&!/__$/.test(r)?n&&512===x?c[s]+n:1024===x&&f[r]&&"number"===typeof f[r].oa?
r:"":/^\w+$/.test(r)&&64===p&&q&8?G+1===s?(c[G]=c[G].substring(0,c[G].length-1)+" "+r+'"',""):(G=s,'"'+r+'"'):""}r&&(c[s++]=r)}1===s&&'url("about:blank")'===c[0]&&(s=0);c.length=s}}}();var G=RegExp("^(active|after|before|blank|checked|default|disabled|drop|empty|enabled|first|first-child|first-letter|first-line|first-of-type|fullscreen|focus|hover|in-range|indeterminate|invalid|last-child|last-of-type|left|link|only-child|only-of-type|optional|out-of-range|placeholder-shown|read-only|read-write|required|right|root|scope|user-error|valid|visited)$"), r:"":/^\w+$/.test(r)&&64===p&&q&8?G+1===D?(c[G]=c[G].substring(0,c[G].length-1)+" "+r+'"',""):(G=D,'"'+r+'"'):""}r&&(c[D++]=r)}1===D&&'url("about:blank")'===c[0]&&(D=0);c.length=D}}}();var G=RegExp("^(active|after|before|blank|checked|default|disabled|drop|empty|enabled|first|first-child|first-letter|first-line|first-of-type|fullscreen|focus|hover|in-range|indeterminate|invalid|last-child|last-of-type|left|link|only-child|only-of-type|optional|out-of-range|placeholder-shown|read-only|read-write|required|right|root|scope|user-error|valid|visited)$"),
H={};H["\x3e"]=H["+"]=H["~"]=H;p=function(a,e,f){function g(q,p){function t(c,f,g){var k,m,q,p,r,D=b;k="";if(c<f)if(r=a[c],"*"===r)++c,k=r;else if(/^[a-zA-Z]/.test(r)&&(m=n(r.toLowerCase(),[])))"tagName"in m&&(r=m.tagName),++c,k=r;for(p=q=m="";D&&c<f;++c)if(r=a[c],"#"===r.charAt(0))/^#_|__$|[^\w#:\-]/.test(r)?D=d:m+=r+l;else if("."===r)++c<f&&/^[0-9A-Za-z:_\-]+$/.test(r=a[c])&&!/^_|__$/.test(r)?m+="."+r:D=d;else if(c+1<f&&"["===a[c]){++c;var s=a[c++].toLowerCase();r=x.m[k+"::"+s];r!==+r&&(r=x.m["*::"+ H={};H["\x3e"]=H["+"]=H["~"]=H;p=function(a,e,f){function g(q,p){function t(c,f,g){var k,m,q,p,r,s=b;k="";if(c<f)if(r=a[c],"*"===r)++c,k=r;else if(/^[a-zA-Z]/.test(r)&&(m=n(r.toLowerCase(),[])))"tagName"in m&&(r=m.tagName),++c,k=r;for(p=q=m="";s&&c<f;++c)if(r=a[c],"#"===r.charAt(0))/^#_|__$|[^\w#:\-]/.test(r)?s=d:m+=r+l;else if("."===r)++c<f&&/^[0-9A-Za-z:_\-]+$/.test(r=a[c])&&!/^_|__$/.test(r)?m+="."+r:s=d;else if(c+1<f&&"["===a[c]){++c;var D=a[c++].toLowerCase();r=x.m[k+"::"+D];r!==+r&&(r=x.m["*::"+
s]);var z;e.ia?(z=e.ia(k,s),"string"!==typeof z&&(D=d,z=s),D&&r!==+r&&(r=x.d.NONE)):(z=s,r!==+r&&(D=d));var v=s="",A=d;/^[~^$*|]?=$/.test(a[c])&&(s=a[c++],v=a[c++],/^[0-9A-Za-z:_\-]+$/.test(v)?v='"'+v+'"':"]"===v&&(v='""',--c),/^"([^\"\\]|\\.)*"$/.test(v)||(D=d),(A="i"===a[c])&&++c);"]"!==a[c]&&(++c,D=d);switch(r){case x.d.CLASSES:case x.d.LOCAL_NAME:case x.d.NONE:break;case x.d.GLOBAL_NAME:case x.d.ID:case x.d.IDREF:("\x3d"===s||"~\x3d"===s||"$\x3d"===s)&&'""'!=v&&!A?v='"'+v.substring(1,v.length- D]);var z;e.ia?(z=e.ia(k,D),"string"!==typeof z&&(s=d,z=D),s&&r!==+r&&(r=x.d.NONE)):(z=D,r!==+r&&(s=d));var v=D="",A=d;/^[~^$*|]?=$/.test(a[c])&&(D=a[c++],v=a[c++],/^[0-9A-Za-z:_\-]+$/.test(v)?v='"'+v+'"':"]"===v&&(v='""',--c),/^"([^\"\\]|\\.)*"$/.test(v)||(s=d),(A="i"===a[c])&&++c);"]"!==a[c]&&(++c,s=d);switch(r){case x.d.CLASSES:case x.d.LOCAL_NAME:case x.d.NONE:break;case x.d.GLOBAL_NAME:case x.d.ID:case x.d.IDREF:("\x3d"===D||"~\x3d"===D||"$\x3d"===D)&&'""'!=v&&!A?v='"'+v.substring(1,v.length-
1)+l+'"':"|\x3d"===s||""===s||(D=d);break;case x.d.URI:case x.d.URI_FRAGMENT:""!==s&&(D=d);break;default:D=d}D&&(q+="["+z.replace(/[^\w-]/g,"\\$\x26")+s+v+(A?" i]":"]"))}else if(c<f&&":"===a[c])if(r=a[++c],G.test(r))p+=":"+r;else break;else break;c!==f&&(D=d);D&&(c=(k+m).replace(/[^ .*#\w-]/g,"\\$\x26")+q+p+g)&&u.push(c);return D}" "===a[q]&&++q;p-1!==q&&" "===a[p]&&--p;for(var u=[],r=q,D=b,s=q;D&&s<p;++s){var z=a[s];if(H[z]===H||" "===z)t(r,s,z)?r=s+1:D=d}t(r,p,"")||(D=d);return D?(u.length&&(r= 1)+l+'"':"|\x3d"===D||""===D||(s=d);break;case x.d.URI:case x.d.URI_FRAGMENT:""!==D&&(s=d);break;default:s=d}s&&(q+="["+z.replace(/[^\w-]/g,"\\$\x26")+D+v+(A?" i]":"]"))}else if(c<f&&":"===a[c])if(r=a[++c],G.test(r))p+=":"+r;else break;else break;c!==f&&(s=d);s&&(c=(k+m).replace(/[^ .*#\w-]/g,"\\$\x26")+q+p+g)&&u.push(c);return s}" "===a[q]&&++q;p-1!==q&&" "===a[p]&&--p;for(var u=[],r=q,s=b,D=q;s&&D<p;++D){var z=a[D];if(H[z]===H||" "===z)t(r,D,z)?r=D+1:s=d}t(r,p,"")||(s=d);return s?(u.length&&(r=
u.join(""),k!==c&&(r="."+k+" "+r),m.push(r)),b):!f||f(a.slice(q,p))}var k=e.na,l=e.L,n=e.Aa,m=[],q=0,p,t=0,u;for(p=0;p<a.length;++p)if(u=a[p],"("==u||"["==u?(++t,b):")"==u||"]"==u?(t&&--t,b):!(" "==a[p]&&(t||H[a[p-1]]===H||H[a[p+1]]===H)))a[q++]=a[p];a.length=q;q=a.length;for(p=t=0;p<q;++p)if(","===a[p]){if(!g(t,p))return c;t=p+1}return!g(t,q)?c:m};(function(){var a=/^\w/,b=RegExp("^(?:(?:(?:(?:only|not) )?(?:all|aural|braille|embossed|handheld|print|projection|screen|speech|tty|tv)|\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))(?: and ?\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))*)(?: , (?:(?:(?:(?:only|not) )?(?:all|aural|braille|embossed|handheld|print|projection|screen|speech|tty|tv)|\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))(?: and ?\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))*))*$", u.join(""),k!==c&&(r="."+k+" "+r),m.push(r)),b):!f||f(a.slice(q,p))}var k=e.na,l=e.L,n=e.Aa,m=[],q=0,p,t=0,u;for(p=0;p<a.length;++p)if(u=a[p],"("==u||"["==u?(++t,b):")"==u||"]"==u?(t&&--t,b):!(" "==a[p]&&(t||H[a[p-1]]===H||H[a[p+1]]===H)))a[q++]=a[p];a.length=q;q=a.length;for(p=t=0;p<q;++p)if(","===a[p]){if(!g(t,p))return c;t=p+1}return!g(t,q)?c:m};(function(){var a=/^\w/,b=RegExp("^(?:(?:(?:(?:only|not) )?(?:all|aural|braille|embossed|handheld|print|projection|screen|speech|tty|tv)|\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))(?: and ?\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))*)(?: , (?:(?:(?:(?:only|not) )?(?:all|aural|braille|embossed|handheld|print|projection|screen|speech|tty|tv)|\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))(?: and ?\\( (?:(?:min-|max-)?(?:(?:device-)?(?:aspect-ratio|height|width)|color(?:-index)?|monochrome|orientation|resolution)|grid|hover|luminosity|pointer|scan|script) (?:: -?(?:[a-z]\\w+(?:-\\w+)*|\\d+(?: / \\d+|(?:\\.\\d+)?(?:p[cxt]|[cem]m|in|dpi|dppx|dpcm|%)?)) )?\\))*))*$",
"i");r=function(c){c=c.slice();for(var d=c.length,e=0,f=0;f<d;++f){var g=c[f];" "!=g&&(c[e++]=g)}c.length=e;c=c.join(" ");return!c.length?"":!b.test(c)?"not all":a.test(c)?c:"not all , "+c}})();(function(){function e(a){var b=/^\s*[']([^']*)[']\s*$/,d=/^\s*url\s*[(]["]([^"]*)["][)]\s*$/,f=/^\s*url\s*[(][']([^']*)['][)]\s*$/,g=/^\s*url\s*[(]([^)]*)[)]\s*$/,k;return(k=/^\s*["]([^"]*)["]\s*$/.exec(a))||(k=b.exec(a))||(k=d.exec(a))||(k=f.exec(a))||(k=g.exec(a))?k[1]:c}function f(g,l,n,x,u,G,D){function s(){C= "i");r=function(c){c=c.slice();for(var d=c.length,e=0,f=0;f<d;++f){var g=c[f];" "!=g&&(c[e++]=g)}c.length=e;c=c.join(" ");return!c.length?"":!b.test(c)?"not all":a.test(c)?c:"not all , "+c}})();(function(){function e(a){var b=/^\s*[']([^']*)[']\s*$/,d=/^\s*url\s*[(]["]([^"]*)["][)]\s*$/,f=/^\s*url\s*[(][']([^']*)['][)]\s*$/,g=/^\s*url\s*[(]([^)]*)[)]\s*$/,k;return(k=/^\s*["]([^"]*)["]\s*$/.exec(a))||(k=b.exec(a))||(k=d.exec(a))||(k=f.exec(a))||(k=g.exec(a))?k[1]:c}function f(g,l,n,x,u,G,s){function D(){C=
H.length&&H[H.length-1]===c}var A=a,F=D||[0],H=[],C=d;q(l,{startStylesheet:function(){A=[]},endStylesheet:function(){},startAtrule:function(a,b){if(C)a=c;else if("@media"===a)A.push("@media"," ",r(b));else if("@keyframes"===a||"@-webkit-keyframes"===a){var d=b[0];1===b.length&&!/__$|[^\w\-]/.test(d)?(A.push(a," ",d+n.L),a="@keyframes"):a=c}else if("@import"===a&&0<b.length)if(a=c,"function"===typeof G){var l=r(b.slice(1));if("not all"!==l){++F[0];var m=[];A.push(m);var q=t(k(g,e(b[0])),function(a){var b= H.length&&H[H.length-1]===c}var A=a,F=s||[0],H=[],C=d;q(l,{startStylesheet:function(){A=[]},endStylesheet:function(){},startAtrule:function(a,b){if(C)a=c;else if("@media"===a)A.push("@media"," ",r(b));else if("@keyframes"===a||"@-webkit-keyframes"===a){var d=b[0];1===b.length&&!/__$|[^\w\-]/.test(d)?(A.push(a," ",d+n.L),a="@keyframes"):a=c}else if("@import"===a&&0<b.length)if(a=c,"function"===typeof G){var l=r(b.slice(1));if("not all"!==l){++F[0];var m=[];A.push(m);var q=t(k(g,e(b[0])),function(a){var b=
f(q,a.qa,n,x,u,G,F);--F[0];a=l?{toString:function(){return"@media "+l+" {"+b.result+"}"}}:b.result;m[0]=a;G(a,!!F[0])},u)}}else window.console&&window.console.log("@import "+b.join(" ")+" elided");C=!a;H.push(a)},endAtrule:function(){H.pop();C||A.push(";");s()},startBlock:function(){C||A.push("{")},endBlock:function(){C||(A.push("}"),C=b)},startRuleset:function(d){if(!C){var e=a;"@keyframes"===H[H.length-1]?(e=d.join(" ").match(/^ *(?:from|to|\d+(?:\.\d+)?%) *(?:, *(?:from|to|\d+(?:\.\d+)?%) *)*$/i), f(q,a.qa,n,x,u,G,F);--F[0];a=l?{toString:function(){return"@media "+l+" {"+b.result+"}"}}:b.result;m[0]=a;G(a,!!F[0])},u)}}else window.console&&window.console.log("@import "+b.join(" ")+" elided");C=!a;H.push(a)},endAtrule:function(){H.pop();C||A.push(";");D()},startBlock:function(){C||A.push("{")},endBlock:function(){C||(A.push("}"),C=b)},startRuleset:function(d){if(!C){var e=a;"@keyframes"===H[H.length-1]?(e=d.join(" ").match(/^ *(?:from|to|\d+(?:\.\d+)?%) *(?:, *(?:from|to|\d+(?:\.\d+)?%) *)*$/i),
C=!e,e&&(e=e[0].replace(/ +/g,""))):(d=p(d,n),!d||!d.length?C=b:e=d.join(", "));C||A.push(e,"{")}H.push(c)},endRuleset:function(){H.pop();C||A.push("}");s()},declaration:function(a,c){if(!C){var e=d,f=c.length;2<=f&&"!"===c[f-2]&&"important"===c[f-1].toLowerCase()&&(e=b,c.length-=2);m(a,c,x,g,n.L);c.length&&A.push(a,":",c.join(" "),e?" !important;":";")}}});return{result:{toString:function(){return A.join("")}},va:!!F[0]}}s=function(b,c,d,e){return f(b,c,d,e,a,a).result.toString()}})()})();"undefined"!== C=!e,e&&(e=e[0].replace(/ +/g,""))):(d=p(d,n),!d||!d.length?C=b:e=d.join(", "));C||A.push(e,"{")}H.push(c)},endRuleset:function(){H.pop();C||A.push("}");D()},declaration:function(a,c){if(!C){var e=d,f=c.length;2<=f&&"!"===c[f-2]&&"important"===c[f-1].toLowerCase()&&(e=b,c.length-=2);m(a,c,x,g,n.L);c.length&&A.push(a,":",c.join(" "),e?" !important;":";")}}});return{result:{toString:function(){return A.join("")}},va:!!F[0]}}s=function(b,c,d,e){return f(b,c,d,e,a,a).result.toString()}})()})();"undefined"!==
typeof window&&(window.sanitizeCssProperty=m,window.sanitizeCssSelectorList=p,window.sanitizeStylesheet=s,window.sanitizeMediaQuery=r);var q,t;(function(){function a(b,d,e,f,g){for(var k=d++;d<e&&"{"!==b[d]&&";"!==b[d];)++d;if(d<e&&(g||";"===b[d])){g=k+1;var l=d;g<e&&" "===b[g]&&++g;l>g&&" "===b[l-1]&&--l;f.startAtrule&&f.startAtrule(b[k].toLowerCase(),b.slice(g,l));d="{"===b[d]?c(b,d,e,f):d+1;f.endAtrule&&f.endAtrule()}return d}function c(b,f,g,k){++f;for(k.startBlock&&k.startBlock();f<g;){var l= typeof window&&(window.sanitizeCssProperty=m,window.sanitizeCssSelectorList=p,window.sanitizeStylesheet=s,window.sanitizeMediaQuery=r);var q,t;(function(){function a(b,d,e,f,g){for(var k=d++;d<e&&"{"!==b[d]&&";"!==b[d];)++d;if(d<e&&(g||";"===b[d])){g=k+1;var l=d;g<e&&" "===b[g]&&++g;l>g&&" "===b[l-1]&&--l;f.startAtrule&&f.startAtrule(b[k].toLowerCase(),b.slice(g,l));d="{"===b[d]?c(b,d,e,f):d+1;f.endAtrule&&f.endAtrule()}return d}function c(b,f,g,k){++f;for(k.startBlock&&k.startBlock();f<g;){var l=
b[f].charAt(0);if("}"==l){++f;break}f=" "===l||";"===l?f+1:"@"===l?a(b,f,g,k,d):"{"===l?c(b,f,g,k):e(b,f,g,k)}k.endBlock&&k.endBlock();return f}function e(a,c,d,g){var k=c,n=f(a,c,d,b);if(0>n)return n=~n,n===k?n+1:n;var m=a[n];if("{"!==m)return n===k?n+1:n;c=n+1;n>k&&" "===a[n-1]&&--n;for(g.startRuleset&&g.startRuleset(a.slice(k,n));c<d;){m=a[c];if("}"===m){++c;break}c=" "===m?c+1:l(a,c,d,g)}g.endRuleset&&g.endRuleset();return c}function f(a,b,c,d){for(var e,g=[],k=-1;b<c;++b)if(e=a[b].charAt(0), b[f].charAt(0);if("}"==l){++f;break}f=" "===l||";"===l?f+1:"@"===l?a(b,f,g,k,d):"{"===l?c(b,f,g,k):e(b,f,g,k)}k.endBlock&&k.endBlock();return f}function e(a,c,d,g){var k=c,n=f(a,c,d,b);if(0>n)return n=~n,n===k?n+1:n;var m=a[n];if("{"!==m)return n===k?n+1:n;c=n+1;n>k&&" "===a[n-1]&&--n;for(g.startRuleset&&g.startRuleset(a.slice(k,n));c<d;){m=a[c];if("}"===m){++c;break}c=" "===m?c+1:l(a,c,d,g)}g.endRuleset&&g.endRuleset();return c}function f(a,b,c,d){for(var e,g=[],k=-1;b<c;++b)if(e=a[b].charAt(0),
"["===e||"("===e)g[++k]=e;else if("]"===e&&"["===g[k]||")"===e&&"("===g[k])--k;else if("{"===e||"}"===e||";"===e||"@"===e||":"===e&&!d)break;0<=k&&(b=~(b+1));return b}function g(a,b,c){for(;b<c&&";"!==a[b]&&"}"!==a[b];)++b;return b<c&&";"===a[b]?b+1:b}function l(a,b,c,e){var k=a[b++];if(!n.test(k))return g(a,b,c);b<c&&" "===a[b]&&++b;if(b==c||":"!==a[b])return g(a,b,c);++b;b<c&&" "===a[b]&&++b;var m=f(a,b,c,d);if(0>m)m=~m;else{for(var q=[],p=0,t=b;t<m;++t)b=a[t]," "!==b&&(q[p++]=b);if(m<c){do{b=a[m]; "["===e||"("===e)g[++k]=e;else if("]"===e&&"["===g[k]||")"===e&&"("===g[k])--k;else if("{"===e||"}"===e||";"===e||"@"===e||":"===e&&!d)break;0<=k&&(b=~(b+1));return b}function g(a,b,c){for(;b<c&&";"!==a[b]&&"}"!==a[b];)++b;return b<c&&";"===a[b]?b+1:b}function l(a,b,c,e){var k=a[b++];if(!n.test(k))return g(a,b,c);b<c&&" "===a[b]&&++b;if(b==c||":"!==a[b])return g(a,b,c);++b;b<c&&" "===a[b]&&++b;var m=f(a,b,c,d);if(0>m)m=~m;else{for(var q=[],p=0,t=b;t<m;++t)b=a[t]," "!==b&&(q[p++]=b);if(m<c){do{b=a[m];
@ -204,7 +204,7 @@ if(null==window.mxLanguages){window.mxLanguages=[];for(var lang in mxLanguageMap
if("1"==urlParams.offline||"1"==urlParams.demo||"1"==urlParams.stealth||"1"==urlParams.local)urlParams.analytics="0",urlParams.picker="0",urlParams.gapi="0",urlParams.db="0",urlParams.od="0";if("1"==urlParams.offline||"1"==urlParams.local)urlParams.math="0";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||1E8;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save"; if("1"==urlParams.offline||"1"==urlParams.demo||"1"==urlParams.stealth||"1"==urlParams.local)urlParams.analytics="0",urlParams.picker="0",urlParams.gapi="0",urlParams.db="0",urlParams.od="0";if("1"==urlParams.offline||"1"==urlParams.local)urlParams.math="0";window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||1E8;window.EXPORT_URL=window.EXPORT_URL||"/export";window.SAVE_URL=window.SAVE_URL||"/save";
window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images";window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang; window.OPEN_URL=window.OPEN_URL||"/open";window.RESOURCES_PATH=window.RESOURCES_PATH||"resources";window.RESOURCE_BASE=window.RESOURCE_BASE||window.RESOURCES_PATH+"/grapheditor";window.STENCIL_PATH=window.STENCIL_PATH||"stencils";window.IMAGE_PATH=window.IMAGE_PATH||"images";window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;
window.mxLanguages=window.mxLanguages||["de"]; window.mxLanguages=window.mxLanguages||["de"];
var mxClient={VERSION:"3.6.0.0",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&& var mxClient={VERSION:"3.6.0.1",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&
0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&& 0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&&
0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&& 0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&&
0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")|| 0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")||
@ -1068,16 +1068,16 @@ mxGraphSelectionModel.prototype.addCells=function(a){if(null!=a){var b=null;this
mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}}; mxGraphSelectionModel.prototype.removeCells=function(a){if(null!=a){for(var b=[],c=0;c<a.length;c++)this.isSelected(a[c])&&b.push(a[c]);this.changeSelection(null,b)}};mxGraphSelectionModel.prototype.changeSelection=function(a,b){if(null!=a&&0<a.length&&null!=a[0]||null!=b&&0<b.length&&null!=b[0]){var c=new mxSelectionChange(this,a,b);c.execute();var d=new mxUndoableEdit(this,!1);d.add(c);this.fireEvent(new mxEventObject(mxEvent.UNDO,"edit",d))}};
mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null} mxGraphSelectionModel.prototype.cellAdded=function(a){null!=a&&!this.isSelected(a)&&this.cells.push(a)};mxGraphSelectionModel.prototype.cellRemoved=function(a){null!=a&&(a=mxUtils.indexOf(this.cells,a),0<=a&&this.cells.splice(a,1))};function mxSelectionChange(a,b,c){this.selectionModel=a;this.added=null!=b?b.slice():null;this.removed=null!=c?c.slice():null}
mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)|| mxSelectionChange.prototype.execute=function(){var a=mxLog.enter("mxSelectionChange.execute");window.status=mxResources.get(this.selectionModel.updatingSelectionResource)||this.selectionModel.updatingSelectionResource;if(null!=this.removed)for(var b=0;b<this.removed.length;b++)this.selectionModel.cellRemoved(this.removed[b]);if(null!=this.added)for(b=0;b<this.added.length;b++)this.selectionModel.cellAdded(this.added[b]);b=this.added;this.added=this.removed;this.removed=b;window.status=mxResources.get(this.selectionModel.doneResource)||
this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler)}mxCellEditor.prototype.graph=null; this.selectionModel.doneResource;mxLog.leave("mxSelectionChange.execute",a);this.selectionModel.fireEvent(new mxEventObject(mxEvent.CHANGE,"added",this.added,"removed",this.removed))};
mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20); function mxCellEditor(a){this.graph=a;this.zoomHandler=mxUtils.bind(this,function(){this.graph.isEditing()&&this.resize()});this.graph.view.addListener(mxEvent.SCALE,this.zoomHandler);this.graph.view.addListener(mxEvent.SCALE_AND_TRANSLATE,this.zoomHandler);this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null==this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler)}
mxCellEditor.prototype.graph=null;mxCellEditor.prototype.textarea=null;mxCellEditor.prototype.editingCell=null;mxCellEditor.prototype.trigger=null;mxCellEditor.prototype.modified=!1;mxCellEditor.prototype.autoSize=!0;mxCellEditor.prototype.selectText=!0;mxCellEditor.prototype.emptyLabelText=mxClient.IS_FF?"\x3cbr\x3e":"";mxCellEditor.prototype.escapeCancelsEditing=!0;mxCellEditor.prototype.textNode="";mxCellEditor.prototype.zIndex=5;mxCellEditor.prototype.minResize=new mxRectangle(0,20);
mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)}; mxCellEditor.prototype.wordWrapPadding=mxClient.IS_QUIRKS?2:!mxClient.IS_IE11?1:0;mxCellEditor.prototype.blurEnabled=!1;mxCellEditor.prototype.initialValue=null;mxCellEditor.prototype.init=function(){this.textarea=document.createElement("div");this.textarea.className="mxCellEditor mxPlainTextEditor";this.textarea.contentEditable=!0;this.installListeners(this.textarea)};mxCellEditor.prototype.applyValue=function(a,b){this.graph.labelChanged(a.cell,b,this.trigger)};
mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&8!=document.documentMode&&9!=document.documentMode&&10!=document.documentMode&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")}; mxCellEditor.prototype.getInitialValue=function(a,b){var c=mxUtils.htmlEntities(this.graph.getEditingValue(a.cell,b),!1);!mxClient.IS_QUIRKS&&8!=document.documentMode&&9!=document.documentMode&&10!=document.documentMode&&(c=mxUtils.replaceTrailingNewlines(c,"\x3cdiv\x3e\x3cbr\x3e\x3c/div\x3e"));return c.replace(/\n/g,"\x3cbr\x3e")};
mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a}; mxCellEditor.prototype.getCurrentValue=function(a){a=mxUtils.extractTextWithWhitespace(this.textarea.childNodes);0<a.length&&"\n"==a.charAt(a.length-1)&&(a=a.substring(0,a.length-1));return a};
mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));this.changeHandler=mxUtils.bind(this,function(a){null!=this.editingCell&&null== mxCellEditor.prototype.installListeners=function(a){mxEvent.addListener(a,"blur",mxUtils.bind(this,function(a){this.blurEnabled&&this.focusLost(a)}));mxEvent.addListener(a,"keydown",mxUtils.bind(this,function(a){mxEvent.isConsumed(a)||(this.isStopEditingEvent(a)?(this.graph.stopEditing(!1),mxEvent.consume(a)):27==a.keyCode&&(this.graph.stopEditing(this.escapeCancelsEditing||mxEvent.isShiftDown(a)),mxEvent.consume(a)))}));var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&
this.graph.getView().getState(this.editingCell)&&this.stopEditing(!0)});this.graph.getModel().addListener(mxEvent.CHANGE,this.changeHandler);var b=mxUtils.bind(this,function(b){if(null!=this.editingCell&&this.clearOnChange&&a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length|| a.innerHTML==this.getEmptyLabelText()&&(!mxClient.IS_FF||8!=b.keyCode&&46!=b.keyCode))this.clearOnChange=!1,a.innerHTML=""});mxEvent.addListener(a,"keypress",b);mxEvent.addListener(a,"paste",b);b=mxUtils.bind(this,function(a){null!=this.editingCell&&(0==this.textarea.innerHTML.length||"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?
"\x3cbr\x3e"==this.textarea.innerHTML?(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=0<this.textarea.innerHTML.length):this.clearOnChange=!1)});mxEvent.addListener(a,!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&this.autoSize&&!mxEvent.isConsumed(a)&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread), "input":"keyup",b);mxEvent.addListener(a,"cut",b);mxEvent.addListener(a,"paste",b);var b=!mxClient.IS_IE11&&!mxClient.IS_IE?"input":"keydown",c=mxUtils.bind(this,function(a){null!=this.editingCell&&this.autoSize&&!mxEvent.isConsumed(a)&&(null!=this.resizeThread&&window.clearTimeout(this.resizeThread),this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",
this.resizeThread=window.setTimeout(mxUtils.bind(this,function(){this.resizeThread=null;this.resize()}),0))});mxEvent.addListener(a,b,c);9<=document.documentMode?(mxEvent.addListener(a,"DOMNodeRemoved",c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)}; c),mxEvent.addListener(a,"DOMNodeInserted",c)):(mxEvent.addListener(a,"cut",c),mxEvent.addListener(a,"paste",c))};mxCellEditor.prototype.isStopEditingEvent=function(a){return 113==a.keyCode||this.graph.isEnterStopsCellEditing()&&13==a.keyCode&&!mxEvent.isControlDown(a)&&!mxEvent.isShiftDown(a)};mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.isEventSource=function(a){return mxEvent.getSource(a)==this.textarea};
mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left= mxCellEditor.prototype.resize=function(){var a=this.graph.getView().getState(this.editingCell);if(null==a)this.stopEditing(!0);else{var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=null;if(!this.autoSize||"fill"==a.style[mxConstants.STYLE_OVERFLOW])this.bounds=this.getEditorBounds(a),this.textarea.style.width=Math.round(this.bounds.width/c)+"px",this.textarea.style.height=Math.round(this.bounds.height/c)+"px",8==document.documentMode||mxClient.IS_QUIRKS?(this.textarea.style.left=
Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width= Math.round(this.bounds.x)+"px",this.textarea.style.top=Math.round(this.bounds.y)+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x+1))+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y+1))+"px"),this.graph.isWrapping(a.cell)&&(2<=this.bounds.width||2<=this.bounds.height)&&this.textarea.innerHTML!=this.getEmptyLabelText()?(this.textarea.style.wordWrap=mxConstants.WORD_WRAP,this.textarea.style.whiteSpace="normal","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=
Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds= Math.round(this.bounds.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));else{var e=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_WIDTH,null),d=null!=a.text?a.text.margin:null;null==d&&(d=mxUtils.getAlignmentAsPoint(mxUtils.getValue(a.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_CENTER),mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE)));if(b)this.bounds=
@ -1095,13 +1095,13 @@ mxConstants.DEFAULT_TEXT_DIRECTION);d==mxConstants.TEXT_DIRECTION_AUTO&&null!=c&
(this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}), (this.textarea.innerHTML=this.getEmptyLabelText(),this.clearOnChange=!0):this.clearOnChange=this.textarea.innerHTML==this.getEmptyLabelText();this.graph.container.appendChild(this.textarea);this.editingCell=a;this.trigger=b;this.textNode=null;null!=c.text&&this.isHideLabel(c)&&(this.textNode=c.text.node,this.textNode.style.visibility="hidden");this.autoSize&&(this.graph.model.isEdge(c.cell)||"fill"!=c.style[mxConstants.STYLE_OVERFLOW])&&window.setTimeout(mxUtils.bind(this,function(){this.resize()}),
0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange)&&document.execCommand("selectAll",!1,null)}catch(m){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText}; 0);this.resize();if(null!=this.textarea)try{this.textarea.focus(),this.isSelectText()&&0<this.textarea.innerHTML.length&&(this.textarea.innerHTML!=this.getEmptyLabelText()||!this.clearOnChange)&&document.execCommand("selectAll",!1,null)}catch(m){}}};mxCellEditor.prototype.isSelectText=function(){return this.selectText};
mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="", mxCellEditor.prototype.stopEditing=function(a){if(null!=this.editingCell){null!=this.textNode&&(this.textNode.style.visibility="visible",this.textNode=null);a=!a?this.graph.view.getState(this.editingCell):null;var b=this.initialValue;this.bounds=this.trigger=this.editingCell=this.initialValue=null;this.textarea.blur();null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea);this.clearOnChange&&this.textarea.innerHTML==this.getEmptyLabelText()&&(this.textarea.innerHTML="",
this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b))}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)}; this.clearOnChange=!1);null!=a&&this.textarea.innerHTML!=b&&(b=this.getCurrentValue(a),null!=b&&this.applyValue(a,b));mxEvent.release(this.textarea);this.textarea=null}};mxCellEditor.prototype.isHideLabel=function(a){return!0};mxCellEditor.prototype.getMinimumSize=function(a){var b=this.graph.getView().scale;return new mxRectangle(0,0,null==a.text?30:a.text.size*b+20,"left"==this.textarea.style.textAlign?120:40)};
mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,k=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]|| mxCellEditor.prototype.getEditorBounds=function(a){var b=this.graph.getModel().isEdge(a.cell),c=this.graph.getView().scale,d=this.getMinimumSize(a),e=d.width,d=d.height,f=null;if(!b&&a.view.graph.cellRenderer.legacySpacing&&"fill"==a.style[mxConstants.STYLE_OVERFLOW])f=a.shape.getLabelBounds(mxRectangle.fromRectangle(a));else{var g=parseInt(a.style[mxConstants.STYLE_SPACING]||0)*c,k=(parseInt(a.style[mxConstants.STYLE_SPACING_TOP]||0)+mxText.prototype.baseSpacingTop)*c+g,f=(parseInt(a.style[mxConstants.STYLE_SPACING_RIGHT]||
0)+mxText.prototype.baseSpacingRight)*c+g,l=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-k-l)),l=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&& 0)+mxText.prototype.baseSpacingRight)*c+g,l=(parseInt(a.style[mxConstants.STYLE_SPACING_BOTTOM]||0)+mxText.prototype.baseSpacingBottom)*c+g,c=(parseInt(a.style[mxConstants.STYLE_SPACING_LEFT]||0)+mxText.prototype.baseSpacingLeft)*c+g,f=new mxRectangle(a.x,a.y,Math.max(e,a.width-c-f),Math.max(d,a.height-k-l)),l=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),g=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),f=null!=a.shape&&
l==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=k;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width), l==mxConstants.ALIGN_CENTER&&g==mxConstants.ALIGN_MIDDLE?a.shape.getLabelBounds(f):f;b?(f.x=a.absoluteOffset.x,f.y=a.absoluteOffset.y,null!=a.text&&null!=a.text.boundingBox&&(0<a.text.boundingBox.x&&(f.x=a.text.boundingBox.x),0<a.text.boundingBox.y&&(f.y=a.text.boundingBox.y))):null!=a.text&&null!=a.text.boundingBox&&(f.x=Math.min(f.x,a.text.boundingBox.x),f.y=Math.min(f.y,a.text.boundingBox.y));f.x+=c;f.y+=k;null!=a.text&&null!=a.text.boundingBox&&(b?(f.width=Math.max(e,a.text.boundingBox.width),
f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b== f.height=Math.max(d,a.text.boundingBox.height)):(f.width=Math.max(f.width,a.text.boundingBox.width),f.height=Math.max(f.height,a.text.boundingBox.height)));this.graph.getModel().isVertex(a.cell)&&(b=mxUtils.getValue(a.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER),b==mxConstants.ALIGN_LEFT?f.x-=a.width:b==mxConstants.ALIGN_RIGHT&&(f.x+=a.width),b=mxUtils.getValue(a.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE),b==mxConstants.ALIGN_TOP?f.y-=a.height:b==
mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell}; mxConstants.ALIGN_BOTTOM&&(f.y+=a.height))}return new mxRectangle(Math.round(f.x),Math.round(f.y),Math.round(f.width),Math.round(f.height))};mxCellEditor.prototype.getEmptyLabelText=function(a){return this.emptyLabelText};mxCellEditor.prototype.getEditingCell=function(){return this.editingCell};
mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null,null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null),this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null))};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector; mxCellEditor.prototype.destroy=function(){null!=this.textarea&&(mxEvent.release(this.textarea),null!=this.textarea.parentNode&&this.textarea.parentNode.removeChild(this.textarea),this.textarea=null);null!=this.changeHandler&&(this.graph.getModel().removeListener(this.changeHandler),this.changeHandler=null);this.zoomHandler&&(this.graph.view.removeListener(this.zoomHandler),this.zoomHandler=null)};function mxCellRenderer(){}mxCellRenderer.prototype.defaultEdgeShape=mxConnector;
mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape); mxCellRenderer.prototype.defaultVertexShape=mxRectangleShape;mxCellRenderer.prototype.defaultTextShape=mxText;mxCellRenderer.prototype.legacyControlPosition=!0;mxCellRenderer.prototype.legacySpacing=!0;mxCellRenderer.prototype.defaultShapes={};mxCellRenderer.prototype.antiAlias=!0;mxCellRenderer.prototype.forceControlClickHandler=!1;mxCellRenderer.registerShape=function(a,b){mxCellRenderer.prototype.defaultShapes[a]=b};mxCellRenderer.registerShape(mxConstants.SHAPE_RECTANGLE,mxRectangleShape);
mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon); mxCellRenderer.registerShape(mxConstants.SHAPE_ELLIPSE,mxEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_RHOMBUS,mxRhombus);mxCellRenderer.registerShape(mxConstants.SHAPE_CYLINDER,mxCylinder);mxCellRenderer.registerShape(mxConstants.SHAPE_CONNECTOR,mxConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_ACTOR,mxActor);mxCellRenderer.registerShape(mxConstants.SHAPE_TRIANGLE,mxTriangle);mxCellRenderer.registerShape(mxConstants.SHAPE_HEXAGON,mxHexagon);
mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape); mxCellRenderer.registerShape(mxConstants.SHAPE_CLOUD,mxCloud);mxCellRenderer.registerShape(mxConstants.SHAPE_LINE,mxLine);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW,mxArrow);mxCellRenderer.registerShape(mxConstants.SHAPE_ARROW_CONNECTOR,mxArrowConnector);mxCellRenderer.registerShape(mxConstants.SHAPE_DOUBLE_ELLIPSE,mxDoubleEllipse);mxCellRenderer.registerShape(mxConstants.SHAPE_SWIMLANE,mxSwimlane);mxCellRenderer.registerShape(mxConstants.SHAPE_IMAGE,mxImageShape);
@ -2146,17 +2146,17 @@ EditorUi.prototype.showImageDialog=function(a,b,c,d){d=this.editor.graph.cellEdi
EditorUi.prototype.showBackgroundImageDialog=function(a){a=null!=a?a:mxUtils.bind(this,function(a){this.setBackgroundImage(a)});var b=mxUtils.prompt(mxResources.get("backgroundImage"),"");if(null!=b&&0<b.length){var c=new Image;c.onload=function(){a(new mxImage(b,c.width,c.height))};c.onerror=function(){a(null);mxUtils.alert(mxResources.get("fileNotFound"))};c.src=b}else a(null)}; EditorUi.prototype.showBackgroundImageDialog=function(a){a=null!=a?a:mxUtils.bind(this,function(a){this.setBackgroundImage(a)});var b=mxUtils.prompt(mxResources.get("backgroundImage"),"");if(null!=b&&0<b.length){var c=new Image;c.onload=function(){a(new mxImage(b,c.width,c.height))};c.onerror=function(){a(null);mxUtils.alert(mxResources.get("fileNotFound"))};c.src=b}else a(null)};
EditorUi.prototype.setBackgroundImage=function(a){this.editor.graph.setBackgroundImage(a);this.editor.graph.view.validateBackgroundImage();this.fireEvent(new mxEventObject("backgroundImageChanged"))};EditorUi.prototype.confirm=function(a,b,c){mxUtils.confirm(a)?null!=b&&b():null!=c&&c()}; EditorUi.prototype.setBackgroundImage=function(a){this.editor.graph.setBackgroundImage(a);this.editor.graph.view.validateBackgroundImage();this.fireEvent(new mxEventObject("backgroundImageChanged"))};EditorUi.prototype.confirm=function(a,b,c){mxUtils.confirm(a)?null!=b&&b():null!=c&&c()};
EditorUi.prototype.createOutline=function(a){var b=new mxOutline(this.editor.graph);b.border=20;mxEvent.addListener(window,"resize",function(){b.update()});this.addListener("pageFormatChanged",function(){b.update()});return b}; EditorUi.prototype.createOutline=function(a){var b=new mxOutline(this.editor.graph);b.border=20;mxEvent.addListener(window,"resize",function(){b.update()});this.addListener("pageFormatChanged",function(){b.update()});return b};
EditorUi.prototype.createKeyHandler=function(a){function b(a,b,c){l.push(function(){if(!d.isSelectionEmpty()&&d.isEnabled())if(b=null!=b?b:1,c){d.getModel().beginUpdate();try{for(var e=d.getSelectionCells(),f=0;f<e.length;f++)if(d.getModel().isVertex(e[f])&&d.isCellResizable(e[f])){var g=d.getCellGeometry(e[f]);null!=g&&(g=g.clone(),37==a?g.width=Math.max(0,g.width-b):38==a?g.height=Math.max(0,g.height-b):39==a?g.width+=b:40==a&&(g.height+=b),d.getModel().setGeometry(e[f],g))}}finally{d.getModel().endUpdate()}}else e= EditorUi.prototype.createKeyHandler=function(a){function b(a,b,c){g.push(function(){if(!d.isSelectionEmpty()&&d.isEnabled())if(b=null!=b?b:1,c){d.getModel().beginUpdate();try{for(var e=d.getSelectionCells(),f=0;f<e.length;f++)if(d.getModel().isVertex(e[f])&&d.isCellResizable(e[f])){var g=d.getCellGeometry(e[f]);null!=g&&(g=g.clone(),37==a?g.width=Math.max(0,g.width-b):38==a?g.height=Math.max(0,g.height-b):39==a?g.width+=b:40==a&&(g.height+=b),d.getModel().setGeometry(e[f],g))}}finally{d.getModel().endUpdate()}}else e=
d.getSelectionCell(),f=d.model.getParent(e),g=null,1==d.getSelectionCount()&&d.model.isVertex(e)&&(null!=d.layoutManager&&!d.isCellLocked(e))&&(g=d.layoutManager.getLayout(f)),null!=g&&g.constructor==mxStackLayout?(g=f.getIndex(e),37==a||38==a?d.model.add(f,e,Math.max(0,g-1)):(39==a||40==a)&&d.model.add(f,e,Math.min(d.model.getChildCount(f),g+1))):(f=e=0,37==a?e=-b:38==a?f=-b:39==a?e=b:40==a&&(f=b),d.moveCells(d.getMovableCells(d.getSelectionCells()),e,f))});null!=n&&window.clearTimeout(n);n=window.setTimeout(function(){if(0< d.getSelectionCell(),f=d.model.getParent(e),g=null,1==d.getSelectionCount()&&d.model.isVertex(e)&&(null!=d.layoutManager&&!d.isCellLocked(e))&&(g=d.layoutManager.getLayout(f)),null!=g&&g.constructor==mxStackLayout?(g=f.getIndex(e),37==a||38==a?d.model.add(f,e,Math.max(0,g-1)):(39==a||40==a)&&d.model.add(f,e,Math.min(d.model.getChildCount(f),g+1))):(f=e=0,37==a?e=-b:38==a?f=-b:39==a?e=b:40==a&&(f=b),d.moveCells(d.getMovableCells(d.getSelectionCells()),e,f))});null!=k&&window.clearTimeout(k);k=window.setTimeout(function(){if(0<
l.length){d.getModel().beginUpdate();try{for(var a=0;a<l.length;a++)l[a]();l=[]}finally{d.getModel().endUpdate()}d.scrollCellToVisible(d.getSelectionCell())}},200)}var c=this,d=this.editor.graph,e=new mxKeyHandler(d),f=e.isEventIgnored;e.isEventIgnored=function(a){return(!this.isControlDown(a)||mxEvent.isShiftDown(a)||90!=a.keyCode&&89!=a.keyCode&&188!=a.keyCode&&190!=a.keyCode)&&(66!=a.keyCode&&73!=a.keyCode&&85!=a.keyCode||!this.isControlDown(a)||this.graph.cellEditor.isContentEditing()&&!mxClient.IS_FF&& g.length){d.getModel().beginUpdate();try{for(var a=0;a<g.length;a++)g[a]();g=[]}finally{d.getModel().endUpdate()}d.scrollCellToVisible(d.getSelectionCell())}},200)}var c=this,d=this.editor.graph,e=new mxKeyHandler(d),f=e.isEventIgnored;e.isEventIgnored=function(a){return(!this.isControlDown(a)||mxEvent.isShiftDown(a)||90!=a.keyCode&&89!=a.keyCode&&188!=a.keyCode&&190!=a.keyCode)&&(66!=a.keyCode&&73!=a.keyCode&&85!=a.keyCode||!this.isControlDown(a)||this.graph.cellEditor.isContentEditing()&&!mxClient.IS_FF&&
!mxClient.IS_SF)&&f.apply(this,arguments)};e.isEnabledForEvent=function(a){return!mxEvent.isConsumed(a)&&this.isGraphEvent(a)&&this.isEnabled()};e.isControlDown=function(a){return mxEvent.isControlDown(a)||mxClient.IS_MAC&&a.metaKey};var g={37:mxConstants.DIRECTION_WEST,38:mxConstants.DIRECTION_NORTH,39:mxConstants.DIRECTION_EAST,40:mxConstants.DIRECTION_SOUTH},k=e.getFunction;mxKeyHandler.prototype.getFunction=function(a){if(null!=g[a.keyCode]){var e=d.getSelectionCell();if(d.model.isVertex(e))return mxEvent.isShiftDown(a)&& !mxClient.IS_SF)&&f.apply(this,arguments)};e.isEnabledForEvent=function(a){return!mxEvent.isConsumed(a)&&this.isGraphEvent(a)&&this.isEnabled()};e.isControlDown=function(a){return mxEvent.isControlDown(a)||mxClient.IS_MAC&&a.metaKey};var g=[],k=null,l={37:mxConstants.DIRECTION_WEST,38:mxConstants.DIRECTION_NORTH,39:mxConstants.DIRECTION_EAST,40:mxConstants.DIRECTION_SOUTH},n=e.getFunction;mxKeyHandler.prototype.getFunction=function(a){if(null!=l[a.keyCode]&&!d.isSelectionEmpty())if(mxEvent.isShiftDown(a)&&
mxEvent.isAltDown(a)?function(){var b=d.connectVertex(e,g[a.keyCode],d.defaultEdgeLength,a,!0);null!=b&&0<b.length&&(1==b.length&&d.model.isEdge(b[0])?d.setSelectionCell(d.model.getTerminal(b[0],!1)):d.setSelectionCell(b[b.length-1]),null!=c.hoverIcons&&c.hoverIcons.update(d.view.getState(d.getSelectionCell())))}:this.isControlDown(a)?function(){b(a.keyCode,mxEvent.isShiftDown(a)?d.gridSize:null,!0)}:function(){b(a.keyCode,mxEvent.isShiftDown(a)?d.gridSize:null)}}return k.apply(this,arguments)};var l= mxEvent.isAltDown(a)){if(d.model.isVertex(d.getSelectionCell()))return function(){var b=d.connectVertex(d.getSelectionCell(),l[a.keyCode],d.defaultEdgeLength,a,!0);null!=b&&0<b.length&&(1==b.length&&d.model.isEdge(b[0])?d.setSelectionCell(d.model.getTerminal(b[0],!1)):d.setSelectionCell(b[b.length-1]),null!=c.hoverIcons&&c.hoverIcons.update(d.view.getState(d.getSelectionCell())))}}else return this.isControlDown(a)?function(){b(a.keyCode,mxEvent.isShiftDown(a)?d.gridSize:null,!0)}:function(){b(a.keyCode,
[],n=null;e.bindAction=mxUtils.bind(this,function(a,b,c,d){var f=this.actions.get(c);null!=f&&(c=function(){f.isEnabled()&&f.funct()},b?d?e.bindControlShiftKey(a,c):e.bindControlKey(a,c):d?e.bindShiftKey(a,c):e.bindKey(a,c))});var m=e.escape;e.escape=function(a){m.apply(this,arguments)};e.enter=function(){};e.bindControlShiftKey(36,function(){d.exitGroup()});e.bindControlShiftKey(35,function(){d.enterGroup()});e.bindKey(36,function(){d.home()});e.bindKey(35,function(){d.refresh()});e.bindAction(107, mxEvent.isShiftDown(a)?d.gridSize:null)};return n.apply(this,arguments)};e.bindAction=mxUtils.bind(this,function(a,b,c,d){var f=this.actions.get(c);null!=f&&(c=function(){f.isEnabled()&&f.funct()},b?d?e.bindControlShiftKey(a,c):e.bindControlKey(a,c):d?e.bindShiftKey(a,c):e.bindKey(a,c))});var m=e.escape;e.escape=function(a){m.apply(this,arguments)};e.enter=function(){};e.bindControlShiftKey(36,function(){d.exitGroup()});e.bindControlShiftKey(35,function(){d.enterGroup()});e.bindKey(36,function(){d.home()});
!0,"zoomIn");e.bindAction(109,!0,"zoomOut");e.bindAction(80,!0,"print");e.bindAction(79,!0,"outline",!0);e.bindAction(112,!1,"about");this.editor.chromeless||(e.bindControlKey(36,function(){d.isEnabled()&&d.foldCells(!0)}),e.bindControlKey(35,function(){d.isEnabled()&&d.foldCells(!1)}),e.bindControlKey(13,function(){d.isEnabled()&&d.setSelectionCells(d.duplicateCells(d.getSelectionCells(),!1))}),e.bindShiftKey(9,function(){d.isEnabled()&&d.selectPreviousCell()}),e.bindControlKey(9,function(){d.isEnabled()&& e.bindKey(35,function(){d.refresh()});e.bindAction(107,!0,"zoomIn");e.bindAction(109,!0,"zoomOut");e.bindAction(80,!0,"print");e.bindAction(79,!0,"outline",!0);e.bindAction(112,!1,"about");this.editor.chromeless||(e.bindControlKey(36,function(){d.isEnabled()&&d.foldCells(!0)}),e.bindControlKey(35,function(){d.isEnabled()&&d.foldCells(!1)}),e.bindControlKey(13,function(){d.isEnabled()&&d.setSelectionCells(d.duplicateCells(d.getSelectionCells(),!1))}),e.bindShiftKey(9,function(){d.isEnabled()&&d.selectPreviousCell()}),
d.selectParentCell()}),e.bindControlShiftKey(9,function(){d.isEnabled()&&d.selectChildCell()}),e.bindAction(8,!1,"delete"),e.bindAction(8,!0,"deleteAll"),e.bindAction(46,!1,"delete"),e.bindAction(46,!0,"deleteAll"),e.bindAction(72,!0,"resetView"),e.bindAction(72,!0,"fitWindow",!0),e.bindAction(74,!0,"fitPage"),e.bindAction(74,!0,"fitTwoPages",!0),e.bindAction(48,!0,"customZoom"),e.bindAction(82,!0,"turn"),e.bindAction(82,!0,"clearDefaultStyle",!0),e.bindAction(83,!0,"save"),e.bindAction(83,!0,"saveAs", e.bindControlKey(9,function(){d.isEnabled()&&d.selectParentCell()}),e.bindControlShiftKey(9,function(){d.isEnabled()&&d.selectChildCell()}),e.bindAction(8,!1,"delete"),e.bindAction(8,!0,"deleteAll"),e.bindAction(46,!1,"delete"),e.bindAction(46,!0,"deleteAll"),e.bindAction(72,!0,"resetView"),e.bindAction(72,!0,"fitWindow",!0),e.bindAction(74,!0,"fitPage"),e.bindAction(74,!0,"fitTwoPages",!0),e.bindAction(48,!0,"customZoom"),e.bindAction(82,!0,"turn"),e.bindAction(82,!0,"clearDefaultStyle",!0),e.bindAction(83,
!0),e.bindAction(65,!0,"selectAll"),e.bindAction(65,!0,"selectNone",!0),e.bindAction(73,!0,"selectVertices",!0),e.bindAction(69,!0,"selectEdges",!0),e.bindAction(69,!0,"editStyle"),e.bindAction(66,!0,"bold"),e.bindAction(66,!0,"toBack",!0),e.bindAction(70,!0,"toFront",!0),e.bindAction(68,!0,"duplicate"),e.bindAction(68,!0,"setAsDefaultStyle",!0),e.bindAction(90,!0,"undo"),e.bindAction(89,!0,"autosize",!0),e.bindAction(88,!0,"cut"),e.bindAction(67,!0,"copy"),e.bindAction(81,!0,"connectionArrows"), !0,"save"),e.bindAction(83,!0,"saveAs",!0),e.bindAction(65,!0,"selectAll"),e.bindAction(65,!0,"selectNone",!0),e.bindAction(73,!0,"selectVertices",!0),e.bindAction(69,!0,"selectEdges",!0),e.bindAction(69,!0,"editStyle"),e.bindAction(66,!0,"bold"),e.bindAction(66,!0,"toBack",!0),e.bindAction(70,!0,"toFront",!0),e.bindAction(68,!0,"duplicate"),e.bindAction(68,!0,"setAsDefaultStyle",!0),e.bindAction(90,!0,"undo"),e.bindAction(89,!0,"autosize",!0),e.bindAction(88,!0,"cut"),e.bindAction(67,!0,"copy"),
e.bindAction(81,!0,"connectionPoints",!0),e.bindAction(86,!0,"paste"),e.bindAction(71,!0,"group"),e.bindAction(77,!0,"editData"),e.bindAction(71,!0,"grid",!0),e.bindAction(73,!0,"italic"),e.bindAction(76,!0,"lockUnlock"),e.bindAction(76,!0,"layers",!0),e.bindAction(80,!0,"formatPanel",!0),e.bindAction(85,!0,"underline"),e.bindAction(85,!0,"ungroup",!0),e.bindAction(190,!0,"superscript"),e.bindAction(188,!0,"subscript"),e.bindKey(13,function(){d.isEnabled()&&d.startEditingAtCell()}),e.bindKey(113, e.bindAction(81,!0,"connectionArrows"),e.bindAction(81,!0,"connectionPoints",!0),e.bindAction(86,!0,"paste"),e.bindAction(71,!0,"group"),e.bindAction(77,!0,"editData"),e.bindAction(71,!0,"grid",!0),e.bindAction(73,!0,"italic"),e.bindAction(76,!0,"lockUnlock"),e.bindAction(76,!0,"layers",!0),e.bindAction(80,!0,"formatPanel",!0),e.bindAction(85,!0,"underline"),e.bindAction(85,!0,"ungroup",!0),e.bindAction(190,!0,"superscript"),e.bindAction(188,!0,"subscript"),e.bindKey(13,function(){d.isEnabled()&&
function(){d.isEnabled()&&d.startEditingAtCell()}));mxClient.IS_WIN?e.bindAction(89,!0,"redo"):e.bindAction(90,!0,"redo",!0);return e}; d.startEditingAtCell()}),e.bindKey(113,function(){d.isEnabled()&&d.startEditingAtCell()}));mxClient.IS_WIN?e.bindAction(89,!0,"redo"):e.bindAction(90,!0,"redo",!0);return e};
EditorUi.prototype.destroy=function(){null!=this.editor&&(this.editor.destroy(),this.editor=null);null!=this.menubar&&(this.menubar.destroy(),this.menubar=null);null!=this.toolbar&&(this.toolbar.destroy(),this.toolbar=null);null!=this.sidebar&&(this.sidebar.destroy(),this.sidebar=null);null!=this.keyHandler&&(this.keyHandler.destroy(),this.keyHandler=null);null!=this.keydownHandler&&(mxEvent.removeListener(document,"keydown",this.keydownHandler),this.keydownHandler=null);null!=this.keyupHandler&& EditorUi.prototype.destroy=function(){null!=this.editor&&(this.editor.destroy(),this.editor=null);null!=this.menubar&&(this.menubar.destroy(),this.menubar=null);null!=this.toolbar&&(this.toolbar.destroy(),this.toolbar=null);null!=this.sidebar&&(this.sidebar.destroy(),this.sidebar=null);null!=this.keyHandler&&(this.keyHandler.destroy(),this.keyHandler=null);null!=this.keydownHandler&&(mxEvent.removeListener(document,"keydown",this.keydownHandler),this.keydownHandler=null);null!=this.keyupHandler&&
(mxEvent.removeListener(document,"keyup",this.keyupHandler),this.keyupHandler=null);null!=this.resizeHandler&&(mxEvent.removeListener(window,"resize",this.resizeHandler),this.resizeHandler=null);null!=this.gestureHandler&&(mxEvent.removeGestureListeners(document,this.gestureHandler),this.gestureHandler=null);null!=this.orientationChangeHandler&&(mxEvent.removeListener(window,"orientationchange",this.orientationChangeHandler),this.orientationChangeHandler=null);null!=this.scrollHandler&&(mxEvent.removeListener(window, (mxEvent.removeListener(document,"keyup",this.keyupHandler),this.keyupHandler=null);null!=this.resizeHandler&&(mxEvent.removeListener(window,"resize",this.resizeHandler),this.resizeHandler=null);null!=this.gestureHandler&&(mxEvent.removeGestureListeners(document,this.gestureHandler),this.gestureHandler=null);null!=this.orientationChangeHandler&&(mxEvent.removeListener(window,"orientationchange",this.orientationChangeHandler),this.orientationChangeHandler=null);null!=this.scrollHandler&&(mxEvent.removeListener(window,
"scroll",this.scrollHandler),this.scrollHandler=null);if(null!=this.destroyFunctions){for(var a=0;a<this.destroyFunctions.length;a++)this.destroyFunctions[a]();this.destroyFunctions=null}for(var b=[this.menubarContainer,this.toolbarContainer,this.sidebarContainer,this.formatContainer,this.diagramContainer,this.footerContainer,this.chromelessToolbar,this.hsplit,this.sidebarFooterContainer,this.layersDialog],a=0;a<b.length;a++)null!=b[a]&&null!=b[a].parentNode&&b[a].parentNode.removeChild(b[a])}; "scroll",this.scrollHandler),this.scrollHandler=null);if(null!=this.destroyFunctions){for(var a=0;a<this.destroyFunctions.length;a++)this.destroyFunctions[a]();this.destroyFunctions=null}for(var b=[this.menubarContainer,this.toolbarContainer,this.sidebarContainer,this.formatContainer,this.diagramContainer,this.footerContainer,this.chromelessToolbar,this.hsplit,this.sidebarFooterContainer,this.layersDialog],a=0;a<b.length;a++)null!=b[a]&&null!=b[a].parentNode&&b[a].parentNode.removeChild(b[a])};
@ -2702,21 +2702,21 @@ e.action?(b=1==e.autosave,null!=e.modified&&null==urlParams.modified&&(urlParams
f),this.addListener("mathEnabledChanged",f),this.addListener("gridEnabledChanged",f),this.addListener("guidesEnabledChanged",f),this.addListener("pageViewChanged",f));("1"==urlParams.returnbounds||"json"==urlParams.proto)&&d.postMessage(JSON.stringify(this.createLoadMessage("load")),"*")}));var d=window.opener||window.parent,c="json"==urlParams.proto?JSON.stringify({event:"init"}):urlParams.ready||"ready";d.postMessage(c,"*")};EditorUi.prototype.addEmbedButtons=function(){if(null!=this.menubar){var a= f),this.addListener("mathEnabledChanged",f),this.addListener("gridEnabledChanged",f),this.addListener("guidesEnabledChanged",f),this.addListener("pageViewChanged",f));("1"==urlParams.returnbounds||"json"==urlParams.proto)&&d.postMessage(JSON.stringify(this.createLoadMessage("load")),"*")}));var d=window.opener||window.parent,c="json"==urlParams.proto?JSON.stringify({event:"init"}):urlParams.ready||"ready";d.postMessage(c,"*")};EditorUi.prototype.addEmbedButtons=function(){if(null!=this.menubar){var a=
document.createElement("div");a.style.display="inline-block";a.style.position="absolute";a.style.paddingTop="atlas"==uiTheme?"2px":"3px";a.style.paddingLeft="8px";a.style.paddingBottom="2px";var b=document.createElement("button");mxUtils.write(b,mxResources.get("save"));b.className="geBigButton";b.style.fontSize="12px";b.style.padding="4px 6px 4px 6px";b.style.borderRadius="3px";mxEvent.addListener(b,"click",mxUtils.bind(this,function(){this.actions.get("save").funct()}));a.appendChild(b);"1"==urlParams.saveAndExit&& document.createElement("div");a.style.display="inline-block";a.style.position="absolute";a.style.paddingTop="atlas"==uiTheme?"2px":"3px";a.style.paddingLeft="8px";a.style.paddingBottom="2px";var b=document.createElement("button");mxUtils.write(b,mxResources.get("save"));b.className="geBigButton";b.style.fontSize="12px";b.style.padding="4px 6px 4px 6px";b.style.borderRadius="3px";mxEvent.addListener(b,"click",mxUtils.bind(this,function(){this.actions.get("save").funct()}));a.appendChild(b);"1"==urlParams.saveAndExit&&
(b=document.createElement("a"),mxUtils.write(b,mxResources.get("saveAndExit")),b.style.fontSize="12px",b.style.marginLeft="6px",b.style.padding="4px",b.style.cursor="pointer",mxEvent.addListener(b,"click",mxUtils.bind(this,function(){this.actions.get("saveAndExit").funct()})),a.appendChild(b));b=document.createElement("a");mxUtils.write(b,mxResources.get("exit"));b.style.fontSize="12px";b.style.marginLeft="6px";b.style.marginRight="20px";b.style.padding="4px";b.style.cursor="pointer";mxEvent.addListener(b, (b=document.createElement("a"),mxUtils.write(b,mxResources.get("saveAndExit")),b.style.fontSize="12px",b.style.marginLeft="6px",b.style.padding="4px",b.style.cursor="pointer",mxEvent.addListener(b,"click",mxUtils.bind(this,function(){this.actions.get("saveAndExit").funct()})),a.appendChild(b));b=document.createElement("a");mxUtils.write(b,mxResources.get("exit"));b.style.fontSize="12px";b.style.marginLeft="6px";b.style.marginRight="20px";b.style.padding="4px";b.style.cursor="pointer";mxEvent.addListener(b,
"click",mxUtils.bind(this,function(){this.actions.get("exit").funct()}));a.appendChild(b);this.toolbar.container.appendChild(a);this.toolbar.staticElements.push(a);a.style.right="42px"}};EditorUi.prototype.getSearch=function(a){var b="";if("1"!=urlParams.offline&&"1"!=urlParams.demo&&null!=a&&0<window.location.search.length){var c="?",d;for(d in urlParams)0>mxUtils.indexOf(a,d)&&null!=urlParams[d]&&(b+=c+d+"\x3d"+urlParams[d],c="\x26")}else b=window.location.search;return b};EditorUi.prototype.getUrl= "click",mxUtils.bind(this,function(){this.actions.get("exit").funct()}));a.appendChild(b);this.toolbar.container.appendChild(a);this.toolbar.staticElements.push(a);a.style.right="atlas"!=uiTheme?"52px":"42px"}};EditorUi.prototype.getSearch=function(a){var b="";if("1"!=urlParams.offline&&"1"!=urlParams.demo&&null!=a&&0<window.location.search.length){var c="?",d;for(d in urlParams)0>mxUtils.indexOf(a,d)&&null!=urlParams[d]&&(b+=c+d+"\x3d"+urlParams[d],c="\x26")}else b=window.location.search;return b};
function(a){a=null!=a?a:window.location.pathname;var b=0<a.indexOf("?")?1:0;if("1"==urlParams.offline)a+=window.location.search;else{var c="tmp libs clibs state fileId code share notitle url embed client create title splash".split(" "),d;for(d in urlParams)0>mxUtils.indexOf(c,d)&&(a=0==b?a+"?":a+"\x26",null!=urlParams[d]&&(a+=d+"\x3d"+urlParams[d],b++))}return a};var n=EditorUi.prototype.createOutline;EditorUi.prototype.createOutline=function(a){var b=n.apply(this,arguments),c=this.editor.graph,d= EditorUi.prototype.getUrl=function(a){a=null!=a?a:window.location.pathname;var b=0<a.indexOf("?")?1:0;if("1"==urlParams.offline)a+=window.location.search;else{var c="tmp libs clibs state fileId code share notitle url embed client create title splash".split(" "),d;for(d in urlParams)0>mxUtils.indexOf(c,d)&&(a=0==b?a+"?":a+"\x26",null!=urlParams[d]&&(a+=d+"\x3d"+urlParams[d],b++))}return a};var n=EditorUi.prototype.createOutline;EditorUi.prototype.createOutline=function(a){var b=n.apply(this,arguments),
b.getSourceGraphBounds;b.getSourceGraphBounds=function(){if(mxUtils.hasScrollbars(c.container)&&c.pageVisible&&null!=this.source.minimumGraphSize){var a=this.source.getPagePadding(),b=this.source.view.scale;return new mxRectangle(0,0,Math.ceil(this.source.minimumGraphSize.width-2*a.x/b),Math.ceil(this.source.minimumGraphSize.height-2*a.y/b))}return d.apply(this,arguments)};var e=b.getSourceContainerSize;b.getSourceContainerSize=function(){if(mxUtils.hasScrollbars(c.container)&&null!=this.source.minimumGraphSize){var a= c=this.editor.graph,d=b.getSourceGraphBounds;b.getSourceGraphBounds=function(){if(mxUtils.hasScrollbars(c.container)&&c.pageVisible&&null!=this.source.minimumGraphSize){var a=this.source.getPagePadding(),b=this.source.view.scale;return new mxRectangle(0,0,Math.ceil(this.source.minimumGraphSize.width-2*a.x/b),Math.ceil(this.source.minimumGraphSize.height-2*a.y/b))}return d.apply(this,arguments)};var e=b.getSourceContainerSize;b.getSourceContainerSize=function(){if(mxUtils.hasScrollbars(c.container)&&
this.source.getPagePadding(),b=this.source.view.scale;return new mxRectangle(0,0,Math.ceil(this.source.minimumGraphSize.width*b-2*a.x),Math.ceil(this.source.minimumGraphSize.height*b-2*a.y))}return e.apply(this,arguments)};b.getOutlineOffset=function(a){if(mxUtils.hasScrollbars(c.container)&&null!=this.source.minimumGraphSize){var d=this.source.getPagePadding(),e=Math.max(0,(b.outline.container.clientWidth/a-(this.source.minimumGraphSize.width-2*d.x))/2),f=Math.max(0,(b.outline.container.clientHeight/ null!=this.source.minimumGraphSize){var a=this.source.getPagePadding(),b=this.source.view.scale;return new mxRectangle(0,0,Math.ceil(this.source.minimumGraphSize.width*b-2*a.x),Math.ceil(this.source.minimumGraphSize.height*b-2*a.y))}return e.apply(this,arguments)};b.getOutlineOffset=function(a){if(mxUtils.hasScrollbars(c.container)&&null!=this.source.minimumGraphSize){var d=this.source.getPagePadding(),e=Math.max(0,(b.outline.container.clientWidth/a-(this.source.minimumGraphSize.width-2*d.x))/2),
a-(this.source.minimumGraphSize.height-2*d.y))/2);return new mxPoint(Math.round(e-d.x),Math.round(f-d.y-5/a))}return new mxPoint(8/a,8/a)};var f=b.init;b.init=function(){f.apply(this,arguments);b.outline.view.getBackgroundPageBounds=function(){var a=c.getPageLayout(),b=c.getPageSize();return new mxRectangle(this.scale*(this.translate.x+a.x*b.width),this.scale*(this.translate.y+a.y*b.height),this.scale*a.width*b.width,this.scale*a.height*b.height)};b.outline.view.validateBackgroundPage()};this.editor.addListener("pageSelected", f=Math.max(0,(b.outline.container.clientHeight/a-(this.source.minimumGraphSize.height-2*d.y))/2);return new mxPoint(Math.round(e-d.x),Math.round(f-d.y-5/a))}return new mxPoint(8/a,8/a)};var f=b.init;b.init=function(){f.apply(this,arguments);b.outline.view.getBackgroundPageBounds=function(){var a=c.getPageLayout(),b=c.getPageSize();return new mxRectangle(this.scale*(this.translate.x+a.x*b.width),this.scale*(this.translate.y+a.y*b.height),this.scale*a.width*b.width,this.scale*a.height*b.height)};b.outline.view.validateBackgroundPage()};
function(a,c){var d=c.getProperty("change"),e=b.source,f=b.outline;f.pageScale=e.pageScale;f.pageFormat=e.pageFormat;f.background=e.background;f.pageVisible=e.pageVisible;f.background=e.background;var g=mxUtils.getCurrentStyle(e.container);f.container.style.backgroundColor=g.backgroundColor;null!=e.view.backgroundPageShape&&null!=f.view.backgroundPageShape&&(f.view.backgroundPageShape.fill=e.view.backgroundPageShape.fill);b.outline.view.clear(d.previousPage.root,!0);b.outline.view.validate()});return b}; this.editor.addListener("pageSelected",function(a,c){var d=c.getProperty("change"),e=b.source,f=b.outline;f.pageScale=e.pageScale;f.pageFormat=e.pageFormat;f.background=e.background;f.pageVisible=e.pageVisible;f.background=e.background;var g=mxUtils.getCurrentStyle(e.container);f.container.style.backgroundColor=g.backgroundColor;null!=e.view.backgroundPageShape&&null!=f.view.backgroundPageShape&&(f.view.backgroundPageShape.fill=e.view.backgroundPageShape.fill);b.outline.view.clear(d.previousPage.root,
var m=EditorUi.prototype.updateActionStates;EditorUi.prototype.updateActionStates=function(){m.apply(this,arguments);var a=this.editor.graph,b=this.getCurrentFile(),c=null!=b&&b.isEditable()||"1"==urlParams.embed;this.actions.get("pageSetup").setEnabled(c);this.actions.get("autosave").setEnabled(null!=b&&b.isEditable()&&b.isAutosaveOptional());this.actions.get("guides").setEnabled(c);this.actions.get("shadowVisible").setEnabled(c);this.actions.get("connectionArrows").setEnabled(c);this.actions.get("connectionPoints").setEnabled(c); !0);b.outline.view.validate()});return b};var m=EditorUi.prototype.updateActionStates;EditorUi.prototype.updateActionStates=function(){m.apply(this,arguments);var a=this.editor.graph,b=this.getCurrentFile(),c=null!=b&&b.isEditable()||"1"==urlParams.embed;this.actions.get("pageSetup").setEnabled(c);this.actions.get("autosave").setEnabled(null!=b&&b.isEditable()&&b.isAutosaveOptional());this.actions.get("guides").setEnabled(c);this.actions.get("shadowVisible").setEnabled(c);this.actions.get("connectionArrows").setEnabled(c);
this.actions.get("copyStyle").setEnabled(c&&!a.isSelectionEmpty());this.actions.get("pasteStyle").setEnabled(c&&!a.isSelectionEmpty());this.actions.get("editGeometry").setEnabled(a.getModel().isVertex(a.getSelectionCell()));this.actions.get("createShape").setEnabled(c);this.actions.get("createRevision").setEnabled(c);this.actions.get("moveToFolder").setEnabled(null!=b);this.actions.get("makeCopy").setEnabled(null!=b&&!b.isRestricted());this.actions.get("editDiagram").setEnabled("1"==urlParams.embed|| this.actions.get("connectionPoints").setEnabled(c);this.actions.get("copyStyle").setEnabled(c&&!a.isSelectionEmpty());this.actions.get("pasteStyle").setEnabled(c&&!a.isSelectionEmpty());this.actions.get("editGeometry").setEnabled(a.getModel().isVertex(a.getSelectionCell()));this.actions.get("createShape").setEnabled(c);this.actions.get("createRevision").setEnabled(c);this.actions.get("moveToFolder").setEnabled(null!=b);this.actions.get("makeCopy").setEnabled(null!=b&&!b.isRestricted());this.actions.get("editDiagram").setEnabled("1"==
null!=b&&!b.isRestricted());this.actions.get("imgur").setEnabled(null!=b&&!b.isRestricted());this.actions.get("github").setEnabled(null!=b&&!b.isRestricted());a=a.view.getState(a.getSelectionCell());this.actions.get("editShape").setEnabled(c&&null!=a&&null!=a.shape&&null!=a.shape.stencil)};Graph.prototype.defaultThemeName="default-style2";Graph.prototype.lastPasteXml=null;Graph.prototype.pasteCounter=0;Graph.prototype.edgeMode="move"!=urlParams.edge;var p=Graph.prototype.loadStylesheet;Graph.prototype.loadStylesheet= urlParams.embed||null!=b&&!b.isRestricted());this.actions.get("imgur").setEnabled(null!=b&&!b.isRestricted());this.actions.get("github").setEnabled(null!=b&&!b.isRestricted());a=a.view.getState(a.getSelectionCell());this.actions.get("editShape").setEnabled(c&&null!=a&&null!=a.shape&&null!=a.shape.stencil)};Graph.prototype.defaultThemeName="default-style2";Graph.prototype.lastPasteXml=null;Graph.prototype.pasteCounter=0;Graph.prototype.edgeMode="move"!=urlParams.edge;var p=Graph.prototype.loadStylesheet;
function(){p.apply(this,arguments);this.currentStyle="default-style2"};Graph.prototype.defaultScrollbars="0"!=urlParams.sb;Graph.prototype.defaultPageVisible="0"!=urlParams.pv;Graph.prototype.setShadowVisible=function(a,b){mxClient.IS_SVG&&(b=null!=b?b:!0,(this.shadowVisible=a)?this.view.getDrawPane().setAttribute("filter","url(#dropShadow)"):this.view.getDrawPane().removeAttribute("filter"),b&&this.fireEvent(new mxEventObject("shadowVisibleChanged")))};var s=Graph.prototype.init;Graph.prototype.init= Graph.prototype.loadStylesheet=function(){p.apply(this,arguments);this.currentStyle="default-style2"};Graph.prototype.defaultScrollbars="0"!=urlParams.sb;Graph.prototype.defaultPageVisible="0"!=urlParams.pv;Graph.prototype.setShadowVisible=function(a,b){mxClient.IS_SVG&&(b=null!=b?b:!0,(this.shadowVisible=a)?this.view.getDrawPane().setAttribute("filter","url(#dropShadow)"):this.view.getDrawPane().removeAttribute("filter"),b&&this.fireEvent(new mxEventObject("shadowVisibleChanged")))};var s=Graph.prototype.init;
function(){function a(c){b=c;if(mxClient.IS_QUIRKS||7==document.documentMode||8==document.documentMode)b=mxUtils.clone(c)}s.apply(this,arguments);var b=null;mxEvent.addListener(this.container,"mouseenter",a);mxEvent.addListener(this.container,"mousemove",a);mxEvent.addListener(this.container,"mouseleave",function(a){b=null});this.isMouseInsertPoint=function(){return null!=b};var c=this.getInsertPoint;this.getInsertPoint=function(){return null!=b?this.getPointForEvent(b):c.apply(this,arguments)};var d= Graph.prototype.init=function(){function a(c){b=c;if(mxClient.IS_QUIRKS||7==document.documentMode||8==document.documentMode)b=mxUtils.clone(c)}s.apply(this,arguments);var b=null;mxEvent.addListener(this.container,"mouseenter",a);mxEvent.addListener(this.container,"mousemove",a);mxEvent.addListener(this.container,"mouseleave",function(a){b=null});this.isMouseInsertPoint=function(){return null!=b};var c=this.getInsertPoint;this.getInsertPoint=function(){return null!=b?this.getPointForEvent(b):c.apply(this,
this.layoutManager.getLayout;this.layoutManager.getLayout=function(a){var b=this.graph.view.getState(a),b=null!=b?b.style:this.graph.getCellStyle(a);if("undefined"!=typeof mxRackContainer&&"rack"==b.childLayout){var c=new mxStackLayout(this.graph,!1);c.setChildGeometry=function(a,b){b.height=Math.max(b.height,20);if(1<b.height/20){var c=b.height%20;b.height+=10<c?20-c:-c}this.graph.getModel().setGeometry(a,b)};c.fill=!0;c.unitSize=mxRackContainer.unitSize|20;c.marginLeft=b.marginLeft||0;c.marginRight= arguments)};var d=this.layoutManager.getLayout;this.layoutManager.getLayout=function(a){var b=this.graph.view.getState(a),b=null!=b?b.style:this.graph.getCellStyle(a);if("undefined"!=typeof mxRackContainer&&"rack"==b.childLayout){var c=new mxStackLayout(this.graph,!1);c.setChildGeometry=function(a,b){b.height=Math.max(b.height,20);if(1<b.height/20){var c=b.height%20;b.height+=10<c?20-c:-c}this.graph.getModel().setGeometry(a,b)};c.fill=!0;c.unitSize=mxRackContainer.unitSize|20;c.marginLeft=b.marginLeft||
b.marginRight||0;c.marginTop=b.marginTop||0;c.marginBottom=b.marginBottom||0;c.resizeParent=!1;return c}return d.apply(this,arguments)}};mxStencilRegistry.libraries.arrows2=[SHAPES_PATH+"/mxArrows.js"];mxStencilRegistry.libraries.bpmn=[SHAPES_PATH+"/bpmn/mxBpmnShape2.js",STENCIL_PATH+"/bpmn.xml"];mxStencilRegistry.libraries.er=[SHAPES_PATH+"/er/mxER.js"];mxStencilRegistry.libraries.ios=[SHAPES_PATH+"/mockup/mxMockupiOS.js"];mxStencilRegistry.libraries.rackGeneral=[SHAPES_PATH+"/rack/mxRack.js",STENCIL_PATH+ 0;c.marginRight=b.marginRight||0;c.marginTop=b.marginTop||0;c.marginBottom=b.marginBottom||0;c.resizeParent=!1;return c}return d.apply(this,arguments)}};mxStencilRegistry.libraries.arrows2=[SHAPES_PATH+"/mxArrows.js"];mxStencilRegistry.libraries.bpmn=[SHAPES_PATH+"/bpmn/mxBpmnShape2.js",STENCIL_PATH+"/bpmn.xml"];mxStencilRegistry.libraries.er=[SHAPES_PATH+"/er/mxER.js"];mxStencilRegistry.libraries.ios=[SHAPES_PATH+"/mockup/mxMockupiOS.js"];mxStencilRegistry.libraries.rackGeneral=[SHAPES_PATH+"/rack/mxRack.js",
"/rack/general.xml"];mxStencilRegistry.libraries.rackF5=[STENCIL_PATH+"/rack/f5.xml"];mxStencilRegistry.libraries.lean_mapping=[SHAPES_PATH+"/mxLeanMap.js",STENCIL_PATH+"/lean_mapping.xml"];mxStencilRegistry.libraries.basic=[SHAPES_PATH+"/mxBasic.js",STENCIL_PATH+"/basic.xml"];mxStencilRegistry.libraries.ios7icons=[STENCIL_PATH+"/ios7/icons.xml"];mxStencilRegistry.libraries.ios7ui=[SHAPES_PATH+"/ios7/mxIOS7Ui.js",STENCIL_PATH+"/ios7/misc.xml"];mxStencilRegistry.libraries.android=[SHAPES_PATH+"/mxAndroid.js", STENCIL_PATH+"/rack/general.xml"];mxStencilRegistry.libraries.rackF5=[STENCIL_PATH+"/rack/f5.xml"];mxStencilRegistry.libraries.lean_mapping=[SHAPES_PATH+"/mxLeanMap.js",STENCIL_PATH+"/lean_mapping.xml"];mxStencilRegistry.libraries.basic=[SHAPES_PATH+"/mxBasic.js",STENCIL_PATH+"/basic.xml"];mxStencilRegistry.libraries.ios7icons=[STENCIL_PATH+"/ios7/icons.xml"];mxStencilRegistry.libraries.ios7ui=[SHAPES_PATH+"/ios7/mxIOS7Ui.js",STENCIL_PATH+"/ios7/misc.xml"];mxStencilRegistry.libraries.android=[SHAPES_PATH+
STENCIL_PATH+"/android/android.xml"];mxStencilRegistry.libraries.eeLogicGates=[STENCIL_PATH+"/electrical/logic_gates.xml"];mxStencilRegistry.libraries.eeResistors=[STENCIL_PATH+"/electrical/resistors.xml"];mxStencilRegistry.libraries.eeCapacitors=[STENCIL_PATH+"/electrical/capacitors.xml"];mxStencilRegistry.libraries.eeInductors=[STENCIL_PATH+"/electrical/inductors.xml"];mxStencilRegistry.libraries.eeSwitchesRelays=[STENCIL_PATH+"/electrical/switchesRelays.xml",STENCIL_PATH+"/electrical/electro-mechanical.xml"]; "/mxAndroid.js",STENCIL_PATH+"/android/android.xml"];mxStencilRegistry.libraries.eeLogicGates=[STENCIL_PATH+"/electrical/logic_gates.xml"];mxStencilRegistry.libraries.eeResistors=[STENCIL_PATH+"/electrical/resistors.xml"];mxStencilRegistry.libraries.eeCapacitors=[STENCIL_PATH+"/electrical/capacitors.xml"];mxStencilRegistry.libraries.eeInductors=[STENCIL_PATH+"/electrical/inductors.xml"];mxStencilRegistry.libraries.eeSwitchesRelays=[STENCIL_PATH+"/electrical/switchesRelays.xml",STENCIL_PATH+"/electrical/electro-mechanical.xml"];
mxStencilRegistry.libraries.eeDiodes=[STENCIL_PATH+"/electrical/diodes.xml"];mxStencilRegistry.libraries.eeSources=[STENCIL_PATH+"/electrical/signal_sources.xml"];mxStencilRegistry.libraries.eeTransistors=[STENCIL_PATH+"/electrical/mosfets1.xml",STENCIL_PATH+"/electrical/mosfets2.xml",STENCIL_PATH+"/electrical/transistors.xml"];mxStencilRegistry.libraries.eeMisc=[STENCIL_PATH+"/electrical/electro-mechanical.xml",STENCIL_PATH+"/electrical/miscellaneous.xml"];mxStencilRegistry.libraries.eeAudio=[STENCIL_PATH+ mxStencilRegistry.libraries.eeDiodes=[STENCIL_PATH+"/electrical/diodes.xml"];mxStencilRegistry.libraries.eeSources=[STENCIL_PATH+"/electrical/signal_sources.xml"];mxStencilRegistry.libraries.eeTransistors=[STENCIL_PATH+"/electrical/mosfets1.xml",STENCIL_PATH+"/electrical/mosfets2.xml",STENCIL_PATH+"/electrical/transistors.xml"];mxStencilRegistry.libraries.eeMisc=[STENCIL_PATH+"/electrical/electro-mechanical.xml",STENCIL_PATH+"/electrical/miscellaneous.xml"];mxStencilRegistry.libraries.eeAudio=[STENCIL_PATH+
"/electrical/radio.xml"];mxStencilRegistry.libraries.eePlcLadder=[STENCIL_PATH+"/electrical/plc_ladder.xml"];mxStencilRegistry.libraries.eeAbstract=[STENCIL_PATH+"/electrical/abstract.xml",STENCIL_PATH+"/electrical/logic_gates.xml"];mxStencilRegistry.libraries.eeOptical=[STENCIL_PATH+"/electrical/opto_electronics.xml"];mxStencilRegistry.libraries.eeVacuumTubes=[STENCIL_PATH+"/electrical/vacuum_tubes.xml"];mxStencilRegistry.libraries.eeWaveforms=[STENCIL_PATH+"/electrical/waveforms.xml"];mxStencilRegistry.libraries.eeInstruments= "/electrical/radio.xml"];mxStencilRegistry.libraries.eePlcLadder=[STENCIL_PATH+"/electrical/plc_ladder.xml"];mxStencilRegistry.libraries.eeAbstract=[STENCIL_PATH+"/electrical/abstract.xml",STENCIL_PATH+"/electrical/logic_gates.xml"];mxStencilRegistry.libraries.eeOptical=[STENCIL_PATH+"/electrical/opto_electronics.xml"];mxStencilRegistry.libraries.eeVacuumTubes=[STENCIL_PATH+"/electrical/vacuum_tubes.xml"];mxStencilRegistry.libraries.eeWaveforms=[STENCIL_PATH+"/electrical/waveforms.xml"];mxStencilRegistry.libraries.eeInstruments=
[STENCIL_PATH+"/electrical/instruments.xml"];mxStencilRegistry.libraries["mscae/cloud"]=[STENCIL_PATH+"/mscae/cloud.xml"];mxStencilRegistry.libraries["mockup/buttons"]=[SHAPES_PATH+"/mockup/mxMockupButtons.js"];mxStencilRegistry.libraries["mockup/containers"]=[SHAPES_PATH+"/mockup/mxMockupContainers.js"];mxStencilRegistry.libraries["mockup/forms"]=[SHAPES_PATH+"/mockup/mxMockupForms.js"];mxStencilRegistry.libraries["mockup/graphics"]=[SHAPES_PATH+"/mockup/mxMockupGraphics.js",STENCIL_PATH+"/mockup/misc.xml"]; [STENCIL_PATH+"/electrical/instruments.xml"];mxStencilRegistry.libraries["mscae/cloud"]=[STENCIL_PATH+"/mscae/cloud.xml"];mxStencilRegistry.libraries["mockup/buttons"]=[SHAPES_PATH+"/mockup/mxMockupButtons.js"];mxStencilRegistry.libraries["mockup/containers"]=[SHAPES_PATH+"/mockup/mxMockupContainers.js"];mxStencilRegistry.libraries["mockup/forms"]=[SHAPES_PATH+"/mockup/mxMockupForms.js"];mxStencilRegistry.libraries["mockup/graphics"]=[SHAPES_PATH+"/mockup/mxMockupGraphics.js",STENCIL_PATH+"/mockup/misc.xml"];

View file

@ -90,7 +90,39 @@ Draw.loadPlugin(function(ui) {
mxResources.parse('speechQuit=Quit'); mxResources.parse('speechQuit=Quit');
// Installs footer click handler // Installs footer click handler
var td = ui.getOrCreateVoiceButton(); function getOrCreateVoiceButton(ui)
{
if (ui.voiceButton == null)
{
ui.voiceButton = document.createElement('div');
ui.voiceButton.className = 'geBtn';
ui.voiceButton.style.width = '140px';
ui.voiceButton.style.minWidth = '140px';
ui.voiceButton.style.textOverflow = 'ellipsis';
ui.voiceButton.style.overflowX = 'hidden';
ui.voiceButton.style.fontWeight = 'bold';
ui.voiceButton.style.textAlign = 'center';
ui.voiceButton.style.display = 'inline-block';
ui.voiceButton.style.padding = '0 10px 0 10px';
ui.voiceButton.style.marginTop = '-4px';
ui.voiceButton.style.height = '28px';
ui.voiceButton.style.lineHeight = '28px';
ui.voiceButton.style.color = '#235695';
if (ui.buttonContainer.firstChild != null)
{
ui.buttonContainer.insertBefore(ui.voiceButton, ui.buttonContainer.firstChild);
}
else
{
ui.buttonContainer.appendChild(ui.voiceButton);
}
}
return ui.voiceButton;
};
var td = getOrCreateVoiceButton(ui);
if (td != null) if (td != null)
{ {
@ -232,7 +264,7 @@ Draw.loadPlugin(function(ui) {
if (index == currentVoice) if (index == currentVoice)
{ {
ui.menus.addCheckmark(item); menu.addCheckmark(item, Editor.checkmarkImage);
} }
})(i); })(i);
} }