From 4c363ece8f9039125c292724896d618796b7d6cf Mon Sep 17 00:00:00 2001 From: "David Benson [draw.io]" Date: Tue, 3 Nov 2020 16:36:40 +0000 Subject: [PATCH] 13.8.9 release --- ChangeLog | 5 + VERSION | 2 +- etc/mxgraph/mxClient.js | 29 +-- .../com/mxgraph/online/AbsAuthServlet.java | 23 +- src/main/webapp/js/app.min.js | 60 ++--- src/main/webapp/js/diagramly/App.js | 6 + src/main/webapp/js/diagramly/Editor.js | 3 +- src/main/webapp/js/diagramly/Extensions.js | 38 ++- .../webapp/js/diagramly/OneDriveClient.js | 2 +- src/main/webapp/js/extensions.min.js | 225 +++++++++--------- src/main/webapp/js/onedrive/mxODPicker.js | 30 ++- src/main/webapp/js/viewer-static.min.js | 51 ++-- src/main/webapp/js/viewer.min.js | 51 ++-- src/main/webapp/plugins/cConf-1-4-8.js | 8 + src/main/webapp/resources/dia.txt | 2 + src/main/webapp/resources/dia_am.txt | 2 + src/main/webapp/resources/dia_ar.txt | 2 + src/main/webapp/resources/dia_bg.txt | 2 + src/main/webapp/resources/dia_bn.txt | 2 + src/main/webapp/resources/dia_bs.txt | 2 + src/main/webapp/resources/dia_ca.txt | 2 + src/main/webapp/resources/dia_cs.txt | 2 + src/main/webapp/resources/dia_da.txt | 2 + src/main/webapp/resources/dia_de.txt | 2 + src/main/webapp/resources/dia_el.txt | 2 + src/main/webapp/resources/dia_eo.txt | 2 + src/main/webapp/resources/dia_es.txt | 2 + src/main/webapp/resources/dia_et.txt | 2 + src/main/webapp/resources/dia_eu.txt | 2 + src/main/webapp/resources/dia_fa.txt | 2 + src/main/webapp/resources/dia_fi.txt | 2 + src/main/webapp/resources/dia_fil.txt | 2 + src/main/webapp/resources/dia_fr.txt | 2 + src/main/webapp/resources/dia_gl.txt | 2 + src/main/webapp/resources/dia_gu.txt | 2 + src/main/webapp/resources/dia_he.txt | 2 + src/main/webapp/resources/dia_hi.txt | 2 + src/main/webapp/resources/dia_hr.txt | 2 + src/main/webapp/resources/dia_hu.txt | 2 + src/main/webapp/resources/dia_i18n.txt | 2 + src/main/webapp/resources/dia_id.txt | 2 + src/main/webapp/resources/dia_it.txt | 2 + src/main/webapp/resources/dia_ja.txt | 2 + src/main/webapp/resources/dia_kn.txt | 2 + src/main/webapp/resources/dia_ko.txt | 2 + src/main/webapp/resources/dia_lt.txt | 2 + src/main/webapp/resources/dia_lv.txt | 2 + src/main/webapp/resources/dia_ml.txt | 2 + src/main/webapp/resources/dia_mr.txt | 2 + src/main/webapp/resources/dia_ms.txt | 2 + src/main/webapp/resources/dia_my.txt | 2 + src/main/webapp/resources/dia_nl.txt | 2 + src/main/webapp/resources/dia_no.txt | 2 + src/main/webapp/resources/dia_pl.txt | 2 + src/main/webapp/resources/dia_pt-br.txt | 2 + src/main/webapp/resources/dia_pt.txt | 2 + src/main/webapp/resources/dia_ro.txt | 2 + src/main/webapp/resources/dia_ru.txt | 2 + src/main/webapp/resources/dia_si.txt | 2 + src/main/webapp/resources/dia_sk.txt | 2 + src/main/webapp/resources/dia_sl.txt | 2 + src/main/webapp/resources/dia_sr.txt | 2 + src/main/webapp/resources/dia_sv.txt | 2 + src/main/webapp/resources/dia_sw.txt | 2 + src/main/webapp/resources/dia_ta.txt | 2 + src/main/webapp/resources/dia_te.txt | 2 + src/main/webapp/resources/dia_th.txt | 2 + src/main/webapp/resources/dia_tr.txt | 2 + src/main/webapp/resources/dia_uk.txt | 2 + src/main/webapp/resources/dia_vi.txt | 2 + src/main/webapp/resources/dia_zh-tw.txt | 2 + src/main/webapp/resources/dia_zh.txt | 2 + src/main/webapp/service-worker.js | 124 +++++----- 73 files changed, 477 insertions(+), 296 deletions(-) diff --git a/ChangeLog b/ChangeLog index 7885c630..169e2a2f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +03-NOV-2020: 13.8.9 + +- Adds block overflow cell style +- Uses mxGraph 4.2.1 beta 23 + 30-OCT-2020: 13.8.8 - Fixes for teams integration diff --git a/VERSION b/VERSION index 5135d3d9..ea0f9b69 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -13.8.8 \ No newline at end of file +13.8.9 \ No newline at end of file diff --git a/etc/mxgraph/mxClient.js b/etc/mxgraph/mxClient.js index c41cc210..80d7d33e 100644 --- a/etc/mxgraph/mxClient.js +++ b/etc/mxgraph/mxClient.js @@ -1,4 +1,4 @@ -var mxClient={VERSION:"4.2.1",IS_IE:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:null!=navigator.userAgent&&!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:null!=navigator.userAgent&&!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&& +var mxClient={VERSION:"4.2.2",IS_IE:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:null!=navigator.userAgent&&!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:null!=navigator.userAgent&&!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:null!=navigator.userAgent&&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:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&0>navigator.userAgent.indexOf("Edge/"),IS_OP:null!=navigator.userAgent&&(0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/")),IS_OT:null!=navigator.userAgent&&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:/Apple Computer, Inc/.test(navigator.vendor),IS_ANDROID:0<=navigator.appVersion.indexOf("Android"),IS_IOS:/iP(hone|od|ad)/.test(navigator.platform),IS_GC:/Google Inc/.test(navigator.vendor),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:"undefined"!==typeof InstallTrigger,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_VML:"MICROSOFT INTERNET EXPLORER"==navigator.appName.toUpperCase(),IS_SVG:"MICROSOFT INTERNET EXPLORER"!= @@ -334,8 +334,9 @@ m,n,p),null!=a&&(u.setAttribute("requiredFeatures","http://www.w3.org/TR/SVG11/f mxSvgCanvas2D.prototype.updateTextNodes=function(a,b,c,d,e,f,g,k,l,m,n){var p=this.state.scale;mxSvgCanvas2D.createCss(c+2,d,e,f,g,k,l,null!=this.state.fontBackgroundColor?this.state.fontBackgroundColor:null,null!=this.state.fontBorderColor?this.state.fontBorderColor:null,"display: flex; align-items: unsafe "+(f==mxConstants.ALIGN_TOP?"flex-start":f==mxConstants.ALIGN_BOTTOM?"flex-end":"center")+"; justify-content: unsafe "+(e==mxConstants.ALIGN_LEFT?"flex-start":e==mxConstants.ALIGN_RIGHT?"flex-end": "center")+"; ",this.getTextCss(),p,mxUtils.bind(this,function(c,d,e,f,g){a+=this.state.dx;b+=this.state.dy;var k=n.firstChild,l=k.firstChild,q=l.firstChild,r=(this.rotateHtml?this.state.rotation:0)+(null!=m?m:0),t=(0!=this.foOffset?"translate("+this.foOffset+" "+this.foOffset+")":"")+(1!=p?"scale("+p+")":"");q.firstChild.setAttribute("style",g);q.setAttribute("style",f);k.setAttribute("width",Math.ceil(1/Math.min(1,p)*100)+"%");k.setAttribute("height",Math.ceil(1/Math.min(1,p)*100)+"%");d=Math.round(b+ d);0>d?k.setAttribute("y",d):(k.removeAttribute("y"),e+="padding-top: "+d+"px; ");l.setAttribute("style",e+"margin-left: "+Math.round(a+c)+"px;");t+=0!=r?"rotate("+r+" "+a+" "+b+")":"";""!=t?n.setAttribute("transform",t):n.removeAttribute("transform");1!=this.state.alpha?n.setAttribute("opacity",this.state.alpha):n.removeAttribute("opacity")}))}; -mxSvgCanvas2D.createCss=function(a,b,c,d,e,f,g,k,l,m,n,p,q){p="box-sizing: border-box; font-size: 0; text-align: "+(c==mxConstants.ALIGN_LEFT?"left":c==mxConstants.ALIGN_RIGHT?"right":"center")+"; ";var r=mxUtils.getAlignmentAsPoint(c,d);c="overflow: hidden; ";d="width: 1px; ";var t="height: 1px; ",u=r.x*a,r=r.y*b;g?(d="width: "+Math.round(a)+"px; ",p+="max-height: "+Math.round(b)+"px; ",r=0):"fill"==f?(d="width: "+Math.round(a)+"px; ",t="height: "+Math.round(b)+"px; ",n+="width: 100%; height: 100%; ", -p+=d+t):"width"==f?(d="width: "+Math.round(a)+"px; ",n+="width: 100%; ",p+=d,r=0,0=document.documentMode)?this.updateHtmlFilter():this.updateHtmlTransform()}}; mxText.prototype.redrawHtmlShapeWithCss3=function(){var a=Math.max(0,Math.round(this.bounds.width/this.scale)),b=Math.max(0,Math.round(this.bounds.height/this.scale)),c="position: absolute; left: "+Math.round(this.bounds.x)+"px; top: "+Math.round(this.bounds.y)+"px; pointer-events: none; ",d=this.getTextCss();mxSvgCanvas2D.createCss(a+2,b,this.align,this.valign,this.wrap,this.overflow,this.clipped,null!=this.background?mxUtils.htmlEntities(this.background):null,null!=this.border?mxUtils.htmlEntities(this.border): -null,c,d,this.scale,mxUtils.bind(this,function(a,b,c,d,l,m){a=this.getTextRotation();a=(1!=this.scale?"scale("+this.scale+") ":"")+(0!=a?"rotate("+a+"deg) ":"")+(0!=this.margin.x||0!=this.margin.y?"translate("+100*this.margin.x+"%,"+100*this.margin.y+"%)":"");""!=a&&(a="transform-origin: 0 0; transform: "+a+"; ");""==m?(c+=d,d="display:inline-block; min-width: 100%; "+a):(d+=a,mxClient.IS_SF&&(d+="-webkit-clip-path: content-box;"));100>this.opacity&&(l+="opacity: "+this.opacity/100+"; ");this.node.setAttribute("style", -c);c=mxUtils.isNode(this.value)?this.value.outerHTML:this.getHtmlValue();null==this.node.firstChild&&(this.node.innerHTML="
"+c+"
");this.node.firstChild.firstChild.setAttribute("style",l);this.node.firstChild.setAttribute("style",d)}))}; +null,c,d,this.scale,mxUtils.bind(this,function(a,c,d,k,l,m){a=this.getTextRotation();a=(1!=this.scale?"scale("+this.scale+") ":"")+(0!=a?"rotate("+a+"deg) ":"")+(0!=this.margin.x||0!=this.margin.y?"translate("+100*this.margin.x+"%,"+100*this.margin.y+"%)":"");""!=a&&(a="transform-origin: 0 0; transform: "+a+"; ");"block"==this.overflow&&this.valign==mxConstants.ALIGN_MIDDLE&&(a+="max-height: "+(b+1)+"px;");""==m?(d+=k,k="display:inline-block; min-width: 100%; "+a):(k+=a,mxClient.IS_SF&&(k+="-webkit-clip-path: content-box;")); +"block"==this.overflow&&(k+="width: 100%; ");100>this.opacity&&(l+="opacity: "+this.opacity/100+"; ");this.node.setAttribute("style",d);d=mxUtils.isNode(this.value)?this.value.outerHTML:this.getHtmlValue();null==this.node.firstChild&&(this.node.innerHTML="
"+d+"
");this.node.firstChild.firstChild.setAttribute("style",l);this.node.firstChild.setAttribute("style",k)}))}; mxText.prototype.updateHtmlTransform=function(){var a=this.getTextRotation(),b=this.node.style,c=this.margin.x,d=this.margin.y;0!=a?(mxUtils.setPrefixedStyle(b,"transformOrigin",100*-c+"% "+100*-d+"%"),mxUtils.setPrefixedStyle(b,"transform","translate("+100*c+"%,"+100*d+"%) scale("+this.scale+") rotate("+a+"deg)")):(mxUtils.setPrefixedStyle(b,"transformOrigin","0% 0%"),mxUtils.setPrefixedStyle(b,"transform","scale("+this.scale+") translate("+100*c+"%,"+100*d+"%)"));b.left=Math.round(this.bounds.x- Math.ceil(c*("fill"!=this.overflow&&"width"!=this.overflow?3:1)))+"px";b.top=Math.round(this.bounds.y-d*("fill"!=this.overflow?3:1))+"px";b.opacity=100>this.opacity?this.opacity/100:""}; mxText.prototype.updateInnerHtml=function(a){if(mxUtils.isNode(this.value))a.innerHTML=this.value.outerHTML;else{var b=this.value;this.dialect!=mxConstants.DIALECT_STRICTHTML&&(b=mxUtils.htmlEntities(b,!1));b=mxUtils.replaceTrailingNewlines(b,"
 
");b=this.replaceLinefeeds?b.replace(/\n/g,"
"):b;a.innerHTML='
'+b+"
"}}; @@ -519,8 +520,8 @@ mxText.prototype.updateValue=function(){if(mxUtils.isNode(this.value))this.node. a;a=this.node.getElementsByTagName("div");0e&&(this.textarea.style.width=this.textarea.scrollWidth+"px")):this.textarea.style.maxWidth= -e+"px"):(this.textarea.style.whiteSpace="nowrap",this.textarea.style.width="");8==document.documentMode&&(this.textarea.style.zoom="1",this.textarea.style.height="auto");a=this.textarea.scrollWidth;e=this.textarea.scrollHeight;8==document.documentMode?(this.textarea.style.left=Math.max(0,Math.ceil((this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5))/c))+"px",this.textarea.style.top=Math.max(0,Math.ceil((this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5))/ -c))+"px",this.textarea.style.width=Math.round(a*c)+"px",this.textarea.style.height=Math.round(e*c)+"px"):mxClient.IS_QUIRKS?(this.textarea.style.left=Math.max(0,Math.ceil(this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5)))+"px",this.textarea.style.top=Math.max(0,Math.ceil(this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5)))+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-d.x*(this.bounds.width-2))+1)+"px",this.textarea.style.top=Math.max(0, -Math.round(this.bounds.y-d.y*(this.bounds.height-4)+(-1==d.y?3:0))+1)+"px")}else 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.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width="")); -mxClient.IS_VML?this.textarea.style.zoom=c:(mxUtils.setPrefixedStyle(this.textarea.style,"transformOrigin","0px 0px"),mxUtils.setPrefixedStyle(this.textarea.style,"transform","scale("+c+","+c+")"+(null==d?"":" translate("+100*d.x+"%,"+100*d.y+"%)")))}};mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())};mxCellEditor.prototype.getBackgroundColor=function(a){return null}; -mxCellEditor.prototype.isLegacyEditor=function(){if(mxClient.IS_VML)return!0;var a=!1;if(mxClient.IS_SVG){var b=this.graph.view.getDrawPane().ownerSVGElement;null!=b&&(b=mxUtils.getCurrentStyle(b),null!=b&&(a="absolute"==b.position))}return!a}; +a.absoluteOffset.y,b.width,b.height)}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",e=Math.round(this.bounds.width/c)+this.wordWrapPadding,"relative"!=this.textarea.style.position?(this.textarea.style.width=e+"px",this.textarea.scrollWidth>e&&(this.textarea.style.width=this.textarea.scrollWidth+"px")):"block"==a.style[mxConstants.STYLE_OVERFLOW]? +(-.5==d.y&&(this.textarea.style.maxHeight=this.bounds.height+"px"),this.textarea.style.width=e+"px"):this.textarea.style.maxWidth=e+"px"):(this.textarea.style.whiteSpace="nowrap",this.textarea.style.width="");8==document.documentMode&&(this.textarea.style.zoom="1",this.textarea.style.height="auto");8==document.documentMode?(a=this.textarea.scrollWidth,e=this.textarea.scrollHeight,this.textarea.style.left=Math.max(0,Math.ceil((this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5))/c))+ +"px",this.textarea.style.top=Math.max(0,Math.ceil((this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5))/c))+"px",this.textarea.style.width=Math.round(a*c)+"px",this.textarea.style.height=Math.round(e*c)+"px"):mxClient.IS_QUIRKS?(a=this.textarea.scrollWidth,e=this.textarea.scrollHeight,this.textarea.style.left=Math.max(0,Math.ceil(this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5)))+"px",this.textarea.style.top=Math.max(0,Math.ceil(this.bounds.y-d.y*(this.bounds.height- +(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5)))+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-d.x*(this.bounds.width-2))+1)+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y-d.y*(this.bounds.height-4)+(-1==d.y?3:0))+1)+"px")}else 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.width/ +c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));mxClient.IS_VML?this.textarea.style.zoom=c:(mxUtils.setPrefixedStyle(this.textarea.style,"transformOrigin","0px 0px"),mxUtils.setPrefixedStyle(this.textarea.style,"transform","scale("+c+","+c+")"+(null==d?"":" translate("+100*d.x+"%,"+100*d.y+"%)")))}};mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())}; +mxCellEditor.prototype.getBackgroundColor=function(a){return null};mxCellEditor.prototype.isLegacyEditor=function(){if(mxClient.IS_VML)return!0;var a=!1;if(mxClient.IS_SVG){var b=this.graph.view.getDrawPane().ownerSVGElement;null!=b&&(b=mxUtils.getCurrentStyle(b),null!=b&&(a="absolute"==b.position))}return!a}; mxCellEditor.prototype.startEditing=function(a,b){this.stopEditing(!0);this.align=null;null==this.textarea&&this.init();null!=this.graph.tooltipHandler&&this.graph.tooltipHandler.hideTooltip();var c=this.graph.getView().getState(a);if(null!=c){this.graph.getView();var d=mxUtils.getValue(c.style,mxConstants.STYLE_FONTSIZE,mxConstants.DEFAULT_FONTSIZE),e=mxUtils.getValue(c.style,mxConstants.STYLE_FONTFAMILY,mxConstants.DEFAULT_FONTFAMILY),f=mxUtils.getValue(c.style,mxConstants.STYLE_FONTCOLOR,"black"), g=mxUtils.getValue(c.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT),k=(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD,l=(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC,m=[];(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&m.push("underline");(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_STRIKETHROUGH)== mxConstants.FONT_STRIKETHROUGH&&m.push("line-through");this.textarea.style.lineHeight=mxConstants.ABSOLUTE_LINE_HEIGHT?Math.round(d*mxConstants.LINE_HEIGHT)+"px":mxConstants.LINE_HEIGHT;this.textarea.style.backgroundColor=this.getBackgroundColor(c);this.textarea.style.textDecoration=m.join(" ");this.textarea.style.fontWeight=k?"bold":"normal";this.textarea.style.fontStyle=l?"italic":"";this.textarea.style.fontSize=Math.round(d)+"px";this.textarea.style.zIndex=this.zIndex;this.textarea.style.fontFamily= diff --git a/src/main/java/com/mxgraph/online/AbsAuthServlet.java b/src/main/java/com/mxgraph/online/AbsAuthServlet.java index 8e2b8c75..5ebb8b83 100644 --- a/src/main/java/com/mxgraph/online/AbsAuthServlet.java +++ b/src/main/java/com/mxgraph/online/AbsAuthServlet.java @@ -177,18 +177,21 @@ abstract public class AbsAuthServlet extends HttpServlet Cookie[] cookies = request.getCookies(); - for (Cookie cookie : cookies) + if (cookies != null) { - if (STATE_COOKIE.equals(cookie.getName())) + for (Cookie cookie : cookies) { - //Get the cached state based on the cookie key - String cacheKey = cookie.getValue(); - cookieToken = (String) tokenCache.get(cacheKey); - log.log(Level.INFO, "AUTH-SERVLET: [" + request.getRemoteAddr() + "] Found cookie state (" + cacheKey + " -> " + cookieToken + ")"); - //Delete cookie & cache after being used since it is a single use - tokenCache.remove(cacheKey); - response.setHeader("Set-Cookie", STATE_COOKIE + "= ;path=" + cookiePath + "; expires=Thu, 01 Jan 1970 00:00:00 UTC; Secure; HttpOnly; SameSite=none"); - break; + if (STATE_COOKIE.equals(cookie.getName())) + { + //Get the cached state based on the cookie key + String cacheKey = cookie.getValue(); + cookieToken = (String) tokenCache.get(cacheKey); + log.log(Level.INFO, "AUTH-SERVLET: [" + request.getRemoteAddr() + "] Found cookie state (" + cacheKey + " -> " + cookieToken + ")"); + //Delete cookie & cache after being used since it is a single use + tokenCache.remove(cacheKey); + response.setHeader("Set-Cookie", STATE_COOKIE + "= ;path=" + cookiePath + "; expires=Thu, 01 Jan 1970 00:00:00 UTC; Secure; HttpOnly; SameSite=none"); + break; + } } } } diff --git a/src/main/webapp/js/app.min.js b/src/main/webapp/js/app.min.js index bfb37d27..96fb35fd 100644 --- a/src/main/webapp/js/app.min.js +++ b/src/main/webapp/js/app.min.js @@ -235,7 +235,7 @@ window.uiTheme=window.uiTheme||function(){var a=urlParams.ui;if(null==a&&"undefi null!=a&&(DRAWIO_GITLAB_ID=a);window.DRAWIO_LOG_URL=window.DRAWIO_LOG_URL||"";a=window.location.host;if("test.draw.io"!=a){var c="diagrams.net",b=a.length-c.length,c=a.lastIndexOf(c,b);-1!==c&&c===b?window.DRAWIO_LOG_URL="https://log.diagrams.net":(c="draw.io",b=a.length-c.length,c=a.lastIndexOf(c,b),-1!==c&&c===b&&(window.DRAWIO_LOG_URL="https://log.draw.io"))}})(); if("1"==urlParams.offline||"1"==urlParams.demo||"1"==urlParams.stealth||"1"==urlParams.local)urlParams.picker="0",urlParams.gapi="0",urlParams.db="0",urlParams.od="0",urlParams.gh="0",urlParams.gl="0",urlParams.tr="0";if("1"==urlParams.offline||"1"==urlParams.local)urlParams.math="0";"embed.diagrams.net"==window.location.hostname&&(urlParams.embed="1");window.location.hostname==DRAWIO_LIGHTBOX_URL.substring(DRAWIO_LIGHTBOX_URL.indexOf("//")+2)&&(urlParams.lightbox="1"); "1"==urlParams.lightbox&&(urlParams.chrome="0");(null==window.location.hash||1>=window.location.hash.length)&&null!=urlParams.open&&(window.location.hash=urlParams.open);window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||225E6;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","se"];var mxClient={VERSION:"4.2.1",IS_IE:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:null!=navigator.userAgent&&!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:null!=navigator.userAgent&&!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&& +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","se"];var mxClient={VERSION:"4.2.2",IS_IE:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:null!=navigator.userAgent&&!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:null!=navigator.userAgent&&!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:null!=navigator.userAgent&&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:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&0>navigator.userAgent.indexOf("Edge/"),IS_OP:null!=navigator.userAgent&&(0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/")),IS_OT:null!=navigator.userAgent&&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:/Apple Computer, Inc/.test(navigator.vendor),IS_ANDROID:0<=navigator.appVersion.indexOf("Android"),IS_IOS:/iP(hone|od|ad)/.test(navigator.platform),IS_GC:/Google Inc/.test(navigator.vendor),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:"undefined"!==typeof InstallTrigger,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_VML:"MICROSOFT INTERNET EXPLORER"==navigator.appName.toUpperCase(),IS_SVG:"MICROSOFT INTERNET EXPLORER"!= @@ -571,8 +571,9 @@ m,n,p),null!=a&&(u.setAttribute("requiredFeatures","http://www.w3.org/TR/SVG11/f mxSvgCanvas2D.prototype.updateTextNodes=function(a,b,c,d,e,f,g,k,l,m,n){var p=this.state.scale;mxSvgCanvas2D.createCss(c+2,d,e,f,g,k,l,null!=this.state.fontBackgroundColor?this.state.fontBackgroundColor:null,null!=this.state.fontBorderColor?this.state.fontBorderColor:null,"display: flex; align-items: unsafe "+(f==mxConstants.ALIGN_TOP?"flex-start":f==mxConstants.ALIGN_BOTTOM?"flex-end":"center")+"; justify-content: unsafe "+(e==mxConstants.ALIGN_LEFT?"flex-start":e==mxConstants.ALIGN_RIGHT?"flex-end": "center")+"; ",this.getTextCss(),p,mxUtils.bind(this,function(c,d,e,f,g){a+=this.state.dx;b+=this.state.dy;var k=n.firstChild,l=k.firstChild,q=l.firstChild,r=(this.rotateHtml?this.state.rotation:0)+(null!=m?m:0),t=(0!=this.foOffset?"translate("+this.foOffset+" "+this.foOffset+")":"")+(1!=p?"scale("+p+")":"");q.firstChild.setAttribute("style",g);q.setAttribute("style",f);k.setAttribute("width",Math.ceil(1/Math.min(1,p)*100)+"%");k.setAttribute("height",Math.ceil(1/Math.min(1,p)*100)+"%");d=Math.round(b+ d);0>d?k.setAttribute("y",d):(k.removeAttribute("y"),e+="padding-top: "+d+"px; ");l.setAttribute("style",e+"margin-left: "+Math.round(a+c)+"px;");t+=0!=r?"rotate("+r+" "+a+" "+b+")":"";""!=t?n.setAttribute("transform",t):n.removeAttribute("transform");1!=this.state.alpha?n.setAttribute("opacity",this.state.alpha):n.removeAttribute("opacity")}))}; -mxSvgCanvas2D.createCss=function(a,b,c,d,e,f,g,k,l,m,n,p,q){p="box-sizing: border-box; font-size: 0; text-align: "+(c==mxConstants.ALIGN_LEFT?"left":c==mxConstants.ALIGN_RIGHT?"right":"center")+"; ";var r=mxUtils.getAlignmentAsPoint(c,d);c="overflow: hidden; ";d="width: 1px; ";var t="height: 1px; ",u=r.x*a,r=r.y*b;g?(d="width: "+Math.round(a)+"px; ",p+="max-height: "+Math.round(b)+"px; ",r=0):"fill"==f?(d="width: "+Math.round(a)+"px; ",t="height: "+Math.round(b)+"px; ",n+="width: 100%; height: 100%; ", -p+=d+t):"width"==f?(d="width: "+Math.round(a)+"px; ",n+="width: 100%; ",p+=d,r=0,0=document.documentMode)?this.updateHtmlFilter():this.updateHtmlTransform()}}; mxText.prototype.redrawHtmlShapeWithCss3=function(){var a=Math.max(0,Math.round(this.bounds.width/this.scale)),b=Math.max(0,Math.round(this.bounds.height/this.scale)),c="position: absolute; left: "+Math.round(this.bounds.x)+"px; top: "+Math.round(this.bounds.y)+"px; pointer-events: none; ",d=this.getTextCss();mxSvgCanvas2D.createCss(a+2,b,this.align,this.valign,this.wrap,this.overflow,this.clipped,null!=this.background?mxUtils.htmlEntities(this.background):null,null!=this.border?mxUtils.htmlEntities(this.border): -null,c,d,this.scale,mxUtils.bind(this,function(a,b,c,d,l,m){a=this.getTextRotation();a=(1!=this.scale?"scale("+this.scale+") ":"")+(0!=a?"rotate("+a+"deg) ":"")+(0!=this.margin.x||0!=this.margin.y?"translate("+100*this.margin.x+"%,"+100*this.margin.y+"%)":"");""!=a&&(a="transform-origin: 0 0; transform: "+a+"; ");""==m?(c+=d,d="display:inline-block; min-width: 100%; "+a):(d+=a,mxClient.IS_SF&&(d+="-webkit-clip-path: content-box;"));100>this.opacity&&(l+="opacity: "+this.opacity/100+"; ");this.node.setAttribute("style", -c);c=mxUtils.isNode(this.value)?this.value.outerHTML:this.getHtmlValue();null==this.node.firstChild&&(this.node.innerHTML="
"+c+"
");this.node.firstChild.firstChild.setAttribute("style",l);this.node.firstChild.setAttribute("style",d)}))}; +null,c,d,this.scale,mxUtils.bind(this,function(a,c,d,k,l,m){a=this.getTextRotation();a=(1!=this.scale?"scale("+this.scale+") ":"")+(0!=a?"rotate("+a+"deg) ":"")+(0!=this.margin.x||0!=this.margin.y?"translate("+100*this.margin.x+"%,"+100*this.margin.y+"%)":"");""!=a&&(a="transform-origin: 0 0; transform: "+a+"; ");"block"==this.overflow&&this.valign==mxConstants.ALIGN_MIDDLE&&(a+="max-height: "+(b+1)+"px;");""==m?(d+=k,k="display:inline-block; min-width: 100%; "+a):(k+=a,mxClient.IS_SF&&(k+="-webkit-clip-path: content-box;")); +"block"==this.overflow&&(k+="width: 100%; ");100>this.opacity&&(l+="opacity: "+this.opacity/100+"; ");this.node.setAttribute("style",d);d=mxUtils.isNode(this.value)?this.value.outerHTML:this.getHtmlValue();null==this.node.firstChild&&(this.node.innerHTML="
"+d+"
");this.node.firstChild.firstChild.setAttribute("style",l);this.node.firstChild.setAttribute("style",k)}))}; mxText.prototype.updateHtmlTransform=function(){var a=this.getTextRotation(),b=this.node.style,c=this.margin.x,d=this.margin.y;0!=a?(mxUtils.setPrefixedStyle(b,"transformOrigin",100*-c+"% "+100*-d+"%"),mxUtils.setPrefixedStyle(b,"transform","translate("+100*c+"%,"+100*d+"%) scale("+this.scale+") rotate("+a+"deg)")):(mxUtils.setPrefixedStyle(b,"transformOrigin","0% 0%"),mxUtils.setPrefixedStyle(b,"transform","scale("+this.scale+") translate("+100*c+"%,"+100*d+"%)"));b.left=Math.round(this.bounds.x- Math.ceil(c*("fill"!=this.overflow&&"width"!=this.overflow?3:1)))+"px";b.top=Math.round(this.bounds.y-d*("fill"!=this.overflow?3:1))+"px";b.opacity=100>this.opacity?this.opacity/100:""}; mxText.prototype.updateInnerHtml=function(a){if(mxUtils.isNode(this.value))a.innerHTML=this.value.outerHTML;else{var b=this.value;this.dialect!=mxConstants.DIALECT_STRICTHTML&&(b=mxUtils.htmlEntities(b,!1));b=mxUtils.replaceTrailingNewlines(b,"
 
");b=this.replaceLinefeeds?b.replace(/\n/g,"
"):b;a.innerHTML='
'+b+"
"}}; @@ -756,8 +757,8 @@ mxText.prototype.updateValue=function(){if(mxUtils.isNode(this.value))this.node. a;a=this.node.getElementsByTagName("div");0e&&(this.textarea.style.width=this.textarea.scrollWidth+"px")):this.textarea.style.maxWidth= -e+"px"):(this.textarea.style.whiteSpace="nowrap",this.textarea.style.width="");8==document.documentMode&&(this.textarea.style.zoom="1",this.textarea.style.height="auto");a=this.textarea.scrollWidth;e=this.textarea.scrollHeight;8==document.documentMode?(this.textarea.style.left=Math.max(0,Math.ceil((this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5))/c))+"px",this.textarea.style.top=Math.max(0,Math.ceil((this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5))/ -c))+"px",this.textarea.style.width=Math.round(a*c)+"px",this.textarea.style.height=Math.round(e*c)+"px"):mxClient.IS_QUIRKS?(this.textarea.style.left=Math.max(0,Math.ceil(this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5)))+"px",this.textarea.style.top=Math.max(0,Math.ceil(this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5)))+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-d.x*(this.bounds.width-2))+1)+"px",this.textarea.style.top=Math.max(0, -Math.round(this.bounds.y-d.y*(this.bounds.height-4)+(-1==d.y?3:0))+1)+"px")}else 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.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width="")); -mxClient.IS_VML?this.textarea.style.zoom=c:(mxUtils.setPrefixedStyle(this.textarea.style,"transformOrigin","0px 0px"),mxUtils.setPrefixedStyle(this.textarea.style,"transform","scale("+c+","+c+")"+(null==d?"":" translate("+100*d.x+"%,"+100*d.y+"%)")))}};mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())};mxCellEditor.prototype.getBackgroundColor=function(a){return null}; -mxCellEditor.prototype.isLegacyEditor=function(){if(mxClient.IS_VML)return!0;var a=!1;if(mxClient.IS_SVG){var b=this.graph.view.getDrawPane().ownerSVGElement;null!=b&&(b=mxUtils.getCurrentStyle(b),null!=b&&(a="absolute"==b.position))}return!a}; +a.absoluteOffset.y,b.width,b.height)}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",e=Math.round(this.bounds.width/c)+this.wordWrapPadding,"relative"!=this.textarea.style.position?(this.textarea.style.width=e+"px",this.textarea.scrollWidth>e&&(this.textarea.style.width=this.textarea.scrollWidth+"px")):"block"==a.style[mxConstants.STYLE_OVERFLOW]? +(-.5==d.y&&(this.textarea.style.maxHeight=this.bounds.height+"px"),this.textarea.style.width=e+"px"):this.textarea.style.maxWidth=e+"px"):(this.textarea.style.whiteSpace="nowrap",this.textarea.style.width="");8==document.documentMode&&(this.textarea.style.zoom="1",this.textarea.style.height="auto");8==document.documentMode?(a=this.textarea.scrollWidth,e=this.textarea.scrollHeight,this.textarea.style.left=Math.max(0,Math.ceil((this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5))/c))+ +"px",this.textarea.style.top=Math.max(0,Math.ceil((this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5))/c))+"px",this.textarea.style.width=Math.round(a*c)+"px",this.textarea.style.height=Math.round(e*c)+"px"):mxClient.IS_QUIRKS?(a=this.textarea.scrollWidth,e=this.textarea.scrollHeight,this.textarea.style.left=Math.max(0,Math.ceil(this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5)))+"px",this.textarea.style.top=Math.max(0,Math.ceil(this.bounds.y-d.y*(this.bounds.height- +(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5)))+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-d.x*(this.bounds.width-2))+1)+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y-d.y*(this.bounds.height-4)+(-1==d.y?3:0))+1)+"px")}else 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.width/ +c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));mxClient.IS_VML?this.textarea.style.zoom=c:(mxUtils.setPrefixedStyle(this.textarea.style,"transformOrigin","0px 0px"),mxUtils.setPrefixedStyle(this.textarea.style,"transform","scale("+c+","+c+")"+(null==d?"":" translate("+100*d.x+"%,"+100*d.y+"%)")))}};mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())}; +mxCellEditor.prototype.getBackgroundColor=function(a){return null};mxCellEditor.prototype.isLegacyEditor=function(){if(mxClient.IS_VML)return!0;var a=!1;if(mxClient.IS_SVG){var b=this.graph.view.getDrawPane().ownerSVGElement;null!=b&&(b=mxUtils.getCurrentStyle(b),null!=b&&(a="absolute"==b.position))}return!a}; mxCellEditor.prototype.startEditing=function(a,b){this.stopEditing(!0);this.align=null;null==this.textarea&&this.init();null!=this.graph.tooltipHandler&&this.graph.tooltipHandler.hideTooltip();var c=this.graph.getView().getState(a);if(null!=c){this.graph.getView();var d=mxUtils.getValue(c.style,mxConstants.STYLE_FONTSIZE,mxConstants.DEFAULT_FONTSIZE),e=mxUtils.getValue(c.style,mxConstants.STYLE_FONTFAMILY,mxConstants.DEFAULT_FONTFAMILY),f=mxUtils.getValue(c.style,mxConstants.STYLE_FONTCOLOR,"black"), g=mxUtils.getValue(c.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT),k=(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD,l=(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC,m=[];(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&m.push("underline");(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_STRIKETHROUGH)== mxConstants.FONT_STRIKETHROUGH&&m.push("line-through");this.textarea.style.lineHeight=mxConstants.ABSOLUTE_LINE_HEIGHT?Math.round(d*mxConstants.LINE_HEIGHT)+"px":mxConstants.LINE_HEIGHT;this.textarea.style.backgroundColor=this.getBackgroundColor(c);this.textarea.style.textDecoration=m.join(" ");this.textarea.style.fontWeight=k?"bold":"normal";this.textarea.style.fontStyle=l?"italic":"";this.textarea.style.fontSize=Math.round(d)+"px";this.textarea.style.zIndex=this.zIndex;this.textarea.style.fontFamily= @@ -9879,16 +9880,16 @@ type:"int",min:0,max:100,defVal:100},{name:"startFill",dispName:"Start Fill",typ {name:"metaEdit",dispName:"Edit Dialog",type:"bool",defVal:!1},{name:"backgroundOutline",dispName:"Background Outline",type:"bool",defVal:!1},{name:"bendable",dispName:"Bendable",type:"bool",defVal:!0},{name:"movable",dispName:"Movable",type:"bool",defVal:!0},{name:"cloneable",dispName:"Cloneable",type:"bool",defVal:!0},{name:"deletable",dispName:"Deletable",type:"bool",defVal:!0},{name:"orthogonalLoop",dispName:"Loop Routing",type:"bool",defVal:!1},{name:"noJump",dispName:"No Jumps",type:"bool", defVal:!1}].concat(Editor.commonProperties);Editor.commonVertexProperties=[{type:"separator"},{name:"resizeLastRow",dispName:"Resize Last Row",type:"bool",getDefaultValue:function(a,d){var b=d.editorUi.editor.graph.getCellStyle(1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null);return"1"==mxUtils.getValue(b,"resizeLastRow","0")},isVisible:function(a,d){var b=d.editorUi.editor.graph;return 1==a.vertices.length&&0==a.edges.length&&b.isTable(a.vertices[0])}},{name:"resizeLast",dispName:"Resize Last Column", type:"bool",getDefaultValue:function(a,d){var b=d.editorUi.editor.graph.getCellStyle(1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null);return"1"==mxUtils.getValue(b,"resizeLast","0")},isVisible:function(a,d){var b=d.editorUi.editor.graph;return 1==a.vertices.length&&0==a.edges.length&&b.isTable(a.vertices[0])}},{name:"fillOpacity",dispName:"Fill Opacity",type:"int",min:0,max:100,defVal:100},{name:"strokeOpacity",dispName:"Stroke Opacity",type:"int",min:0,max:100,defVal:100},{name:"overflow", -dispName:"Text Overflow",defVal:"visible",type:"enum",enumList:[{val:"visible",dispName:"Visible"},{val:"hidden",dispName:"Hidden"},{val:"fill",dispName:"Fill"},{val:"width",dispName:"Width"}]},{name:"noLabel",dispName:"Hide Label",type:"bool",defVal:!1},{name:"labelPadding",dispName:"Label Padding",type:"float",defVal:0},{name:"direction",dispName:"Direction",type:"enum",defVal:"east",enumList:[{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south",dispName:"South"},{val:"west", -dispName:"West"}]},{name:"portConstraint",dispName:"Constraint",type:"enum",defVal:"none",enumList:[{val:"none",dispName:"None"},{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south",dispName:"South"},{val:"west",dispName:"West"}]},{name:"portConstraintRotation",dispName:"Rotate Constraint",type:"bool",defVal:!1},{name:"connectable",dispName:"Connectable",type:"bool",getDefaultValue:function(a,d){return d.editorUi.editor.graph.isCellConnectable(1==a.vertices.length&&0==a.edges.length? -a.vertices[0]:null)},isVisible:function(a,d){return 1==a.vertices.length&&0==a.edges.length}},{name:"allowArrows",dispName:"Allow Arrows",type:"bool",defVal:!0},{name:"snapToPoint",dispName:"Snap to Point",type:"bool",defVal:!1},{name:"perimeter",dispName:"Perimeter",defVal:"none",type:"enum",enumList:[{val:"none",dispName:"None"},{val:"rectanglePerimeter",dispName:"Rectangle"},{val:"ellipsePerimeter",dispName:"Ellipse"},{val:"rhombusPerimeter",dispName:"Rhombus"},{val:"trianglePerimeter",dispName:"Triangle"}, -{val:"hexagonPerimeter2",dispName:"Hexagon"},{val:"lifelinePerimeter",dispName:"Lifeline"},{val:"orthogonalPerimeter",dispName:"Orthogonal"},{val:"backbonePerimeter",dispName:"Backbone"},{val:"calloutPerimeter",dispName:"Callout"},{val:"parallelogramPerimeter",dispName:"Parallelogram"},{val:"trapezoidPerimeter",dispName:"Trapezoid"},{val:"stepPerimeter",dispName:"Step"}]},{name:"fixDash",dispName:"Fixed Dash",type:"bool",defVal:!1},{name:"autosize",dispName:"Autosize",type:"bool",defVal:!1},{name:"container", -dispName:"Container",type:"bool",defVal:!1,isVisible:function(a,d){return 1==a.vertices.length&&0==a.edges.length}},{name:"dropTarget",dispName:"Drop Target",type:"bool",getDefaultValue:function(a,d){var b=1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null,c=d.editorUi.editor.graph;return null!=b&&(c.isSwimlane(b)||0%position%
Email\n#\n## Node style (placeholders are replaced once).\n## Default is the current style for nodes.\n#\n# style: label;image=%image%;whiteSpace=wrap;html=1;rounded=1;fillColor=%fill%;strokeColor=%stroke%;\n#\n## Parent style for nodes with child nodes (placeholders are replaced once).\n#\n# parentstyle: swimlane;whiteSpace=wrap;html=1;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;\n#\n## Optional column name that contains a reference to a named style in styles.\n## Default is the current style for nodes.\n#\n# stylename: -\n#\n## JSON for named styles of the form {"name": "style", "name": "style"} where style is a cell style with\n## placeholders that are replaced once.\n#\n# styles: -\n#\n## JSON for variables in styles of the form {"name": "value", "name": "value"} where name is a string\n## that will replace a placeholder in a style.\n#\n# vars: -\n#\n## Optional column name that contains a reference to a named label in labels.\n## Default is the current label.\n#\n# labelname: -\n#\n## JSON for named labels of the form {"name": "label", "name": "label"} where label is a cell label with\n## placeholders.\n#\n# labels: -\n#\n## Uses the given column name as the identity for cells (updates existing cells).\n## Default is no identity (empty value or -).\n#\n# identity: -\n#\n## Uses the given column name as the parent reference for cells. Default is no parent (empty or -).\n## The identity above is used for resolving the reference so it must be specified.\n#\n# parent: -\n#\n## Adds a prefix to the identity of cells to make sure they do not collide with existing cells (whose\n## IDs are numbers from 0..n, sometimes with a GUID prefix in the context of realtime collaboration).\n## Default is csvimport-.\n#\n# namespace: csvimport-\n#\n## Connections between rows ("from": source colum, "to": target column).\n## Label, style and invert are optional. Defaults are \'\', current style and false.\n## If placeholders are used in the style, they are replaced with data from the source.\n## An optional placeholders can be set to target to use data from the target instead.\n## In addition to label, an optional fromlabel and tolabel can be used to name the column\n## that contains the text for the label in the edges source or target (invert ignored).\n## The label is concatenated in the form fromlabel + label + tolabel if all are defined.\n## Additional labels can be added by using an optional labels array with entries of the\n## form {"label": string, "x": number, "y": number, "dx": number, "dy": number} where\n## x is from -1 to 1 along the edge, y is orthogonal, and dx/dy are offsets in pixels.\n## The target column may contain a comma-separated list of values.\n## Multiple connect entries are allowed.\n#\n# connect: {"from": "manager", "to": "name", "invert": true, "label": "manages", \\\n# "style": "curved=1;endArrow=blockThin;endFill=1;fontSize=11;"}\n# connect: {"from": "refs", "to": "id", "style": "curved=1;fontSize=11;"}\n#\n## Node x-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# left: \n#\n## Node y-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# top: \n#\n## Node width. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the width. Default is auto.\n#\n# width: auto\n#\n## Node height. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the height. Default is auto.\n#\n# height: auto\n#\n## Padding for autosize. Default is 0.\n#\n# padding: -12\n#\n## Comma-separated list of ignored columns for metadata. (These can be\n## used for connections and styles but will not be added as metadata.)\n#\n# ignore: id,image,fill,stroke,refs,manager\n#\n## Column to be renamed to link attribute (used as link).\n#\n# link: url\n#\n## Spacing between nodes. Default is 40.\n#\n# nodespacing: 40\n#\n## Spacing between levels of hierarchical layouts. Default is 100.\n#\n# levelspacing: 100\n#\n## Spacing between parallel edges. Default is 40. Use 0 to disable.\n#\n# edgespacing: 40\n#\n## Name or JSON of layout. Possible values are auto, none, verticaltree, horizontaltree,\n## verticalflow, horizontalflow, organic, circle or a JSON string as used in Layout, Apply.\n## Default is auto.\n#\n# layout: auto\n#\n## ---- CSV below this line. First line are column names. ----\nname,position,id,location,manager,email,fill,stroke,refs,url,image\nTessa Miller,CFO,emi,Office 1,,me@example.com,#dae8fc,#6c8ebf,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-3-128.png\nEdward Morrison,Brand Manager,emo,Office 2,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-10-3-128.png\nAlison Donovan,System Admin,rdo,Office 3,Tessa Miller,me@example.com,#d5e8d4,#82b366,"emo,tva",https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-2-128.png\nEvan Valet,HR Director,tva,Office 4,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-9-2-128.png\n'; +dispName:"Text Overflow",defVal:"visible",type:"enum",enumList:[{val:"visible",dispName:"Visible"},{val:"hidden",dispName:"Hidden"},{val:"block",dispName:"Block"},{val:"fill",dispName:"Fill"},{val:"width",dispName:"Width"}]},{name:"noLabel",dispName:"Hide Label",type:"bool",defVal:!1},{name:"labelPadding",dispName:"Label Padding",type:"float",defVal:0},{name:"direction",dispName:"Direction",type:"enum",defVal:"east",enumList:[{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south", +dispName:"South"},{val:"west",dispName:"West"}]},{name:"portConstraint",dispName:"Constraint",type:"enum",defVal:"none",enumList:[{val:"none",dispName:"None"},{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south",dispName:"South"},{val:"west",dispName:"West"}]},{name:"portConstraintRotation",dispName:"Rotate Constraint",type:"bool",defVal:!1},{name:"connectable",dispName:"Connectable",type:"bool",getDefaultValue:function(a,d){return d.editorUi.editor.graph.isCellConnectable(1== +a.vertices.length&&0==a.edges.length?a.vertices[0]:null)},isVisible:function(a,d){return 1==a.vertices.length&&0==a.edges.length}},{name:"allowArrows",dispName:"Allow Arrows",type:"bool",defVal:!0},{name:"snapToPoint",dispName:"Snap to Point",type:"bool",defVal:!1},{name:"perimeter",dispName:"Perimeter",defVal:"none",type:"enum",enumList:[{val:"none",dispName:"None"},{val:"rectanglePerimeter",dispName:"Rectangle"},{val:"ellipsePerimeter",dispName:"Ellipse"},{val:"rhombusPerimeter",dispName:"Rhombus"}, +{val:"trianglePerimeter",dispName:"Triangle"},{val:"hexagonPerimeter2",dispName:"Hexagon"},{val:"lifelinePerimeter",dispName:"Lifeline"},{val:"orthogonalPerimeter",dispName:"Orthogonal"},{val:"backbonePerimeter",dispName:"Backbone"},{val:"calloutPerimeter",dispName:"Callout"},{val:"parallelogramPerimeter",dispName:"Parallelogram"},{val:"trapezoidPerimeter",dispName:"Trapezoid"},{val:"stepPerimeter",dispName:"Step"}]},{name:"fixDash",dispName:"Fixed Dash",type:"bool",defVal:!1},{name:"autosize",dispName:"Autosize", +type:"bool",defVal:!1},{name:"container",dispName:"Container",type:"bool",defVal:!1,isVisible:function(a,d){return 1==a.vertices.length&&0==a.edges.length}},{name:"dropTarget",dispName:"Drop Target",type:"bool",getDefaultValue:function(a,d){var b=1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null,c=d.editorUi.editor.graph;return null!=b&&(c.isSwimlane(b)||0%position%
Email\n#\n## Node style (placeholders are replaced once).\n## Default is the current style for nodes.\n#\n# style: label;image=%image%;whiteSpace=wrap;html=1;rounded=1;fillColor=%fill%;strokeColor=%stroke%;\n#\n## Parent style for nodes with child nodes (placeholders are replaced once).\n#\n# parentstyle: swimlane;whiteSpace=wrap;html=1;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;\n#\n## Optional column name that contains a reference to a named style in styles.\n## Default is the current style for nodes.\n#\n# stylename: -\n#\n## JSON for named styles of the form {"name": "style", "name": "style"} where style is a cell style with\n## placeholders that are replaced once.\n#\n# styles: -\n#\n## JSON for variables in styles of the form {"name": "value", "name": "value"} where name is a string\n## that will replace a placeholder in a style.\n#\n# vars: -\n#\n## Optional column name that contains a reference to a named label in labels.\n## Default is the current label.\n#\n# labelname: -\n#\n## JSON for named labels of the form {"name": "label", "name": "label"} where label is a cell label with\n## placeholders.\n#\n# labels: -\n#\n## Uses the given column name as the identity for cells (updates existing cells).\n## Default is no identity (empty value or -).\n#\n# identity: -\n#\n## Uses the given column name as the parent reference for cells. Default is no parent (empty or -).\n## The identity above is used for resolving the reference so it must be specified.\n#\n# parent: -\n#\n## Adds a prefix to the identity of cells to make sure they do not collide with existing cells (whose\n## IDs are numbers from 0..n, sometimes with a GUID prefix in the context of realtime collaboration).\n## Default is csvimport-.\n#\n# namespace: csvimport-\n#\n## Connections between rows ("from": source colum, "to": target column).\n## Label, style and invert are optional. Defaults are \'\', current style and false.\n## If placeholders are used in the style, they are replaced with data from the source.\n## An optional placeholders can be set to target to use data from the target instead.\n## In addition to label, an optional fromlabel and tolabel can be used to name the column\n## that contains the text for the label in the edges source or target (invert ignored).\n## The label is concatenated in the form fromlabel + label + tolabel if all are defined.\n## Additional labels can be added by using an optional labels array with entries of the\n## form {"label": string, "x": number, "y": number, "dx": number, "dy": number} where\n## x is from -1 to 1 along the edge, y is orthogonal, and dx/dy are offsets in pixels.\n## The target column may contain a comma-separated list of values.\n## Multiple connect entries are allowed.\n#\n# connect: {"from": "manager", "to": "name", "invert": true, "label": "manages", \\\n# "style": "curved=1;endArrow=blockThin;endFill=1;fontSize=11;"}\n# connect: {"from": "refs", "to": "id", "style": "curved=1;fontSize=11;"}\n#\n## Node x-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# left: \n#\n## Node y-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# top: \n#\n## Node width. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the width. Default is auto.\n#\n# width: auto\n#\n## Node height. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the height. Default is auto.\n#\n# height: auto\n#\n## Padding for autosize. Default is 0.\n#\n# padding: -12\n#\n## Comma-separated list of ignored columns for metadata. (These can be\n## used for connections and styles but will not be added as metadata.)\n#\n# ignore: id,image,fill,stroke,refs,manager\n#\n## Column to be renamed to link attribute (used as link).\n#\n# link: url\n#\n## Spacing between nodes. Default is 40.\n#\n# nodespacing: 40\n#\n## Spacing between levels of hierarchical layouts. Default is 100.\n#\n# levelspacing: 100\n#\n## Spacing between parallel edges. Default is 40. Use 0 to disable.\n#\n# edgespacing: 40\n#\n## Name or JSON of layout. Possible values are auto, none, verticaltree, horizontaltree,\n## verticalflow, horizontalflow, organic, circle or a JSON string as used in Layout, Apply.\n## Default is auto.\n#\n# layout: auto\n#\n## ---- CSV below this line. First line are column names. ----\nname,position,id,location,manager,email,fill,stroke,refs,url,image\nTessa Miller,CFO,emi,Office 1,,me@example.com,#dae8fc,#6c8ebf,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-3-128.png\nEdward Morrison,Brand Manager,emo,Office 2,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-10-3-128.png\nAlison Donovan,System Admin,rdo,Office 3,Tessa Miller,me@example.com,#d5e8d4,#82b366,"emo,tva",https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-2-128.png\nEvan Valet,HR Director,tva,Office 4,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-9-2-128.png\n'; Editor.createRoughCanvas=function(a){var d=rough.canvas({getContext:function(){return a}});d.draw=function(d){var b=d.sets||[];d=d.options||this.getDefaultOptions();for(var c=0;cp&&(p=c.strokeWidth/2);a.setStrokeAlpha(a.state.fillAlpha);a.setStrokeColor(c.fill||"");a.setStrokeWidth(p);a.setDashed(!1);this._drawToContext(d,b,c);a.setDashed(f);a.setStrokeWidth(k);a.setStrokeColor(e);a.setStrokeAlpha(l)};d._drawToContext=function(a,d,b){a.begin();for(var c=0;c
')))}catch(K){}})(); (function(){var a=new mxObjectCodec(new ChangePageSetup,["ui","previousColor","previousImage","previousFormat"]);a.beforeDecode=function(a,c,b){b.ui=a.ui;return c};a.afterDecode=function(a,c,b){b.previousColor=b.color;b.previousImage=b.image;b.previousFormat=b.format;null!=b.foldingEnabled&&(b.foldingEnabled=!b.foldingEnabled);null!=b.mathEnabled&&(b.mathEnabled=!b.mathEnabled);null!=b.shadowVisible&&(b.shadowVisible=!b.shadowVisible);return b};mxCodecRegistry.register(a)})(); -(function(){var a=new mxObjectCodec(new ChangeGridColor,["ui"]);a.beforeDecode=function(a,c,b){b.ui=a.ui;return c};mxCodecRegistry.register(a)})();(function(){EditorUi.VERSION="13.8.8";EditorUi.compactUi="atlas"!=uiTheme;mxGraphView.prototype.defaultDarkGridColor="#6e6e6e";"dark"==uiTheme&&(mxGraphView.prototype.gridColor=mxGraphView.prototype.defaultDarkGridColor);EditorUi.enableLogging="1"!=urlParams.stealth&&(/.*\.draw\.io$/.test(window.location.hostname)||/.*\.diagrams\.net$/.test(window.location.hostname))&&"support.draw.io"!=window.location.hostname;EditorUi.drawHost=window.DRAWIO_BASE_URL;EditorUi.lightboxHost=window.DRAWIO_LIGHTBOX_URL; +(function(){var a=new mxObjectCodec(new ChangeGridColor,["ui"]);a.beforeDecode=function(a,c,b){b.ui=a.ui;return c};mxCodecRegistry.register(a)})();(function(){EditorUi.VERSION="13.8.9";EditorUi.compactUi="atlas"!=uiTheme;mxGraphView.prototype.defaultDarkGridColor="#6e6e6e";"dark"==uiTheme&&(mxGraphView.prototype.gridColor=mxGraphView.prototype.defaultDarkGridColor);EditorUi.enableLogging="1"!=urlParams.stealth&&(/.*\.draw\.io$/.test(window.location.hostname)||/.*\.diagrams\.net$/.test(window.location.hostname))&&"support.draw.io"!=window.location.hostname;EditorUi.drawHost=window.DRAWIO_BASE_URL;EditorUi.lightboxHost=window.DRAWIO_LIGHTBOX_URL; EditorUi.lastErrorMessage=null;EditorUi.ignoredAnonymizedChars="\n\t`~!@#$%^&*()_+{}|:\"<>?-=[];'./,\n\t";EditorUi.templateFile=TEMPLATE_PATH+"/index.xml";EditorUi.cacheUrl="1"==urlParams.dev?"/cache":window.REALTIME_URL;null==EditorUi.cacheUrl&&"undefined"!==typeof DrawioFile&&(DrawioFile.SYNC="none");Editor.cacheTimeout=1E4;EditorUi.enablePlantUml=EditorUi.enableLogging;EditorUi.isElectronApp=null!=window&&null!=window.process&&null!=window.process.versions&&null!=window.process.versions.electron; EditorUi.enableDrafts=!mxClient.IS_CHROMEAPP&&!EditorUi.isElectronApp&&isLocalStorage&&"0"!=urlParams.drafts;EditorUi.scratchpadHelpLink="https://desk.draw.io/support/solutions/articles/16000042367";EditorUi.defaultMermaidConfig={theme:"neutral",arrowMarkerAbsolute:!1,flowchart:{htmlLabels:!1},sequence:{diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,mirrorActors:!0,bottomMarginAdj:1,useMaxWidth:!0,rightAngles:!1,showSequenceNumbers:!1}, gantt:{titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,leftPadding:75,gridLineStartPadding:35,fontSize:11,fontFamily:'"Open-Sans", "sans-serif"',numberSectionStyles:4,axisFormat:"%Y-%m-%d"}};EditorUi.logError=function(a,b,c,e,f,g,q){g=null!=g?g:0<=a.indexOf("NetworkError")||0<=a.indexOf("SecurityError")||0<=a.indexOf("NS_ERROR_FAILURE")||0<=a.indexOf("out of memory")?"CONFIG":"SEVERE";if(EditorUi.enableLogging&&"1"!=urlParams.dev)try{if(a!=EditorUi.lastErrorMessage&&(null==a||null==b||-1==a.indexOf("Script error")&& @@ -10741,7 +10742,8 @@ OneDriveClient.prototype.getAccountTypeAndEndpoint=function(a,e){this.get(this.b a();return}}catch(f){}e({message:mxResources.get("unknownError")+" (Code: "+c.getStatus()+")"})}),e)}; OneDriveClient.prototype.executeRequest=function(a,e,c){var b=mxUtils.bind(this,function(g){var f=!0,m=window.setTimeout(mxUtils.bind(this,function(){f=!1;c({code:App.ERROR_TIMEOUT,retry:b})}),this.ui.timeout);this.get(a,mxUtils.bind(this,function(a){window.clearTimeout(m);f&&(200<=a.getStatus()&&299>=a.getStatus()||404==a.getStatus()?(null==this.user&&this.updateUser(this.emptyFn,this.emptyFn,!0),e(a)):g||401!==a.getStatus()&&400!==a.getStatus()?c(this.parseRequestText(a)):this.authenticate(function(){b(!0)}, c,g))}),mxUtils.bind(this,function(a){window.clearTimeout(m);f&&c(a)}))});null==this.token||6E4>this.tokenExpiresOn-Date.now()?this.authenticate(function(){b(!0)},c):b(!1)};OneDriveClient.prototype.checkToken=function(a){null==this.token||null==this.tokenRefreshThread||6E4>this.tokenExpiresOn-Date.now()?this.authenticate(a,this.emptyFn):a()};OneDriveClient.prototype.getItemRef=function(a){var e=a.split("/");return 1=a.getStatus()){var b=JSON.parse(a.getText()),f=/\.png$/i.test(b.name);if(/\.v(dx|sdx?)$/i.test(b.name)||/\.gliffy$/i.test(b.name)||/\.pdf$/i.test(b.name)||!this.ui.useCanvasForExport&&f)this.ui.convertFile(b["@microsoft.graph.downloadUrl"],b.name,null!=b.file?b.file.mimeType:null,this.extension,e,c);else{var d=!0,k=window.setTimeout(mxUtils.bind(this, function(){d=!1;c({code:App.ERROR_TIMEOUT})}),this.ui.timeout);this.ui.editor.loadUrl(b["@microsoft.graph.downloadUrl"],mxUtils.bind(this,function(a){try{if(window.clearTimeout(k),d){/\.html$/i.test(b.name)&&(a=this.removeExtraHtmlContent(a));var l=f?a.lastIndexOf(","):-1,m=null;if(0=a.status?e(new LocalFile(this.ui,a.responseText,b.name+this.extension,!0)):null!=c&&c({message:mxResources.get("errorLoadingFile")}))}catch(y){if(null!=c)c(y);else throw y;}}),b.name):null!=m?e(m):g?e(new OneDriveLibrary(this.ui, @@ -10979,9 +10981,9 @@ App.prototype.checkDrafts=function(){try{var a=Editor.guid();localStorage.setIte 1a?200:300,3a?200:300,3'; return str; }; @@ -4866,7 +4882,7 @@ LucidImporter = {}; { if (properties.Rounding > 0) { - return 'rounded=1;absoluteArcSize=1;arcSize=' + properties.Rounding * 0.6 + ';'; + return 'rounded=1;absoluteArcSize=1;arcSize=' + Math.round(properties.Rounding * 0.6) + ';'; } } // else if (properties.Rounding == null) diff --git a/src/main/webapp/js/diagramly/OneDriveClient.js b/src/main/webapp/js/diagramly/OneDriveClient.js index c87b5455..507b749f 100644 --- a/src/main/webapp/js/diagramly/OneDriveClient.js +++ b/src/main/webapp/js/diagramly/OneDriveClient.js @@ -536,7 +536,7 @@ OneDriveClient.prototype.getItemURL = function(id, relative) { var driveId = idParts[0]; var itemId = idParts[1]; - return (relative? '' : this.baseUrl) + '/drives/' + driveId + '/items/' + itemId; + return (relative? '' : this.baseUrl) + '/drives/' + driveId + (itemId == 'root' ? '/root' : '/items/' + itemId); } else { diff --git a/src/main/webapp/js/extensions.min.js b/src/main/webapp/js/extensions.min.js index 9f20852e..d667f436 100644 --- a/src/main/webapp/js/extensions.min.js +++ b/src/main/webapp/js/extensions.min.js @@ -1,82 +1,83 @@ LucidImporter={}; (function(){function f(a,b){function d(a){var b="",d=a.t,k=a.l||{};if(null==d||0!=y&&y==d.v&&l==k.v)null==d&&(y&&(b+=c(!0),y=!1),b+='
",E.push("li"),b+=''}function k(a){if(0==Object.keys(a).length)return""; -var b="",d=0;if(a.lk){var k=a.lk;null!=k.v&&0',C.push("a"),d++)}b+='"}while(0/g,">");do for(b=D.pop(),d=0;d"}while(k&&0=Ta&&(pN)break;eb=M.s;for(0 -N)break;W=S.e;do delete e[S.n],S=g[++Ta];while(null!=S&&S.e==W);z+=n(a,eb,W);eb=W}else break}z+=n(null,null,null,!0);R&&(z+=c(!0));return z}function g(a){y=!1;var b=null!=a.Text?a.Text:null!=a.Value?a.Value:a.Lane_0;null==b&&null!=a.State?null!=a.State.t&&(b=a.State):null==b&&null!=a.Note?null!=a.Note.t&&(b=a.Note):null==b&&null!=a.Title?null!=a.Title.t&&(b=a.Title):null!=a.t&&(b=a);null==b&&null!=a.TextAreas?null!=a.TextAreas.Text&&null!=a.TextAreas.Text.Value&&null!=a.TextAreas.Text.Value.t&&(b= -a.TextAreas.Text.Value):null==b&&null!=a.t0&&null!=a.t0.t&&(b=a.t0);if(null!=b){if(null!=b.t){a=b.t;a=a.replace(/\u2028/g,"\n");b=b.m;try{for(var d=0;d/g,">")}if(null!=b.Value&&null!=b.Value.t)return b.Value.t=b.Value.t.replace(//g,">"),b.Value.t}return""}function p(a){return null!=a.Action?a.Action: -a}function e(a){if(null!=a.Text){if(null!=a.Text.m)return a.Text.m}else if(null!=a.TextAreas){if(null!=a.TextAreas.Text&&null!=a.TextAreas.Text.Value&&null!=a.TextAreas.Text.Value.m)return a.TextAreas.Text.Value.m}else{if(null!=a.m)return a.m;if(null!=a.Title&&null!=a.Title.m)return a.Title.m}return null}function m(b,c){return"whiteSpace=wrap;"+(c?"html=1;":a(b)+d(b)+k(b)+w(b)+x(b)+z(b)+B(b)+C(b))+A(b)+D(b)}function c(a,d,k,c,n){var h="";null!=a&&""!=a&&";"!=a.charAt(a.length-1)&&(h=";");return h+= -"whiteSpace=wrap;"+(n?tc(a,"html")?"":"html=1;":b(mxConstants.STYLE_FONTSIZE,a,d,k,c)+b(mxConstants.STYLE_FONTCOLOR,a,d,k,c)+b(mxConstants.STYLE_FONTSTYLE,a,d,k,c)+b(mxConstants.STYLE_ALIGN,a,d,k,c)+b(mxConstants.STYLE_SPACING_LEFT,a,d,k,c)+b(mxConstants.STYLE_SPACING_RIGHT,a,d,k,c)+b(mxConstants.STYLE_SPACING_TOP,a,d,k,c)+b(mxConstants.STYLE_SPACING_BOTTOM,a,d,k,c))+b(mxConstants.STYLE_SPACING,a,d,k,c)+b(mxConstants.STYLE_VERTICAL_ALIGN,a,d,k,c)+b(mxConstants.STYLE_STROKECOLOR,a,d,k,c)+b(mxConstants.STYLE_OPACITY, -a,d,k,c)+b(mxConstants.STYLE_ROUNDED,a,d,k,c)+b(mxConstants.STYLE_ROTATION,a,d,k,c)+b(mxConstants.STYLE_FLIPH,a,d,k,c)+b(mxConstants.STYLE_FLIPV,a,d,k,c)+b(mxConstants.STYLE_SHADOW,a,d,k,c)+b(mxConstants.STYLE_FILLCOLOR,a,d,k,c)+b(mxConstants.STYLE_DASHED,a,d,k,c)+b(mxConstants.STYLE_STROKEWIDTH,a,d,k,c)+b(mxConstants.STYLE_IMAGE,a,d,k,c)}function b(b,c,n,f,h){if(!tc(c,b))switch(b){case mxConstants.STYLE_FONTSIZE:return a(n);case mxConstants.STYLE_FONTCOLOR:return d(n);case mxConstants.STYLE_FONTSTYLE:return k(n); -case mxConstants.STYLE_ALIGN:return w(n);case mxConstants.STYLE_SPACING_LEFT:return x(n);case mxConstants.STYLE_SPACING_RIGHT:return z(n);case mxConstants.STYLE_SPACING_TOP:return B(n);case mxConstants.STYLE_SPACING_BOTTOM:return C(n);case mxConstants.STYLE_SPACING:return A(n);case mxConstants.STYLE_VERTICAL_ALIGN:return D(n);case mxConstants.STYLE_STROKECOLOR:return E(n,f);case mxConstants.STYLE_OPACITY:return O(n,f,h);case mxConstants.STYLE_ROUNDED:return b=!h.edge&&!h.style.includes("rounded")&& -null!=n.Rounding&&0k;)c=d["m"+k],null!=c&&(n=na(c,n,a)),k++;null!=d.Text&&(n=na(d.Text,n,a));d=null!=b?b.TextAreas:a.TextAreas;null!=d.Message&&(n=na(d.Message,n,a))}return n}function na(a,b,d){var k=2*(parseFloat(a.Location)-.5);isNaN(k)&&null!=a.Text&&null!=a.Text.Location&&(k=2*(parseFloat(a.Text.Location)-.5));d=mxCell;var c=g(a),k=new mxGeometry(isNaN(k)?0:k,0,0,0),f="11",w="";if(null!=a&&null!=a.Value&&null!=a.Value.m)for(var w=n(a.Value.m), -m=0;m'];p.push("");for(var B=null,e=0;e')}if(null!=A.n1){var E;var R=z[A.p2].x,y=z[A.p2].y,W=k,l=n,N=new Ub(z[A.p1].x,z[A.p1].y,A.n1.x,A.n1.y,z[A.p2].x,z[A.p2].y,A.n2.x,A.n2.y);if(2<=N.getSize()){N.getX(0);N.getY(0);N.getX(1);N.getY(1);for(var R=Math.round(100*R/W*100)/100,y=Math.round(100*y/l*100)/100,W=[],l=[],ca=[],M=N.getSize(),S=0;S';E=G}else E=void 0;p.push(E)}else C=z[A.p2].x,D=z[A.p2].y,C=100*C/k,D=100*D/n,C=Math.round(100*C)/100,D=Math.round(100*D)/100,p.push('');B=A.p2}p.push("");p.push("");p.push("");d.push({shapeStencil:"stencil("+Graph.compress(p.join(""))+")",FillColor:w,LineColor:x, -LineWidth:m})}LucidImporter.stencilsMap[a]={text:b.Text,w:k,h:n,stencils:d}}catch(ld){console.log("Stencil parsing error:",ld)}}function wb(a,b,d,k,n,c,f,w){a=new mxCell("",new mxGeometry(a,b,0,0),"strokeColor=none;fillColor=none;");a.vertex=!0;f.insert(a);c=[a];d=d.clone();w.insertEdge(d,!1);a.insertEdge(d,!0);c.push(d);k.push(n.addCell(d,null,null,null,null))}function ta(a,b,d,k,n,c,f,w,x){a=new mxCell("",new mxGeometry(a,b,0,0),"strokeColor=none;fillColor=none;");a.vertex=!0;x.insert(a);d=new mxCell("", -new mxGeometry(d,k,0,0),"strokeColor=none;fillColor=none;");d.vertex=!0;x.insert(d);w=[d];n=n.clone();a.insertEdge(n,!0);d.insertEdge(n,!1);w.push(n);c.push(f.addCell(n,null,null,null,null))}function fa(a,b,d,k,n,f){k.style="rounded=1;absoluteArcSize=1;fillColor=#ffffff;arcSize=2;strokeColor=#dddddd;";k.style+=c(k.style,n,f,k);b=g(n);k.vertex=!0;a=new mxCell(b,new mxGeometry(0,.5,24,24),"dashed=0;connectable=0;html=1;strokeColor=none;"+mxConstants.STYLE_SHAPE+"=mxgraph.gcp2."+a+";part=1;shadow=0;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=5;"); -a.style+=c(a.style,n,f,a,y);a.geometry.relative=!0;a.geometry.offset=new mxPoint(5,-12);a.vertex=!0;k.insert(a)}function ka(a,b,d,k,n,f,w,x){n="transparent"!=a?mxConstants.STYLE_SHAPE+"=mxgraph.gcp2.":mxConstants.STYLE_SHAPE+"=";f.style="rounded=1;absoluteArcSize=1;arcSize=2;verticalAlign=bottom;fillColor=#ffffff;strokeColor=#dddddd;whiteSpace=wrap;";f.style+=c(f.style,w,x,f);f.value=g(w);f.vertex=!0;a=new mxCell(null,new mxGeometry(.5,0,.7*k*b,.7*k*d),n+a+";part=1;dashed=0;connectable=0;html=1;strokeColor=none;shadow=0;"); -a.geometry.relative=!0;a.geometry.offset=new mxPoint(-b*k*.35,10+(1-d)*k*.35);a.vertex=!0;a.style+=c(a.style,w,x,a,y);f.insert(a)}function tc(a,b){return null==a||null==b||!a.includes(";"+b+"=")&&a.substring(0,b.length+1)!=b+"="?!1:!0}function Yc(b,n,f){var e=p(b),h=e.Properties,ja=h.BoundingBox,t=Math.round(.6*ja.w),r=Math.round(.6*ja.h),pa=Math.round(.6*ja.x+Ib),na=Math.round(.6*ja.y+Jb);null==b.Class||"GCPInputDatabase"!==b.Class&&"GCPInputRecord"!==b.Class&&"GCPInputPayment"!==b.Class&&"GCPInputGateway"!== -b.Class&&"GCPInputLocalCompute"!==b.Class&&"GCPInputBeacon"!==b.Class&&"GCPInputStorage"!==b.Class&&"GCPInputList"!==b.Class&&"GCPInputStream"!==b.Class&&"GCPInputMobileDevices"!==b.Class&&"GCPInputCircuitBoard"!==b.Class&&"GCPInputLive"!==b.Class&&"GCPInputUsers"!==b.Class&&"GCPInputLaptop"!==b.Class&&"GCPInputApplication"!==b.Class&&"GCPInputLightbulb"!==b.Class&&"GCPInputGame"!==b.Class&&"GCPInputDesktop"!==b.Class&&"GCPInputDesktopAndMobile"!==b.Class&&"GCPInputWebcam"!==b.Class&&"GCPInputSpeaker"!== -b.Class&&"GCPInputRetail"!==b.Class&&"GCPInputReport"!==b.Class&&"GCPInputPhone"!==b.Class&&"GCPInputBlank"!==b.Class||(r+=20);v=new mxCell("",new mxGeometry(pa,na,t,r),"html=1;whiteSpace=wrap;");v.vertex=!0;v.zOrder=h.ZOrder;var Bb=null!=b.Class?b.Class:null!=e?e.Class:null;switch(Bb){case "BraceNoteBlock":case "UI2BraceNoteBlock":var uc=!1;null!=h.BraceDirection&&"Right"==h.BraceDirection&&(uc=!0);var Ta=null,qa=null;uc?(Ta=new mxCell("",new mxGeometry(t-.125*r,0,.125*r,r),"shape=curlyBracket;rounded=1;"), -qa=new mxCell("",new mxGeometry(0,0,t-.125*r,r),"strokeColor=none;fillColor=none;")):(Ta=new mxCell("",new mxGeometry(0,0,.125*r,r),"shape=curlyBracket;rounded=1;flipH=1;"),qa=new mxCell("",new mxGeometry(.125*r,0,t-.125*r,r),"strokeColor=none;fillColor=none;"));v.style="strokeColor=none;fillColor=none;";v.style+=c(v.style,h,e,v);Ta.vertex=!0;v.insert(Ta);Ta.style+=c(Ta.style,h,e,Ta);qa.vertex=!0;qa.value=g(h);v.insert(qa);qa.style+=c(qa.style,h,e,qa,y);break;case "BPMNAdvancedPoolBlockRotated":case "UMLMultiLanePoolRotatedBlock":case "UMLMultiLanePoolBlock":case "BPMNAdvancedPoolBlock":case "AdvancedSwimLaneBlockRotated":case "AdvancedSwimLaneBlock":case "UMLSwimLaneBlockV2":var Ea= -"MainText",Kb=null,eb="HeaderFill_",Ub="BodyFill_",Wc=25,Hb=25,sc=0;if(null!=h.Lanes)sc=h.Lanes.length;else if(null!=h.PrimaryLane){for(var Tb=function(a){if(a)32>a?a=32:208",E.push("li"),b+='')}function k(a){if(0==Object.keys(a).length)return"";var b="",d=0;if(a.lk){var k=a.lk;null!=k.v&&0',C.push("a"),d++)}b+='"}while(0/g,">");do for(b=D.pop(),d=0;d"}while(k&&0=Ta&& +(pN)break;eb=M.s;for(0N)break;W=S.e;do delete e[S.n],S=g[++Ta];while(null!=S&&S.e==W);z+=n(a,eb,W);eb=W}else break}z+=n(null,null,null,!0);R&&(z+=c(!0));return z}function g(a){y=!1;var b=null!=a.Text?a.Text:null!=a.Value?a.Value:a.Lane_0;null==b&&null!=a.State?null!=a.State.t&&(b=a.State):null==b&&null!=a.Note?null!=a.Note.t&&(b=a.Note):null==b&&null!= +a.Title?null!=a.Title.t&&(b=a.Title):null!=a.t&&(b=a);null==b&&null!=a.TextAreas?null!=a.TextAreas.Text&&null!=a.TextAreas.Text.Value&&null!=a.TextAreas.Text.Value.t&&(b=a.TextAreas.Text.Value):null==b&&null!=a.t0&&null!=a.t0.t&&(b=a.t0);if(null!=b){if(null!=b.t){a=b.t;a=a.replace(/\u2028/g,"\n");b=b.m;try{for(var d=0;d/g,">")}if(null!= +b.Value&&null!=b.Value.t)return b.Value.t=b.Value.t.replace(//g,">"),b.Value.t}return""}function p(a){return null!=a.Action?a.Action:a}function e(a){if(null!=a.Text){if(null!=a.Text.m)return a.Text.m}else if(null!=a.TextAreas){if(null!=a.TextAreas.Text&&null!=a.TextAreas.Text.Value&&null!=a.TextAreas.Text.Value.m)return a.TextAreas.Text.Value.m}else{if(null!=a.m)return a.m;if(null!=a.Title&&null!=a.Title.m)return a.Title.m}return null}function m(b,n){return"whiteSpace=wrap;"+ +(n?"html=1;":a(b)+d(b)+k(b)+w(b)+x(b)+z(b)+B(b)+C(b))+A(b)+D(b)}function c(a,d,k,n,c){var h="";null!=a&&""!=a&&";"!=a.charAt(a.length-1)&&(h=";");return h+="whiteSpace=wrap;"+(c?tc(a,"html")?"":"html=1;":b(mxConstants.STYLE_FONTSIZE,a,d,k,n)+b(mxConstants.STYLE_FONTCOLOR,a,d,k,n)+b(mxConstants.STYLE_FONTSTYLE,a,d,k,n)+b(mxConstants.STYLE_ALIGN,a,d,k,n)+b(mxConstants.STYLE_SPACING_LEFT,a,d,k,n)+b(mxConstants.STYLE_SPACING_RIGHT,a,d,k,n)+b(mxConstants.STYLE_SPACING_TOP,a,d,k,n)+b(mxConstants.STYLE_SPACING_BOTTOM, +a,d,k,n))+b(mxConstants.STYLE_SPACING,a,d,k,n)+b(mxConstants.STYLE_VERTICAL_ALIGN,a,d,k,n)+b(mxConstants.STYLE_STROKECOLOR,a,d,k,n)+b(mxConstants.STYLE_OPACITY,a,d,k,n)+b(mxConstants.STYLE_ROUNDED,a,d,k,n)+b(mxConstants.STYLE_ROTATION,a,d,k,n)+b(mxConstants.STYLE_FLIPH,a,d,k,n)+b(mxConstants.STYLE_FLIPV,a,d,k,n)+b(mxConstants.STYLE_SHADOW,a,d,k,n)+b(mxConstants.STYLE_FILLCOLOR,a,d,k,n)+b(mxConstants.STYLE_DASHED,a,d,k,n)+b(mxConstants.STYLE_STROKEWIDTH,a,d,k,n)+b(mxConstants.STYLE_IMAGE,a,d,k,n)} +function b(b,n,c,f,h){if(!tc(n,b))switch(b){case mxConstants.STYLE_FONTSIZE:return a(c);case mxConstants.STYLE_FONTCOLOR:return d(c);case mxConstants.STYLE_FONTSTYLE:return k(c);case mxConstants.STYLE_ALIGN:return w(c);case mxConstants.STYLE_SPACING_LEFT:return x(c);case mxConstants.STYLE_SPACING_RIGHT:return z(c);case mxConstants.STYLE_SPACING_TOP:return B(c);case mxConstants.STYLE_SPACING_BOTTOM:return C(c);case mxConstants.STYLE_SPACING:return A(c);case mxConstants.STYLE_VERTICAL_ALIGN:return D(c); +case mxConstants.STYLE_STROKECOLOR:return E(c,f);case mxConstants.STYLE_OPACITY:return O(c,f,h);case mxConstants.STYLE_ROUNDED:return b=!h.edge&&!h.style.includes("rounded")&&null!=c.Rounding&&0k;)c=d["m"+k],null!=c&&(n=na(c,n,a)),k++;null!=d.Text&&(n=na(d.Text,n,a));d=null!=b?b.TextAreas:a.TextAreas;null!=d.Message&&(n=na(d.Message,n,a))}return n}function na(a,b,d){var k=2*(parseFloat(a.Location)-.5);isNaN(k)&&null!=a.Text&&null!=a.Text.Location&&(k=2*(parseFloat(a.Text.Location)-.5));d=mxCell;var c= +g(a),k=new mxGeometry(isNaN(k)?0:k,0,0,0),f="11",w="";if(null!=a&&null!=a.Value&&null!=a.Value.m)for(var w=n(a.Value.m),m=0;m'];p.push(""); +for(var B=null,e=0;e')}if(null!=A.n1){var E;var R=z[A.p2].x,y=z[A.p2].y,W=k,l=n,N=new Ub(z[A.p1].x,z[A.p1].y,A.n1.x,A.n1.y,z[A.p2].x,z[A.p2].y,A.n2.x,A.n2.y);if(2<=N.getSize()){N.getX(0);N.getY(0);N.getX(1);N.getY(1);for(var R=Math.round(100*R/W*100)/100,y=Math.round(100*y/l*100)/100,W=[],l=[],ca=[],M=N.getSize(),S=0;S';E=G}else E=void 0;p.push(E)}else C=z[A.p2].x,D=z[A.p2].y,C=100*C/k,D=100*D/n,C=Math.round(100*C)/100,D=Math.round(100*D)/100,p.push('');B=A.p2}p.push("");p.push("");p.push(""); +d.push({shapeStencil:"stencil("+Graph.compress(p.join(""))+")",FillColor:w,LineColor:x,LineWidth:m})}LucidImporter.stencilsMap[a]={text:b.Text,w:k,h:n,stencils:d}}catch(ld){console.log("Stencil parsing error:",ld)}}function wb(a,b,d,k,n,c,f,w){a=new mxCell("",new mxGeometry(a,b,0,0),"strokeColor=none;fillColor=none;");a.vertex=!0;f.insert(a);c=[a];d=d.clone();w.insertEdge(d,!1);a.insertEdge(d,!0);c.push(d);k.push(n.addCell(d,null,null,null,null))}function ta(a,b,d,k,n,c,f,w,x){a=new mxCell("",new mxGeometry(a, +b,0,0),"strokeColor=none;fillColor=none;");a.vertex=!0;x.insert(a);d=new mxCell("",new mxGeometry(d,k,0,0),"strokeColor=none;fillColor=none;");d.vertex=!0;x.insert(d);w=[d];n=n.clone();a.insertEdge(n,!0);d.insertEdge(n,!1);w.push(n);c.push(f.addCell(n,null,null,null,null))}function fa(a,b,d,k,n,f){k.style="rounded=1;absoluteArcSize=1;fillColor=#ffffff;arcSize=2;strokeColor=#dddddd;";k.style+=c(k.style,n,f,k);b=g(n);k.vertex=!0;a=new mxCell(b,new mxGeometry(0,.5,24,24),"dashed=0;connectable=0;html=1;strokeColor=none;"+ +mxConstants.STYLE_SHAPE+"=mxgraph.gcp2."+a+";part=1;shadow=0;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=5;");a.style+=c(a.style,n,f,a,y);a.geometry.relative=!0;a.geometry.offset=new mxPoint(5,-12);a.vertex=!0;k.insert(a)}function ka(a,b,d,k,n,f,w,x){n="transparent"!=a?mxConstants.STYLE_SHAPE+"=mxgraph.gcp2.":mxConstants.STYLE_SHAPE+"=";f.style="rounded=1;absoluteArcSize=1;arcSize=2;verticalAlign=bottom;fillColor=#ffffff;strokeColor=#dddddd;whiteSpace=wrap;"; +f.style+=c(f.style,w,x,f);f.value=g(w);f.vertex=!0;a=new mxCell(null,new mxGeometry(.5,0,.7*k*b,.7*k*d),n+a+";part=1;dashed=0;connectable=0;html=1;strokeColor=none;shadow=0;");a.geometry.relative=!0;a.geometry.offset=new mxPoint(-b*k*.35,10+(1-d)*k*.35);a.vertex=!0;a.style+=c(a.style,w,x,a,y);f.insert(a)}function tc(a,b){return null==a||null==b||!a.includes(";"+b+"=")&&a.substring(0,b.length+1)!=b+"="?!1:!0}function Yc(b,n,f){var e=p(b),h=e.Properties,ja=h.BoundingBox,t=Math.round(.6*ja.w),r=Math.round(.6* +ja.h),pa=Math.round(.6*ja.x+Ib),na=Math.round(.6*ja.y+Jb);null==b.Class||"GCPInputDatabase"!==b.Class&&"GCPInputRecord"!==b.Class&&"GCPInputPayment"!==b.Class&&"GCPInputGateway"!==b.Class&&"GCPInputLocalCompute"!==b.Class&&"GCPInputBeacon"!==b.Class&&"GCPInputStorage"!==b.Class&&"GCPInputList"!==b.Class&&"GCPInputStream"!==b.Class&&"GCPInputMobileDevices"!==b.Class&&"GCPInputCircuitBoard"!==b.Class&&"GCPInputLive"!==b.Class&&"GCPInputUsers"!==b.Class&&"GCPInputLaptop"!==b.Class&&"GCPInputApplication"!== +b.Class&&"GCPInputLightbulb"!==b.Class&&"GCPInputGame"!==b.Class&&"GCPInputDesktop"!==b.Class&&"GCPInputDesktopAndMobile"!==b.Class&&"GCPInputWebcam"!==b.Class&&"GCPInputSpeaker"!==b.Class&&"GCPInputRetail"!==b.Class&&"GCPInputReport"!==b.Class&&"GCPInputPhone"!==b.Class&&"GCPInputBlank"!==b.Class||(r+=20);v=new mxCell("",new mxGeometry(pa,na,t,r),"html=1;overflow=block;whiteSpace=wrap;");v.vertex=!0;v.zOrder=h.ZOrder;var Bb=null!=b.Class?b.Class:null!=e?e.Class:null;switch(Bb){case "BraceNoteBlock":case "UI2BraceNoteBlock":var uc= +!1;null!=h.BraceDirection&&"Right"==h.BraceDirection&&(uc=!0);var Ta=null,qa=null;uc?(Ta=new mxCell("",new mxGeometry(t-.125*r,0,.125*r,r),"shape=curlyBracket;rounded=1;"),qa=new mxCell("",new mxGeometry(0,0,t-.125*r,r),"strokeColor=none;fillColor=none;")):(Ta=new mxCell("",new mxGeometry(0,0,.125*r,r),"shape=curlyBracket;rounded=1;flipH=1;"),qa=new mxCell("",new mxGeometry(.125*r,0,t-.125*r,r),"strokeColor=none;fillColor=none;"));v.style="strokeColor=none;fillColor=none;";v.style+=c(v.style,h,e, +v);Ta.vertex=!0;v.insert(Ta);Ta.style+=c(Ta.style,h,e,Ta);qa.vertex=!0;qa.value=g(h);v.insert(qa);qa.style+=c(qa.style,h,e,qa,y);break;case "BPMNAdvancedPoolBlockRotated":case "UMLMultiLanePoolRotatedBlock":case "UMLMultiLanePoolBlock":case "BPMNAdvancedPoolBlock":case "AdvancedSwimLaneBlockRotated":case "AdvancedSwimLaneBlock":case "UMLSwimLaneBlockV2":var Ea="MainText",Kb=null,eb="HeaderFill_",Ub="BodyFill_",Wc=25,Hb=25,sc=0;if(null!=h.Lanes)sc=h.Lanes.length;else if(null!=h.PrimaryLane){for(var Tb= +function(a){if(a)32>a?a=32:208 d.getThemeIndex()&&d.processTheme();var k=function(a,b){null==a.entries&&(a.entries=[]);for(var d=0;dp?"1":"0",p=D'}return""};return a}(f.mxgraph.io.vsdx.geometry.Row);e.ArcTo=c;c.__class="com.mxgraph.io.vsdx.geometry.ArcTo"})(e.geometry||(e.geometry={}))})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); (function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a){return b.call(this,a,null,null)||this}__extends(a,b);a.prototype.handle=function(a,b){return""};return a}(f.mxgraph.io.vsdx.geometry.Row);e.DelRow=c;c.__class="com.mxgraph.io.vsdx.geometry.DelRow"})(e.geometry||(e.geometry={}))})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); -(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a,c,f,e,g,m,p){a=b.call(this,a,c,f)||this;a.a=e;a.b=g;a.c=m;a.d=p;return a}__extends(a,b);a.prototype.handle=function(a,b){if(null!=this.x&&null!=this.y&&null!=this.a&&null!=this.b&&null!=this.c&&null!=this.d){var d=b.getHeight(),c=b.getWidth(),k=this.x*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),e=this.y*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),e=d-e,g=this.a*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(), -m=this.b*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),m=d-m,p=this.c*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),D=this.d*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),g=Math.abs(g-k),m=Math.abs(m-e),m=Math.sqrt(g*g+m*m),p=Math.abs(p-k),D=Math.abs(d-D-e),k=100*k/c,D=Math.round(100*Math.sqrt(p*p+D*D)/d/2*100)/100,c=Math.round(100*m/c/2*100)/100,p=Math.round(100*(k-2*c))/100,k=Math.round(100*(k+2*c))/100,d=Math.round(100*e/d*100)/100;return''}return""};return a}(f.mxgraph.io.vsdx.geometry.Row);e.Ellipse= +(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a,k,c,f,e,g,m){a=b.call(this,a,k,c)||this;a.a=f;a.b=e;a.c=g;a.d=m;return a}__extends(a,b);a.prototype.handle=function(a,b){if(null!=this.x&&null!=this.y&&null!=this.a&&null!=this.b&&null!=this.c&&null!=this.d){var d=b.getHeight(),k=b.getWidth(),c=this.x*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),e=this.y*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),e=d-e,g=this.a*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(), +m=this.b*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),m=d-m,p=this.c*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),D=this.d*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),g=Math.abs(g-c),m=Math.abs(m-e),m=Math.sqrt(g*g+m*m),p=Math.abs(p-c),D=Math.abs(d-D-e),c=100*c/k,D=Math.round(100*Math.sqrt(p*p+D*D)/d/2*100)/100,k=Math.round(100*m/k/2*100)/100,p=Math.round(100*(c-2*k))/100,c=Math.round(100*(c+2*k))/100,d=Math.round(100*e/d*100)/100;return''}return""};return a}(f.mxgraph.io.vsdx.geometry.Row);e.Ellipse= c;c.__class="com.mxgraph.io.vsdx.geometry.Ellipse"})(e.geometry||(e.geometry={}))})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); -(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a,c,f,e,g,m,p){a=b.call(this,a,c,f)||this;a.a=e;a.b=g;a.c=m;a.d=p;return a}__extends(a,b);a.prototype.handle=function(a,b){if(null!=this.x&&null!=this.y&&null!=this.a&&null!=this.b&&null!=this.c&&null!=this.d){var d=b.getHeight(),c=b.getWidth(),k=this.x*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),e=this.y*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),e=d-e,g=this.a*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(), -m=this.b*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),p=this.c,D=this.d,k=100*k/c,e=100*e/d,E=b.getLastX()*c/100,G=b.getLastY()*d/100,N=k*c/100,O=e*d/100,R=d-m,ca=-p,p=Math.sqrt(E*E+G*G)*Math.cos(Math.atan2(G,E)-ca),m=Math.sqrt(E*E+G*G)*Math.sin(Math.atan2(G,E)-ca),W=Math.sqrt(N*N+O*O)*Math.cos(Math.atan2(O,N)-ca),S=Math.sqrt(N*N+O*O)*Math.sin(Math.atan2(O,N)-ca),M=Math.sqrt(g*g+R*R)*Math.cos(Math.atan2(R,g)-ca),ma=Math.sqrt(g*g+R*R)*Math.sin(Math.atan2(R,g)-ca),ea=((p-W)*(p+W)*(S-ma)-(W- -M)*(W+M)*(m-S)+D*D*(m-S)*(S-ma)*(m-ma))/(2*((p-W)*(S-ma)-(W-M)*(m-S))),ec=((p-W)*(W-M)*(p-M)/(D*D)+(W-M)*(m-S)*(m+S)-(p-W)*(S-ma)*(S+ma))/(2*((W-M)*(m-S)-(p-W)*(S-ma))),ja=p-ea,fc=m-ec,ja=Math.sqrt(ja*ja+fc*fc*D*D),D=ja/D,ca=180*ca/Math.PI,k=Math.round(100*k)/100,e=Math.round(100*e)/100,ja=Math.round(100*ja/c*100)/100,D=Math.round(100*D/d*100)/100,ca=Math.round(100*ca)/100,d=0<(N-E)*(R-G)-(O-G)*(g-E)?"0":"1",c="0";f.mxgraph.io.vsdx.mxVsdxUtils.isInsideTriangle(ea,ec,p,m,W,S,M,ma)&&this.isReflexAngle(ea, -ec,p,m,W,S,M,ma)&&(c="1");b.setLastX(k);b.setLastY(e);return''}return""};a.prototype.isReflexAngle=function(a,b,c,f,e,g,m,p){c-=a;f-=b;g-=b;e=m-a;p-=b;b=a=0;c=180*(Math.atan2(f,c)-Math.atan2(b,a))/Math.PI;e=180*(Math.atan2(g,e)-Math.atan2(b,a))/Math.PI;a=180*(Math.atan2(p, +(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a,k,c,f,e,g,m){a=b.call(this,a,k,c)||this;a.a=f;a.b=e;a.c=g;a.d=m;return a}__extends(a,b);a.prototype.handle=function(a,b){if(null!=this.x&&null!=this.y&&null!=this.a&&null!=this.b&&null!=this.c&&null!=this.d){var d=b.getHeight(),k=b.getWidth(),c=this.x*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),e=this.y*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),e=d-e,g=this.a*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(), +m=this.b*f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),p=this.c,D=this.d,c=100*c/k,e=100*e/d,E=b.getLastX()*k/100,G=b.getLastY()*d/100,N=c*k/100,O=e*d/100,R=d-m,ca=-p,p=Math.sqrt(E*E+G*G)*Math.cos(Math.atan2(G,E)-ca),m=Math.sqrt(E*E+G*G)*Math.sin(Math.atan2(G,E)-ca),W=Math.sqrt(N*N+O*O)*Math.cos(Math.atan2(O,N)-ca),S=Math.sqrt(N*N+O*O)*Math.sin(Math.atan2(O,N)-ca),M=Math.sqrt(g*g+R*R)*Math.cos(Math.atan2(R,g)-ca),ma=Math.sqrt(g*g+R*R)*Math.sin(Math.atan2(R,g)-ca),ea=((p-W)*(p+W)*(S-ma)-(W- +M)*(W+M)*(m-S)+D*D*(m-S)*(S-ma)*(m-ma))/(2*((p-W)*(S-ma)-(W-M)*(m-S))),ec=((p-W)*(W-M)*(p-M)/(D*D)+(W-M)*(m-S)*(m+S)-(p-W)*(S-ma)*(S+ma))/(2*((W-M)*(m-S)-(p-W)*(S-ma))),ja=p-ea,fc=m-ec,ja=Math.sqrt(ja*ja+fc*fc*D*D),D=ja/D,ca=180*ca/Math.PI,c=Math.round(100*c)/100,e=Math.round(100*e)/100,ja=Math.round(100*ja/k*100)/100,D=Math.round(100*D/d*100)/100,ca=Math.round(100*ca)/100,d=0<(N-E)*(R-G)-(O-G)*(g-E)?"0":"1",k="0";f.mxgraph.io.vsdx.mxVsdxUtils.isInsideTriangle(ea,ec,p,m,W,S,M,ma)&&this.isReflexAngle(ea, +ec,p,m,W,S,M,ma)&&(k="1");b.setLastX(c);b.setLastY(e);return''}return""};a.prototype.isReflexAngle=function(a,b,c,f,e,g,m,p){c-=a;f-=b;g-=b;e=m-a;p-=b;b=a=0;c=180*(Math.atan2(f,c)-Math.atan2(b,a))/Math.PI;e=180*(Math.atan2(g,e)-Math.atan2(b,a))/Math.PI;a=180*(Math.atan2(p, m)-Math.atan2(b,a))/Math.PI;c=(c-a)%360;e=(e-a)%360;180c&&(c+=360);180e&&(e+=360);return(0e||0>c&&0=b?c.lineDashPatterns_$LI$()[b]:c.lineDashPatterns_$LI$()[0]};return c}();g.__static_initialized=!1;g.vsdxStyleDebug=!1;g.SPACE=4;g.SHORT_SPACE=2;g.LONG_SPACE=6; g.DOT=1;g.DASH=8;g.LONG_DASH=12;g.SHORT_DASH=4;g.XLONG_DASH=20;g.XSHORT_DASH=2;e.Style=g;g.__class="com.mxgraph.io.vsdx.Style"})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); (function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a,c,e){var d=b.call(this)||this;d.__com_mxgraph_io_vsdx_theme_HslClr_hue=a/360;d.__com_mxgraph_io_vsdx_theme_HslClr_sat=c/100;d.__com_mxgraph_io_vsdx_theme_HslClr_lum=e/100;d.color=(new f.mxgraph.io.vsdx.theme.HSLColor(a,c,e)).toRgb();return d}__extends(a,b);return a}(f.mxgraph.io.vsdx.theme.OoxmlColor);e.HslClr=c;c.__class="com.mxgraph.io.vsdx.theme.HslClr"})(e.theme||(e.theme={}))})(g.vsdx||(g.vsdx={}))})(g.io|| -(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={}));(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a){var c=b.call(this)||this;c.val=a;c.color=new f.mxgraph.io.vsdx.theme.Color(255,255,255);return c}__extends(a,b);return a}(f.mxgraph.io.vsdx.theme.OoxmlColor);e.PrstClr=c;c.__class="com.mxgraph.io.vsdx.theme.PrstClr"})(e.theme||(e.theme={}))})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); -(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a){var c=b.call(this)||this;c.isDynamic=!0;c.val=a;return c}__extends(a,b);a.prototype.calcColor=function(a,c){var d;d=this.val;d="phClr".equals?"phClr".equals(d):"phClr"===d;d?this.color=c.getStyleColor(a):(this.color=c.getSchemeColor(this.val),this.isDynamic=!1);b.prototype.calcColor.call(this,a,c)};return a}(f.mxgraph.io.vsdx.theme.OoxmlColor);e.SchemeClr=c;c.__class="com.mxgraph.io.vsdx.theme.SchemeClr"})(e.theme|| +(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={}));(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a){var d=b.call(this)||this;d.val=a;d.color=new f.mxgraph.io.vsdx.theme.Color(255,255,255);return d}__extends(a,b);return a}(f.mxgraph.io.vsdx.theme.OoxmlColor);e.PrstClr=c;c.__class="com.mxgraph.io.vsdx.theme.PrstClr"})(e.theme||(e.theme={}))})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); +(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a){var d=b.call(this)||this;d.isDynamic=!0;d.val=a;return d}__extends(a,b);a.prototype.calcColor=function(a,c){var d;d=this.val;d="phClr".equals?"phClr".equals(d):"phClr"===d;d?this.color=c.getStyleColor(a):(this.color=c.getSchemeColor(this.val),this.isDynamic=!1);b.prototype.calcColor.call(this,a,c)};return a}(f.mxgraph.io.vsdx.theme.OoxmlColor);e.SchemeClr=c;c.__class="com.mxgraph.io.vsdx.theme.SchemeClr"})(e.theme|| (e.theme={}))})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); (function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a,c,e){var d=b.call(this)||this;d.r=0;d.g=0;d.b=0;d.r=a;d.g=c;d.b=e;d.color=new f.mxgraph.io.vsdx.theme.Color(a,c,e);return d}__extends(a,b);return a}(f.mxgraph.io.vsdx.theme.OoxmlColor);e.ScrgbClr=c;c.__class="com.mxgraph.io.vsdx.theme.ScrgbClr"})(e.theme||(e.theme={}))})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); -(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a){var c=b.call(this)||this;c.hexVal=null;c.hexVal=a;c.color=f.mxgraph.io.vsdx.theme.Color.decodeColorHex(a);return c}__extends(a,b);return a}(f.mxgraph.io.vsdx.theme.OoxmlColor);e.SrgbClr=c;c.__class="com.mxgraph.io.vsdx.theme.SrgbClr"})(e.theme||(e.theme={}))})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); +(function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a){var d=b.call(this)||this;d.hexVal=null;d.hexVal=a;d.color=f.mxgraph.io.vsdx.theme.Color.decodeColorHex(a);return d}__extends(a,b);return a}(f.mxgraph.io.vsdx.theme.OoxmlColor);e.SrgbClr=c;c.__class="com.mxgraph.io.vsdx.theme.SrgbClr"})(e.theme||(e.theme={}))})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); (function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a,c){var d=b.call(this)||this;d.lastClr=null;d.val=a;var k=d.lastClr=c;if(null==k)switch(a){case "windowText":k="000000";break;case "window":k="FFFFFF";break;default:k="FFFFFF"}d.color=f.mxgraph.io.vsdx.theme.Color.decodeColorHex(k);return d}__extends(a,b);return a}(f.mxgraph.io.vsdx.theme.OoxmlColor);e.SysClr=c;c.__class="com.mxgraph.io.vsdx.theme.SysClr"})(e.theme||(e.theme={}))})(g.vsdx||(g.vsdx={}))})(g.io|| (g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); (function(f){(function(g){(function(g){(function(e){(function(e){var c=function(b){function a(a,c,f,e,g,m,p){return b.call(this,a,c,f,e,g,m,p)||this}__extends(a,b);a.prototype.handle=function(a,c){if(null!=this.x&&null!=this.y&&null!=this.a&&null!=this.b&&null!=this.c&&null!=this.d){var d=c.getHeight()/f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$(),k=c.getWidth()/f.mxgraph.io.vsdx.mxVsdxUtils.conversionFactor_$LI$();this.x*=k;this.y*=d;this.a*=k;this.b*=d}return b.prototype.handle.call(this, @@ -1364,9 +1365,9 @@ b.UNICODE_LINE_SEP=String.fromCharCode(8232));return b.UNICODE_LINE_SEP};b.proto this.geomListProcessed=!0}};b.prototype.parseShapeElem=function(a,d){c.prototype.parseShapeElem.call(this,a,d);var k=a.nodeName;if(function(a,b){return a&&a.equals?a.equals(b):a===b}(k,"ForeignData")){var k=function(a,b){for(var c=a.firstChild;null!=c;){if(1==c.nodeType){var k=c;if("rel"==k.nodeName.toLowerCase()&&(k=k.getAttribute("r:id"),null!=k&&0!==k.length)){var c=b.lastIndexOf("/"),f="",e="";try{f=b.substring(0,c),e=b.substring(c,b.length)}catch(O){break}c=d.getRelationship(k,f+"/_rels"+e+".rels"); if(null!=c){k=c.getAttribute("Target")||"";f=c.getAttribute("Type");c=k.lastIndexOf("/");try{k=k.substring(c+1,k.length)}catch(O){break}return{type:f,target:k}}break}}c=c.nextSibling}},e=a.ownerDocument.vsdxFileName,g=a.getAttribute("ForeignType"),m=a.getAttribute("CompressionType")||"",p=null;if(function(a,b){return a&&a.equals?a.equals(b):a===b}(g,"Bitmap"))m=m.toLowerCase();else if(function(a,b){return a&&a.equals?a.equals(b):a===b}(g,"MetaFile"))m="png";else if(function(a,b){return a&&a.equals? a.equals(b):a===b}(g,"Enhanced Metafile")||function(a,b){return a&&a.equals?a.equals(b):a===b}(g,"EnhMetaFile"))m="png";else if("Object"==g){if(p=k(a,e),0'));return b};b.prototype.getTextParagraphFormated=function(a){var b="",c={};c.align=this.getHorizontalAlign(this.pp,!0);c["margin-left"]=this.getIndentLeft(this.pp);c["margin-right"]=this.getIndentRight(this.pp);c["margin-top"]=this.getSpBefore(this.pp)+"px";c["margin-bottom"]=this.getSpAfter(this.pp)+"px";c["text-indent"]=this.getIndentFirst(this.pp);c.valign=this.getAlignVertical();c.direction=this.getTextDirection(this.pp);return b+=this.insertAttributes(a,c)};b.prototype.getTextCharFormated= @@ -1381,8 +1382,8 @@ a.equals(b):a===b}(a.toLowerCase(),"themed")||(b=1===(parseInt(a)&1));return b}; "1"));0===b?a=mxConstants.ALIGN_TOP:2===b&&(a=mxConstants.ALIGN_BOTTOM);return a};b.prototype.getGeomList=function(){return this.geomList};b.prototype.getLastX=function(){return this.lastX};b.prototype.getLastY=function(){return this.lastY};b.prototype.getLastMoveX=function(){return this.lastMoveX};b.prototype.getLastMoveY=function(){return this.lastMoveY};b.prototype.getLastKnot=function(){return this.lastKnot};b.prototype.setLastX=function(a){this.lastX=a};b.prototype.setLastY=function(a){this.lastY= a};b.prototype.setLastMoveX=function(a){this.lastMoveX=a};b.prototype.setLastMoveY=function(a){this.lastMoveY=a};b.prototype.setLastKnot=function(a){this.lastKnot=a};return b}(f.mxgraph.io.vsdx.Style);g.VSDX_START_TIME=-22091688E5;e.Shape=g;g.__class="com.mxgraph.io.vsdx.Shape"})(g.vsdx||(g.vsdx={}))})(g.io||(g.io={}))})(f.mxgraph||(f.mxgraph={}))})(com||(com={})); (function(f){(function(g){(function(g){(function(e){var g=function(c){function b(a,b,k,e,g,m){var d=this;d.masterShape=null;d.master=null;d.parentHeight=0;d=c.call(this,b,m)||this;d.htmlLabels=!0;d.rootShape=d;d.shapeName=null;d.shapeIndex=0;d.vertex=!0;d.childShapes={};var n=d.getMasterId(),w=d.getShapeMasterId();d.master=null!=n?e[n]?e[n]:null:g;null!=d.master&&(d.masterShape=null==n&&null!=w?d.master.getSubShape(w):d.master.getMasterShape());e=d.getNameU();g=e.lastIndexOf(".");-1!==g&&(e=e.substring(0, -g));d.shapeName=e;b=b.getElementsByTagName(f.mxgraph.io.vsdx.mxVsdxConstants.SHAPES);null!=b&&0=window.location.hash.length)&&null!=urlParams.open&&(window.location.hash=urlParams.open);window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||225E6;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","se"];var mxClient={VERSION:"4.2.1",IS_IE:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:null!=navigator.userAgent&&!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:null!=navigator.userAgent&&!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&& +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","se"];var mxClient={VERSION:"4.2.2",IS_IE:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:null!=navigator.userAgent&&!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:null!=navigator.userAgent&&!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:null!=navigator.userAgent&&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:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&0>navigator.userAgent.indexOf("Edge/"),IS_OP:null!=navigator.userAgent&&(0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/")),IS_OT:null!=navigator.userAgent&&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:/Apple Computer, Inc/.test(navigator.vendor),IS_ANDROID:0<=navigator.appVersion.indexOf("Android"),IS_IOS:/iP(hone|od|ad)/.test(navigator.platform),IS_GC:/Google Inc/.test(navigator.vendor),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:"undefined"!==typeof InstallTrigger,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_VML:"MICROSOFT INTERNET EXPLORER"==navigator.appName.toUpperCase(),IS_SVG:"MICROSOFT INTERNET EXPLORER"!= @@ -536,8 +536,9 @@ m,n,p),null!=a&&(u.setAttribute("requiredFeatures","http://www.w3.org/TR/SVG11/f mxSvgCanvas2D.prototype.updateTextNodes=function(a,b,c,d,e,f,g,k,l,m,n){var p=this.state.scale;mxSvgCanvas2D.createCss(c+2,d,e,f,g,k,l,null!=this.state.fontBackgroundColor?this.state.fontBackgroundColor:null,null!=this.state.fontBorderColor?this.state.fontBorderColor:null,"display: flex; align-items: unsafe "+(f==mxConstants.ALIGN_TOP?"flex-start":f==mxConstants.ALIGN_BOTTOM?"flex-end":"center")+"; justify-content: unsafe "+(e==mxConstants.ALIGN_LEFT?"flex-start":e==mxConstants.ALIGN_RIGHT?"flex-end": "center")+"; ",this.getTextCss(),p,mxUtils.bind(this,function(c,d,e,f,g){a+=this.state.dx;b+=this.state.dy;var k=n.firstChild,l=k.firstChild,q=l.firstChild,r=(this.rotateHtml?this.state.rotation:0)+(null!=m?m:0),t=(0!=this.foOffset?"translate("+this.foOffset+" "+this.foOffset+")":"")+(1!=p?"scale("+p+")":"");q.firstChild.setAttribute("style",g);q.setAttribute("style",f);k.setAttribute("width",Math.ceil(1/Math.min(1,p)*100)+"%");k.setAttribute("height",Math.ceil(1/Math.min(1,p)*100)+"%");d=Math.round(b+ d);0>d?k.setAttribute("y",d):(k.removeAttribute("y"),e+="padding-top: "+d+"px; ");l.setAttribute("style",e+"margin-left: "+Math.round(a+c)+"px;");t+=0!=r?"rotate("+r+" "+a+" "+b+")":"";""!=t?n.setAttribute("transform",t):n.removeAttribute("transform");1!=this.state.alpha?n.setAttribute("opacity",this.state.alpha):n.removeAttribute("opacity")}))}; -mxSvgCanvas2D.createCss=function(a,b,c,d,e,f,g,k,l,m,n,p,q){p="box-sizing: border-box; font-size: 0; text-align: "+(c==mxConstants.ALIGN_LEFT?"left":c==mxConstants.ALIGN_RIGHT?"right":"center")+"; ";var r=mxUtils.getAlignmentAsPoint(c,d);c="overflow: hidden; ";d="width: 1px; ";var t="height: 1px; ",u=r.x*a,r=r.y*b;g?(d="width: "+Math.round(a)+"px; ",p+="max-height: "+Math.round(b)+"px; ",r=0):"fill"==f?(d="width: "+Math.round(a)+"px; ",t="height: "+Math.round(b)+"px; ",n+="width: 100%; height: 100%; ", -p+=d+t):"width"==f?(d="width: "+Math.round(a)+"px; ",n+="width: 100%; ",p+=d,r=0,0=document.documentMode)?this.updateHtmlFilter():this.updateHtmlTransform()}}; mxText.prototype.redrawHtmlShapeWithCss3=function(){var a=Math.max(0,Math.round(this.bounds.width/this.scale)),b=Math.max(0,Math.round(this.bounds.height/this.scale)),c="position: absolute; left: "+Math.round(this.bounds.x)+"px; top: "+Math.round(this.bounds.y)+"px; pointer-events: none; ",d=this.getTextCss();mxSvgCanvas2D.createCss(a+2,b,this.align,this.valign,this.wrap,this.overflow,this.clipped,null!=this.background?mxUtils.htmlEntities(this.background):null,null!=this.border?mxUtils.htmlEntities(this.border): -null,c,d,this.scale,mxUtils.bind(this,function(a,b,c,d,l,m){a=this.getTextRotation();a=(1!=this.scale?"scale("+this.scale+") ":"")+(0!=a?"rotate("+a+"deg) ":"")+(0!=this.margin.x||0!=this.margin.y?"translate("+100*this.margin.x+"%,"+100*this.margin.y+"%)":"");""!=a&&(a="transform-origin: 0 0; transform: "+a+"; ");""==m?(c+=d,d="display:inline-block; min-width: 100%; "+a):(d+=a,mxClient.IS_SF&&(d+="-webkit-clip-path: content-box;"));100>this.opacity&&(l+="opacity: "+this.opacity/100+"; ");this.node.setAttribute("style", -c);c=mxUtils.isNode(this.value)?this.value.outerHTML:this.getHtmlValue();null==this.node.firstChild&&(this.node.innerHTML="
"+c+"
");this.node.firstChild.firstChild.setAttribute("style",l);this.node.firstChild.setAttribute("style",d)}))}; +null,c,d,this.scale,mxUtils.bind(this,function(a,c,d,k,l,m){a=this.getTextRotation();a=(1!=this.scale?"scale("+this.scale+") ":"")+(0!=a?"rotate("+a+"deg) ":"")+(0!=this.margin.x||0!=this.margin.y?"translate("+100*this.margin.x+"%,"+100*this.margin.y+"%)":"");""!=a&&(a="transform-origin: 0 0; transform: "+a+"; ");"block"==this.overflow&&this.valign==mxConstants.ALIGN_MIDDLE&&(a+="max-height: "+(b+1)+"px;");""==m?(d+=k,k="display:inline-block; min-width: 100%; "+a):(k+=a,mxClient.IS_SF&&(k+="-webkit-clip-path: content-box;")); +"block"==this.overflow&&(k+="width: 100%; ");100>this.opacity&&(l+="opacity: "+this.opacity/100+"; ");this.node.setAttribute("style",d);d=mxUtils.isNode(this.value)?this.value.outerHTML:this.getHtmlValue();null==this.node.firstChild&&(this.node.innerHTML="
"+d+"
");this.node.firstChild.firstChild.setAttribute("style",l);this.node.firstChild.setAttribute("style",k)}))}; mxText.prototype.updateHtmlTransform=function(){var a=this.getTextRotation(),b=this.node.style,c=this.margin.x,d=this.margin.y;0!=a?(mxUtils.setPrefixedStyle(b,"transformOrigin",100*-c+"% "+100*-d+"%"),mxUtils.setPrefixedStyle(b,"transform","translate("+100*c+"%,"+100*d+"%) scale("+this.scale+") rotate("+a+"deg)")):(mxUtils.setPrefixedStyle(b,"transformOrigin","0% 0%"),mxUtils.setPrefixedStyle(b,"transform","scale("+this.scale+") translate("+100*c+"%,"+100*d+"%)"));b.left=Math.round(this.bounds.x- Math.ceil(c*("fill"!=this.overflow&&"width"!=this.overflow?3:1)))+"px";b.top=Math.round(this.bounds.y-d*("fill"!=this.overflow?3:1))+"px";b.opacity=100>this.opacity?this.opacity/100:""}; mxText.prototype.updateInnerHtml=function(a){if(mxUtils.isNode(this.value))a.innerHTML=this.value.outerHTML;else{var b=this.value;this.dialect!=mxConstants.DIALECT_STRICTHTML&&(b=mxUtils.htmlEntities(b,!1));b=mxUtils.replaceTrailingNewlines(b,"
 
");b=this.replaceLinefeeds?b.replace(/\n/g,"
"):b;a.innerHTML='
'+b+"
"}}; @@ -721,8 +722,8 @@ mxText.prototype.updateValue=function(){if(mxUtils.isNode(this.value))this.node. a;a=this.node.getElementsByTagName("div");0e&&(this.textarea.style.width=this.textarea.scrollWidth+"px")):this.textarea.style.maxWidth= -e+"px"):(this.textarea.style.whiteSpace="nowrap",this.textarea.style.width="");8==document.documentMode&&(this.textarea.style.zoom="1",this.textarea.style.height="auto");a=this.textarea.scrollWidth;e=this.textarea.scrollHeight;8==document.documentMode?(this.textarea.style.left=Math.max(0,Math.ceil((this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5))/c))+"px",this.textarea.style.top=Math.max(0,Math.ceil((this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5))/ -c))+"px",this.textarea.style.width=Math.round(a*c)+"px",this.textarea.style.height=Math.round(e*c)+"px"):mxClient.IS_QUIRKS?(this.textarea.style.left=Math.max(0,Math.ceil(this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5)))+"px",this.textarea.style.top=Math.max(0,Math.ceil(this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5)))+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-d.x*(this.bounds.width-2))+1)+"px",this.textarea.style.top=Math.max(0, -Math.round(this.bounds.y-d.y*(this.bounds.height-4)+(-1==d.y?3:0))+1)+"px")}else 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.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width="")); -mxClient.IS_VML?this.textarea.style.zoom=c:(mxUtils.setPrefixedStyle(this.textarea.style,"transformOrigin","0px 0px"),mxUtils.setPrefixedStyle(this.textarea.style,"transform","scale("+c+","+c+")"+(null==d?"":" translate("+100*d.x+"%,"+100*d.y+"%)")))}};mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())};mxCellEditor.prototype.getBackgroundColor=function(a){return null}; -mxCellEditor.prototype.isLegacyEditor=function(){if(mxClient.IS_VML)return!0;var a=!1;if(mxClient.IS_SVG){var b=this.graph.view.getDrawPane().ownerSVGElement;null!=b&&(b=mxUtils.getCurrentStyle(b),null!=b&&(a="absolute"==b.position))}return!a}; +a.absoluteOffset.y,b.width,b.height)}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",e=Math.round(this.bounds.width/c)+this.wordWrapPadding,"relative"!=this.textarea.style.position?(this.textarea.style.width=e+"px",this.textarea.scrollWidth>e&&(this.textarea.style.width=this.textarea.scrollWidth+"px")):"block"==a.style[mxConstants.STYLE_OVERFLOW]? +(-.5==d.y&&(this.textarea.style.maxHeight=this.bounds.height+"px"),this.textarea.style.width=e+"px"):this.textarea.style.maxWidth=e+"px"):(this.textarea.style.whiteSpace="nowrap",this.textarea.style.width="");8==document.documentMode&&(this.textarea.style.zoom="1",this.textarea.style.height="auto");8==document.documentMode?(a=this.textarea.scrollWidth,e=this.textarea.scrollHeight,this.textarea.style.left=Math.max(0,Math.ceil((this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5))/c))+ +"px",this.textarea.style.top=Math.max(0,Math.ceil((this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5))/c))+"px",this.textarea.style.width=Math.round(a*c)+"px",this.textarea.style.height=Math.round(e*c)+"px"):mxClient.IS_QUIRKS?(a=this.textarea.scrollWidth,e=this.textarea.scrollHeight,this.textarea.style.left=Math.max(0,Math.ceil(this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5)))+"px",this.textarea.style.top=Math.max(0,Math.ceil(this.bounds.y-d.y*(this.bounds.height- +(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5)))+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-d.x*(this.bounds.width-2))+1)+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y-d.y*(this.bounds.height-4)+(-1==d.y?3:0))+1)+"px")}else 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.width/ +c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));mxClient.IS_VML?this.textarea.style.zoom=c:(mxUtils.setPrefixedStyle(this.textarea.style,"transformOrigin","0px 0px"),mxUtils.setPrefixedStyle(this.textarea.style,"transform","scale("+c+","+c+")"+(null==d?"":" translate("+100*d.x+"%,"+100*d.y+"%)")))}};mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())}; +mxCellEditor.prototype.getBackgroundColor=function(a){return null};mxCellEditor.prototype.isLegacyEditor=function(){if(mxClient.IS_VML)return!0;var a=!1;if(mxClient.IS_SVG){var b=this.graph.view.getDrawPane().ownerSVGElement;null!=b&&(b=mxUtils.getCurrentStyle(b),null!=b&&(a="absolute"==b.position))}return!a}; mxCellEditor.prototype.startEditing=function(a,b){this.stopEditing(!0);this.align=null;null==this.textarea&&this.init();null!=this.graph.tooltipHandler&&this.graph.tooltipHandler.hideTooltip();var c=this.graph.getView().getState(a);if(null!=c){this.graph.getView();var d=mxUtils.getValue(c.style,mxConstants.STYLE_FONTSIZE,mxConstants.DEFAULT_FONTSIZE),e=mxUtils.getValue(c.style,mxConstants.STYLE_FONTFAMILY,mxConstants.DEFAULT_FONTFAMILY),f=mxUtils.getValue(c.style,mxConstants.STYLE_FONTCOLOR,"black"), g=mxUtils.getValue(c.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT),k=(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD,l=(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC,m=[];(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&m.push("underline");(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_STRIKETHROUGH)== mxConstants.FONT_STRIKETHROUGH&&m.push("line-through");this.textarea.style.lineHeight=mxConstants.ABSOLUTE_LINE_HEIGHT?Math.round(d*mxConstants.LINE_HEIGHT)+"px":mxConstants.LINE_HEIGHT;this.textarea.style.backgroundColor=this.getBackgroundColor(c);this.textarea.style.textDecoration=m.join(" ");this.textarea.style.fontWeight=k?"bold":"normal";this.textarea.style.fontStyle=l?"italic":"";this.textarea.style.fontSize=Math.round(d)+"px";this.textarea.style.zIndex=this.zIndex;this.textarea.style.fontFamily= @@ -3099,16 +3100,16 @@ type:"int",min:0,max:100,defVal:100},{name:"startFill",dispName:"Start Fill",typ {name:"metaEdit",dispName:"Edit Dialog",type:"bool",defVal:!1},{name:"backgroundOutline",dispName:"Background Outline",type:"bool",defVal:!1},{name:"bendable",dispName:"Bendable",type:"bool",defVal:!0},{name:"movable",dispName:"Movable",type:"bool",defVal:!0},{name:"cloneable",dispName:"Cloneable",type:"bool",defVal:!0},{name:"deletable",dispName:"Deletable",type:"bool",defVal:!0},{name:"orthogonalLoop",dispName:"Loop Routing",type:"bool",defVal:!1},{name:"noJump",dispName:"No Jumps",type:"bool", defVal:!1}].concat(Editor.commonProperties);Editor.commonVertexProperties=[{type:"separator"},{name:"resizeLastRow",dispName:"Resize Last Row",type:"bool",getDefaultValue:function(a,c){var b=c.editorUi.editor.graph.getCellStyle(1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null);return"1"==mxUtils.getValue(b,"resizeLastRow","0")},isVisible:function(a,c){var b=c.editorUi.editor.graph;return 1==a.vertices.length&&0==a.edges.length&&b.isTable(a.vertices[0])}},{name:"resizeLast",dispName:"Resize Last Column", type:"bool",getDefaultValue:function(a,c){var b=c.editorUi.editor.graph.getCellStyle(1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null);return"1"==mxUtils.getValue(b,"resizeLast","0")},isVisible:function(a,c){var b=c.editorUi.editor.graph;return 1==a.vertices.length&&0==a.edges.length&&b.isTable(a.vertices[0])}},{name:"fillOpacity",dispName:"Fill Opacity",type:"int",min:0,max:100,defVal:100},{name:"strokeOpacity",dispName:"Stroke Opacity",type:"int",min:0,max:100,defVal:100},{name:"overflow", -dispName:"Text Overflow",defVal:"visible",type:"enum",enumList:[{val:"visible",dispName:"Visible"},{val:"hidden",dispName:"Hidden"},{val:"fill",dispName:"Fill"},{val:"width",dispName:"Width"}]},{name:"noLabel",dispName:"Hide Label",type:"bool",defVal:!1},{name:"labelPadding",dispName:"Label Padding",type:"float",defVal:0},{name:"direction",dispName:"Direction",type:"enum",defVal:"east",enumList:[{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south",dispName:"South"},{val:"west", -dispName:"West"}]},{name:"portConstraint",dispName:"Constraint",type:"enum",defVal:"none",enumList:[{val:"none",dispName:"None"},{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south",dispName:"South"},{val:"west",dispName:"West"}]},{name:"portConstraintRotation",dispName:"Rotate Constraint",type:"bool",defVal:!1},{name:"connectable",dispName:"Connectable",type:"bool",getDefaultValue:function(a,c){return c.editorUi.editor.graph.isCellConnectable(1==a.vertices.length&&0==a.edges.length? -a.vertices[0]:null)},isVisible:function(a,c){return 1==a.vertices.length&&0==a.edges.length}},{name:"allowArrows",dispName:"Allow Arrows",type:"bool",defVal:!0},{name:"snapToPoint",dispName:"Snap to Point",type:"bool",defVal:!1},{name:"perimeter",dispName:"Perimeter",defVal:"none",type:"enum",enumList:[{val:"none",dispName:"None"},{val:"rectanglePerimeter",dispName:"Rectangle"},{val:"ellipsePerimeter",dispName:"Ellipse"},{val:"rhombusPerimeter",dispName:"Rhombus"},{val:"trianglePerimeter",dispName:"Triangle"}, -{val:"hexagonPerimeter2",dispName:"Hexagon"},{val:"lifelinePerimeter",dispName:"Lifeline"},{val:"orthogonalPerimeter",dispName:"Orthogonal"},{val:"backbonePerimeter",dispName:"Backbone"},{val:"calloutPerimeter",dispName:"Callout"},{val:"parallelogramPerimeter",dispName:"Parallelogram"},{val:"trapezoidPerimeter",dispName:"Trapezoid"},{val:"stepPerimeter",dispName:"Step"}]},{name:"fixDash",dispName:"Fixed Dash",type:"bool",defVal:!1},{name:"autosize",dispName:"Autosize",type:"bool",defVal:!1},{name:"container", -dispName:"Container",type:"bool",defVal:!1,isVisible:function(a,c){return 1==a.vertices.length&&0==a.edges.length}},{name:"dropTarget",dispName:"Drop Target",type:"bool",getDefaultValue:function(a,c){var b=1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null,d=c.editorUi.editor.graph;return null!=b&&(d.isSwimlane(b)||0%position%
Email\n#\n## Node style (placeholders are replaced once).\n## Default is the current style for nodes.\n#\n# style: label;image=%image%;whiteSpace=wrap;html=1;rounded=1;fillColor=%fill%;strokeColor=%stroke%;\n#\n## Parent style for nodes with child nodes (placeholders are replaced once).\n#\n# parentstyle: swimlane;whiteSpace=wrap;html=1;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;\n#\n## Optional column name that contains a reference to a named style in styles.\n## Default is the current style for nodes.\n#\n# stylename: -\n#\n## JSON for named styles of the form {"name": "style", "name": "style"} where style is a cell style with\n## placeholders that are replaced once.\n#\n# styles: -\n#\n## JSON for variables in styles of the form {"name": "value", "name": "value"} where name is a string\n## that will replace a placeholder in a style.\n#\n# vars: -\n#\n## Optional column name that contains a reference to a named label in labels.\n## Default is the current label.\n#\n# labelname: -\n#\n## JSON for named labels of the form {"name": "label", "name": "label"} where label is a cell label with\n## placeholders.\n#\n# labels: -\n#\n## Uses the given column name as the identity for cells (updates existing cells).\n## Default is no identity (empty value or -).\n#\n# identity: -\n#\n## Uses the given column name as the parent reference for cells. Default is no parent (empty or -).\n## The identity above is used for resolving the reference so it must be specified.\n#\n# parent: -\n#\n## Adds a prefix to the identity of cells to make sure they do not collide with existing cells (whose\n## IDs are numbers from 0..n, sometimes with a GUID prefix in the context of realtime collaboration).\n## Default is csvimport-.\n#\n# namespace: csvimport-\n#\n## Connections between rows ("from": source colum, "to": target column).\n## Label, style and invert are optional. Defaults are \'\', current style and false.\n## If placeholders are used in the style, they are replaced with data from the source.\n## An optional placeholders can be set to target to use data from the target instead.\n## In addition to label, an optional fromlabel and tolabel can be used to name the column\n## that contains the text for the label in the edges source or target (invert ignored).\n## The label is concatenated in the form fromlabel + label + tolabel if all are defined.\n## Additional labels can be added by using an optional labels array with entries of the\n## form {"label": string, "x": number, "y": number, "dx": number, "dy": number} where\n## x is from -1 to 1 along the edge, y is orthogonal, and dx/dy are offsets in pixels.\n## The target column may contain a comma-separated list of values.\n## Multiple connect entries are allowed.\n#\n# connect: {"from": "manager", "to": "name", "invert": true, "label": "manages", \\\n# "style": "curved=1;endArrow=blockThin;endFill=1;fontSize=11;"}\n# connect: {"from": "refs", "to": "id", "style": "curved=1;fontSize=11;"}\n#\n## Node x-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# left: \n#\n## Node y-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# top: \n#\n## Node width. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the width. Default is auto.\n#\n# width: auto\n#\n## Node height. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the height. Default is auto.\n#\n# height: auto\n#\n## Padding for autosize. Default is 0.\n#\n# padding: -12\n#\n## Comma-separated list of ignored columns for metadata. (These can be\n## used for connections and styles but will not be added as metadata.)\n#\n# ignore: id,image,fill,stroke,refs,manager\n#\n## Column to be renamed to link attribute (used as link).\n#\n# link: url\n#\n## Spacing between nodes. Default is 40.\n#\n# nodespacing: 40\n#\n## Spacing between levels of hierarchical layouts. Default is 100.\n#\n# levelspacing: 100\n#\n## Spacing between parallel edges. Default is 40. Use 0 to disable.\n#\n# edgespacing: 40\n#\n## Name or JSON of layout. Possible values are auto, none, verticaltree, horizontaltree,\n## verticalflow, horizontalflow, organic, circle or a JSON string as used in Layout, Apply.\n## Default is auto.\n#\n# layout: auto\n#\n## ---- CSV below this line. First line are column names. ----\nname,position,id,location,manager,email,fill,stroke,refs,url,image\nTessa Miller,CFO,emi,Office 1,,me@example.com,#dae8fc,#6c8ebf,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-3-128.png\nEdward Morrison,Brand Manager,emo,Office 2,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-10-3-128.png\nAlison Donovan,System Admin,rdo,Office 3,Tessa Miller,me@example.com,#d5e8d4,#82b366,"emo,tva",https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-2-128.png\nEvan Valet,HR Director,tva,Office 4,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-9-2-128.png\n'; +dispName:"Text Overflow",defVal:"visible",type:"enum",enumList:[{val:"visible",dispName:"Visible"},{val:"hidden",dispName:"Hidden"},{val:"block",dispName:"Block"},{val:"fill",dispName:"Fill"},{val:"width",dispName:"Width"}]},{name:"noLabel",dispName:"Hide Label",type:"bool",defVal:!1},{name:"labelPadding",dispName:"Label Padding",type:"float",defVal:0},{name:"direction",dispName:"Direction",type:"enum",defVal:"east",enumList:[{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south", +dispName:"South"},{val:"west",dispName:"West"}]},{name:"portConstraint",dispName:"Constraint",type:"enum",defVal:"none",enumList:[{val:"none",dispName:"None"},{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south",dispName:"South"},{val:"west",dispName:"West"}]},{name:"portConstraintRotation",dispName:"Rotate Constraint",type:"bool",defVal:!1},{name:"connectable",dispName:"Connectable",type:"bool",getDefaultValue:function(a,c){return c.editorUi.editor.graph.isCellConnectable(1== +a.vertices.length&&0==a.edges.length?a.vertices[0]:null)},isVisible:function(a,c){return 1==a.vertices.length&&0==a.edges.length}},{name:"allowArrows",dispName:"Allow Arrows",type:"bool",defVal:!0},{name:"snapToPoint",dispName:"Snap to Point",type:"bool",defVal:!1},{name:"perimeter",dispName:"Perimeter",defVal:"none",type:"enum",enumList:[{val:"none",dispName:"None"},{val:"rectanglePerimeter",dispName:"Rectangle"},{val:"ellipsePerimeter",dispName:"Ellipse"},{val:"rhombusPerimeter",dispName:"Rhombus"}, +{val:"trianglePerimeter",dispName:"Triangle"},{val:"hexagonPerimeter2",dispName:"Hexagon"},{val:"lifelinePerimeter",dispName:"Lifeline"},{val:"orthogonalPerimeter",dispName:"Orthogonal"},{val:"backbonePerimeter",dispName:"Backbone"},{val:"calloutPerimeter",dispName:"Callout"},{val:"parallelogramPerimeter",dispName:"Parallelogram"},{val:"trapezoidPerimeter",dispName:"Trapezoid"},{val:"stepPerimeter",dispName:"Step"}]},{name:"fixDash",dispName:"Fixed Dash",type:"bool",defVal:!1},{name:"autosize",dispName:"Autosize", +type:"bool",defVal:!1},{name:"container",dispName:"Container",type:"bool",defVal:!1,isVisible:function(a,c){return 1==a.vertices.length&&0==a.edges.length}},{name:"dropTarget",dispName:"Drop Target",type:"bool",getDefaultValue:function(a,c){var b=1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null,d=c.editorUi.editor.graph;return null!=b&&(d.isSwimlane(b)||0%position%
Email\n#\n## Node style (placeholders are replaced once).\n## Default is the current style for nodes.\n#\n# style: label;image=%image%;whiteSpace=wrap;html=1;rounded=1;fillColor=%fill%;strokeColor=%stroke%;\n#\n## Parent style for nodes with child nodes (placeholders are replaced once).\n#\n# parentstyle: swimlane;whiteSpace=wrap;html=1;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;\n#\n## Optional column name that contains a reference to a named style in styles.\n## Default is the current style for nodes.\n#\n# stylename: -\n#\n## JSON for named styles of the form {"name": "style", "name": "style"} where style is a cell style with\n## placeholders that are replaced once.\n#\n# styles: -\n#\n## JSON for variables in styles of the form {"name": "value", "name": "value"} where name is a string\n## that will replace a placeholder in a style.\n#\n# vars: -\n#\n## Optional column name that contains a reference to a named label in labels.\n## Default is the current label.\n#\n# labelname: -\n#\n## JSON for named labels of the form {"name": "label", "name": "label"} where label is a cell label with\n## placeholders.\n#\n# labels: -\n#\n## Uses the given column name as the identity for cells (updates existing cells).\n## Default is no identity (empty value or -).\n#\n# identity: -\n#\n## Uses the given column name as the parent reference for cells. Default is no parent (empty or -).\n## The identity above is used for resolving the reference so it must be specified.\n#\n# parent: -\n#\n## Adds a prefix to the identity of cells to make sure they do not collide with existing cells (whose\n## IDs are numbers from 0..n, sometimes with a GUID prefix in the context of realtime collaboration).\n## Default is csvimport-.\n#\n# namespace: csvimport-\n#\n## Connections between rows ("from": source colum, "to": target column).\n## Label, style and invert are optional. Defaults are \'\', current style and false.\n## If placeholders are used in the style, they are replaced with data from the source.\n## An optional placeholders can be set to target to use data from the target instead.\n## In addition to label, an optional fromlabel and tolabel can be used to name the column\n## that contains the text for the label in the edges source or target (invert ignored).\n## The label is concatenated in the form fromlabel + label + tolabel if all are defined.\n## Additional labels can be added by using an optional labels array with entries of the\n## form {"label": string, "x": number, "y": number, "dx": number, "dy": number} where\n## x is from -1 to 1 along the edge, y is orthogonal, and dx/dy are offsets in pixels.\n## The target column may contain a comma-separated list of values.\n## Multiple connect entries are allowed.\n#\n# connect: {"from": "manager", "to": "name", "invert": true, "label": "manages", \\\n# "style": "curved=1;endArrow=blockThin;endFill=1;fontSize=11;"}\n# connect: {"from": "refs", "to": "id", "style": "curved=1;fontSize=11;"}\n#\n## Node x-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# left: \n#\n## Node y-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# top: \n#\n## Node width. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the width. Default is auto.\n#\n# width: auto\n#\n## Node height. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the height. Default is auto.\n#\n# height: auto\n#\n## Padding for autosize. Default is 0.\n#\n# padding: -12\n#\n## Comma-separated list of ignored columns for metadata. (These can be\n## used for connections and styles but will not be added as metadata.)\n#\n# ignore: id,image,fill,stroke,refs,manager\n#\n## Column to be renamed to link attribute (used as link).\n#\n# link: url\n#\n## Spacing between nodes. Default is 40.\n#\n# nodespacing: 40\n#\n## Spacing between levels of hierarchical layouts. Default is 100.\n#\n# levelspacing: 100\n#\n## Spacing between parallel edges. Default is 40. Use 0 to disable.\n#\n# edgespacing: 40\n#\n## Name or JSON of layout. Possible values are auto, none, verticaltree, horizontaltree,\n## verticalflow, horizontalflow, organic, circle or a JSON string as used in Layout, Apply.\n## Default is auto.\n#\n# layout: auto\n#\n## ---- CSV below this line. First line are column names. ----\nname,position,id,location,manager,email,fill,stroke,refs,url,image\nTessa Miller,CFO,emi,Office 1,,me@example.com,#dae8fc,#6c8ebf,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-3-128.png\nEdward Morrison,Brand Manager,emo,Office 2,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-10-3-128.png\nAlison Donovan,System Admin,rdo,Office 3,Tessa Miller,me@example.com,#d5e8d4,#82b366,"emo,tva",https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-2-128.png\nEvan Valet,HR Director,tva,Office 4,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-9-2-128.png\n'; Editor.createRoughCanvas=function(a){var c=rough.canvas({getContext:function(){return a}});c.draw=function(c){var b=c.sets||[];c=c.options||this.getDefaultOptions();for(var d=0;dn&&(n=d.strokeWidth/2);a.setStrokeAlpha(a.state.fillAlpha);a.setStrokeColor(d.fill||"");a.setStrokeWidth(n);a.setDashed(!1);this._drawToContext(c,b,d);a.setDashed(l);a.setStrokeWidth(g);a.setStrokeColor(f);a.setStrokeAlpha(e)};c._drawToContext=function(a,c,b){a.begin();for(var d=0;d{2} and return to this tab to try to save again.\nerrorSendingFeedback=Error sending feedback.\nerrorUpdatingPreview=Error updating preview.\nexit=Exit\nexitGroup=Exit Group\nexpand=Expand\nexport=Export\nexporting=Exporting\nexportAs=Export as\nexportOptionsDisabled=Export options disabled\nexportOptionsDisabledDetails=The owner has disabled options to download, print or copy for commenters and viewers on this file.\nexternalChanges=External Changes\nextras=Extras\nfacebook=Facebook\nfailedToSaveTryReconnect=Failed to save, trying to reconnect\nfeatureRequest=Feature Request\nfeedback=Feedback\nfeedbackSent=Feedback successfully sent.\nfloorplans=Floorplans\nfile=File\nfileChangedOverwriteDialog=The file has been modified. Do you want to save the file and overwrite those changes?\nfileChangedSyncDialog=The file has been modified. Do you want to synchronize those changes?\nfileChangedSync=The file has been modified. Click here to synchronize.\noverwrite=Overwrite\nsynchronize=Synchronize\nfilename=Filename\nfileExists=File already exists\nfileMovedToTrash=File was moved to trash\nfileNearlyFullSeeFaq=File nearly full, please see FAQ\nfileNotFound=File not found\nrepositoryNotFound=Repository not found\nfileNotFoundOrDenied=The file was not found. It does not exist or you do not have access.\nfileNotLoaded=File not loaded\nfileNotSaved=File not saved\nfileOpenLocation=How would you like to open these file(s)?\nfiletypeHtml=.html causes file to save as HTML with redirect to cloud URL\nfiletypePng=.png causes file to save as PNG with embedded data\nfiletypeSvg=.svg causes file to save as SVG with embedded data\nfileWillBeSavedInAppFolder={1} will be saved in the app folder.\nfill=Fill\nfillColor=Fill Color\nfilterCards=Filter Cards\nfind=Find\nfit=Fit\nfitContainer=Resize Container\nfitIntoContainer=Fit into Container\nfitPage=Fit Page\nfitPageWidth=Fit Page Width\nfitTo=Fit to\nfitToSheetsAcross=sheet(s) across\nfitToBy=by\nfitToSheetsDown=sheet(s) down\nfitTwoPages=Two Pages\nfitWindow=Fit Window\nflip=Flip\nflipH=Flip Horizontal\nflipV=Flip Vertical\nflowchart=Flowchart\nfolder=Folder\nfont=Font\nfontColor=Font Color\nfontFamily=Font Family\nfontSize=Font Size\nforbidden=You are not authorized to access this file\nformat=Format\nformatPanel=Format Panel\nformatted=Formatted\nformattedText=Formatted Text\nformatPng=PNG\nformatGif=GIF\nformatJpg=JPEG\nformatPdf=PDF\nformatSql=SQL\nformatSvg=SVG\nformatHtmlEmbedded=HTML\nformatSvgEmbedded=SVG (with XML)\nformatVsdx=VSDX\nformatVssx=VSSX\nformatXmlPlain=XML (Plain)\nformatXml=XML\nforum=Discussion/Help Forums\nfreehand=Freehand\nfromTemplate=From Template\nfromTemplateUrl=From Template URL\nfromText=From Text\nfromUrl=From URL\nfromThisPage=From this page\nfullscreen=Fullscreen\ngap=Gap\ngcp=GCP\ngeneral=General\ngithub=GitHub\ngitlab=GitLab\ngliffy=Gliffy\nglobal=Global\ngoogleDocs=Google Docs\ngoogleDrive=Google Drive\ngoogleGadget=Google Gadget\ngooglePlus=Google+\ngoogleSharingNotAvailable=Sharing is only available via Google Drive. Please click Open below and share from the more actions menu:\ngoogleSlides=Google Slides\ngoogleSites=Google Sites\ngoogleSheets=Google Sheets\ngradient=Gradient\ngradientColor=Color\ngrid=Grid\ngridColor=Grid Color\ngridSize=Grid Size\ngroup=Group\nguides=Guides\nhateApp=I hate draw.io\nheading=Heading\nheight=Height\nhelp=Help\nhelpTranslate=Help us translate this application\nhide=Hide\nhideIt=Hide {1}\nhidden=Hidden\nhome=Home\nhorizontal=Horizontal\nhorizontalFlow=Horizontal Flow\nhorizontalTree=Horizontal Tree\nhowTranslate=How good is the translation in your language?\nhtml=HTML\nhtmlText=HTML Text\nid=ID\niframe=IFrame\nignore=Ignore\nimage=Image\nimageUrl=Image URL\nimages=Images\nimagePreviewError=This image couldn\'t be loaded for preview. Please check the URL.\nimageTooBig=Image too big\nimgur=Imgur\nimport=Import\nimportFrom=Import from\nincludeCopyOfMyDiagram=Include a copy of my diagram\nincreaseIndent=Increase Indent\ndecreaseIndent=Decrease Indent\ninsert=Insert\ninsertColumnBefore=Insert Column Left\ninsertColumnAfter=Insert Column Right\ninsertEllipse=Insert Ellipse\ninsertImage=Insert Image\ninsertHorizontalRule=Insert Horizontal Rule\ninsertLink=Insert Link\ninsertPage=Insert Page\ninsertRectangle=Insert Rectangle\ninsertRhombus=Insert Rhombus\ninsertRowBefore=Insert Row Above\ninsertRowAfter=Insert Row After\ninsertText=Insert Text\ninserting=Inserting\ninstallApp=Install App\ninvalidFilename=Diagram names must not contain the following characters: / | : ; { } < > & + ? = "\ninvalidLicenseSeeThisPage=Your license is invalid, please see this page.\ninvalidInput=Invalid input\ninvalidName=Invalid name\ninvalidOrMissingFile=Invalid or missing file\ninvalidPublicUrl=Invalid public URL\nisometric=Isometric\nios=iOS\nitalic=Italic\nkennedy=Kennedy\nkeyboardShortcuts=Keyboard Shortcuts\nlayers=Layers\nlandscape=Landscape\nlanguage=Language\nleanMapping=Lean Mapping\nlastChange=Last change {1} ago\nlessThanAMinute=less than a minute\nlicensingError=Licensing Error\nlicenseHasExpired=The license for {1} has expired on {2}. Click here.\nlicenseWillExpire=The license for {1} will expire on {2}. Click here.\nlineJumps=Line jumps\nlinkAccountRequired=If the diagram is not public a Google account is required to view the link.\nlinkText=Link Text\nlist=List\nminute=minute\nminutes=minutes\nhours=hours\ndays=days\nmonths=months\nyears=years\nrestartForChangeRequired=Changes will take effect after a restart of the application.\nlaneColor=Lanecolor\nlastModified=Last modified\nlayout=Layout\nleft=Left\nleftAlign=Left Align\nleftToRight=Left to right\nlibraryTooltip=Drag and drop shapes here or click + to insert. Double click to edit.\nlightbox=Lightbox\nline=Line\nlineend=Line end\nlineheight=Line Height\nlinestart=Line start\nlinewidth=Linewidth\nlink=Link\nlinks=Links\nloading=Loading\nlockUnlock=Lock/Unlock\nloggedOut=Logged Out\nlogIn=log in\nloveIt=I love {1}\nlucidchart=Lucidchart\nmaps=Maps\nmathematicalTypesetting=Mathematical Typesetting\nmakeCopy=Make a Copy\nmanual=Manual\nmermaid=Mermaid\nmicrosoftOffice=Microsoft Office\nmicrosoftExcel=Microsoft Excel\nmicrosoftPowerPoint=Microsoft PowerPoint\nmicrosoftWord=Microsoft Word\nmiddle=Middle\nminimal=Minimal\nmisc=Misc\nmockups=Mockups\nmodificationDate=Modification date\nmodifiedBy=Modified by\nmore=More\nmoreResults=More Results\nmoreShapes=More Shapes\nmove=Move\nmoveToFolder=Move to Folder\nmoving=Moving\nmoveSelectionTo=Move selection to {1}\nname=Name\nnavigation=Navigation\nnetwork=Network\nnetworking=Networking\nnew=New\nnewLibrary=New Library\nnextPage=Next Page\nno=No\nnoPickFolder=No, pick folder\nnoAttachments=No attachments found\nnoColor=No Color\nnoFiles=No Files\nnoFileSelected=No file selected\nnoLibraries=No libraries found\nnoMoreResults=No more results\nnone=None\nnoOtherViewers=No other viewers\nnoPlugins=No plugins\nnoPreview=No preview\nnoResponse=No response from server\nnoResultsFor=No results for \'{1}\'\nnoRevisions=No revisions\nnoSearchResults=No search results found\nnoPageContentOrNotSaved=No anchors found on this page or it hasn\'t been saved yet\nnormal=Normal\nnorth=North\nnotADiagramFile=Not a diagram file\nnotALibraryFile=Not a library file\nnotAvailable=Not available\nnotAUtf8File=Not a UTF-8 file\nnotConnected=Not connected\nnote=Note\nnotSatisfiedWithImport=Not satisfied with the import?\nnotUsingService=Not using {1}?\nnumberedList=Numbered list\noffline=Offline\nok=OK\noneDrive=OneDrive\nonline=Online\nopacity=Opacity\nopen=Open\nopenArrow=Open Arrow\nopenExistingDiagram=Open Existing Diagram\nopenFile=Open File\nopenFrom=Open from\nopenLibrary=Open Library\nopenLibraryFrom=Open Library from\nopenLink=Open Link\nopenInNewWindow=Open in New Window\nopenInThisWindow=Open in This Window\nopenIt=Open {1}\nopenRecent=Open Recent\nopenSupported=Supported formats are files saved from this software (.xml), .vsdx and .gliffy\noptions=Options\norganic=Organic\norgChart=Org Chart\northogonal=Orthogonal\notherViewer=other viewer\notherViewers=other viewers\noutline=Outline\noval=Oval\npage=Page\npageContent=Page Content\npageNotFound=Page not found\npageWithNumber=Page-{1}\npages=Pages\npageView=Page View\npageSetup=Page Setup\npageScale=Page Scale\npan=Pan\npanTooltip=Space+Drag to pan\npaperSize=Paper Size\npattern=Pattern\nparallels=Parallels\npaste=Paste\npasteHere=Paste here\npasteSize=Paste Size\npasteStyle=Paste Style\nperimeter=Perimeter\npermissionAnyone=Anyone can edit\npermissionAuthor=Owner and admins can edit\npickFolder=Pick a folder\npickLibraryDialogTitle=Select Library\npublicDiagramUrl=Public URL of the diagram\nplaceholders=Placeholders\nplantUml=PlantUML\nplugins=Plugins\npluginUrl=Plugin URL\npluginWarning=The page has requested to load the following plugin(s):\n \n {1}\n \n Would you like to load these plugin(s) now?\n \n NOTE : Only allow plugins to run if you fully understand the security implications of doing so.\n\nplusTooltip=Click to connect and clone (ctrl+click to clone, shift+click to connect). Drag to connect (ctrl+drag to clone).\nportrait=Portrait\nposition=Position\nposterPrint=Poster Print\npreferences=Preferences\npreview=Preview\npreviousPage=Previous Page\nprint=Print\nprintAllPages=Print All Pages\nprocEng=Proc. Eng.\nproject=Project\npriority=Priority\nproperties=Properties\npublish=Publish\nquickStart=Quick Start Video\nrack=Rack\nradialTree=Radial Tree\nreadOnly=Read-only\nreconnecting=Reconnecting\nrecentlyUpdated=Recently Updated\nrecentlyViewed=Recently Viewed\nrectangle=Rectangle\nredirectToNewApp=This file was created or modified in a newer version of this app. You will be redirected now.\nrealtimeTimeout=It looks like you\'ve made a few changes while offline. We\'re sorry, these changes cannot be saved.\nredo=Redo\nrefresh=Refresh\nregularExpression=Regular Expression\nrelative=Relative\nrelativeUrlNotAllowed=Relative URL not allowed\nrememberMe=Remember me\nrememberThisSetting=Remember this setting\nremoveFormat=Clear Formatting\nremoveFromGroup=Remove from Group\nremoveIt=Remove {1}\nremoveWaypoint=Remove Waypoint\nrename=Rename\nrenamed=Renamed\nrenameIt=Rename {1}\nrenaming=Renaming\nreplace=Replace\nreplaceIt={1} already exists. Do you want to replace it?\nreplaceExistingDrawing=Replace existing drawing\nrequired=required\nreset=Reset\nresetView=Reset View\nresize=Resize\nresizeLargeImages=Do you want to resize large images to make the application run faster?\nretina=Retina\nresponsive=Responsive\nrestore=Restore\nrestoring=Restoring\nretryingIn=Retrying in {1} second(s)\nretryingLoad=Load failed. Retrying...\nretryingLogin=Login time out. Retrying...\nreverse=Reverse\nrevision=Revision\nrevisionHistory=Revision History\nrhombus=Rhombus\nright=Right\nrightAlign=Right Align\nrightToLeft=Right to left\nrotate=Rotate\nrotateTooltip=Click and drag to rotate, click to turn shape only by 90 degrees\nrotation=Rotation\nrounded=Rounded\nsave=Save\nsaveAndExit=Save & Exit\nsaveAs=Save as\nsaveAsXmlFile=Save as XML file?\nsaved=Saved\nsaveDiagramFirst=Please save the diagram first\nsaveDiagramsTo=Save diagrams to\nsaveLibrary403=Insufficient permissions to edit this library\nsaveLibrary500=There was an error while saving the library\nsaveLibraryReadOnly=Could not save library while read-only mode is active\nsaving=Saving\nscratchpad=Scratchpad\nscrollbars=Scrollbars\nsearch=Search\nsearchShapes=Search Shapes\nselectAll=Select All\nselectionOnly=Selection Only\nselectCard=Select Card\nselectEdges=Select Edges\nselectFile=Select File\nselectFolder=Select Folder\nselectFont=Select Font\nselectNone=Select None\nselectTemplate=Select Template\nselectVertices=Select Vertices\nsendMessage=Send\nsendYourFeedback=Send your feedback\nserviceUnavailableOrBlocked=Service unavailable or blocked\nsessionExpired=Your session has expired. Please refresh the browser window.\nsessionTimeoutOnSave=Your session has timed out and you have been disconnected from the Google Drive. Press OK to login and save. \nsetAsDefaultStyle=Set as Default Style\nshadow=Shadow\nshape=Shape\nshapes=Shapes\nshare=Share\nshareLink=Link for shared editing\nsharingAvailable=Sharing available for Google Drive and OneDrive files.\nsharp=Sharp\nshow=Show\nshowStartScreen=Show Start Screen\nsidebarTooltip=Click to expand. Drag and drop shapes into the diagram. Shift+click to change selection. Alt+click to insert and connect.\nsigns=Signs\nsignOut=Sign out\nsimple=Simple\nsimpleArrow=Simple Arrow\nsimpleViewer=Simple Viewer\nsize=Size\nsketch=Sketch\nsolid=Solid\nsourceSpacing=Source Spacing\nsouth=South\nsoftware=Software\nspace=Space\nspacing=Spacing\nspecialLink=Special Link\nstandard=Standard\nstartDrawing=Start drawing\nstopDrawing=Stop drawing\nstarting=Starting\nstraight=Straight\nstrikethrough=Strikethrough\nstrokeColor=Line Color\nstyle=Style\nsubscript=Subscript\nsummary=Summary\nsuperscript=Superscript\nsupport=Support\nswimlaneDiagram=Swimlane Diagram\nsysml=SysML\ntags=Tags\ntable=Table\ntables=Tables\ntakeOver=Take Over\ntargetSpacing=Target Spacing\ntemplate=Template\ntemplates=Templates\ntext=Text\ntextAlignment=Text Alignment\ntextOpacity=Text Opacity\ntheme=Theme\ntimeout=Timeout\ntitle=Title\nto=to\ntoBack=To Back\ntoFront=To Front\ntooLargeUseDownload=Too large, use download instead.\ntoolbar=Toolbar\ntooltips=Tooltips\ntop=Top\ntopAlign=Top Align\ntopLeft=Top Left\ntopRight=Top Right\ntransparent=Transparent\ntransparentBackground=Transparent Background\ntrello=Trello\ntryAgain=Try again\ntryOpeningViaThisPage=Try opening via this page\nturn=Rotate shape only by 90°\ntype=Type\ntwitter=Twitter\numl=UML\nunderline=Underline\nundo=Undo\nungroup=Ungroup\nunsavedChanges=Unsaved changes\nunsavedChangesClickHereToSave=Unsaved changes. Click here to save.\nuntitled=Untitled\nuntitledDiagram=Untitled Diagram\nuntitledLayer=Untitled Layer\nuntitledLibrary=Untitled Library\nunknownError=Unknown error\nupdateFile=Update {1}\nupdatingDocument=Updating Document. Please wait...\nupdatingPreview=Updating Preview. Please wait...\nupdatingSelection=Updating Selection. Please wait...\nupload=Upload\nurl=URL\nuseOffline=Use Offline\nuseRootFolder=Use root folder?\nuserManual=User Manual\nvertical=Vertical\nverticalFlow=Vertical Flow\nverticalTree=Vertical Tree\nview=View\nviewerSettings=Viewer Settings\nviewUrl=Link to view: {1}\nvoiceAssistant=Voice Assistant (beta)\nwarning=Warning\nwaypoints=Waypoints\nwest=West\nwidth=Width\nwiki=Wiki\nwordWrap=Word Wrap\nwritingDirection=Writing Direction\nyes=Yes\nyourEmailAddress=Your email address\nzoom=Zoom\nzoomIn=Zoom In\nzoomOut=Zoom Out\nbasic=Basic\nbusinessprocess=Business Processes\ncharts=Charts\nengineering=Engineering\nflowcharts=Flowcharts\ngmdl=Material Design\nmindmaps=Mindmaps\nmockups=Mockups\nnetworkdiagrams=Network Diagrams\nnothingIsSelected=Nothing is selected\nother=Other\nsoftwaredesign=Software Design\nvenndiagrams=Venn Diagrams\nwebEmailOrOther=Web, email or any other internet address\nwebLink=Web Link\nwireframes=Wireframes\nproperty=Property\nvalue=Value\nshowMore=Show More\nshowLess=Show Less\nmyDiagrams=My Diagrams\nallDiagrams=All Diagrams\nrecentlyUsed=Recently used\nlistView=List view\ngridView=Grid view\nresultsFor=Results for \'{1}\'\noneDriveCharsNotAllowed=The following characters are not allowed: ~ " # % * : < > ? / { | }\noneDriveInvalidDeviceName=The specified device name is invalid\nofficeNotLoggedOD=You are not logged in to OneDrive. Please open draw.io task pane and login first.\nofficeSelectSingleDiag=Please select a single draw.io diagram only without other contents.\nofficeSelectDiag=Please select a draw.io diagram.\nofficeCannotFindDiagram=Cannot find a draw.io diagram in the selection\nnoDiagrams=No diagrams found\nauthFailed=Authentication failed\nofficeFailedAuthMsg=Unable to successfully authenticate user or authorize application.\nconvertingDiagramFailed=Converting diagram failed\nofficeCopyImgErrMsg=Due to some limitations in the host application, the image could not be inserted. Please manually copy the image then paste it to the document.\ninsertingImageFailed=Inserting image failed\nofficeCopyImgInst=Instructions: Right-click the image below. Select "Copy image" from the context menu. Then, in the document, right-click and select "Paste" from the context menu.\nfolderEmpty=Folder is empty\nrecent=Recent\nsharedWithMe=Shared With Me\nsharepointSites=Sharepoint Sites\nerrorFetchingFolder=Error fetching folder items\nerrorAuthOD=Error authenticating to OneDrive\nofficeMainHeader=Adds draw.io diagrams to your document.\nofficeStepsHeader=This add-in performs the following steps:\nofficeStep1=Connects to Microsoft OneDrive, Google Drive or your device.\nofficeStep2=Select a draw.io diagram.\nofficeStep3=Insert the diagram into the document.\nofficeAuthPopupInfo=Please complete the authentication in the pop-up window.\nofficeSelDiag=Select draw.io Diagram:\nfiles=Files\nshared=Shared\nsharepoint=Sharepoint\nofficeManualUpdateInst=Instructions: Copy draw.io diagram from the document. Then, in the box below, right-click and select "Paste" from the context menu.\nofficeClickToEdit=Click icon to start editing:\npasteDiagram=Paste draw.io diagram here\nconnectOD=Connect to OneDrive\nselectChildren=Select Children\nselectSiblings=Select Siblings\nselectParent=Select Parent\nselectDescendants=Select Descendants\nlastSaved=Last saved {1} ago\nresolve=Resolve\nreopen=Re-open\nshowResolved=Show Resolved\nreply=Reply\nobjectNotFound=Object not found\nreOpened=Re-opened\nmarkedAsResolved=Marked as resolved\nnoCommentsFound=No comments found\ncomments=Comments\ntimeAgo={1} ago\nconfluenceCloud=Confluence Cloud\nlibraries=Libraries\nconfAnchor=Confluence Page Anchor\nconfTimeout=The connection has timed out\nconfSrvTakeTooLong=The server at {1} is taking too long to respond.\nconfCannotInsertNew=Cannot insert draw.io diagram to a new Confluence page\nconfSaveTry=Please save the page and try again.\nconfCannotGetID=Unable to determine page ID\nconfContactAdmin=Please contact your Confluence administrator.\nreadErr=Read Error\neditingErr=Editing Error\nconfExtEditNotPossible=This diagram cannot be edited externally. Please try editing it while editing the page\nconfEditedExt=Diagram/Page edited externally\ndiagNotFound=Diagram Not Found\nconfEditedExtRefresh=Diagram/Page is edited externally. Please refresh the page.\nconfCannotEditDraftDelOrExt=Cannot edit diagrams in a draft page, diagram is deleted from the page, or diagram is edited externally. Please check the page.\nretBack=Return back\nconfDiagNotPublished=The diagram does not belong to a published page\ncreatedByDraw=Created by draw.io\nfilenameShort=Filename too short\ninvalidChars=Invalid characters\nalreadyExst={1} already exists\ndraftReadErr=Draft Read Error\ndiagCantLoad=Diagram cannot be loaded\ndraftWriteErr=Draft Write Error\ndraftCantCreate=Draft could not be created\nconfDuplName=Duplicate diagram name detected. Please pick another name.\nconfSessionExpired=Looks like your session expired. Log in again to keep working.\nlogin=Login\ndrawPrev=draw.io preview\ndrawDiag=draw.io diagram\ninvalidCallFnNotFound=Invalid Call: {1} not found\ninvalidCallErrOccured=Invalid Call: An error occurred, {1}\nanonymous=Anonymous\nconfGotoPage=Go to containing page\nshowComments=Show Comments\nconfError=Error: {1}\ngliffyImport=Gliffy Import\ngliffyImportInst1=Click the "Start Import" button to import all Gliffy diagrams to draw.io.\ngliffyImportInst2=Please note that the import procedure will take some time and the browser window must remain open until the import is completed.\nstartImport=Start Import\ndrawConfig=draw.io Configuration\ncustomLib=Custom Libraries\ncustomTemp=Custom Templates\npageIdsExp=Page IDs Export\ndrawReindex=draw.io re-indexing (beta)\nworking=Working\ndrawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.\ncreateConfSp=Create Config Space\nunexpErrRefresh=Unexpected error, please refresh the page and try again.\nconfigJSONInst=Write draw.io JSON configuration in the editor below then click save. If you need help, please refer to\nthisPage=this page\ncurCustLib=Current Custom Libraries\nlibName=Library Name\naction=Action\ndrawConfID=draw.io Config ID\naddLibInst=Click the "Add Library" button to upload a new library.\naddLib=Add Library\ncustomTempInst1=Custom templates are draw.io diagrams saved in children pages of\ncustomTempInst2=For more details, please refer to\ntempsPage=Templates page\npageIdsExpInst1=Select export target, then click the "Start Export" button to export all pages IDs.\npageIdsExpInst2=Please note that the export procedure will take some time and the browser window must remain open until the export is completed.\nstartExp=Start Export\nrefreshDrawIndex=Refresh draw.io Diagrams Index\nreindexInst1=Click the "Start Indexing" button to refresh draw.io diagrams index.\nreindexInst2=Please note that the indexing procedure will take some time and the browser window must remain open until the indexing is completed.\nstartIndexing=Start Indexing\nconfAPageFoundFetch=Page "{1}" found. Fetching\nconfAAllDiagDone=All {1} diagrams processed. Process finished.\nconfAStartedProcessing=Started processing page "{1}"\nconfAAllDiagInPageDone=All {1} diagrams in page "{2}" processed successfully.\nconfAPartialDiagDone={1} out of {2} {3} diagrams in page "{4}" processed successfully.\nconfAUpdatePageFailed=Updating page "{1}" failed.\nconfANoDiagFoundInPage=No {1} diagrams found in page "{2}".\nconfAFetchPageFailed=Fetching the page failed.\nconfANoDiagFound=No {1} diagrams found. Process finished.\nconfASearchFailed=Searching for {1} diagrams failed. Please try again later.\nconfAGliffyDiagFound={2} diagram "{1}" found. Importing\nconfAGliffyDiagImported={2} diagram "{1}" imported successfully.\nconfASavingImpGliffyFailed=Saving imported {2} diagram "{1}" failed.\nconfAImportedFromByDraw=Imported from "{1}" by draw.io\nconfAImportGliffyFailed=Importing {2} diagram "{1}" failed.\nconfAFetchGliffyFailed=Fetching {2} diagram "{1}" failed.\nconfACheckBrokenDiagLnk=Checking for broken diagrams links.\nconfADelDiagLinkOf=Deleting diagram link of "{1}"\nconfADupLnk=(duplicate link)\nconfADelDiagLnkFailed=Deleting diagram link of "{1}" failed.\nconfAUnexpErrProcessPage=Unexpected error during processing the page with id: {1}\nconfADiagFoundIndex=Diagram "{1}" found. Indexing\nconfADiagIndexSucc=Diagram "{1}" indexed successfully.\nconfAIndexDiagFailed=Indexing diagram "{1}" failed.\nconfASkipDiagOtherPage=Skipped "{1}" as it belongs to another page!\nconfADiagUptoDate=Diagram "{1}" is up to date.\nconfACheckPagesWDraw=Checking pages having draw.io diagrams.\nconfAErrOccured=An error occurred!\nsavedSucc=Saved successfully\nconfASaveFailedErr=Saving Failed (Unexpected Error)\ncharacter=Character\nconfAConfPageDesc=This page contains draw.io configuration file (configuration.json) as attachment\nconfALibPageDesc=This page contains draw.io custom libraries as attachments\nconfATempPageDesc=This page contains draw.io custom templates as attachments\nworking=Working\nconfAConfSpaceDesc=This space is used to store draw.io configuration files and custom libraries/templates\nconfANoCustLib=No Custom Libraries\ndelFailed=Delete failed!\nshowID=Show ID\nconfAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.\nuploading=Uploading\nconfALibExist=This library already exists\nconfAUploadSucc=Uploaded successfully\nconfAUploadFailErr=Upload Failed (Unexpected Error)\nhiResPreview=High Res Preview\nofficeNotLoggedGD=You are not logged in to Google Drive. Please open draw.io task pane and login first.\nofficePopupInfo=Please complete the process in the pop-up window.\npickODFile=Pick OneDrive File\npickGDriveFile=Pick Google Drive File\npickDeviceFile=Pick Device File\nvsdNoConfig="vsdurl" is not configured\nruler=Ruler\nunits=Units\npoints=Points\ninches=Inches\nmillimeters=Millimeters\nconfEditDraftDelOrExt=This diagram is in a draft page, is deleted from the page, or is edited externally. It will be saved as a new attachment version and may not be reflected in the page.\nconfDiagEditedExt=Diagram is edited in another session. It will be saved as a new attachment version but the page will show other session\'s modifications.\nmacroNotFound=Macro Not Found\nconfAInvalidPageIdsFormat=Incorrect Page IDs file format\nconfACollectingCurPages=Collecting current pages\nconfABuildingPagesMap=Building pages mapping\nconfAProcessDrawDiag=Started processing imported draw.io diagrams\nconfAProcessDrawDiagDone=Finished processing imported draw.io diagrams\nconfAProcessImpPages=Started processing imported pages\nconfAErrPrcsDiagInPage=Error processing draw.io diagrams in page "{1}"\nconfAPrcsDiagInPage=Processing draw.io diagrams in page "{1}"\nconfAImpDiagram=Importing diagram "{1}"\nconfAImpDiagramFailed=Importing diagram "{1}" failed. Cannot find its new page ID. Maybe it points to a page that is not imported. \nconfAImpDiagramError=Error importing diagram "{1}". Cannot fetch or save the diagram. Cannot fix this diagram links.\nconfAUpdateDgrmCCFailed=Updating link to diagram "{1}" failed.\nconfImpDiagramSuccess=Updating diagram "{1}" done successfully.\nconfANoLnksInDrgm=No links to update in: {1}\nconfAUpdateLnkToPg=Updated link to page: "{1}" in diagram: "{2}"\nconfAUpdateLBLnkToPg=Updated lightbox link to page: "{1}" in diagram: "{2}"\nconfAUpdateLnkBase=Updated base URL from: "{1}" to: "{2}" in diagram: "{3}"\nconfAPageIdsImpDone=Page IDs Import finished.\nconfAPrcsMacrosInPage=Processing draw.io macros in page "{1}"\nconfAErrFetchPage=Error fetching page "{1}"\nconfAFixingMacro=Fixing macro of diagram "{1}"\nconfAErrReadingExpFile=Error reading export file\nconfAPrcsDiagInPageDone=Processing draw.io diagrams in page "{1}" finished\nconfAFixingMacroSkipped=Fixing macro of diagram "{1}" failed. Cannot find its new page ID. Maybe it points to a page that is not imported. \npageIdsExpTrg=Export target\nconfALucidDiagImgImported={2} diagram "{1}" image extracted successfully.\nconfASavingLucidDiagImgFailed=Extracting {2} diagram "{1}" image failed.\nconfGetInfoFailed=Fetching file info from {1} failed.\nconfCheckCacheFailed=Cannot get cached file info.\nconfReadFileErr=Cannot read "{1}" file from {2}.\nconfSaveCacheFailed=Unexpected error. Cannot save cached file\norgChartType=Org Chart Type\nlinear=Linear\nhanger2=Hanger 2\nhanger4=Hanger 4\nfishbone1=Fishbone 1\nfishbone2=Fishbone 2\n1ColumnLeft=Single Column Left\n1ColumnRight=Single Column Right\nsmart=Smart\nparentChildSpacing=Parent Child Spacing\nsiblingSpacing=Sibling Spacing\nconfNoPermErr=Sorry, you don\'t have enough permissions to view this embedded diagram from page {1}\ncopyAsImage=Copy as Image\nlucidImport=Lucidchart Import\nlucidImportInst1=Click the "Start Import" button to import all Lucidchart diagrams.\ninstallFirst=Please install {1} first.\ndrawioChromeExt=draw.io Chrome Extension\nloginFirstThen=Please login to {1} first, then {2}\nerrFetchDocList=Error: Couldn\'t fetch documents list.\nbuiltinPlugins=Built-in Plugins\nextPlugins=External Plugins\nbackupFound=Backup file found\nchromeOnly=This feature only works in Google Chrome\nmsgDeleted=This message has been deleted.\nconfAErrFetchDrawList=Error fetching diagrams list. Some diagrams are skipped.\nconfAErrCheckDrawDiag=Cannot check diagram {1}\nconfAErrFetchPageList=Error fetching pages list.\nconfADiagImportIncom={1} diagram "{2}" is imported partially and may have missing shapes.\ninvalidSel=Invalid selection\ndiagNameEmptyErr=Diagram name cannot be empty\nopenDiagram=Open Diagram\nnewDiagram=New diagram\neditable=Editable\n');Graph.prototype.defaultThemes["default-style2"]=mxUtils.parseXml('').documentElement; +(function(){var a=!1;"min"!=uiTheme||a||mxClient.IS_CHROMEAPP||(EditorUi.initMinimalTheme(),a=!0);var d=EditorUi.initTheme;EditorUi.initTheme=function(){d.apply(this,arguments);"min"!=uiTheme||a||(this.initMinimalTheme(),a=!0)}})();DrawioComment=function(a,d,b,e,k,m,q){this.file=a;this.id=d;this.content=b;this.modifiedDate=e;this.createdDate=k;this.isResolved=m;this.user=q;this.replies=[]};DrawioComment.prototype.addReplyDirect=function(a){null!=a&&this.replies.push(a)};DrawioComment.prototype.addReply=function(a,d,b,e,k){d()};DrawioComment.prototype.editComment=function(a,d,b){d()};DrawioComment.prototype.deleteComment=function(a,d){a()};DrawioUser=function(a,d,b,e,k){this.id=a;this.email=d;this.displayName=b;this.pictureUrl=e;this.locale=k};mxResources.parse('# *DO NOT DIRECTLY EDIT THIS FILE, IT IS AUTOMATICALLY GENERATED AND IT IS BASED ON:*\n# https://docs.google.com/spreadsheet/ccc?key=0AmQEO36liL4FdDJLWVNMaVV2UmRKSnpXU09MYkdGbEE\nabout=About \naboutDrawio=About draw.io\naccessDenied=Access Denied\naction=Action\nactualSize=Actual Size\nadd=Add\naddAccount=Add account\naddedFile=Added {1}\naddImages=Add Images\naddImageUrl=Add Image URL\naddLayer=Add Layer\naddProperty=Add Property\naddress=Address\naddToExistingDrawing=Add to Existing Drawing\naddWaypoint=Add Waypoint\nadjustTo=Adjust to\nadvanced=Advanced\nalign=Align\nalignment=Alignment\nallChangesLost=All changes will be lost!\nallPages=All Pages\nallProjects=All Projects\nallSpaces=All Spaces\nallTags=All Tags\nanchor=Anchor\nandroid=Android\nangle=Angle\narc=Arc\nareYouSure=Are you sure?\nensureDataSaved=Please ensure your data is saved before closing.\nallChangesSaved=All changes saved\nallChangesSavedInDrive=All changes saved in Drive\nallowPopups=Allow pop-ups to avoid this dialog.\nallowRelativeUrl=Allow relative URL\nalreadyConnected=Nodes already connected\napply=Apply\narchiMate21=ArchiMate 2.1\narrange=Arrange\narrow=Arrow\narrows=Arrows\nasNew=As New\natlas=Atlas\nauthor=Author\nauthorizationRequired=Authorization required\nauthorizeThisAppIn=Authorize this app in {1}:\nauthorize=Authorize\nauthorizing=Authorizing\nautomatic=Automatic\nautosave=Autosave\nautosize=Autosize\nattachments=Attachments\naws=AWS\naws3d=AWS 3D\nazure=Azure\nback=Back\nbackground=Background\nbackgroundColor=Background Color\nbackgroundImage=Background Image\nbasic=Basic\nblankDrawing=Blank Drawing\nblankDiagram=Blank Diagram\nblock=Block\nblockquote=Blockquote\nblog=Blog\nbold=Bold\nbootstrap=Bootstrap\nborder=Border\nborderColor=Border Color\nborderWidth=Border Width\nbottom=Bottom\nbottomAlign=Bottom Align\nbottomLeft=Bottom Left\nbottomRight=Bottom Right\nbpmn=BPMN\nbrowser=Browser\nbulletedList=Bulleted List\nbusiness=Business\nbusy=Operation in progress\ncabinets=Cabinets\ncancel=Cancel\ncenter=Center\ncannotLoad=Load attempts failed. Please try again later.\ncannotLogin=Log in attempts failed. Please try again later.\ncannotOpenFile=Cannot open file\nchange=Change\nchangeOrientation=Change Orientation\nchangeUser=Change user\nchangeStorage=Change storage\nchangesNotSaved=Changes have not been saved\nclassDiagram=Class Diagram\nuserJoined={1} has joined\nuserLeft={1} has left\nchatWindowTitle=Chat\nchooseAnOption=Choose an option\nchromeApp=Chrome App\ncollaborativeEditingNotice=Important Notice for Collaborative Editing\ncompressed=Compressed\ncommitMessage=Commit Message\nconfigLinkWarn=This link configures draw.io. Only click OK if you trust whoever gave you it!\nconfigLinkConfirm=Click OK to configure and restart draw.io.\ncsv=CSV\ndark=Dark\ndiagramXmlDesc=XML File\ndiagramHtmlDesc=HTML File\ndiagramPngDesc=Editable Bitmap Image\ndiagramSvgDesc=Editable Vector Image\ndidYouMeanToExportToPdf=Did you mean to export to PDF?\ndraftFound=A draft for \'{1}\' has been found. Load it into the editor or discard it to continue.\nselectDraft=Select a draft to continue editing:\ndragAndDropNotSupported=Drag and drop not supported for images. Would you like to import instead?\ndropboxCharsNotAllowed=The following characters are not allowed: / : ? * " |\ncheck=Check\nchecksum=Checksum\ncircle=Circle\ncisco=Cisco\nclassic=Classic\nclearDefaultStyle=Clear Default Style\nclearWaypoints=Clear Waypoints\nclipart=Clipart\nclose=Close\nclosingFile=Closing file\ncollaborator=Collaborator\ncollaborators=Collaborators\ncollapse=Collapse\ncollapseExpand=Collapse/Expand\ncollapse-expand=Click to collapse/expand\nShift-click to move neighbors \nAlt-click to protect group size\ncollapsible=Collapsible\ncomic=Comic\ncomment=Comment\ncommentsNotes=Comments/Notes\ncompress=Compress\nconfiguration=Configuration\nconnect=Connect\nconnecting=Connecting\nconnectWithDrive=Connect with Google Drive\nconnection=Connection\nconnectionArrows=Connection Arrows\nconnectionPoints=Connection Points\nconstrainProportions=Constrain Proportions\ncontainsValidationErrors=Contains validation errors\ncopiedToClipboard=Copied to clipboard\ncopy=Copy\ncopyConnect=Copy on connect\ncopyCreated=A copy of the file was created.\ncopyOf=Copy of {1}\ncopyOfDrawing=Copy of Drawing\ncopySize=Copy Size\ncopyStyle=Copy Style\ncreate=Create\ncreateNewDiagram=Create New Diagram\ncreateRevision=Create Revision\ncreateShape=Create Shape\ncrop=Crop\ncurved=Curved\ncustom=Custom\ncurrent=Current\ncurrentPage=Current page\ncut=Cut\ndashed=Dashed\ndecideLater=Decide later\ndefault=Default\ndelete=Delete\ndeleteColumn=Delete Column\ndeleteLibrary401=Insufficient permissions to delete this library\ndeleteLibrary404=Selected library could not be found\ndeleteLibrary500=Error deleting library\ndeleteLibraryConfirm=You are about to permanently delete this library. Are you sure you want to do this?\ndeleteRow=Delete Row\ndescription=Description\ndevice=Device\ndiagram=Diagram\ndiagramContent=Diagram Content\ndiagramLocked=Diagram has been locked to prevent further data loss.\ndiagramLockedBySince=The diagram is locked by {1} since {2} ago\ndiagramName=Diagram Name\ndiagramIsPublic=Diagram is public\ndiagramIsNotPublic=Diagram is not public\ndiamond=Diamond\ndiamondThin=Diamond (thin)\ndidYouKnow=Did you know...\ndirection=Direction\ndiscard=Discard\ndiscardChangesAndReconnect=Discard Changes and Reconnect\ngoogleDriveMissingClickHere=Google Drive missing? Click here!\ndiscardChanges=Discard Changes\ndisconnected=Disconnected\ndistribute=Distribute\ndone=Done\ndoNotShowAgain=Do not show again\ndotted=Dotted\ndoubleClickOrientation=Doubleclick to change orientation\ndoubleClickTooltip=Doubleclick to insert text\ndoubleClickChangeProperty=Doubleclick to change property name\ndownload=Download\ndownloadDesktop=Get Desktop\ndownloadAs=Download as\nclickHereToSave=Click here to save.\ndpi=DPI\ndraftDiscarded=Draft discarded\ndraftSaved=Draft saved\ndragElementsHere=Drag elements here\ndragImagesHere=Drag images or URLs here\ndragUrlsHere=Drag URLs here\ndraw.io=draw.io\ndrawing=Drawing{1}\ndrawingEmpty=Drawing is empty\ndrawingTooLarge=Drawing is too large\ndrawioForWork=Draw.io for GSuite\ndropbox=Dropbox\nduplicate=Duplicate\nduplicateIt=Duplicate {1}\ndivider=Divider\ndx=Dx\ndy=Dy\neast=East\nedit=Edit\neditData=Edit Data\neditDiagram=Edit Diagram\neditGeometry=Edit Geometry\neditImage=Edit Image\neditImageUrl=Edit Image URL\neditLink=Edit Link\neditShape=Edit Shape\neditStyle=Edit Style\neditText=Edit Text\neditTooltip=Edit Tooltip\nglass=Glass\ngoogleImages=Google Images\nimageSearch=Image Search\neip=EIP\nembed=Embed\nembedImages=Embed Images\nmainEmbedNotice=Paste this into the page\nelectrical=Electrical\nellipse=Ellipse\nembedNotice=Paste this once at the end of the page\nenterGroup=Enter Group\nenterName=Enter Name\nenterPropertyName=Enter Property Name\nenterValue=Enter Value\nentityRelation=Entity Relation\nentityRelationshipDiagram=Entity Relationship Diagram\nerror=Error\nerrorDeletingFile=Error deleting file\nerrorLoadingFile=Error loading file\nerrorRenamingFile=Error renaming file\nerrorRenamingFileNotFound=Error renaming file. File was not found.\nerrorRenamingFileForbidden=Error renaming file. Insufficient access rights.\nerrorSavingDraft=Error saving draft\nerrorSavingFile=Error saving file\nerrorSavingFileUnknown=Error authorizing with Google\'s servers. Please refresh the page to re-attempt.\nerrorSavingFileForbidden=Error saving file. Insufficient access rights.\nerrorSavingFileNameConflict=Could not save diagram. Current page already contains file named \'{1}\'.\nerrorSavingFileNotFound=Error saving file. File was not found.\nerrorSavingFileReadOnlyMode=Could not save diagram while read-only mode is active.\nerrorSavingFileSessionTimeout=Your session has ended. Please {2} and return to this tab to try to save again.\nerrorSendingFeedback=Error sending feedback.\nerrorUpdatingPreview=Error updating preview.\nexit=Exit\nexitGroup=Exit Group\nexpand=Expand\nexport=Export\nexporting=Exporting\nexportAs=Export as\nexportOptionsDisabled=Export options disabled\nexportOptionsDisabledDetails=The owner has disabled options to download, print or copy for commenters and viewers on this file.\nexternalChanges=External Changes\nextras=Extras\nfacebook=Facebook\nfailedToSaveTryReconnect=Failed to save, trying to reconnect\nfeatureRequest=Feature Request\nfeedback=Feedback\nfeedbackSent=Feedback successfully sent.\nfloorplans=Floorplans\nfile=File\nfileChangedOverwriteDialog=The file has been modified. Do you want to save the file and overwrite those changes?\nfileChangedSyncDialog=The file has been modified. Do you want to synchronize those changes?\nfileChangedSync=The file has been modified. Click here to synchronize.\noverwrite=Overwrite\nsynchronize=Synchronize\nfilename=Filename\nfileExists=File already exists\nfileMovedToTrash=File was moved to trash\nfileNearlyFullSeeFaq=File nearly full, please see FAQ\nfileNotFound=File not found\nrepositoryNotFound=Repository not found\nfileNotFoundOrDenied=The file was not found. It does not exist or you do not have access.\nfileNotLoaded=File not loaded\nfileNotSaved=File not saved\nfileOpenLocation=How would you like to open these file(s)?\nfiletypeHtml=.html causes file to save as HTML with redirect to cloud URL\nfiletypePng=.png causes file to save as PNG with embedded data\nfiletypeSvg=.svg causes file to save as SVG with embedded data\nfileWillBeSavedInAppFolder={1} will be saved in the app folder.\nfill=Fill\nfillColor=Fill Color\nfilterCards=Filter Cards\nfind=Find\nfit=Fit\nfitContainer=Resize Container\nfitIntoContainer=Fit into Container\nfitPage=Fit Page\nfitPageWidth=Fit Page Width\nfitTo=Fit to\nfitToSheetsAcross=sheet(s) across\nfitToBy=by\nfitToSheetsDown=sheet(s) down\nfitTwoPages=Two Pages\nfitWindow=Fit Window\nflip=Flip\nflipH=Flip Horizontal\nflipV=Flip Vertical\nflowchart=Flowchart\nfolder=Folder\nfont=Font\nfontColor=Font Color\nfontFamily=Font Family\nfontSize=Font Size\nforbidden=You are not authorized to access this file\nformat=Format\nformatPanel=Format Panel\nformatted=Formatted\nformattedText=Formatted Text\nformatPng=PNG\nformatGif=GIF\nformatJpg=JPEG\nformatPdf=PDF\nformatSql=SQL\nformatSvg=SVG\nformatHtmlEmbedded=HTML\nformatSvgEmbedded=SVG (with XML)\nformatVsdx=VSDX\nformatVssx=VSSX\nformatXmlPlain=XML (Plain)\nformatXml=XML\nforum=Discussion/Help Forums\nfreehand=Freehand\nfromTemplate=From Template\nfromTemplateUrl=From Template URL\nfromText=From Text\nfromUrl=From URL\nfromThisPage=From this page\nfullscreen=Fullscreen\ngap=Gap\ngcp=GCP\ngeneral=General\ngithub=GitHub\ngitlab=GitLab\ngliffy=Gliffy\nglobal=Global\ngoogleDocs=Google Docs\ngoogleDrive=Google Drive\ngoogleGadget=Google Gadget\ngooglePlus=Google+\ngoogleSharingNotAvailable=Sharing is only available via Google Drive. Please click Open below and share from the more actions menu:\ngoogleSlides=Google Slides\ngoogleSites=Google Sites\ngoogleSheets=Google Sheets\ngradient=Gradient\ngradientColor=Color\ngrid=Grid\ngridColor=Grid Color\ngridSize=Grid Size\ngroup=Group\nguides=Guides\nhateApp=I hate draw.io\nheading=Heading\nheight=Height\nhelp=Help\nhelpTranslate=Help us translate this application\nhide=Hide\nhideIt=Hide {1}\nhidden=Hidden\nhome=Home\nhorizontal=Horizontal\nhorizontalFlow=Horizontal Flow\nhorizontalTree=Horizontal Tree\nhowTranslate=How good is the translation in your language?\nhtml=HTML\nhtmlText=HTML Text\nid=ID\niframe=IFrame\nignore=Ignore\nimage=Image\nimageUrl=Image URL\nimages=Images\nimagePreviewError=This image couldn\'t be loaded for preview. Please check the URL.\nimageTooBig=Image too big\nimgur=Imgur\nimport=Import\nimportFrom=Import from\nincludeCopyOfMyDiagram=Include a copy of my diagram\nincreaseIndent=Increase Indent\ndecreaseIndent=Decrease Indent\ninsert=Insert\ninsertColumnBefore=Insert Column Left\ninsertColumnAfter=Insert Column Right\ninsertEllipse=Insert Ellipse\ninsertImage=Insert Image\ninsertHorizontalRule=Insert Horizontal Rule\ninsertLink=Insert Link\ninsertPage=Insert Page\ninsertRectangle=Insert Rectangle\ninsertRhombus=Insert Rhombus\ninsertRowBefore=Insert Row Above\ninsertRowAfter=Insert Row After\ninsertText=Insert Text\ninserting=Inserting\ninstallApp=Install App\ninvalidFilename=Diagram names must not contain the following characters: / | : ; { } < > & + ? = "\ninvalidLicenseSeeThisPage=Your license is invalid, please see this page.\ninvalidInput=Invalid input\ninvalidName=Invalid name\ninvalidOrMissingFile=Invalid or missing file\ninvalidPublicUrl=Invalid public URL\nisometric=Isometric\nios=iOS\nitalic=Italic\nkennedy=Kennedy\nkeyboardShortcuts=Keyboard Shortcuts\nlayers=Layers\nlandscape=Landscape\nlanguage=Language\nleanMapping=Lean Mapping\nlastChange=Last change {1} ago\nlessThanAMinute=less than a minute\nlicensingError=Licensing Error\nlicenseHasExpired=The license for {1} has expired on {2}. Click here.\nlicenseRequired=This feature requires draw.io to be licensed.\nlicenseWillExpire=The license for {1} will expire on {2}. Click here.\nlineJumps=Line jumps\nlinkAccountRequired=If the diagram is not public a Google account is required to view the link.\nlinkText=Link Text\nlist=List\nminute=minute\nminutes=minutes\nhours=hours\ndays=days\nmonths=months\nyears=years\nrestartForChangeRequired=Changes will take effect after a restart of the application.\nlaneColor=Lanecolor\nlastModified=Last modified\nlayout=Layout\nleft=Left\nleftAlign=Left Align\nleftToRight=Left to right\nlibraryTooltip=Drag and drop shapes here or click + to insert. Double click to edit.\nlightbox=Lightbox\nline=Line\nlineend=Line end\nlineheight=Line Height\nlinestart=Line start\nlinewidth=Linewidth\nlink=Link\nlinks=Links\nloading=Loading\nlockUnlock=Lock/Unlock\nloggedOut=Logged Out\nlogIn=log in\nloveIt=I love {1}\nlucidchart=Lucidchart\nmaps=Maps\nmathematicalTypesetting=Mathematical Typesetting\nmakeCopy=Make a Copy\nmanual=Manual\nmermaid=Mermaid\nmicrosoftOffice=Microsoft Office\nmicrosoftExcel=Microsoft Excel\nmicrosoftPowerPoint=Microsoft PowerPoint\nmicrosoftWord=Microsoft Word\nmiddle=Middle\nminimal=Minimal\nmisc=Misc\nmockups=Mockups\nmodificationDate=Modification date\nmodifiedBy=Modified by\nmore=More\nmoreResults=More Results\nmoreShapes=More Shapes\nmove=Move\nmoveToFolder=Move to Folder\nmoving=Moving\nmoveSelectionTo=Move selection to {1}\nname=Name\nnavigation=Navigation\nnetwork=Network\nnetworking=Networking\nnew=New\nnewLibrary=New Library\nnextPage=Next Page\nno=No\nnoPickFolder=No, pick folder\nnoAttachments=No attachments found\nnoColor=No Color\nnoFiles=No Files\nnoFileSelected=No file selected\nnoLibraries=No libraries found\nnoMoreResults=No more results\nnone=None\nnoOtherViewers=No other viewers\nnoPlugins=No plugins\nnoPreview=No preview\nnoResponse=No response from server\nnoResultsFor=No results for \'{1}\'\nnoRevisions=No revisions\nnoSearchResults=No search results found\nnoPageContentOrNotSaved=No anchors found on this page or it hasn\'t been saved yet\nnormal=Normal\nnorth=North\nnotADiagramFile=Not a diagram file\nnotALibraryFile=Not a library file\nnotAvailable=Not available\nnotAUtf8File=Not a UTF-8 file\nnotConnected=Not connected\nnote=Note\nnotSatisfiedWithImport=Not satisfied with the import?\nnotUsingService=Not using {1}?\nnumberedList=Numbered list\noffline=Offline\nok=OK\noneDrive=OneDrive\nonline=Online\nopacity=Opacity\nopen=Open\nopenArrow=Open Arrow\nopenExistingDiagram=Open Existing Diagram\nopenFile=Open File\nopenFrom=Open from\nopenLibrary=Open Library\nopenLibraryFrom=Open Library from\nopenLink=Open Link\nopenInNewWindow=Open in New Window\nopenInThisWindow=Open in This Window\nopenIt=Open {1}\nopenRecent=Open Recent\nopenSupported=Supported formats are files saved from this software (.xml), .vsdx and .gliffy\noptions=Options\norganic=Organic\norgChart=Org Chart\northogonal=Orthogonal\notherViewer=other viewer\notherViewers=other viewers\noutline=Outline\noval=Oval\npage=Page\npageContent=Page Content\npageNotFound=Page not found\npageWithNumber=Page-{1}\npages=Pages\npageView=Page View\npageSetup=Page Setup\npageScale=Page Scale\npan=Pan\npanTooltip=Space+Drag to pan\npaperSize=Paper Size\npattern=Pattern\nparallels=Parallels\npaste=Paste\npasteHere=Paste here\npasteSize=Paste Size\npasteStyle=Paste Style\nperimeter=Perimeter\npermissionAnyone=Anyone can edit\npermissionAuthor=Owner and admins can edit\npickFolder=Pick a folder\npickLibraryDialogTitle=Select Library\npublicDiagramUrl=Public URL of the diagram\nplaceholders=Placeholders\nplantUml=PlantUML\nplugins=Plugins\npluginUrl=Plugin URL\npluginWarning=The page has requested to load the following plugin(s):\n \n {1}\n \n Would you like to load these plugin(s) now?\n \n NOTE : Only allow plugins to run if you fully understand the security implications of doing so.\n\nplusTooltip=Click to connect and clone (ctrl+click to clone, shift+click to connect). Drag to connect (ctrl+drag to clone).\nportrait=Portrait\nposition=Position\nposterPrint=Poster Print\npreferences=Preferences\npreview=Preview\npreviousPage=Previous Page\nprint=Print\nprintAllPages=Print All Pages\nprocEng=Proc. Eng.\nproject=Project\npriority=Priority\nproperties=Properties\npublish=Publish\nquickStart=Quick Start Video\nrack=Rack\nradialTree=Radial Tree\nreadOnly=Read-only\nreconnecting=Reconnecting\nrecentlyUpdated=Recently Updated\nrecentlyViewed=Recently Viewed\nrectangle=Rectangle\nredirectToNewApp=This file was created or modified in a newer version of this app. You will be redirected now.\nrealtimeTimeout=It looks like you\'ve made a few changes while offline. We\'re sorry, these changes cannot be saved.\nredo=Redo\nrefresh=Refresh\nregularExpression=Regular Expression\nrelative=Relative\nrelativeUrlNotAllowed=Relative URL not allowed\nrememberMe=Remember me\nrememberThisSetting=Remember this setting\nremoveFormat=Clear Formatting\nremoveFromGroup=Remove from Group\nremoveIt=Remove {1}\nremoveWaypoint=Remove Waypoint\nrename=Rename\nrenamed=Renamed\nrenameIt=Rename {1}\nrenaming=Renaming\nreplace=Replace\nreplaceIt={1} already exists. Do you want to replace it?\nreplaceExistingDrawing=Replace existing drawing\nrequired=required\nreset=Reset\nresetView=Reset View\nresize=Resize\nresizeLargeImages=Do you want to resize large images to make the application run faster?\nretina=Retina\nresponsive=Responsive\nrestore=Restore\nrestoring=Restoring\nretryingIn=Retrying in {1} second(s)\nretryingLoad=Load failed. Retrying...\nretryingLogin=Login time out. Retrying...\nreverse=Reverse\nrevision=Revision\nrevisionHistory=Revision History\nrhombus=Rhombus\nright=Right\nrightAlign=Right Align\nrightToLeft=Right to left\nrotate=Rotate\nrotateTooltip=Click and drag to rotate, click to turn shape only by 90 degrees\nrotation=Rotation\nrounded=Rounded\nsave=Save\nsaveAndExit=Save & Exit\nsaveAs=Save as\nsaveAsXmlFile=Save as XML file?\nsaved=Saved\nsaveDiagramFirst=Please save the diagram first\nsaveDiagramsTo=Save diagrams to\nsaveLibrary403=Insufficient permissions to edit this library\nsaveLibrary500=There was an error while saving the library\nsaveLibraryReadOnly=Could not save library while read-only mode is active\nsaving=Saving\nscratchpad=Scratchpad\nscrollbars=Scrollbars\nsearch=Search\nsearchShapes=Search Shapes\nselectAll=Select All\nselectionOnly=Selection Only\nselectCard=Select Card\nselectEdges=Select Edges\nselectFile=Select File\nselectFolder=Select Folder\nselectFont=Select Font\nselectNone=Select None\nselectTemplate=Select Template\nselectVertices=Select Vertices\nsendMessage=Send\nsendYourFeedback=Send your feedback\nserviceUnavailableOrBlocked=Service unavailable or blocked\nsessionExpired=Your session has expired. Please refresh the browser window.\nsessionTimeoutOnSave=Your session has timed out and you have been disconnected from the Google Drive. Press OK to login and save. \nsetAsDefaultStyle=Set as Default Style\nshadow=Shadow\nshape=Shape\nshapes=Shapes\nshare=Share\nshareLink=Link for shared editing\nsharingAvailable=Sharing available for Google Drive and OneDrive files.\nsharp=Sharp\nshow=Show\nshowStartScreen=Show Start Screen\nsidebarTooltip=Click to expand. Drag and drop shapes into the diagram. Shift+click to change selection. Alt+click to insert and connect.\nsigns=Signs\nsignOut=Sign out\nsimple=Simple\nsimpleArrow=Simple Arrow\nsimpleViewer=Simple Viewer\nsize=Size\nsketch=Sketch\nsolid=Solid\nsourceSpacing=Source Spacing\nsouth=South\nsoftware=Software\nspace=Space\nspacing=Spacing\nspecialLink=Special Link\nstandard=Standard\nstartDrawing=Start drawing\nstopDrawing=Stop drawing\nstarting=Starting\nstraight=Straight\nstrikethrough=Strikethrough\nstrokeColor=Line Color\nstyle=Style\nsubscript=Subscript\nsummary=Summary\nsuperscript=Superscript\nsupport=Support\nswimlaneDiagram=Swimlane Diagram\nsysml=SysML\ntags=Tags\ntable=Table\ntables=Tables\ntakeOver=Take Over\ntargetSpacing=Target Spacing\ntemplate=Template\ntemplates=Templates\ntext=Text\ntextAlignment=Text Alignment\ntextOpacity=Text Opacity\ntheme=Theme\ntimeout=Timeout\ntitle=Title\nto=to\ntoBack=To Back\ntoFront=To Front\ntooLargeUseDownload=Too large, use download instead.\ntoolbar=Toolbar\ntooltips=Tooltips\ntop=Top\ntopAlign=Top Align\ntopLeft=Top Left\ntopRight=Top Right\ntransparent=Transparent\ntransparentBackground=Transparent Background\ntrello=Trello\ntryAgain=Try again\ntryOpeningViaThisPage=Try opening via this page\nturn=Rotate shape only by 90°\ntype=Type\ntwitter=Twitter\numl=UML\nunderline=Underline\nundo=Undo\nungroup=Ungroup\nunsavedChanges=Unsaved changes\nunsavedChangesClickHereToSave=Unsaved changes. Click here to save.\nuntitled=Untitled\nuntitledDiagram=Untitled Diagram\nuntitledLayer=Untitled Layer\nuntitledLibrary=Untitled Library\nunknownError=Unknown error\nupdateFile=Update {1}\nupdatingDocument=Updating Document. Please wait...\nupdatingPreview=Updating Preview. Please wait...\nupdatingSelection=Updating Selection. Please wait...\nupload=Upload\nurl=URL\nuseOffline=Use Offline\nuseRootFolder=Use root folder?\nuserManual=User Manual\nvertical=Vertical\nverticalFlow=Vertical Flow\nverticalTree=Vertical Tree\nview=View\nviewerSettings=Viewer Settings\nviewUrl=Link to view: {1}\nvoiceAssistant=Voice Assistant (beta)\nwarning=Warning\nwaypoints=Waypoints\nwest=West\nwidth=Width\nwiki=Wiki\nwordWrap=Word Wrap\nwritingDirection=Writing Direction\nyes=Yes\nyourEmailAddress=Your email address\nzoom=Zoom\nzoomIn=Zoom In\nzoomOut=Zoom Out\nbasic=Basic\nbusinessprocess=Business Processes\ncharts=Charts\nengineering=Engineering\nflowcharts=Flowcharts\ngmdl=Material Design\nmindmaps=Mindmaps\nmockups=Mockups\nnetworkdiagrams=Network Diagrams\nnothingIsSelected=Nothing is selected\nother=Other\nsoftwaredesign=Software Design\nvenndiagrams=Venn Diagrams\nwebEmailOrOther=Web, email or any other internet address\nwebLink=Web Link\nwireframes=Wireframes\nproperty=Property\nvalue=Value\nshowMore=Show More\nshowLess=Show Less\nmyDiagrams=My Diagrams\nallDiagrams=All Diagrams\nrecentlyUsed=Recently used\nlistView=List view\ngridView=Grid view\nresultsFor=Results for \'{1}\'\noneDriveCharsNotAllowed=The following characters are not allowed: ~ " # % * : < > ? / { | }\noneDriveInvalidDeviceName=The specified device name is invalid\nofficeNotLoggedOD=You are not logged in to OneDrive. Please open draw.io task pane and login first.\nofficeSelectSingleDiag=Please select a single draw.io diagram only without other contents.\nofficeSelectDiag=Please select a draw.io diagram.\nofficeCannotFindDiagram=Cannot find a draw.io diagram in the selection\nnoDiagrams=No diagrams found\nauthFailed=Authentication failed\nofficeFailedAuthMsg=Unable to successfully authenticate user or authorize application.\nconvertingDiagramFailed=Converting diagram failed\nofficeCopyImgErrMsg=Due to some limitations in the host application, the image could not be inserted. Please manually copy the image then paste it to the document.\ninsertingImageFailed=Inserting image failed\nofficeCopyImgInst=Instructions: Right-click the image below. Select "Copy image" from the context menu. Then, in the document, right-click and select "Paste" from the context menu.\nfolderEmpty=Folder is empty\nrecent=Recent\nsharedWithMe=Shared With Me\nsharepointSites=Sharepoint Sites\nerrorFetchingFolder=Error fetching folder items\nerrorAuthOD=Error authenticating to OneDrive\nofficeMainHeader=Adds draw.io diagrams to your document.\nofficeStepsHeader=This add-in performs the following steps:\nofficeStep1=Connects to Microsoft OneDrive, Google Drive or your device.\nofficeStep2=Select a draw.io diagram.\nofficeStep3=Insert the diagram into the document.\nofficeAuthPopupInfo=Please complete the authentication in the pop-up window.\nofficeSelDiag=Select draw.io Diagram:\nfiles=Files\nshared=Shared\nsharepoint=Sharepoint\nofficeManualUpdateInst=Instructions: Copy draw.io diagram from the document. Then, in the box below, right-click and select "Paste" from the context menu.\nofficeClickToEdit=Click icon to start editing:\npasteDiagram=Paste draw.io diagram here\nconnectOD=Connect to OneDrive\nselectChildren=Select Children\nselectSiblings=Select Siblings\nselectParent=Select Parent\nselectDescendants=Select Descendants\nlastSaved=Last saved {1} ago\nresolve=Resolve\nreopen=Re-open\nshowResolved=Show Resolved\nreply=Reply\nobjectNotFound=Object not found\nreOpened=Re-opened\nmarkedAsResolved=Marked as resolved\nnoCommentsFound=No comments found\ncomments=Comments\ntimeAgo={1} ago\nconfluenceCloud=Confluence Cloud\nlibraries=Libraries\nconfAnchor=Confluence Page Anchor\nconfTimeout=The connection has timed out\nconfSrvTakeTooLong=The server at {1} is taking too long to respond.\nconfCannotInsertNew=Cannot insert draw.io diagram to a new Confluence page\nconfSaveTry=Please save the page and try again.\nconfCannotGetID=Unable to determine page ID\nconfContactAdmin=Please contact your Confluence administrator.\nreadErr=Read Error\neditingErr=Editing Error\nconfExtEditNotPossible=This diagram cannot be edited externally. Please try editing it while editing the page\nconfEditedExt=Diagram/Page edited externally\ndiagNotFound=Diagram Not Found\nconfEditedExtRefresh=Diagram/Page is edited externally. Please refresh the page.\nconfCannotEditDraftDelOrExt=Cannot edit diagrams in a draft page, diagram is deleted from the page, or diagram is edited externally. Please check the page.\nretBack=Return back\nconfDiagNotPublished=The diagram does not belong to a published page\ncreatedByDraw=Created by draw.io\nfilenameShort=Filename too short\ninvalidChars=Invalid characters\nalreadyExst={1} already exists\ndraftReadErr=Draft Read Error\ndiagCantLoad=Diagram cannot be loaded\ndraftWriteErr=Draft Write Error\ndraftCantCreate=Draft could not be created\nconfDuplName=Duplicate diagram name detected. Please pick another name.\nconfSessionExpired=Looks like your session expired. Log in again to keep working.\nlogin=Login\ndrawPrev=draw.io preview\ndrawDiag=draw.io diagram\ninvalidCallFnNotFound=Invalid Call: {1} not found\ninvalidCallErrOccured=Invalid Call: An error occurred, {1}\nanonymous=Anonymous\nconfGotoPage=Go to containing page\nshowComments=Show Comments\nconfError=Error: {1}\ngliffyImport=Gliffy Import\ngliffyImportInst1=Click the "Start Import" button to import all Gliffy diagrams to draw.io.\ngliffyImportInst2=Please note that the import procedure will take some time and the browser window must remain open until the import is completed.\nstartImport=Start Import\ndrawConfig=draw.io Configuration\ncustomLib=Custom Libraries\ncustomTemp=Custom Templates\npageIdsExp=Page IDs Export\ndrawReindex=draw.io re-indexing (beta)\nworking=Working\ndrawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.\ncreateConfSp=Create Config Space\nunexpErrRefresh=Unexpected error, please refresh the page and try again.\nconfigJSONInst=Write draw.io JSON configuration in the editor below then click save. If you need help, please refer to\nthisPage=this page\ncurCustLib=Current Custom Libraries\nlibName=Library Name\naction=Action\ndrawConfID=draw.io Config ID\naddLibInst=Click the "Add Library" button to upload a new library.\naddLib=Add Library\ncustomTempInst1=Custom templates are draw.io diagrams saved in children pages of\ncustomTempInst2=For more details, please refer to\ntempsPage=Templates page\npageIdsExpInst1=Select export target, then click the "Start Export" button to export all pages IDs.\npageIdsExpInst2=Please note that the export procedure will take some time and the browser window must remain open until the export is completed.\nstartExp=Start Export\nrefreshDrawIndex=Refresh draw.io Diagrams Index\nreindexInst1=Click the "Start Indexing" button to refresh draw.io diagrams index.\nreindexInst2=Please note that the indexing procedure will take some time and the browser window must remain open until the indexing is completed.\nstartIndexing=Start Indexing\nconfAPageFoundFetch=Page "{1}" found. Fetching\nconfAAllDiagDone=All {1} diagrams processed. Process finished.\nconfAStartedProcessing=Started processing page "{1}"\nconfAAllDiagInPageDone=All {1} diagrams in page "{2}" processed successfully.\nconfAPartialDiagDone={1} out of {2} {3} diagrams in page "{4}" processed successfully.\nconfAUpdatePageFailed=Updating page "{1}" failed.\nconfANoDiagFoundInPage=No {1} diagrams found in page "{2}".\nconfAFetchPageFailed=Fetching the page failed.\nconfANoDiagFound=No {1} diagrams found. Process finished.\nconfASearchFailed=Searching for {1} diagrams failed. Please try again later.\nconfAGliffyDiagFound={2} diagram "{1}" found. Importing\nconfAGliffyDiagImported={2} diagram "{1}" imported successfully.\nconfASavingImpGliffyFailed=Saving imported {2} diagram "{1}" failed.\nconfAImportedFromByDraw=Imported from "{1}" by draw.io\nconfAImportGliffyFailed=Importing {2} diagram "{1}" failed.\nconfAFetchGliffyFailed=Fetching {2} diagram "{1}" failed.\nconfACheckBrokenDiagLnk=Checking for broken diagrams links.\nconfADelDiagLinkOf=Deleting diagram link of "{1}"\nconfADupLnk=(duplicate link)\nconfADelDiagLnkFailed=Deleting diagram link of "{1}" failed.\nconfAUnexpErrProcessPage=Unexpected error during processing the page with id: {1}\nconfADiagFoundIndex=Diagram "{1}" found. Indexing\nconfADiagIndexSucc=Diagram "{1}" indexed successfully.\nconfAIndexDiagFailed=Indexing diagram "{1}" failed.\nconfASkipDiagOtherPage=Skipped "{1}" as it belongs to another page!\nconfADiagUptoDate=Diagram "{1}" is up to date.\nconfACheckPagesWDraw=Checking pages having draw.io diagrams.\nconfAErrOccured=An error occurred!\nsavedSucc=Saved successfully\nconfASaveFailedErr=Saving Failed (Unexpected Error)\ncharacter=Character\nconfAConfPageDesc=This page contains draw.io configuration file (configuration.json) as attachment\nconfALibPageDesc=This page contains draw.io custom libraries as attachments\nconfATempPageDesc=This page contains draw.io custom templates as attachments\nworking=Working\nconfAConfSpaceDesc=This space is used to store draw.io configuration files and custom libraries/templates\nconfANoCustLib=No Custom Libraries\ndelFailed=Delete failed!\nshowID=Show ID\nconfAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.\nuploading=Uploading\nconfALibExist=This library already exists\nconfAUploadSucc=Uploaded successfully\nconfAUploadFailErr=Upload Failed (Unexpected Error)\nhiResPreview=High Res Preview\nofficeNotLoggedGD=You are not logged in to Google Drive. Please open draw.io task pane and login first.\nofficePopupInfo=Please complete the process in the pop-up window.\npickODFile=Pick OneDrive File\npickGDriveFile=Pick Google Drive File\npickDeviceFile=Pick Device File\nvsdNoConfig="vsdurl" is not configured\nruler=Ruler\nunits=Units\npoints=Points\ninches=Inches\nmillimeters=Millimeters\nconfEditDraftDelOrExt=This diagram is in a draft page, is deleted from the page, or is edited externally. It will be saved as a new attachment version and may not be reflected in the page.\nconfDiagEditedExt=Diagram is edited in another session. It will be saved as a new attachment version but the page will show other session\'s modifications.\nmacroNotFound=Macro Not Found\nconfAInvalidPageIdsFormat=Incorrect Page IDs file format\nconfACollectingCurPages=Collecting current pages\nconfABuildingPagesMap=Building pages mapping\nconfAProcessDrawDiag=Started processing imported draw.io diagrams\nconfAProcessDrawDiagDone=Finished processing imported draw.io diagrams\nconfAProcessImpPages=Started processing imported pages\nconfAErrPrcsDiagInPage=Error processing draw.io diagrams in page "{1}"\nconfAPrcsDiagInPage=Processing draw.io diagrams in page "{1}"\nconfAImpDiagram=Importing diagram "{1}"\nconfAImpDiagramFailed=Importing diagram "{1}" failed. Cannot find its new page ID. Maybe it points to a page that is not imported. \nconfAImpDiagramError=Error importing diagram "{1}". Cannot fetch or save the diagram. Cannot fix this diagram links.\nconfAUpdateDgrmCCFailed=Updating link to diagram "{1}" failed.\nconfImpDiagramSuccess=Updating diagram "{1}" done successfully.\nconfANoLnksInDrgm=No links to update in: {1}\nconfAUpdateLnkToPg=Updated link to page: "{1}" in diagram: "{2}"\nconfAUpdateLBLnkToPg=Updated lightbox link to page: "{1}" in diagram: "{2}"\nconfAUpdateLnkBase=Updated base URL from: "{1}" to: "{2}" in diagram: "{3}"\nconfAPageIdsImpDone=Page IDs Import finished.\nconfAPrcsMacrosInPage=Processing draw.io macros in page "{1}"\nconfAErrFetchPage=Error fetching page "{1}"\nconfAFixingMacro=Fixing macro of diagram "{1}"\nconfAErrReadingExpFile=Error reading export file\nconfAPrcsDiagInPageDone=Processing draw.io diagrams in page "{1}" finished\nconfAFixingMacroSkipped=Fixing macro of diagram "{1}" failed. Cannot find its new page ID. Maybe it points to a page that is not imported. \npageIdsExpTrg=Export target\nconfALucidDiagImgImported={2} diagram "{1}" image extracted successfully.\nconfASavingLucidDiagImgFailed=Extracting {2} diagram "{1}" image failed.\nconfGetInfoFailed=Fetching file info from {1} failed.\nconfCheckCacheFailed=Cannot get cached file info.\nconfReadFileErr=Cannot read "{1}" file from {2}.\nconfSaveCacheFailed=Unexpected error. Cannot save cached file\norgChartType=Org Chart Type\nlinear=Linear\nhanger2=Hanger 2\nhanger4=Hanger 4\nfishbone1=Fishbone 1\nfishbone2=Fishbone 2\n1ColumnLeft=Single Column Left\n1ColumnRight=Single Column Right\nsmart=Smart\nparentChildSpacing=Parent Child Spacing\nsiblingSpacing=Sibling Spacing\nconfNoPermErr=Sorry, you don\'t have enough permissions to view this embedded diagram from page {1}\ncopyAsImage=Copy as Image\nlucidImport=Lucidchart Import\nlucidImportInst1=Click the "Start Import" button to import all Lucidchart diagrams.\ninstallFirst=Please install {1} first.\ndrawioChromeExt=draw.io Chrome Extension\nloginFirstThen=Please login to {1} first, then {2}\nerrFetchDocList=Error: Couldn\'t fetch documents list.\nbuiltinPlugins=Built-in Plugins\nextPlugins=External Plugins\nbackupFound=Backup file found\nchromeOnly=This feature only works in Google Chrome\nmsgDeleted=This message has been deleted.\nconfAErrFetchDrawList=Error fetching diagrams list. Some diagrams are skipped.\nconfAErrCheckDrawDiag=Cannot check diagram {1}\nconfAErrFetchPageList=Error fetching pages list.\nconfADiagImportIncom={1} diagram "{2}" is imported partially and may have missing shapes.\ninvalidSel=Invalid selection\ndiagNameEmptyErr=Diagram name cannot be empty\nopenDiagram=Open Diagram\nnewDiagram=New diagram\neditable=Editable\nconfAReimportStarted=Re-import {1} diagrams started...\n');Graph.prototype.defaultThemes["default-style2"]=mxUtils.parseXml('').documentElement; Graph.prototype.defaultThemes.darkTheme=mxUtils.parseXml('').documentElement;GraphViewer=function(a,d,b){this.init(a,d,b)};mxUtils.extend(GraphViewer,mxEventSource);GraphViewer.prototype.editBlankUrl="https://app.diagrams.net/";GraphViewer.prototype.imageBaseUrl="https://app.diagrams.net/";GraphViewer.prototype.toolbarHeight="BackCompat"==document.compatMode?28:30;GraphViewer.prototype.lightboxChrome=!0;GraphViewer.prototype.lightboxZIndex=999;GraphViewer.prototype.toolbarZIndex=999;GraphViewer.prototype.autoFit=!1;GraphViewer.prototype.center=!1; GraphViewer.prototype.allowZoomIn=!1;GraphViewer.prototype.allowZoomOut=!0;GraphViewer.prototype.showTitleAsTooltip=!1;GraphViewer.prototype.checkVisibleState=!0;GraphViewer.prototype.minHeight=28;GraphViewer.prototype.minWidth=100;GraphViewer.prototype.responsive=!1; GraphViewer.prototype.init=function(a,d,b){this.graphConfig=null!=b?b:{};this.autoFit=null!=this.graphConfig["auto-fit"]?this.graphConfig["auto-fit"]:this.autoFit;this.allowZoomOut=null!=this.graphConfig["allow-zoom-out"]?this.graphConfig["allow-zoom-out"]:this.allowZoomOut;this.allowZoomIn=null!=this.graphConfig["allow-zoom-in"]?this.graphConfig["allow-zoom-in"]:this.allowZoomIn;this.center=null!=this.graphConfig.center?this.graphConfig.center:this.center;this.checkVisibleState=null!=this.graphConfig["check-visible-state"]? diff --git a/src/main/webapp/js/viewer.min.js b/src/main/webapp/js/viewer.min.js index a2f614cd..b899699c 100644 --- a/src/main/webapp/js/viewer.min.js +++ b/src/main/webapp/js/viewer.min.js @@ -200,7 +200,7 @@ window.uiTheme=window.uiTheme||function(){var a=urlParams.ui;if(null==a&&"undefi null!=a&&(DRAWIO_GITLAB_ID=a);window.DRAWIO_LOG_URL=window.DRAWIO_LOG_URL||"";a=window.location.host;if("test.draw.io"!=a){var c="diagrams.net",b=a.length-c.length,c=a.lastIndexOf(c,b);-1!==c&&c===b?window.DRAWIO_LOG_URL="https://log.diagrams.net":(c="draw.io",b=a.length-c.length,c=a.lastIndexOf(c,b),-1!==c&&c===b&&(window.DRAWIO_LOG_URL="https://log.draw.io"))}})(); if("1"==urlParams.offline||"1"==urlParams.demo||"1"==urlParams.stealth||"1"==urlParams.local)urlParams.picker="0",urlParams.gapi="0",urlParams.db="0",urlParams.od="0",urlParams.gh="0",urlParams.gl="0",urlParams.tr="0";if("1"==urlParams.offline||"1"==urlParams.local)urlParams.math="0";"embed.diagrams.net"==window.location.hostname&&(urlParams.embed="1");window.location.hostname==DRAWIO_LIGHTBOX_URL.substring(DRAWIO_LIGHTBOX_URL.indexOf("//")+2)&&(urlParams.lightbox="1"); "1"==urlParams.lightbox&&(urlParams.chrome="0");(null==window.location.hash||1>=window.location.hash.length)&&null!=urlParams.open&&(window.location.hash=urlParams.open);window.urlParams=window.urlParams||{};window.MAX_REQUEST_SIZE=window.MAX_REQUEST_SIZE||10485760;window.MAX_AREA=window.MAX_AREA||225E6;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","se"];var mxClient={VERSION:"4.2.1",IS_IE:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:null!=navigator.userAgent&&!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:null!=navigator.userAgent&&!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&& +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","se"];var mxClient={VERSION:"4.2.2",IS_IE:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:null!=navigator.userAgent&&!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:null!=navigator.userAgent&&!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:null!=navigator.userAgent&&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:null!=navigator.userAgent&&0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&&0>navigator.userAgent.indexOf("Edge/"),IS_OP:null!=navigator.userAgent&&(0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/")),IS_OT:null!=navigator.userAgent&&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:/Apple Computer, Inc/.test(navigator.vendor),IS_ANDROID:0<=navigator.appVersion.indexOf("Android"),IS_IOS:/iP(hone|od|ad)/.test(navigator.platform),IS_GC:/Google Inc/.test(navigator.vendor),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:"undefined"!==typeof InstallTrigger,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_VML:"MICROSOFT INTERNET EXPLORER"==navigator.appName.toUpperCase(),IS_SVG:"MICROSOFT INTERNET EXPLORER"!= @@ -536,8 +536,9 @@ m,n,p),null!=a&&(u.setAttribute("requiredFeatures","http://www.w3.org/TR/SVG11/f mxSvgCanvas2D.prototype.updateTextNodes=function(a,b,c,d,e,f,g,k,l,m,n){var p=this.state.scale;mxSvgCanvas2D.createCss(c+2,d,e,f,g,k,l,null!=this.state.fontBackgroundColor?this.state.fontBackgroundColor:null,null!=this.state.fontBorderColor?this.state.fontBorderColor:null,"display: flex; align-items: unsafe "+(f==mxConstants.ALIGN_TOP?"flex-start":f==mxConstants.ALIGN_BOTTOM?"flex-end":"center")+"; justify-content: unsafe "+(e==mxConstants.ALIGN_LEFT?"flex-start":e==mxConstants.ALIGN_RIGHT?"flex-end": "center")+"; ",this.getTextCss(),p,mxUtils.bind(this,function(c,d,e,f,g){a+=this.state.dx;b+=this.state.dy;var k=n.firstChild,l=k.firstChild,q=l.firstChild,r=(this.rotateHtml?this.state.rotation:0)+(null!=m?m:0),t=(0!=this.foOffset?"translate("+this.foOffset+" "+this.foOffset+")":"")+(1!=p?"scale("+p+")":"");q.firstChild.setAttribute("style",g);q.setAttribute("style",f);k.setAttribute("width",Math.ceil(1/Math.min(1,p)*100)+"%");k.setAttribute("height",Math.ceil(1/Math.min(1,p)*100)+"%");d=Math.round(b+ d);0>d?k.setAttribute("y",d):(k.removeAttribute("y"),e+="padding-top: "+d+"px; ");l.setAttribute("style",e+"margin-left: "+Math.round(a+c)+"px;");t+=0!=r?"rotate("+r+" "+a+" "+b+")":"";""!=t?n.setAttribute("transform",t):n.removeAttribute("transform");1!=this.state.alpha?n.setAttribute("opacity",this.state.alpha):n.removeAttribute("opacity")}))}; -mxSvgCanvas2D.createCss=function(a,b,c,d,e,f,g,k,l,m,n,p,q){p="box-sizing: border-box; font-size: 0; text-align: "+(c==mxConstants.ALIGN_LEFT?"left":c==mxConstants.ALIGN_RIGHT?"right":"center")+"; ";var r=mxUtils.getAlignmentAsPoint(c,d);c="overflow: hidden; ";d="width: 1px; ";var t="height: 1px; ",u=r.x*a,r=r.y*b;g?(d="width: "+Math.round(a)+"px; ",p+="max-height: "+Math.round(b)+"px; ",r=0):"fill"==f?(d="width: "+Math.round(a)+"px; ",t="height: "+Math.round(b)+"px; ",n+="width: 100%; height: 100%; ", -p+=d+t):"width"==f?(d="width: "+Math.round(a)+"px; ",n+="width: 100%; ",p+=d,r=0,0=document.documentMode)?this.updateHtmlFilter():this.updateHtmlTransform()}}; mxText.prototype.redrawHtmlShapeWithCss3=function(){var a=Math.max(0,Math.round(this.bounds.width/this.scale)),b=Math.max(0,Math.round(this.bounds.height/this.scale)),c="position: absolute; left: "+Math.round(this.bounds.x)+"px; top: "+Math.round(this.bounds.y)+"px; pointer-events: none; ",d=this.getTextCss();mxSvgCanvas2D.createCss(a+2,b,this.align,this.valign,this.wrap,this.overflow,this.clipped,null!=this.background?mxUtils.htmlEntities(this.background):null,null!=this.border?mxUtils.htmlEntities(this.border): -null,c,d,this.scale,mxUtils.bind(this,function(a,b,c,d,l,m){a=this.getTextRotation();a=(1!=this.scale?"scale("+this.scale+") ":"")+(0!=a?"rotate("+a+"deg) ":"")+(0!=this.margin.x||0!=this.margin.y?"translate("+100*this.margin.x+"%,"+100*this.margin.y+"%)":"");""!=a&&(a="transform-origin: 0 0; transform: "+a+"; ");""==m?(c+=d,d="display:inline-block; min-width: 100%; "+a):(d+=a,mxClient.IS_SF&&(d+="-webkit-clip-path: content-box;"));100>this.opacity&&(l+="opacity: "+this.opacity/100+"; ");this.node.setAttribute("style", -c);c=mxUtils.isNode(this.value)?this.value.outerHTML:this.getHtmlValue();null==this.node.firstChild&&(this.node.innerHTML="
"+c+"
");this.node.firstChild.firstChild.setAttribute("style",l);this.node.firstChild.setAttribute("style",d)}))}; +null,c,d,this.scale,mxUtils.bind(this,function(a,c,d,k,l,m){a=this.getTextRotation();a=(1!=this.scale?"scale("+this.scale+") ":"")+(0!=a?"rotate("+a+"deg) ":"")+(0!=this.margin.x||0!=this.margin.y?"translate("+100*this.margin.x+"%,"+100*this.margin.y+"%)":"");""!=a&&(a="transform-origin: 0 0; transform: "+a+"; ");"block"==this.overflow&&this.valign==mxConstants.ALIGN_MIDDLE&&(a+="max-height: "+(b+1)+"px;");""==m?(d+=k,k="display:inline-block; min-width: 100%; "+a):(k+=a,mxClient.IS_SF&&(k+="-webkit-clip-path: content-box;")); +"block"==this.overflow&&(k+="width: 100%; ");100>this.opacity&&(l+="opacity: "+this.opacity/100+"; ");this.node.setAttribute("style",d);d=mxUtils.isNode(this.value)?this.value.outerHTML:this.getHtmlValue();null==this.node.firstChild&&(this.node.innerHTML="
"+d+"
");this.node.firstChild.firstChild.setAttribute("style",l);this.node.firstChild.setAttribute("style",k)}))}; mxText.prototype.updateHtmlTransform=function(){var a=this.getTextRotation(),b=this.node.style,c=this.margin.x,d=this.margin.y;0!=a?(mxUtils.setPrefixedStyle(b,"transformOrigin",100*-c+"% "+100*-d+"%"),mxUtils.setPrefixedStyle(b,"transform","translate("+100*c+"%,"+100*d+"%) scale("+this.scale+") rotate("+a+"deg)")):(mxUtils.setPrefixedStyle(b,"transformOrigin","0% 0%"),mxUtils.setPrefixedStyle(b,"transform","scale("+this.scale+") translate("+100*c+"%,"+100*d+"%)"));b.left=Math.round(this.bounds.x- Math.ceil(c*("fill"!=this.overflow&&"width"!=this.overflow?3:1)))+"px";b.top=Math.round(this.bounds.y-d*("fill"!=this.overflow?3:1))+"px";b.opacity=100>this.opacity?this.opacity/100:""}; mxText.prototype.updateInnerHtml=function(a){if(mxUtils.isNode(this.value))a.innerHTML=this.value.outerHTML;else{var b=this.value;this.dialect!=mxConstants.DIALECT_STRICTHTML&&(b=mxUtils.htmlEntities(b,!1));b=mxUtils.replaceTrailingNewlines(b,"
 
");b=this.replaceLinefeeds?b.replace(/\n/g,"
"):b;a.innerHTML='
'+b+"
"}}; @@ -721,8 +722,8 @@ mxText.prototype.updateValue=function(){if(mxUtils.isNode(this.value))this.node. a;a=this.node.getElementsByTagName("div");0e&&(this.textarea.style.width=this.textarea.scrollWidth+"px")):this.textarea.style.maxWidth= -e+"px"):(this.textarea.style.whiteSpace="nowrap",this.textarea.style.width="");8==document.documentMode&&(this.textarea.style.zoom="1",this.textarea.style.height="auto");a=this.textarea.scrollWidth;e=this.textarea.scrollHeight;8==document.documentMode?(this.textarea.style.left=Math.max(0,Math.ceil((this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5))/c))+"px",this.textarea.style.top=Math.max(0,Math.ceil((this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5))/ -c))+"px",this.textarea.style.width=Math.round(a*c)+"px",this.textarea.style.height=Math.round(e*c)+"px"):mxClient.IS_QUIRKS?(this.textarea.style.left=Math.max(0,Math.ceil(this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5)))+"px",this.textarea.style.top=Math.max(0,Math.ceil(this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5)))+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-d.x*(this.bounds.width-2))+1)+"px",this.textarea.style.top=Math.max(0, -Math.round(this.bounds.y-d.y*(this.bounds.height-4)+(-1==d.y?3:0))+1)+"px")}else 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.width/c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width="")); -mxClient.IS_VML?this.textarea.style.zoom=c:(mxUtils.setPrefixedStyle(this.textarea.style,"transformOrigin","0px 0px"),mxUtils.setPrefixedStyle(this.textarea.style,"transform","scale("+c+","+c+")"+(null==d?"":" translate("+100*d.x+"%,"+100*d.y+"%)")))}};mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())};mxCellEditor.prototype.getBackgroundColor=function(a){return null}; -mxCellEditor.prototype.isLegacyEditor=function(){if(mxClient.IS_VML)return!0;var a=!1;if(mxClient.IS_SVG){var b=this.graph.view.getDrawPane().ownerSVGElement;null!=b&&(b=mxUtils.getCurrentStyle(b),null!=b&&(a="absolute"==b.position))}return!a}; +a.absoluteOffset.y,b.width,b.height)}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",e=Math.round(this.bounds.width/c)+this.wordWrapPadding,"relative"!=this.textarea.style.position?(this.textarea.style.width=e+"px",this.textarea.scrollWidth>e&&(this.textarea.style.width=this.textarea.scrollWidth+"px")):"block"==a.style[mxConstants.STYLE_OVERFLOW]? +(-.5==d.y&&(this.textarea.style.maxHeight=this.bounds.height+"px"),this.textarea.style.width=e+"px"):this.textarea.style.maxWidth=e+"px"):(this.textarea.style.whiteSpace="nowrap",this.textarea.style.width="");8==document.documentMode&&(this.textarea.style.zoom="1",this.textarea.style.height="auto");8==document.documentMode?(a=this.textarea.scrollWidth,e=this.textarea.scrollHeight,this.textarea.style.left=Math.max(0,Math.ceil((this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5))/c))+ +"px",this.textarea.style.top=Math.max(0,Math.ceil((this.bounds.y-d.y*(this.bounds.height-(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5))/c))+"px",this.textarea.style.width=Math.round(a*c)+"px",this.textarea.style.height=Math.round(e*c)+"px"):mxClient.IS_QUIRKS?(a=this.textarea.scrollWidth,e=this.textarea.scrollHeight,this.textarea.style.left=Math.max(0,Math.ceil(this.bounds.x-d.x*(this.bounds.width-(a+1)*c)+a*(c-1)*0+2*(d.x+.5)))+"px",this.textarea.style.top=Math.max(0,Math.ceil(this.bounds.y-d.y*(this.bounds.height- +(e+.5)*c)+e*(c-1)*0+1*Math.abs(d.y+.5)))+"px"):(this.textarea.style.left=Math.max(0,Math.round(this.bounds.x-d.x*(this.bounds.width-2))+1)+"px",this.textarea.style.top=Math.max(0,Math.round(this.bounds.y-d.y*(this.bounds.height-4)+(-1==d.y?3:0))+1)+"px")}else 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.width/ +c)+this.wordWrapPadding+"px")):(this.textarea.style.whiteSpace="nowrap","fill"!=a.style[mxConstants.STYLE_OVERFLOW]&&(this.textarea.style.width=""));mxClient.IS_VML?this.textarea.style.zoom=c:(mxUtils.setPrefixedStyle(this.textarea.style,"transformOrigin","0px 0px"),mxUtils.setPrefixedStyle(this.textarea.style,"transform","scale("+c+","+c+")"+(null==d?"":" translate("+100*d.x+"%,"+100*d.y+"%)")))}};mxCellEditor.prototype.focusLost=function(){this.stopEditing(!this.graph.isInvokesStopCellEditing())}; +mxCellEditor.prototype.getBackgroundColor=function(a){return null};mxCellEditor.prototype.isLegacyEditor=function(){if(mxClient.IS_VML)return!0;var a=!1;if(mxClient.IS_SVG){var b=this.graph.view.getDrawPane().ownerSVGElement;null!=b&&(b=mxUtils.getCurrentStyle(b),null!=b&&(a="absolute"==b.position))}return!a}; mxCellEditor.prototype.startEditing=function(a,b){this.stopEditing(!0);this.align=null;null==this.textarea&&this.init();null!=this.graph.tooltipHandler&&this.graph.tooltipHandler.hideTooltip();var c=this.graph.getView().getState(a);if(null!=c){this.graph.getView();var d=mxUtils.getValue(c.style,mxConstants.STYLE_FONTSIZE,mxConstants.DEFAULT_FONTSIZE),e=mxUtils.getValue(c.style,mxConstants.STYLE_FONTFAMILY,mxConstants.DEFAULT_FONTFAMILY),f=mxUtils.getValue(c.style,mxConstants.STYLE_FONTCOLOR,"black"), g=mxUtils.getValue(c.style,mxConstants.STYLE_ALIGN,mxConstants.ALIGN_LEFT),k=(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_BOLD)==mxConstants.FONT_BOLD,l=(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_ITALIC)==mxConstants.FONT_ITALIC,m=[];(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_UNDERLINE)==mxConstants.FONT_UNDERLINE&&m.push("underline");(mxUtils.getValue(c.style,mxConstants.STYLE_FONTSTYLE,0)&mxConstants.FONT_STRIKETHROUGH)== mxConstants.FONT_STRIKETHROUGH&&m.push("line-through");this.textarea.style.lineHeight=mxConstants.ABSOLUTE_LINE_HEIGHT?Math.round(d*mxConstants.LINE_HEIGHT)+"px":mxConstants.LINE_HEIGHT;this.textarea.style.backgroundColor=this.getBackgroundColor(c);this.textarea.style.textDecoration=m.join(" ");this.textarea.style.fontWeight=k?"bold":"normal";this.textarea.style.fontStyle=l?"italic":"";this.textarea.style.fontSize=Math.round(d)+"px";this.textarea.style.zIndex=this.zIndex;this.textarea.style.fontFamily= @@ -3099,16 +3100,16 @@ type:"int",min:0,max:100,defVal:100},{name:"startFill",dispName:"Start Fill",typ {name:"metaEdit",dispName:"Edit Dialog",type:"bool",defVal:!1},{name:"backgroundOutline",dispName:"Background Outline",type:"bool",defVal:!1},{name:"bendable",dispName:"Bendable",type:"bool",defVal:!0},{name:"movable",dispName:"Movable",type:"bool",defVal:!0},{name:"cloneable",dispName:"Cloneable",type:"bool",defVal:!0},{name:"deletable",dispName:"Deletable",type:"bool",defVal:!0},{name:"orthogonalLoop",dispName:"Loop Routing",type:"bool",defVal:!1},{name:"noJump",dispName:"No Jumps",type:"bool", defVal:!1}].concat(Editor.commonProperties);Editor.commonVertexProperties=[{type:"separator"},{name:"resizeLastRow",dispName:"Resize Last Row",type:"bool",getDefaultValue:function(a,c){var b=c.editorUi.editor.graph.getCellStyle(1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null);return"1"==mxUtils.getValue(b,"resizeLastRow","0")},isVisible:function(a,c){var b=c.editorUi.editor.graph;return 1==a.vertices.length&&0==a.edges.length&&b.isTable(a.vertices[0])}},{name:"resizeLast",dispName:"Resize Last Column", type:"bool",getDefaultValue:function(a,c){var b=c.editorUi.editor.graph.getCellStyle(1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null);return"1"==mxUtils.getValue(b,"resizeLast","0")},isVisible:function(a,c){var b=c.editorUi.editor.graph;return 1==a.vertices.length&&0==a.edges.length&&b.isTable(a.vertices[0])}},{name:"fillOpacity",dispName:"Fill Opacity",type:"int",min:0,max:100,defVal:100},{name:"strokeOpacity",dispName:"Stroke Opacity",type:"int",min:0,max:100,defVal:100},{name:"overflow", -dispName:"Text Overflow",defVal:"visible",type:"enum",enumList:[{val:"visible",dispName:"Visible"},{val:"hidden",dispName:"Hidden"},{val:"fill",dispName:"Fill"},{val:"width",dispName:"Width"}]},{name:"noLabel",dispName:"Hide Label",type:"bool",defVal:!1},{name:"labelPadding",dispName:"Label Padding",type:"float",defVal:0},{name:"direction",dispName:"Direction",type:"enum",defVal:"east",enumList:[{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south",dispName:"South"},{val:"west", -dispName:"West"}]},{name:"portConstraint",dispName:"Constraint",type:"enum",defVal:"none",enumList:[{val:"none",dispName:"None"},{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south",dispName:"South"},{val:"west",dispName:"West"}]},{name:"portConstraintRotation",dispName:"Rotate Constraint",type:"bool",defVal:!1},{name:"connectable",dispName:"Connectable",type:"bool",getDefaultValue:function(a,c){return c.editorUi.editor.graph.isCellConnectable(1==a.vertices.length&&0==a.edges.length? -a.vertices[0]:null)},isVisible:function(a,c){return 1==a.vertices.length&&0==a.edges.length}},{name:"allowArrows",dispName:"Allow Arrows",type:"bool",defVal:!0},{name:"snapToPoint",dispName:"Snap to Point",type:"bool",defVal:!1},{name:"perimeter",dispName:"Perimeter",defVal:"none",type:"enum",enumList:[{val:"none",dispName:"None"},{val:"rectanglePerimeter",dispName:"Rectangle"},{val:"ellipsePerimeter",dispName:"Ellipse"},{val:"rhombusPerimeter",dispName:"Rhombus"},{val:"trianglePerimeter",dispName:"Triangle"}, -{val:"hexagonPerimeter2",dispName:"Hexagon"},{val:"lifelinePerimeter",dispName:"Lifeline"},{val:"orthogonalPerimeter",dispName:"Orthogonal"},{val:"backbonePerimeter",dispName:"Backbone"},{val:"calloutPerimeter",dispName:"Callout"},{val:"parallelogramPerimeter",dispName:"Parallelogram"},{val:"trapezoidPerimeter",dispName:"Trapezoid"},{val:"stepPerimeter",dispName:"Step"}]},{name:"fixDash",dispName:"Fixed Dash",type:"bool",defVal:!1},{name:"autosize",dispName:"Autosize",type:"bool",defVal:!1},{name:"container", -dispName:"Container",type:"bool",defVal:!1,isVisible:function(a,c){return 1==a.vertices.length&&0==a.edges.length}},{name:"dropTarget",dispName:"Drop Target",type:"bool",getDefaultValue:function(a,c){var b=1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null,d=c.editorUi.editor.graph;return null!=b&&(d.isSwimlane(b)||0%position%
Email\n#\n## Node style (placeholders are replaced once).\n## Default is the current style for nodes.\n#\n# style: label;image=%image%;whiteSpace=wrap;html=1;rounded=1;fillColor=%fill%;strokeColor=%stroke%;\n#\n## Parent style for nodes with child nodes (placeholders are replaced once).\n#\n# parentstyle: swimlane;whiteSpace=wrap;html=1;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;\n#\n## Optional column name that contains a reference to a named style in styles.\n## Default is the current style for nodes.\n#\n# stylename: -\n#\n## JSON for named styles of the form {"name": "style", "name": "style"} where style is a cell style with\n## placeholders that are replaced once.\n#\n# styles: -\n#\n## JSON for variables in styles of the form {"name": "value", "name": "value"} where name is a string\n## that will replace a placeholder in a style.\n#\n# vars: -\n#\n## Optional column name that contains a reference to a named label in labels.\n## Default is the current label.\n#\n# labelname: -\n#\n## JSON for named labels of the form {"name": "label", "name": "label"} where label is a cell label with\n## placeholders.\n#\n# labels: -\n#\n## Uses the given column name as the identity for cells (updates existing cells).\n## Default is no identity (empty value or -).\n#\n# identity: -\n#\n## Uses the given column name as the parent reference for cells. Default is no parent (empty or -).\n## The identity above is used for resolving the reference so it must be specified.\n#\n# parent: -\n#\n## Adds a prefix to the identity of cells to make sure they do not collide with existing cells (whose\n## IDs are numbers from 0..n, sometimes with a GUID prefix in the context of realtime collaboration).\n## Default is csvimport-.\n#\n# namespace: csvimport-\n#\n## Connections between rows ("from": source colum, "to": target column).\n## Label, style and invert are optional. Defaults are \'\', current style and false.\n## If placeholders are used in the style, they are replaced with data from the source.\n## An optional placeholders can be set to target to use data from the target instead.\n## In addition to label, an optional fromlabel and tolabel can be used to name the column\n## that contains the text for the label in the edges source or target (invert ignored).\n## The label is concatenated in the form fromlabel + label + tolabel if all are defined.\n## Additional labels can be added by using an optional labels array with entries of the\n## form {"label": string, "x": number, "y": number, "dx": number, "dy": number} where\n## x is from -1 to 1 along the edge, y is orthogonal, and dx/dy are offsets in pixels.\n## The target column may contain a comma-separated list of values.\n## Multiple connect entries are allowed.\n#\n# connect: {"from": "manager", "to": "name", "invert": true, "label": "manages", \\\n# "style": "curved=1;endArrow=blockThin;endFill=1;fontSize=11;"}\n# connect: {"from": "refs", "to": "id", "style": "curved=1;fontSize=11;"}\n#\n## Node x-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# left: \n#\n## Node y-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# top: \n#\n## Node width. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the width. Default is auto.\n#\n# width: auto\n#\n## Node height. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the height. Default is auto.\n#\n# height: auto\n#\n## Padding for autosize. Default is 0.\n#\n# padding: -12\n#\n## Comma-separated list of ignored columns for metadata. (These can be\n## used for connections and styles but will not be added as metadata.)\n#\n# ignore: id,image,fill,stroke,refs,manager\n#\n## Column to be renamed to link attribute (used as link).\n#\n# link: url\n#\n## Spacing between nodes. Default is 40.\n#\n# nodespacing: 40\n#\n## Spacing between levels of hierarchical layouts. Default is 100.\n#\n# levelspacing: 100\n#\n## Spacing between parallel edges. Default is 40. Use 0 to disable.\n#\n# edgespacing: 40\n#\n## Name or JSON of layout. Possible values are auto, none, verticaltree, horizontaltree,\n## verticalflow, horizontalflow, organic, circle or a JSON string as used in Layout, Apply.\n## Default is auto.\n#\n# layout: auto\n#\n## ---- CSV below this line. First line are column names. ----\nname,position,id,location,manager,email,fill,stroke,refs,url,image\nTessa Miller,CFO,emi,Office 1,,me@example.com,#dae8fc,#6c8ebf,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-3-128.png\nEdward Morrison,Brand Manager,emo,Office 2,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-10-3-128.png\nAlison Donovan,System Admin,rdo,Office 3,Tessa Miller,me@example.com,#d5e8d4,#82b366,"emo,tva",https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-2-128.png\nEvan Valet,HR Director,tva,Office 4,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-9-2-128.png\n'; +dispName:"Text Overflow",defVal:"visible",type:"enum",enumList:[{val:"visible",dispName:"Visible"},{val:"hidden",dispName:"Hidden"},{val:"block",dispName:"Block"},{val:"fill",dispName:"Fill"},{val:"width",dispName:"Width"}]},{name:"noLabel",dispName:"Hide Label",type:"bool",defVal:!1},{name:"labelPadding",dispName:"Label Padding",type:"float",defVal:0},{name:"direction",dispName:"Direction",type:"enum",defVal:"east",enumList:[{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south", +dispName:"South"},{val:"west",dispName:"West"}]},{name:"portConstraint",dispName:"Constraint",type:"enum",defVal:"none",enumList:[{val:"none",dispName:"None"},{val:"north",dispName:"North"},{val:"east",dispName:"East"},{val:"south",dispName:"South"},{val:"west",dispName:"West"}]},{name:"portConstraintRotation",dispName:"Rotate Constraint",type:"bool",defVal:!1},{name:"connectable",dispName:"Connectable",type:"bool",getDefaultValue:function(a,c){return c.editorUi.editor.graph.isCellConnectable(1== +a.vertices.length&&0==a.edges.length?a.vertices[0]:null)},isVisible:function(a,c){return 1==a.vertices.length&&0==a.edges.length}},{name:"allowArrows",dispName:"Allow Arrows",type:"bool",defVal:!0},{name:"snapToPoint",dispName:"Snap to Point",type:"bool",defVal:!1},{name:"perimeter",dispName:"Perimeter",defVal:"none",type:"enum",enumList:[{val:"none",dispName:"None"},{val:"rectanglePerimeter",dispName:"Rectangle"},{val:"ellipsePerimeter",dispName:"Ellipse"},{val:"rhombusPerimeter",dispName:"Rhombus"}, +{val:"trianglePerimeter",dispName:"Triangle"},{val:"hexagonPerimeter2",dispName:"Hexagon"},{val:"lifelinePerimeter",dispName:"Lifeline"},{val:"orthogonalPerimeter",dispName:"Orthogonal"},{val:"backbonePerimeter",dispName:"Backbone"},{val:"calloutPerimeter",dispName:"Callout"},{val:"parallelogramPerimeter",dispName:"Parallelogram"},{val:"trapezoidPerimeter",dispName:"Trapezoid"},{val:"stepPerimeter",dispName:"Step"}]},{name:"fixDash",dispName:"Fixed Dash",type:"bool",defVal:!1},{name:"autosize",dispName:"Autosize", +type:"bool",defVal:!1},{name:"container",dispName:"Container",type:"bool",defVal:!1,isVisible:function(a,c){return 1==a.vertices.length&&0==a.edges.length}},{name:"dropTarget",dispName:"Drop Target",type:"bool",getDefaultValue:function(a,c){var b=1==a.vertices.length&&0==a.edges.length?a.vertices[0]:null,d=c.editorUi.editor.graph;return null!=b&&(d.isSwimlane(b)||0%position%
Email\n#\n## Node style (placeholders are replaced once).\n## Default is the current style for nodes.\n#\n# style: label;image=%image%;whiteSpace=wrap;html=1;rounded=1;fillColor=%fill%;strokeColor=%stroke%;\n#\n## Parent style for nodes with child nodes (placeholders are replaced once).\n#\n# parentstyle: swimlane;whiteSpace=wrap;html=1;childLayout=stackLayout;horizontal=1;horizontalStack=0;resizeParent=1;resizeLast=0;collapsible=1;\n#\n## Optional column name that contains a reference to a named style in styles.\n## Default is the current style for nodes.\n#\n# stylename: -\n#\n## JSON for named styles of the form {"name": "style", "name": "style"} where style is a cell style with\n## placeholders that are replaced once.\n#\n# styles: -\n#\n## JSON for variables in styles of the form {"name": "value", "name": "value"} where name is a string\n## that will replace a placeholder in a style.\n#\n# vars: -\n#\n## Optional column name that contains a reference to a named label in labels.\n## Default is the current label.\n#\n# labelname: -\n#\n## JSON for named labels of the form {"name": "label", "name": "label"} where label is a cell label with\n## placeholders.\n#\n# labels: -\n#\n## Uses the given column name as the identity for cells (updates existing cells).\n## Default is no identity (empty value or -).\n#\n# identity: -\n#\n## Uses the given column name as the parent reference for cells. Default is no parent (empty or -).\n## The identity above is used for resolving the reference so it must be specified.\n#\n# parent: -\n#\n## Adds a prefix to the identity of cells to make sure they do not collide with existing cells (whose\n## IDs are numbers from 0..n, sometimes with a GUID prefix in the context of realtime collaboration).\n## Default is csvimport-.\n#\n# namespace: csvimport-\n#\n## Connections between rows ("from": source colum, "to": target column).\n## Label, style and invert are optional. Defaults are \'\', current style and false.\n## If placeholders are used in the style, they are replaced with data from the source.\n## An optional placeholders can be set to target to use data from the target instead.\n## In addition to label, an optional fromlabel and tolabel can be used to name the column\n## that contains the text for the label in the edges source or target (invert ignored).\n## The label is concatenated in the form fromlabel + label + tolabel if all are defined.\n## Additional labels can be added by using an optional labels array with entries of the\n## form {"label": string, "x": number, "y": number, "dx": number, "dy": number} where\n## x is from -1 to 1 along the edge, y is orthogonal, and dx/dy are offsets in pixels.\n## The target column may contain a comma-separated list of values.\n## Multiple connect entries are allowed.\n#\n# connect: {"from": "manager", "to": "name", "invert": true, "label": "manages", \\\n# "style": "curved=1;endArrow=blockThin;endFill=1;fontSize=11;"}\n# connect: {"from": "refs", "to": "id", "style": "curved=1;fontSize=11;"}\n#\n## Node x-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# left: \n#\n## Node y-coordinate. Possible value is a column name. Default is empty. Layouts will\n## override this value.\n#\n# top: \n#\n## Node width. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the width. Default is auto.\n#\n# width: auto\n#\n## Node height. Possible value is a number (in px), auto or an @ sign followed by a column\n## name that contains the value for the height. Default is auto.\n#\n# height: auto\n#\n## Padding for autosize. Default is 0.\n#\n# padding: -12\n#\n## Comma-separated list of ignored columns for metadata. (These can be\n## used for connections and styles but will not be added as metadata.)\n#\n# ignore: id,image,fill,stroke,refs,manager\n#\n## Column to be renamed to link attribute (used as link).\n#\n# link: url\n#\n## Spacing between nodes. Default is 40.\n#\n# nodespacing: 40\n#\n## Spacing between levels of hierarchical layouts. Default is 100.\n#\n# levelspacing: 100\n#\n## Spacing between parallel edges. Default is 40. Use 0 to disable.\n#\n# edgespacing: 40\n#\n## Name or JSON of layout. Possible values are auto, none, verticaltree, horizontaltree,\n## verticalflow, horizontalflow, organic, circle or a JSON string as used in Layout, Apply.\n## Default is auto.\n#\n# layout: auto\n#\n## ---- CSV below this line. First line are column names. ----\nname,position,id,location,manager,email,fill,stroke,refs,url,image\nTessa Miller,CFO,emi,Office 1,,me@example.com,#dae8fc,#6c8ebf,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-3-128.png\nEdward Morrison,Brand Manager,emo,Office 2,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-10-3-128.png\nAlison Donovan,System Admin,rdo,Office 3,Tessa Miller,me@example.com,#d5e8d4,#82b366,"emo,tva",https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-2-128.png\nEvan Valet,HR Director,tva,Office 4,Tessa Miller,me@example.com,#d5e8d4,#82b366,,https://www.draw.io,https://cdn3.iconfinder.com/data/icons/user-avatars-1/512/users-9-2-128.png\n'; Editor.createRoughCanvas=function(a){var c=rough.canvas({getContext:function(){return a}});c.draw=function(c){var b=c.sets||[];c=c.options||this.getDefaultOptions();for(var d=0;dn&&(n=d.strokeWidth/2);a.setStrokeAlpha(a.state.fillAlpha);a.setStrokeColor(d.fill||"");a.setStrokeWidth(n);a.setDashed(!1);this._drawToContext(c,b,d);a.setDashed(l);a.setStrokeWidth(g);a.setStrokeColor(f);a.setStrokeAlpha(e)};c._drawToContext=function(a,c,b){a.begin();for(var d=0;d{2} and return to this tab to try to save again.\nerrorSendingFeedback=Error sending feedback.\nerrorUpdatingPreview=Error updating preview.\nexit=Exit\nexitGroup=Exit Group\nexpand=Expand\nexport=Export\nexporting=Exporting\nexportAs=Export as\nexportOptionsDisabled=Export options disabled\nexportOptionsDisabledDetails=The owner has disabled options to download, print or copy for commenters and viewers on this file.\nexternalChanges=External Changes\nextras=Extras\nfacebook=Facebook\nfailedToSaveTryReconnect=Failed to save, trying to reconnect\nfeatureRequest=Feature Request\nfeedback=Feedback\nfeedbackSent=Feedback successfully sent.\nfloorplans=Floorplans\nfile=File\nfileChangedOverwriteDialog=The file has been modified. Do you want to save the file and overwrite those changes?\nfileChangedSyncDialog=The file has been modified. Do you want to synchronize those changes?\nfileChangedSync=The file has been modified. Click here to synchronize.\noverwrite=Overwrite\nsynchronize=Synchronize\nfilename=Filename\nfileExists=File already exists\nfileMovedToTrash=File was moved to trash\nfileNearlyFullSeeFaq=File nearly full, please see FAQ\nfileNotFound=File not found\nrepositoryNotFound=Repository not found\nfileNotFoundOrDenied=The file was not found. It does not exist or you do not have access.\nfileNotLoaded=File not loaded\nfileNotSaved=File not saved\nfileOpenLocation=How would you like to open these file(s)?\nfiletypeHtml=.html causes file to save as HTML with redirect to cloud URL\nfiletypePng=.png causes file to save as PNG with embedded data\nfiletypeSvg=.svg causes file to save as SVG with embedded data\nfileWillBeSavedInAppFolder={1} will be saved in the app folder.\nfill=Fill\nfillColor=Fill Color\nfilterCards=Filter Cards\nfind=Find\nfit=Fit\nfitContainer=Resize Container\nfitIntoContainer=Fit into Container\nfitPage=Fit Page\nfitPageWidth=Fit Page Width\nfitTo=Fit to\nfitToSheetsAcross=sheet(s) across\nfitToBy=by\nfitToSheetsDown=sheet(s) down\nfitTwoPages=Two Pages\nfitWindow=Fit Window\nflip=Flip\nflipH=Flip Horizontal\nflipV=Flip Vertical\nflowchart=Flowchart\nfolder=Folder\nfont=Font\nfontColor=Font Color\nfontFamily=Font Family\nfontSize=Font Size\nforbidden=You are not authorized to access this file\nformat=Format\nformatPanel=Format Panel\nformatted=Formatted\nformattedText=Formatted Text\nformatPng=PNG\nformatGif=GIF\nformatJpg=JPEG\nformatPdf=PDF\nformatSql=SQL\nformatSvg=SVG\nformatHtmlEmbedded=HTML\nformatSvgEmbedded=SVG (with XML)\nformatVsdx=VSDX\nformatVssx=VSSX\nformatXmlPlain=XML (Plain)\nformatXml=XML\nforum=Discussion/Help Forums\nfreehand=Freehand\nfromTemplate=From Template\nfromTemplateUrl=From Template URL\nfromText=From Text\nfromUrl=From URL\nfromThisPage=From this page\nfullscreen=Fullscreen\ngap=Gap\ngcp=GCP\ngeneral=General\ngithub=GitHub\ngitlab=GitLab\ngliffy=Gliffy\nglobal=Global\ngoogleDocs=Google Docs\ngoogleDrive=Google Drive\ngoogleGadget=Google Gadget\ngooglePlus=Google+\ngoogleSharingNotAvailable=Sharing is only available via Google Drive. Please click Open below and share from the more actions menu:\ngoogleSlides=Google Slides\ngoogleSites=Google Sites\ngoogleSheets=Google Sheets\ngradient=Gradient\ngradientColor=Color\ngrid=Grid\ngridColor=Grid Color\ngridSize=Grid Size\ngroup=Group\nguides=Guides\nhateApp=I hate draw.io\nheading=Heading\nheight=Height\nhelp=Help\nhelpTranslate=Help us translate this application\nhide=Hide\nhideIt=Hide {1}\nhidden=Hidden\nhome=Home\nhorizontal=Horizontal\nhorizontalFlow=Horizontal Flow\nhorizontalTree=Horizontal Tree\nhowTranslate=How good is the translation in your language?\nhtml=HTML\nhtmlText=HTML Text\nid=ID\niframe=IFrame\nignore=Ignore\nimage=Image\nimageUrl=Image URL\nimages=Images\nimagePreviewError=This image couldn\'t be loaded for preview. Please check the URL.\nimageTooBig=Image too big\nimgur=Imgur\nimport=Import\nimportFrom=Import from\nincludeCopyOfMyDiagram=Include a copy of my diagram\nincreaseIndent=Increase Indent\ndecreaseIndent=Decrease Indent\ninsert=Insert\ninsertColumnBefore=Insert Column Left\ninsertColumnAfter=Insert Column Right\ninsertEllipse=Insert Ellipse\ninsertImage=Insert Image\ninsertHorizontalRule=Insert Horizontal Rule\ninsertLink=Insert Link\ninsertPage=Insert Page\ninsertRectangle=Insert Rectangle\ninsertRhombus=Insert Rhombus\ninsertRowBefore=Insert Row Above\ninsertRowAfter=Insert Row After\ninsertText=Insert Text\ninserting=Inserting\ninstallApp=Install App\ninvalidFilename=Diagram names must not contain the following characters: / | : ; { } < > & + ? = "\ninvalidLicenseSeeThisPage=Your license is invalid, please see this page.\ninvalidInput=Invalid input\ninvalidName=Invalid name\ninvalidOrMissingFile=Invalid or missing file\ninvalidPublicUrl=Invalid public URL\nisometric=Isometric\nios=iOS\nitalic=Italic\nkennedy=Kennedy\nkeyboardShortcuts=Keyboard Shortcuts\nlayers=Layers\nlandscape=Landscape\nlanguage=Language\nleanMapping=Lean Mapping\nlastChange=Last change {1} ago\nlessThanAMinute=less than a minute\nlicensingError=Licensing Error\nlicenseHasExpired=The license for {1} has expired on {2}. Click here.\nlicenseWillExpire=The license for {1} will expire on {2}. Click here.\nlineJumps=Line jumps\nlinkAccountRequired=If the diagram is not public a Google account is required to view the link.\nlinkText=Link Text\nlist=List\nminute=minute\nminutes=minutes\nhours=hours\ndays=days\nmonths=months\nyears=years\nrestartForChangeRequired=Changes will take effect after a restart of the application.\nlaneColor=Lanecolor\nlastModified=Last modified\nlayout=Layout\nleft=Left\nleftAlign=Left Align\nleftToRight=Left to right\nlibraryTooltip=Drag and drop shapes here or click + to insert. Double click to edit.\nlightbox=Lightbox\nline=Line\nlineend=Line end\nlineheight=Line Height\nlinestart=Line start\nlinewidth=Linewidth\nlink=Link\nlinks=Links\nloading=Loading\nlockUnlock=Lock/Unlock\nloggedOut=Logged Out\nlogIn=log in\nloveIt=I love {1}\nlucidchart=Lucidchart\nmaps=Maps\nmathematicalTypesetting=Mathematical Typesetting\nmakeCopy=Make a Copy\nmanual=Manual\nmermaid=Mermaid\nmicrosoftOffice=Microsoft Office\nmicrosoftExcel=Microsoft Excel\nmicrosoftPowerPoint=Microsoft PowerPoint\nmicrosoftWord=Microsoft Word\nmiddle=Middle\nminimal=Minimal\nmisc=Misc\nmockups=Mockups\nmodificationDate=Modification date\nmodifiedBy=Modified by\nmore=More\nmoreResults=More Results\nmoreShapes=More Shapes\nmove=Move\nmoveToFolder=Move to Folder\nmoving=Moving\nmoveSelectionTo=Move selection to {1}\nname=Name\nnavigation=Navigation\nnetwork=Network\nnetworking=Networking\nnew=New\nnewLibrary=New Library\nnextPage=Next Page\nno=No\nnoPickFolder=No, pick folder\nnoAttachments=No attachments found\nnoColor=No Color\nnoFiles=No Files\nnoFileSelected=No file selected\nnoLibraries=No libraries found\nnoMoreResults=No more results\nnone=None\nnoOtherViewers=No other viewers\nnoPlugins=No plugins\nnoPreview=No preview\nnoResponse=No response from server\nnoResultsFor=No results for \'{1}\'\nnoRevisions=No revisions\nnoSearchResults=No search results found\nnoPageContentOrNotSaved=No anchors found on this page or it hasn\'t been saved yet\nnormal=Normal\nnorth=North\nnotADiagramFile=Not a diagram file\nnotALibraryFile=Not a library file\nnotAvailable=Not available\nnotAUtf8File=Not a UTF-8 file\nnotConnected=Not connected\nnote=Note\nnotSatisfiedWithImport=Not satisfied with the import?\nnotUsingService=Not using {1}?\nnumberedList=Numbered list\noffline=Offline\nok=OK\noneDrive=OneDrive\nonline=Online\nopacity=Opacity\nopen=Open\nopenArrow=Open Arrow\nopenExistingDiagram=Open Existing Diagram\nopenFile=Open File\nopenFrom=Open from\nopenLibrary=Open Library\nopenLibraryFrom=Open Library from\nopenLink=Open Link\nopenInNewWindow=Open in New Window\nopenInThisWindow=Open in This Window\nopenIt=Open {1}\nopenRecent=Open Recent\nopenSupported=Supported formats are files saved from this software (.xml), .vsdx and .gliffy\noptions=Options\norganic=Organic\norgChart=Org Chart\northogonal=Orthogonal\notherViewer=other viewer\notherViewers=other viewers\noutline=Outline\noval=Oval\npage=Page\npageContent=Page Content\npageNotFound=Page not found\npageWithNumber=Page-{1}\npages=Pages\npageView=Page View\npageSetup=Page Setup\npageScale=Page Scale\npan=Pan\npanTooltip=Space+Drag to pan\npaperSize=Paper Size\npattern=Pattern\nparallels=Parallels\npaste=Paste\npasteHere=Paste here\npasteSize=Paste Size\npasteStyle=Paste Style\nperimeter=Perimeter\npermissionAnyone=Anyone can edit\npermissionAuthor=Owner and admins can edit\npickFolder=Pick a folder\npickLibraryDialogTitle=Select Library\npublicDiagramUrl=Public URL of the diagram\nplaceholders=Placeholders\nplantUml=PlantUML\nplugins=Plugins\npluginUrl=Plugin URL\npluginWarning=The page has requested to load the following plugin(s):\n \n {1}\n \n Would you like to load these plugin(s) now?\n \n NOTE : Only allow plugins to run if you fully understand the security implications of doing so.\n\nplusTooltip=Click to connect and clone (ctrl+click to clone, shift+click to connect). Drag to connect (ctrl+drag to clone).\nportrait=Portrait\nposition=Position\nposterPrint=Poster Print\npreferences=Preferences\npreview=Preview\npreviousPage=Previous Page\nprint=Print\nprintAllPages=Print All Pages\nprocEng=Proc. Eng.\nproject=Project\npriority=Priority\nproperties=Properties\npublish=Publish\nquickStart=Quick Start Video\nrack=Rack\nradialTree=Radial Tree\nreadOnly=Read-only\nreconnecting=Reconnecting\nrecentlyUpdated=Recently Updated\nrecentlyViewed=Recently Viewed\nrectangle=Rectangle\nredirectToNewApp=This file was created or modified in a newer version of this app. You will be redirected now.\nrealtimeTimeout=It looks like you\'ve made a few changes while offline. We\'re sorry, these changes cannot be saved.\nredo=Redo\nrefresh=Refresh\nregularExpression=Regular Expression\nrelative=Relative\nrelativeUrlNotAllowed=Relative URL not allowed\nrememberMe=Remember me\nrememberThisSetting=Remember this setting\nremoveFormat=Clear Formatting\nremoveFromGroup=Remove from Group\nremoveIt=Remove {1}\nremoveWaypoint=Remove Waypoint\nrename=Rename\nrenamed=Renamed\nrenameIt=Rename {1}\nrenaming=Renaming\nreplace=Replace\nreplaceIt={1} already exists. Do you want to replace it?\nreplaceExistingDrawing=Replace existing drawing\nrequired=required\nreset=Reset\nresetView=Reset View\nresize=Resize\nresizeLargeImages=Do you want to resize large images to make the application run faster?\nretina=Retina\nresponsive=Responsive\nrestore=Restore\nrestoring=Restoring\nretryingIn=Retrying in {1} second(s)\nretryingLoad=Load failed. Retrying...\nretryingLogin=Login time out. Retrying...\nreverse=Reverse\nrevision=Revision\nrevisionHistory=Revision History\nrhombus=Rhombus\nright=Right\nrightAlign=Right Align\nrightToLeft=Right to left\nrotate=Rotate\nrotateTooltip=Click and drag to rotate, click to turn shape only by 90 degrees\nrotation=Rotation\nrounded=Rounded\nsave=Save\nsaveAndExit=Save & Exit\nsaveAs=Save as\nsaveAsXmlFile=Save as XML file?\nsaved=Saved\nsaveDiagramFirst=Please save the diagram first\nsaveDiagramsTo=Save diagrams to\nsaveLibrary403=Insufficient permissions to edit this library\nsaveLibrary500=There was an error while saving the library\nsaveLibraryReadOnly=Could not save library while read-only mode is active\nsaving=Saving\nscratchpad=Scratchpad\nscrollbars=Scrollbars\nsearch=Search\nsearchShapes=Search Shapes\nselectAll=Select All\nselectionOnly=Selection Only\nselectCard=Select Card\nselectEdges=Select Edges\nselectFile=Select File\nselectFolder=Select Folder\nselectFont=Select Font\nselectNone=Select None\nselectTemplate=Select Template\nselectVertices=Select Vertices\nsendMessage=Send\nsendYourFeedback=Send your feedback\nserviceUnavailableOrBlocked=Service unavailable or blocked\nsessionExpired=Your session has expired. Please refresh the browser window.\nsessionTimeoutOnSave=Your session has timed out and you have been disconnected from the Google Drive. Press OK to login and save. \nsetAsDefaultStyle=Set as Default Style\nshadow=Shadow\nshape=Shape\nshapes=Shapes\nshare=Share\nshareLink=Link for shared editing\nsharingAvailable=Sharing available for Google Drive and OneDrive files.\nsharp=Sharp\nshow=Show\nshowStartScreen=Show Start Screen\nsidebarTooltip=Click to expand. Drag and drop shapes into the diagram. Shift+click to change selection. Alt+click to insert and connect.\nsigns=Signs\nsignOut=Sign out\nsimple=Simple\nsimpleArrow=Simple Arrow\nsimpleViewer=Simple Viewer\nsize=Size\nsketch=Sketch\nsolid=Solid\nsourceSpacing=Source Spacing\nsouth=South\nsoftware=Software\nspace=Space\nspacing=Spacing\nspecialLink=Special Link\nstandard=Standard\nstartDrawing=Start drawing\nstopDrawing=Stop drawing\nstarting=Starting\nstraight=Straight\nstrikethrough=Strikethrough\nstrokeColor=Line Color\nstyle=Style\nsubscript=Subscript\nsummary=Summary\nsuperscript=Superscript\nsupport=Support\nswimlaneDiagram=Swimlane Diagram\nsysml=SysML\ntags=Tags\ntable=Table\ntables=Tables\ntakeOver=Take Over\ntargetSpacing=Target Spacing\ntemplate=Template\ntemplates=Templates\ntext=Text\ntextAlignment=Text Alignment\ntextOpacity=Text Opacity\ntheme=Theme\ntimeout=Timeout\ntitle=Title\nto=to\ntoBack=To Back\ntoFront=To Front\ntooLargeUseDownload=Too large, use download instead.\ntoolbar=Toolbar\ntooltips=Tooltips\ntop=Top\ntopAlign=Top Align\ntopLeft=Top Left\ntopRight=Top Right\ntransparent=Transparent\ntransparentBackground=Transparent Background\ntrello=Trello\ntryAgain=Try again\ntryOpeningViaThisPage=Try opening via this page\nturn=Rotate shape only by 90°\ntype=Type\ntwitter=Twitter\numl=UML\nunderline=Underline\nundo=Undo\nungroup=Ungroup\nunsavedChanges=Unsaved changes\nunsavedChangesClickHereToSave=Unsaved changes. Click here to save.\nuntitled=Untitled\nuntitledDiagram=Untitled Diagram\nuntitledLayer=Untitled Layer\nuntitledLibrary=Untitled Library\nunknownError=Unknown error\nupdateFile=Update {1}\nupdatingDocument=Updating Document. Please wait...\nupdatingPreview=Updating Preview. Please wait...\nupdatingSelection=Updating Selection. Please wait...\nupload=Upload\nurl=URL\nuseOffline=Use Offline\nuseRootFolder=Use root folder?\nuserManual=User Manual\nvertical=Vertical\nverticalFlow=Vertical Flow\nverticalTree=Vertical Tree\nview=View\nviewerSettings=Viewer Settings\nviewUrl=Link to view: {1}\nvoiceAssistant=Voice Assistant (beta)\nwarning=Warning\nwaypoints=Waypoints\nwest=West\nwidth=Width\nwiki=Wiki\nwordWrap=Word Wrap\nwritingDirection=Writing Direction\nyes=Yes\nyourEmailAddress=Your email address\nzoom=Zoom\nzoomIn=Zoom In\nzoomOut=Zoom Out\nbasic=Basic\nbusinessprocess=Business Processes\ncharts=Charts\nengineering=Engineering\nflowcharts=Flowcharts\ngmdl=Material Design\nmindmaps=Mindmaps\nmockups=Mockups\nnetworkdiagrams=Network Diagrams\nnothingIsSelected=Nothing is selected\nother=Other\nsoftwaredesign=Software Design\nvenndiagrams=Venn Diagrams\nwebEmailOrOther=Web, email or any other internet address\nwebLink=Web Link\nwireframes=Wireframes\nproperty=Property\nvalue=Value\nshowMore=Show More\nshowLess=Show Less\nmyDiagrams=My Diagrams\nallDiagrams=All Diagrams\nrecentlyUsed=Recently used\nlistView=List view\ngridView=Grid view\nresultsFor=Results for \'{1}\'\noneDriveCharsNotAllowed=The following characters are not allowed: ~ " # % * : < > ? / { | }\noneDriveInvalidDeviceName=The specified device name is invalid\nofficeNotLoggedOD=You are not logged in to OneDrive. Please open draw.io task pane and login first.\nofficeSelectSingleDiag=Please select a single draw.io diagram only without other contents.\nofficeSelectDiag=Please select a draw.io diagram.\nofficeCannotFindDiagram=Cannot find a draw.io diagram in the selection\nnoDiagrams=No diagrams found\nauthFailed=Authentication failed\nofficeFailedAuthMsg=Unable to successfully authenticate user or authorize application.\nconvertingDiagramFailed=Converting diagram failed\nofficeCopyImgErrMsg=Due to some limitations in the host application, the image could not be inserted. Please manually copy the image then paste it to the document.\ninsertingImageFailed=Inserting image failed\nofficeCopyImgInst=Instructions: Right-click the image below. Select "Copy image" from the context menu. Then, in the document, right-click and select "Paste" from the context menu.\nfolderEmpty=Folder is empty\nrecent=Recent\nsharedWithMe=Shared With Me\nsharepointSites=Sharepoint Sites\nerrorFetchingFolder=Error fetching folder items\nerrorAuthOD=Error authenticating to OneDrive\nofficeMainHeader=Adds draw.io diagrams to your document.\nofficeStepsHeader=This add-in performs the following steps:\nofficeStep1=Connects to Microsoft OneDrive, Google Drive or your device.\nofficeStep2=Select a draw.io diagram.\nofficeStep3=Insert the diagram into the document.\nofficeAuthPopupInfo=Please complete the authentication in the pop-up window.\nofficeSelDiag=Select draw.io Diagram:\nfiles=Files\nshared=Shared\nsharepoint=Sharepoint\nofficeManualUpdateInst=Instructions: Copy draw.io diagram from the document. Then, in the box below, right-click and select "Paste" from the context menu.\nofficeClickToEdit=Click icon to start editing:\npasteDiagram=Paste draw.io diagram here\nconnectOD=Connect to OneDrive\nselectChildren=Select Children\nselectSiblings=Select Siblings\nselectParent=Select Parent\nselectDescendants=Select Descendants\nlastSaved=Last saved {1} ago\nresolve=Resolve\nreopen=Re-open\nshowResolved=Show Resolved\nreply=Reply\nobjectNotFound=Object not found\nreOpened=Re-opened\nmarkedAsResolved=Marked as resolved\nnoCommentsFound=No comments found\ncomments=Comments\ntimeAgo={1} ago\nconfluenceCloud=Confluence Cloud\nlibraries=Libraries\nconfAnchor=Confluence Page Anchor\nconfTimeout=The connection has timed out\nconfSrvTakeTooLong=The server at {1} is taking too long to respond.\nconfCannotInsertNew=Cannot insert draw.io diagram to a new Confluence page\nconfSaveTry=Please save the page and try again.\nconfCannotGetID=Unable to determine page ID\nconfContactAdmin=Please contact your Confluence administrator.\nreadErr=Read Error\neditingErr=Editing Error\nconfExtEditNotPossible=This diagram cannot be edited externally. Please try editing it while editing the page\nconfEditedExt=Diagram/Page edited externally\ndiagNotFound=Diagram Not Found\nconfEditedExtRefresh=Diagram/Page is edited externally. Please refresh the page.\nconfCannotEditDraftDelOrExt=Cannot edit diagrams in a draft page, diagram is deleted from the page, or diagram is edited externally. Please check the page.\nretBack=Return back\nconfDiagNotPublished=The diagram does not belong to a published page\ncreatedByDraw=Created by draw.io\nfilenameShort=Filename too short\ninvalidChars=Invalid characters\nalreadyExst={1} already exists\ndraftReadErr=Draft Read Error\ndiagCantLoad=Diagram cannot be loaded\ndraftWriteErr=Draft Write Error\ndraftCantCreate=Draft could not be created\nconfDuplName=Duplicate diagram name detected. Please pick another name.\nconfSessionExpired=Looks like your session expired. Log in again to keep working.\nlogin=Login\ndrawPrev=draw.io preview\ndrawDiag=draw.io diagram\ninvalidCallFnNotFound=Invalid Call: {1} not found\ninvalidCallErrOccured=Invalid Call: An error occurred, {1}\nanonymous=Anonymous\nconfGotoPage=Go to containing page\nshowComments=Show Comments\nconfError=Error: {1}\ngliffyImport=Gliffy Import\ngliffyImportInst1=Click the "Start Import" button to import all Gliffy diagrams to draw.io.\ngliffyImportInst2=Please note that the import procedure will take some time and the browser window must remain open until the import is completed.\nstartImport=Start Import\ndrawConfig=draw.io Configuration\ncustomLib=Custom Libraries\ncustomTemp=Custom Templates\npageIdsExp=Page IDs Export\ndrawReindex=draw.io re-indexing (beta)\nworking=Working\ndrawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.\ncreateConfSp=Create Config Space\nunexpErrRefresh=Unexpected error, please refresh the page and try again.\nconfigJSONInst=Write draw.io JSON configuration in the editor below then click save. If you need help, please refer to\nthisPage=this page\ncurCustLib=Current Custom Libraries\nlibName=Library Name\naction=Action\ndrawConfID=draw.io Config ID\naddLibInst=Click the "Add Library" button to upload a new library.\naddLib=Add Library\ncustomTempInst1=Custom templates are draw.io diagrams saved in children pages of\ncustomTempInst2=For more details, please refer to\ntempsPage=Templates page\npageIdsExpInst1=Select export target, then click the "Start Export" button to export all pages IDs.\npageIdsExpInst2=Please note that the export procedure will take some time and the browser window must remain open until the export is completed.\nstartExp=Start Export\nrefreshDrawIndex=Refresh draw.io Diagrams Index\nreindexInst1=Click the "Start Indexing" button to refresh draw.io diagrams index.\nreindexInst2=Please note that the indexing procedure will take some time and the browser window must remain open until the indexing is completed.\nstartIndexing=Start Indexing\nconfAPageFoundFetch=Page "{1}" found. Fetching\nconfAAllDiagDone=All {1} diagrams processed. Process finished.\nconfAStartedProcessing=Started processing page "{1}"\nconfAAllDiagInPageDone=All {1} diagrams in page "{2}" processed successfully.\nconfAPartialDiagDone={1} out of {2} {3} diagrams in page "{4}" processed successfully.\nconfAUpdatePageFailed=Updating page "{1}" failed.\nconfANoDiagFoundInPage=No {1} diagrams found in page "{2}".\nconfAFetchPageFailed=Fetching the page failed.\nconfANoDiagFound=No {1} diagrams found. Process finished.\nconfASearchFailed=Searching for {1} diagrams failed. Please try again later.\nconfAGliffyDiagFound={2} diagram "{1}" found. Importing\nconfAGliffyDiagImported={2} diagram "{1}" imported successfully.\nconfASavingImpGliffyFailed=Saving imported {2} diagram "{1}" failed.\nconfAImportedFromByDraw=Imported from "{1}" by draw.io\nconfAImportGliffyFailed=Importing {2} diagram "{1}" failed.\nconfAFetchGliffyFailed=Fetching {2} diagram "{1}" failed.\nconfACheckBrokenDiagLnk=Checking for broken diagrams links.\nconfADelDiagLinkOf=Deleting diagram link of "{1}"\nconfADupLnk=(duplicate link)\nconfADelDiagLnkFailed=Deleting diagram link of "{1}" failed.\nconfAUnexpErrProcessPage=Unexpected error during processing the page with id: {1}\nconfADiagFoundIndex=Diagram "{1}" found. Indexing\nconfADiagIndexSucc=Diagram "{1}" indexed successfully.\nconfAIndexDiagFailed=Indexing diagram "{1}" failed.\nconfASkipDiagOtherPage=Skipped "{1}" as it belongs to another page!\nconfADiagUptoDate=Diagram "{1}" is up to date.\nconfACheckPagesWDraw=Checking pages having draw.io diagrams.\nconfAErrOccured=An error occurred!\nsavedSucc=Saved successfully\nconfASaveFailedErr=Saving Failed (Unexpected Error)\ncharacter=Character\nconfAConfPageDesc=This page contains draw.io configuration file (configuration.json) as attachment\nconfALibPageDesc=This page contains draw.io custom libraries as attachments\nconfATempPageDesc=This page contains draw.io custom templates as attachments\nworking=Working\nconfAConfSpaceDesc=This space is used to store draw.io configuration files and custom libraries/templates\nconfANoCustLib=No Custom Libraries\ndelFailed=Delete failed!\nshowID=Show ID\nconfAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.\nuploading=Uploading\nconfALibExist=This library already exists\nconfAUploadSucc=Uploaded successfully\nconfAUploadFailErr=Upload Failed (Unexpected Error)\nhiResPreview=High Res Preview\nofficeNotLoggedGD=You are not logged in to Google Drive. Please open draw.io task pane and login first.\nofficePopupInfo=Please complete the process in the pop-up window.\npickODFile=Pick OneDrive File\npickGDriveFile=Pick Google Drive File\npickDeviceFile=Pick Device File\nvsdNoConfig="vsdurl" is not configured\nruler=Ruler\nunits=Units\npoints=Points\ninches=Inches\nmillimeters=Millimeters\nconfEditDraftDelOrExt=This diagram is in a draft page, is deleted from the page, or is edited externally. It will be saved as a new attachment version and may not be reflected in the page.\nconfDiagEditedExt=Diagram is edited in another session. It will be saved as a new attachment version but the page will show other session\'s modifications.\nmacroNotFound=Macro Not Found\nconfAInvalidPageIdsFormat=Incorrect Page IDs file format\nconfACollectingCurPages=Collecting current pages\nconfABuildingPagesMap=Building pages mapping\nconfAProcessDrawDiag=Started processing imported draw.io diagrams\nconfAProcessDrawDiagDone=Finished processing imported draw.io diagrams\nconfAProcessImpPages=Started processing imported pages\nconfAErrPrcsDiagInPage=Error processing draw.io diagrams in page "{1}"\nconfAPrcsDiagInPage=Processing draw.io diagrams in page "{1}"\nconfAImpDiagram=Importing diagram "{1}"\nconfAImpDiagramFailed=Importing diagram "{1}" failed. Cannot find its new page ID. Maybe it points to a page that is not imported. \nconfAImpDiagramError=Error importing diagram "{1}". Cannot fetch or save the diagram. Cannot fix this diagram links.\nconfAUpdateDgrmCCFailed=Updating link to diagram "{1}" failed.\nconfImpDiagramSuccess=Updating diagram "{1}" done successfully.\nconfANoLnksInDrgm=No links to update in: {1}\nconfAUpdateLnkToPg=Updated link to page: "{1}" in diagram: "{2}"\nconfAUpdateLBLnkToPg=Updated lightbox link to page: "{1}" in diagram: "{2}"\nconfAUpdateLnkBase=Updated base URL from: "{1}" to: "{2}" in diagram: "{3}"\nconfAPageIdsImpDone=Page IDs Import finished.\nconfAPrcsMacrosInPage=Processing draw.io macros in page "{1}"\nconfAErrFetchPage=Error fetching page "{1}"\nconfAFixingMacro=Fixing macro of diagram "{1}"\nconfAErrReadingExpFile=Error reading export file\nconfAPrcsDiagInPageDone=Processing draw.io diagrams in page "{1}" finished\nconfAFixingMacroSkipped=Fixing macro of diagram "{1}" failed. Cannot find its new page ID. Maybe it points to a page that is not imported. \npageIdsExpTrg=Export target\nconfALucidDiagImgImported={2} diagram "{1}" image extracted successfully.\nconfASavingLucidDiagImgFailed=Extracting {2} diagram "{1}" image failed.\nconfGetInfoFailed=Fetching file info from {1} failed.\nconfCheckCacheFailed=Cannot get cached file info.\nconfReadFileErr=Cannot read "{1}" file from {2}.\nconfSaveCacheFailed=Unexpected error. Cannot save cached file\norgChartType=Org Chart Type\nlinear=Linear\nhanger2=Hanger 2\nhanger4=Hanger 4\nfishbone1=Fishbone 1\nfishbone2=Fishbone 2\n1ColumnLeft=Single Column Left\n1ColumnRight=Single Column Right\nsmart=Smart\nparentChildSpacing=Parent Child Spacing\nsiblingSpacing=Sibling Spacing\nconfNoPermErr=Sorry, you don\'t have enough permissions to view this embedded diagram from page {1}\ncopyAsImage=Copy as Image\nlucidImport=Lucidchart Import\nlucidImportInst1=Click the "Start Import" button to import all Lucidchart diagrams.\ninstallFirst=Please install {1} first.\ndrawioChromeExt=draw.io Chrome Extension\nloginFirstThen=Please login to {1} first, then {2}\nerrFetchDocList=Error: Couldn\'t fetch documents list.\nbuiltinPlugins=Built-in Plugins\nextPlugins=External Plugins\nbackupFound=Backup file found\nchromeOnly=This feature only works in Google Chrome\nmsgDeleted=This message has been deleted.\nconfAErrFetchDrawList=Error fetching diagrams list. Some diagrams are skipped.\nconfAErrCheckDrawDiag=Cannot check diagram {1}\nconfAErrFetchPageList=Error fetching pages list.\nconfADiagImportIncom={1} diagram "{2}" is imported partially and may have missing shapes.\ninvalidSel=Invalid selection\ndiagNameEmptyErr=Diagram name cannot be empty\nopenDiagram=Open Diagram\nnewDiagram=New diagram\neditable=Editable\n');Graph.prototype.defaultThemes["default-style2"]=mxUtils.parseXml('').documentElement; +(function(){var a=!1;"min"!=uiTheme||a||mxClient.IS_CHROMEAPP||(EditorUi.initMinimalTheme(),a=!0);var d=EditorUi.initTheme;EditorUi.initTheme=function(){d.apply(this,arguments);"min"!=uiTheme||a||(this.initMinimalTheme(),a=!0)}})();DrawioComment=function(a,d,b,e,k,m,q){this.file=a;this.id=d;this.content=b;this.modifiedDate=e;this.createdDate=k;this.isResolved=m;this.user=q;this.replies=[]};DrawioComment.prototype.addReplyDirect=function(a){null!=a&&this.replies.push(a)};DrawioComment.prototype.addReply=function(a,d,b,e,k){d()};DrawioComment.prototype.editComment=function(a,d,b){d()};DrawioComment.prototype.deleteComment=function(a,d){a()};DrawioUser=function(a,d,b,e,k){this.id=a;this.email=d;this.displayName=b;this.pictureUrl=e;this.locale=k};mxResources.parse('# *DO NOT DIRECTLY EDIT THIS FILE, IT IS AUTOMATICALLY GENERATED AND IT IS BASED ON:*\n# https://docs.google.com/spreadsheet/ccc?key=0AmQEO36liL4FdDJLWVNMaVV2UmRKSnpXU09MYkdGbEE\nabout=About \naboutDrawio=About draw.io\naccessDenied=Access Denied\naction=Action\nactualSize=Actual Size\nadd=Add\naddAccount=Add account\naddedFile=Added {1}\naddImages=Add Images\naddImageUrl=Add Image URL\naddLayer=Add Layer\naddProperty=Add Property\naddress=Address\naddToExistingDrawing=Add to Existing Drawing\naddWaypoint=Add Waypoint\nadjustTo=Adjust to\nadvanced=Advanced\nalign=Align\nalignment=Alignment\nallChangesLost=All changes will be lost!\nallPages=All Pages\nallProjects=All Projects\nallSpaces=All Spaces\nallTags=All Tags\nanchor=Anchor\nandroid=Android\nangle=Angle\narc=Arc\nareYouSure=Are you sure?\nensureDataSaved=Please ensure your data is saved before closing.\nallChangesSaved=All changes saved\nallChangesSavedInDrive=All changes saved in Drive\nallowPopups=Allow pop-ups to avoid this dialog.\nallowRelativeUrl=Allow relative URL\nalreadyConnected=Nodes already connected\napply=Apply\narchiMate21=ArchiMate 2.1\narrange=Arrange\narrow=Arrow\narrows=Arrows\nasNew=As New\natlas=Atlas\nauthor=Author\nauthorizationRequired=Authorization required\nauthorizeThisAppIn=Authorize this app in {1}:\nauthorize=Authorize\nauthorizing=Authorizing\nautomatic=Automatic\nautosave=Autosave\nautosize=Autosize\nattachments=Attachments\naws=AWS\naws3d=AWS 3D\nazure=Azure\nback=Back\nbackground=Background\nbackgroundColor=Background Color\nbackgroundImage=Background Image\nbasic=Basic\nblankDrawing=Blank Drawing\nblankDiagram=Blank Diagram\nblock=Block\nblockquote=Blockquote\nblog=Blog\nbold=Bold\nbootstrap=Bootstrap\nborder=Border\nborderColor=Border Color\nborderWidth=Border Width\nbottom=Bottom\nbottomAlign=Bottom Align\nbottomLeft=Bottom Left\nbottomRight=Bottom Right\nbpmn=BPMN\nbrowser=Browser\nbulletedList=Bulleted List\nbusiness=Business\nbusy=Operation in progress\ncabinets=Cabinets\ncancel=Cancel\ncenter=Center\ncannotLoad=Load attempts failed. Please try again later.\ncannotLogin=Log in attempts failed. Please try again later.\ncannotOpenFile=Cannot open file\nchange=Change\nchangeOrientation=Change Orientation\nchangeUser=Change user\nchangeStorage=Change storage\nchangesNotSaved=Changes have not been saved\nclassDiagram=Class Diagram\nuserJoined={1} has joined\nuserLeft={1} has left\nchatWindowTitle=Chat\nchooseAnOption=Choose an option\nchromeApp=Chrome App\ncollaborativeEditingNotice=Important Notice for Collaborative Editing\ncompressed=Compressed\ncommitMessage=Commit Message\nconfigLinkWarn=This link configures draw.io. Only click OK if you trust whoever gave you it!\nconfigLinkConfirm=Click OK to configure and restart draw.io.\ncsv=CSV\ndark=Dark\ndiagramXmlDesc=XML File\ndiagramHtmlDesc=HTML File\ndiagramPngDesc=Editable Bitmap Image\ndiagramSvgDesc=Editable Vector Image\ndidYouMeanToExportToPdf=Did you mean to export to PDF?\ndraftFound=A draft for \'{1}\' has been found. Load it into the editor or discard it to continue.\nselectDraft=Select a draft to continue editing:\ndragAndDropNotSupported=Drag and drop not supported for images. Would you like to import instead?\ndropboxCharsNotAllowed=The following characters are not allowed: / : ? * " |\ncheck=Check\nchecksum=Checksum\ncircle=Circle\ncisco=Cisco\nclassic=Classic\nclearDefaultStyle=Clear Default Style\nclearWaypoints=Clear Waypoints\nclipart=Clipart\nclose=Close\nclosingFile=Closing file\ncollaborator=Collaborator\ncollaborators=Collaborators\ncollapse=Collapse\ncollapseExpand=Collapse/Expand\ncollapse-expand=Click to collapse/expand\nShift-click to move neighbors \nAlt-click to protect group size\ncollapsible=Collapsible\ncomic=Comic\ncomment=Comment\ncommentsNotes=Comments/Notes\ncompress=Compress\nconfiguration=Configuration\nconnect=Connect\nconnecting=Connecting\nconnectWithDrive=Connect with Google Drive\nconnection=Connection\nconnectionArrows=Connection Arrows\nconnectionPoints=Connection Points\nconstrainProportions=Constrain Proportions\ncontainsValidationErrors=Contains validation errors\ncopiedToClipboard=Copied to clipboard\ncopy=Copy\ncopyConnect=Copy on connect\ncopyCreated=A copy of the file was created.\ncopyOf=Copy of {1}\ncopyOfDrawing=Copy of Drawing\ncopySize=Copy Size\ncopyStyle=Copy Style\ncreate=Create\ncreateNewDiagram=Create New Diagram\ncreateRevision=Create Revision\ncreateShape=Create Shape\ncrop=Crop\ncurved=Curved\ncustom=Custom\ncurrent=Current\ncurrentPage=Current page\ncut=Cut\ndashed=Dashed\ndecideLater=Decide later\ndefault=Default\ndelete=Delete\ndeleteColumn=Delete Column\ndeleteLibrary401=Insufficient permissions to delete this library\ndeleteLibrary404=Selected library could not be found\ndeleteLibrary500=Error deleting library\ndeleteLibraryConfirm=You are about to permanently delete this library. Are you sure you want to do this?\ndeleteRow=Delete Row\ndescription=Description\ndevice=Device\ndiagram=Diagram\ndiagramContent=Diagram Content\ndiagramLocked=Diagram has been locked to prevent further data loss.\ndiagramLockedBySince=The diagram is locked by {1} since {2} ago\ndiagramName=Diagram Name\ndiagramIsPublic=Diagram is public\ndiagramIsNotPublic=Diagram is not public\ndiamond=Diamond\ndiamondThin=Diamond (thin)\ndidYouKnow=Did you know...\ndirection=Direction\ndiscard=Discard\ndiscardChangesAndReconnect=Discard Changes and Reconnect\ngoogleDriveMissingClickHere=Google Drive missing? Click here!\ndiscardChanges=Discard Changes\ndisconnected=Disconnected\ndistribute=Distribute\ndone=Done\ndoNotShowAgain=Do not show again\ndotted=Dotted\ndoubleClickOrientation=Doubleclick to change orientation\ndoubleClickTooltip=Doubleclick to insert text\ndoubleClickChangeProperty=Doubleclick to change property name\ndownload=Download\ndownloadDesktop=Get Desktop\ndownloadAs=Download as\nclickHereToSave=Click here to save.\ndpi=DPI\ndraftDiscarded=Draft discarded\ndraftSaved=Draft saved\ndragElementsHere=Drag elements here\ndragImagesHere=Drag images or URLs here\ndragUrlsHere=Drag URLs here\ndraw.io=draw.io\ndrawing=Drawing{1}\ndrawingEmpty=Drawing is empty\ndrawingTooLarge=Drawing is too large\ndrawioForWork=Draw.io for GSuite\ndropbox=Dropbox\nduplicate=Duplicate\nduplicateIt=Duplicate {1}\ndivider=Divider\ndx=Dx\ndy=Dy\neast=East\nedit=Edit\neditData=Edit Data\neditDiagram=Edit Diagram\neditGeometry=Edit Geometry\neditImage=Edit Image\neditImageUrl=Edit Image URL\neditLink=Edit Link\neditShape=Edit Shape\neditStyle=Edit Style\neditText=Edit Text\neditTooltip=Edit Tooltip\nglass=Glass\ngoogleImages=Google Images\nimageSearch=Image Search\neip=EIP\nembed=Embed\nembedImages=Embed Images\nmainEmbedNotice=Paste this into the page\nelectrical=Electrical\nellipse=Ellipse\nembedNotice=Paste this once at the end of the page\nenterGroup=Enter Group\nenterName=Enter Name\nenterPropertyName=Enter Property Name\nenterValue=Enter Value\nentityRelation=Entity Relation\nentityRelationshipDiagram=Entity Relationship Diagram\nerror=Error\nerrorDeletingFile=Error deleting file\nerrorLoadingFile=Error loading file\nerrorRenamingFile=Error renaming file\nerrorRenamingFileNotFound=Error renaming file. File was not found.\nerrorRenamingFileForbidden=Error renaming file. Insufficient access rights.\nerrorSavingDraft=Error saving draft\nerrorSavingFile=Error saving file\nerrorSavingFileUnknown=Error authorizing with Google\'s servers. Please refresh the page to re-attempt.\nerrorSavingFileForbidden=Error saving file. Insufficient access rights.\nerrorSavingFileNameConflict=Could not save diagram. Current page already contains file named \'{1}\'.\nerrorSavingFileNotFound=Error saving file. File was not found.\nerrorSavingFileReadOnlyMode=Could not save diagram while read-only mode is active.\nerrorSavingFileSessionTimeout=Your session has ended. Please {2} and return to this tab to try to save again.\nerrorSendingFeedback=Error sending feedback.\nerrorUpdatingPreview=Error updating preview.\nexit=Exit\nexitGroup=Exit Group\nexpand=Expand\nexport=Export\nexporting=Exporting\nexportAs=Export as\nexportOptionsDisabled=Export options disabled\nexportOptionsDisabledDetails=The owner has disabled options to download, print or copy for commenters and viewers on this file.\nexternalChanges=External Changes\nextras=Extras\nfacebook=Facebook\nfailedToSaveTryReconnect=Failed to save, trying to reconnect\nfeatureRequest=Feature Request\nfeedback=Feedback\nfeedbackSent=Feedback successfully sent.\nfloorplans=Floorplans\nfile=File\nfileChangedOverwriteDialog=The file has been modified. Do you want to save the file and overwrite those changes?\nfileChangedSyncDialog=The file has been modified. Do you want to synchronize those changes?\nfileChangedSync=The file has been modified. Click here to synchronize.\noverwrite=Overwrite\nsynchronize=Synchronize\nfilename=Filename\nfileExists=File already exists\nfileMovedToTrash=File was moved to trash\nfileNearlyFullSeeFaq=File nearly full, please see FAQ\nfileNotFound=File not found\nrepositoryNotFound=Repository not found\nfileNotFoundOrDenied=The file was not found. It does not exist or you do not have access.\nfileNotLoaded=File not loaded\nfileNotSaved=File not saved\nfileOpenLocation=How would you like to open these file(s)?\nfiletypeHtml=.html causes file to save as HTML with redirect to cloud URL\nfiletypePng=.png causes file to save as PNG with embedded data\nfiletypeSvg=.svg causes file to save as SVG with embedded data\nfileWillBeSavedInAppFolder={1} will be saved in the app folder.\nfill=Fill\nfillColor=Fill Color\nfilterCards=Filter Cards\nfind=Find\nfit=Fit\nfitContainer=Resize Container\nfitIntoContainer=Fit into Container\nfitPage=Fit Page\nfitPageWidth=Fit Page Width\nfitTo=Fit to\nfitToSheetsAcross=sheet(s) across\nfitToBy=by\nfitToSheetsDown=sheet(s) down\nfitTwoPages=Two Pages\nfitWindow=Fit Window\nflip=Flip\nflipH=Flip Horizontal\nflipV=Flip Vertical\nflowchart=Flowchart\nfolder=Folder\nfont=Font\nfontColor=Font Color\nfontFamily=Font Family\nfontSize=Font Size\nforbidden=You are not authorized to access this file\nformat=Format\nformatPanel=Format Panel\nformatted=Formatted\nformattedText=Formatted Text\nformatPng=PNG\nformatGif=GIF\nformatJpg=JPEG\nformatPdf=PDF\nformatSql=SQL\nformatSvg=SVG\nformatHtmlEmbedded=HTML\nformatSvgEmbedded=SVG (with XML)\nformatVsdx=VSDX\nformatVssx=VSSX\nformatXmlPlain=XML (Plain)\nformatXml=XML\nforum=Discussion/Help Forums\nfreehand=Freehand\nfromTemplate=From Template\nfromTemplateUrl=From Template URL\nfromText=From Text\nfromUrl=From URL\nfromThisPage=From this page\nfullscreen=Fullscreen\ngap=Gap\ngcp=GCP\ngeneral=General\ngithub=GitHub\ngitlab=GitLab\ngliffy=Gliffy\nglobal=Global\ngoogleDocs=Google Docs\ngoogleDrive=Google Drive\ngoogleGadget=Google Gadget\ngooglePlus=Google+\ngoogleSharingNotAvailable=Sharing is only available via Google Drive. Please click Open below and share from the more actions menu:\ngoogleSlides=Google Slides\ngoogleSites=Google Sites\ngoogleSheets=Google Sheets\ngradient=Gradient\ngradientColor=Color\ngrid=Grid\ngridColor=Grid Color\ngridSize=Grid Size\ngroup=Group\nguides=Guides\nhateApp=I hate draw.io\nheading=Heading\nheight=Height\nhelp=Help\nhelpTranslate=Help us translate this application\nhide=Hide\nhideIt=Hide {1}\nhidden=Hidden\nhome=Home\nhorizontal=Horizontal\nhorizontalFlow=Horizontal Flow\nhorizontalTree=Horizontal Tree\nhowTranslate=How good is the translation in your language?\nhtml=HTML\nhtmlText=HTML Text\nid=ID\niframe=IFrame\nignore=Ignore\nimage=Image\nimageUrl=Image URL\nimages=Images\nimagePreviewError=This image couldn\'t be loaded for preview. Please check the URL.\nimageTooBig=Image too big\nimgur=Imgur\nimport=Import\nimportFrom=Import from\nincludeCopyOfMyDiagram=Include a copy of my diagram\nincreaseIndent=Increase Indent\ndecreaseIndent=Decrease Indent\ninsert=Insert\ninsertColumnBefore=Insert Column Left\ninsertColumnAfter=Insert Column Right\ninsertEllipse=Insert Ellipse\ninsertImage=Insert Image\ninsertHorizontalRule=Insert Horizontal Rule\ninsertLink=Insert Link\ninsertPage=Insert Page\ninsertRectangle=Insert Rectangle\ninsertRhombus=Insert Rhombus\ninsertRowBefore=Insert Row Above\ninsertRowAfter=Insert Row After\ninsertText=Insert Text\ninserting=Inserting\ninstallApp=Install App\ninvalidFilename=Diagram names must not contain the following characters: / | : ; { } < > & + ? = "\ninvalidLicenseSeeThisPage=Your license is invalid, please see this page.\ninvalidInput=Invalid input\ninvalidName=Invalid name\ninvalidOrMissingFile=Invalid or missing file\ninvalidPublicUrl=Invalid public URL\nisometric=Isometric\nios=iOS\nitalic=Italic\nkennedy=Kennedy\nkeyboardShortcuts=Keyboard Shortcuts\nlayers=Layers\nlandscape=Landscape\nlanguage=Language\nleanMapping=Lean Mapping\nlastChange=Last change {1} ago\nlessThanAMinute=less than a minute\nlicensingError=Licensing Error\nlicenseHasExpired=The license for {1} has expired on {2}. Click here.\nlicenseRequired=This feature requires draw.io to be licensed.\nlicenseWillExpire=The license for {1} will expire on {2}. Click here.\nlineJumps=Line jumps\nlinkAccountRequired=If the diagram is not public a Google account is required to view the link.\nlinkText=Link Text\nlist=List\nminute=minute\nminutes=minutes\nhours=hours\ndays=days\nmonths=months\nyears=years\nrestartForChangeRequired=Changes will take effect after a restart of the application.\nlaneColor=Lanecolor\nlastModified=Last modified\nlayout=Layout\nleft=Left\nleftAlign=Left Align\nleftToRight=Left to right\nlibraryTooltip=Drag and drop shapes here or click + to insert. Double click to edit.\nlightbox=Lightbox\nline=Line\nlineend=Line end\nlineheight=Line Height\nlinestart=Line start\nlinewidth=Linewidth\nlink=Link\nlinks=Links\nloading=Loading\nlockUnlock=Lock/Unlock\nloggedOut=Logged Out\nlogIn=log in\nloveIt=I love {1}\nlucidchart=Lucidchart\nmaps=Maps\nmathematicalTypesetting=Mathematical Typesetting\nmakeCopy=Make a Copy\nmanual=Manual\nmermaid=Mermaid\nmicrosoftOffice=Microsoft Office\nmicrosoftExcel=Microsoft Excel\nmicrosoftPowerPoint=Microsoft PowerPoint\nmicrosoftWord=Microsoft Word\nmiddle=Middle\nminimal=Minimal\nmisc=Misc\nmockups=Mockups\nmodificationDate=Modification date\nmodifiedBy=Modified by\nmore=More\nmoreResults=More Results\nmoreShapes=More Shapes\nmove=Move\nmoveToFolder=Move to Folder\nmoving=Moving\nmoveSelectionTo=Move selection to {1}\nname=Name\nnavigation=Navigation\nnetwork=Network\nnetworking=Networking\nnew=New\nnewLibrary=New Library\nnextPage=Next Page\nno=No\nnoPickFolder=No, pick folder\nnoAttachments=No attachments found\nnoColor=No Color\nnoFiles=No Files\nnoFileSelected=No file selected\nnoLibraries=No libraries found\nnoMoreResults=No more results\nnone=None\nnoOtherViewers=No other viewers\nnoPlugins=No plugins\nnoPreview=No preview\nnoResponse=No response from server\nnoResultsFor=No results for \'{1}\'\nnoRevisions=No revisions\nnoSearchResults=No search results found\nnoPageContentOrNotSaved=No anchors found on this page or it hasn\'t been saved yet\nnormal=Normal\nnorth=North\nnotADiagramFile=Not a diagram file\nnotALibraryFile=Not a library file\nnotAvailable=Not available\nnotAUtf8File=Not a UTF-8 file\nnotConnected=Not connected\nnote=Note\nnotSatisfiedWithImport=Not satisfied with the import?\nnotUsingService=Not using {1}?\nnumberedList=Numbered list\noffline=Offline\nok=OK\noneDrive=OneDrive\nonline=Online\nopacity=Opacity\nopen=Open\nopenArrow=Open Arrow\nopenExistingDiagram=Open Existing Diagram\nopenFile=Open File\nopenFrom=Open from\nopenLibrary=Open Library\nopenLibraryFrom=Open Library from\nopenLink=Open Link\nopenInNewWindow=Open in New Window\nopenInThisWindow=Open in This Window\nopenIt=Open {1}\nopenRecent=Open Recent\nopenSupported=Supported formats are files saved from this software (.xml), .vsdx and .gliffy\noptions=Options\norganic=Organic\norgChart=Org Chart\northogonal=Orthogonal\notherViewer=other viewer\notherViewers=other viewers\noutline=Outline\noval=Oval\npage=Page\npageContent=Page Content\npageNotFound=Page not found\npageWithNumber=Page-{1}\npages=Pages\npageView=Page View\npageSetup=Page Setup\npageScale=Page Scale\npan=Pan\npanTooltip=Space+Drag to pan\npaperSize=Paper Size\npattern=Pattern\nparallels=Parallels\npaste=Paste\npasteHere=Paste here\npasteSize=Paste Size\npasteStyle=Paste Style\nperimeter=Perimeter\npermissionAnyone=Anyone can edit\npermissionAuthor=Owner and admins can edit\npickFolder=Pick a folder\npickLibraryDialogTitle=Select Library\npublicDiagramUrl=Public URL of the diagram\nplaceholders=Placeholders\nplantUml=PlantUML\nplugins=Plugins\npluginUrl=Plugin URL\npluginWarning=The page has requested to load the following plugin(s):\n \n {1}\n \n Would you like to load these plugin(s) now?\n \n NOTE : Only allow plugins to run if you fully understand the security implications of doing so.\n\nplusTooltip=Click to connect and clone (ctrl+click to clone, shift+click to connect). Drag to connect (ctrl+drag to clone).\nportrait=Portrait\nposition=Position\nposterPrint=Poster Print\npreferences=Preferences\npreview=Preview\npreviousPage=Previous Page\nprint=Print\nprintAllPages=Print All Pages\nprocEng=Proc. Eng.\nproject=Project\npriority=Priority\nproperties=Properties\npublish=Publish\nquickStart=Quick Start Video\nrack=Rack\nradialTree=Radial Tree\nreadOnly=Read-only\nreconnecting=Reconnecting\nrecentlyUpdated=Recently Updated\nrecentlyViewed=Recently Viewed\nrectangle=Rectangle\nredirectToNewApp=This file was created or modified in a newer version of this app. You will be redirected now.\nrealtimeTimeout=It looks like you\'ve made a few changes while offline. We\'re sorry, these changes cannot be saved.\nredo=Redo\nrefresh=Refresh\nregularExpression=Regular Expression\nrelative=Relative\nrelativeUrlNotAllowed=Relative URL not allowed\nrememberMe=Remember me\nrememberThisSetting=Remember this setting\nremoveFormat=Clear Formatting\nremoveFromGroup=Remove from Group\nremoveIt=Remove {1}\nremoveWaypoint=Remove Waypoint\nrename=Rename\nrenamed=Renamed\nrenameIt=Rename {1}\nrenaming=Renaming\nreplace=Replace\nreplaceIt={1} already exists. Do you want to replace it?\nreplaceExistingDrawing=Replace existing drawing\nrequired=required\nreset=Reset\nresetView=Reset View\nresize=Resize\nresizeLargeImages=Do you want to resize large images to make the application run faster?\nretina=Retina\nresponsive=Responsive\nrestore=Restore\nrestoring=Restoring\nretryingIn=Retrying in {1} second(s)\nretryingLoad=Load failed. Retrying...\nretryingLogin=Login time out. Retrying...\nreverse=Reverse\nrevision=Revision\nrevisionHistory=Revision History\nrhombus=Rhombus\nright=Right\nrightAlign=Right Align\nrightToLeft=Right to left\nrotate=Rotate\nrotateTooltip=Click and drag to rotate, click to turn shape only by 90 degrees\nrotation=Rotation\nrounded=Rounded\nsave=Save\nsaveAndExit=Save & Exit\nsaveAs=Save as\nsaveAsXmlFile=Save as XML file?\nsaved=Saved\nsaveDiagramFirst=Please save the diagram first\nsaveDiagramsTo=Save diagrams to\nsaveLibrary403=Insufficient permissions to edit this library\nsaveLibrary500=There was an error while saving the library\nsaveLibraryReadOnly=Could not save library while read-only mode is active\nsaving=Saving\nscratchpad=Scratchpad\nscrollbars=Scrollbars\nsearch=Search\nsearchShapes=Search Shapes\nselectAll=Select All\nselectionOnly=Selection Only\nselectCard=Select Card\nselectEdges=Select Edges\nselectFile=Select File\nselectFolder=Select Folder\nselectFont=Select Font\nselectNone=Select None\nselectTemplate=Select Template\nselectVertices=Select Vertices\nsendMessage=Send\nsendYourFeedback=Send your feedback\nserviceUnavailableOrBlocked=Service unavailable or blocked\nsessionExpired=Your session has expired. Please refresh the browser window.\nsessionTimeoutOnSave=Your session has timed out and you have been disconnected from the Google Drive. Press OK to login and save. \nsetAsDefaultStyle=Set as Default Style\nshadow=Shadow\nshape=Shape\nshapes=Shapes\nshare=Share\nshareLink=Link for shared editing\nsharingAvailable=Sharing available for Google Drive and OneDrive files.\nsharp=Sharp\nshow=Show\nshowStartScreen=Show Start Screen\nsidebarTooltip=Click to expand. Drag and drop shapes into the diagram. Shift+click to change selection. Alt+click to insert and connect.\nsigns=Signs\nsignOut=Sign out\nsimple=Simple\nsimpleArrow=Simple Arrow\nsimpleViewer=Simple Viewer\nsize=Size\nsketch=Sketch\nsolid=Solid\nsourceSpacing=Source Spacing\nsouth=South\nsoftware=Software\nspace=Space\nspacing=Spacing\nspecialLink=Special Link\nstandard=Standard\nstartDrawing=Start drawing\nstopDrawing=Stop drawing\nstarting=Starting\nstraight=Straight\nstrikethrough=Strikethrough\nstrokeColor=Line Color\nstyle=Style\nsubscript=Subscript\nsummary=Summary\nsuperscript=Superscript\nsupport=Support\nswimlaneDiagram=Swimlane Diagram\nsysml=SysML\ntags=Tags\ntable=Table\ntables=Tables\ntakeOver=Take Over\ntargetSpacing=Target Spacing\ntemplate=Template\ntemplates=Templates\ntext=Text\ntextAlignment=Text Alignment\ntextOpacity=Text Opacity\ntheme=Theme\ntimeout=Timeout\ntitle=Title\nto=to\ntoBack=To Back\ntoFront=To Front\ntooLargeUseDownload=Too large, use download instead.\ntoolbar=Toolbar\ntooltips=Tooltips\ntop=Top\ntopAlign=Top Align\ntopLeft=Top Left\ntopRight=Top Right\ntransparent=Transparent\ntransparentBackground=Transparent Background\ntrello=Trello\ntryAgain=Try again\ntryOpeningViaThisPage=Try opening via this page\nturn=Rotate shape only by 90°\ntype=Type\ntwitter=Twitter\numl=UML\nunderline=Underline\nundo=Undo\nungroup=Ungroup\nunsavedChanges=Unsaved changes\nunsavedChangesClickHereToSave=Unsaved changes. Click here to save.\nuntitled=Untitled\nuntitledDiagram=Untitled Diagram\nuntitledLayer=Untitled Layer\nuntitledLibrary=Untitled Library\nunknownError=Unknown error\nupdateFile=Update {1}\nupdatingDocument=Updating Document. Please wait...\nupdatingPreview=Updating Preview. Please wait...\nupdatingSelection=Updating Selection. Please wait...\nupload=Upload\nurl=URL\nuseOffline=Use Offline\nuseRootFolder=Use root folder?\nuserManual=User Manual\nvertical=Vertical\nverticalFlow=Vertical Flow\nverticalTree=Vertical Tree\nview=View\nviewerSettings=Viewer Settings\nviewUrl=Link to view: {1}\nvoiceAssistant=Voice Assistant (beta)\nwarning=Warning\nwaypoints=Waypoints\nwest=West\nwidth=Width\nwiki=Wiki\nwordWrap=Word Wrap\nwritingDirection=Writing Direction\nyes=Yes\nyourEmailAddress=Your email address\nzoom=Zoom\nzoomIn=Zoom In\nzoomOut=Zoom Out\nbasic=Basic\nbusinessprocess=Business Processes\ncharts=Charts\nengineering=Engineering\nflowcharts=Flowcharts\ngmdl=Material Design\nmindmaps=Mindmaps\nmockups=Mockups\nnetworkdiagrams=Network Diagrams\nnothingIsSelected=Nothing is selected\nother=Other\nsoftwaredesign=Software Design\nvenndiagrams=Venn Diagrams\nwebEmailOrOther=Web, email or any other internet address\nwebLink=Web Link\nwireframes=Wireframes\nproperty=Property\nvalue=Value\nshowMore=Show More\nshowLess=Show Less\nmyDiagrams=My Diagrams\nallDiagrams=All Diagrams\nrecentlyUsed=Recently used\nlistView=List view\ngridView=Grid view\nresultsFor=Results for \'{1}\'\noneDriveCharsNotAllowed=The following characters are not allowed: ~ " # % * : < > ? / { | }\noneDriveInvalidDeviceName=The specified device name is invalid\nofficeNotLoggedOD=You are not logged in to OneDrive. Please open draw.io task pane and login first.\nofficeSelectSingleDiag=Please select a single draw.io diagram only without other contents.\nofficeSelectDiag=Please select a draw.io diagram.\nofficeCannotFindDiagram=Cannot find a draw.io diagram in the selection\nnoDiagrams=No diagrams found\nauthFailed=Authentication failed\nofficeFailedAuthMsg=Unable to successfully authenticate user or authorize application.\nconvertingDiagramFailed=Converting diagram failed\nofficeCopyImgErrMsg=Due to some limitations in the host application, the image could not be inserted. Please manually copy the image then paste it to the document.\ninsertingImageFailed=Inserting image failed\nofficeCopyImgInst=Instructions: Right-click the image below. Select "Copy image" from the context menu. Then, in the document, right-click and select "Paste" from the context menu.\nfolderEmpty=Folder is empty\nrecent=Recent\nsharedWithMe=Shared With Me\nsharepointSites=Sharepoint Sites\nerrorFetchingFolder=Error fetching folder items\nerrorAuthOD=Error authenticating to OneDrive\nofficeMainHeader=Adds draw.io diagrams to your document.\nofficeStepsHeader=This add-in performs the following steps:\nofficeStep1=Connects to Microsoft OneDrive, Google Drive or your device.\nofficeStep2=Select a draw.io diagram.\nofficeStep3=Insert the diagram into the document.\nofficeAuthPopupInfo=Please complete the authentication in the pop-up window.\nofficeSelDiag=Select draw.io Diagram:\nfiles=Files\nshared=Shared\nsharepoint=Sharepoint\nofficeManualUpdateInst=Instructions: Copy draw.io diagram from the document. Then, in the box below, right-click and select "Paste" from the context menu.\nofficeClickToEdit=Click icon to start editing:\npasteDiagram=Paste draw.io diagram here\nconnectOD=Connect to OneDrive\nselectChildren=Select Children\nselectSiblings=Select Siblings\nselectParent=Select Parent\nselectDescendants=Select Descendants\nlastSaved=Last saved {1} ago\nresolve=Resolve\nreopen=Re-open\nshowResolved=Show Resolved\nreply=Reply\nobjectNotFound=Object not found\nreOpened=Re-opened\nmarkedAsResolved=Marked as resolved\nnoCommentsFound=No comments found\ncomments=Comments\ntimeAgo={1} ago\nconfluenceCloud=Confluence Cloud\nlibraries=Libraries\nconfAnchor=Confluence Page Anchor\nconfTimeout=The connection has timed out\nconfSrvTakeTooLong=The server at {1} is taking too long to respond.\nconfCannotInsertNew=Cannot insert draw.io diagram to a new Confluence page\nconfSaveTry=Please save the page and try again.\nconfCannotGetID=Unable to determine page ID\nconfContactAdmin=Please contact your Confluence administrator.\nreadErr=Read Error\neditingErr=Editing Error\nconfExtEditNotPossible=This diagram cannot be edited externally. Please try editing it while editing the page\nconfEditedExt=Diagram/Page edited externally\ndiagNotFound=Diagram Not Found\nconfEditedExtRefresh=Diagram/Page is edited externally. Please refresh the page.\nconfCannotEditDraftDelOrExt=Cannot edit diagrams in a draft page, diagram is deleted from the page, or diagram is edited externally. Please check the page.\nretBack=Return back\nconfDiagNotPublished=The diagram does not belong to a published page\ncreatedByDraw=Created by draw.io\nfilenameShort=Filename too short\ninvalidChars=Invalid characters\nalreadyExst={1} already exists\ndraftReadErr=Draft Read Error\ndiagCantLoad=Diagram cannot be loaded\ndraftWriteErr=Draft Write Error\ndraftCantCreate=Draft could not be created\nconfDuplName=Duplicate diagram name detected. Please pick another name.\nconfSessionExpired=Looks like your session expired. Log in again to keep working.\nlogin=Login\ndrawPrev=draw.io preview\ndrawDiag=draw.io diagram\ninvalidCallFnNotFound=Invalid Call: {1} not found\ninvalidCallErrOccured=Invalid Call: An error occurred, {1}\nanonymous=Anonymous\nconfGotoPage=Go to containing page\nshowComments=Show Comments\nconfError=Error: {1}\ngliffyImport=Gliffy Import\ngliffyImportInst1=Click the "Start Import" button to import all Gliffy diagrams to draw.io.\ngliffyImportInst2=Please note that the import procedure will take some time and the browser window must remain open until the import is completed.\nstartImport=Start Import\ndrawConfig=draw.io Configuration\ncustomLib=Custom Libraries\ncustomTemp=Custom Templates\npageIdsExp=Page IDs Export\ndrawReindex=draw.io re-indexing (beta)\nworking=Working\ndrawConfigNotFoundInst=draw.io Configuration Space (DRAWIOCONFIG) does not exist. This space is needed to store draw.io configuration files and custom libraries/templates.\ncreateConfSp=Create Config Space\nunexpErrRefresh=Unexpected error, please refresh the page and try again.\nconfigJSONInst=Write draw.io JSON configuration in the editor below then click save. If you need help, please refer to\nthisPage=this page\ncurCustLib=Current Custom Libraries\nlibName=Library Name\naction=Action\ndrawConfID=draw.io Config ID\naddLibInst=Click the "Add Library" button to upload a new library.\naddLib=Add Library\ncustomTempInst1=Custom templates are draw.io diagrams saved in children pages of\ncustomTempInst2=For more details, please refer to\ntempsPage=Templates page\npageIdsExpInst1=Select export target, then click the "Start Export" button to export all pages IDs.\npageIdsExpInst2=Please note that the export procedure will take some time and the browser window must remain open until the export is completed.\nstartExp=Start Export\nrefreshDrawIndex=Refresh draw.io Diagrams Index\nreindexInst1=Click the "Start Indexing" button to refresh draw.io diagrams index.\nreindexInst2=Please note that the indexing procedure will take some time and the browser window must remain open until the indexing is completed.\nstartIndexing=Start Indexing\nconfAPageFoundFetch=Page "{1}" found. Fetching\nconfAAllDiagDone=All {1} diagrams processed. Process finished.\nconfAStartedProcessing=Started processing page "{1}"\nconfAAllDiagInPageDone=All {1} diagrams in page "{2}" processed successfully.\nconfAPartialDiagDone={1} out of {2} {3} diagrams in page "{4}" processed successfully.\nconfAUpdatePageFailed=Updating page "{1}" failed.\nconfANoDiagFoundInPage=No {1} diagrams found in page "{2}".\nconfAFetchPageFailed=Fetching the page failed.\nconfANoDiagFound=No {1} diagrams found. Process finished.\nconfASearchFailed=Searching for {1} diagrams failed. Please try again later.\nconfAGliffyDiagFound={2} diagram "{1}" found. Importing\nconfAGliffyDiagImported={2} diagram "{1}" imported successfully.\nconfASavingImpGliffyFailed=Saving imported {2} diagram "{1}" failed.\nconfAImportedFromByDraw=Imported from "{1}" by draw.io\nconfAImportGliffyFailed=Importing {2} diagram "{1}" failed.\nconfAFetchGliffyFailed=Fetching {2} diagram "{1}" failed.\nconfACheckBrokenDiagLnk=Checking for broken diagrams links.\nconfADelDiagLinkOf=Deleting diagram link of "{1}"\nconfADupLnk=(duplicate link)\nconfADelDiagLnkFailed=Deleting diagram link of "{1}" failed.\nconfAUnexpErrProcessPage=Unexpected error during processing the page with id: {1}\nconfADiagFoundIndex=Diagram "{1}" found. Indexing\nconfADiagIndexSucc=Diagram "{1}" indexed successfully.\nconfAIndexDiagFailed=Indexing diagram "{1}" failed.\nconfASkipDiagOtherPage=Skipped "{1}" as it belongs to another page!\nconfADiagUptoDate=Diagram "{1}" is up to date.\nconfACheckPagesWDraw=Checking pages having draw.io diagrams.\nconfAErrOccured=An error occurred!\nsavedSucc=Saved successfully\nconfASaveFailedErr=Saving Failed (Unexpected Error)\ncharacter=Character\nconfAConfPageDesc=This page contains draw.io configuration file (configuration.json) as attachment\nconfALibPageDesc=This page contains draw.io custom libraries as attachments\nconfATempPageDesc=This page contains draw.io custom templates as attachments\nworking=Working\nconfAConfSpaceDesc=This space is used to store draw.io configuration files and custom libraries/templates\nconfANoCustLib=No Custom Libraries\ndelFailed=Delete failed!\nshowID=Show ID\nconfAIncorrectLibFileType=Incorrect file type. Libraries should be XML files.\nuploading=Uploading\nconfALibExist=This library already exists\nconfAUploadSucc=Uploaded successfully\nconfAUploadFailErr=Upload Failed (Unexpected Error)\nhiResPreview=High Res Preview\nofficeNotLoggedGD=You are not logged in to Google Drive. Please open draw.io task pane and login first.\nofficePopupInfo=Please complete the process in the pop-up window.\npickODFile=Pick OneDrive File\npickGDriveFile=Pick Google Drive File\npickDeviceFile=Pick Device File\nvsdNoConfig="vsdurl" is not configured\nruler=Ruler\nunits=Units\npoints=Points\ninches=Inches\nmillimeters=Millimeters\nconfEditDraftDelOrExt=This diagram is in a draft page, is deleted from the page, or is edited externally. It will be saved as a new attachment version and may not be reflected in the page.\nconfDiagEditedExt=Diagram is edited in another session. It will be saved as a new attachment version but the page will show other session\'s modifications.\nmacroNotFound=Macro Not Found\nconfAInvalidPageIdsFormat=Incorrect Page IDs file format\nconfACollectingCurPages=Collecting current pages\nconfABuildingPagesMap=Building pages mapping\nconfAProcessDrawDiag=Started processing imported draw.io diagrams\nconfAProcessDrawDiagDone=Finished processing imported draw.io diagrams\nconfAProcessImpPages=Started processing imported pages\nconfAErrPrcsDiagInPage=Error processing draw.io diagrams in page "{1}"\nconfAPrcsDiagInPage=Processing draw.io diagrams in page "{1}"\nconfAImpDiagram=Importing diagram "{1}"\nconfAImpDiagramFailed=Importing diagram "{1}" failed. Cannot find its new page ID. Maybe it points to a page that is not imported. \nconfAImpDiagramError=Error importing diagram "{1}". Cannot fetch or save the diagram. Cannot fix this diagram links.\nconfAUpdateDgrmCCFailed=Updating link to diagram "{1}" failed.\nconfImpDiagramSuccess=Updating diagram "{1}" done successfully.\nconfANoLnksInDrgm=No links to update in: {1}\nconfAUpdateLnkToPg=Updated link to page: "{1}" in diagram: "{2}"\nconfAUpdateLBLnkToPg=Updated lightbox link to page: "{1}" in diagram: "{2}"\nconfAUpdateLnkBase=Updated base URL from: "{1}" to: "{2}" in diagram: "{3}"\nconfAPageIdsImpDone=Page IDs Import finished.\nconfAPrcsMacrosInPage=Processing draw.io macros in page "{1}"\nconfAErrFetchPage=Error fetching page "{1}"\nconfAFixingMacro=Fixing macro of diagram "{1}"\nconfAErrReadingExpFile=Error reading export file\nconfAPrcsDiagInPageDone=Processing draw.io diagrams in page "{1}" finished\nconfAFixingMacroSkipped=Fixing macro of diagram "{1}" failed. Cannot find its new page ID. Maybe it points to a page that is not imported. \npageIdsExpTrg=Export target\nconfALucidDiagImgImported={2} diagram "{1}" image extracted successfully.\nconfASavingLucidDiagImgFailed=Extracting {2} diagram "{1}" image failed.\nconfGetInfoFailed=Fetching file info from {1} failed.\nconfCheckCacheFailed=Cannot get cached file info.\nconfReadFileErr=Cannot read "{1}" file from {2}.\nconfSaveCacheFailed=Unexpected error. Cannot save cached file\norgChartType=Org Chart Type\nlinear=Linear\nhanger2=Hanger 2\nhanger4=Hanger 4\nfishbone1=Fishbone 1\nfishbone2=Fishbone 2\n1ColumnLeft=Single Column Left\n1ColumnRight=Single Column Right\nsmart=Smart\nparentChildSpacing=Parent Child Spacing\nsiblingSpacing=Sibling Spacing\nconfNoPermErr=Sorry, you don\'t have enough permissions to view this embedded diagram from page {1}\ncopyAsImage=Copy as Image\nlucidImport=Lucidchart Import\nlucidImportInst1=Click the "Start Import" button to import all Lucidchart diagrams.\ninstallFirst=Please install {1} first.\ndrawioChromeExt=draw.io Chrome Extension\nloginFirstThen=Please login to {1} first, then {2}\nerrFetchDocList=Error: Couldn\'t fetch documents list.\nbuiltinPlugins=Built-in Plugins\nextPlugins=External Plugins\nbackupFound=Backup file found\nchromeOnly=This feature only works in Google Chrome\nmsgDeleted=This message has been deleted.\nconfAErrFetchDrawList=Error fetching diagrams list. Some diagrams are skipped.\nconfAErrCheckDrawDiag=Cannot check diagram {1}\nconfAErrFetchPageList=Error fetching pages list.\nconfADiagImportIncom={1} diagram "{2}" is imported partially and may have missing shapes.\ninvalidSel=Invalid selection\ndiagNameEmptyErr=Diagram name cannot be empty\nopenDiagram=Open Diagram\nnewDiagram=New diagram\neditable=Editable\nconfAReimportStarted=Re-import {1} diagrams started...\n');Graph.prototype.defaultThemes["default-style2"]=mxUtils.parseXml('').documentElement; Graph.prototype.defaultThemes.darkTheme=mxUtils.parseXml('').documentElement;GraphViewer=function(a,d,b){this.init(a,d,b)};mxUtils.extend(GraphViewer,mxEventSource);GraphViewer.prototype.editBlankUrl="https://app.diagrams.net/";GraphViewer.prototype.imageBaseUrl="https://app.diagrams.net/";GraphViewer.prototype.toolbarHeight="BackCompat"==document.compatMode?28:30;GraphViewer.prototype.lightboxChrome=!0;GraphViewer.prototype.lightboxZIndex=999;GraphViewer.prototype.toolbarZIndex=999;GraphViewer.prototype.autoFit=!1;GraphViewer.prototype.center=!1; GraphViewer.prototype.allowZoomIn=!1;GraphViewer.prototype.allowZoomOut=!0;GraphViewer.prototype.showTitleAsTooltip=!1;GraphViewer.prototype.checkVisibleState=!0;GraphViewer.prototype.minHeight=28;GraphViewer.prototype.minWidth=100;GraphViewer.prototype.responsive=!1; GraphViewer.prototype.init=function(a,d,b){this.graphConfig=null!=b?b:{};this.autoFit=null!=this.graphConfig["auto-fit"]?this.graphConfig["auto-fit"]:this.autoFit;this.allowZoomOut=null!=this.graphConfig["allow-zoom-out"]?this.graphConfig["allow-zoom-out"]:this.allowZoomOut;this.allowZoomIn=null!=this.graphConfig["allow-zoom-in"]?this.graphConfig["allow-zoom-in"]:this.allowZoomIn;this.center=null!=this.graphConfig.center?this.graphConfig.center:this.center;this.checkVisibleState=null!=this.graphConfig["check-visible-state"]? diff --git a/src/main/webapp/plugins/cConf-1-4-8.js b/src/main/webapp/plugins/cConf-1-4-8.js index f75a3ddc..cc9ea1dc 100644 --- a/src/main/webapp/plugins/cConf-1-4-8.js +++ b/src/main/webapp/plugins/cConf-1-4-8.js @@ -83,6 +83,14 @@ Draw.loadPlugin(function(ui) } }; + ui.menus.get('file').funct = function(menu, parent) + { + menu.addItem(mxResources.get('licenseRequired'), null, function() + { + // do nothing + }, parent, null, false); + } + renameAction.funct = function() { var dlg = new FilenameDialog(ui, macroData.diagramDisplayName || "", diff --git a/src/main/webapp/resources/dia.txt b/src/main/webapp/resources/dia.txt index e3ee665d..5430e581 100644 --- a/src/main/webapp/resources/dia.txt +++ b/src/main/webapp/resources/dia.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_am.txt b/src/main/webapp/resources/dia_am.txt index 3f8d1d9e..7550c8a7 100644 --- a/src/main/webapp/resources/dia_am.txt +++ b/src/main/webapp/resources/dia_am.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_ar.txt b/src/main/webapp/resources/dia_ar.txt index 711d808b..7f406621 100644 --- a/src/main/webapp/resources/dia_ar.txt +++ b/src/main/webapp/resources/dia_ar.txt @@ -428,6 +428,7 @@ lastChange=‫آخر تعديل قبل {1}‬ lessThanAMinute=‫أقل من دقيقة‬ licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_bg.txt b/src/main/webapp/resources/dia_bg.txt index ab6d572d..364fe8d2 100644 --- a/src/main/webapp/resources/dia_bg.txt +++ b/src/main/webapp/resources/dia_bg.txt @@ -428,6 +428,7 @@ lastChange=Последна промяна преди {1} lessThanAMinute=по-малко от една минута licensingError=Грешка при лицензирането licenseHasExpired=Лицензът за {1} изтече на {2}. Кликнете тук. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Лицензът за {1} ще изтече на {2}. Кликнете тук. lineJumps=Line jumps linkAccountRequired=Ако диаграмата не е публична, е необходим профил в Google, за да видите линка. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_bn.txt b/src/main/webapp/resources/dia_bn.txt index 1720d8e2..ee0ed125 100644 --- a/src/main/webapp/resources/dia_bn.txt +++ b/src/main/webapp/resources/dia_bn.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_bs.txt b/src/main/webapp/resources/dia_bs.txt index 980d9bf0..13d051f7 100644 --- a/src/main/webapp/resources/dia_bs.txt +++ b/src/main/webapp/resources/dia_bs.txt @@ -428,6 +428,7 @@ lastChange=Zadnja izmjena prije {1} lessThanAMinute=manje od minute licensingError=Greška pri licenciranju licenseHasExpired=Licenca za {1} je istekla {2}. Kliknite ovdje. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Licenca za {1} će isteći {2}. Kliknite ovdje. lineJumps=Line jumps linkAccountRequired=Ukoliko dijagram nije javni, potreban je Google nalog za pregledanje linka. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_ca.txt b/src/main/webapp/resources/dia_ca.txt index e81a1e23..e69fe3df 100644 --- a/src/main/webapp/resources/dia_ca.txt +++ b/src/main/webapp/resources/dia_ca.txt @@ -428,6 +428,7 @@ lastChange=El darrer canvi s'ha efectuat fa {1} lessThanAMinute=menys d'un minut licensingError=Error de llicència licenseHasExpired=La llicència per a {1} ha expirat el {2}. Clica aquí. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=La llicència per a {1} expira el {2}. Clica aquí. lineJumps=Salts de línia linkAccountRequired=Si el diagrama no és públic es requereix un compte de Google per a veure l'enllaç. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_cs.txt b/src/main/webapp/resources/dia_cs.txt index 5c69e776..09df242d 100644 --- a/src/main/webapp/resources/dia_cs.txt +++ b/src/main/webapp/resources/dia_cs.txt @@ -428,6 +428,7 @@ lastChange=naposledy změněno před {1} lessThanAMinute=méně než 1 min. licensingError=Chyba licence licenseHasExpired=Licence pro {1} vypršela {2}. Klepněte sem. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Licence pro {1} vyprší {2}. Klepněte sem. lineJumps=Line jumps linkAccountRequired=Pokud je diagram neveřejný, k jeho zobrazení je potřeba účet Google. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_da.txt b/src/main/webapp/resources/dia_da.txt index 3cc0e5b9..bf999ead 100644 --- a/src/main/webapp/resources/dia_da.txt +++ b/src/main/webapp/resources/dia_da.txt @@ -428,6 +428,7 @@ lastChange=Sidste ændring for {1} siden lessThanAMinute=mindre end et minut licensingError=Licens Fejl licenseHasExpired=Licensen for {1} udløb den {2}. Klik her. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Licensen for {1} vil udløbe den {2}. Klik her. lineJumps=Line jumps linkAccountRequired=Hvis diagrammet ikke er offentligt er en Google konto nødvendig for at kunne se linket. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_de.txt b/src/main/webapp/resources/dia_de.txt index 84852231..6db91901 100644 --- a/src/main/webapp/resources/dia_de.txt +++ b/src/main/webapp/resources/dia_de.txt @@ -428,6 +428,7 @@ lastChange=Letzte Änderung vor {1} lessThanAMinute=weniger als einer Minute licensingError=Lizenzfehler licenseHasExpired=Die Lizenz für {1} ist am {2} abgelaufen. Hier klicken. +licenseRequired=Für diese Funktion muss draw.io lizenziert sein. licenseWillExpire=Die Lizenz für {1} läuft am {2} ab. Hier klicken. lineJumps=Liniensprünge linkAccountRequired=Wenn das Diagramm nicht öffentlich ist, wird ein Google Konto für die Ansicht benötigt. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_el.txt b/src/main/webapp/resources/dia_el.txt index 2c77c387..33355743 100644 --- a/src/main/webapp/resources/dia_el.txt +++ b/src/main/webapp/resources/dia_el.txt @@ -428,6 +428,7 @@ lastChange=Τελευταία αλλαγή {1} πριν lessThanAMinute=λιγότερο από ένα λεπτό licensingError=Σφάλμα στην άδεια χρήση licenseHasExpired=Η άδεια χρήσης για {1} έχει λήξει στις {2}. Πατήστε εδώ. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Η άδεια χρήσης για {1} θα λήξει στις {2}. Πατήστε εδώ. lineJumps=Line jumps linkAccountRequired=Εάν το διάγραμμα δεν είναι δημόσιο, χρειάζεται λογαριασμός Google για να δείτε τον σύνδεσμο. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_eo.txt b/src/main/webapp/resources/dia_eo.txt index 87dd2ea5..08d917c3 100644 --- a/src/main/webapp/resources/dia_eo.txt +++ b/src/main/webapp/resources/dia_eo.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_es.txt b/src/main/webapp/resources/dia_es.txt index 60e60a72..f2078e60 100644 --- a/src/main/webapp/resources/dia_es.txt +++ b/src/main/webapp/resources/dia_es.txt @@ -428,6 +428,7 @@ lastChange=El último cambio fue hace {1} lessThanAMinute=menos de un minuto licensingError=Error de licencia licenseHasExpired=La licencia para {1} ha expirado en {2}. Haga clic aquí. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=La licencia para {1} expirará en {2}. Haga clic aquí. lineJumps=Saltos de línea linkAccountRequired=Se requiere una cuenta de Google para ver el enlace si el diagrama no es público. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_et.txt b/src/main/webapp/resources/dia_et.txt index 6bdf7d51..d7ec80d0 100644 --- a/src/main/webapp/resources/dia_et.txt +++ b/src/main/webapp/resources/dia_et.txt @@ -428,6 +428,7 @@ lastChange=Viimane muudatus {1} tagasi lessThanAMinute=vähem kui minut licensingError=Litsentsiviga licenseHasExpired=Litsents {1} jaoks aegub {2}. Vajuta siia. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Litsents {1} jaoks aegub {2}. Vajuta siia. lineJumps=Joone punktid linkAccountRequired=Kui diagramm pole avalik, siis läheb lingi vaatamiseks Google'i kasutajakontot vaja. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_eu.txt b/src/main/webapp/resources/dia_eu.txt index f9f734eb..216f34b0 100644 --- a/src/main/webapp/resources/dia_eu.txt +++ b/src/main/webapp/resources/dia_eu.txt @@ -428,6 +428,7 @@ lastChange=Azken aldaketa {1} lehenago egina lessThanAMinute=minututxo bat licensingError=Lizentzia errorea licenseHasExpired={1}-ren lizentzia {2}-an iraungi da. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire={1}-ren lizentzia {2}-an iraungiko da. Egin klik hemen. lineJumps=Lerro-jausia linkAccountRequired=Googleren kontu bat behar da esteka hau ikusteko diagrama publikoa ez bada. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_fa.txt b/src/main/webapp/resources/dia_fa.txt index 96c9107d..6b9099ad 100644 --- a/src/main/webapp/resources/dia_fa.txt +++ b/src/main/webapp/resources/dia_fa.txt @@ -428,6 +428,7 @@ lastChange=‫آخرین تغییر {1) پیش‬ lessThanAMinute=‫کمتر از یک دقیقه‬ licensingError=‫خطای مجوز‬ licenseHasExpired=‫مجوز مربوط به {1} در {2} منقضی شده است. اینجا کلیک کنید. ‬ +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=‫مجوز مربوط به {1} در {2} منقضی خواهد شد. اینجا کلیک کنید. ‬ lineJumps=Line jumps linkAccountRequired=‫اگر نمودار عمومی نیست، برای مشاهده لینک به حساب گوگل نیاز است.‬ @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_fi.txt b/src/main/webapp/resources/dia_fi.txt index 2b23e1a9..ba83990a 100644 --- a/src/main/webapp/resources/dia_fi.txt +++ b/src/main/webapp/resources/dia_fi.txt @@ -428,6 +428,7 @@ lastChange=Viimeinen muutos {1} sitten lessThanAMinute=alle minuutti licensingError=Lisenssivirhe licenseHasExpired={1} lisenssi on päättynyt {2}. Klikkaa tästä. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire={1} lisenssi päättyy {2}. Klikkaa tästä. lineJumps=Viivanylitykset linkAccountRequired=Jos kaavio ei ole julkinen, tarkistamiseen tarvitaan Google-tiliä. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_fil.txt b/src/main/webapp/resources/dia_fil.txt index 3b37bd4e..3e3eebf0 100644 --- a/src/main/webapp/resources/dia_fil.txt +++ b/src/main/webapp/resources/dia_fil.txt @@ -428,6 +428,7 @@ lastChange=Huling pagbabago {1} lessThanAMinute=Mababa sa isang minuto licensingError=Pagkakamali sa paglilisensya licenseHasExpired=Ang lisensya para kay {1} ay nagwakas ng {2}. Pindutin dito +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Ang lisensya para kay {1} ay magwawakas sa {2}. Pindutin dito lineJumps=Line jumps linkAccountRequired=Kung ang Dayagram ay di pampubliko, kailangan ng Google account para tingnan ang Link @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_fr.txt b/src/main/webapp/resources/dia_fr.txt index c6dc9bc7..469fcae5 100644 --- a/src/main/webapp/resources/dia_fr.txt +++ b/src/main/webapp/resources/dia_fr.txt @@ -428,6 +428,7 @@ lastChange=Dernière modification il y a {1} lessThanAMinute=moins d'une minute licensingError=Erreur de licence licenseHasExpired=La license pour {1} a expiré le {2}. Cliquez ici. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=La license pour {1} expirera le {2}. Cliquez ici. lineJumps=Sauts de ligne linkAccountRequired=Si le diagramme n'est pas public, un compte Google est requis pour voir le lien. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_gl.txt b/src/main/webapp/resources/dia_gl.txt index ee8e1602..70fb5506 100644 --- a/src/main/webapp/resources/dia_gl.txt +++ b/src/main/webapp/resources/dia_gl.txt @@ -428,6 +428,7 @@ lastChange=Última alteración hai {1} lessThanAMinute=menos dun minuto licensingError=Erro na licenza licenseHasExpired=A licenza para {1} expirou o {2}. Preme aquí. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=A licenza para {1} vai expirar o {2}. Preme aquí. lineJumps=Saltos de liña linkAccountRequired=Se o diagrama non é público precísase unha conta de Google para mirar o vencello. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_gu.txt b/src/main/webapp/resources/dia_gu.txt index 513d516d..58f2fc2e 100644 --- a/src/main/webapp/resources/dia_gu.txt +++ b/src/main/webapp/resources/dia_gu.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_he.txt b/src/main/webapp/resources/dia_he.txt index 1b433caa..2891e4bf 100644 --- a/src/main/webapp/resources/dia_he.txt +++ b/src/main/webapp/resources/dia_he.txt @@ -428,6 +428,7 @@ lastChange=‫שינוי אחרון לפני {1}‬ lessThanAMinute=‫פחות מדקה‬ licensingError=‫שגיאת רישיון‬ licenseHasExpired=‫הרשיון עבור {1} אינו בתוקף מתאריך {2}. לחץ כאן.‬ +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=‫תוקף הרשיון עבור {1} יפוג בתאריך {2}. לחץ כאן.‬ lineJumps=Line jumps linkAccountRequired=‫אם הדיאגרמה אינה ציבורית, נדרש חשבון גוגל כדי לפתוח את הקישור.‬ @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_hi.txt b/src/main/webapp/resources/dia_hi.txt index f61f41d1..72a7db3b 100644 --- a/src/main/webapp/resources/dia_hi.txt +++ b/src/main/webapp/resources/dia_hi.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_hr.txt b/src/main/webapp/resources/dia_hr.txt index 77ee5f57..7ae265f1 100644 --- a/src/main/webapp/resources/dia_hr.txt +++ b/src/main/webapp/resources/dia_hr.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_hu.txt b/src/main/webapp/resources/dia_hu.txt index da296607..76bd84c7 100644 --- a/src/main/webapp/resources/dia_hu.txt +++ b/src/main/webapp/resources/dia_hu.txt @@ -428,6 +428,7 @@ lastChange=Utolsó változás ideje: {1} lessThanAMinute=kevesebb mint egy perc licensingError=Engedélyezési hiba licenseHasExpired={2}-n lejárt az engedély a(z) {1}-hez. Kattintson ide. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire={2}-n lejár az engedély a(z) {1}-hez. Kattintson ide. lineJumps=Line jumps linkAccountRequired=Amiben a diagram nem nyilvános, Google számla szükséges a link megtekintéséhez. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_i18n.txt b/src/main/webapp/resources/dia_i18n.txt index 7702b35f..0e6e6e04 100644 --- a/src/main/webapp/resources/dia_i18n.txt +++ b/src/main/webapp/resources/dia_i18n.txt @@ -428,6 +428,7 @@ lastChange=lastChange lessThanAMinute=lessThanAMinute licensingError=licensingError licenseHasExpired=licenseHasExpired +licenseRequired=licenseRequired licenseWillExpire=licenseWillExpire lineJumps=lineJumps linkAccountRequired=linkAccountRequired @@ -1041,3 +1042,4 @@ diagNameEmptyErr=diagNameEmptyErr openDiagram=openDiagram newDiagram=newDiagram editable=editable +confAReimportStarted=confAReimportStarted diff --git a/src/main/webapp/resources/dia_id.txt b/src/main/webapp/resources/dia_id.txt index 4d8d0faf..7d75c43c 100644 --- a/src/main/webapp/resources/dia_id.txt +++ b/src/main/webapp/resources/dia_id.txt @@ -428,6 +428,7 @@ lastChange=Terakhir diubah {1} lalu lessThanAMinute=kurang dari satu menit licensingError=Galat Lisensi licenseHasExpired=Lisensi {1} telah berakhir pada {2}. Klik di sini. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Lisensi {1} akan berakhir pada {2}. Klik di sini. lineJumps=Line jumps linkAccountRequired=Jika diagram tidak bersifat publik, akun Google diperlukan untuk membaca tautan. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_it.txt b/src/main/webapp/resources/dia_it.txt index 1ef378cf..c42775f3 100644 --- a/src/main/webapp/resources/dia_it.txt +++ b/src/main/webapp/resources/dia_it.txt @@ -428,6 +428,7 @@ lastChange=Ultima modifica {1} fa lessThanAMinute=meno di un minuto licensingError=Errore di licenza licenseHasExpired=La licenza per {1} è scaduta il {2}. Clicca qui. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=La licenza per {1} scadrà il {2}. Clicca qui. lineJumps=Line jumps linkAccountRequired=Se il diagramma non è pubblico, è necessario un account Google per visualizzare il link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_ja.txt b/src/main/webapp/resources/dia_ja.txt index 368cf425..5e7cdcfb 100644 --- a/src/main/webapp/resources/dia_ja.txt +++ b/src/main/webapp/resources/dia_ja.txt @@ -428,6 +428,7 @@ lastChange={1}前に保存されました。 lessThanAMinute=1分以内に licensingError=ライセンス エラー licenseHasExpired=ライセンス{1} は{2}に期限がきれました。 ここをクリックしてください。 +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=ライセンス{1} に期限切れになります{2}. ここをクリックしてください。 lineJumps=Line jumps linkAccountRequired=図が公式表示されていない場合は、リンクを表示するために Google アカウントが必要です。 @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_kn.txt b/src/main/webapp/resources/dia_kn.txt index 555a3b7e..fa4bf75b 100644 --- a/src/main/webapp/resources/dia_kn.txt +++ b/src/main/webapp/resources/dia_kn.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_ko.txt b/src/main/webapp/resources/dia_ko.txt index 21176de1..f21555f0 100644 --- a/src/main/webapp/resources/dia_ko.txt +++ b/src/main/webapp/resources/dia_ko.txt @@ -428,6 +428,7 @@ lastChange={1} 전 마지막으로 변경됨 lessThanAMinute=방금 licensingError=라이선스 오류 licenseHasExpired={1} 관련 라이선스가 {2}에 만료되었습니다. 여기를 클릭해 주시기 바랍니다. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire={1} 관련 라이선스가 {2}에 만료될 예정입니다. 여기를 클릭해 주시기 바랍니다. lineJumps=Line jumps linkAccountRequired=다이어그램이 공개상태가 아닌 경우, 링크를 확인하기 위해 구글 계정이 필요합니다. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_lt.txt b/src/main/webapp/resources/dia_lt.txt index 4b4ecf80..d5798467 100644 --- a/src/main/webapp/resources/dia_lt.txt +++ b/src/main/webapp/resources/dia_lt.txt @@ -428,6 +428,7 @@ lastChange=Paskutinis pakeitimas prieš {1} lessThanAMinute=mažiau nei minutė licensingError=Licencijavimo klaida licenseHasExpired={1} licencijos galiojimas baigėsi {2}. Paspauskite čia. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire={1} licencijos galiojimas baigsis {2}. Paspauskite čia. lineJumps=Line jumps linkAccountRequired=Jei schema nėra vieša, norint peržiūrėti saitą reikia Google paskyros. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_lv.txt b/src/main/webapp/resources/dia_lv.txt index 5f7ecbc0..c43cce59 100644 --- a/src/main/webapp/resources/dia_lv.txt +++ b/src/main/webapp/resources/dia_lv.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_ml.txt b/src/main/webapp/resources/dia_ml.txt index 3c6a412b..823310b4 100644 --- a/src/main/webapp/resources/dia_ml.txt +++ b/src/main/webapp/resources/dia_ml.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_mr.txt b/src/main/webapp/resources/dia_mr.txt index 48533d96..120ce8e8 100644 --- a/src/main/webapp/resources/dia_mr.txt +++ b/src/main/webapp/resources/dia_mr.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_ms.txt b/src/main/webapp/resources/dia_ms.txt index 4416ebb5..6f6cb843 100644 --- a/src/main/webapp/resources/dia_ms.txt +++ b/src/main/webapp/resources/dia_ms.txt @@ -428,6 +428,7 @@ lastChange=Perubahan terakhir pada {1} yang lalu lessThanAMinute=kurang dari satu minit licensingError=Ralat Pelesenan licenseHasExpired=Lesen untuk {1} telah luput pada {2}. Klik di sini. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Lesen untuk {1} akan luput pada {2}. Klik di sini. lineJumps=Line jumps linkAccountRequired=Jika gambarajah tidak umum, akaun Google diperlukan untuk melihat pautan tersebut. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_my.txt b/src/main/webapp/resources/dia_my.txt index e3ee665d..5430e581 100644 --- a/src/main/webapp/resources/dia_my.txt +++ b/src/main/webapp/resources/dia_my.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_nl.txt b/src/main/webapp/resources/dia_nl.txt index 0b175ab0..092019df 100644 --- a/src/main/webapp/resources/dia_nl.txt +++ b/src/main/webapp/resources/dia_nl.txt @@ -428,6 +428,7 @@ lastChange=Laatste wijziging {1} geleden lessThanAMinute=minder dan een minuut licensingError=Licentiefout licenseHasExpired=De licentie voor {1} is verlopen op {2}. Klik hier. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=De licentie voor {1} zal op {2} verlopen. Klik hier lineJumps=Kruisende lijnen linkAccountRequired=Als het diagram niet openbaar is, is een Google-account vereist om de link te bekijken. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_no.txt b/src/main/webapp/resources/dia_no.txt index 5270866a..e083ca5d 100644 --- a/src/main/webapp/resources/dia_no.txt +++ b/src/main/webapp/resources/dia_no.txt @@ -428,6 +428,7 @@ lastChange=Siste endring for {1} siden lessThanAMinute=mindre enn ett minutt licensingError=Lisensieringsfeil licenseHasExpired=Linsensen for {1} utgikk på {2}. Klikk her. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Linsensen for {1} utgår på {2}. Klikk her. lineJumps=Line jumps linkAccountRequired=Om diagrammet ikke er offentlig er en Google-konto påkrevd for å åpne linken. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_pl.txt b/src/main/webapp/resources/dia_pl.txt index 7fb07690..9e31bb4b 100644 --- a/src/main/webapp/resources/dia_pl.txt +++ b/src/main/webapp/resources/dia_pl.txt @@ -428,6 +428,7 @@ lastChange=Ostatnia zmiana {1} temu lessThanAMinute=poniżej minuty licensingError=Błąd licencji licenseHasExpired=Licencja dla {1} wygasła {2}. Kliknij tutaj. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Licencja dla {1} wygaśnie {2}. Kliknij tutaj. lineJumps=Line jumps linkAccountRequired=Jeśli diagram nie jest publiczny, wymagane jest konto Google, by zobaczyć link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_pt-br.txt b/src/main/webapp/resources/dia_pt-br.txt index 64759f4f..890478be 100644 --- a/src/main/webapp/resources/dia_pt-br.txt +++ b/src/main/webapp/resources/dia_pt-br.txt @@ -428,6 +428,7 @@ lastChange=Última mudança {1} atrás lessThanAMinute=menos de um minuto licensingError=Erro de licenciamento licenseHasExpired=A licença para {1} expirou em {2}. Clique aqui. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=A licença para {1} irá expirar em {2}. Clique aqui. lineJumps=Line jumps linkAccountRequired=Se o diagrama não é público é necessário ter uma conta no Google para visualizar o link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_pt.txt b/src/main/webapp/resources/dia_pt.txt index b3335000..47d264c9 100644 --- a/src/main/webapp/resources/dia_pt.txt +++ b/src/main/webapp/resources/dia_pt.txt @@ -428,6 +428,7 @@ lastChange=A última alteração foi realizada {1} atrás lessThanAMinute=menos de um minuto licensingError=Erro de licença licenseHasExpired=A licença para {1} expirou em {2}. Carregar aqui. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=A licença para {1} expira em {2}. Carregar aqui. lineJumps=Line jumps linkAccountRequired=Se o diagrama não é público é necessário ter uma conta no Google para ver o link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_ro.txt b/src/main/webapp/resources/dia_ro.txt index 117a6524..ab824000 100644 --- a/src/main/webapp/resources/dia_ro.txt +++ b/src/main/webapp/resources/dia_ro.txt @@ -428,6 +428,7 @@ lastChange=Ultima modificare cu {1} în urmă lessThanAMinute=mai puţin de un minut licensingError=Eroare la licențiere licenseHasExpired=Licența pentru {1} a expirat pe {2}, Apăsați aici. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Licența pentru {1} va expira pe {2}, Apăsați aici. lineJumps=Line jumps linkAccountRequired=Dacă diagrama nu este public, un cont Google este necesar pentru a deschide acest link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_ru.txt b/src/main/webapp/resources/dia_ru.txt index 466d5acb..afbf0fca 100644 --- a/src/main/webapp/resources/dia_ru.txt +++ b/src/main/webapp/resources/dia_ru.txt @@ -428,6 +428,7 @@ lastChange=Последнее изменение {1} назад lessThanAMinute=меньше минуты licensingError=Ошибка лицензирования licenseHasExpired=Лицензия на {1} истекла {2}. Нажмите здесь. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Лицензия на {1} истекает {2}. Нажмите здесь. lineJumps=Line jumps linkAccountRequired=Если диаграмма не доступна для общего доступа, для просмотра понадобится войти в учетную запись Google. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_si.txt b/src/main/webapp/resources/dia_si.txt index e3ee665d..5430e581 100644 --- a/src/main/webapp/resources/dia_si.txt +++ b/src/main/webapp/resources/dia_si.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_sk.txt b/src/main/webapp/resources/dia_sk.txt index d08ab04e..4f635719 100644 --- a/src/main/webapp/resources/dia_sk.txt +++ b/src/main/webapp/resources/dia_sk.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_sl.txt b/src/main/webapp/resources/dia_sl.txt index 239a8f60..9520d3b3 100644 --- a/src/main/webapp/resources/dia_sl.txt +++ b/src/main/webapp/resources/dia_sl.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_sr.txt b/src/main/webapp/resources/dia_sr.txt index 81574150..e3efb292 100644 --- a/src/main/webapp/resources/dia_sr.txt +++ b/src/main/webapp/resources/dia_sr.txt @@ -428,6 +428,7 @@ lastChange=Poslednja promena pre {1} lessThanAMinute=manje od minut licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_sv.txt b/src/main/webapp/resources/dia_sv.txt index ecd83ec9..c0fff944 100644 --- a/src/main/webapp/resources/dia_sv.txt +++ b/src/main/webapp/resources/dia_sv.txt @@ -428,6 +428,7 @@ lastChange=Senaste ändring {1} sedan lessThanAMinute=mindre än en minut licensingError=Ett fel uppstod med licensen licenseHasExpired=Licensen för {1} utgick den {2}. Klicka här. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Licensen för {1} kommer utgå den {2}. Klicka här. lineJumps=Line jumps linkAccountRequired=Om inte diagrammet är offentligt krävs ett Googlekonto för att visa länken. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_sw.txt b/src/main/webapp/resources/dia_sw.txt index 621702cd..42e60374 100644 --- a/src/main/webapp/resources/dia_sw.txt +++ b/src/main/webapp/resources/dia_sw.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_ta.txt b/src/main/webapp/resources/dia_ta.txt index e720cc10..54a28092 100644 --- a/src/main/webapp/resources/dia_ta.txt +++ b/src/main/webapp/resources/dia_ta.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_te.txt b/src/main/webapp/resources/dia_te.txt index 532fffe5..55d83c2b 100644 --- a/src/main/webapp/resources/dia_te.txt +++ b/src/main/webapp/resources/dia_te.txt @@ -428,6 +428,7 @@ lastChange=Last change {1} ago lessThanAMinute=less than a minute licensingError=Licensing Error licenseHasExpired=The license for {1} has expired on {2}. Click here. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=The license for {1} will expire on {2}. Click here. lineJumps=Line jumps linkAccountRequired=If the diagram is not public a Google account is required to view the link. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_th.txt b/src/main/webapp/resources/dia_th.txt index 7764c071..4fa9805a 100644 --- a/src/main/webapp/resources/dia_th.txt +++ b/src/main/webapp/resources/dia_th.txt @@ -428,6 +428,7 @@ lastChange=การเปลี่ยนแปลงครั้งสุดท lessThanAMinute=น้อยกว่าหนึ่งนาที licensingError=ข้อผิดพลาดในการให้สิทธิ์ licenseHasExpired=ใบอนุญาตของ {1} หมดอายุแล้วเมื่อ {2} คลิกที่นี่ +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=ใบอนุุญาตของ {1} จะหมดอายุเมื่อ {2} คลิกที่นี่ lineJumps=Line jumps linkAccountRequired=หากแผนภาพไม่ได้เป็นสาธารณะต้องใช้บัญชี Google เพื่อดูลิงก์ @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_tr.txt b/src/main/webapp/resources/dia_tr.txt index e2f49c43..6da56f60 100644 --- a/src/main/webapp/resources/dia_tr.txt +++ b/src/main/webapp/resources/dia_tr.txt @@ -428,6 +428,7 @@ lastChange=Son değişiklik {1} önce lessThanAMinute=bir dakikadan az licensingError=Lisans hatası licenseHasExpired={1} için olan lisans {2} tarihinde sona ermiştir. Buraya tıklayınız. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire={1} için olan lisans {2} tarihinde sona erecektir. Buraya tıklayınız. lineJumps=Line jumps linkAccountRequired=Eğer diyagram herkese açık değilse, linki görmek için bir google hesabına gerek vardır @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_uk.txt b/src/main/webapp/resources/dia_uk.txt index 1ff3d175..17efec54 100644 --- a/src/main/webapp/resources/dia_uk.txt +++ b/src/main/webapp/resources/dia_uk.txt @@ -428,6 +428,7 @@ lastChange=Остання зміна {1} тому lessThanAMinute=менше хвилини licensingError=Помилка дозволу використання licenseHasExpired=Строк дії дозволу на використання {1} завершено {2}. Кляцніть тут. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Строк дії дозволу на використання {1} буде завершено {2}. Кляцніть тут. lineJumps=Стрибки рядків linkAccountRequired=Якщо діаграма не є доступною усім, для перегляду посилання мусите увійти до обліківки Google. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_vi.txt b/src/main/webapp/resources/dia_vi.txt index 19cefbde..327f88dd 100644 --- a/src/main/webapp/resources/dia_vi.txt +++ b/src/main/webapp/resources/dia_vi.txt @@ -428,6 +428,7 @@ lastChange=Thay đổi lần cuối {1} trước lessThanAMinute=ít hơn một phút licensingError=Lỗi cấp phép licenseHasExpired=Giấy phép của {1} đã hết hạn vào {2}. Nhấn vào đây. +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire=Giấy phép của {1} sẽ hết hạn vào {2}. Nhấn vào đây. lineJumps=Line jumps linkAccountRequired=Nếu một biểu đồ không được công khai, bạn cần một tài khoản Google để xem liên kết. @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_zh-tw.txt b/src/main/webapp/resources/dia_zh-tw.txt index b97fc6e8..2eb4a309 100644 --- a/src/main/webapp/resources/dia_zh-tw.txt +++ b/src/main/webapp/resources/dia_zh-tw.txt @@ -428,6 +428,7 @@ lastChange=最後一次修改:{1}之前 lessThanAMinute=一分鐘內 licensingError=授權出錯 licenseHasExpired={1}的授權已在{2}過期。請點擊這裡。 +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire={1}的授權將在{2}過期。請點擊這裡。 lineJumps=Line jumps linkAccountRequired=如果圖表非公開,則需要Google帳戶才能查看該連結。 @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/resources/dia_zh.txt b/src/main/webapp/resources/dia_zh.txt index 8ebc5e59..d037ba49 100644 --- a/src/main/webapp/resources/dia_zh.txt +++ b/src/main/webapp/resources/dia_zh.txt @@ -428,6 +428,7 @@ lastChange={1}以前最新更改 lessThanAMinute=一分钟以内 licensingError=授权出错 licenseHasExpired={1} 的许可证已于 {2} 过期。请点击此处。 +licenseRequired=This feature requires draw.io to be licensed. licenseWillExpire={1} 的许可证将于 {2} 过期。请点击此处。 lineJumps=跨线 linkAccountRequired=如果绘图未公开,则需要提供谷歌账户才能查看该链接。 @@ -1041,3 +1042,4 @@ diagNameEmptyErr=Diagram name cannot be empty openDiagram=Open Diagram newDiagram=New diagram editable=Editable +confAReimportStarted=Re-import {1} diagrams started... diff --git a/src/main/webapp/service-worker.js b/src/main/webapp/service-worker.js index 14e45a2b..97cc5e62 100644 --- a/src/main/webapp/service-worker.js +++ b/src/main/webapp/service-worker.js @@ -6,11 +6,11 @@ if (workbox) workbox.precaching.precacheAndRoute([ { "url": "js/app.min.js", - "revision": "df4ec31625b95fa594bc1d8f0d2f5026" + "revision": "3e50dacb5bb77762c4c4d7b60a64b42a" }, { "url": "js/extensions.min.js", - "revision": "c5155bc5ffd607a3f10494215ebfd1a5" + "revision": "f6ef0ecfaec19207c9055321a022eb0b" }, { "url": "js/stencils.min.js", @@ -58,7 +58,7 @@ if (workbox) }, { "url": "js/viewer-static.min.js", - "revision": "f8324f76a07981fb87021057d2660238" + "revision": "263fa2266c897727106c9566926b95fc" }, { "url": "connect/jira/editor-1-3-3.html", @@ -102,7 +102,7 @@ if (workbox) }, { "url": "plugins/cConf-1-4-8.js", - "revision": "5f51c9102e55474da1f3012c011d6191" + "revision": "b90f7c0ca27b5e406b5bf2566711c421" }, { "url": "connect/confluence/connectUtils-1-4-8.js", @@ -138,7 +138,7 @@ if (workbox) }, { "url": "connect/confluence/macro-editor.js", - "revision": "257473ece79f2f7d822a1698699c5479" + "revision": "d9cdbf5e25fa38f36673b1f9d508c6f3" }, { "url": "math/MathJax.js", @@ -174,231 +174,231 @@ if (workbox) }, { "url": "resources/dia.txt", - "revision": "02ad7d4e5e54c75f141fa58d708baddc" + "revision": "11ce4fb81945aac8ba5cfe87c636484b" }, { "url": "resources/dia_am.txt", - "revision": "d3de221973ece1ed5d2e7f9b6fa517a1" + "revision": "d82601393635ec5c2338d18a45a64131" }, { "url": "resources/dia_ar.txt", - "revision": "11e99e1e7ed3bfb8c25621ab776ad548" + "revision": "cfa4e188a4fd194e97b143f0789669bc" }, { "url": "resources/dia_bg.txt", - "revision": "d7983ddec18de990d291f6c0a702c6b4" + "revision": "78c936e02a72ef62a2540a2fb5f12863" }, { "url": "resources/dia_bn.txt", - "revision": "5f3a318445d92d78f088785933bf417b" + "revision": "1f5e17f4a2159adbd1532c55e2e306f1" }, { "url": "resources/dia_bs.txt", - "revision": "cffdc3d2cc4f81d6f658e54ca77899a0" + "revision": "a58f30597790d433b05123a3b8efc56c" }, { "url": "resources/dia_ca.txt", - "revision": "b8d0c773ddeb3ac742f89b73de69f28a" + "revision": "6f279dc0dd3f2ee3d8abd539c6137068" }, { "url": "resources/dia_cs.txt", - "revision": "be70129f8b92e2acdea02a08aab9758d" + "revision": "60face218e728f50553899e41b53baba" }, { "url": "resources/dia_da.txt", - "revision": "bc644e489d8e1be68675b1472921d6a4" + "revision": "430ee9cbd0048a4f6feda522d53db0da" }, { "url": "resources/dia_de.txt", - "revision": "cb1b8ca04c6335a7be7fd8299222615f" + "revision": "16bdea754bf2db930bf1c775355f57cc" }, { "url": "resources/dia_el.txt", - "revision": "a4644f9e58c25fd73d03ec20cd36cc6a" + "revision": "9d220a1c596d4f1a54f3639afdf28c40" }, { "url": "resources/dia_eo.txt", - "revision": "65b4fce7a984fd1ed636d131b024e5bc" + "revision": "d6a69efd9b04f58ab2b0a24066870cc2" }, { "url": "resources/dia_es.txt", - "revision": "4749e807ad9ce2a040ffb49642bca64a" + "revision": "481d3fdba9ff6b33e16d39896a724ec5" }, { "url": "resources/dia_et.txt", - "revision": "fe4b7a57bbbf878bb95240672ed68ad8" + "revision": "b93ae1409a2d38cd4d3bdbd1637f8c30" }, { "url": "resources/dia_eu.txt", - "revision": "de772ff6f60611da3974a147b3362978" + "revision": "b2b37273f96ea41cca07d9aad17822c1" }, { "url": "resources/dia_fa.txt", - "revision": "58c1de889c587d3c37505e2364d409aa" + "revision": "c22528b486423408cc07401318e26fb2" }, { "url": "resources/dia_fi.txt", - "revision": "322085c1cf30660a636177f06d600976" + "revision": "7f08b31037759597e376a30372c98e00" }, { "url": "resources/dia_fil.txt", - "revision": "bedc08a4ecb27fe25a2dfac7fe637bef" + "revision": "7273262b24526ee424806999f2260809" }, { "url": "resources/dia_fr.txt", - "revision": "9266b4850159d6875071c245d8b2a9e7" + "revision": "3809916bd5e9ae58c021edd43896299d" }, { "url": "resources/dia_gl.txt", - "revision": "ad7ae57736c6a488d179c92237bd2d9d" + "revision": "c1d448a5ba0aa8cc7df3de0c58e4e249" }, { "url": "resources/dia_gu.txt", - "revision": "8b157e7e5bb87eec37d34c790f76d0cb" + "revision": "6f1108b9ecac74fb63530726902f8911" }, { "url": "resources/dia_he.txt", - "revision": "19a782a83856e1b7fd9cebc8475cdcf5" + "revision": "fcd7c301da2c927d9ab6f2c1a6701a33" }, { "url": "resources/dia_hi.txt", - "revision": "4c42580d4874a1b0a2c46e386ae4310f" + "revision": "077402a9dfc0360cd60adc18e595224a" }, { "url": "resources/dia_hr.txt", - "revision": "577da4069bb12fdeb169fb59a928db6f" + "revision": "6474da2abd1cd6339fd8d29079806175" }, { "url": "resources/dia_hu.txt", - "revision": "dc3c73f6c51ff4248f7c4d9eee05763f" + "revision": "b6302d571f30135c8bd9e0bf867ca393" }, { "url": "resources/dia_id.txt", - "revision": "680d8c96bde54dc08919e9608fd38866" + "revision": "c76489584f18c793c79e90d3612a615f" }, { "url": "resources/dia_it.txt", - "revision": "7f16d4ce9120b6cf379d8a158e58fb3f" + "revision": "53a7356fe2395f181df9c73f1ec166b6" }, { "url": "resources/dia_ja.txt", - "revision": "8bd638a87b2bd3f0214fd5a15ce0f642" + "revision": "e103221b9fcdb3705388982cb293fc38" }, { "url": "resources/dia_kn.txt", - "revision": "b7bbfdc941bb18c38cfad5ebd97065ac" + "revision": "77887c8129a07d7a7da1428e0a86a4c6" }, { "url": "resources/dia_ko.txt", - "revision": "63f9e5d20045f7c8ab5f7b319ee7728c" + "revision": "fcaf1cc3f235374b84116d7adcaaa024" }, { "url": "resources/dia_lt.txt", - "revision": "6447ae31ede7b9739856e58057bb4162" + "revision": "d769564ff2954aaa1b0eb832fb20025d" }, { "url": "resources/dia_lv.txt", - "revision": "d404caf0e89158a589988f6707e35335" + "revision": "51cf65539e82fe59ea609f3896bae4da" }, { "url": "resources/dia_ml.txt", - "revision": "5b54f25e874487cc80aeb25ccadaeda9" + "revision": "8455c9e57112ccf5a28b5b508688b9e2" }, { "url": "resources/dia_mr.txt", - "revision": "71ca677d625d5184739105603fa90df5" + "revision": "a6939ffe1cbe2a46594b6eefd3fd1e57" }, { "url": "resources/dia_ms.txt", - "revision": "53193aa4383e57d07951cc6df586b6f4" + "revision": "04b8e980fed6a6492c9c3add33d8dd6e" }, { "url": "resources/dia_my.txt", - "revision": "02ad7d4e5e54c75f141fa58d708baddc" + "revision": "11ce4fb81945aac8ba5cfe87c636484b" }, { "url": "resources/dia_nl.txt", - "revision": "12271a094d66fe1f7b9bfcede9df8046" + "revision": "24be82440c05edd53abb926ab8b829e1" }, { "url": "resources/dia_no.txt", - "revision": "8352587bbd8ea6561c3f3f1936469291" + "revision": "c259a6aa90082500a5310b09df2fdc05" }, { "url": "resources/dia_pl.txt", - "revision": "c7a7dcb8c10b02afb46ef2f716412fce" + "revision": "effbf8b2a186bdc6fcc5a405c53f362a" }, { "url": "resources/dia_pt-br.txt", - "revision": "a24e0dc956408b447a9a0e292f977dba" + "revision": "f0dbd356697853263f0a21fbc06290a2" }, { "url": "resources/dia_pt.txt", - "revision": "9793914165038f718bbbdd94cd68006c" + "revision": "0f29bda3beed56de8d1da91769e50755" }, { "url": "resources/dia_ro.txt", - "revision": "2f66710ab60f9c02f6f3a8ac2cfb616c" + "revision": "1286fb97d37883aaca0c585e11d1f956" }, { "url": "resources/dia_ru.txt", - "revision": "f70d8af3b7767a9d50d48992e792a9ec" + "revision": "0febeab0c72b73ba00ce9ce9cb84cdc2" }, { "url": "resources/dia_si.txt", - "revision": "02ad7d4e5e54c75f141fa58d708baddc" + "revision": "11ce4fb81945aac8ba5cfe87c636484b" }, { "url": "resources/dia_sk.txt", - "revision": "cc037fa952e7f24c40cbdc394d3ad0e2" + "revision": "bcecb590101b79d332104e56709be0d4" }, { "url": "resources/dia_sl.txt", - "revision": "f6871254c6c7d95710b20021ba1b82b6" + "revision": "4683b272d388c3a7c04815edf4d36201" }, { "url": "resources/dia_sr.txt", - "revision": "644ee5f2a31ce0194dbaf9b24ee3cd33" + "revision": "fb469c24f2f64f7e614315fba0f3f291" }, { "url": "resources/dia_sv.txt", - "revision": "33f3547ef3692ee2ca82be94e707d6a5" + "revision": "3ca92e418fac9fbc5ea73430821b5d93" }, { "url": "resources/dia_sw.txt", - "revision": "6f446b25b897c02a9b4673672bc99705" + "revision": "fb94bf63129398898e207bb3ac7feecf" }, { "url": "resources/dia_ta.txt", - "revision": "66431dc060c64a43bda9c949d855a128" + "revision": "e369a464b893711206e1c6c30e3b07be" }, { "url": "resources/dia_te.txt", - "revision": "aed7c53f75da87064eefe1da9e920951" + "revision": "3a411f6a3168525bf7f2a9443fda2411" }, { "url": "resources/dia_th.txt", - "revision": "7495b746fa3cdccfdbb162089bd6b794" + "revision": "856a7e0ad35fa1120cdf608e3f2962ac" }, { "url": "resources/dia_tr.txt", - "revision": "e443d749d38196914d34736b71e971ec" + "revision": "e8322c5f6b5cfb87400869d28989583c" }, { "url": "resources/dia_uk.txt", - "revision": "6021b4f6908ba4f2bf856e45281654c7" + "revision": "f8bb4ba327192673807e944b8148adb7" }, { "url": "resources/dia_vi.txt", - "revision": "7c2fe2a2590364e755772bd9c8d0259e" + "revision": "e8cca2cb94315a9d8b7172370d69e47a" }, { "url": "resources/dia_zh-tw.txt", - "revision": "6206ce07f81460667ea68825742d7aae" + "revision": "80ffe4fc5b7d90334a33376970ea480b" }, { "url": "resources/dia_zh.txt", - "revision": "7c2915f7e832f8c77d1d95bde0490131" + "revision": "09ff14b1ad4834b60433e7191abe10b2" }, { "url": "favicon.ico",