From 916290d3e8c9650f040ef76fb9da66fc9899ce16 Mon Sep 17 00:00:00 2001 From: "David Benson [draw.io]" Date: Wed, 16 Sep 2020 17:45:10 +0100 Subject: [PATCH] 13.7.2 release --- ChangeLog | 8 + VERSION | 2 +- src/main/webapp/electron.js | 49 +- src/main/webapp/js/app.min.js | 1046 ++++++------ src/main/webapp/js/diagramly/App.js | 4 +- src/main/webapp/js/diagramly/Editor.js | 4 +- src/main/webapp/js/diagramly/EditorUi.js | 6 + src/main/webapp/js/diagramly/ElectronApp.js | 66 +- src/main/webapp/js/diagramly/GraphViewer.js | 120 +- src/main/webapp/js/diagramly/Menus.js | 59 +- .../webapp/js/diagramly/OneDriveClient.js | 219 ++- src/main/webapp/js/mxgraph/Graph.js | 2 + src/main/webapp/js/viewer-static.min.js | 1427 +++++++++-------- src/main/webapp/js/viewer.min.js | 1427 +++++++++-------- src/main/webapp/service-worker.js | 2 +- 15 files changed, 2376 insertions(+), 2065 deletions(-) diff --git a/ChangeLog b/ChangeLog index 85fee647ec..d2ccd367c6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +16-SEP-2020: 13.7.2 + +- Removes PWA on draw.io domains + +14-SEP-2020: 13.7.1 + +- Improves Gliffy import + 14-SEP-2020: 13.7.0 - Adds conf cloud change notifications for collab diff --git a/VERSION b/VERSION index 506ade15ec..4ed0bdb871 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -13.7.0 \ No newline at end of file +13.7.2 \ No newline at end of file diff --git a/src/main/webapp/electron.js b/src/main/webapp/electron.js index 34eeb14f63..b4548a273a 100644 --- a/src/main/webapp/electron.js +++ b/src/main/webapp/electron.js @@ -29,6 +29,39 @@ let cmdQPressed = false let firstWinLoaded = false let firstWinFilePath = null +//Read config file +var queryObj = { + 'dev': __DEV__ ? 1 : 0, + 'test': __DEV__ ? 1 : 0, + 'gapi': 0, + 'db': 0, + 'od': 0, + 'gh': 0, + 'gl': 0, + 'tr': 0, + 'browser': 0, + 'picker': 0, + 'mode': 'device', + 'export': 'https://exp.draw.io/ImageExport4/export' +}; + +try +{ + if (fs.existsSync(process.cwd() + '/urlParams.json')) + { + let urlParams = JSON.parse(fs.readFileSync(process.cwd() + '/urlParams.json')); + + for (var param in urlParams) + { + queryObj[param] = urlParams[param]; + } + } +} +catch(e) +{ + console.log('Error in urlParams.json file: ' + e.message); +} + function createWindow (opt = {}) { let options = Object.assign( @@ -57,21 +90,7 @@ function createWindow (opt = {}) { pathname: `${__dirname}/index.html`, protocol: 'file:', - query: - { - 'dev': __DEV__ ? 1 : 0, - 'test': __DEV__ ? 1 : 0, - 'gapi': 0, - 'db': 0, - 'od': 0, - 'gh': 0, - 'gl': 0, - 'tr': 0, - 'browser': 0, - 'picker': 0, - 'mode': 'device', - 'export': 'https://exp.draw.io/ImageExport4/export' - }, + query: queryObj, slashes: true }) diff --git a/src/main/webapp/js/app.min.js b/src/main/webapp/js/app.min.js index c8633cb492..ba8d379a46 100644 --- a/src/main/webapp/js/app.min.js +++ b/src/main/webapp/js/app.min.js @@ -9247,9 +9247,9 @@ DrawioFile.prototype.data=null;DrawioFile.prototype.shadowData=null;DrawioFile.p DrawioFile.prototype.synchronizeFile=function(a,e){this.savingFile?null!=e&&e({message:mxResources.get("busy")}):null!=this.sync?this.sync.fileChanged(a,e):this.updateFile(a,e)}; DrawioFile.prototype.updateFile=function(a,e,c,b){null!=c&&c()||(this.ui.getCurrentFile()!=this||this.invalidChecksum?null!=e&&e():this.getLatestVersion(mxUtils.bind(this,function(g){try{null!=c&&c()||(this.ui.getCurrentFile()!=this||this.invalidChecksum?null!=e&&e():null!=g?this.mergeFile(g,a,e,b):this.reloadFile(a,e))}catch(f){null!=e&&e(f)}}),e))}; DrawioFile.prototype.mergeFile=function(a,e,c,b){var g=!0;try{this.stats.fileMerged++;var f=null!=this.shadowPages?this.shadowPages:this.ui.getPagesForNode(mxUtils.parseXml(this.shadowData).documentElement),l=this.ui.getPagesForNode(mxUtils.parseXml(a.data).documentElement);if(null!=l&&0c?a=a.substring(0,c)+"[...]":null!=a&&a.length>e&&(a=Graph.compress(a)+"\n");return a}; DrawioFile.prototype.checksumError=function(a,e,c,b,g){this.stats.checksumErrors++;this.invalidChecksum=this.inConflictState=!0;this.descriptorChanged();null!=this.sync&&this.sync.updateOnlineState();null!=a&&a();try{if(this.errorReportsEnabled){if(null!=e)for(a=0;ac&&(mxUtils.br(n),l=0);var p=document.createElement("a");p.style.overflow="hidden";p.style.display=mxClient.IS_QUIRKS?"inline":"inline-block";p.className="geBaseButton";p.style.boxSizing="border-box";p.style.fontSize="11px";p.style.position="relative";p.style.margin="4px";p.style.marginTop="8px";p.style.marginBottom="0px";p.style.padding="8px 10px 8px 10px";p.style.width="88px";p.style.height="100px";p.style.whiteSpace= "nowrap";p.setAttribute("title",k);mxClient.IS_QUIRKS&&(p.style.cssFloat="left",p.style.zoom="1");var q=document.createElement("div");q.style.textOverflow="ellipsis";q.style.overflow="hidden";q.style.position="absolute";q.style.bottom="8px";q.style.left="0px";q.style.right="0px";mxUtils.write(q,k);p.appendChild(q);if(null!=b){var u=document.createElement("img");u.setAttribute("src",b);u.setAttribute("border","0");u.setAttribute("align","absmiddle");u.style.width="60px";u.style.height="60px";u.style.paddingBottom= -"6px";p.appendChild(u)}else q.style.paddingTop="5px",q.style.whiteSpace="normal",mxClient.IS_IOS?(p.style.padding="0px 10px 20px 10px",p.style.top="6px"):mxClient.IS_FF&&(q.style.paddingTop="0px",q.style.marginTop="-2px");if(null!=t)for(b=0;b"),l.setAttribute("disabled","disabled"),u.appendChild(l);l=document.createElement("option");mxUtils.write(l,mxResources.get("addAccount"));l.value= -p.length;u.appendChild(l);mxEvent.addListener(u,"change",function(){var d=u.value,b=p.length!=d;b&&a.drive.setUser(p[d]);a.drive.authorize(b,function(){a.setMode(App.MODE_GOOGLE);a.hideDialog();a.showSplash()},function(d){a.handleError(d,null,function(){a.hideDialog();a.showSplash()})},!0)});g.appendChild(u)}else c(function(){a.drive.logout()})}else a.mode==App.MODE_ONEDRIVE&&null!=a.oneDrive?c(function(){a.oneDrive.logout()}):a.mode==App.MODE_GITHUB&&null!=a.gitHub?c(function(){a.gitHub.logout(); +"16px";g.style.paddingBottom="18px";g.appendChild(b);var q=document.createElement("select");q.style.marginLeft="4px";q.style.width="140px";for(c=0;c"),l.setAttribute("disabled","disabled"),q.appendChild(l);l=document.createElement("option");mxUtils.write(l,mxResources.get("addAccount"));l.value= +p.length;q.appendChild(l);mxEvent.addListener(q,"change",function(){var d=q.value,b=p.length!=d;b&&a.drive.setUser(p[d]);a.drive.authorize(b,function(){a.setMode(App.MODE_GOOGLE);a.hideDialog();a.showSplash()},function(d){a.handleError(d,null,function(){a.hideDialog();a.showSplash()})},!0)});g.appendChild(q)}else c(function(){a.drive.logout()})}else a.mode==App.MODE_ONEDRIVE&&null!=a.oneDrive?c(function(){a.oneDrive.logout()}):a.mode==App.MODE_GITHUB&&null!=a.gitHub?c(function(){a.gitHub.logout(); a.openLink("https://www.github.com/logout")}):a.mode==App.MODE_GITLAB&&null!=a.gitLab?c(function(){a.gitLab.logout();a.openLink(DRAWIO_GITLAB_URL+"/users/sign_out")}):a.mode==App.MODE_TRELLO&&null!=a.trello?a.trello.isAuthorized()&&c(function(){a.trello.logout()}):a.mode==App.MODE_DROPBOX&&null!=a.dropbox&&c(function(){a.dropbox.logout();a.openLink("https://www.dropbox.com/logout")});e.appendChild(g);this.container=e},EmbedDialog=function(a,e,c,b,g,f,l){l=null!=l?l:"Check out the diagram I made using @drawio"; b=document.createElement("div");var n=/^https?:\/\//.test(e)||/^mailto:\/\//.test(e);null!=f?mxUtils.write(b,f):mxUtils.write(b,mxResources.get(5E5>e.length?n?"link":"mainEmbedNotice":"preview")+":");mxUtils.br(b);f=document.createElement("div");f.style.position="absolute";f.style.top="30px";f.style.right="30px";f.style.color="gray";mxUtils.write(f,a.formatFileSize(e.length));b.appendChild(f);var d=document.createElement("textarea");d.setAttribute("autocomplete","off");d.setAttribute("autocorrect", "off");d.setAttribute("autocapitalize","off");d.setAttribute("spellcheck","false");d.style.fontFamily="monospace";d.style.wordBreak="break-all";d.style.marginTop="10px";d.style.resize="none";d.style.height="150px";d.style.width="440px";d.style.border="1px solid gray";d.value=mxResources.get("updatingDocument");b.appendChild(d);mxUtils.br(b);this.init=function(){window.setTimeout(function(){5E5>e.length?(d.value=e,d.focus(),mxClient.IS_GC||mxClient.IS_FF||5<=document.documentMode||mxClient.IS_QUIRKS? d.select():document.execCommand("selectAll",!1,null)):(d.setAttribute("readonly","true"),d.value=mxResources.get("tooLargeUseDownload"))},0)};f=document.createElement("div");f.style.position="absolute";f.style.bottom="36px";f.style.right="32px";var k=null;!EmbedDialog.showPreviewOption||mxClient.IS_CHROMEAPP&&!n||navigator.standalone||!(n||mxClient.IS_SVG&&(null==document.documentMode||9e.length?"preview":"openInNewWindow"),function(){var b= 5E5>e.length?d.value:e;if(null!=g)g(b);else if(n)try{var k=a.openLink(b);null!=k&&(null==c||0"+encodeURIComponent(mxResources.get("preview"))+ ''+e+""),m.close()):a.handleError({message:mxResources.get("errorUpdatingPreview")})}}),k.className="geBtn",f.appendChild(k));if(!n||7500e.length){var p=mxUtils.button("",function(){try{var b="https://www.facebook.com/sharer.php?p[url]="+ -encodeURIComponent(d.value);a.openLink(b)}catch(q){a.handleError({message:q.message||mxResources.get("drawingTooLarge")})}}),m=document.createElement("img");m.setAttribute("src",Editor.facebookImage);m.setAttribute("width","18");m.setAttribute("height","18");m.setAttribute("border","0");p.appendChild(m);p.setAttribute("title",mxResources.get("facebook")+" ("+a.formatFileSize(51200)+" max)");p.style.verticalAlign="bottom";p.style.paddingTop="4px";p.style.minWidth="46px";p.className="geBtn";f.appendChild(p)}7168> -e.length&&(p=mxUtils.button("",function(){try{var b="https://twitter.com/intent/tweet?text="+encodeURIComponent(l)+"&url="+encodeURIComponent(d.value);a.openLink(b)}catch(q){a.handleError({message:q.message||mxResources.get("drawingTooLarge")})}}),m=document.createElement("img"),m.setAttribute("src",Editor.tweetImage),m.setAttribute("width","18"),m.setAttribute("height","18"),m.setAttribute("border","0"),m.style.marginBottom="5px",p.appendChild(m),p.setAttribute("title",mxResources.get("twitter")+ +encodeURIComponent(d.value);a.openLink(b)}catch(u){a.handleError({message:u.message||mxResources.get("drawingTooLarge")})}}),m=document.createElement("img");m.setAttribute("src",Editor.facebookImage);m.setAttribute("width","18");m.setAttribute("height","18");m.setAttribute("border","0");p.appendChild(m);p.setAttribute("title",mxResources.get("facebook")+" ("+a.formatFileSize(51200)+" max)");p.style.verticalAlign="bottom";p.style.paddingTop="4px";p.style.minWidth="46px";p.className="geBtn";f.appendChild(p)}7168> +e.length&&(p=mxUtils.button("",function(){try{var b="https://twitter.com/intent/tweet?text="+encodeURIComponent(l)+"&url="+encodeURIComponent(d.value);a.openLink(b)}catch(u){a.handleError({message:u.message||mxResources.get("drawingTooLarge")})}}),m=document.createElement("img"),m.setAttribute("src",Editor.tweetImage),m.setAttribute("width","18"),m.setAttribute("height","18"),m.setAttribute("border","0"),m.style.marginBottom="5px",p.appendChild(m),p.setAttribute("title",mxResources.get("twitter")+ " ("+a.formatFileSize(7168)+" max)"),p.style.verticalAlign="bottom",p.style.paddingTop="4px",p.style.minWidth="46px",p.className="geBtn",f.appendChild(p))}m=mxUtils.button(mxResources.get("close"),function(){a.hideDialog()});f.appendChild(m);p=mxUtils.button(mxResources.get("copy"),function(){d.focus();mxClient.IS_GC||mxClient.IS_FF||5<=document.documentMode||mxClient.IS_QUIRKS?d.select():document.execCommand("selectAll",!1,null);document.execCommand("copy");a.alert(mxResources.get("copiedToClipboard"))}); 5E5>e.length?mxClient.IS_SF||null!=document.documentMode?m.className="geBtn gePrimaryBtn":(f.appendChild(p),p.className="geBtn gePrimaryBtn",m.className="geBtn"):(f.appendChild(k),m.className="geBtn",k.className="geBtn gePrimaryBtn");b.appendChild(f);this.container=b};EmbedDialog.showPreviewOption=!0; -var GoogleSitesDialog=function(a,e){function c(){var a=null!=D&&null!=D.getTitle()?D.getTitle():this.defaultFilename;if(A.checked&&""!=u.value){var b="https://www.draw.io/gadget.xml?type=4&diagram="+encodeURIComponent(mxUtils.htmlEntities(u.value));null!=a&&(b+="&title="+encodeURIComponent(a));0 Bob: Authentication Request\nBob --\x3e Alice: Authentication Response\n\nAlice -> Bob: Another authentication Request\nAlice <-- Bob: Another authentication Response\n@enduml"==d&&"svg"==p?window.setTimeout(function(){a.spinner.stop();k(d,p,"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBjb250ZW50U2NyaXB0VHlwZT0iYXBwbGljYXRpb24vZWNtYXNjcmlwdCIgY29udGVudFN0eWxlVHlwZT0idGV4dC9jc3MiIGhlaWdodD0iMjEycHgiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiIHN0eWxlPSJ3aWR0aDoyOTVweDtoZWlnaHQ6MjEycHg7IiB2ZXJzaW9uPSIxLjEiIHZpZXdCb3g9IjAgMCAyOTUgMjEyIiB3aWR0aD0iMjk1cHgiIHpvb21BbmRQYW49Im1hZ25pZnkiPjxkZWZzLz48Zz48bGluZSBzdHlsZT0ic3Ryb2tlOiAjQTgwMDM2OyBzdHJva2Utd2lkdGg6IDEuMDsgc3Ryb2tlLWRhc2hhcnJheTogNS4wLDUuMDsiIHgxPSIzMSIgeDI9IjMxIiB5MT0iMzQuNDg4MyIgeTI9IjE3MS43MzA1Ii8+PGxpbmUgc3R5bGU9InN0cm9rZTogI0E4MDAzNjsgc3Ryb2tlLXdpZHRoOiAxLjA7IHN0cm9rZS1kYXNoYXJyYXk6IDUuMCw1LjA7IiB4MT0iMjY0LjUiIHgyPSIyNjQuNSIgeTE9IjM0LjQ4ODMiIHkyPSIxNzEuNzMwNSIvPjxyZWN0IGZpbGw9IiNGRUZFQ0UiIGhlaWdodD0iMzAuNDg4MyIgc3R5bGU9InN0cm9rZTogI0E4MDAzNjsgc3Ryb2tlLXdpZHRoOiAxLjU7IiB3aWR0aD0iNDciIHg9IjgiIHk9IjMiLz48dGV4dCBmaWxsPSIjMDAwMDAwIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiIgZm9udC1zaXplPSIxNCIgbGVuZ3RoQWRqdXN0PSJzcGFjaW5nQW5kR2x5cGhzIiB0ZXh0TGVuZ3RoPSIzMyIgeD0iMTUiIHk9IjIzLjUzNTIiPkFsaWNlPC90ZXh0PjxyZWN0IGZpbGw9IiNGRUZFQ0UiIGhlaWdodD0iMzAuNDg4MyIgc3R5bGU9InN0cm9rZTogI0E4MDAzNjsgc3Ryb2tlLXdpZHRoOiAxLjU7IiB3aWR0aD0iNDciIHg9IjgiIHk9IjE3MC43MzA1Ii8+PHRleHQgZmlsbD0iIzAwMDAwMCIgZm9udC1mYW1pbHk9InNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTQiIGxlbmd0aEFkanVzdD0ic3BhY2luZ0FuZEdseXBocyIgdGV4dExlbmd0aD0iMzMiIHg9IjE1IiB5PSIxOTEuMjY1NiI+QWxpY2U8L3RleHQ+PHJlY3QgZmlsbD0iI0ZFRkVDRSIgaGVpZ2h0PSIzMC40ODgzIiBzdHlsZT0ic3Ryb2tlOiAjQTgwMDM2OyBzdHJva2Utd2lkdGg6IDEuNTsiIHdpZHRoPSI0MCIgeD0iMjQ0LjUiIHk9IjMiLz48dGV4dCBmaWxsPSIjMDAwMDAwIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiIgZm9udC1zaXplPSIxNCIgbGVuZ3RoQWRqdXN0PSJzcGFjaW5nQW5kR2x5cGhzIiB0ZXh0TGVuZ3RoPSIyNiIgeD0iMjUxLjUiIHk9IjIzLjUzNTIiPkJvYjwvdGV4dD48cmVjdCBmaWxsPSIjRkVGRUNFIiBoZWlnaHQ9IjMwLjQ4ODMiIHN0eWxlPSJzdHJva2U6ICNBODAwMzY7IHN0cm9rZS13aWR0aDogMS41OyIgd2lkdGg9IjQwIiB4PSIyNDQuNSIgeT0iMTcwLjczMDUiLz48dGV4dCBmaWxsPSIjMDAwMDAwIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiIgZm9udC1zaXplPSIxNCIgbGVuZ3RoQWRqdXN0PSJzcGFjaW5nQW5kR2x5cGhzIiB0ZXh0TGVuZ3RoPSIyNiIgeD0iMjUxLjUiIHk9IjE5MS4yNjU2Ij5Cb2I8L3RleHQ+PHBvbHlnb24gZmlsbD0iI0E4MDAzNiIgcG9pbnRzPSIyNTIuNSw2MS43OTg4LDI2Mi41LDY1Ljc5ODgsMjUyLjUsNjkuNzk4OCwyNTYuNSw2NS43OTg4IiBzdHlsZT0ic3Ryb2tlOiAjQTgwMDM2OyBzdHJva2Utd2lkdGg6IDEuMDsiLz48bGluZSBzdHlsZT0ic3Ryb2tlOiAjQTgwMDM2OyBzdHJva2Utd2lkdGg6IDEuMDsiIHgxPSIzMS41IiB4Mj0iMjU4LjUiIHkxPSI2NS43OTg4IiB5Mj0iNjUuNzk4OCIvPjx0ZXh0IGZpbGw9IiMwMDAwMDAiIGZvbnQtZmFtaWx5PSJzYW5zLXNlcmlmIiBmb250LXNpemU9IjEzIiBsZW5ndGhBZGp1c3Q9InNwYWNpbmdBbmRHbHlwaHMiIHRleHRMZW5ndGg9IjE0NyIgeD0iMzguNSIgeT0iNjEuMDU2NiI+QXV0aGVudGljYXRpb24gUmVxdWVzdDwvdGV4dD48cG9seWdvbiBmaWxsPSIjQTgwMDM2IiBwb2ludHM9IjQyLjUsOTEuMTA5NCwzMi41LDk1LjEwOTQsNDIuNSw5OS4xMDk0LDM4LjUsOTUuMTA5NCIgc3R5bGU9InN0cm9rZTogI0E4MDAzNjsgc3Ryb2tlLXdpZHRoOiAxLjA7Ii8+PGxpbmUgc3R5bGU9InN0cm9rZTogI0E4MDAzNjsgc3Ryb2tlLXdpZHRoOiAxLjA7IHN0cm9rZS1kYXNoYXJyYXk6IDIuMCwyLjA7IiB4MT0iMzYuNSIgeDI9IjI2My41IiB5MT0iOTUuMTA5NCIgeTI9Ijk1LjEwOTQiLz48dGV4dCBmaWxsPSIjMDAwMDAwIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiIgZm9udC1zaXplPSIxMyIgbGVuZ3RoQWRqdXN0PSJzcGFjaW5nQW5kR2x5cGhzIiB0ZXh0TGVuZ3RoPSIxNTciIHg9IjQ4LjUiIHk9IjkwLjM2NzIiPkF1dGhlbnRpY2F0aW9uIFJlc3BvbnNlPC90ZXh0Pjxwb2x5Z29uIGZpbGw9IiNBODAwMzYiIHBvaW50cz0iMjUyLjUsMTIwLjQxOTksMjYyLjUsMTI0LjQxOTksMjUyLjUsMTI4LjQxOTksMjU2LjUsMTI0LjQxOTkiIHN0eWxlPSJzdHJva2U6ICNBODAwMzY7IHN0cm9rZS13aWR0aDogMS4wOyIvPjxsaW5lIHN0eWxlPSJzdHJva2U6ICNBODAwMzY7IHN0cm9rZS13aWR0aDogMS4wOyIgeDE9IjMxLjUiIHgyPSIyNTguNSIgeTE9IjEyNC40MTk5IiB5Mj0iMTI0LjQxOTkiLz48dGV4dCBmaWxsPSIjMDAwMDAwIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiIgZm9udC1zaXplPSIxMyIgbGVuZ3RoQWRqdXN0PSJzcGFjaW5nQW5kR2x5cGhzIiB0ZXh0TGVuZ3RoPSIxOTkiIHg9IjM4LjUiIHk9IjExOS42Nzc3Ij5Bbm90aGVyIGF1dGhlbnRpY2F0aW9uIFJlcXVlc3Q8L3RleHQ+PHBvbHlnb24gZmlsbD0iI0E4MDAzNiIgcG9pbnRzPSI0Mi41LDE0OS43MzA1LDMyLjUsMTUzLjczMDUsNDIuNSwxNTcuNzMwNSwzOC41LDE1My43MzA1IiBzdHlsZT0ic3Ryb2tlOiAjQTgwMDM2OyBzdHJva2Utd2lkdGg6IDEuMDsiLz48bGluZSBzdHlsZT0ic3Ryb2tlOiAjQTgwMDM2OyBzdHJva2Utd2lkdGg6IDEuMDsgc3Ryb2tlLWRhc2hhcnJheTogMi4wLDIuMDsiIHgxPSIzNi41IiB4Mj0iMjYzLjUiIHkxPSIxNTMuNzMwNSIgeTI9IjE1My43MzA1Ii8+PHRleHQgZmlsbD0iIzAwMDAwMCIgZm9udC1mYW1pbHk9InNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMTMiIGxlbmd0aEFkanVzdD0ic3BhY2luZ0FuZEdseXBocyIgdGV4dExlbmd0aD0iMjA5IiB4PSI0OC41IiB5PSIxNDguOTg4MyI+QW5vdGhlciBhdXRoZW50aWNhdGlvbiBSZXNwb25zZTwvdGV4dD48IS0tTUQ1PVs3ZjNlNGQwYzkwMWVmZGJjNTdlYjQ0MjQ5YTNiODE5N10KQHN0YXJ0dW1sDQpza2lucGFyYW0gc2hhZG93aW5nIGZhbHNlDQpBbGljZSAtPiBCb2I6IEF1dGhlbnRpY2F0aW9uIFJlcXVlc3QNCkJvYiAtIC0+IEFsaWNlOiBBdXRoZW50aWNhdGlvbiBSZXNwb25zZQ0KDQpBbGljZSAtPiBCb2I6IEFub3RoZXIgYXV0aGVudGljYXRpb24gUmVxdWVzdA0KQWxpY2UgPC0gLSBCb2I6IEFub3RoZXIgYXV0aGVudGljYXRpb24gUmVzcG9uc2UNCkBlbmR1bWwNCgpQbGFudFVNTCB2ZXJzaW9uIDEuMjAyMC4wMihTdW4gTWFyIDAxIDA0OjIyOjA3IENTVCAyMDIwKQooTUlUIHNvdXJjZSBkaXN0cmlidXRpb24pCkphdmEgUnVudGltZTogT3BlbkpESyBSdW50aW1lIEVudmlyb25tZW50CkpWTTogT3BlbkpESyA2NC1CaXQgU2VydmVyIFZNCkphdmEgVmVyc2lvbjogMTIrMzMKT3BlcmF0aW5nIFN5c3RlbTogTWFjIE9TIFgKRGVmYXVsdCBFbmNvZGluZzogVVRGLTgKTGFuZ3VhZ2U6IGVuCkNvdW50cnk6IFVTCi0tPjwvZz48L3N2Zz4=", 295,212)},200):a.generatePlantUmlImage(d,p,function(b,c,e){a.spinner.stop();k(d,p,b,c,e)},function(d){a.handleError(d)})}}else if("mermaid"==b)a.spinner.spin(document.body,mxResources.get("inserting"))&&(m=a.editor.graph,a.generateMermaidImage(d,p,function(b,e,k){f=mxEvent.isAltDown(c)?f:m.getCenterInsertPoint(new mxRectangle(0,0,e,k));a.spinner.stop();var p=null;m.getModel().beginUpdate();try{p=m.insertVertex(null,null,null,f.x,f.y,e,k,"shape=image;noLabel=1;verticalAlign=top;imageAspect=1;image="+ -b+";"),m.setAttributeForCell(p,"mermaidData",JSON.stringify({data:d,config:EditorUi.defaultMermaidConfig},null,2))}finally{m.getModel().endUpdate()}null!=p&&(m.setSelectionCell(p),m.scrollCellToVisible(p))},function(d){a.handleError(d)}));else if("table"==b){var g=null,u=[],q=0;for(b=0;b");2<=J.length&&(t=n(J[0]),F=n(J[J.length-1]),J=new mxCell(2");2<=J.length&&(t=n(J[0]),F=n(J[J.length-1]),J=new mxCell(2 Bob: Authentication Request\nBob --\x3e Alice: Authentication Response\n\nAlice -> Bob: Another authentication Request\nAlice <-- Bob: Another authentication Response\n@enduml":"plantUmlSvg"==n.value||"plantUmlTxt"==n.value?"@startuml\nskinparam shadowing false\nAlice -> Bob: Authentication Request\nBob --\x3e Alice: Authentication Response\n\nAlice -> Bob: Another authentication Request\nAlice <-- Bob: Another authentication Response\n@enduml": ";Example:\na->b\nb->edge label->c\nc->a\n"}var f=a.editor.graph.getFreeInsertPoint();e=document.createElement("div");e.style.textAlign="right";var l=document.createElement("textarea");l.style.resize="none";l.style.width="100%";l.style.height="354px";l.style.marginBottom="16px";var n=document.createElement("select");if("formatSql"==c||"mermaid"==c)n.style.display="none";var d=document.createElement("option");d.setAttribute("value","list");mxUtils.write(d,mxResources.get("list"));"plantUml"!=c&&n.appendChild(d); @@ -9405,13 +9405,13 @@ null!=c&&"fromText"!=c||d.setAttribute("selected","selected");d=document.createE mxUtils.write(d,mxResources.get("diagram"));"plantUml"!=c&&n.appendChild(d);d=document.createElement("option");d.setAttribute("value","plantUmlSvg");mxUtils.write(d,mxResources.get("plantUml")+" ("+mxResources.get("formatSvg")+")");"plantUml"==c&&d.setAttribute("selected","selected");var k=document.createElement("option");k.setAttribute("value","plantUmlPng");mxUtils.write(k,mxResources.get("plantUml")+" ("+mxResources.get("formatPng")+")");var m=document.createElement("option");m.setAttribute("value", "plantUmlTxt");mxUtils.write(m,mxResources.get("plantUml")+" ("+mxResources.get("text")+")");EditorUi.enablePlantUml&&Graph.fileSupport&&!a.isOffline()&&"plantUml"==c&&(n.appendChild(d),n.appendChild(k),n.appendChild(m));var p=g();l.value=p;e.appendChild(l);this.init=function(){l.focus()};Graph.fileSupport&&(l.addEventListener("dragover",function(a){a.stopPropagation();a.preventDefault()},!1),l.addEventListener("drop",function(a){a.stopPropagation();a.preventDefault();if(0'+mxResources.get(c,null,c)+"");var v=!1;mxEvent.addListener(q,"click",function(c){H.setAttribute("disabled", -"disabled");q.style.backgroundColor="transparent";q.style.border="1px solid transparent";c=d;c=/^https?:\/\//.test(c)&&!a.editor.isCorsEnabledForUrl(c)?PROXY_URL+"?url="+encodeURIComponent(c):TEMPLATE_PATH+"/"+c;J.spin(N);mxUtils.get(c,mxUtils.bind(this,function(a){J.stop();200<=a.getStatus()&&299>=a.getStatus()&&(z(q,a.getText(),b,null,null,l),v&&B())}))});mxEvent.addListener(q,"dblclick",function(a){v=!0})}else q.innerHTML='
'+mxResources.get(c,null,c)+"
",k&&z(q),null!=p?mxEvent.addListener(q,"click",p):(mxEvent.addListener(q,"click",function(a){z(q,null,null,d,f)}),mxEvent.addListener(q,"dblclick",function(a){B()}));N.appendChild(q);return q}function C(){ga&&(ga=!1,mxEvent.addListener(N,"scroll",function(a){N.scrollTop+N.clientHeight>=N.scrollHeight&&(y(),mxEvent.consume(a))}));var a=null;if(0'+mxResources.get(c,null,c)+"");var v=!1;mxEvent.addListener(u,"click",function(c){H.setAttribute("disabled", +"disabled");u.style.backgroundColor="transparent";u.style.border="1px solid transparent";c=d;c=/^https?:\/\//.test(c)&&!a.editor.isCorsEnabledForUrl(c)?PROXY_URL+"?url="+encodeURIComponent(c):TEMPLATE_PATH+"/"+c;J.spin(N);mxUtils.get(c,mxUtils.bind(this,function(a){J.stop();200<=a.getStatus()&&299>=a.getStatus()&&(z(u,a.getText(),b,null,null,l),v&&C())}))});mxEvent.addListener(u,"dblclick",function(a){v=!0})}else u.innerHTML='
'+mxResources.get(c,null,c)+"
",k&&z(u),null!=p?mxEvent.addListener(u,"click",p):(mxEvent.addListener(u,"click",function(a){z(u,null,null,d,f)}),mxEvent.addListener(u,"dblclick",function(a){C()}));N.appendChild(u);return u}function A(){ga&&(ga=!1,mxEvent.addListener(N,"scroll",function(a){N.scrollTop+N.clientHeight>=N.scrollHeight&&(y(),mxEvent.consume(a))}));var a=null;if(0e.lastIndexOf(".")&&0>k){var d=null!=d?d:G.value,m="";d==App.MODE_GOOGLE?m=a.drive.extension:d==App.MODE_GITHUB?m=a.gitHub.extension:d==App.MODE_GITLAB?m=a.gitLab.extension:d==App.MODE_TRELLO?m=a.trello.extension:d==App.MODE_DROPBOX?m=a.dropbox.extension: -d==App.MODE_ONEDRIVE?m=a.oneDrive.extension:d==App.MODE_DEVICE&&(m=".drawio");0<=k&&(b=b.substring(0,k));A.value=b+m}}B(c)})}var f=document.createElement("a");f.style.overflow="hidden";var g=document.createElement("img");g.src=d;g.setAttribute("border","0");g.setAttribute("align","absmiddle");g.style.width="60px";g.style.height="60px";g.style.paddingBottom="6px";f.style.display=mxClient.IS_QUIRKS?"inline":"inline-block";f.className="geBaseButton";f.style.position="relative";f.style.margin="4px";f.style.padding= -"8px 8px 10px 8px";f.style.whiteSpace="nowrap";f.appendChild(g);mxClient.IS_QUIRKS&&(f.style.cssFloat="left",f.style.zoom="1");f.style.color="gray";f.style.fontSize="11px";var u=document.createElement("div");f.appendChild(u);mxUtils.write(u,b);if(null!=k&&null==a[k]){g.style.visibility="hidden";mxUtils.setOpacity(u,10);var q=new Spinner({lines:12,length:12,width:5,radius:10,rotate:0,color:"#000",speed:1.5,trail:60,shadow:!1,hwaccel:!1,top:"40%",zIndex:2E9});q.spin(f);var v=window.setTimeout(function(){null== -a[k]&&(q.stop(),f.style.display="none")},3E4);a.addListener("clientLoaded",mxUtils.bind(this,function(){null!=a[k]&&(window.clearTimeout(v),mxUtils.setOpacity(u,100),g.style.visibility="",q.stop(),m())}))}else m();C.appendChild(f);++D==p&&(mxUtils.br(C),D=0)}function B(d){var b=A.value;if(null==d||null!=b&&0e.lastIndexOf(".")&&0>k){var d=null!=d?d:G.value,m="";d==App.MODE_GOOGLE?m=a.drive.extension:d==App.MODE_GITHUB?m=a.gitHub.extension:d==App.MODE_GITLAB?m=a.gitLab.extension:d==App.MODE_TRELLO?m=a.trello.extension:d==App.MODE_DROPBOX?m=a.dropbox.extension: +d==App.MODE_ONEDRIVE?m=a.oneDrive.extension:d==App.MODE_DEVICE&&(m=".drawio");0<=k&&(b=b.substring(0,k));B.value=b+m}}C(c)})}var f=document.createElement("a");f.style.overflow="hidden";var g=document.createElement("img");g.src=d;g.setAttribute("border","0");g.setAttribute("align","absmiddle");g.style.width="60px";g.style.height="60px";g.style.paddingBottom="6px";f.style.display=mxClient.IS_QUIRKS?"inline":"inline-block";f.className="geBaseButton";f.style.position="relative";f.style.margin="4px";f.style.padding= +"8px 8px 10px 8px";f.style.whiteSpace="nowrap";f.appendChild(g);mxClient.IS_QUIRKS&&(f.style.cssFloat="left",f.style.zoom="1");f.style.color="gray";f.style.fontSize="11px";var q=document.createElement("div");f.appendChild(q);mxUtils.write(q,b);if(null!=k&&null==a[k]){g.style.visibility="hidden";mxUtils.setOpacity(q,10);var u=new Spinner({lines:12,length:12,width:5,radius:10,rotate:0,color:"#000",speed:1.5,trail:60,shadow:!1,hwaccel:!1,top:"40%",zIndex:2E9});u.spin(f);var v=window.setTimeout(function(){null== +a[k]&&(u.stop(),f.style.display="none")},3E4);a.addListener("clientLoaded",mxUtils.bind(this,function(){null!=a[k]&&(window.clearTimeout(v),mxUtils.setOpacity(q,100),g.style.visibility="",u.stop(),m())}))}else m();A.appendChild(f);++D==p&&(mxUtils.br(A),D=0)}function C(d){var b=B.value;if(null==d||null!=b&&0FeedbackDialog.maxAttachmentSize?a.alert(mxResources.get("drawingTooLarge")):(a.hideDialog(), a.spinner.spin(document.body)&&mxUtils.post(null!=FeedbackDialog.feedbackUrl?FeedbackDialog.feedbackUrl:"/email","email="+encodeURIComponent(l.value)+"&version="+encodeURIComponent(EditorUi.VERSION)+"&url="+encodeURIComponent(window.location.href)+"&body="+encodeURIComponent((null!=e?e:"Feedback")+":\n"+d),function(d){a.spinner.stop();200<=d.getStatus()&&299>=d.getStatus()?a.alert(mxResources.get("feedbackSent")):a.alert(mxResources.get("errorSendingFeedback"))},function(){a.spinner.stop();a.alert(mxResources.get("errorSendingFeedback"))}))}); n.className="geBtn gePrimaryBtn";if(!c){n.setAttribute("disabled","disabled");var d=/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;mxEvent.addListener(l,"change",function(){0':null==d.desc&&(p.style.padding="20px",p.style.color="rgb(179, 179, 179)",mxUtils.write(p,mxResources.get("noPreview")));null!=u&&(u.style.backgroundColor="");u=c;u.style.backgroundColor="dark"==uiTheme?"#000000":"#ebf2f9";null!=a&&mxEvent.consume(a)}};mxEvent.addListener(c,"click",f);mxEvent.addListener(c,"dblclick",function(a){k.checked= -!k.checked;mxEvent.consume(a)});q.push(function(){return k.checked?d.id:null});0==b&&0==e&&f()})(d.entries[e])})(d[b])});f=document.createElement("div");f.className="geDialogTitle";mxUtils.write(f,mxResources.get("shapes"));f.style.position="absolute";f.style.top="0px";f.style.left="0px";f.style.lineHeight="40px";f.style.height="40px";f.style.right="0px";mxClient.IS_QUIRKS&&(f.style.width="718px");var m=document.createElement("div"),p=document.createElement("div");m.style.position="absolute";m.style.top= +b.style.textAlign="left";mxUtils.write(b,d.desc);p.appendChild(b)}null!=d.imageCallback?d.imageCallback(p):null!=d.image?p.innerHTML+='':null==d.desc&&(p.style.padding="20px",p.style.color="rgb(179, 179, 179)",mxUtils.write(p,mxResources.get("noPreview")));null!=q&&(q.style.backgroundColor="");q=c;q.style.backgroundColor="dark"==uiTheme?"#000000":"#ebf2f9";null!=a&&mxEvent.consume(a)}};mxEvent.addListener(c,"click",f);mxEvent.addListener(c,"dblclick",function(a){k.checked= +!k.checked;mxEvent.consume(a)});u.push(function(){return k.checked?d.id:null});0==b&&0==e&&f()})(d.entries[e])})(d[b])});f=document.createElement("div");f.className="geDialogTitle";mxUtils.write(f,mxResources.get("shapes"));f.style.position="absolute";f.style.top="0px";f.style.left="0px";f.style.lineHeight="40px";f.style.height="40px";f.style.right="0px";mxClient.IS_QUIRKS&&(f.style.width="718px");var m=document.createElement("div"),p=document.createElement("div");m.style.position="absolute";m.style.top= "40px";m.style.left="0px";m.style.width="202px";m.style.bottom="60px";m.style.overflow="auto";mxClient.IS_QUIRKS&&(m.style.height="437px",m.style.marginTop="1px");p.style.position="absolute";p.style.left="202px";p.style.right="0px";p.style.top="40px";p.style.bottom="60px";p.style.overflow="auto";p.style.borderLeft="1px solid rgb(211, 211, 211)";p.style.textAlign="center";mxClient.IS_QUIRKS&&(p.style.width=parseInt(f.style.width)-202+"px",p.style.height=m.style.height,p.style.marginTop=m.style.marginTop); -var u=null,q=[],t=document.createElement("div");t.style.position="relative";t.style.left="0px";t.style.right="0px";d(c);b.style.padding="30px";b.appendChild(f);b.appendChild(m);b.appendChild(p);c=document.createElement("div");c.className="geDialogFooter";c.style.position="absolute";c.style.paddingRight="16px";c.style.color="gray";c.style.left="0px";c.style.right="0px";c.style.bottom="0px";c.style.height="60px";c.style.lineHeight="52px";mxClient.IS_QUIRKS&&(c.style.width=f.style.width,c.style.paddingTop= +var q=null,u=[],t=document.createElement("div");t.style.position="relative";t.style.left="0px";t.style.right="0px";d(c);b.style.padding="30px";b.appendChild(f);b.appendChild(m);b.appendChild(p);c=document.createElement("div");c.className="geDialogFooter";c.style.position="absolute";c.style.paddingRight="16px";c.style.color="gray";c.style.left="0px";c.style.right="0px";c.style.bottom="0px";c.style.height="60px";c.style.lineHeight="52px";mxClient.IS_QUIRKS&&(c.style.width=f.style.width,c.style.paddingTop= "12px");var v=document.createElement("input");v.setAttribute("type","checkbox");if(isLocalStorage||mxClient.IS_CHROMEAPP)f=document.createElement("span"),f.style.paddingRight="20px",f.appendChild(v),mxUtils.write(f," "+mxResources.get("rememberThisSetting")),v.checked=!0,v.defaultChecked=!0,mxEvent.addListener(f,"click",function(a){mxEvent.getSource(a)!=v&&(v.checked=!v.checked,mxEvent.consume(a))}),mxClient.IS_QUIRKS&&(f.style.position="relative",f.style.top="-6px"),c.appendChild(f);f=mxUtils.button(mxResources.get("cancel"), -function(){a.hideDialog()});f.className="geBtn";d=mxUtils.button(mxResources.get("apply"),function(){a.hideDialog();for(var d=[],b=0;bmxUtils.indexOf(l,a)&&l.push(a);b()})}:function(){var d=document.createElement("div"),c=document.createElement("span");c.style.marginTop="6px";mxUtils.write(c,mxResources.get("builtinPlugins")+": ");d.appendChild(c);var e=document.createElement("select");e.style.width="150px";for(c=0;cmxUtils.indexOf(l,a)&&(l.push(a),b())}),null,null,null,c);a.showDialog(d.container,300,80,!0,!0)});n.className="geBtn";var d=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});d.className="geBtn";var k=mxUtils.button(mxResources.get("apply"),function(){mxSettings.setPlugins(l);mxSettings.save();a.hideDialog(); a.alert(mxResources.get("restartForChangeRequired"))});k.className="geBtn gePrimaryBtn";var m=document.createElement("div");m.style.marginTop="14px";m.style.textAlign="right";var p=mxUtils.button(mxResources.get("help"),function(){a.openLink("https://desk.draw.io/support/solutions/articles/16000056430")});p.className="geBtn";a.isOffline()&&!mxClient.IS_CHROMEAPP&&(p.style.display="none");m.appendChild(p);a.editor.cancelFirst?(m.appendChild(d),m.appendChild(n),m.appendChild(k)):(m.appendChild(n),m.appendChild(k), m.appendChild(d));g.appendChild(m);this.container=g},CropImageDialog=function(a,e,c){function b(a){null!=l&&l.destroy();l=a?new Croppie(f,{viewport:{width:150,height:150,type:"circle"},enableExif:!0,showZoomer:!1,enableResize:!1,enableOrientation:!0}):new Croppie(f,{viewport:{width:150,height:150,type:"square"},enableExif:!0,showZoomer:!1,enableResize:!0,enableOrientation:!0});l.bind({url:e})}var g=document.createElement("div"),f=document.createElement("div");f.style.width="300px";f.style.height= -"300px";g.appendChild(f);var l=null;this.init=function(){b()};var n=document.createElement("input");n.setAttribute("type","checkbox");n.setAttribute("id","croppieCircle");n.style.margin="5px";g.appendChild(n);var d=document.createElement("label");d.setAttribute("for","croppieCircle");mxUtils.write(d,mxResources.get("circle"));g.appendChild(d);var k,m,p,u,d=document.createElement("div");k=document.createElement("button");m=document.createElement("button");d.appendChild(k);d.appendChild(m);p=document.createElement("i"); -u=document.createElement("i");k.appendChild(p);m.appendChild(u);d.className="cr-rotate-controls";d.style["float"]="right";d.style.position="inherit";k.className="cr-rotate-l";m.className="cr-rotate-r";g.appendChild(d);k.addEventListener("click",function(){l.rotate(-90)});m.addEventListener("click",function(){l.rotate(90)});mxEvent.addListener(n,"change",function(){b(this.checked)});n=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});n.className="geBtn";d=mxUtils.button(mxResources.get("apply"), +"300px";g.appendChild(f);var l=null;this.init=function(){b()};var n=document.createElement("input");n.setAttribute("type","checkbox");n.setAttribute("id","croppieCircle");n.style.margin="5px";g.appendChild(n);var d=document.createElement("label");d.setAttribute("for","croppieCircle");mxUtils.write(d,mxResources.get("circle"));g.appendChild(d);var k,m,p,q,d=document.createElement("div");k=document.createElement("button");m=document.createElement("button");d.appendChild(k);d.appendChild(m);p=document.createElement("i"); +q=document.createElement("i");k.appendChild(p);m.appendChild(q);d.className="cr-rotate-controls";d.style["float"]="right";d.style.position="inherit";k.className="cr-rotate-l";m.className="cr-rotate-r";g.appendChild(d);k.addEventListener("click",function(){l.rotate(-90)});m.addEventListener("click",function(){l.rotate(90)});mxEvent.addListener(n,"change",function(){b(this.checked)});n=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});n.className="geBtn";d=mxUtils.button(mxResources.get("apply"), function(){l.result({type:"base64",size:"original"}).then(function(d){c(d);a.hideDialog()})});d.className="geBtn gePrimaryBtn";k=document.createElement("div");k.style.marginTop="20px";k.style.textAlign="right";a.editor.cancelFirst?(k.appendChild(n),k.appendChild(d)):(k.appendChild(d),k.appendChild(n));g.appendChild(k);this.container=g},EditGeometryDialog=function(a,e){var c=a.editor.graph,b=1==e.length?c.getCellGeometry(e[0]):null,g=document.createElement("div"),f=document.createElement("table"), l=document.createElement("tbody"),n=document.createElement("tr"),d=document.createElement("td"),k=document.createElement("td");f.style.paddingLeft="6px";mxUtils.write(d,mxResources.get("relative")+":");var m=document.createElement("input");m.setAttribute("type","checkbox");null!=b&&b.relative&&(m.setAttribute("checked","checked"),m.defaultChecked=!0);this.init=function(){m.focus()};k.appendChild(m);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td"); -k=document.createElement("td");mxUtils.write(d,mxResources.get("left")+":");var p=document.createElement("input");p.setAttribute("type","text");p.style.width="100px";p.value=null!=b?b.x:"";k.appendChild(p);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td");k=document.createElement("td");mxUtils.write(d,mxResources.get("top")+":");var u=document.createElement("input");u.setAttribute("type","text");u.style.width="100px";u.value=null!=b?b.y: -"";k.appendChild(u);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td");k=document.createElement("td");mxUtils.write(d,mxResources.get("dx")+":");var q=document.createElement("input");q.setAttribute("type","text");q.style.width="100px";q.value=null!=b&&null!=b.offset?b.offset.x:"";k.appendChild(q);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td");k=document.createElement("td"); +k=document.createElement("td");mxUtils.write(d,mxResources.get("left")+":");var p=document.createElement("input");p.setAttribute("type","text");p.style.width="100px";p.value=null!=b?b.x:"";k.appendChild(p);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td");k=document.createElement("td");mxUtils.write(d,mxResources.get("top")+":");var q=document.createElement("input");q.setAttribute("type","text");q.style.width="100px";q.value=null!=b?b.y: +"";k.appendChild(q);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td");k=document.createElement("td");mxUtils.write(d,mxResources.get("dx")+":");var u=document.createElement("input");u.setAttribute("type","text");u.style.width="100px";u.value=null!=b&&null!=b.offset?b.offset.x:"";k.appendChild(u);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td");k=document.createElement("td"); mxUtils.write(d,mxResources.get("dy")+":");var t=document.createElement("input");t.setAttribute("type","text");t.style.width="100px";t.value=null!=b&&null!=b.offset?b.offset.y:"";k.appendChild(t);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td");k=document.createElement("td");mxUtils.write(d,mxResources.get("width")+":");var v=document.createElement("input");v.setAttribute("type","text");v.style.width="100px";v.value=null!=b?b.width:""; k.appendChild(v);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td");k=document.createElement("td");mxUtils.write(d,mxResources.get("height")+":");var x=document.createElement("input");x.setAttribute("type","text");x.style.width="100px";x.value=null!=b?b.height:"";k.appendChild(x);n.appendChild(d);n.appendChild(k);l.appendChild(n);n=document.createElement("tr");d=document.createElement("td");k=document.createElement("td");mxUtils.write(d, -mxResources.get("rotation")+":");var y=document.createElement("input");y.setAttribute("type","text");y.style.width="100px";y.value=1==e.length?mxUtils.getValue(c.getCellStyle(e[0]),mxConstants.STYLE_ROTATION,0):"";k.appendChild(y);n.appendChild(d);n.appendChild(k);l.appendChild(n);f.appendChild(l);g.appendChild(f);b=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});b.className="geBtn";var B=mxUtils.button(mxResources.get("apply"),function(){a.hideDialog();c.getModel().beginUpdate(); -try{for(var d=0;da.maxImageSize||f>a.maxImageSize){var P=Math.min(1,Math.min(a.maxImageSize/Math.max(1,k)),a.maxImageSize/Math.max(1,f));k*=P;f*=P}C>y?(y=Math.round(100*y/C),C=100):(C=Math.round(100*C/y),y=100);var M=document.createElement("div");M.setAttribute("draggable","true");M.style.display= -mxClient.IS_QUIRKS?"inline":"inline-block";M.style.position="relative";M.style.cursor="move";mxUtils.setPrefixedStyle(M.style,"transition","transform .1s ease-in-out");if(null!=d){var D=document.createElement("img");D.setAttribute("src",z.convert(d));D.style.width=C+"px";D.style.height=y+"px";D.style.margin="10px";D.style.paddingBottom=Math.floor((100-y)/2)+"px";D.style.paddingLeft=Math.floor((100-C)/2)+"px";M.appendChild(D)}else if(null!=p){var H=a.stringToCells(Graph.decompress(p.xml));0a.maxImageSize||f>a.maxImageSize){var P=Math.min(1,Math.min(a.maxImageSize/Math.max(1,k)),a.maxImageSize/Math.max(1,f));k*=P;f*=P}A>y?(y=Math.round(100*y/A),A=100):(A=Math.round(100*A/y),y=100);var M=document.createElement("div");M.setAttribute("draggable","true");M.style.display= +mxClient.IS_QUIRKS?"inline":"inline-block";M.style.position="relative";M.style.cursor="move";mxUtils.setPrefixedStyle(M.style,"transition","transform .1s ease-in-out");if(null!=d){var D=document.createElement("img");D.setAttribute("src",z.convert(d));D.style.width=A+"px";D.style.height=y+"px";D.style.margin="10px";D.style.paddingBottom=Math.floor((100-y)/2)+"px";D.style.paddingLeft=Math.floor((100-A)/2)+"px";M.appendChild(D)}else if(null!=p){var H=a.stringToCells(Graph.decompress(p.xml));0 -x?y-1:y,0,m.splice(x,1)[0]),q.insertBefore(q.children[x],q.children[y])):(m.push(m.splice(x,1)[0]),q.appendChild(q.children[x]));else if(0=b.status&&(n(b.responseText,c,e,k,m,f,p,"fixed",mxEvent.isAltDown(d)?null:p.substring(0,p.lastIndexOf(".")).replace(/_/g," ")),q.scrollTop= -q.scrollHeight))})):(n(b,c,e,k,m,f,p,"fixed",mxEvent.isAltDown(d)?null:p.substring(0,p.lastIndexOf(".")).replace(/_/g," ")),q.scrollTop=q.scrollHeight)}};mxEvent.addListener(q,"dragover",d);mxEvent.addListener(q,"drop",k);mxEvent.addListener(t,"dragover",d);mxEvent.addListener(t,"drop",k);c.appendChild(q);b=document.createElement("div");b.style.textAlign="right";b.style.marginTop="20px";e=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog(!0)});e.setAttribute("id","btnCancel");e.className= +"transform",null)})}else B||(B=!0,a.handleError({message:mxResources.get("fileExists")}));else{k=!1;try{if(A=mxUtils.parseXml(d),"mxlibrary"==A.documentElement.nodeName){y=JSON.parse(mxUtils.getTextContent(A.documentElement));if(null!=y&&0 +x?y-1:y,0,m.splice(x,1)[0]),u.insertBefore(u.children[x],u.children[y])):(m.push(m.splice(x,1)[0]),u.appendChild(u.children[x]));else if(0=b.status&&(n(b.responseText,c,e,k,m,f,p,"fixed",mxEvent.isAltDown(d)?null:p.substring(0,p.lastIndexOf(".")).replace(/_/g," ")),u.scrollTop= +u.scrollHeight))})):(n(b,c,e,k,m,f,p,"fixed",mxEvent.isAltDown(d)?null:p.substring(0,p.lastIndexOf(".")).replace(/_/g," ")),u.scrollTop=u.scrollHeight)}};mxEvent.addListener(u,"dragover",d);mxEvent.addListener(u,"drop",k);mxEvent.addListener(t,"dragover",d);mxEvent.addListener(t,"drop",k);c.appendChild(u);b=document.createElement("div");b.style.textAlign="right";b.style.marginTop="20px";e=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog(!0)});e.setAttribute("id","btnCancel");e.className= "geBtn";a.editor.cancelFirst&&b.appendChild(e);"draw.io"!=a.getServiceName()||null==g||g.constructor!=DriveLibrary&&g.constructor!=GitHubLibrary||(p=mxUtils.button(mxResources.get("link"),function(){a.spinner.spin(document.body,mxResources.get("loading"))&&g.getPublicUrl(function(d){a.spinner.stop();if(null!=d){var b=a.getSearch("create title mode url drive splash state clibs ui".split(" ")),b=b+((0==b.length?"?":"&")+"splash=0&clibs=U"+encodeURIComponent(d));d=new EmbedDialog(a,window.location.protocol+ "//"+window.location.host+"/"+b,null,null,null,null,"Check out the library I made using @drawio");a.showDialog(d.container,440,240,!0);d.init()}else g.constructor==DriveLibrary?a.showError(mxResources.get("error"),mxResources.get("diagramIsNotPublic"),mxResources.get("share"),mxUtils.bind(this,function(){a.drive.showPermissions(g.getId())}),null,mxResources.get("ok"),mxUtils.bind(this,function(){})):a.handleError({message:mxResources.get("diagramIsNotPublic")})})}),p.className="geBtn",b.appendChild(p)); -p=mxUtils.button(mxResources.get("export"),function(){var d=a.createLibraryDataFromImages(m),b=u.value;/(\.xml)$/i.test(b)||(b+=".xml");a.isLocalFileSave()?a.saveLocalFile(d,b,"text/xml",null,null,!0,null,"xml"):(new mxXmlRequest(SAVE_URL,"filename="+encodeURIComponent(b)+"&format=xml&xml="+encodeURIComponent(d))).simulate(document,"_blank")});p.setAttribute("id","btnDownload");p.className="geBtn";b.appendChild(p);if(Graph.fileSupport){if(null==a.libDlgFileInputElt){var D=document.createElement("input"); -D.setAttribute("multiple","multiple");D.setAttribute("type","file");mxEvent.addListener(D,"change",function(d){A=!1;a.importFiles(D.files,0,0,a.maxImageSize,function(a,b,c,e,k,m,f,p,g){null!=D.files&&(C(d)(a,b,c,e,k,m,f,p,g),D.type="",D.type="file",D.value="")});q.scrollTop=q.scrollHeight});D.style.display="none";document.body.appendChild(D);a.libDlgFileInputElt=D}p=mxUtils.button(mxResources.get("import"),function(){null!=B&&(B(),B=null);a.libDlgFileInputElt.click()});p.setAttribute("id","btnAddImage"); -p.className="geBtn";b.appendChild(p)}p=mxUtils.button(mxResources.get("addImages"),function(){null!=B&&(B(),B=null);a.showImageDialog(mxResources.get("addImageUrl"),"",function(a,d,b){A=!1;if(null!=a){if("data:image/"==a.substring(0,11)){var c=a.indexOf(",");0
'+ mxResources.get("newDiagram",null,"New Diagram")+'
'+mxResources.get("templates",null,"Templates")+'
'+mxResources.get("newDiagram",null,"New Diagram")+'
'+mxResources.get("showAll",null,"+ Show all")+ @@ -9595,41 +9595,41 @@ mxResources.get("newDiagram",null,"New Diagram")+'

🛈 '+ mxResources.get("linkToDiagramHint",null,"Add a link to this diagram. The diagram can only be edited from the page that owns it.")+'
'+mxResources.get("create",null,"Create")+'
'+mxResources.get("cancel",null,"Cancel")+"
",e=document.createElement("div");e.innerHTML=a;e.className="geTemplateDlg"; var a=window.innerWidth,c=window.innerHeight,b=987,g=712;.9*a=d.getStatus()&&(e(d.getText(),"nameInput.value"),a.hideDialog(!0))}))}}function v(a){a=a?"":"none";for(var d=C.querySelectorAll(".geTempDlgLinkToDiagram"),b=0;b=d.getStatus()&&(e(d.getText(),"nameInput.value"),a.hideDialog(!0))}))}}function v(a){a=a?"":"none";for(var d=A.querySelectorAll(".geTempDlgLinkToDiagram"),b=0;bf&&(m=m.substring(0,f)+"…");if(b){var K=document.createElement("tr"),g=document.createElement("td"),z=document.createElement("img");z.src="/images/icon-search.svg";z.className="geTempDlgDiagramListPreviewBtn";z.setAttribute("title",mxResources.get("preview"));g.appendChild(z);p=document.createElement("span");p.className="geTempDlgDiagramTitle";p.innerHTML=m;g.appendChild(p);K.appendChild(g);g=document.createElement("td"); -g.innerHTML=l;K.appendChild(g);g=document.createElement("td");g.innerHTML=n;K.appendChild(g);e.appendChild(K);null==F&&(c(),q(K,"geTempDlgDiagramsListGridActive",a[k]));(function(a,d){mxEvent.addListener(K,"click",function(){F!=d&&(c(),q(d,"geTempDlgDiagramsListGridActive",a))});mxEvent.addListener(K,"dblclick",t);mxEvent.addListener(z,"click",function(){u(a)})})(a[k],K)}else{var A=document.createElement("div");A.className="geTempDlgDiagramTile";A.setAttribute("title",p);null==F&&(c(),q(A,"geTempDlgDiagramTileActive", -a[k]));l=document.createElement("div");l.className="geTempDlgDiagramTileImg geTempDlgDiagramTileImgLoading";var C=document.createElement("img");C.style.display="none";(function(a,d){C.onload=function(){d.className="geTempDlgDiagramTileImg";a.style.display=""};C.onerror=function(){d.className="geTempDlgDiagramTileImg geTempDlgDiagramTileImgError"}})(C,l);C.src=g;l.appendChild(C);A.appendChild(l);l=document.createElement("div");l.className="geTempDlgDiagramTileLbl";l.innerHTML=null!=m?m:"";A.appendChild(l); -z=document.createElement("img");z.src="/images/icon-search.svg";z.className="geTempDlgDiagramPreviewBtn";z.setAttribute("title",mxResources.get("preview"));A.appendChild(z);(function(a,d){mxEvent.addListener(A,"click",function(){F!=d&&(c(),q(d,"geTempDlgDiagramTileActive",a))});mxEvent.addListener(A,"dblclick",t);mxEvent.addListener(z,"click",function(){u(a)})})(a[k],A);R.appendChild(A)}}}function y(a,d){V.innerHTML="";q();for(var b=!d&&5a.length?"none":""}function B(a){var d=C.querySelector(".geTemplatesList"), +g.innerHTML=l;K.appendChild(g);g=document.createElement("td");g.innerHTML=n;K.appendChild(g);e.appendChild(K);null==F&&(c(),u(K,"geTempDlgDiagramsListGridActive",a[k]));(function(a,d){mxEvent.addListener(K,"click",function(){F!=d&&(c(),u(d,"geTempDlgDiagramsListGridActive",a))});mxEvent.addListener(K,"dblclick",t);mxEvent.addListener(z,"click",function(){q(a)})})(a[k],K)}else{var B=document.createElement("div");B.className="geTempDlgDiagramTile";B.setAttribute("title",p);null==F&&(c(),u(B,"geTempDlgDiagramTileActive", +a[k]));l=document.createElement("div");l.className="geTempDlgDiagramTileImg geTempDlgDiagramTileImgLoading";var A=document.createElement("img");A.style.display="none";(function(a,d){A.onload=function(){d.className="geTempDlgDiagramTileImg";a.style.display=""};A.onerror=function(){d.className="geTempDlgDiagramTileImg geTempDlgDiagramTileImgError"}})(A,l);A.src=g;l.appendChild(A);B.appendChild(l);l=document.createElement("div");l.className="geTempDlgDiagramTileLbl";l.innerHTML=null!=m?m:"";B.appendChild(l); +z=document.createElement("img");z.src="/images/icon-search.svg";z.className="geTempDlgDiagramPreviewBtn";z.setAttribute("title",mxResources.get("preview"));B.appendChild(z);(function(a,d){mxEvent.addListener(B,"click",function(){F!=d&&(c(),u(d,"geTempDlgDiagramTileActive",a))});mxEvent.addListener(B,"dblclick",t);mxEvent.addListener(z,"click",function(){q(a)})})(a[k],B);R.appendChild(B)}}}function y(a,d){V.innerHTML="";u();for(var b=!d&&5a.length?"none":""}function C(a){var d=A.querySelector(".geTemplatesList"), b;for(b in a){var c=document.createElement("div"),e=mxResources.get(b),k=a[b];null==e&&(e=b.substring(0,1).toUpperCase()+b.substring(1));c.className="geTemplateCatLink";c.setAttribute("title",e+" ("+k.length+")");e=mxUtils.htmlEntities(e);15g;g++)for(var f=g,l=0;8>l;l++)f=1==(f&1)?3988292384^f>>>1:f>>>1,Editor.crcTable[g]=f;Editor.updateCRC=function(a,d,b,c){for(var e=0;e>>8;return a};Editor.crc32=function(a){for(var d=-1,b=0;b>>8^Editor.crcTable[(d^a.charCodeAt(b))&255];return(d^-1)>>>0};Editor.writeGraphModelToPng=function(a,d,b,c,e){function k(a,d){var b=p;p+=d;return a.substring(b,p)} +Editor.prototype.isExportToCanvas=function(){return mxClient.IS_CHROMEAPP||this.useCanvasForExport};Editor.prototype.exportToCanvas=function(a,d,b,c,e,k,m,f,p,g,q,l,u,n,v,t){try{k=null!=k?k:!0;m=null!=m?m:!0;l=null!=l?l:this.graph;u=null!=u?u:0;var z=p?null:l.background;z==mxConstants.NONE&&(z=null);null==z&&(z=c);null==z&&0==p&&(z=t?this.graph.defaultPageBackgroundColor:"#ffffff");this.convertImages(l.getSvg(null,null,u,n,null,m,null,null,null,g,null,t),mxUtils.bind(this,function(b){try{var c=new Image; +c.onload=mxUtils.bind(this,function(){try{var m=function(){mxClient.IS_SF?window.setTimeout(function(){n.drawImage(c,0,0);a(p)},0):(n.drawImage(c,0,0),a(p))},p=document.createElement("canvas"),g=parseInt(b.getAttribute("width")),q=parseInt(b.getAttribute("height"));f=null!=f?f:1;null!=d&&(f=k?Math.min(1,Math.min(3*d/(4*q),d/g)):d/g);g=Math.ceil(f*g);q=Math.ceil(f*q);p.setAttribute("width",g);p.setAttribute("height",q);var n=p.getContext("2d");null!=z&&(n.beginPath(),n.rect(0,0,g,q),n.fillStyle=z, +n.fill());n.scale(f,f);if(v){var t=l.view,B=t.scale;t.scale=1;var A=btoa(unescape(encodeURIComponent(t.createSvgGrid(t.gridColor))));t.scale=B;var A="data:image/svg+xml;base64,"+A,y=l.gridSize*t.gridSteps*f,x=l.getGraphBounds(),D=t.translate.x*B,K=t.translate.y*B,C=D+(x.x-D)/B-u,P=K+(x.y-K)/B-u,M=new Image;M.onload=function(){try{for(var a=-Math.round(y-mxUtils.mod((D-C)*f,y)),d=-Math.round(y-mxUtils.mod((K-P)*f,y));ag;g++)for(var f=g,l=0;8>l;l++)f=1==(f&1)?3988292384^f>>>1:f>>>1,Editor.crcTable[g]=f;Editor.updateCRC=function(a,d,b,c){for(var e=0;e>>8;return a};Editor.crc32=function(a){for(var d=-1,b=0;b>>8^Editor.crcTable[(d^a.charCodeAt(b))&255];return(d^-1)>>>0};Editor.writeGraphModelToPng=function(a,d,b,c,e){function k(a,d){var b=p;p+=d;return a.substring(b,p)} function m(a){a=k(a,4);return a.charCodeAt(3)+(a.charCodeAt(2)<<8)+(a.charCodeAt(1)<<16)+(a.charCodeAt(0)<<24)}function f(a){return String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,a&255)}a=a.substring(a.indexOf(",")+1);a=window.atob?atob(a):Base64.decode(a,!0);var p=0;if(k(a,8)!=String.fromCharCode(137)+"PNG"+String.fromCharCode(13,10,26,10))null!=e&&e();else if(k(a,4),"IHDR"!=k(a,4))null!=e&&e();else{k(a,17);e=a.substring(0,p);do{var g=m(a);if("IDAT"==k(a,4)){e=a.substring(0,p-8);"pHYs"==d&&"dpi"== b?(b=Math.round(c/.0254),b=f(b)+f(b)+String.fromCharCode(1)):b=b+String.fromCharCode(0)+("zTXt"==d?String.fromCharCode(0):"")+c;c=4294967295;c=Editor.updateCRC(c,d,0,4);c=Editor.updateCRC(c,b,0,b.length);e+=f(b.length)+d+b+f(c^4294967295);e+=a.substring(p-8,a.length);break}e+=a.substring(p-8,p-4+g);k(a,g);k(a,4)}while(g);return"data:image/png;base64,"+(window.btoa?btoa(e):Base64.encode(e,!0))}};if(window.ColorDialog){FilenameDialog.filenameHelpLink="https://desk.draw.io/support/solutions/articles/16000091426"; var n=ColorDialog.addRecentColor;ColorDialog.addRecentColor=function(a,d){n.apply(this,arguments);mxSettings.setRecentColors(ColorDialog.recentColors);mxSettings.save()};var d=ColorDialog.resetRecentColors;ColorDialog.resetRecentColors=function(){d.apply(this,arguments);mxSettings.setRecentColors(ColorDialog.recentColors);mxSettings.save()}}window.EditDataDialog&&(EditDataDialog.getDisplayIdForCell=function(a,d){var b=null;null!=a.editor.graph.getModel().getParent(d)?b=d.getId():null!=a.currentPage&& (b=a.currentPage.getId());return b});if(null!=window.StyleFormatPanel){var k=Format.prototype.init;Format.prototype.init=function(){k.apply(this,arguments);this.editorUi.editor.addListener("fileLoaded",this.update)};var m=Format.prototype.refresh;Format.prototype.refresh=function(){null!=this.editorUi.getCurrentFile()||"1"==urlParams.embed||this.editorUi.editor.chromeless?m.apply(this,arguments):this.clear()};DiagramFormatPanel.prototype.isShadowOptionVisible=function(){var a=this.editorUi.getCurrentFile(); return"1"==urlParams.embed||null!=a&&a.isEditable()};DiagramFormatPanel.prototype.isMathOptionVisible=function(a){return!1};var p=DiagramFormatPanel.prototype.addView;DiagramFormatPanel.prototype.addView=function(a){a=p.apply(this,arguments);this.editorUi.getCurrentFile();if(mxClient.IS_SVG&&this.isShadowOptionVisible()){var d=this.editorUi,b=d.editor.graph,c=this.createOption(mxResources.get("shadow"),function(){return b.shadowVisible},function(a){var c=new ChangePageSetup(d);c.ignoreColor=!0;c.ignoreImage= -!0;c.shadowVisible=a;b.model.execute(c)},{install:function(a){this.listener=function(){a(b.shadowVisible)};d.addListener("shadowVisibleChanged",this.listener)},destroy:function(){d.removeListener(this.listener)}});Editor.shadowOptionEnabled||(c.getElementsByTagName("input")[0].setAttribute("disabled","disabled"),mxUtils.setOpacity(c,60));a.appendChild(c)}return a};var u=DiagramFormatPanel.prototype.addOptions;DiagramFormatPanel.prototype.addOptions=function(a){a=u.apply(this,arguments);var d=this.editorUi, +!0;c.shadowVisible=a;b.model.execute(c)},{install:function(a){this.listener=function(){a(b.shadowVisible)};d.addListener("shadowVisibleChanged",this.listener)},destroy:function(){d.removeListener(this.listener)}});Editor.shadowOptionEnabled||(c.getElementsByTagName("input")[0].setAttribute("disabled","disabled"),mxUtils.setOpacity(c,60));a.appendChild(c)}return a};var q=DiagramFormatPanel.prototype.addOptions;DiagramFormatPanel.prototype.addOptions=function(a){a=q.apply(this,arguments);var d=this.editorUi, b=d.editor.graph;if(b.isEnabled()){var c=d.getCurrentFile();if(null!=c&&c.isAutosaveOptional()){var e=this.createOption(mxResources.get("autosave"),function(){return d.editor.autosave},function(a){d.editor.setAutosave(a);d.editor.autosave&&c.isModified()&&c.fileChanged()},{install:function(a){this.listener=function(){a(d.editor.autosave)};d.editor.addListener("autosaveChanged",this.listener)},destroy:function(){d.editor.removeListener(this.listener)}});a.appendChild(e)}}if(this.isMathOptionVisible()&& b.isEnabled()&&"undefined"!==typeof MathJax){e=this.createOption(mxResources.get("mathematicalTypesetting"),function(){return b.mathEnabled},function(a){d.actions.get("mathematicalTypesetting").funct()},{install:function(a){this.listener=function(){a(b.mathEnabled)};d.addListener("mathEnabledChanged",this.listener)},destroy:function(){d.removeListener(this.listener)}});e.style.paddingTop="5px";a.appendChild(e);var k=d.menus.createHelpLink("https://desk.draw.io/support/solutions/articles/16000032875"); k.style.position="relative";k.style.marginLeft="6px";k.style.top="2px";e.appendChild(k)}return a};mxCellRenderer.prototype.defaultVertexShape.prototype.customProperties=[{name:"arcSize",dispName:"Arc Size",type:"float",min:0,defVal:mxConstants.LINE_ARCSIZE},{name:"absoluteArcSize",dispName:"Abs. Arc Size",type:"bool",defVal:!1}];mxCellRenderer.defaultShapes.link.prototype.customProperties=[{name:"width",dispName:"Width",type:"float",min:0,defVal:4}];mxCellRenderer.defaultShapes.flexArrow.prototype.customProperties= @@ -9782,35 +9782,35 @@ stroke:"#6c8ebf"},{fill:"#d5e8d4",stroke:"#82b366"},{fill:"#ffe6cc",stroke:"#d79 stroke:"#b46504"},{fill:"#fad9d5",stroke:"#ae4132"},{fill:"#b0e3e6",stroke:"#0e8088"},{fill:"#b1ddf0",stroke:"#10739e"},{fill:"#d0cee2",stroke:"#56517e"},{fill:"#bac8d3",stroke:"#23445d"}],[{fill:"",stroke:""},{fill:"#f5f5f5",stroke:"#666666",gradient:"#b3b3b3"},{fill:"#dae8fc",stroke:"#6c8ebf",gradient:"#7ea6e0"},{fill:"#d5e8d4",stroke:"#82b366",gradient:"#97d077"},{fill:"#ffcd28",stroke:"#d79b00",gradient:"#ffa500"},{fill:"#fff2cc",stroke:"#d6b656",gradient:"#ffd966"},{fill:"#f8cecc",stroke:"#b85450", gradient:"#ea6b66"},{fill:"#e6d0de",stroke:"#996185",gradient:"#d5739d"}],[{fill:"",stroke:""},{fill:"#eeeeee",stroke:"#36393d"},{fill:"#f9f7ed",stroke:"#36393d"},{fill:"#ffcc99",stroke:"#36393d"},{fill:"#cce5ff",stroke:"#36393d"},{fill:"#ffff88",stroke:"#36393d"},{fill:"#cdeb8b",stroke:"#36393d"},{fill:"#ffcccc",stroke:"#36393d"}]];StyleFormatPanel.prototype.customColorSchemes=null;StyleFormatPanel.prototype.findCommonProperties=function(a,d,b){if(null!=d){var c=function(a){if(null!=a)if(b)for(var c= 0;cb.size&&(m=m.slice(0,b.size));d=m.join(",");null!=b.countProperty&&(l.setCellStyles(b.countProperty,m.length,l.getSelectionCells()),e.push(b.countProperty),k.push(m.length))}l.setCellStyles(a, -d,l.getSelectionCells());e.push(a);k.push(d);if(null!=b.dependentProps)for(a=0;ad)g=g.slice(0,d);else for(var q=g.length;qg.max&&(a=g.max);a=mxUtils.htmlEntities(("int"==v?parseInt(a):a)+"");c(d,a,g)}var m=document.createElement("input");e(z,m,!0);m.value=b;m.className= -"gePropEditor";"int"!=v&&"float"!=v||g.allowAuto||(m.type="number",m.step="int"==v?"1":"any",null!=g.min&&(m.min=parseFloat(g.min)),null!=g.max&&(m.max=parseFloat(g.max)));a.appendChild(m);mxEvent.addListener(m,"keypress",function(a){13==a.keyCode&&k()});m.focus();mxEvent.addListener(m,"blur",function(){k()})})));g.isDeletable&&(q=mxUtils.button("-",mxUtils.bind(u,function(a){c(d,"",g,g.index);mxEvent.consume(a)})),q.style.height="16px",q.style.width="25px",q.style["float"]="right",q.className="geColorBtn", -z.appendChild(q));t.appendChild(z);return t}var u=this,l=this.editorUi.editor.graph,q=[];a.style.position="relative";a.style.padding="0";var n=document.createElement("table");n.className="geProperties";n.style.whiteSpace="nowrap";n.style.width="100%";var v=document.createElement("tr");v.className="gePropHeader";var t=document.createElement("th");t.className="gePropHeaderCell";var z=document.createElement("img");z.src=Sidebar.prototype.expandedImage;t.appendChild(z);mxUtils.write(t,mxResources.get("property")); -v.style.cursor="pointer";var A=function(){var d=n.querySelectorAll(".gePropNonHeaderRow"),b;if(u.editorUi.propertiesCollapsed){z.src=Sidebar.prototype.collapsedImage;b="none";for(var c=a.childNodes.length-1;0<=c;c--)try{var e=a.childNodes[c],k=e.nodeName.toUpperCase();"INPUT"!=k&&"SELECT"!=k||a.removeChild(e)}catch(ra){}}else z.src=Sidebar.prototype.expandedImage,b="";for(c=0;cd)g=g.slice(0,d);else for(var u=g.length;ug.max&&(a=g.max);a=mxUtils.htmlEntities(("int"==v?parseInt(a):a)+"");c(d,a,g)}var m=document.createElement("input");e(z,m,!0);m.value=b;m.className= +"gePropEditor";"int"!=v&&"float"!=v||g.allowAuto||(m.type="number",m.step="int"==v?"1":"any",null!=g.min&&(m.min=parseFloat(g.min)),null!=g.max&&(m.max=parseFloat(g.max)));a.appendChild(m);mxEvent.addListener(m,"keypress",function(a){13==a.keyCode&&k()});m.focus();mxEvent.addListener(m,"blur",function(){k()})})));g.isDeletable&&(u=mxUtils.button("-",mxUtils.bind(q,function(a){c(d,"",g,g.index);mxEvent.consume(a)})),u.style.height="16px",u.style.width="25px",u.style["float"]="right",u.className="geColorBtn", +z.appendChild(u));t.appendChild(z);return t}var q=this,l=this.editorUi.editor.graph,u=[];a.style.position="relative";a.style.padding="0";var n=document.createElement("table");n.className="geProperties";n.style.whiteSpace="nowrap";n.style.width="100%";var v=document.createElement("tr");v.className="gePropHeader";var t=document.createElement("th");t.className="gePropHeaderCell";var z=document.createElement("img");z.src=Sidebar.prototype.expandedImage;t.appendChild(z);mxUtils.write(t,mxResources.get("property")); +v.style.cursor="pointer";var B=function(){var d=n.querySelectorAll(".gePropNonHeaderRow"),b;if(q.editorUi.propertiesCollapsed){z.src=Sidebar.prototype.collapsedImage;b="none";for(var c=a.childNodes.length-1;0<=c;c--)try{var e=a.childNodes[c],k=e.nodeName.toUpperCase();"INPUT"!=k&&"SELECT"!=k||a.removeChild(e)}catch(ra){}}else z.src=Sidebar.prototype.expandedImage,b="";for(c=0;c=this.defaultColorSchemes.length?"24px":"30px";d.style.margin="0px 6px 6px 0px";if(null!=a)null!=a.gradient?mxClient.IS_IE&&(mxClient.IS_QUIRKS||10>document.documentMode)?d.style.filter="progid:DXImageTransform.Microsoft.Gradient(StartColorStr='"+a.fill+"', EndColorStr='"+a.gradient+"', GradientType=0)":d.style.backgroundImage= "linear-gradient("+a.fill+" 0px,"+a.gradient+" 100%)":a.fill==mxConstants.NONE?d.style.background="url('"+Dialog.prototype.noColorImage+"')":d.style.backgroundColor=""==a.fill?mxUtils.getValue(b.initialDefaultVertexStyle,mxConstants.STYLE_FILLCOLOR,"dark"==uiTheme?"#2a2a2a":"#ffffff"):a.fill||mxUtils.getValue(b.initialDefaultVertexStyle,mxConstants.STYLE_FILLCOLOR,"dark"==uiTheme?"#2a2a2a":"#ffffff"),d.style.border=a.stroke==mxConstants.NONE?"1px solid transparent":""==a.stroke?"1px solid "+mxUtils.getValue(b.initialDefaultVertexStyle, mxConstants.STYLE_STROKECOLOR,"dark"!=uiTheme?"#2a2a2a":"#ffffff"):"1px solid "+(a.stroke||mxUtils.getValue(b.initialDefaultVertexStyle,mxConstants.STYLE_STROKECOLOR,"dark"!=uiTheme?"#2a2a2a":"#ffffff"));else{var m=mxUtils.getValue(c.defaultVertexStyle,mxConstants.STYLE_FILLCOLOR,"#ffffff"),f=mxUtils.getValue(c.defaultVertexStyle,mxConstants.STYLE_STROKECOLOR,"#000000");d.style.backgroundColor=m;d.style.border="1px solid "+f}e.appendChild(d)});e.innerHTML="";for(var m=0;m=this.defaultColorSchemes.length?28:8,q=document.createElement("div");q.style.cssText="position:absolute;left:10px;top:8px;bottom:"+p+"px;width:20px;margin:4px;opacity:0.5;background-repeat:no-repeat;background-position:center center;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAIVBMVEUAAAB2dnZ4eHh3d3d1dXVxcXF2dnZ2dnZ2dnZxcXF2dnYmb3w1AAAACnRSTlMAfCTkhhvb7cQSPH2JPgAAADRJREFUCNdjwACMAmBKaiGYs2oJmLPKAZ3DabU8AMRTXpUKopislqFyVzCAuUZgikkBZjoAcMYLnp53P/UAAAAASUVORK5CYII=);"; -mxEvent.addListener(q,"click",mxUtils.bind(this,function(){u(mxUtils.mod(this.format.currentScheme-1,this.defaultColorSchemes.length))}));var v=document.createElement("div");v.style.cssText="position:absolute;left:202px;top:8px;bottom:"+p+"px;width:20px;margin:4px;opacity:0.5;background-repeat:no-repeat;background-position:center center;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAIVBMVEUAAAB2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYBuwCcAAAACnRSTlMAfCTkhhvb7cQSPH2JPgAAADZJREFUCNdjQAOMAmBKaiGY8loF5rKswsZlrVo8AUiFrTICcbIWK8A5DF1gDoMymMPApIAwHwCS0Qx/U7qCBQAAAABJRU5ErkJggg==);"; -1=this.defaultColorSchemes.length&&a.appendChild(m);return a};StyleFormatPanel.prototype.addEditOps=function(a){var d=this.format.getSelectionState(),b=null;1==this.editorUi.editor.graph.getSelectionCount()&&(b=mxUtils.button(mxResources.get("editStyle"), +4)&&mxUtils.br(e),d(a[m])});null==this.format.currentScheme?q("dark"==uiTheme?1:0):q(this.format.currentScheme);var p=10>=this.defaultColorSchemes.length?28:8,u=document.createElement("div");u.style.cssText="position:absolute;left:10px;top:8px;bottom:"+p+"px;width:20px;margin:4px;opacity:0.5;background-repeat:no-repeat;background-position:center center;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAIVBMVEUAAAB2dnZ4eHh3d3d1dXVxcXF2dnZ2dnZ2dnZxcXF2dnYmb3w1AAAACnRSTlMAfCTkhhvb7cQSPH2JPgAAADRJREFUCNdjwACMAmBKaiGYs2oJmLPKAZ3DabU8AMRTXpUKopislqFyVzCAuUZgikkBZjoAcMYLnp53P/UAAAAASUVORK5CYII=);"; +mxEvent.addListener(u,"click",mxUtils.bind(this,function(){q(mxUtils.mod(this.format.currentScheme-1,this.defaultColorSchemes.length))}));var n=document.createElement("div");n.style.cssText="position:absolute;left:202px;top:8px;bottom:"+p+"px;width:20px;margin:4px;opacity:0.5;background-repeat:no-repeat;background-position:center center;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQBAMAAADQT4M0AAAAIVBMVEUAAAB2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYBuwCcAAAACnRSTlMAfCTkhhvb7cQSPH2JPgAAADZJREFUCNdjQAOMAmBKaiGY8loF5rKswsZlrVo8AUiFrTICcbIWK8A5DF1gDoMymMPApIAwHwCS0Qx/U7qCBQAAAABJRU5ErkJggg==);"; +1=this.defaultColorSchemes.length&&a.appendChild(m);return a};StyleFormatPanel.prototype.addEditOps=function(a){var d=this.format.getSelectionState(),b=null;1==this.editorUi.editor.graph.getSelectionCount()&&(b=mxUtils.button(mxResources.get("editStyle"), mxUtils.bind(this,function(a){this.editorUi.actions.get("editStyle").funct()})),b.setAttribute("title",mxResources.get("editStyle")+" ("+this.editorUi.actions.get("editStyle").shortcut+")"),b.style.width="202px",b.style.marginBottom="2px",a.appendChild(b));var c=this.editorUi.editor.graph,e=c.view.getState(c.getSelectionCell());1==c.getSelectionCount()&&null!=e&&null!=e.shape&&null!=e.shape.stencil?(d=mxUtils.button(mxResources.get("editShape"),mxUtils.bind(this,function(a){this.editorUi.actions.get("editShape").funct()})), d.setAttribute("title",mxResources.get("editShape")),d.style.marginBottom="2px",null==b?d.style.width="202px":(b.style.width="100px",d.style.width="100px",d.style.marginLeft="2px"),a.appendChild(d)):d.image&&(d=mxUtils.button(mxResources.get("editImage"),mxUtils.bind(this,function(a){this.editorUi.actions.get("image").funct()})),d.setAttribute("title",mxResources.get("editImage")),d.style.marginBottom="2px",null==b?d.style.width="202px":(b.style.width="100px",d.style.width="100px",d.style.marginLeft= "2px"),a.appendChild(d));return a}}Graph.customFontElements={};Graph.recentCustomFonts={};Graph.isGoogleFontUrl=function(a){return a.substring(0,Editor.GOOGLE_FONTS.length)==Editor.GOOGLE_FONTS};Graph.isCssFontUrl=function(a){return Graph.isGoogleFontUrl(a)};Graph.createFontElement=function(a,d){var b;Graph.isCssFontUrl(d)?(b=document.createElement("link"),b.setAttribute("rel","stylesheet"),b.setAttribute("type","text/css"),b.setAttribute("charset","UTF-8"),b.setAttribute("href",d)):(b=document.createElement("style"), @@ -9822,12 +9822,12 @@ d.altKey=a.altKey,d.shiftKey=a.shiftKey,d.metaKey=a.metaKey,d.button=a.button,d. d?this.getPointForEvent(d):b.apply(this,arguments)};var c=this.layoutManager.getLayout;this.layoutManager.getLayout=function(a){var d=this.graph.getCellStyle(a);if(null!=d){if("rack"==d.childLayout){var b=new mxStackLayout(this.graph,!1);b.gridSize=null!=d.rackUnitSize?parseFloat(d.rackUnitSize):"undefined"!==typeof mxRackContainer?mxRackContainer.unitSize:20;b.marginLeft=d.marginLeft||0;b.marginRight=d.marginRight||0;b.marginTop=d.marginTop||0;b.marginBottom=d.marginBottom||0;b.allowGaps=d.allowGaps|| 0;b.horizontal="1"==mxUtils.getValue(d,"horizontalRack","0");b.resizeParent=!1;b.fill=!0;return b}if("undefined"!==typeof mxTableLayout&&"tableLayout"==d.childLayout)return b=new mxTableLayout(this.graph),b.rows=d.tableRows||2,b.columns=d.tableColumns||2,b.colPercentages=d.colPercentages,b.rowPercentages=d.rowPercentages,b.equalColumns="1"==mxUtils.getValue(d,"equalColumns",b.colPercentages?"0":"1"),b.equalRows="1"==mxUtils.getValue(d,"equalRows",b.rowPercentages?"0":"1"),b.resizeParent="1"==mxUtils.getValue(d, "resizeParent","1"),b.border=d.tableBorder||b.border,b.marginLeft=d.marginLeft||0,b.marginRight=d.marginRight||0,b.marginTop=d.marginTop||0,b.marginBottom=d.marginBottom||0,b.autoAddCol="1"==mxUtils.getValue(d,"autoAddCol","0"),b.autoAddRow="1"==mxUtils.getValue(d,"autoAddRow",b.autoAddCol?"0":"1"),b.colWidths=d.colWidths||"100",b.rowHeights=d.rowHeights||"50",b}return c.apply(this,arguments)};this.updateGlobalUrlVariables()};var x=Graph.prototype.postProcessCellStyle;Graph.prototype.postProcessCellStyle= -function(a){return Graph.processFontStyle(x.apply(this,arguments))};var y=mxSvgCanvas2D.prototype.updateTextNodes;mxSvgCanvas2D.prototype.updateTextNodes=function(a,d,b,c,e,k,m,f,p,g,u){y.apply(this,arguments);Graph.processFontAttributes(u)};var B=mxText.prototype.redraw;mxText.prototype.redraw=function(){B.apply(this,arguments);null!=this.node&&"DIV"==this.node.nodeName&&Graph.processFontAttributes(this.node)};Graph.prototype.getCustomFonts=function(){var a=this.extFonts,a=null!=a?a.slice():[],d; +function(a){return Graph.processFontStyle(x.apply(this,arguments))};var y=mxSvgCanvas2D.prototype.updateTextNodes;mxSvgCanvas2D.prototype.updateTextNodes=function(a,d,b,c,e,k,m,f,p,g,q){y.apply(this,arguments);Graph.processFontAttributes(q)};var C=mxText.prototype.redraw;mxText.prototype.redraw=function(){C.apply(this,arguments);null!=this.node&&"DIV"==this.node.nodeName&&Graph.processFontAttributes(this.node)};Graph.prototype.getCustomFonts=function(){var a=this.extFonts,a=null!=a?a.slice():[],d; for(d in Graph.customFontElements){var b=Graph.customFontElements[d];a.push({name:b.name,url:b.url})}return a};Graph.prototype.setFont=function(a,d){Graph.addFont(a,d);document.execCommand("fontname",!1,a);if(null!=d){var b=this.cellEditor.textarea.getElementsByTagName("font");d=Graph.getFontUrl(a,d);for(var c=0;c=a.length){for(var u=g=0;u=a.length){for(var q=g=0;q'),b.writeln("@media print {"),b.writeln("span.MathJax_SVG svg { shape-rendering: crispEdges; }"),b.writeln("}"),b.writeln(""));null!=a.editor.fontCss&&(b.writeln('"));for(var c=d.getCustomFonts(),e=0;e'):(b.writeln('"))}};if("undefined"!==typeof MathJax){var D=b.renderPage;b.renderPage=function(d,b,c,e,k,m){var f=mxClient.NO_FO;mxClient.NO_FO=this.graph.mathEnabled&&!a.editor.useForeignObjectForMath?!0:a.editor.originalNoForeignObject;var p=D.apply(this,arguments);mxClient.NO_FO= -f;this.graph.mathEnabled?this.mathEnabled=this.mathEnabled||!0:p.className="geDisableMathJax";return p}}q=null;null!=e.themes&&"darkTheme"==e.defaultThemeName&&(q=e.stylesheet,e.stylesheet=e.getDefaultStylesheet(),e.refresh());b.open(null,null,k,!0);null!=q&&(e.stylesheet=q,e.refresh())}else{v=d.background;if(null==v||""==v||v==mxConstants.NONE)v="#ffffff";b.backgroundColor=v;b.autoOrigin=C;b.appendGraph(d,t,q,n,k,!0);k=d.getCustomFonts();if(null!=b.wnd)for(q=0;q'):(b.wnd.document.writeln('"))}m&&(d.useCssTransforms=m,d.currentTranslate=f,d.currentScale=p,d.view.translate=g,d.view.scale=u);return b}var c=parseInt(P.value)/100;isNaN(c)&&(c= -1,P.value="100 %");var c=.75*c,k=null;null!=e.themes&&"darkTheme"==e.defaultThemeName&&(k=e.stylesheet,e.stylesheet=e.getDefaultStylesheet(),e.refresh());var m=q.value,f=v.value,g=!u.checked,l=null;if(EditorUi.isElectronApp)PrintDialog.electronPrint(a,u.checked,m,f,A.checked,F.value,J.value,parseInt(z.value)/100,parseInt(P.value)/100,K.get());else{g&&(g=m==p&&f==p);if(!g&&null!=a.pages&&a.pages.length){var n=0,g=a.pages.length-1;u.checked||(n=parseInt(m)-1,g=parseInt(f)-1);for(var t=n;t<=g;t++){var C= -a.pages[t],m=C==a.currentPage?e:null;if(null==m){var m=a.createTemporaryGraph(e.stylesheet),f=!0,n=!1,y=null,x=null;null==C.viewState&&null==C.root&&a.updatePageRoot(C);null!=C.viewState&&(f=C.viewState.pageVisible,n=C.viewState.mathEnabled,y=C.viewState.background,x=C.viewState.backgroundImage,m.extFonts=C.viewState.extFonts);m.background=y;m.backgroundImage=null!=x?new mxImage(x.src,x.width,x.height):null;m.pageVisible=f;m.mathEnabled=n;var D=m.getGlobalVariable;m.getGlobalVariable=function(d){return"page"== -d?C.getName():"pagenumber"==d?t+1:"pagecount"==d?null!=a.pages?a.pages.length:1:D.apply(this,arguments)};document.body.appendChild(m.container);a.updatePageRoot(C);m.model.setRoot(C.root)}l=b(m,l,t!=g);m!=e&&m.container.parentNode.removeChild(m.container)}}else l=b(e);null==l?a.handleError({message:mxResources.get("errorUpdatingPreview")}):(l.mathEnabled&&(g=l.wnd.document,d&&(l.wnd.IMMEDIATE_PRINT=!0),g.writeln('