From af7bdab90a3c497836cc041e72bbb0a497b575d8 Mon Sep 17 00:00:00 2001 From: David Benson Date: Thu, 3 Aug 2017 16:55:52 +0100 Subject: [PATCH] 7.0.0 release --- ChangeLog | 6 + VERSION | 2 +- .../importer/GliffyDiagramConverter.java | 23 +- .../io/gliffy/importer/StencilTranslator.java | 7 +- .../importer/gliffyTranslation.properties | 86 +- .../mxgraph/io/gliffy/model/GliffyObject.java | 20 +- war/cache.manifest | 2 +- war/js/app.min.js | 84 +- war/js/atlas-viewer.min.js | 44 +- war/js/atlas.min.js | 211 +- war/js/diagramly/Extensions.js | 1951 +++++++++-------- war/js/embed-static.min.js | 32 +- war/js/extensions.min.js | 127 +- war/js/mxgraph/Shapes.js | 9 +- war/js/reader.min.js | 32 +- war/js/viewer.min.js | 44 +- 16 files changed, 1446 insertions(+), 1234 deletions(-) diff --git a/ChangeLog b/ChangeLog index 22e541ad..60f27552 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +03-AUG-2017: 7.0.0 + +- Improvements to Gliffy import +- Improvements to Lucidchart import +- Sent semantic versioning on holiday + 02-AUG-2017: 6.9.9 - Fixes paste from Lucidchart diff --git a/VERSION b/VERSION index da7c4ecc..41225218 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -6.9.9 \ No newline at end of file +7.0.0 \ No newline at end of file diff --git a/src/com/mxgraph/io/gliffy/importer/GliffyDiagramConverter.java b/src/com/mxgraph/io/gliffy/importer/GliffyDiagramConverter.java index 6557aa9e..ab712537 100644 --- a/src/com/mxgraph/io/gliffy/importer/GliffyDiagramConverter.java +++ b/src/com/mxgraph/io/gliffy/importer/GliffyDiagramConverter.java @@ -345,17 +345,18 @@ public class GliffyDiagramConverter GliffyObject textObject = null; String link = null; - Graphic graphic = null; + Graphic graphic = gliffyObject.getGraphic(); + String mxShapeName = StencilTranslator.translate(gliffyObject.uid, graphic != null && graphic.getShape() != null ? graphic.getShape().tid : null); if (gliffyObject.isGroup()) { - style.append("group;"); + if (graphic == null || mxShapeName == null) + style.append("group;"); + cell.setVertex(true); } else { - // groups don't have graphic - graphic = gliffyObject.getGraphic(); textObject = gliffyObject.getTextObject(); } @@ -368,8 +369,12 @@ public class GliffyDiagramConverter GliffyShape shape = graphic.Shape; cell.setVertex(true); - style.append("shape=" + StencilTranslator.translate(gliffyObject.uid)).append(";"); - style.append("shadow=" + (shape.dropShadow ? 1 : 0)).append(";"); + + if (mxShapeName != null) + style.append("shape=").append(mxShapeName).append(";"); + + if(style.lastIndexOf("shadow=") == -1) + style.append("shadow=" + (shape.dropShadow ? 1 : 0)).append(";"); if(style.lastIndexOf("strokeWidth") == -1) { @@ -463,7 +468,7 @@ public class GliffyDiagramConverter { GliffyImage image = graphic.getImage(); cell.setVertex(true); - style.append("shape=" + StencilTranslator.translate(gliffyObject.uid)).append(";"); + style.append("shape=" + StencilTranslator.translate(gliffyObject.uid, null)).append(";"); style.append("image=" + image.getUrl()).append(";"); } else if (gliffyObject.isSvg()) @@ -480,7 +485,7 @@ public class GliffyDiagramConverter else if (gliffyObject.isSwimlane()) { cell.setVertex(true); - style.append(StencilTranslator.translate(gliffyObject.uid)).append(";"); + style.append(StencilTranslator.translate(gliffyObject.uid, null)).append(";"); GliffyObject header = gliffyObject.children.get(0);// first child is the header of the swimlane @@ -535,7 +540,7 @@ public class GliffyDiagramConverter GliffyMindmap mindmap = rectangle.graphic.Mindmap; - style.append("shape=" + StencilTranslator.translate(gliffyObject.uid)).append(";"); + style.append("shape=" + StencilTranslator.translate(gliffyObject.uid, null)).append(";"); style.append("shadow=" + (mindmap.dropShadow ? 1 : 0)).append(";"); style.append("strokeWidth=" + mindmap.strokeWidth).append(";"); style.append("fillColor=" + mindmap.fillColor).append(";"); diff --git a/src/com/mxgraph/io/gliffy/importer/StencilTranslator.java b/src/com/mxgraph/io/gliffy/importer/StencilTranslator.java index b78dc325..0694ea99 100644 --- a/src/com/mxgraph/io/gliffy/importer/StencilTranslator.java +++ b/src/com/mxgraph/io/gliffy/importer/StencilTranslator.java @@ -27,10 +27,15 @@ public class StencilTranslator } } - public static String translate(String gliffyShapeKey) + public static String translate(String gliffyShapeKey, String tid) { String shape = translationTable.get(gliffyShapeKey); + + if (shape == null && tid != null) + shape = translationTable.get(tid); + logger.info(gliffyShapeKey + " -> " + shape); + return shape; } } diff --git a/src/com/mxgraph/io/gliffy/importer/gliffyTranslation.properties b/src/com/mxgraph/io/gliffy/importer/gliffyTranslation.properties index 70575409..0f7ab988 100644 --- a/src/com/mxgraph/io/gliffy/importer/gliffyTranslation.properties +++ b/src/com/mxgraph/io/gliffy/importer/gliffyTranslation.properties @@ -103,16 +103,16 @@ com.gliffy.shape.swimlanes.swimlanes_v1.default.horizontal_four_lane_pool=swimla # UML v2 # # UML V2 CLASS -com.gliffy.shape.uml.uml_v2.class.object=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica -com.gliffy.shape.uml.uml_v2.class.data_type=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica -com.gliffy.shape.uml.uml_v2.class.enumeration=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica -com.gliffy.shape.uml.uml_v2.class.interface=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica -com.gliffy.shape.uml.uml_v2.class.class2=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica -com.gliffy.shape.uml.uml_v2.class.class=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica -com.gliffy.shape.uml.uml_v2.class.package=folder;fontStyle=1;spacingTop=10;tabWidth=40;tabHeight=14;tabPosition=left +com.gliffy.shape.uml.uml_v2.class.object=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica +com.gliffy.shape.uml.uml_v2.class.data_type=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica +com.gliffy.shape.uml.uml_v2.class.enumeration=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica +com.gliffy.shape.uml.uml_v2.class.interface=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica +com.gliffy.shape.uml.uml_v2.class.class2=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica +com.gliffy.shape.uml.uml_v2.class.class=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica +com.gliffy.shape.uml.uml_v2.class.package=rect;strokeColor=none;shadow=0;fillColor=none com.gliffy.shape.uml.uml_v2.class.simple_class=rect com.gliffy.shape.uml.uml_v2.class.primitive=rect -com.gliffy.shape.uml.uml_v2.class.stereotype=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica +com.gliffy.shape.uml.uml_v2.class.stereotype=rect com.gliffy.shape.uml.uml_v2.class.generalization=endArrow=block;endFill=0;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=top;endSize=12 com.gliffy.shape.uml.uml_v2.class.implements=endArrow=block;endFill=0;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=top;dashed=1;endSize=12 com.gliffy.shape.uml.uml_v2.class.association=endArrow=none;edgeStyle=orthogonalEdgeStyle @@ -130,10 +130,10 @@ com.gliffy.shape.uml.uml_v2.class.note=note;size=10 com.gliffy.shape.uml.uml_v2.class.anchor_line=endArrow=none;endSize=12;dashed=1 # UML v1 com.gliffy.shape.uml.uml_v1.default.package=folder;fontStyle=1;spacingTop=10;tabWidth=40;tabHeight=14;tabPosition=left -com.gliffy.shape.uml.uml_v1.default.class=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica +com.gliffy.shape.uml.uml_v1.default.class=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica com.gliffy.shape.uml.uml_v1.default.simple_class=rect com.gliffy.shape.uml.uml_v1.default.note=note;size=10 -com.gliffy.shape.uml.uml_v1.default.object=verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica +com.gliffy.shape.uml.uml_v1.default.object=rect;verticalAlign=top;align=left;overflow=fill;fontSize=12;fontFamily=Helvetica com.gliffy.shape.uml.uml_v1.default.interface=ellipse com.gliffy.shape.uml.uml_v1.default.node=cube;size=10;direction=south com.gliffy.shape.uml.uml_v1.default.component=component;align=left;spacingLeft=36 @@ -151,19 +151,19 @@ com.gliffy.shape.uml.uml_v1.default.self_message=curved=1 com.gliffy.shape.uml.uml_v1.default.actor=umlActor;verticalLabelPosition=bottom;verticalAlign=bottom com.gliffy.shape.uml.uml_v1.default.use_case=ellipse # UML v2 SEQUENCE -com.gliffy.shape.uml.uml_v2.sequence.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill -com.gliffy.shape.uml.uml_v2.sequence.interaction_use=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill -com.gliffy.shape.uml.uml_v2.sequence.opt_combined_fragment=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill -com.gliffy.shape.uml.uml_v2.sequence.loop_combined_fragment=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill -com.gliffy.shape.uml.uml_v2.sequence.alt_combined_fragment=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill +com.gliffy.shape.uml.uml_v2.sequence.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;labelX=26 +com.gliffy.shape.uml.uml_v2.sequence.interaction_use=stencil(rVNbDsIgEDwN/wjxAMbHPWi7taQIDWCtt5dmsVI0aqw/hBkmwyy7EL51jeiAMNoQviOMrSgNa8CXDAvXQemR7IWVolCAJ85b08JFVj56SN2AlX485XtCN4RvC1G2R2vOuiLsMLG1sRDZO9WJ0SWCk+nHaAPaxiDXFD28lNSJli8Qr9hbdZaDrd+qF4jz0KUyDlIi7GfPVUulsBmp6k8vOg3CT+o7/q7yZ/XH2p/r9jB4nE40tVDjJcOszVnXqVDyqJEqQXuwSPcJf5JVFYd/FujFOAcWPxjf3wA=);xSize=90;align=left;spacingLeft=10;overflow=fill +com.gliffy.shape.uml.uml_v2.sequence.opt_combined_fragment=stencil(rVPREoIgEPwa3gmmD2jM/gP1TEYCB0nt78M5MtSmmuyFYZedZY87CE/aSjRAGK0IPxLGdpT61eN+gUXbQO6Q7ISVIlOAJ62zpoZeFi54SF2BlW485SmhB8KTTOT12ZqrLgg7TWxpLAT2QTVidAngYrox2oC2IcgtRk8vJXWk5RvEO/ZWvcjB9m/VG8TL0LkyLcSE38+eq5RKYTNi1Z9edBqEn9QP/F3la/XH2td1OxgcTieamsbhJcOszYuuU6HkWSOVg3Zgke4i/iKLIgz/LNCLcfYsfjCe3gE=);xSize=90;align=left;spacingLeft=10;overflow=fill +com.gliffy.shape.uml.uml_v2.sequence.loop_combined_fragment=stencil(rVNbDoMgEDwN/xTSAzStvQeFVYkUDFJtb1/NokX7jOkPYYbJMLsshO+bUtRAGC0JPxDGNpT2a4+7BRZNDTIg2QqvxckAnjTBuwo6rUL00LYEr8NwyjNCd4TvT0JWhXcXqwg7TmzuPER2pGoxuERwdu0Q7Yq2McgtRQ8vo22i5dv14g37qGZzdYTv1HS9eBlaGtdASvT7WbtybQw+Rqr6U0enQVilHvFvlT+rv9b+XHeAa8DpRFPjXI23jBlfPjsVRhcWKQk2gEe6TfizVipO/yzRi3nuWfxhPLsD);xSize=90;align=left;spacingLeft=10;overflow=fill +com.gliffy.shape.uml.uml_v2.sequence.alt_combined_fragment=stencil(rVNbDsIgEDwN/wjxAMbHPWi7WlKEBrCtt5dmsVI0aqw/hBkmwyy7EL51tWiBMFoTviOMrSgNa8B9hoVrofRIdsJKUSjAE+etaaCXlY8eUtdgpR9P+Z7QDeHbQpTNyZqLrgg7TOzRWIjsnWrF6BLB2XRjtAFtY5Brih5eSupEyxeIV+ytOsvB1m/VC8R56FIZBykR9rPnOkqlsBmp6k8vOg3CT+o7/q7yZ/XH2p/r9jB4nE40FcrjJcOszVnXqVDypJEqQXuwSHcJf5ZVFYd/FujFOAcWPxjf3wA=);xSize=90;align=left;spacingLeft=10;overflow=fill com.gliffy.shape.basic.basic_v1.default.line=edgeStyle=none;endArrow=none #composite -com.gliffy.shape.uml.uml_v2.sequence.entity_lifeline=umlEntity +com.gliffy.shape.uml.uml_v2.sequence.entity_lifeline=rect;fillColor=none;strokeColor=none #composite -com.gliffy.shape.uml.uml_v2.sequence.control_lifeline=umlControl +com.gliffy.shape.uml.uml_v2.sequence.control_lifeline=rect;fillColor=none;strokeColor=none #composite -com.gliffy.shape.uml.uml_v2.sequence.boundary_lifeline=umlBoundary -com.gliffy.shape.uml.uml_v2.sequence.lifeline=umlLifeline;perimeter=lifelinePerimeter +com.gliffy.shape.uml.uml_v2.sequence.boundary_lifeline=rect;fillColor=none;strokeColor=none +com.gliffy.shape.uml.uml_v2.sequence.lifeline=rect;fillColor=none;strokeColor=none com.gliffy.shape.uml.uml_v2.sequence.activation=rect com.gliffy.shape.uml.uml_v2.sequence.destruction=mxgraph.sysml.x com.gliffy.shape.uml.uml_v2.sequence.init_message=endArrow=open;endSize=12;startArrow=none;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=bottom;dashed=1 @@ -173,7 +173,7 @@ com.gliffy.shape.uml.uml_v2.sequence.async_message=endArrow=open;endSize=12;star com.gliffy.shape.uml.uml_v2.sequence.return_message=endArrow=none;startSize=12;startArrow=open;edgeStyle=orthogonalEdgeStyle;align=left;verticalAlign=bottom;dashed=1 com.gliffy.shape.uml.uml_v2.sequence.self_message=curved=1 com.gliffy.shape.uml.uml_v2.sequence.actor=umlActor;verticalLabelPosition=bottom;verticalAlign=top -#com.gliffy.shape.uml.uml_v2.sequence.concurrent= +com.gliffy.shape.uml.uml_v2.sequence.concurrent=stencil(nZFNDsIgEIVPwx6ZjS4NtveYtkRIKxDAVm8vP5qA3RgTNrw330zmDQHuJVpBGEVvxRgIXAhjKzqFwxJlFh0fnJnFpqYgi620FE6F5EJH6JkAH3Ccr87c9fSW6Ck94BYTVUlZvZk1zXyUfrTMeda/fg8tSlfQgbbYv9zxR66lPl36r3WjUm0c083ZNXW5aJdXVsstoHsB);dashed=1 com.gliffy.shape.uml.uml_v2.sequence.continuation=rect;rounded=1 com.gliffy.shape.uml.uml_v2.sequence.gate=rect com.gliffy.shape.uml.uml_v2.sequence.constraint=edgeStyle=none;endArrow=none;dashed=1 @@ -195,19 +195,19 @@ com.gliffy.shape.uml.uml_v2.activity.jump_node=ellipse com.gliffy.shape.uml.uml_v2.activity.control_flow=edgeStyle=none;endArrow=open;endSize=12 com.gliffy.shape.uml.uml_v2.activity.object_flow=edgeStyle=none;endArrow=open;dashed=1;endSize=12 #com.gliffy.shape.uml.uml_v2.activity.exception_flow= -com.gliffy.shape.uml.uml_v2.activity.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill +com.gliffy.shape.uml.uml_v2.activity.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;labelX=32 com.gliffy.shape.uml.uml_v2.activity.object_node=rect -com.gliffy.shape.uml.uml_v2.activity.structured_node=rounded=1;dashed=1 -com.gliffy.shape.uml.uml_v2.activity.region=rounded=1;dashed=1 +com.gliffy.shape.uml.uml_v2.activity.structured_node=rect;rounded=1;dashed=1 +com.gliffy.shape.uml.uml_v2.activity.region=rect;rounded=1;dashed=1 com.gliffy.shape.uml.uml_v2.activity.note=note;size=10 com.gliffy.shape.uml.uml_v2.activity.anchor_line=edgeStyle=none;endArrow=none;dashed=1 # UML v2 STATE MACHINE -com.gliffy.shape.uml.uml_v2.state_machine.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill -com.gliffy.shape.uml.uml_v2.state_machine.orthoganal_state=swimlane;rounded=1;startSize=30;arcSize=10 -com.gliffy.shape.uml.uml_v2.state_machine.composite_state=swimlane;rounded=1;startSize=30;arcSize=10 +com.gliffy.shape.uml.uml_v2.state_machine.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;labelX=32 +com.gliffy.shape.uml.uml_v2.state_machine.orthoganal_state=rect;rounded=1;startSize=30;arcSize=10 +com.gliffy.shape.uml.uml_v2.state_machine.composite_state=rect;rounded=1;startSize=30;arcSize=10 com.gliffy.shape.uml.uml_v2.state_machine.state=rect;rounded=1 # temporary -com.gliffy.shape.uml.uml_v2.state_machine.submachine_state=rect;rounded=1 +com.gliffy.shape.uml.uml_v2.state_machine.submachine_state=ext;symbol0=ellipse;symbol0Width=10;symbol0Height=10;symbol0Align=right;symbol0VerticalAlign=bottom;symbol0Spacing=5;symbol0VSpacing=5;symbol1=ellipse;symbol1Width=10;symbol1Height=10;symbol1Align=right;symbol1VerticalAlign=bottom;symbol1Spacing=25;symbol1VSpacing=5;symbol2=line;symbol2Width=10;symbol2Height=10;symbol2Align=right;symbol2VerticalAlign=bottom;symbol2Spacing=15;symbol2VSpacing=5;rounded=1;arcSize=10 com.gliffy.shape.uml.uml_v2.state_machine.final_state=mxgraph.bpmn.shape;verticalLabelPosition=bottom;verticalAlign=top;perimeter=ellipsePerimeter;outline=end;symbol=terminate com.gliffy.shape.uml.uml_v2.state_machine.initial_state=ellipse com.gliffy.shape.uml.uml_v2.state_machine.entry_point=ellipse @@ -231,8 +231,8 @@ com.gliffy.shape.uml.uml_v2.deployment.artifact=note;size=10 com.gliffy.shape.uml.uml_v2.deployment.component1=component;align=left;spacingLeft=36 com.gliffy.shape.uml.uml_v2.deployment.component2=ext;symbol0=component;symbol0Width=20;symbol0Height=20;symbol0Align=right;symbol0VerticalAlign=top;symbol0Spacing=4;symbol0ArcSpacing=0.25;jettyWidth=8;jettyHeight=4;overflow=fill com.gliffy.shape.uml.uml_v2.deployment.interface=ellipse -#com.gliffy.shape.uml.uml_v2.deployment.simple_interface= -#com.gliffy.shape.uml.uml_v2.deployment.required_interface= +com.gliffy.shape.uml.uml_v2.deployment.simple_interface=stencil(bVHRDsIgDPwaHpewERN9NFP/o5s4yHCQgm7+vWydBqYJL3dXer2WidorcJJVHLyTbWDixKrqCaihMZGuouID2l6O+hoUyXpQEnWYVXFm/MhE3UDbd2gfw3Wl+GF+onYw/0qohb3b5+w5Ub8dJ6MXwZITvny7A7ZRxk85VeMrg/97rWgqYNK+QBsgaDtkmgHsZBEtipuBLpP8KKVL6DKbK0kZySRoXOqysjSCNEY7n4Qut6EJjgT3K1Q5TDvetDFbHxppmefnIgtL1xbnNw==) +com.gliffy.shape.uml.uml_v2.deployment.required_interface=stencil(bZDNDoMgEISfhiMJQnrosbH2PValSrRCFurP25cfbSRtwmW+GXZhiChtD0YSzsAa2Tgi7oTzGVBBPXrMvWMd6kEuqnV9stXUS1QuuKIi7EZEWUMzdKjfU7sjdg1HlAbCrROK9KXnsHNN8y4sLdqSLFjSj+90wMbbeMRTGrdM/p+1q5XCqixF7cApPWXeCNhJ6lfQ5whdZtlFSnPCRfau4zOenH7pG419ZbkY+uko0tS/qD4=) com.gliffy.shape.uml.uml_v2.deployment.port=rect;verticalLabelPosition=bottom;verticalAlign=top com.gliffy.shape.uml.uml_v2.deployment.instance=rect com.gliffy.shape.uml.uml_v2.deployment.instance_specification=ext;symbol0=note;symbol0Width=20;symbol0Height=20;symbol0Align=right;symbol0VerticalAlign=top;symbol0Spacing=4;symbol0ArcSpacing=0.25;jettyWidth=8;jettyHeight=4;overflow=fill;align=center;verticalAlign=bottom;size=5 @@ -268,7 +268,7 @@ com.gliffy.shape.uml.uml_v2.use_case.use_case=ellipse com.gliffy.shape.uml.uml_v2.use_case.actor=umlActor;verticalLabelPosition=bottom;verticalAlign=bottom com.gliffy.shape.uml.uml_v2.use_case.association=edgeStyle=none com.gliffy.shape.uml.uml_v2.use_case.system=rect -com.gliffy.shape.uml.uml_v2.use_case.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill +com.gliffy.shape.uml.uml_v2.use_case.frame=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;labelX=26 com.gliffy.shape.uml.uml_v2.use_case.include=edgeStyle=none;dashed=1 com.gliffy.shape.uml.uml_v2.use_case.extend=edgeStyle=none;dashed=1 com.gliffy.shape.uml.uml_v2.use_case.dependency=edgeStyle=none;dashed=1 @@ -303,7 +303,7 @@ com.gliffy.shape.erd.erd_v1.default.many_optional_many_mandatory=edgeStyle=ortho # BPMN v1 # # BPMN v1 EVENTS -com.gliffy.shape.bpmn.bpmn_v1.events.general_start=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=standard;symbol=general +com.gliffy.shape.bpmn.bpmn_v1.events.general_start=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=standard;symbol=general;strokeWidth=1 com.gliffy.shape.bpmn.bpmn_v1.events.general_intermediate=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=throwing;symbol=general com.gliffy.shape.bpmn.bpmn_v1.events.general_end=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=end;symbol=general com.gliffy.shape.bpmn.bpmn_v1.events.message_start=mxgraph.bpmn.shape;perimeter=ellipsePerimeter;outline=standard;symbol=message @@ -330,7 +330,7 @@ com.gliffy.shape.bpmn.bpmn_v1.events.multiple_end=mxgraph.bpmn.shape;perimeter=e com.gliffy.shape.bpmn.bpmn_v1.activities.multiple_instances=mxgraph.ios7.icons.pause;fillColor=#000000 com.gliffy.shape.bpmn.bpmn_v1.activities.compensation=mxgraph.bpmn.compensation;html=1;fillColor=#000000;verticalLabelPosition=bottom;verticalAlign=top com.gliffy.shape.bpmn.bpmn_v1.activities.ad_hoc=mxgraph.bpmn.ad_hoc;fillColor=#000000;verticalLabelPosition=bottom;verticalAlign=top -com.gliffy.shape.bpmn.bpmn_v1.activities.looping=mxgraph.bpmn.loop;verticalLabelPosition=bottom;verticalAlign=top +com.gliffy.shape.bpmn.bpmn_v1.activities.looping=mxgraph.bpmn.loop;verticalLabelPosition=bottom;verticalAlign=top;strokeWidth=5 com.gliffy.shape.bpmn.bpmn_v1.activities.process=ext;rounded=1 com.gliffy.shape.bpmn.bpmn_v1.activities.transaction=ext;rounded=1;double=1 com.gliffy.shape.bpmn.bpmn_v1.activities.expanded_sub_process=ext;rounded=1 @@ -1309,10 +1309,10 @@ com.gliffy.shape.ui.ui_v3.containers_content.graph_line=mxgraph.mockup.graphics. com.gliffy.shape.ui.ui_v3.containers_content.transparent_rect=rect com.gliffy.shape.ui.ui_v3.containers_content.map=mxgraph.mockup.misc.map com.gliffy.shape.ui.ui_v3.containers_content.graph_pie=mxgraph.mockup.graphics.pieChart;strokeColor=#008cff;parts=10,20,35;partColors=#e0e0e0,#d0d0d0,#c0c0c0,#b0b0b0,#a0a0a0 -com.gliffy.shape.ui.ui_v3.containers_content.note=rect +com.gliffy.shape.ui.ui_v3.containers_content.note=rect;fillColor=#fff0ab;strokeColor=none;gradientColor=#ffe77c;shadow=1 #com.gliffy.shape.ui.ui_v3.containers_content.table_three_by_three= # UI v3 TABLES -#needs custom code +#Treated as groups #com.gliffy.shape.table.table_v2.default.table_horizontal_and_vertical_title_three_by_two= #com.gliffy.shape.table.table_v2.default.table_horizontal_title_three_by_two= #com.gliffy.shape.table.table_v2.default.table_three_by_three= @@ -1564,4 +1564,20 @@ com.gliffy.shape.floorplan.floorplan_v2.miscellaneous.piano=mxgraph.floorplan.pi # com.gliffy.shape.mindmap.mindmap_v1.default.main_topic=rect;rounded=1 com.gliffy.shape.mindmap.mindmap_v1.default.subtopic=rect;rounded=1 -com.gliffy.shape.mindmap.mindmap_v1.default.child_node=rect;rounded=1;dashed=1 \ No newline at end of file +com.gliffy.shape.mindmap.mindmap_v1.default.child_node=rect;rounded=1;dashed=1 + +# +# Child shape TID +# +com.gliffy.stencil.alt_combined_fragment.alt_area_v1=rect;shadow=0;fillColor=none;strokeColor=none;opacity=0 +com.gliffy.stencil.loop_combined_fragment.uml_v2=rect;shadow=0;fillColor=none;strokeColor=none;opacity=0 +com.gliffy.stencil.opt_combined_fragment.uml_v2=rect;shadow=0;fillColor=none;strokeColor=none;opacity=0 +com.gliffy.stencil.interaction_use.uml_v2=rect;shadow=0;fillColor=none;strokeColor=none;opacity=0 +com.gliffy.stencil.rectangle.no_fill_no_line_v1=rect;fillColor=none;strokeColor=none +com.gliffy.stencil.alt_combined_fragment.dotted_line_area_v1=partialRectangle;top=0;right=0;left=0;fillColor=none;dashed=1;dashPattern=10 4;shadow=0 +com.gliffy.stencil.rectangle.no_fill_line_bottom_v1=partialRectangle;top=0;right=0;left=0;fillColor=none +com.gliffy.stencil.rectangle.no_fill_line_bottom_dashed_v1=partialRectangle;top=0;right=0;left=0;fillColor=none;dashed=1;dashPattern=10 4;shadow=0 +com.gliffy.stencil.boundary_lifeline.uml_v2=umlBoundary +com.gliffy.stencil.object_timeline.uml_v1=line;direction=south;dashed=1 +com.gliffy.stencil.control_lifeline.uml_v2=umlControl +com.gliffy.stencil.entity_lifeline.uml_v2=umlEntity \ No newline at end of file diff --git a/src/com/mxgraph/io/gliffy/model/GliffyObject.java b/src/com/mxgraph/io/gliffy/model/GliffyObject.java index b51d3d56..938025c6 100644 --- a/src/com/mxgraph/io/gliffy/model/GliffyObject.java +++ b/src/com/mxgraph/io/gliffy/model/GliffyObject.java @@ -114,11 +114,10 @@ public class GliffyObject implements PostDeserializable GROUP_SHAPES.add("com.gliffy.shape.basic.basic_v1.default.group"); GROUP_SHAPES.add("com.gliffy.shape.erd.erd_v1.default.entity_with_attributes"); GROUP_SHAPES.add("com.gliffy.shape.erd.erd_v1.default.entity_with_multiple_attributes"); -// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.frame");// -// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.interaction_use");// -// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.opt_combined_fragment");// -// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.loop_combined_fragment");// -// GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.alt_combined_fragment");// + GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.interaction_use"); + GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.opt_combined_fragment"); + GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.loop_combined_fragment"); + GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.alt_combined_fragment"); GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.object"); GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.enumeration"); GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.interface"); @@ -127,8 +126,11 @@ public class GliffyObject implements PostDeserializable GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.data_type"); GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.state_machine.composite_state"); GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.state_machine.orthoganal_state"); - //GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.use_case.frame");//??? - //GROUP_SHAPES.add(""); + GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.class.package"); + GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.boundary_lifeline"); + GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.lifeline"); + GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.entity_lifeline"); + GROUP_SHAPES.add("com.gliffy.shape.uml.uml_v2.sequence.control_lifeline"); MINDMAP_SHAPES.add("com.gliffy.shape.mindmap.mindmap_v1.default.main_topic"); MINDMAP_SHAPES.add("com.gliffy.shape.mindmap.mindmap_v1.default.subtopic"); @@ -215,7 +217,9 @@ public class GliffyObject implements PostDeserializable public boolean isGroup() { - return uid != null && GROUP_SHAPES.contains(uid); + return (uid != null && (GROUP_SHAPES.contains(uid) || uid.startsWith("com.gliffy.shape.table"))) + //Since we treat text in a different way (added as cell value instead of another child cell, this is probably the best way to detect groups when uid is null) + || (uid == null && hasChildren() && !children.get(0).isText()); } public boolean isMindmap() diff --git a/war/cache.manifest b/war/cache.manifest index 5fd3d1fb..e58bd188 100644 --- a/war/cache.manifest +++ b/war/cache.manifest @@ -1,7 +1,7 @@ CACHE MANIFEST # THIS FILE WAS GENERATED. DO NOT MODIFY! -# 08/02/2017 07:37 AM +# 08/03/2017 04:40 PM app.html index.html?offline=1 diff --git a/war/js/app.min.js b/war/js/app.min.js index c1c0d4f5..2e991c63 100644 --- a/war/js/app.min.js +++ b/war/js/app.min.js @@ -2530,10 +2530,10 @@ var B=mxEdgeHandler.prototype.destroy;mxEdgeHandler.prototype.destroy=function() a;this.canvas.setLineJoin("round");this.canvas.setLineCap("round");this.defaultVariation=b;this.originalLineTo=this.canvas.lineTo;this.canvas.lineTo=mxUtils.bind(this,t.prototype.lineTo);this.originalMoveTo=this.canvas.moveTo;this.canvas.moveTo=mxUtils.bind(this,t.prototype.moveTo);this.originalClose=this.canvas.close;this.canvas.close=mxUtils.bind(this,t.prototype.close);this.originalQuadTo=this.canvas.quadTo;this.canvas.quadTo=mxUtils.bind(this,t.prototype.quadTo);this.originalCurveTo=this.canvas.curveTo; this.canvas.curveTo=mxUtils.bind(this,t.prototype.curveTo);this.originalArcTo=this.canvas.arcTo;this.canvas.arcTo=mxUtils.bind(this,t.prototype.arcTo)}function r(){mxRectangleShape.call(this)}function v(){mxActor.call(this)}function u(){mxActor.call(this)}function y(){mxRectangleShape.call(this)}function z(){mxRectangleShape.call(this)}function A(){mxCylinder.call(this)}function F(){mxShape.call(this)}function G(){mxShape.call(this)}function w(){mxEllipse.call(this)}function J(){mxShape.call(this)} function K(){mxShape.call(this)}function H(){mxRectangleShape.call(this)}function D(){mxShape.call(this)}function I(){mxShape.call(this)}function N(){mxShape.call(this)}function L(){mxCylinder.call(this)}function O(){mxDoubleEllipse.call(this)}function P(){mxDoubleEllipse.call(this)}function B(){mxArrowConnector.call(this);this.spacing=0}function E(){mxArrowConnector.call(this);this.spacing=0}function C(){mxActor.call(this)}function x(){mxRectangleShape.call(this)}function S(){mxActor.call(this)} -function V(){mxActor.call(this)}function T(){mxActor.call(this)}function R(){mxActor.call(this)}function ja(){mxActor.call(this)}function X(){mxActor.call(this)}function ka(){mxActor.call(this)}function la(){mxActor.call(this)}function Y(){mxActor.call(this)}function W(){mxActor.call(this)}function Z(){mxEllipse.call(this)}function aa(){mxEllipse.call(this)}function ba(){mxEllipse.call(this)}function ea(){mxRhombus.call(this)}function ca(){mxEllipse.call(this)}function na(){mxEllipse.call(this)}function U(){mxEllipse.call(this)} -function fa(){mxEllipse.call(this)}function Q(){mxActor.call(this)}function oa(){mxActor.call(this)}function pa(){mxActor.call(this)}function ya(a,b,c,d,e,f,g,h,k,l){g+=k;var ga=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(ga.x-e-g,ga.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))))); -f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var va=Math.tan(mxUtils.toRadians(30)),ma=(.5-va)/2;mxUtils.extend(c,mxActor);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/va);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ma);a.lineTo(b,.25*b);a.lineTo(.5* -b,(.5-ma)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=c;mxUtils.extend(d,mxCylinder);d.prototype.size=20;d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+va));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ma)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ma)*b),a.lineTo(.5*b,(1-ma)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ma),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ma)*b),a.lineTo(0,.75*b),a.close());a.end()}; +function V(){mxActor.call(this)}function T(){mxActor.call(this)}function R(){mxActor.call(this)}function ia(){mxActor.call(this)}function X(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function Y(){mxActor.call(this)}function W(){mxActor.call(this)}function Z(){mxEllipse.call(this)}function aa(){mxEllipse.call(this)}function ba(){mxEllipse.call(this)}function ea(){mxRhombus.call(this)}function ca(){mxEllipse.call(this)}function ma(){mxEllipse.call(this)}function U(){mxEllipse.call(this)} +function fa(){mxEllipse.call(this)}function Q(){mxActor.call(this)}function na(){mxActor.call(this)}function oa(){mxActor.call(this)}function za(a,b,c,d,e,f,g,h,k,l){g+=k;var ga=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(ga.x-e-g,ga.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))))); +f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var va=Math.tan(mxUtils.toRadians(30)),la=(.5-va)/2;mxUtils.extend(c,mxActor);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/va);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*la);a.lineTo(b,.25*b);a.lineTo(.5* +b,(.5-la)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=c;mxUtils.extend(d,mxCylinder);d.prototype.size=20;d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+va));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-la)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-la)*b),a.lineTo(.5*b,(1-la)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*la),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-la)*b),a.lineTo(0,.75*b),a.close());a.end()}; mxCellRenderer.prototype.defaultShapes.isoCube=d;mxUtils.extend(b,mxCylinder);b.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(e/2,Math.round(e/8)+this.strokewidth-1);if(f&&null!=this.fill||!f&&null==this.fill)a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,-b);f||(a.moveTo(0,b),a.curveTo(0, -b/3,d,-b/3,d,b),a.lineTo(d,e-b),a.curveTo(d,e+b/3,0,e+b/3,0,e-b),a.close())};b.prototype.getLabelBounds=function(a){var b=2.5*Math.min(a.height/2,Math.round(a.height/8)+this.strokewidth-1);if(!this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST)||this.flipV&&this.direction==mxConstants.DIRECTION_WEST)a.y+=b,a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH||this.flipV&&this.direction==mxConstants.DIRECTION_NORTH)a.width-=b;else if(!this.flipV&& this.direction==mxConstants.DIRECTION_WEST||this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST))a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_NORTH||this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH)a.x+=b,a.width-=b;return a};mxCellRenderer.prototype.defaultShapes.datastore=b;mxUtils.extend(e,mxCylinder);e.prototype.size=30;e.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style, @@ -2548,18 +2548,18 @@ mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPoint(0,e),new mxPoint(b,0), function(a,b){this.originalMoveTo.apply(this.canvas,arguments);this.lastX=a;this.lastY=b;this.firstX=a;this.firstY=b};t.prototype.close=function(){null!=this.firstX&&null!=this.firstY&&(this.lineTo(this.firstX,this.firstY),this.originalClose.apply(this.canvas,arguments));this.originalClose.apply(this.canvas,arguments)};t.prototype.quadTo=function(a,b,c,d){this.originalQuadTo.apply(this.canvas,arguments);this.lastX=c;this.lastY=d};t.prototype.curveTo=function(a,b,c,d,e,f){this.originalCurveTo.apply(this.canvas, arguments);this.lastX=e;this.lastY=f};t.prototype.arcTo=function(a,b,c,d,e,f,g){this.originalArcTo.apply(this.canvas,arguments);this.lastX=f;this.lastY=g};t.prototype.lineTo=function(a,b){if(null!=this.lastX&&null!=this.lastY){var c=function(a){return"number"===typeof a?a?0>a?-1:1:a===a?0:NaN:NaN},d=Math.abs(a-this.lastX),e=Math.abs(b-this.lastY),f=Math.sqrt(d*d+e*e);if(2>f){this.originalLineTo.apply(this.canvas,arguments);this.lastX=a;this.lastY=b;return}var g=Math.round(f/10),h=this.defaultVariation; 5>g&&(g=5,h/=3);for(var ga=c(a-this.lastX)*d/g,c=c(b-this.lastY)*e/g,d=d/f,e=e/f,f=0;f"+b.cellEditor.textarea.innerHTML+"

"),d=b.cellEditor.textarea.firstChild);null!=d&&d!=b.cellEditor.textarea&&(d.style.lineHeight=c+"%");a.value=c+" %"},function(a){na=a;mxEvent.addListener(a,"mousedown",function(){ca=b.cellEditor.saveSelection()});mxEvent.addListener(a,"touchstart", +mxResources.get("spacing"));g.appendChild(n);var ia,X,ja,ka,Y,W=this.addUnitInput(g,"pt",91,44,function(){ia.apply(this,arguments)}),Z=this.addUnitInput(g,"pt",20,44,function(){X.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("top"),91);this.addLabel(g,mxResources.get("global"),20);mxUtils.br(g);mxUtils.br(g);var aa=this.addUnitInput(g,"pt",162,44,function(){ja.apply(this,arguments)}),ba=this.addUnitInput(g,"pt",91,44,function(){ka.apply(this,arguments)}),ea=this.addUnitInput(g, +"pt",20,44,function(){Y.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("left"),162);this.addLabel(g,mxResources.get("bottom"),91);this.addLabel(g,mxResources.get("right"),20);if(b.cellEditor.isContentEditing()){var ca=null,ma=null;a.appendChild(this.createRelativeOption(mxResources.get("lineheight"),null,null,function(a){var c=""==a.value?120:parseInt(a.value),c=Math.max(0,isNaN(c)?120:c);null!=ca&&(b.cellEditor.restoreSelection(ca),ca=null);for(var d=b.getSelectedElement();null!= +d&&d.nodeType!=mxConstants.NODETYPE_ELEMENT;)d=d.parentNode;null!=d&&d==b.cellEditor.textarea&&null!=b.cellEditor.textarea.firstChild&&("P"!=b.cellEditor.textarea.firstChild.nodeName&&(b.cellEditor.textarea.innerHTML="

"+b.cellEditor.textarea.innerHTML+"

"),d=b.cellEditor.textarea.firstChild);null!=d&&d!=b.cellEditor.textarea&&(d.style.lineHeight=c+"%");a.value=c+" %"},function(a){ma=a;mxEvent.addListener(a,"mousedown",function(){ca=b.cellEditor.saveSelection()});mxEvent.addListener(a,"touchstart", function(){ca=b.cellEditor.saveSelection()});a.value="120 %"}));h=f.cloneNode(!1);h.style.paddingLeft="0px";g=this.editorUi.toolbar.addItems(["link","image"],h,!0);n=[this.editorUi.toolbar.addButton("geSprite-horizontalrule",mxResources.get("insertHorizontalRule"),function(){document.execCommand("inserthorizontalrule",!1,null)},h),this.editorUi.toolbar.addMenuFunctionInContainer(h,"geSprite-table",mxResources.get("table"),!1,mxUtils.bind(this,function(a){this.editorUi.menus.addInsertTableItem(a)}))]; this.styleButtons(g);this.styleButtons(n);g=this.createPanel();g.style.paddingTop="10px";g.style.paddingBottom="10px";g.appendChild(this.createTitle(mxResources.get("insert")));g.appendChild(h);a.appendChild(g);mxClient.IS_QUIRKS&&(g.style.height="70");g=f.cloneNode(!1);g.style.paddingLeft="0px";n=[this.editorUi.toolbar.addButton("geSprite-insertcolumnbefore",mxResources.get("insertColumnBefore"),function(){try{null!=w&&b.selectNode(b.insertColumn(w,null!=J?J.cellIndex:0))}catch(Q){alert(Q)}},g), this.editorUi.toolbar.addButton("geSprite-insertcolumnafter",mxResources.get("insertColumnAfter"),function(){try{null!=w&&b.selectNode(b.insertColumn(w,null!=J?J.cellIndex+1:-1))}catch(Q){alert(Q)}},g),this.editorUi.toolbar.addButton("geSprite-deletecolumn",mxResources.get("deleteColumn"),function(){try{null!=w&&null!=J&&b.deleteColumn(w,J.cellIndex)}catch(Q){alert(Q)}},g),this.editorUi.toolbar.addButton("geSprite-insertrowbefore",mxResources.get("insertRowBefore"),function(){try{null!=w&&null!=K&& @@ -2858,11 +2858,11 @@ mxConstants.FONT_ITALIC);c(l[2],(a&mxConstants.FONT_UNDERLINE)==mxConstants.FONT c(p,a==mxConstants.ALIGN_LEFT);c(q,a==mxConstants.ALIGN_CENTER);c(t,a==mxConstants.ALIGN_RIGHT);a=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE);c(v,a==mxConstants.ALIGN_TOP);c(u,a==mxConstants.ALIGN_MIDDLE);c(y,a==mxConstants.ALIGN_BOTTOM);a=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);b=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);H.value=a==mxConstants.ALIGN_LEFT&&b==mxConstants.ALIGN_TOP? "topLeft":a==mxConstants.ALIGN_CENTER&&b==mxConstants.ALIGN_TOP?"top":a==mxConstants.ALIGN_RIGHT&&b==mxConstants.ALIGN_TOP?"topRight":a==mxConstants.ALIGN_LEFT&&b==mxConstants.ALIGN_BOTTOM?"bottomLeft":a==mxConstants.ALIGN_CENTER&&b==mxConstants.ALIGN_BOTTOM?"bottom":a==mxConstants.ALIGN_RIGHT&&b==mxConstants.ALIGN_BOTTOM?"bottomRight":a==mxConstants.ALIGN_LEFT?"left":a==mxConstants.ALIGN_RIGHT?"right":"center";a=mxUtils.getValue(e.style,mxConstants.STYLE_TEXT_DIRECTION,mxConstants.DEFAULT_TEXT_DIRECTION); a==mxConstants.TEXT_DIRECTION_RTL?L.value="rightToLeft":a==mxConstants.TEXT_DIRECTION_LTR?L.value="leftToRight":a==mxConstants.TEXT_DIRECTION_AUTO&&(L.value="automatic");if(d||document.activeElement!=Z)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING,2)),Z.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=W)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_TOP,0)),W.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ea)a=parseFloat(mxUtils.getValue(e.style, -mxConstants.STYLE_SPACING_RIGHT,0)),ea.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ba)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_BOTTOM,0)),ba.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=aa)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_LEFT,0)),aa.value=isNaN(a)?"":a+" pt"});X=this.installInputHandler(Z,mxConstants.STYLE_SPACING,2,-999,999," pt");ja=this.installInputHandler(W,mxConstants.STYLE_SPACING_TOP,0,-999,999," pt");Y=this.installInputHandler(ea, -mxConstants.STYLE_SPACING_RIGHT,0,-999,999," pt");la=this.installInputHandler(ba,mxConstants.STYLE_SPACING_BOTTOM,0,-999,999," pt");ka=this.installInputHandler(aa,mxConstants.STYLE_SPACING_LEFT,0,-999,999," pt");this.addKeyHandler(B,U);this.addKeyHandler(Z,U);this.addKeyHandler(W,U);this.addKeyHandler(ea,U);this.addKeyHandler(ba,U);this.addKeyHandler(aa,U);b.getModel().addListener(mxEvent.CHANGE,U);this.listeners.push({destroy:function(){b.getModel().removeListener(U)}});U();if(b.cellEditor.isContentEditing()){var fa= +mxConstants.STYLE_SPACING_RIGHT,0)),ea.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ba)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_BOTTOM,0)),ba.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=aa)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_LEFT,0)),aa.value=isNaN(a)?"":a+" pt"});X=this.installInputHandler(Z,mxConstants.STYLE_SPACING,2,-999,999," pt");ia=this.installInputHandler(W,mxConstants.STYLE_SPACING_TOP,0,-999,999," pt");Y=this.installInputHandler(ea, +mxConstants.STYLE_SPACING_RIGHT,0,-999,999," pt");ka=this.installInputHandler(ba,mxConstants.STYLE_SPACING_BOTTOM,0,-999,999," pt");ja=this.installInputHandler(aa,mxConstants.STYLE_SPACING_LEFT,0,-999,999," pt");this.addKeyHandler(B,U);this.addKeyHandler(Z,U);this.addKeyHandler(W,U);this.addKeyHandler(ea,U);this.addKeyHandler(ba,U);this.addKeyHandler(aa,U);b.getModel().addListener(mxEvent.CHANGE,U);this.listeners.push({destroy:function(){b.getModel().removeListener(U)}});U();if(b.cellEditor.isContentEditing()){var fa= !1,f=function(){fa||(fa=!0,window.setTimeout(function(){for(var a=b.getSelectedElement();null!=a&&a.nodeType!=mxConstants.NODETYPE_ELEMENT;)a=a.parentNode;if(null!=a){a==b.cellEditor.textarea&&1==b.cellEditor.textarea.children.length&&b.cellEditor.textarea.firstChild.nodeType==mxConstants.NODETYPE_ELEMENT&&(a=b.cellEditor.textarea.firstChild);var d=mxUtils.getCurrentStyle(a);if(null!=d){c(l[0],"bold"==d.fontWeight||null!=b.getParentByName(a,"B",b.cellEditor.textarea));c(l[1],"italic"==d.fontStyle|| null!=b.getParentByName(a,"I",b.cellEditor.textarea));c(l[2],null!=b.getParentByName(a,"U",b.cellEditor.textarea));c(p,"left"==d.textAlign);c(q,"center"==d.textAlign);c(t,"right"==d.textAlign);c(F,"justify"==d.textAlign);c(A,null!=b.getParentByName(a,"SUP",b.cellEditor.textarea));c(z,null!=b.getParentByName(a,"SUB",b.cellEditor.textarea));w=b.getParentByName(a,"TABLE",b.cellEditor.textarea);K=null==w?null:b.getParentByName(a,"TR",w);J=null==w?null:b.getParentByName(a,"TD",w);G.style.display=null!= -w?"":"none";if(document.activeElement!=B){"FONT"==a.nodeName&&"4"==a.getAttribute("size")&&null!=E?(a.removeAttribute("size"),a.style.fontSize=E+"px",E=null):B.value=parseFloat(d.fontSize)+" pt";var a=a.style.lineHeight||d.lineHeight,e=parseFloat(a);"px"==a.substring(a.length-2)&&(e/=parseFloat(d.fontSize));"%"!=a.substring(a.length-1)&&(e*=100);na.value=e+" %"}a=d.color.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+ +w?"":"none";if(document.activeElement!=B){"FONT"==a.nodeName&&"4"==a.getAttribute("size")&&null!=E?(a.removeAttribute("size"),a.style.fontSize=E+"px",E=null):B.value=parseFloat(d.fontSize)+" pt";var a=a.style.lineHeight||d.lineHeight,e=parseFloat(a);"px"==a.substring(a.length-2)&&(e/=parseFloat(d.fontSize));"%"!=a.substring(a.length-1)&&(e*=100);ma.value=e+" %"}a=d.color.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+ ("0"+Number(c).toString(16)).substr(-2)+("0"+Number(d).toString(16)).substr(-2)});e=d.backgroundColor.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+("0"+Number(c).toString(16)).substr(-2)+("0"+Number(d).toString(16)).substr(-2)});null!=S&&(V="#"==a.charAt(0)?a:"#000000",S(V,!0));null!=C&&(x="#"==e.charAt(0)?e:null,C(x,!0));null!=k.firstChild&&(d=d.fontFamily,"'"==d.charAt(0)&&(d=d.substring(1)),"'"==d.charAt(d.length- 1)&&(d=d.substring(0,d.length-1)),k.firstChild.nodeValue=d)}}fa=!1},0))};mxEvent.addListener(b.cellEditor.textarea,"input",f);mxEvent.addListener(b.cellEditor.textarea,"touchend",f);mxEvent.addListener(b.cellEditor.textarea,"mouseup",f);mxEvent.addListener(b.cellEditor.textarea,"keyup",f);this.listeners.push({destroy:function(){}});f()}return a};StyleFormatPanel=function(a,c,d){BaseFormatPanel.call(this,a,c,d);this.init()};mxUtils.extend(StyleFormatPanel,BaseFormatPanel); StyleFormatPanel.prototype.init=function(){var a=this.format.getSelectionState();a.containsImage&&"image"!=a.style.shape||this.container.appendChild(this.addFill(this.createPanel()));this.container.appendChild(this.addStroke(this.createPanel()));a=this.createRelativeOption(mxResources.get("opacity"),mxConstants.STYLE_OPACITY,41);a.style.paddingTop="8px";a.style.paddingBottom="8px";this.container.appendChild(a);this.container.appendChild(this.addEffects(this.createPanel()));a=this.addEditOps(this.createPanel()); @@ -6158,7 +6158,7 @@ L=document.createElement("tr"),N=L.cloneNode(!0),Q=document.createElement("td"), mxResources.get("fitToSheetsAcross"));W.appendChild(l);mxUtils.write(P,mxResources.get("fitToBy"));var R=O.cloneNode(!0);Y.appendChild(R);mxEvent.addListener(O,"focus",function(){K.checked=!0});mxEvent.addListener(R,"focus",function(){K.checked=!0});l=document.createElement("span");mxUtils.write(l,mxResources.get("fitToSheetsDown"));U.appendChild(l);L.appendChild(Q);L.appendChild(J);L.appendChild(W);N.appendChild(P);N.appendChild(Y);N.appendChild(U);T.appendChild(L);T.appendChild(N);p.appendChild(T); m.appendChild(p);h.appendChild(m);m=document.createElement("div");l=document.createElement("div");l.style.fontWeight="bold";l.style.marginBottom="12px";mxUtils.write(l,mxResources.get("paperSize"));m.appendChild(l);l=document.createElement("div");l.style.marginBottom="12px";var V=PageSetupDialog.addPageFormatPanel(l,"printdialog",a.editor.graph.pageFormat||mxConstants.PAGE_FORMAT_A4_PORTRAIT);m.appendChild(l);l=document.createElement("span");mxUtils.write(l,mxResources.get("pageScale"));m.appendChild(l); var S=document.createElement("input");S.style.cssText="margin:0 8px 0 8px;";S.setAttribute("value","100 %");S.style.width="60px";m.appendChild(S);h.appendChild(m);l=document.createElement("div");l.style.cssText="text-align:right;margin:62px 0 0 0;";m=mxUtils.button(mxResources.get("cancel"),function(){a.hideDialog()});m.className="geBtn";a.editor.cancelFirst&&l.appendChild(m);a.isOffline()||(p=mxUtils.button(mxResources.get("help"),function(){window.open("https://desk.draw.io/support/solutions/articles/16000048947")}), -p.className="geBtn",l.appendChild(p));PrintDialog.previewEnabled&&(p=mxUtils.button(mxResources.get("preview"),function(){a.hideDialog();d(!1)}),p.className="geBtn",l.appendChild(p));p=mxUtils.button(mxResources.get(PrintDialog.previewEnabled?"print":"ok"),function(){a.hideDialog();d(!0)});p.className="geBtn gePrimaryBtn";l.appendChild(p);a.editor.cancelFirst||l.appendChild(m);h.appendChild(l);this.container=h}})();(function(){EditorUi.VERSION="6.9.9";EditorUi.compactUi="atlas"!=uiTheme;EditorUi.enableLogging=/.*\.draw\.io$/.test(window.location.hostname);EditorUi.isElectronApp=null!=window&&null!=window.process&&null!=window.process.versions&&null!=window.process.versions.electron;EditorUi.prototype.emptyDiagramXml='';EditorUi.prototype.emptyLibraryXml="[]";EditorUi.prototype.mode=null;EditorUi.prototype.sidebarFooterHeight= +p.className="geBtn",l.appendChild(p));PrintDialog.previewEnabled&&(p=mxUtils.button(mxResources.get("preview"),function(){a.hideDialog();d(!1)}),p.className="geBtn",l.appendChild(p));p=mxUtils.button(mxResources.get(PrintDialog.previewEnabled?"print":"ok"),function(){a.hideDialog();d(!0)});p.className="geBtn gePrimaryBtn";l.appendChild(p);a.editor.cancelFirst||l.appendChild(m);h.appendChild(l);this.container=h}})();(function(){EditorUi.VERSION="7.0.0";EditorUi.compactUi="atlas"!=uiTheme;EditorUi.enableLogging=/.*\.draw\.io$/.test(window.location.hostname);EditorUi.isElectronApp=null!=window&&null!=window.process&&null!=window.process.versions&&null!=window.process.versions.electron;EditorUi.prototype.emptyDiagramXml='';EditorUi.prototype.emptyLibraryXml="[]";EditorUi.prototype.mode=null;EditorUi.prototype.sidebarFooterHeight= 36;EditorUi.prototype.defaultCustomShapeStyle="shape=stencil(tZRtTsQgEEBPw1+DJR7AoN6DbWftpAgE0Ortd/jYRGq72R+YNE2YgTePloEJGWblgA18ZuKFDcMj5/Sm8boZq+BgjCX4pTyqk6ZlKROitwusOMXKQDODx5iy4pXxZ5qTHiFHawxB0JrQZH7lCabQ0Fr+XWC1/E8zcsT/gAi+Subo2/3Mh6d/oJb5nU1b5tW7r2knautaa3T+U32o7f7vZwpJkaNDLORJjcu7t59m2jXxqX9un+tt022acsfmoKaQZ+vhhswZtS6Ne/ThQGt0IV0N3Yyv6P3CeT9/tHO0XFI5cAE=);whiteSpace=wrap;html=1;";EditorUi.prototype.maxBackgroundSize=1600;EditorUi.prototype.maxImageSize=520;EditorUi.prototype.resampleThreshold= 1E5;EditorUi.prototype.maxImageBytes=1E6;EditorUi.prototype.maxBackgroundBytes=25E5;EditorUi.prototype.currentFile=null;EditorUi.prototype.printPdfExport=!1;EditorUi.prototype.pdfPageExport=!0;EditorUi.prototype.formatEnabled="0"!=urlParams.format;(function(){EditorUi.prototype.useCanvasForExport=!1;EditorUi.prototype.jpgSupported=!1;try{var a=document.createElement("canvas"),b=new Image;b.onload=function(){try{a.getContext("2d").drawImage(b,0,0);var c=a.toDataURL("image/png");EditorUi.prototype.useCanvasForExport= null!=c&&6
')))}catch(m){}try{a=document.createElement("canvas");a.width=a.height=1;var c=a.toDataURL("image/jpeg");EditorUi.prototype.jpgSupported=null!==c.match("image/jpeg")}catch(m){}})(); diff --git a/war/js/atlas-viewer.min.js b/war/js/atlas-viewer.min.js index 4b57366a..f595e412 100644 --- a/war/js/atlas-viewer.min.js +++ b/war/js/atlas-viewer.min.js @@ -2371,12 +2371,12 @@ mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPo arguments)};mxCellRenderer.prototype.defaultShapes.plus=v;var ya=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var c=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+c,a.y+c,a.width-2*c,a.height-2*c)}return a};mxRhombus.prototype.paintVertexShape=function(a,c,b,d,f){ya.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var e=2*Math.max(2,this.strokewidth+ 1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);c+=e;b+=e;d-=2*e;f-=2*e;0=f.getStatus())try{this.exportFile(f.getText(),a,q,!0,c,d)}catch(z){this.handleError(z)}else this.handleError({message:mxResources.get("errorSavingFile")})}),function(a){this.spinner.stop();this.handleError(a)})})))}}),mxUtils.bind(this,function(){this.hideDialog()}),mxResources.get("saveAs"),mxResources.get("download"),!1,!1,h,null,null,4);this.showDialog(a.container,380,5>this.getServiceCount(!1)- 1?270:390,!0,!0);a.init()};EditorUi.prototype.exportFile=function(a,b,d,e,h,q){};EditorUi.prototype.pickFolder=function(a,b,d){b(null)};EditorUi.prototype.exportSvg=function(a,b,d,e,h,q,k,n,l){if(this.spinner.spin(document.body,mxResources.get("export"))){var c=this.editor.graph.isSelectionEmpty();d=null!=d?d:c;c=b?null:this.editor.graph.background;c==mxConstants.NONE&&(c=null);null==c&&0==b&&(c="#ffffff");var f=this.editor.graph.getSvg(c,a,k,n,null,d);e&&this.editor.graph.addSvgShadow(f);var g=this.getBaseFilename()+ ".svg",p=mxUtils.bind(this,function(a){this.spinner.stop();h&&a.setAttribute("content",this.getFileData(!0,null,null,null,d,l));var c='\n'+mxUtils.getXml(a);this.isLocalFileSave()||c.length<=MAX_REQUEST_SIZE?this.saveData(g,"svg",c,"image/svg+xml"):this.handleError({message:mxResources.get("drawingTooLarge")},mxResources.get("error"),mxUtils.bind(this,function(){mxUtils.popup(c)}))});this.convertMath(this.editor.graph, -f,!1,mxUtils.bind(this,function(){q?(null==this.thumbImageCache&&(this.thumbImageCache={}),this.convertImages(f,p,this.thumbImageCache)):p(f)}))}};EditorUi.prototype.addCheckbox=function(a,b,d,e,h,k){k=null!=k?k:!0;var c=document.createElement("input");c.style.marginRight="8px";c.style.marginTop="16px";c.setAttribute("type","checkbox");d&&(c.setAttribute("checked","checked"),c.defaultChecked=!0);e&&c.setAttribute("disabled","disabled");k&&(a.appendChild(c),mxUtils.write(a,b),h||mxUtils.br(a));return c}; +f,!1,mxUtils.bind(this,function(){q?(null==this.thumbImageCache&&(this.thumbImageCache={}),this.convertImages(f,p,this.thumbImageCache)):p(f)}))}};EditorUi.prototype.addCheckbox=function(a,b,d,e,h,q){q=null!=q?q:!0;var c=document.createElement("input");c.style.marginRight="8px";c.style.marginTop="16px";c.setAttribute("type","checkbox");d&&(c.setAttribute("checked","checked"),c.defaultChecked=!0);e&&c.setAttribute("disabled","disabled");q&&(a.appendChild(c),mxUtils.write(a,b),h||mxUtils.br(a));return c}; EditorUi.prototype.addEditButton=function(a,b){var c=this.addCheckbox(a,mxResources.get("edit")+":",!0,null,!0);c.style.marginLeft="24px";var d=this.getCurrentFile(),e="";null!=d&&d.getMode()!=App.MODE_DEVICE&&d.getMode()!=App.MODE_BROWSER&&(e=window.location.href);var f=document.createElement("select");f.style.width="120px";f.style.marginLeft="8px";f.style.marginRight="10px";f.className="geBtn";d=document.createElement("option");d.setAttribute("value","blank");mxUtils.write(d,mxResources.get("makeCopy")); f.appendChild(d);d=document.createElement("option");d.setAttribute("value","custom");mxUtils.write(d,mxResources.get("custom")+"...");f.appendChild(d);a.appendChild(f);mxEvent.addListener(f,"change",mxUtils.bind(this,function(){if("custom"==f.value){var a=new FilenameDialog(this,e,mxResources.get("ok"),function(a){null!=a?e=a:f.value="blank"},mxResources.get("url"),null,null,null,null,function(){f.value="blank"});this.showDialog(a.container,300,80,!0,!1);a.init()}}));mxEvent.addListener(c,"change", mxUtils.bind(this,function(){c.checked&&(null==b||b.checked)?f.removeAttribute("disabled"):f.setAttribute("disabled","disabled")}));mxUtils.br(a);return{getLink:function(){return c.checked?"blank"===f.value?"_blank":e:null},getEditInput:function(){return c},getEditSelect:function(){return f}}};EditorUi.prototype.addLinkSection=function(a,b){function c(){k.innerHTML='
=a.getStatus()){if(null!=b){var e=a.getText();if(c){if((9==document.documentMode||10==document.documentMode)&&"undefined"!==typeof window.mxUtilsBinaryToArray){a=mxUtilsBinaryToArray(a.request.responseBody).toArray();for(var e=Array(a.length),f=0;fc.Properties.Order?1:0})}else a.push(h);if(0]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))/i.test(h.value)&&c.setLinkForCell(h,h.value),h.geometry.width+=c.gridSize,h.geometry.height+=c.gridSize}finally{c.getModel().endUpdate()}return[h]}}return[]};EditorUi.prototype.formatFileSize=function(a){var c=-1;do a/=1024,c++;while(1024=a.status&&(a=a.responseText,null!=a&&">2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4);c+="==";break}k=a.charCodeAt(b++);if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>> +" kB; MB; GB; TB;PB;EB;ZB;YB".split(";")[c]};EditorUi.prototype.convertDataUri=function(a){if("data:"==a.substring(0,5)){var c=a.indexOf(";");0=a.status&&(a=a.responseText,null!=a&&">2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4);c+="==";break}k=a.charCodeAt(b++);if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>> 2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4|(k&240)>>4);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k&15)<<2);c+="=";break}l=a.charCodeAt(b++);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4|(k&240)>>4);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k&15)<<2|(l&192)>>6); c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(l&63)}return c};EditorUi.prototype.importFiles=function(a,b,d,e,h,k,l,m,t,r,z,v){b=null!=b?b:0;d=null!=d?d:0;e=null!=e?e:this.maxImageSize;r=null!=r?r:this.maxImageBytes;var c=null!=b&&null!=d,f=!0,g=!1;if(!mxClient.IS_CHROMEAPP&&null!=a)for(var p=z||this.resampleThreshold,n=0;np){g=!0;break}var q=mxUtils.bind(this,function(){var g=this.editor.graph,p=g.gridSize; h=null!=h?h:mxUtils.bind(this,function(a,b,d,e,f,g,h,k,p){return null!=a&&"','',isLocalStorage||mxClient.IS_CHROMEAPP)).container,340,isLocalStorage||mxClient.IS_CHROMEAPP?220:200,!0,!0):d(!1,e)};EditorUi.prototype.parseFile=function(a,b,d){d=null!=d?d:a.name;var c=new FormData; c.append("format","xml");c.append("upfile",a,d);var e=new XMLHttpRequest;e.open("POST",OPEN_URL);e.onreadystatechange=function(){b(e)};e.send(c)};EditorUi.prototype.isResampleImage=function(a,b){b=null!=b?b:this.resampleThreshold;return a.length>b};EditorUi.prototype.resizeImage=function(a,b,d,e,h,k){h=null!=h?h:this.maxImageSize;var c=Math.max(1,a.width),f=Math.max(1,a.height);if(e&&this.isResampleImage(b,k))try{var g=Math.max(c/h,f/h);if(1a?-1:1:a===a?0:NaN:NaN},d=Math.abs(a-this.lastX),e=Math.abs(b-this.lastY),f=Math.sqrt(d*d+e*e);if(2>f){this.originalLineTo.apply(this.canvas,arguments);this.lastX=a;this.lastY=b;return}var g=Math.round(f/10),h=this.defaultVariation; 5>g&&(g=5,h/=3);for(var ga=c(a-this.lastX)*d/g,c=c(b-this.lastY)*e/g,d=d/f,e=e/f,f=0;f"+b.cellEditor.textarea.innerHTML+"

"),d=b.cellEditor.textarea.firstChild);null!=d&&d!=b.cellEditor.textarea&&(d.style.lineHeight=c+"%");a.value=c+" %"},function(a){na=a;mxEvent.addListener(a,"mousedown",function(){ca=b.cellEditor.saveSelection()});mxEvent.addListener(a,"touchstart", +mxResources.get("spacing"));g.appendChild(n);var ia,X,ja,ka,Y,W=this.addUnitInput(g,"pt",91,44,function(){ia.apply(this,arguments)}),Z=this.addUnitInput(g,"pt",20,44,function(){X.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("top"),91);this.addLabel(g,mxResources.get("global"),20);mxUtils.br(g);mxUtils.br(g);var aa=this.addUnitInput(g,"pt",162,44,function(){ja.apply(this,arguments)}),ba=this.addUnitInput(g,"pt",91,44,function(){ka.apply(this,arguments)}),ea=this.addUnitInput(g, +"pt",20,44,function(){Y.apply(this,arguments)});mxUtils.br(g);this.addLabel(g,mxResources.get("left"),162);this.addLabel(g,mxResources.get("bottom"),91);this.addLabel(g,mxResources.get("right"),20);if(b.cellEditor.isContentEditing()){var ca=null,ma=null;a.appendChild(this.createRelativeOption(mxResources.get("lineheight"),null,null,function(a){var c=""==a.value?120:parseInt(a.value),c=Math.max(0,isNaN(c)?120:c);null!=ca&&(b.cellEditor.restoreSelection(ca),ca=null);for(var d=b.getSelectedElement();null!= +d&&d.nodeType!=mxConstants.NODETYPE_ELEMENT;)d=d.parentNode;null!=d&&d==b.cellEditor.textarea&&null!=b.cellEditor.textarea.firstChild&&("P"!=b.cellEditor.textarea.firstChild.nodeName&&(b.cellEditor.textarea.innerHTML="

"+b.cellEditor.textarea.innerHTML+"

"),d=b.cellEditor.textarea.firstChild);null!=d&&d!=b.cellEditor.textarea&&(d.style.lineHeight=c+"%");a.value=c+" %"},function(a){ma=a;mxEvent.addListener(a,"mousedown",function(){ca=b.cellEditor.saveSelection()});mxEvent.addListener(a,"touchstart", function(){ca=b.cellEditor.saveSelection()});a.value="120 %"}));h=f.cloneNode(!1);h.style.paddingLeft="0px";g=this.editorUi.toolbar.addItems(["link","image"],h,!0);n=[this.editorUi.toolbar.addButton("geSprite-horizontalrule",mxResources.get("insertHorizontalRule"),function(){document.execCommand("inserthorizontalrule",!1,null)},h),this.editorUi.toolbar.addMenuFunctionInContainer(h,"geSprite-table",mxResources.get("table"),!1,mxUtils.bind(this,function(a){this.editorUi.menus.addInsertTableItem(a)}))]; this.styleButtons(g);this.styleButtons(n);g=this.createPanel();g.style.paddingTop="10px";g.style.paddingBottom="10px";g.appendChild(this.createTitle(mxResources.get("insert")));g.appendChild(h);a.appendChild(g);mxClient.IS_QUIRKS&&(g.style.height="70");g=f.cloneNode(!1);g.style.paddingLeft="0px";n=[this.editorUi.toolbar.addButton("geSprite-insertcolumnbefore",mxResources.get("insertColumnBefore"),function(){try{null!=w&&b.selectNode(b.insertColumn(w,null!=J?J.cellIndex:0))}catch(Q){alert(Q)}},g), this.editorUi.toolbar.addButton("geSprite-insertcolumnafter",mxResources.get("insertColumnAfter"),function(){try{null!=w&&b.selectNode(b.insertColumn(w,null!=J?J.cellIndex+1:-1))}catch(Q){alert(Q)}},g),this.editorUi.toolbar.addButton("geSprite-deletecolumn",mxResources.get("deleteColumn"),function(){try{null!=w&&null!=J&&b.deleteColumn(w,J.cellIndex)}catch(Q){alert(Q)}},g),this.editorUi.toolbar.addButton("geSprite-insertrowbefore",mxResources.get("insertRowBefore"),function(){try{null!=w&&null!=K&& @@ -2858,11 +2858,11 @@ mxConstants.FONT_ITALIC);c(l[2],(a&mxConstants.FONT_UNDERLINE)==mxConstants.FONT c(p,a==mxConstants.ALIGN_LEFT);c(q,a==mxConstants.ALIGN_CENTER);c(t,a==mxConstants.ALIGN_RIGHT);a=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_ALIGN,mxConstants.ALIGN_MIDDLE);c(v,a==mxConstants.ALIGN_TOP);c(u,a==mxConstants.ALIGN_MIDDLE);c(y,a==mxConstants.ALIGN_BOTTOM);a=mxUtils.getValue(e.style,mxConstants.STYLE_LABEL_POSITION,mxConstants.ALIGN_CENTER);b=mxUtils.getValue(e.style,mxConstants.STYLE_VERTICAL_LABEL_POSITION,mxConstants.ALIGN_MIDDLE);H.value=a==mxConstants.ALIGN_LEFT&&b==mxConstants.ALIGN_TOP? "topLeft":a==mxConstants.ALIGN_CENTER&&b==mxConstants.ALIGN_TOP?"top":a==mxConstants.ALIGN_RIGHT&&b==mxConstants.ALIGN_TOP?"topRight":a==mxConstants.ALIGN_LEFT&&b==mxConstants.ALIGN_BOTTOM?"bottomLeft":a==mxConstants.ALIGN_CENTER&&b==mxConstants.ALIGN_BOTTOM?"bottom":a==mxConstants.ALIGN_RIGHT&&b==mxConstants.ALIGN_BOTTOM?"bottomRight":a==mxConstants.ALIGN_LEFT?"left":a==mxConstants.ALIGN_RIGHT?"right":"center";a=mxUtils.getValue(e.style,mxConstants.STYLE_TEXT_DIRECTION,mxConstants.DEFAULT_TEXT_DIRECTION); a==mxConstants.TEXT_DIRECTION_RTL?L.value="rightToLeft":a==mxConstants.TEXT_DIRECTION_LTR?L.value="leftToRight":a==mxConstants.TEXT_DIRECTION_AUTO&&(L.value="automatic");if(d||document.activeElement!=Z)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING,2)),Z.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=W)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_TOP,0)),W.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ea)a=parseFloat(mxUtils.getValue(e.style, -mxConstants.STYLE_SPACING_RIGHT,0)),ea.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ba)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_BOTTOM,0)),ba.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=aa)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_LEFT,0)),aa.value=isNaN(a)?"":a+" pt"});X=this.installInputHandler(Z,mxConstants.STYLE_SPACING,2,-999,999," pt");ja=this.installInputHandler(W,mxConstants.STYLE_SPACING_TOP,0,-999,999," pt");Y=this.installInputHandler(ea, -mxConstants.STYLE_SPACING_RIGHT,0,-999,999," pt");la=this.installInputHandler(ba,mxConstants.STYLE_SPACING_BOTTOM,0,-999,999," pt");ka=this.installInputHandler(aa,mxConstants.STYLE_SPACING_LEFT,0,-999,999," pt");this.addKeyHandler(B,U);this.addKeyHandler(Z,U);this.addKeyHandler(W,U);this.addKeyHandler(ea,U);this.addKeyHandler(ba,U);this.addKeyHandler(aa,U);b.getModel().addListener(mxEvent.CHANGE,U);this.listeners.push({destroy:function(){b.getModel().removeListener(U)}});U();if(b.cellEditor.isContentEditing()){var fa= +mxConstants.STYLE_SPACING_RIGHT,0)),ea.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=ba)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_BOTTOM,0)),ba.value=isNaN(a)?"":a+" pt";if(d||document.activeElement!=aa)a=parseFloat(mxUtils.getValue(e.style,mxConstants.STYLE_SPACING_LEFT,0)),aa.value=isNaN(a)?"":a+" pt"});X=this.installInputHandler(Z,mxConstants.STYLE_SPACING,2,-999,999," pt");ia=this.installInputHandler(W,mxConstants.STYLE_SPACING_TOP,0,-999,999," pt");Y=this.installInputHandler(ea, +mxConstants.STYLE_SPACING_RIGHT,0,-999,999," pt");ka=this.installInputHandler(ba,mxConstants.STYLE_SPACING_BOTTOM,0,-999,999," pt");ja=this.installInputHandler(aa,mxConstants.STYLE_SPACING_LEFT,0,-999,999," pt");this.addKeyHandler(B,U);this.addKeyHandler(Z,U);this.addKeyHandler(W,U);this.addKeyHandler(ea,U);this.addKeyHandler(ba,U);this.addKeyHandler(aa,U);b.getModel().addListener(mxEvent.CHANGE,U);this.listeners.push({destroy:function(){b.getModel().removeListener(U)}});U();if(b.cellEditor.isContentEditing()){var fa= !1,f=function(){fa||(fa=!0,window.setTimeout(function(){for(var a=b.getSelectedElement();null!=a&&a.nodeType!=mxConstants.NODETYPE_ELEMENT;)a=a.parentNode;if(null!=a){a==b.cellEditor.textarea&&1==b.cellEditor.textarea.children.length&&b.cellEditor.textarea.firstChild.nodeType==mxConstants.NODETYPE_ELEMENT&&(a=b.cellEditor.textarea.firstChild);var d=mxUtils.getCurrentStyle(a);if(null!=d){c(l[0],"bold"==d.fontWeight||null!=b.getParentByName(a,"B",b.cellEditor.textarea));c(l[1],"italic"==d.fontStyle|| null!=b.getParentByName(a,"I",b.cellEditor.textarea));c(l[2],null!=b.getParentByName(a,"U",b.cellEditor.textarea));c(p,"left"==d.textAlign);c(q,"center"==d.textAlign);c(t,"right"==d.textAlign);c(F,"justify"==d.textAlign);c(A,null!=b.getParentByName(a,"SUP",b.cellEditor.textarea));c(z,null!=b.getParentByName(a,"SUB",b.cellEditor.textarea));w=b.getParentByName(a,"TABLE",b.cellEditor.textarea);K=null==w?null:b.getParentByName(a,"TR",w);J=null==w?null:b.getParentByName(a,"TD",w);G.style.display=null!= -w?"":"none";if(document.activeElement!=B){"FONT"==a.nodeName&&"4"==a.getAttribute("size")&&null!=E?(a.removeAttribute("size"),a.style.fontSize=E+"px",E=null):B.value=parseFloat(d.fontSize)+" pt";var a=a.style.lineHeight||d.lineHeight,e=parseFloat(a);"px"==a.substring(a.length-2)&&(e/=parseFloat(d.fontSize));"%"!=a.substring(a.length-1)&&(e*=100);na.value=e+" %"}a=d.color.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+ +w?"":"none";if(document.activeElement!=B){"FONT"==a.nodeName&&"4"==a.getAttribute("size")&&null!=E?(a.removeAttribute("size"),a.style.fontSize=E+"px",E=null):B.value=parseFloat(d.fontSize)+" pt";var a=a.style.lineHeight||d.lineHeight,e=parseFloat(a);"px"==a.substring(a.length-2)&&(e/=parseFloat(d.fontSize));"%"!=a.substring(a.length-1)&&(e*=100);ma.value=e+" %"}a=d.color.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+ ("0"+Number(c).toString(16)).substr(-2)+("0"+Number(d).toString(16)).substr(-2)});e=d.backgroundColor.replace(/\brgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)/g,function(a,b,c,d){return"#"+("0"+Number(b).toString(16)).substr(-2)+("0"+Number(c).toString(16)).substr(-2)+("0"+Number(d).toString(16)).substr(-2)});null!=S&&(V="#"==a.charAt(0)?a:"#000000",S(V,!0));null!=C&&(x="#"==e.charAt(0)?e:null,C(x,!0));null!=k.firstChild&&(d=d.fontFamily,"'"==d.charAt(0)&&(d=d.substring(1)),"'"==d.charAt(d.length- 1)&&(d=d.substring(0,d.length-1)),k.firstChild.nodeValue=d)}}fa=!1},0))};mxEvent.addListener(b.cellEditor.textarea,"input",f);mxEvent.addListener(b.cellEditor.textarea,"touchend",f);mxEvent.addListener(b.cellEditor.textarea,"mouseup",f);mxEvent.addListener(b.cellEditor.textarea,"keyup",f);this.listeners.push({destroy:function(){}});f()}return a};StyleFormatPanel=function(a,c,d){BaseFormatPanel.call(this,a,c,d);this.init()};mxUtils.extend(StyleFormatPanel,BaseFormatPanel); StyleFormatPanel.prototype.init=function(){var a=this.format.getSelectionState();a.containsImage&&"image"!=a.style.shape||this.container.appendChild(this.addFill(this.createPanel()));this.container.appendChild(this.addStroke(this.createPanel()));a=this.createRelativeOption(mxResources.get("opacity"),mxConstants.STYLE_OPACITY,41);a.style.paddingTop="8px";a.style.paddingBottom="8px";this.container.appendChild(a);this.container.appendChild(this.addEffects(this.createPanel()));a=this.addEditOps(this.createPanel()); @@ -6158,7 +6158,7 @@ K=document.createElement("tr"),N=K.cloneNode(!0),Q=document.createElement("td"), mxResources.get("fitToSheetsAcross"));W.appendChild(d);mxUtils.write(P,mxResources.get("fitToBy"));var R=O.cloneNode(!0);Y.appendChild(R);mxEvent.addListener(O,"focus",function(){J.checked=!0});mxEvent.addListener(R,"focus",function(){J.checked=!0});d=document.createElement("span");mxUtils.write(d,mxResources.get("fitToSheetsDown"));U.appendChild(d);K.appendChild(Q);K.appendChild(I);K.appendChild(W);N.appendChild(P);N.appendChild(Y);N.appendChild(U);T.appendChild(K);T.appendChild(N);t.appendChild(T); n.appendChild(t);k.appendChild(n);n=document.createElement("div");d=document.createElement("div");d.style.fontWeight="bold";d.style.marginBottom="12px";mxUtils.write(d,mxResources.get("paperSize"));n.appendChild(d);d=document.createElement("div");d.style.marginBottom="12px";var V=PageSetupDialog.addPageFormatPanel(d,"printdialog",b.editor.graph.pageFormat||mxConstants.PAGE_FORMAT_A4_PORTRAIT);n.appendChild(d);d=document.createElement("span");mxUtils.write(d,mxResources.get("pageScale"));n.appendChild(d); var S=document.createElement("input");S.style.cssText="margin:0 8px 0 8px;";S.setAttribute("value","100 %");S.style.width="60px";n.appendChild(S);k.appendChild(n);d=document.createElement("div");d.style.cssText="text-align:right;margin:62px 0 0 0;";n=mxUtils.button(mxResources.get("cancel"),function(){b.hideDialog()});n.className="geBtn";b.editor.cancelFirst&&d.appendChild(n);b.isOffline()||(t=mxUtils.button(mxResources.get("help"),function(){window.open("https://desk.draw.io/support/solutions/articles/16000048947")}), -t.className="geBtn",d.appendChild(t));PrintDialog.previewEnabled&&(t=mxUtils.button(mxResources.get("preview"),function(){b.hideDialog();c(!1)}),t.className="geBtn",d.appendChild(t));t=mxUtils.button(mxResources.get(PrintDialog.previewEnabled?"print":"ok"),function(){b.hideDialog();c(!0)});t.className="geBtn gePrimaryBtn";d.appendChild(t);b.editor.cancelFirst||d.appendChild(n);k.appendChild(d);this.container=k}})();(function(){EditorUi.VERSION="6.9.9";EditorUi.compactUi="atlas"!=uiTheme;EditorUi.enableLogging=/.*\.draw\.io$/.test(window.location.hostname);EditorUi.isElectronApp=null!=window&&null!=window.process&&null!=window.process.versions&&null!=window.process.versions.electron;EditorUi.prototype.emptyDiagramXml='';EditorUi.prototype.emptyLibraryXml="[]";EditorUi.prototype.mode=null;EditorUi.prototype.sidebarFooterHeight= +t.className="geBtn",d.appendChild(t));PrintDialog.previewEnabled&&(t=mxUtils.button(mxResources.get("preview"),function(){b.hideDialog();c(!1)}),t.className="geBtn",d.appendChild(t));t=mxUtils.button(mxResources.get(PrintDialog.previewEnabled?"print":"ok"),function(){b.hideDialog();c(!0)});t.className="geBtn gePrimaryBtn";d.appendChild(t);b.editor.cancelFirst||d.appendChild(n);k.appendChild(d);this.container=k}})();(function(){EditorUi.VERSION="7.0.0";EditorUi.compactUi="atlas"!=uiTheme;EditorUi.enableLogging=/.*\.draw\.io$/.test(window.location.hostname);EditorUi.isElectronApp=null!=window&&null!=window.process&&null!=window.process.versions&&null!=window.process.versions.electron;EditorUi.prototype.emptyDiagramXml='';EditorUi.prototype.emptyLibraryXml="[]";EditorUi.prototype.mode=null;EditorUi.prototype.sidebarFooterHeight= 36;EditorUi.prototype.defaultCustomShapeStyle="shape=stencil(tZRtTsQgEEBPw1+DJR7AoN6DbWftpAgE0Ortd/jYRGq72R+YNE2YgTePloEJGWblgA18ZuKFDcMj5/Sm8boZq+BgjCX4pTyqk6ZlKROitwusOMXKQDODx5iy4pXxZ5qTHiFHawxB0JrQZH7lCabQ0Fr+XWC1/E8zcsT/gAi+Subo2/3Mh6d/oJb5nU1b5tW7r2knautaa3T+U32o7f7vZwpJkaNDLORJjcu7t59m2jXxqX9un+tt022acsfmoKaQZ+vhhswZtS6Ne/ThQGt0IV0N3Yyv6P3CeT9/tHO0XFI5cAE=);whiteSpace=wrap;html=1;";EditorUi.prototype.maxBackgroundSize=1600;EditorUi.prototype.maxImageSize=520;EditorUi.prototype.resampleThreshold= 1E5;EditorUi.prototype.maxImageBytes=1E6;EditorUi.prototype.maxBackgroundBytes=25E5;EditorUi.prototype.currentFile=null;EditorUi.prototype.printPdfExport=!1;EditorUi.prototype.pdfPageExport=!0;EditorUi.prototype.formatEnabled="0"!=urlParams.format;(function(){EditorUi.prototype.useCanvasForExport=!1;EditorUi.prototype.jpgSupported=!1;try{var b=document.createElement("canvas"),a=new Image;a.onload=function(){try{b.getContext("2d").drawImage(a,0,0);var e=b.toDataURL("image/png");EditorUi.prototype.useCanvasForExport= null!=e&&6
')))}catch(k){}try{b=document.createElement("canvas");b.width=b.height=1;var c=b.toDataURL("image/jpeg");EditorUi.prototype.jpgSupported=null!==c.match("image/jpeg")}catch(k){}})(); @@ -6719,58 +6719,73 @@ EditorUi.prototype.addTabListeners=function(a,f){mxEvent.disableContextMenu(f);v this.hideCurrentMenu();if(!mxEvent.isTouchEvent(l)||!c){var m=new mxPopupMenu(this.createPageMenu(a));m.div.className+=" geMenubarMenu";m.smartSeparators=!0;m.showDisabled=!0;m.autoExpand=!0;m.hideMenu=mxUtils.bind(this,function(){mxPopupMenu.prototype.hideMenu.apply(m,arguments);this.resetCurrentMenu();m.destroy()});var b=mxEvent.getClientX(l),e=mxEvent.getClientY(l);m.popup(b,e,null,l);this.setCurrentMenu(m,f)}mxEvent.consume(l)}}))}; EditorUi.prototype.createPageMenu=function(a,f){return mxUtils.bind(this,function(d,c){d.addItem(mxResources.get("insert"),null,mxUtils.bind(this,function(){this.insertPage(null,mxUtils.indexOf(this.pages,a)+1)}),c);d.addItem(mxResources.get("delete"),null,mxUtils.bind(this,function(){this.removePage(a)}),c);d.addItem(mxResources.get("rename"),null,mxUtils.bind(this,function(){this.renamePage(a,f)}),c);d.addSeparator(c);d.addItem(mxResources.get("duplicate"),null,mxUtils.bind(this,function(){this.duplicatePage(a, mxResources.get("copyOf",[a.getName()]))}),c)})};Graph.prototype.defaultThemes[Graph.prototype.defaultThemeName]=mxUtils.parseXml('').documentElement; -(function(){function u(a){a=null!=a.Text?a.Text:null!=a.Value?a.Value:a.Lane_0;return null!=a&&null!=a.t?a.t:""}function n(a){return null!=a.Action?a.Action:a}function v(a,c){var d=n(c);if(null!=d){var b=x[d.Class];null!=b&&(a.style+=b);b=null!=d.Properties?d.Properties:d;if(null!=b){a.value=u(b);"ImageSearchBlock2"==d.Class&&(a.style+="image="+b.URL+";");a.style+=h(mxConstants.STYLE_STROKEWIDTH,b.LineWidth,"1");a.style+=h(mxConstants.STYLE_STROKECOLOR,b.LineColor.substring(0,7),"#000000");a.style+= +(function(){function u(a){a=null!=a.Text?a.Text:null!=a.Value?a.Value:a.Lane_0;return null!=a&&null!=a.t?a.t:""}function n(a){return null!=a.Action?a.Action:a}function w(a,c){var d=n(c);if(null!=d){var b=y[d.Class];null!=b&&(a.style+=b);b=null!=d.Properties?d.Properties:d;if(null!=b){a.value=u(b);"ImageSearchBlock2"==d.Class&&(a.style+="image="+b.URL+";");a.style+=h(mxConstants.STYLE_STROKEWIDTH,b.LineWidth,"1");a.style+=h(mxConstants.STYLE_STROKECOLOR,b.LineColor.substring(0,7),"#000000");a.style+= h(mxConstants.STYLE_ALIGN,b.TextAlign,"center");a.style+=h(mxConstants.STYLE_VERTICAL_ALIGN,b.TextVAlign,"middle");a.style+=h(mxConstants.STYLE_OPACITY,b.Opacity,"100");if(null!=b.Rotation){var f=mxUtils.toDegree(parseFloat(b.Rotation));"AdvancedSwimLaneBlockRotated"==d.Class&&(f+=90,a.geometry.rotate90());a.style+="rotation="+f+";"}b.FlipX&&(a.style+="flipH=1;");b.FlipY&&(a.style+="flipV=1;");null!=b.Shadow&&(a.style+=mxConstants.STYLE_SHADOW+"=1;");"dashed"==b.StrokeStyle?a.style+="dashed=1;":"dotted"== -b.StrokeStyle&&(a.style+="dashed=1;dashPattern=1 4;");null!=b.FillColor&&("object"===typeof b.FillColor?null!=b.FillColor.cs&&1", "_rels/.rels":"", diff --git a/war/js/diagramly/Extensions.js b/war/js/diagramly/Extensions.js index f4f2b1ce..498f3519 100644 --- a/war/js/diagramly/Extensions.js +++ b/war/js/diagramly/Extensions.js @@ -16,6 +16,8 @@ var labelStyle = 'text;html=1;resizable=0;align=center;verticalAlign=middle;labelBackgroundColor=#ffffff;'; var c = "fillColor=#036897;strokeColor=#ffffff;"; + var s = "shape=mxgraph."; + var ss = "strokeColor=none;shape=mxgraph."; // TODO: Add shape mappings // FIXME: Factor our common strings, eg. shape=mxgraph. to save space @@ -32,12 +34,12 @@ 'TerminatorBlock': 'rounded=1;arcSize=50;', 'PredefinedProcessBlock': 'shape=process;rounded=1;arcSize=' + arcSize + ';', 'DocumentBlock': 'shape=document;', - 'MultiDocumentBlock': 'shape=mxgraph.flowchart.multi-document;', + 'MultiDocumentBlock': s + 'flowchart.multi-document;', 'ManualInputBlock': 'shape=manualInput;size=15;rounded=1;arcSize=' + arcSize + ';', 'PreparationBlock': 'shape=hexagon;rounded=1;arcSize=' + arcSize + ';', 'DataBlockNew': 'shape=parallelogram;rounded=1;arcSize=' + arcSize + ';', 'DatabaseBlock': 'shape=cylinder;', - 'DirectAccessStorageBlock': 'shape=mxgraph.flowchart.direct_data;', + 'DirectAccessStorageBlock': s + 'flowchart.direct_data;', 'InternalStorageBlock': 'shape=internalStorage;rounded=1;arcSize=' + arcSize + ';dx=10;dy=10;', 'PaperTapeBlock': 'shape=tape;size=0.2;', 'ManualOperationBlockNew': 'shape=trapezoid;rounded=1;arcSize=' + arcSize + ';flipV=1;', @@ -45,12 +47,12 @@ 'StoredDataBlock': 'shape=dataStorage;', 'MergeBlock': 'triangle;direction=south;rounded=1;arcSize=' + arcSize + ';', 'ConnectorBlock': 'ellipse;', - 'OrBlock': 'shape=mxgraph.flowchart.summing_function;', - 'SummingJunctionBlock': 'shape=mxgraph.flowchart.or;', + 'OrBlock': s + 'flowchart.summing_function;', + 'SummingJunctionBlock': s + 'flowchart.or;', 'DisplayBlock': 'shape=display;', 'OffPageLinkBlock': 'shape=offPageConnector;rounded=1;arcSize=' + arcSize + ';', 'BraceNoteBlock': 'shape=curlyBracket;rounded=1;', //EXT - 'NoteBlock': 'shape=mxgraph.flowchart.annotation_1;', + 'NoteBlock': s + 'flowchart.annotation_1;', //Containers 'AdvancedSwimLaneBlock': 'swimlane;rounded=1;arcSize=' + arcSize + ';', //EXT 'AdvancedSwimLaneBlockRotated': 'swimlane;horizontal=0;rounded=1;arcSize=' + arcSize + ';', //EXT @@ -65,18 +67,18 @@ // 'BracketBlockRotated' NA //Geometric shapes 'IsoscelesTriangleBlock': 'triangle;direction=north;', - 'RightTriangleBlock': 'shape=mxgraph.basic.orthogonal_triangle;', - 'PentagonBlock': 'shape=mxgraph.basic.pentagon;', + 'RightTriangleBlock': s + 'basic.orthogonal_triangle;', + 'PentagonBlock': s + 'basic.pentagon;', 'HexagonBlock': 'shape=hexagon;rounded=1;arcSize=' + arcSize + ';', - 'OctagonBlock': 'shape=mxgraph.basic.octagon;', + 'OctagonBlock': s + 'basic.octagon;', 'CrossBlock': 'shape=cross;size=0.6;', 'CloudBlock': 'ellipse;shape=cloud;', - 'HeartBlock': 'shape=mxgraph.basic.heart;', + 'HeartBlock': s + 'basic.heart;', 'RightArrowBlock': 'shape=singleArrow;arrowWidth=0.5;arrowSize=0.3;', 'DoubleArrowBlock': 'shape=doubleArrow;arrowWidth=0.5;arrowSize=0.3;', - 'CalloutBlock': 'shape=mxgraph.basic.rectangular_callout;', + 'CalloutBlock': s + 'basic.rectangular_callout;', 'ShapeCircleBlock': 'ellipse;', - 'ShapePolyStarBlock': 'shape=mxgraph.basic.star;', + 'ShapePolyStarBlock': s + 'basic.star;', 'ShapeDiamondBlock': 'rhombus;rounded=1;arcSize=' + arcSize + ';', //Android Devices // 'AndroidDevice' EXT @@ -100,28 +102,28 @@ // 'AndroidToggle' EXT // 'AndroidSlider' EXT //Android Icons (not working properly, needs specific code) - 'AndroidIconCheck': 'shape=mxgraph.ios7.misc.check;', + 'AndroidIconCheck': s + 'ios7.misc.check;', // 'AndroidIconBack' NA -// 'AndroidIconCancel' NA - 'AndroidIconCollapse': 'shape=mxgraph.ios7.misc.up;', - 'AndroidIconExpand': 'shape=mxgraph.ios7.misc.down;', + 'AndroidIconCancel' : s + 'atlassian.x;', + 'AndroidIconCollapse': s + 'ios7.misc.up;', + 'AndroidIconExpand': s + 'ios7.misc.down;', // 'AndroidIconForward' NA - 'AndroidIconNext': 'shape=mxgraph.ios7.misc.right;', - 'AndroidIconPrevious': 'shape=mxgraph.ios7.misc.left;', -// 'AndroidIconRefresh' NA - 'AndroidIconInformation': 'shape=mxgraph.ios7.icons.info;', + 'AndroidIconNext': s + 'ios7.misc.right;', + 'AndroidIconPrevious': s + 'ios7.misc.left;', + 'AndroidIconRefresh' : + 'ios7.icons.repeat;', + 'AndroidIconInformation': s + 'ios7.icons.info;', // 'AndroidIconHelp' NA - 'AndroidIconSearch': 'shape=mxgraph.ios7.icons.looking_glass;', - 'AndroidIconSettings': 'shape=mxgraph.ios7.icons.volume;direction=south;', + 'AndroidIconSearch': s + 'ios7.icons.looking_glass;', + 'AndroidIconSettings': s + 'ios7.icons.volume;direction=south;', // 'AndroidIconDislike' NA // 'AndroidIconLike' NA // 'AndroidIconDelete' NA // 'AndroidIconCopy' NA // 'AndroidIconCut' NA // 'AndroidIconPaste' NA - 'AndroidIconTrash': 'shape=mxgraph.ios7.icons.trashcan;', - 'AndroidIconEmail': 'shape=mxgraph.mockup.misc.mail2;', - 'AndroidIconNew': 'shape=mxgraph.ios7.misc.flagged;', + 'AndroidIconTrash': s + 'ios7.icons.trashcan;', + 'AndroidIconEmail': s + 'mockup.misc.mail2;', + 'AndroidIconNew': s + 'ios7.misc.flagged;', // 'AndroidIconImage' NA // 'AndroidIconUndo' NA // 'AndroidIconSharing' NA @@ -169,7 +171,7 @@ // 'SMUpload' EXT //UML Class Diagram 'UMLClassBlock': 'rounded=1;', - 'UMLActiveClassBlock': 'shape=mxgraph.flowchart.predefined_process;', + 'UMLActiveClassBlock': s + 'flowchart.predefined_process;', // 'UMLMultiplicityBlock' NA 'UMLPackageBlock': 'shape=folder;tabPosition=left;', // 'UMLConstraintBlock' NA @@ -181,30 +183,30 @@ 'UMLCircleContainerBlock': 'shape=ellipse;container=1;', 'UMLRectangleContainerBlock': 'rounded=1;container=1;', //UML State/Activity - 'UMLOptionLoopBlock' : 'shape=mxgraph.sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;', + 'UMLOptionLoopBlock' : s + 'sysml.package;xSize=90;align=left;spacingLeft=10;overflow=fill;', 'UMLStartBlock' : 'shape=ellipse;fillColor=#000000;', 'UMLStateBlock' : 'shape=rect;rounded=1;', 'UMLDecisionBlock' : 'shape=rhombus;rounded=1;', 'UMLHForkJoinBlock' : 'shape=rect;rounded=1;fillColor=#000000;', 'UMLVForkJoinBlock' : 'shape=rect;rounded=1;fillColor=#000000;', - 'UMLFlowFinalBlock' : 'shape=mxgraph.flowchart.or;', + 'UMLFlowFinalBlock' : s + 'flowchart.or;', 'UMLHistoryStateBlock' : 'shape=ellipse;', - 'UMLEndBlock' : 'shape=mxgraph.bpmn.shape;outline=end;symbol=terminate;', + 'UMLEndBlock' : s + 'bpmn.shape;outline=end;symbol=terminate;', 'UMLObjectBlock' : 'shape=rect;rounded=1;', - 'UMLSendSignalBlock' : 'shape=mxgraph.sysml.sendSigAct;', - 'UMLReceiveSignalBlock' : 'shape=mxgraph.sysml.accEvent;', - 'UMLAcceptTimeEventActionBlock' : 'shape=mxgraph.sysml.timeEvent;', + 'UMLSendSignalBlock' : s + 'sysml.sendSigAct;', + 'UMLReceiveSignalBlock' : s + 'sysml.accEvent;', + 'UMLAcceptTimeEventActionBlock' : s + 'sysml.timeEvent;', // 'UMLInterruptingEdgeBlock' NA - 'UMLOffPageLinkBlock' : 'shape=mxgraph.sysml.sendSigAct;direction=south;', + 'UMLOffPageLinkBlock' : s + 'sysml.sendSigAct;direction=south;', // 'UMLExpansionNodeBlock' NA // 'UMLMultiLanePoolBlock' EXT // 'UMLMultiLanePoolRotatedBlock' EXT // 'UMLMultidimensionalSwimlane' EXT //UML Sequence 'UMLActivationBlock' : 'shape=rect;rounded=1;', - 'UMLDeletionBlock' : 'shape=mxgraph.sysml.x;strokeWidth=4;', + 'UMLDeletionBlock' : s + 'sysml.x;strokeWidth=4;', // 'UMLAlternativeBlock' NA - 'UMLSeqEntityBlock' : 'shape=mxgraph.electrical.radio.microphone_1;direction=north;', + 'UMLSeqEntityBlock' : s + 'electrical.radio.microphone_1;direction=north;', // 'UMLBoundaryBlock' NA // 'UMLControlBlock'NA //UML Component @@ -239,7 +241,7 @@ // 'DFDExternalEntityBlock' NA 'DFDExternalEntityBlock2' : 'shape=rect;rounded=1;', 'YDMDFDProcessBlock' : 'shape=ellipse;', - 'YDMDFDDataStoreBlock' : 'shape=mxgraph.bootstrap.horLines;', + 'YDMDFDDataStoreBlock' : s + 'bootstrap.horLines;', 'GSDFDProcessBlock' : 'shape=swimlane;rounded=1;', 'GSDFDProcessBlock2' : 'shape=rect;rounded=1;', // 'GSDFDDataStoreBlock' NA @@ -249,476 +251,607 @@ //Tables // 'DefaultTableBlock' EXT //Processes - 'VSMCustomerSupplierBlock' : 'shape=mxgraph.lean_mapping.outside_sources;', - 'VSMDedicatedProcessBlock' : 'shape=mxgraph.lean_mapping.manufacturing_process;', - 'VSMSharedProcessBlock' : 'shape=mxgraph.lean_mapping.manufacturing_process_shared;', - 'VSMWorkcellBlock' : 'shape=mxgraph.lean_mapping.work_cell;', + 'VSMCustomerSupplierBlock' : s + 'lean_mapping.outside_sources;', + 'VSMDedicatedProcessBlock' : s + 'lean_mapping.manufacturing_process;', + 'VSMSharedProcessBlock' : s + 'lean_mapping.manufacturing_process_shared;', + 'VSMWorkcellBlock' : s + 'lean_mapping.work_cell;', // 'VSMDatacellBlock' EXT //Materials - 'VSMInventoryBlock' : 'shape=mxgraph.lean_mapping.inventory_box;', + 'VSMInventoryBlock' : s + 'lean_mapping.inventory_box;', // 'VSMSupermarketBlock' EXT - 'VSMPhysicalPullBlock' : 'shape=mxgraph.lean_mapping.physical_pull;direction=south;', - 'VSMFIFOLaneBlock' : 'shape=mxgraph.lean_mapping.fifo_sequence_flow;fontStyle=0;fontSize=20', + 'VSMPhysicalPullBlock' : s + 'lean_mapping.physical_pull;direction=south;', + 'VSMFIFOLaneBlock' : s + 'lean_mapping.fifo_sequence_flow;fontStyle=0;fontSize=20', // 'VSMSafetyBufferStockBlock' EXT //Shipments - 'VSMExternalShipmentAirplaneBlock' : 'shape=mxgraph.lean_mapping.airplane_7;', - 'VSMExternalShipmentForkliftBlock' : 'shape=mxgraph.lean_mapping.move_by_forklift;', - 'VSMExternalShipmentTruckBlock' : 'shape=mxgraph.lean_mapping.truck_shipment;', - 'VSMExternalShipmentBoatBlock' : 'shape=mxgraph.lean_mapping.boat_shipment;', + 'VSMExternalShipmentAirplaneBlock' : s + 'lean_mapping.airplane_7;', + 'VSMExternalShipmentForkliftBlock' : s + 'lean_mapping.move_by_forklift;', + 'VSMExternalShipmentTruckBlock' : s + 'lean_mapping.truck_shipment;', + 'VSMExternalShipmentBoatBlock' : s + 'lean_mapping.boat_shipment;', //Information - 'VSMProductionControlBlock' : 'shape=mxgraph.lean_mapping.manufacturing_process;', + 'VSMProductionControlBlock' : s + 'lean_mapping.manufacturing_process;', 'VSMOtherInformationBlock' : 'shape=rect;rounded=1;', // 'VSMHeijyunkaBoxBlock' NA - 'VSMSequencedPullBallBlock' : 'shape=mxgraph.lean_mapping.sequenced_pull_ball;', - 'VSMMRPERPBlock' : 'shape=mxgraph.lean_mapping.mrp_erp;whiteSpace=wrap;', - 'VSMLoadLevelingBlock' : 'shape=mxgraph.lean_mapping.load_leveling;', - 'VSMGoSeeBlock' : 'shape=mxgraph.lean_mapping.go_see_production_scheduling;flipH=1;', + 'VSMSequencedPullBallBlock' : s + 'lean_mapping.sequenced_pull_ball;', + 'VSMMRPERPBlock' : s + 'lean_mapping.mrp_erp;whiteSpace=wrap;', + 'VSMLoadLevelingBlock' : s + 'lean_mapping.load_leveling;', + 'VSMGoSeeBlock' : s + 'lean_mapping.go_see_production_scheduling;flipH=1;', 'VSMGoSeeProductionBlock' : 'shape=ellipse;', - 'VSMVerbalInfoBlock' : 'shape=mxgraph.lean_mapping.verbal;', + 'VSMVerbalInfoBlock' : s + 'lean_mapping.verbal;', //Value Stream Mapping - 'VSMKaizenBurstBlock' : 'shape=mxgraph.lean_mapping.kaizen_lightening_burst;', - 'VSMOperatorBlock' : 'shape=mxgraph.lean_mapping.operator;flipV=1;', + 'VSMKaizenBurstBlock' : s + 'lean_mapping.kaizen_lightening_burst;', + 'VSMOperatorBlock' : s + 'lean_mapping.operator;flipV=1;', // 'VSMTimelineBlock' EXT - 'VSMQualityProblemBlock' : 'shape=mxgraph.lean_mapping.quality_problem;', + 'VSMQualityProblemBlock' : s + 'lean_mapping.quality_problem;', //Kanban - 'VSMProductionKanbanSingleBlock' : 'shape=mxgraph.lean_mapping.production_kanban;', + 'VSMProductionKanbanSingleBlock' : s + 'lean_mapping.production_kanban;', // 'VSMProductionKanbanBatchBlock' NA - 'VSMWithdrawalKanbanBlock' : 'shape=mxgraph.lean_mapping.withdrawal_kanban;', + 'VSMWithdrawalKanbanBlock' : s + 'lean_mapping.withdrawal_kanban;', // 'VSMWithdrawalKanbanBatchBlock' NA - 'VSMSignalKanbanBlock' : 'shape=mxgraph.lean_mapping.signal_kanban;', - 'VSMKanbanPostBlock' : 'shape=mxgraph.lean_mapping.kanban_post;', + 'VSMSignalKanbanBlock' : s + 'lean_mapping.signal_kanban;', + 'VSMKanbanPostBlock' : s + 'lean_mapping.kanban_post;', //Arrows 'VSMShipmentArrow': 'shape=singleArrow;arrowWidth=0.5;arrowSize=0.13;', - 'VSMPushArrow' : 'shape=mxgraph.lean_mapping.push_arrow;', -// 'VSMElectronicInformationArrow' : 'shape=mxgraph.lean_mapping.electronic_info_flow_edge;', EXT + 'VSMPushArrow' : s + 'lean_mapping.push_arrow;', +// 'VSMElectronicInformationArrow' : s + 'lean_mapping.electronic_info_flow_edge;', EXT //EC2 - 'AWSElasticComputeCloudBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2;strokeColor=none;', - 'AWSInstanceBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_instance;strokeColor=none;', - 'AWSInstancesBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_instances;strokeColor=none;', - 'AWSAMIBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_ami;strokeColor=none;', - 'AWSDBonInstanceBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_db_on_instance;strokeColor=none;', - 'AWSInstanceCloudWatchBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_cloudwatch;strokeColor=none;', - 'AWSElasticIPBlock2' : 'shape=mxgraph.aws2.compute_and_networking.ec2_elastic_ip;strokeColor=none;', - 'AWSElasticMapReduceBlock2' : 'shape=mxgraph.aws2.compute_and_networking.emr;strokeColor=none;', - 'AWSClusterBlock2' : 'shape=mxgraph.aws2.compute_and_networking.emr_cluster;strokeColor=none;', - 'AWSHDFSClusterBlock2' : 'shape=mxgraph.aws2.compute_and_networking.emr_hdfs_cluster;strokeColor=none;', - 'AWSAutoScalingBlock2' : 'shape=mxgraph.aws2.compute_and_networking.auto_scaling;strokeColor=none;', + 'AWSElasticComputeCloudBlock2' : ss + 'aws3.ec2;', + 'AWSInstanceBlock2' : ss + 'aws3.instance;', + 'AWSInstancesBlock2' : ss + 'aws3.instances;', + 'AWSAMIBlock2' : ss + 'aws3.ami;', + 'AWSDBonInstanceBlock2' : ss + 'aws3.db_on_instance;', + 'AWSInstanceCloudWatchBlock2' : ss + 'aws3.instance_with_cloudwatch;', + 'AWSElasticIPBlock2' : ss + 'aws3.elastic_ip;', + 'AWSHDFSClusterBlock2' : ss + 'aws3.hdfs_cluster;', + 'AWSAutoScalingBlock2' : ss + 'aws3.auto_scaling;', + 'AWSEC2OptimizedInstance2' : ss + 'aws3.optimized_instance;', + 'AWSAmazonEC2(Spotinstance)' : ss + 'aws3.spot_instance;', + 'AWSAmazonECR' : ss + 'aws3.ecr;', + 'AWSAmazonECS' : ss + 'aws3.ecs;', + 'AWSLambda2' : ss + 'aws3.lambda;', + 'AWSElasticLoadBalancing' : ss + 'aws3.elastic_load_balancing;', //Networking - 'AWSElasticLoadBlock2' : 'shape=mxgraph.aws2.compute_and_networking.elastic_load_balancing;strokeColor=none;', - 'AWSDirectConnectBlock3' : 'shape=mxgraph.aws2.compute_and_networking.aws_direct_connect;strokeColor=none;', - 'AWSElasticNetworkBlock2' : 'shape=mxgraph.aws2.compute_and_networking.elastic_network_instance;strokeColor=none;', - 'AWSRoute53Block2' : 'shape=mxgraph.aws2.compute_and_networking.route_53;strokeColor=none;', - 'AWSHostedZoneBlock2' : 'shape=mxgraph.aws2.compute_and_networking.route_53_hosted_zone;strokeColor=none;', - 'AWSRouteTableBlock2' : 'shape=mxgraph.aws2.compute_and_networking.route_53_route_table;strokeColor=none;', - 'AWSVPCBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc;strokeColor=none;', - 'AWSVPNConnectionBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_vpn_connection;strokeColor=none;', - 'AWSVPNGatewayBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_vpn_gateway;strokeColor=none;', - 'AWSCustomerGatewayBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_customer_gateway;strokeColor=none;', - 'AWSInternetGatewayBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_internet_gateway;strokeColor=none;', - 'AWSRouterBlock2' : 'shape=mxgraph.aws2.compute_and_networking.vpc_router;strokeColor=none;', + 'AWSElasticLoadBlock2' : ss + 'aws3.classic_load_balancer;', + 'AWSDirectConnectBlock3' : ss + 'aws3.direct_connect;', + 'AWSElasticNetworkBlock2' : ss + 'aws3.elastic_network_interface;', + 'AWSRoute53Block2' : ss + 'aws3.route_53;', + 'AWSHostedZoneBlock2' : ss + 'aws3.hosted_zone;fontColor=#FFFFFF;fontStyle=1;', + 'AWSRouteTableBlock2' : ss + 'aws3.route_table;', + 'AWSVPCBlock2' : ss + 'aws3.vpc;', + 'AWSVPNConnectionBlock2' : ss + 'aws3.vpn_connection;', + 'AWSVPNGatewayBlock2' : ss + 'aws3.vpn_gateway;', + 'AWSCustomerGatewayBlock2' : ss + 'aws3.customer_gateway;', + 'AWSCustomerGatewayBlock3' : ss + 'aws3.customer_gateway;', + 'AWSInternetGatewayBlock2' : ss + 'aws3.internet_gateway;', + 'AWSRouterBlock2' : ss + 'aws3.router;', + 'AWSRouterBlock3' : ss + 'aws3.router;', + 'AWSAmazonVPC(endpoints)' : ss + 'aws3.endpoints;', + 'AWSAmazonVPC(flowlogs)' : ss + 'aws3.flow_logs;', + 'AWSAmazonVPC(VPCNATgateway)' : ss + 'aws3.vpc_nat_gateway;', + 'AWSVPCPeering3' : ss + 'aws3.vpc_peering;', + //S3 - 'AWSSimpleStorageBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.s3;strokeColor=none;', - 'AWSBucketBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.s3_bucket;strokeColor=none;', - 'AWSBuckethWithObjectsBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.s3_bucket_with_objects;strokeColor=none;', - 'AWSObjectBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.s3_objects;strokeColor=none;', - 'AWSImportExportBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.aws_import_export;strokeColor=none;', - 'AWSStorageGatewayBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.aws_storage_gateway;strokeColor=none;', - 'AWSElasticBlockStorageBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.ebs;strokeColor=none;', - 'AWSVolumeBlock3' : 'shape=mxgraph.aws2.storage_and_content_delivery.ebs_volume;strokeColor=none;', - 'AWSSnapshotBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.ebs_snapshot;strokeColor=none;', - 'AWSGlacierBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.glacier;strokeColor=none;', - 'AWSGlacierArchiveBlock3' : 'shape=mxgraph.aws2.storage_and_content_delivery.glacier_archive;strokeColor=none;', - 'AWSGlacierVaultBlock3' : 'shape=mxgraph.aws2.storage_and_content_delivery.glacier_vault;strokeColor=none;', + 'AWSSimpleStorageBlock2' : ss + 'aws3.s3;', + 'AWSBucketBlock2' : ss + 'aws3.bucket;fontStyle=1;fontColor=#ffffff;', + 'AWSBuckethWithObjectsBlock2' : ss + 'aws3.bucket_with_objects;', + 'AWSObjectBlock2' : ss + 'aws3.object;fontStyle=1;fontColor=#ffffff;', + 'AWSImportExportBlock2' : ss + 'aws3.import_export;', + 'AWSStorageGatewayBlock2' : ss + 'aws3.storage_gateway;', + 'AWSElasticBlockStorageBlock2' : ss + 'aws3.volume;fontStyle=1;fontColor=#ffffff;', + 'AWSVolumeBlock3' : ss + 'aws3.volume;fontStyle=1;fontColor=#ffffff;', + 'AWSSnapshotBlock2' : ss + 'aws3.snapshot;fontStyle=1;fontColor=#ffffff;', + 'AWSGlacierArchiveBlock3' : ss + 'aws3.archive;', + 'AWSGlacierVaultBlock3' : ss + 'aws3.vault;', + 'AWSAmazonEFS' : ss + 'aws3.efs;', + 'AWSGlacierBlock2' : ss + 'aws3.glacier;', + 'AWSAWSImportExportSnowball' : ss + 'aws3.snowball;', + 'AWSStorageGatewayCachedVolumn2' : ss + 'aws3.cached_volume;', + 'AWSStorageGatewayNon-CachedVolumn2' : ss + 'aws3.non_cached_volume;', + 'AWSStorageGatewayVirtualTapeLibrary2' : ss + 'aws3.virtual_tape_library;', //Content Delivery - 'AWSCloudFrontBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.cloudfront;strokeColor=none;', - 'AWSDownloadDistBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_download_distribution;strokeColor=none;', - 'AWSStreamingBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_streaming_distribution;strokeColor=none;', - 'AWSEdgeLocationBlock2' : 'shape=mxgraph.aws2.storage_and_content_delivery.cloudfront_edge_location;strokeColor=none;', + 'AWSCloudFrontBlock2' : ss + 'aws3.cloudfront;', + 'AWSDownloadDistBlock2' : ss + 'aws3.download_distribution;', + 'AWSStreamingBlock2' : ss + 'aws3.streaming_distribution;', + 'AWSEdgeLocationBlock2' : ss + 'aws3.edge_location;', //Database - 'AWSItemBlock2' : 'shape=mxgraph.aws2.database.dynamodb_item;strokeColor=none;', - 'AWSItemsBlock2' : 'shape=mxgraph.aws2.database.dynamodb_items;strokeColor=none;', - 'AWSAttributeBlock2' : 'shape=mxgraph.aws2.database.dynamodb_attribute;strokeColor=none;', - 'AWSAttributesBlock2' : 'shape=mxgraph.aws2.database.dynamodb_attributes;strokeColor=none;', - 'AWSRDBSBlock2' : 'shape=mxgraph.aws2.database.rds;strokeColor=none;', - 'AWSRDSInstanceBlock2' : 'shape=mxgraph.aws2.database.rds_db_instance;strokeColor=none;', - 'AWSRDSStandbyBlock2' : 'shape=mxgraph.aws2.database.rds_instance_standby;strokeColor=none;', - 'AWSRDSInstanceReadBlock2' : 'shape=mxgraph.aws2.database.rds_instance_read_replica;strokeColor=none;', - 'AWSOracleDBBlock2' : 'shape=mxgraph.aws2.database.rds_oracle_db_instance;strokeColor=none;', - 'AWSMySQLDBBlock2' : 'shape=mxgraph.aws2.database.rds_mysql_db_instance;strokeColor=none;', - 'AWSMSSQLDBBlock3' : 'shape=mxgraph.aws2.database.rds_ms_sql_instance;strokeColor=none;', - 'AWSDynamoDBBlock2' : 'shape=mxgraph.aws2.database.dynamodb;strokeColor=none;', - 'AWSSimpleDatabaseBlock3' : 'shape=mxgraph.aws2.database.simpledb;strokeColor=none;', - 'AWSSimpleDatabaseDomainBlock3' : 'shape=mxgraph.aws2.database.simpledb_domain;strokeColor=none;', - 'AWSTableBlock2' : 'shape=mxgraph.aws2.database.dynamodb_table;strokeColor=none;', - 'AWSAmazonRedShiftBlock3' : 'shape=mxgraph.aws2.database.redshift;strokeColor=none;', - 'AWSElastiCacheNodeBlock2' : 'shape=mxgraph.aws2.database.elasticcache_node;strokeColor=none;', - 'AWSElastiCacheBlock2' : 'shape=mxgraph.aws2.database.elasticcache;strokeColor=none;', + 'AWSItemBlock2' : ss + 'aws3.item;', + 'AWSItemsBlock2' : ss + 'aws3.items;', + 'AWSAttributeBlock2' : ss + 'aws3.attribute;', + 'AWSAttributesBlock2' : ss + 'aws3.attributes;', + 'AWSRDBSBlock2' : ss + 'aws3.rds;', + 'AWSRDSInstanceBlock2' : ss + 'aws3.rds_db_instance;', + 'AWSRDSStandbyBlock2' : ss + 'aws3.rds_db_instance_standby_multi_az;', + 'AWSRDSInstanceReadBlock2' : ss + 'aws3.rds_db_instance_read_replica;', + 'AWSOracleDBBlock2' : ss + 'aws3.oracle_db_instance;', + 'AWSMySQLDBBlock2' : ss + 'aws3.mysql_db_instance;', + 'AWSDynamoDBBlock2' : ss + 'aws3.dynamo_db;', + 'AWSSimpleDatabaseBlock3' : ss + 'aws2.database.simpledb;', + 'AWSSimpleDatabaseDomainBlock3' : ss + 'aws2.database.simpledb_domain;', + 'AWSTableBlock2' : ss + 'aws3.table;', + 'AWSAmazonRedShiftBlock3' : ss + 'aws3.redshift;', + 'AWSElastiCacheNodeBlock2' : ss + 'aws3.cache_node;', + 'AWSElastiCacheBlock2' : ss + 'aws3.elasticache;', + 'AWSDynamoDBGlobalSecondaryIndexes2' : ss + 'aws3.global_secondary_index;', + 'AWSAmazonElastiCacheMemcache2' : ss + 'aws3.memcached;', + 'AWSAmazonElastiCacheRedis2' : ss + 'aws3.redis;', + 'AWSAmazonRDSMSSQLInstance2' : ss + 'aws3.ms_sql_instance_2;', + 'AWSMSSQLDBBlock3' : ss + 'aws3.ms_sql_instance;', + 'AWSAmazonRDSMySQLDBInstance2' : ss + 'aws3.mysql_db_instance_2;', + 'AWSAmazonRDSOracleDBInstance2' : ss + 'aws3.oracle_db_instance_2;', + 'AWSRDSReplicasetswithPIOP2' : ss + 'aws3.piop;', + 'AWSAmazonRDSPostgreSQL2' : ss + 'aws3.postgre_sql_instance;', + 'AWSRDSMasterSQL2' : ss + 'aws3.sql_master;', + 'AWSRDSSlaveSQL2' : ss + 'aws3.sql_slave;', + 'AWSAmazonRedshift(densecomputenode)' : ss + 'aws3.dense_compute_node;', + 'AWSAmazonRedshift(densestoragenode)' : ss + 'aws3.dense_storage_node;', + 'AWSAWSDatabaseMigrationService' : ss + 'aws3.database_migration_service;', +//Security Identity + 'AWSACM' : ss + 'aws3.certificate_manager;', + 'AWSAmazonInspector' : ss + 'aws3.inspector;', + 'AWSAWSCloudHSM' : ss + 'aws3.cloudhsm;', + 'AWSDirectoryService2' : ss + 'aws3.directory_service;', + 'AWSAWSKMS' : ss + 'aws3.kms;', + 'AWSAWSWAF' : ss + 'aws3.waf;', + 'AWSACM(certificate-manager)' : ss + 'aws3.certificate_manager_2;', //App Services - 'AWSSESBlock2' : 'shape=mxgraph.aws2.app_services.ses;strokeColor=none;', - 'AWSEmailBlock2' : 'shape=mxgraph.aws2.app_services.email;strokeColor=none;', - 'AWSSNSBlock2' : 'shape=mxgraph.aws2.app_services.sns;strokeColor=none;', - 'AWSTopicBlock2' : 'shape=mxgraph.aws2.app_services.sns_topic;strokeColor=none;', - 'AWSEmailNotificationBlock2' : 'shape=mxgraph.aws2.app_services.sns_email_notification;strokeColor=none;', - 'AWSHTTPNotificationBlock2' : 'shape=mxgraph.aws2.app_services.sns_http_notification;strokeColor=none;', - 'AWSSQSBlock3' : 'shape=mxgraph.aws2.app_services.sqs;strokeColor=none;', - 'AWSQueueBlock2' : 'shape=mxgraph.aws2.app_services.sqs_queue;strokeColor=none;', - 'AWSMessageBlock2' : 'shape=mxgraph.aws2.app_services.sqs_message;strokeColor=none;', - 'AWSDeciderBlock2' : 'shape=mxgraph.aws2.app_services.swf_decider;strokeColor=none;', - 'AWSSWFBlock2' : 'shape=mxgraph.aws2.app_services.swf;strokeColor=none;', - 'AWSWorkerBlock2' : 'shape=mxgraph.aws2.app_services.swf_worker;strokeColor=none;', - 'AWSCloudSearchBlock2' : 'shape=mxgraph.aws2.app_services.cloudsearch;strokeColor=none;', - 'AWSCloudSearchMetadataBlock3' : 'shape=mxgraph.aws2.app_services.cloudsearch_sdf_metadata;strokeColor=none;', - 'AWSElasticTranscoder3' : 'shape=mxgraph.aws2.app_services.elastic_transcoder;strokeColor=none;', + 'AWSSESBlock2' : ss + 'aws3.ses;', + 'AWSEmailBlock2' : ss + 'aws3.email;', + 'AWSSNSBlock2' : ss + 'aws3.sns;', + 'AWSSQSBlock3' : ss + 'aws3.sqs;', + 'AWSQueueBlock2' : ss + 'aws3.queue;', + 'AWSMessageBlock2' : ss + 'aws3.message;', + 'AWSDeciderBlock2' : ss + 'aws3.decider;', + 'AWSSWFBlock2' : ss + 'aws3.swf;', + 'AWSWorkerBlock2' : ss + 'aws3.worker;', + 'AWSCloudSearchBlock2' : ss + 'aws3.cloudsearch;', + 'AWSCloudSearchMetadataBlock3' : ss + 'aws3.search_documents;', + 'AWSElasticTranscoder3' : ss + 'aws3.elastic_transcoder;', + 'AWSAmazonAPIGateway' : ss + 'aws3.api_gateway;', + 'AWSAppStream2' : ss + 'aws3.appstream;', //Deployment - 'AWSCloudFormationBlock2' : 'shape=mxgraph.aws2.deployment_and_management.cloudformation;strokeColor=none;', - 'AWSDataPipelineBlock3' : 'shape=mxgraph.aws2.deployment_and_management.data_pipeline;strokeColor=none;', - 'AWSTemplageBlock2' : 'shape=mxgraph.aws2.deployment_and_management.cloudformation_template;strokeColor=none;', - 'AWSStackBlock2' : 'shape=mxgraph.aws2.deployment_and_management.cloudformation_stack;strokeColor=none;', - 'AWSBeanStockBlock2' : 'shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk;strokeColor=none;', - 'AWSApplicationBlock2' : 'shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk_application;strokeColor=none;', - 'AWSBeanstalkDeploymentBlock3' : 'shape=mxgraph.aws2.deployment_and_management.elastic_beanstalk_deployment;strokeColor=none;', - 'AWSIAMBlock3' : 'shape=mxgraph.aws2.deployment_and_management.iam;strokeColor=none;', - 'AWSIAMSTSBlock3' : 'shape=mxgraph.aws2.deployment_and_management.iam_sts;strokeColor=none;', - 'AWSIAMAddonBlock2' : 'shape=mxgraph.aws2.deployment_and_management.iam_add-on;strokeColor=none;', - 'AWSCloudWatchBlock3' : 'shape=mxgraph.aws2.deployment_and_management.cloudwatch;strokeColor=none;', - 'AWSCloudWatchAlarmBlock2' : 'shape=mxgraph.aws2.deployment_and_management.cloudwatch_alarm;strokeColor=none;', - 'AWSOpsWorksBlock3' : 'shape=mxgraph.aws2.deployment_and_management.opsworks;strokeColor=none;', + 'AWSCloudFormationBlock2' : ss + 'aws3.cloudformation;', + 'AWSDataPipelineBlock3' : ss + 'aws3.data_pipeline;', + 'AWSDataPipelineBlock2' : ss + 'aws3.data_pipeline;', + 'AWSTemplageBlock2' : ss + 'aws3.template;', + 'AWSStackBlock2' : ss + 'aws3.stack_aws_cloudformation;', + 'AWSBeanStockBlock2' : ss + 'aws3.elastic_beanstalk;', + 'AWSApplicationBlock2' : ss + 'aws3.application;', + 'AWSBeanstalkDeploymentBlock3' : ss + 'aws3.deployment;', + 'AWSIAMBlock3' : ss + 'aws3.iam;', + 'AWSIAMSTSBlock3' : ss + 'aws3.sts;', + 'AWSIAMAddonBlock2' : ss + 'aws3.add_on;', + 'AWSCloudWatchBlock3' : ss + 'aws3.cloudwatch;', + 'AWSCloudWatchAlarmBlock2' : ss + 'aws3.alarm;', + 'AWSIAMSecurityTokenService2' : ss + 'aws3.sts_2;', + 'AWSIAMDataEncryptionKey2' : ss + 'aws3.data_encryption_key;', + 'AWSIAMEncryptedData2' : ss + 'aws3.encrypted_data;', + 'AWSAWSIAM(long-termsecuritycredential)' : ss + 'aws3.long_term_security_credential;', + 'AWSIAMMFAToken2' : ss + 'aws3.mfa_token;', + 'AWSIAMPermissions2' : ss + 'aws3.permissions_2;', + 'AWSIAMRoles2' : ss + 'aws3.role;', + 'AWSAWSIAM(temporarysecuritycredential)' : ss + 'aws3.long_term_security_credential;', + 'AWSCloudTrail2' : ss + 'aws3.cloudtrail;', + 'AWSConfig2' : ss + 'aws3.config;', + 'AWSOpsWorksBlock3' : ss + 'aws3.opsworks;', + 'AWSAWSServiceCatalog' : ss + 'aws3.service_catalog;', + 'AWSTrustedAdvisor2' : ss + 'aws3.trusted_advisor;', + 'AWSOpsWorksApps2' : ss + 'aws3.apps;', + 'AWSOpsWorksDeployments2' : ss + 'aws3.deployments;', + 'AWSOpsWorksInstances2' : ss + 'aws3.instances_2;', + 'AWSOpsWorksLayers2' : ss + 'aws3.layers;', + 'AWSOpsWorksMonitoring2' : ss + 'aws3.monitoring;', + 'AWSOpsWorksPermissions2' : ss + 'aws3.permissions;', + 'AWSOpsWorksResources2' : ss + 'aws3.resources;', + 'AWSOpsWorksStack2' : ss + 'aws3.stack_aws_opsworks;', //On-Demand - 'AWSMechanicalTurkBlock3' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk;strokeColor=none;', - 'AWSHumanITBlock2' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_human_intelligence_tasks;strokeColor=none;', - 'AWSAssignmentTaskBlock2' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_requester;strokeColor=none;', - 'AWSWorkersBlock2' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_workers;strokeColor=none;', - 'AWSRequesterBlock2' : 'shape=mxgraph.aws2.on-demand_workforce.mechanical_turk_assignment_task;strokeColor=none;', + 'AWSMechanicalTurkBlock3' : ss + 'aws3.mechanical_turk;', + 'AWSHumanITBlock2' : ss + 'aws3.human_intelligence_tasks_hit;', + 'AWSAssignmentTaskBlock2' : ss + 'aws3.requester;', + 'AWSWorkersBlock2' : ss + 'aws3.users;', + 'AWSRequesterBlock2' : ss + 'aws3.assignment_task;', //SDKs - 'AWSAndroidBlock3': 'shape=mxgraph.aws2.sdks.android;', - 'AWSiOSBlock3' : 'shape=mxgraph.aws2.sdks.ios;', - 'AWSJavaBlock3' : 'shape=mxgraph.aws2.sdks.java;', - 'AWSNetBlock3' : 'shape=mxgraph.aws2.sdks.net;', - 'AWSNodeJSBlock3' : 'shape=mxgraph.aws2.sdks.nodejs;', - 'AWSPHPBlock3' : 'shape=mxgraph.aws2.sdks.php;', - 'AWSPythonBlock3' : 'shape=mxgraph.aws2.sdks.python;', - 'AWSRubyBlock3' : 'shape=mxgraph.aws2.sdks.ruby;', - 'AWSCLIBlock3' : 'shape=mxgraph.aws2.sdks.cli;', - 'AWSEclipseToolkitBlock3' : 'shape=mxgraph.aws2.sdks.aws_toolkit_for_eclipse;', - 'AWSVisualStudioToolkitBlock3' : 'shape=mxgraph.aws2.sdks.aws_toolkit_for_visual_studio;', - 'AWSWindowsPowershellToolkitBlock3' : 'shape=mxgraph.aws2.sdks.tools_for_windows_powershell;', -//AWS Other - 'AWSCloudBlock2' : 'shape=mxgraph.aws2.non-service_specific.cloud;strokeColor=none;', - 'AWSVPCloudBlock3' : 'shape=mxgraph.aws2.non-service_specific.virtual_private_cloud;strokeColor=none;', - 'AWSUserBlock2' : 'shape=mxgraph.aws2.non-service_specific.user;strokeColor=none;', - 'AWSUsersBlock2' : 'shape=mxgraph.aws2.non-service_specific.users;strokeColor=none;', - 'AWSClientBlock2' : 'shape=mxgraph.aws2.non-service_specific.client;strokeColor=none;', - 'AWSMobileClientBlock2' : 'shape=mxgraph.aws2.non-service_specific.mobile_client;strokeColor=none;', - 'AWSGenericDatabaseBlock3' : 'shape=mxgraph.aws2.non-service_specific.generic_database;strokeColor=none;', - 'AWSDiskBlock3' : 'shape=mxgraph.aws2.non-service_specific.disk;strokeColor=none;', - 'AWSTapeStorageBlock3' : 'shape=mxgraph.aws2.non-service_specific.tape_storage;strokeColor=none;', - 'AWSMediaBlock2' : 'shape=mxgraph.aws2.non-service_specific.multimedia;strokeColor=none;', - 'AWSDataCenterBlock2' : 'shape=mxgraph.aws2.non-service_specific.corporate_data_center;strokeColor=none;', - 'AWSServerBlock2' : 'shape=mxgraph.aws2.non-service_specific.traditional_server;strokeColor=none;', - 'AWSInternetBlock2' : 'shape=mxgraph.aws2.non-service_specific.internet;strokeColor=none;', - 'AWSForumsBlock3' : 'shape=mxgraph.aws2.non-service_specific.forums;strokeColor=none;', - 'AWSManagementBlock2' : 'shape=mxgraph.aws2.non-service_specific.management_console;strokeColor=none;', + 'AWSAndroidBlock3': ss + 'aws3.android;fillColor=#96BF3D;', + 'AWSiOSBlock3' : ss + 'aws3.android;fillColor=#CFCFCF;', + 'AWSJavaBlock3' : ss + 'aws3.android;fillColor=#EE472A;', + 'AWSJavaScript' : ss + 'aws3.android;fillColor=#205E00;', + 'AWSNetBlock3' : ss + 'aws3.android;fillColor=#115193;', + 'AWSNodeJSBlock3' : ss + 'aws3.android;fillColor=#8CC64F;', + 'AWSPHPBlock3' : ss + 'aws3.android;fillColor=#5A69A4;', + 'AWSPythonBlock3' : ss + 'aws3.android;fillColor=#FFD44F;', + 'AWSRubyBlock3' : ss + 'aws3.android;fillColor=#AE1F23;', + 'AWSXamarin' : ss + 'aws3.android;fillColor=#4090D7;', + 'AWSCLIBlock3' : ss + 'aws3.cli;fillColor=#444444;', + 'AWSEclipseToolkitBlock3' : ss + 'aws3.toolkit_for_eclipse;fillColor=#342074;', + 'AWSVisualStudioToolkitBlock3' : ss + 'aws3.toolkit_for_visual_studio;fillColor=#53B1CB;', + 'AWSWindowsPowershellToolkitBlock3' : ss + 'aws3.toolkit_for_windows_powershell;fillColor=#737373;', +//Analytics + 'AWSAmazonElasticsearchService' : ss + 'aws3.elasticsearch_service;', + 'AWSElasticMapReduceBlock2' : ss + 'aws3.emr;', + 'AWSClusterBlock2' : ss + 'aws3.emr_cluster;', + 'AWSEMREngine2' : ss + 'aws3.emr_engine;', + 'AWSEMRMapRM3Engine2' : ss + 'aws3.emr_engine_mapr_m3;', + 'AWSEMRMapRM5Engine2' : ss + 'aws3.emr_engine_mapr_m5;', + 'AWSEMRMapRM7Engine2' : ss + 'aws3.emr_engine_mapr_m7;', + 'AWSKinesis2' : ss + 'aws3.kinesis;', + 'AWSAmazonKinesis(AmazonKinesisAnalytics)' : ss + 'aws3.kinesis;', + 'AWSKinesisEnabledApp2' : ss + 'aws3.kinesis_enabled_app;', + 'AWSAmazonKinesis(AmazonKinesisFirehose)' : ss + 'aws3.kinesis_firehose;', + 'AWSAmazonKinesis(AmazonKinesisStreams)' : ss + 'aws3.kinesis_streams;', + 'AWSAmazonMachineLearning' : ss + 'aws3.machine_learning;', + 'AWSAmazonQuickSight' : ss + 'aws3.quicksight;', +//Mobile Services + 'AWSCognito2' : ss + 'aws3.cognito;', + 'AWSMobileAnalytics2' : ss + 'aws3.mobile_analytics;', + 'AWSAWSDeviceFarm' : ss + 'aws3.device_farm;', + 'AWSAWSMobileHub' : ss + 'aws3.mobile_hub;gradientColor=#AD688A;gradientDirection=east;', + 'AWSTopicBlock2' : ss + 'aws3.topic_2;fontStyle=1;fontColor=#ffffff;verticalAlign=top;spacingTop=-5;', + 'AWSEmailNotificationBlock2' : ss + 'aws3.email_notification;', + 'AWSHTTPNotificationBlock2' : ss + 'aws3.http_notification;', +//Developer Tools + 'AWSAWSCodeCommit' : ss + 'aws3.codecommit;', + 'AWSCodeDeploy2' : ss + 'aws3.codedeploy;', + 'AWSAWSCodePipeline' : ss + 'aws3.codepipeline;', +//Enterprise Application + 'AWSWorkDocs2' : ss + 'aws3.workdocs;', + 'AWSAmazonWorkMail' : ss + 'aws3.workmail;', + 'AWSAmazonWorkSpaces2' : ss + 'aws3.workspaces;', +//Internet of Things + 'AWSAWSIoT' : ss + 'aws3.aws_iot;', + 'AWSAWSIoT(action)' : ss + 'aws3.action;', + 'AWSAWSIoT(actuator)' : ss + 'aws3.actuator;', + 'AWSAWSIoT(certificate)' : ss + 'aws3.certificate;', + 'AWSAWSIoT(desiredstate)' : ss + 'aws3.desired_state;', + 'AWSAWSIoT(hardwareboard)' : ss + 'aws3.hardware_board;', + 'AWSAWSIoT(HTTP2protocol)' : ss + 'aws3.http_2_protocol;', + 'AWSAWSIoT(HTTPprotocol)' : ss + 'aws3.http_protocol;', + 'AWSAWSIoT(MQTTprotocol)' : ss + 'aws3.mqtt_protocol;', + 'AWSAWSIoT(policy)' : ss + 'aws3.policy;', + 'AWSAWSIoT(reportedstate)' : ss + 'aws3.reported_state;', + 'AWSAWSIoT(rule)' : ss + 'aws3.rule;', + 'AWSAWSIoT(sensor)' : ss + 'aws3.sensor;', + 'AWSAWSIoT(servo)' : ss + 'aws3.servo;', + 'AWSAWSIoT(shadow)' : ss + 'aws3.shadow;', + 'AWSAWSIoT(simulator)' : ss + 'aws3.simulator;', + 'AWSAWSIoT(thingbank)' : ss + 'aws3.bank;', + 'AWSAWSIoT(thingbicycle)' : ss + 'aws3.bicycle;', + 'AWSAWSIoT(thingcamera)' : ss + 'aws3.camera;', + 'AWSAWSIoT(thingcar)' : ss + 'aws3.car;', + 'AWSAWSIoT(thingcart)' : ss + 'aws3.cart;', + 'AWSAWSIoT(thingcoffeepot)' : ss + 'aws3.coffee_pot;', + 'AWSAWSIoT(thingdoorlock)' : ss + 'aws3.door_lock;', + 'AWSAWSIoT(thingfactory)' : ss + 'aws3.factory;', + 'AWSAWSIoT(thinggeneric)' : ss + 'aws3.generic;', + 'AWSAWSIoT(thinghouse)' : ss + 'aws3.house;', + 'AWSAWSIoT(thinglightbulb)' : ss + 'aws3.lightbulb;', + 'AWSAWSIoT(thingmedicalemergency)' : ss + 'aws3.medical_emergency;', + 'AWSAWSIoT(thingpoliceemergency)' : ss + 'aws3.police_emergency;', + 'AWSAWSIoT(thingthermostat)' : ss + 'aws3.thermostat;', + 'AWSAWSIoT(thingtravel)' : ss + 'aws3.travel;', + 'AWSAWSIoT(thingutility)' : ss + 'aws3.utility;', + 'AWSAWSIoT(thingwindfarm)' : ss + 'aws3.windfarm;', + 'AWSAWSIoT(topic)' : ss + 'aws3.topic;', + +//AWS General + 'AWSCloudBlock2' : ss + 'aws3.cloud;', + 'AWSVPCloudBlock3' : ss + 'aws3.virtual_private_cloud;', + 'AWSUserBlock2' : ss + 'aws3.user;', + 'AWSUsersBlock2' : ss + 'aws3.users;', + 'AWSClientBlock2' : ss + 'aws3.management_console;', + 'AWSMobileClientBlock2' : ss + 'aws3.mobile_client;', + 'AWSGenericDatabaseBlock3' : ss + 'aws3.generic_database;', + 'AWSDiskBlock3' : ss + 'aws3.disk;', + 'AWSTapeStorageBlock3' : ss + 'aws3.tape_storage;', + 'AWSMediaBlock2' : ss + 'aws3.multimedia;', + 'AWSDataCenterBlock2' : ss + 'aws3.corporate_data_center;', + 'AWSServerBlock2' : ss + 'aws3.traditional_server;', + 'AWSInternetBlock2' : ss + 'aws2.non-service_specific.internet;', + 'AWSForumsBlock3' : ss + 'aws3.forums;', + 'AWSManagementBlock2' : ss + 'aws3.management_console;', + 'AWSAmazonElasticCacheNode2' : ss + 'aws3.cache_node;', + 'AWSAmazonRedshiftDW1Cluster2' : ss + 'aws3.dense_compute_node;', + 'AWSAmazonRedshiftDW2Cluster2' : ss + 'aws3.dense_storage_node;', + 'AWSAmazonRedshiftSSDFamilyCluster2' : ss + 'aws3.dense_storage_node;', + 'AWSAmazonRoute53RouteTable2' : ss + 'aws3.route_table;', // 'AWSExampleIAMBlock2' NA -// 'AWSSubnetBlock2' NA + 'AWSSubnetBlock2' : ss + 'aws3.permissions;', //AWS Containers // 'AWSRoundedRectangleContainerBlock2' EXT //Cisco Basic - 'Cisco_cisco_androgenous_person' : 'shape=mxgraph.cisco.people.androgenous_person;' + c, - 'Cisco_cisco_atm_switch' : 'shape=mxgraph.cisco.switches.atm_switch;' + c, - 'Cisco_cisco_cloud' : 'shape=mxgraph.cisco.storage.cloud;strokeColor=#036897;fillColor=#ffffff;', - 'Cisco_cisco_fileserver' : 'shape=mxgraph.cisco.servers.fileserver;' + c, - 'Cisco_cisco_firewall' : 'shape=mxgraph.cisco.security.firewall;' + c, - 'Cisco_cisco_generic_building' : 'shape=mxgraph.cisco.buildings.generic_building;' + c, - 'Cisco_cisco_laptop' : 'shape=mxgraph.cisco.computers_and_peripherals.laptop;' + c, - 'Cisco_cisco_lock' : 'shape=mxgraph.cisco.security.lock;' + c, - 'Cisco_cisco_microwebserver' : 'shape=mxgraph.cisco.servers.microwebserver;' + c, - 'Cisco_cisco_pc' : 'shape=mxgraph.cisco.computers_and_peripherals.pc;' + c, - 'Cisco_cisco_pda' : 'shape=mxgraph.cisco.misc.pda;' + c, - 'Cisco_cisco_phone' : 'shape=mxgraph.cisco.modems_and_phones.hootphone;' + c, - 'Cisco_cisco_printer' : 'shape=mxgraph.cisco.computers_and_peripherals.printer;' + c, - 'Cisco_cisco_relational_database' : 'shape=mxgraph.cisco.storage.relational_database;' + c, - 'Cisco_cisco_router' : 'shape=mxgraph.cisco.routers.router;' + c, - 'Cisco_cisco_standing_man' : 'shape=mxgraph.cisco.people.standing_man;' + c, - 'Cisco_cisco_standing_woman' : 'shape=mxgraph.cisco.people.standing_woman;' + c, - 'Cisco_cisco_ups' : 'shape=mxgraph.cisco.misc.ups;' + c, - 'Cisco_cisco_wireless_router' : 'shape=mxgraph.cisco.routers.wireless_router;' + c, + 'Cisco_cisco_androgenous_person' : s + 'cisco.people.androgenous_person;' + c, + 'Cisco_cisco_atm_switch' : s + 'cisco.switches.atm_switch;' + c, + 'Cisco_cisco_cloud' : s + 'cisco.storage.cloud;strokeColor=#036897;fillColor=#ffffff;', + 'Cisco_cisco_fileserver' : s + 'cisco.servers.fileserver;' + c, + 'Cisco_cisco_firewall' : s + 'cisco.security.firewall;' + c, + 'Cisco_cisco_generic_building' : s + 'cisco.buildings.generic_building;' + c, + 'Cisco_cisco_laptop' : s + 'cisco.computers_and_peripherals.laptop;' + c, + 'Cisco_cisco_lock' : s + 'cisco.security.lock;' + c, + 'Cisco_cisco_microwebserver' : s + 'cisco.servers.microwebserver;' + c, + 'Cisco_cisco_pc' : s + 'cisco.computers_and_peripherals.pc;' + c, + 'Cisco_cisco_pda' : s + 'cisco.misc.pda;' + c, + 'Cisco_cisco_phone' : s + 'cisco.modems_and_phones.hootphone;' + c, + 'Cisco_cisco_printer' : s + 'cisco.computers_and_peripherals.printer;' + c, + 'Cisco_cisco_relational_database' : s + 'cisco.storage.relational_database;' + c, + 'Cisco_cisco_router' : s + 'cisco.routers.router;' + c, + 'Cisco_cisco_standing_man' : s + 'cisco.people.standing_man;' + c, + 'Cisco_cisco_standing_woman' : s + 'cisco.people.standing_woman;' + c, + 'Cisco_cisco_ups' : s + 'cisco.misc.ups;' + c, + 'Cisco_cisco_wireless_router' : s + 'cisco.routers.wireless_router;' + c, //Cisco Extended - 'Cisco_cisco_100baset_hub' : 'shape=mxgraph.cisco.hubs_and_gateways.100baset_hub;' + c, - 'Cisco_cisco_10700' : 'shape=mxgraph.cisco.routers.10700;' + c, - 'Cisco_cisco_10GE_FCoE' : 'shape=mxgraph.cisco.controllers_and_modules.10ge_fcoe;' + c, - 'Cisco_cisco_15200' : 'shape=mxgraph.cisco.misc.15200;' + c, - 'Cisco_cisco_3174__desktop_' : 'shape=mxgraph.cisco.controllers_and_modules.3174_(desktop)_cluster_controller;' + c, - 'Cisco_cisco_3200_mobile_access_router' : 'shape=mxgraph.cisco.routers.mobile_access_router;' + c, - 'Cisco_cisco_3x74__floor_' : 'shape=mxgraph.cisco.controllers_and_modules.3x74_(floor)_cluster_controller;' + c, - 'Cisco_cisco_6700_series' : 'shape=mxgraph.cisco.misc.6700_series;' + c, - 'Cisco_cisco_7500ars__7513_' : 'shape=mxgraph.cisco.misc.7500ars_(7513);' + c, + 'Cisco_cisco_100baset_hub' : s + 'cisco.hubs_and_gateways.100baset_hub;' + c, + 'Cisco_cisco_10700' : s + 'cisco.routers.10700;' + c, + 'Cisco_cisco_10GE_FCoE' : s + 'cisco.controllers_and_modules.10ge_fcoe;' + c, + 'Cisco_cisco_15200' : s + 'cisco.misc.15200;' + c, + 'Cisco_cisco_3174__desktop_' : s + 'cisco.controllers_and_modules.3174_(desktop)_cluster_controller;' + c, + 'Cisco_cisco_3200_mobile_access_router' : s + 'cisco.routers.mobile_access_router;' + c, + 'Cisco_cisco_3x74__floor_' : s + 'cisco.controllers_and_modules.3x74_(floor)_cluster_controller;' + c, + 'Cisco_cisco_6700_series' : s + 'cisco.misc.6700_series;' + c, + 'Cisco_cisco_7500ars__7513_' : s + 'cisco.misc.7500ars_(7513);' + c, // 'Cisco_cisco_access_gateway' NA - 'Cisco_cisco_accesspoint' : 'shape=mxgraph.cisco.misc.access_point;' + c, - 'Cisco_cisco_ace' : 'shape=mxgraph.cisco.misc.ace;' + c, - 'Cisco_cisco_ACS' : 'shape=mxgraph.cisco.misc.acs;' + c, - 'Cisco_cisco_adm' : 'shape=mxgraph.cisco.misc.adm;' + c, - 'Cisco_cisco_antenna' : 'shape=mxgraph.cisco.wireless.antenna;' + c, - 'Cisco_cisco_asic_processor' : 'shape=mxgraph.cisco.misc.asic_processor;' + c, - 'Cisco_cisco_ASR_1000_Series' : 'shape=mxgraph.cisco.misc.asr_1000_series;' + c, - 'Cisco_cisco_ata' : 'shape=mxgraph.cisco.misc.ata;' + c, - 'Cisco_cisco_atm_3800' : 'shape=mxgraph.cisco.misc.atm_3800;' + c, - 'Cisco_cisco_atm_fast_gigabit_etherswitch' : 'shape=mxgraph.cisco.switches.atm_fast_gigabit_etherswitch;' + c, - 'Cisco_cisco_atm_router' : 'shape=mxgraph.cisco.routers.atm_router;' + c, - 'Cisco_cisco_atm_tag_switch_router' : 'shape=mxgraph.cisco.routers.atm_tag_switch_router;' + c, - 'Cisco_cisco_avs' : 'shape=mxgraph.cisco.misc.avs;' + c, - 'Cisco_cisco_AXP' : 'shape=mxgraph.cisco.misc.axp;' + c, + 'Cisco_cisco_accesspoint' : s + 'cisco.misc.access_point;' + c, + 'Cisco_cisco_ace' : s + 'cisco.misc.ace;' + c, + 'Cisco_cisco_ACS' : s + 'cisco.misc.acs;' + c, + 'Cisco_cisco_adm' : s + 'cisco.misc.adm;' + c, + 'Cisco_cisco_antenna' : s + 'cisco.wireless.antenna;' + c, + 'Cisco_cisco_asic_processor' : s + 'cisco.misc.asic_processor;' + c, + 'Cisco_cisco_ASR_1000_Series' : s + 'cisco.misc.asr_1000_series;' + c, + 'Cisco_cisco_ata' : s + 'cisco.misc.ata;' + c, + 'Cisco_cisco_atm_3800' : s + 'cisco.misc.atm_3800;' + c, + 'Cisco_cisco_atm_fast_gigabit_etherswitch' : s + 'cisco.switches.atm_fast_gigabit_etherswitch;' + c, + 'Cisco_cisco_atm_router' : s + 'cisco.routers.atm_router;' + c, + 'Cisco_cisco_atm_tag_switch_router' : s + 'cisco.routers.atm_tag_switch_router;' + c, + 'Cisco_cisco_avs' : s + 'cisco.misc.avs;' + c, + 'Cisco_cisco_AXP' : s + 'cisco.misc.axp;' + c, // 'Cisco_cisco_bbfw_media' NA // 'Cisco_cisco_bbfw' NA - 'Cisco_cisco_bbsm' : 'shape=mxgraph.cisco.misc.bbsm;' + c, - 'Cisco_cisco_branch_office' : 'shape=mxgraph.cisco.buildings.branch_office;' + c, - 'Cisco_cisco_breakout_box' : 'shape=mxgraph.cisco.misc.breakout_box;' + c, - 'Cisco_cisco_bridge' : 'shape=mxgraph.cisco.misc.bridge;' + c, - 'Cisco_cisco_broadband_router' : 'shape=mxgraph.cisco.routers.broadcast_router;' + c, - 'Cisco_cisco_bts_10200' : 'shape=mxgraph.cisco.misc.bts_10200;' + c, - 'Cisco_cisco_cable_modem' : 'shape=mxgraph.cisco.modems_and_phones.cable_modem;' + c, - 'Cisco_cisco_callmanager' : 'shape=mxgraph.cisco.misc.call_manager;' + c, - 'Cisco_cisco_car' : 'shape=mxgraph.cisco.misc.car;' + c, - 'Cisco_cisco_carrier_routing_system' : 'shape=mxgraph.cisco.misc.carrier_routing_system;' + c, - 'Cisco_cisco_cddi_fddi' : 'shape=mxgraph.cisco.misc.cddi_fddi;' + c, - 'Cisco_cisco_cdm' : 'shape=mxgraph.cisco.misc.cdm;' + c, - 'Cisco_cisco_cellular_phone' : 'shape=mxgraph.cisco.modems_and_phones.cell_phone;' + c, - 'Cisco_cisco_centri_firewall' : 'shape=mxgraph.cisco.security.centri_firewall;' + c, - 'Cisco_cisco_cisco_1000' : 'shape=mxgraph.cisco.misc.cisco_1000;' + c, - 'Cisco_cisco_cisco_asa_5500' : 'shape=mxgraph.cisco.misc.asa_5500;' + c, - 'Cisco_cisco_cisco_ca' : 'shape=mxgraph.cisco.misc.cisco_ca;' + c, - 'Cisco_cisco_cisco_file_engine' : 'shape=mxgraph.cisco.storage.cisco_file_engine;' + c, - 'Cisco_cisco_cisco_hub' : 'shape=mxgraph.cisco.hubs_and_gateways.cisco_hub;' + c, - 'Cisco_cisco_ciscosecurity' : 'shape=mxgraph.cisco.security.cisco_security;' + c, + 'Cisco_cisco_bbsm' : s + 'cisco.misc.bbsm;' + c, + 'Cisco_cisco_branch_office' : s + 'cisco.buildings.branch_office;' + c, + 'Cisco_cisco_breakout_box' : s + 'cisco.misc.breakout_box;' + c, + 'Cisco_cisco_bridge' : s + 'cisco.misc.bridge;' + c, + 'Cisco_cisco_broadband_router' : s + 'cisco.routers.broadcast_router;' + c, + 'Cisco_cisco_bts_10200' : s + 'cisco.misc.bts_10200;' + c, + 'Cisco_cisco_cable_modem' : s + 'cisco.modems_and_phones.cable_modem;' + c, + 'Cisco_cisco_callmanager' : s + 'cisco.misc.call_manager;' + c, + 'Cisco_cisco_car' : s + 'cisco.misc.car;' + c, + 'Cisco_cisco_carrier_routing_system' : s + 'cisco.misc.carrier_routing_system;' + c, + 'Cisco_cisco_cddi_fddi' : s + 'cisco.misc.cddi_fddi;' + c, + 'Cisco_cisco_cdm' : s + 'cisco.misc.cdm;' + c, + 'Cisco_cisco_cellular_phone' : s + 'cisco.modems_and_phones.cell_phone;' + c, + 'Cisco_cisco_centri_firewall' : s + 'cisco.security.centri_firewall;' + c, + 'Cisco_cisco_cisco_1000' : s + 'cisco.misc.cisco_1000;' + c, + 'Cisco_cisco_cisco_asa_5500' : s + 'cisco.misc.asa_5500;' + c, + 'Cisco_cisco_cisco_ca' : s + 'cisco.misc.cisco_ca;' + c, + 'Cisco_cisco_cisco_file_engine' : s + 'cisco.storage.cisco_file_engine;' + c, + 'Cisco_cisco_cisco_hub' : s + 'cisco.hubs_and_gateways.cisco_hub;' + c, + 'Cisco_cisco_ciscosecurity' : s + 'cisco.security.cisco_security;' + c, // 'Cisco_cisco_Cisco_telepresence_manager' NA - 'Cisco_cisco_cisco_unified_presence_server' : 'shape=mxgraph.cisco.servers.cisco_unified_presence_server;' + c, - 'Cisco_cisco_cisco_unityexpress' : 'shape=mxgraph.cisco.misc.cisco_unity_express;' + c, - 'Cisco_cisco_ciscoworks' : 'shape=mxgraph.cisco.misc.cisco_works;' + c, - 'Cisco_cisco_class_4_5_switch' : 'shape=mxgraph.cisco.switches.class_4_5_switch;' + c, - 'Cisco_cisco_communications_server' : 'shape=mxgraph.cisco.servers.communications_server;' + c, - 'Cisco_cisco_contact_center' : 'shape=mxgraph.cisco.misc.contact_center;' + c, - 'Cisco_cisco_content_engine__cache_director_' : 'shape=mxgraph.cisco.directors.content_engine_(cache_director);' + c, - 'Cisco_cisco_content_service_router' : 'shape=mxgraph.cisco.routers.content_service_router;' + c, - 'Cisco_cisco_content_service_switch_1100' : 'shape=mxgraph.cisco.switches.content_service_switch_1100;' + c, - 'Cisco_cisco_content_switch_module' : 'shape=mxgraph.cisco.controllers_and_modules.content_switch_module;' + c, - 'Cisco_cisco_content_switch' : 'shape=mxgraph.cisco.switches.content_switch;' + c, - 'Cisco_cisco_content_transformation_engine__cte_' : 'shape=mxgraph.cisco.misc.content_transformation_engine_(cte);' + c, - 'Cisco_cisco_cs_mars' : 'shape=mxgraph.cisco.misc.cs-mars;' + c, - 'Cisco_cisco_csm_s' : 'shape=mxgraph.cisco.misc.csm-s;' + c, - 'Cisco_cisco_csu_dsu' : 'shape=mxgraph.cisco.misc.csu_dsu;' + c, - 'Cisco_cisco_CUBE' : 'shape=mxgraph.cisco.misc.cube;' + c, - 'Cisco_cisco_detector' : 'shape=mxgraph.cisco.misc.detector;' + c, - 'Cisco_cisco_director_class_fibre_channel_director' : 'shape=mxgraph.cisco.directors.director-class_fibre_channel_director;' + c, - 'Cisco_cisco_directory_server' : 'shape=mxgraph.cisco.servers.directory_server;' + c, - 'Cisco_cisco_diskette' : 'shape=mxgraph.cisco.storage.diskette;' + c, - 'Cisco_cisco_distributed_director' : 'shape=mxgraph.cisco.directors.distributed_director;' + c, - 'Cisco_cisco_dot_dot' : 'shape=mxgraph.cisco.misc.dot-dot;' + c, - 'Cisco_cisco_dpt' : 'shape=mxgraph.cisco.misc.dpt;' + c, - 'Cisco_cisco_dslam' : 'shape=mxgraph.cisco.misc.dslam;' + c, - 'Cisco_cisco_dual_mode_ap' : 'shape=mxgraph.cisco.misc.dual_mode;' + c, - 'Cisco_cisco_dwdm_filter' : 'shape=mxgraph.cisco.misc.dwdm_filter;' + c, - 'Cisco_cisco_end_office' : 'shape=mxgraph.cisco.buildings.end_office;' + c, - 'Cisco_cisco_fax' : 'shape=mxgraph.cisco.modems_and_phones.fax;' + c, - 'Cisco_cisco_fc_storage' : 'shape=mxgraph.cisco.storage.fc_storage;' + c, - 'Cisco_cisco_fddi_ring' : 'shape=mxgraph.cisco.misc.fddi_ring;strokeColor=#036897;', - 'Cisco_cisco_fibre_channel_disk_subsystem' : 'shape=mxgraph.cisco.storage.fibre_channel_disk_subsystem;' + c, - 'Cisco_cisco_fibre_channel_fabric_switch' : 'shape=mxgraph.cisco.switches.fibre_channel_fabric_switch;' + c, - 'Cisco_cisco_file_cabinet' : 'shape=mxgraph.cisco.storage.file_cabinet;' + c, - 'Cisco_cisco_file_server' : 'shape=mxgraph.cisco.servers.file_server;' + c, - 'Cisco_cisco_firewall_service_module__fwsm_' : 'shape=mxgraph.cisco.controllers_and_modules.firewall_service_module_(fwsm);' + c, - 'Cisco_cisco_front_end_processor' : 'shape=mxgraph.cisco.misc.front_end_processor;' + c, - 'Cisco_cisco_gatekeeper' : 'shape=mxgraph.cisco.security.gatekeeper;strokeColor=#036897;', - 'Cisco_cisco_general_applicance' : 'shape=mxgraph.cisco.misc.general_appliance;' + c, - 'Cisco_cisco_generic_gateway' : 'shape=mxgraph.cisco.hubs_and_gateways.generic_gateway;' + c, - 'Cisco_cisco_generic_processor' : 'shape=mxgraph.cisco.misc.generic_processor;' + c, - 'Cisco_cisco_generic_softswitch' : 'shape=mxgraph.cisco.switches.generic_softswitch;' + c, - 'Cisco_cisco_gigabit_switch_atm_tag_router' : 'shape=mxgraph.cisco.routers.gigabit_switch_atm_tag_router;' + c, - 'Cisco_cisco_government_building' : 'shape=mxgraph.cisco.buildings.government_building;' + c, - 'Cisco_cisco_Ground_terminal' : 'shape=mxgraph.cisco.wireless.ground_terminal;' + c, - 'Cisco_cisco_guard' : 'shape=mxgraph.cisco.security.guard;' + c, - 'Cisco_cisco_handheld' : 'shape=mxgraph.cisco.misc.handheld;' + c, - 'Cisco_cisco_hootphone' : 'shape=mxgraph.cisco.modems_and_phones.hootphone;' + c, - 'Cisco_cisco_host' : 'shape=mxgraph.cisco.servers.host;' + c, - 'Cisco_cisco_hp_mini' : 'shape=mxgraph.cisco.misc.hp_mini;' + c, - 'Cisco_cisco_h' : 'shape=mxgraph.cisco.misc.h_323;' + c, - 'Cisco_cisco_hub' : 'shape=mxgraph.cisco.hubs_and_gateways.hub;' + c, - 'Cisco_cisco_iad_router' : 'shape=mxgraph.cisco.routers.iad_router;' + c, - 'Cisco_cisco_ibm_mainframe' : 'shape=mxgraph.cisco.computers_and_peripherals.ibm_mainframe;' + c, - 'Cisco_cisco_ibm_mini_as400' : 'shape=mxgraph.cisco.computers_and_peripherals.ibm_mini_as400;' + c, - 'Cisco_cisco_ibm_tower' : 'shape=mxgraph.cisco.computers_and_peripherals.ibm_tower;' + c, - 'Cisco_cisco_icm' : 'shape=mxgraph.cisco.misc.icm;' + c, - 'Cisco_cisco_ics' : 'shape=mxgraph.cisco.misc.ics;' + c, - 'Cisco_cisco_intelliswitch_stack' : 'shape=mxgraph.cisco.switches.intelliswitch_stack;' + c, - 'Cisco_cisco_ios_firewall' : 'shape=mxgraph.cisco.security.ios_firewall;' + c, - 'Cisco_cisco_ios_slb' : 'shape=mxgraph.cisco.misc.ios_slb;' + c, - 'Cisco_cisco_ip_communicator' : 'shape=mxgraph.cisco.misc.ip_communicator;' + c, - 'Cisco_cisco_ip_dsl' : 'shape=mxgraph.cisco.misc.ip_dsl;' + c, - 'Cisco_cisco_ip_phone' : 'shape=mxgraph.cisco.modems_and_phones.ip_phone;' + c, - 'Cisco_cisco_ip' : 'shape=mxgraph.cisco.misc.ip;' + c, - 'Cisco_cisco_iptc' : 'shape=mxgraph.cisco.misc.iptc;' + c, - 'Cisco_cisco_ip_telephony_router' : 'shape=mxgraph.cisco.routers.ip_telephony_router;' + c, - 'Cisco_cisco_iptv_content_manager' : 'shape=mxgraph.cisco.misc.iptv_content_manager;' + c, - 'Cisco_cisco_iptv_server' : 'shape=mxgraph.cisco.servers.iptv_server;' + c, - 'Cisco_cisco_iscsi_router' : 'shape=mxgraph.cisco.routers.isci_router;' + c, - 'Cisco_cisco_isdn_switch' : 'shape=mxgraph.cisco.switches.isdn_switch;' + c, - 'Cisco_cisco_itp' : 'shape=mxgraph.cisco.misc.itp;' + c, - 'Cisco_cisco_jbod' : 'shape=mxgraph.cisco.misc.jbod;' + c, - 'Cisco_cisco_key' : 'shape=mxgraph.cisco.misc.key;' + c, - 'Cisco_cisco_keys' : 'shape=mxgraph.cisco.misc.keys;' + c, - 'Cisco_cisco_lan_to_lan' : 'shape=mxgraph.cisco.misc.lan_to_lan;' + c, - 'Cisco_cisco_layer_2_remote_switch' : 'shape=mxgraph.cisco.switches.layer_2_remote_switch;' + c, - 'Cisco_cisco_layer_3_switch' : 'shape=mxgraph.cisco.switches.layer_3_switch;' + c, - 'Cisco_cisco_lightweight_ap' : 'shape=mxgraph.cisco.misc.lightweight_ap;' + c, - 'Cisco_cisco_localdirector' : 'shape=mxgraph.cisco.directors.localdirector;' + c, - 'Cisco_cisco_longreach_cpe' : 'shape=mxgraph.cisco.misc.longreach_cpe;' + c, - 'Cisco_cisco_macintosh' : 'shape=mxgraph.cisco.computers_and_peripherals.macintosh;' + c, - 'Cisco_cisco_mac_woman' : 'shape=mxgraph.cisco.people.mac_woman;' + c, - 'Cisco_cisco_man_woman' : 'shape=mxgraph.cisco.people.man_woman;' + c, - 'Cisco_cisco_mas_gateway' : 'shape=mxgraph.cisco.hubs_and_gateways.mas_gateway;' + c, - 'Cisco_cisco_mau' : 'shape=mxgraph.cisco.misc.mau;' + c, - 'Cisco_cisco_mcu' : 'shape=mxgraph.cisco.misc.mcu;' + c, - 'Cisco_cisco_mdu' : 'shape=mxgraph.cisco.buildings.mdu;' + c, - 'Cisco_cisco_me_1100' : 'shape=mxgraph.cisco.misc.me1100;' + c, - 'Cisco_cisco_Mediator' : 'shape=mxgraph.cisco.misc.mediator;' + c, - 'Cisco_cisco_meetingplace' : 'shape=mxgraph.cisco.misc.meetingplace;' + c, - 'Cisco_cisco_mesh_ap' : 'shape=mxgraph.cisco.misc.mesh_ap;' + c, - 'Cisco_cisco_metro_1500' : 'shape=mxgraph.cisco.misc.metro_1500;' + c, - 'Cisco_cisco_mgx_8000_multiservice_switch' : 'shape=mxgraph.cisco.switches.mgx_8000_multiservice_switch;' + c, - 'Cisco_cisco_microphone' : 'shape=mxgraph.cisco.computers_and_peripherals.microphone;' + c, - 'Cisco_cisco_mini_vax' : 'shape=mxgraph.cisco.misc.mini_vax;' + c, - 'Cisco_cisco_mobile_access_ip_phone' : 'shape=mxgraph.cisco.modems_and_phones.mobile_access_ip_phone;' + c, - 'Cisco_cisco_mobile_access_router' : 'shape=mxgraph.cisco.routers.mobile_access_router;' + c, - 'Cisco_cisco_modem' : 'shape=mxgraph.cisco.modems_and_phones.modem;' + c, - 'Cisco_cisco_moh_server' : 'shape=mxgraph.cisco.servers.moh_server;' + c, - 'Cisco_cisco_MSE' : 'shape=mxgraph.cisco.misc.mse;' + c, - 'Cisco_cisco_mulitswitch_device' : 'shape=mxgraph.cisco.switches.multiswitch_device;' + c, - 'Cisco_cisco_multi_fabric_server_switch' : 'shape=mxgraph.cisco.switches.multi-fabric_server_switch;' + c, - 'Cisco_cisco_multilayer_remote_switch' : 'shape=mxgraph.cisco.switches.multilayer_remote_switch;' + c, - 'Cisco_cisco_mux' : 'shape=mxgraph.cisco.misc.mux;' + c, - 'Cisco_cisco_MXE' : 'shape=mxgraph.cisco.misc.mxe;' + c, - 'Cisco_cisco_nac_appliance' : 'shape=mxgraph.cisco.misc.nac_appliance;' + c, - 'Cisco_cisco_NCE' : 'shape=mxgraph.cisco.misc.nce;' + c, - 'Cisco_cisco_NCE_router' : 'shape=mxgraph.cisco.routers.nce_router;' + c, - 'Cisco_cisco_netflow_router' : 'shape=mxgraph.cisco.routers.netflow_router;' + c, - 'Cisco_cisco_netranger' : 'shape=mxgraph.cisco.misc.netranger;' + c, - 'Cisco_cisco_netsonar' : 'shape=mxgraph.cisco.misc.netsonar;' + c, - 'Cisco_cisco_network_management' : 'shape=mxgraph.cisco.misc.network_management;' + c, - 'Cisco_cisco_Nexus_1000' : 'shape=mxgraph.cisco.misc.nexus_1000;' + c, - 'Cisco_cisco_Nexus_2000' : 'shape=mxgraph.cisco.misc.nexus_2000_fabric_extender;' + c, - 'Cisco_cisco_Nexus_5000' : 'shape=mxgraph.cisco.misc.nexus_5000;' + c, - 'Cisco_cisco_Nexus_7000' : 'shape=mxgraph.cisco.misc.nexus_7000;' + c, - 'Cisco_cisco_octel' : 'shape=mxgraph.cisco.misc.octel;' + c, - 'Cisco_cisco_ons15500' : 'shape=mxgraph.cisco.misc.ons15500;' + c, - 'Cisco_cisco_optical_amplifier' : 'shape=mxgraph.cisco.misc.optical_amplifier;' + c, - 'Cisco_cisco_optical_services_router' : 'shape=mxgraph.cisco.routers.optical_services_router;' + c, - 'Cisco_cisco_optical_transport' : 'shape=mxgraph.cisco.misc.optical_transport;' + c, - 'Cisco_cisco_pad' : 'shape=mxgraph.cisco.misc.pad_2;' + c, - 'Cisco_cisco_pad_x' : 'shape=mxgraph.cisco.misc.pad_1;' + c, - 'Cisco_cisco_page_icon' : 'shape=mxgraph.cisco.misc.page_icon;strokeColor=#036897;', - 'Cisco_cisco_pbx' : 'shape=mxgraph.cisco.misc.pbx;' + c, - 'Cisco_cisco_pbx_switch' : 'shape=mxgraph.cisco.switches.pbx_switch;' + c, - 'Cisco_cisco_pc_adapter_card' : 'shape=mxgraph.cisco.computers_and_peripherals.pc_adapter_card;' + c, - 'Cisco_cisco_pc_man' : 'shape=mxgraph.cisco.people.pc_man;' + c, - 'Cisco_cisco_pc_routercard' : 'shape=mxgraph.cisco.computers_and_peripherals.pc_routercard;' + c, - 'Cisco_cisco_pc_software' : 'shape=mxgraph.cisco.misc.pc_software;' + c, - 'Cisco_cisco_pc_video' : 'shape=mxgraph.cisco.misc.pc_video;' + c, - 'Cisco_cisco_phone_fax' : 'shape=mxgraph.cisco.modems_and_phones.phone-fax;' + c, - 'Cisco_cisco_pix_firewall' : 'shape=mxgraph.cisco.security.pix_firewall;' + c, - 'Cisco_cisco_pmc' : 'shape=mxgraph.cisco.misc.pmc;' + c, - 'Cisco_cisco_programmable_switch' : 'shape=mxgraph.cisco.switches.programmable_switch;' + c, - 'Cisco_cisco_protocol_translator' : 'shape=mxgraph.cisco.misc.protocol_translator;' + c, - 'Cisco_cisco_pxf' : 'shape=mxgraph.cisco.misc.pxf;' + c, - 'Cisco_cisco_radio_tower' : 'shape=mxgraph.cisco.wireless.radio_tower;strokeColor=#036897;', - 'Cisco_cisco_ratemux' : 'shape=mxgraph.cisco.misc.ratemux;' + c, - 'Cisco_cisco_repeater' : 'shape=mxgraph.cisco.misc.repeater;' + c, - 'Cisco_cisco_RF_modem' : 'shape=mxgraph.cisco.modems_and_phones.rf_modem;' + c, - 'Cisco_cisco_router_firewall' : 'shape=mxgraph.cisco.security.router_firewall;' + c, - 'Cisco_cisco_routerin_building' : 'shape=mxgraph.cisco.routers.router_in_building;' + c, - 'Cisco_cisco_router_with_silicon_switch' : 'shape=mxgraph.cisco.routers.router_with_silicon_switch;' + c, - 'Cisco_cisco_route_switch_processor' : 'shape=mxgraph.cisco.misc.route_switch_processor;' + c, - 'Cisco_cisco_rpsrps' : 'shape=mxgraph.cisco.misc.rpsrps;' + c, - 'Cisco_cisco_running_man' : 'shape=mxgraph.cisco.people.running_man;' + c, - 'Cisco_cisco_sattelite_dish' : 'shape=mxgraph.cisco.wireless.satellite_dish;' + c, - 'Cisco_cisco_sattelite' : 'shape=mxgraph.cisco.wireless.satellite;' + c, - 'Cisco_cisco_scanner' : 'shape=mxgraph.cisco.computers_and_peripherals.scanner;' + c, - 'Cisco_cisco_server_switch' : 'shape=mxgraph.cisco.switches.server_switch;' + c, - 'Cisco_cisco_server_with_router' : 'shape=mxgraph.cisco.servers.server_with_router;' + c, - 'Cisco_cisco_service_control' : 'shape=mxgraph.cisco.misc.service_control;' + c, - 'Cisco_cisco_Service_Module' : 'shape=mxgraph.cisco.controllers_and_modules.service_module;' + c, - 'Cisco_cisco_Service_router' : 'shape=mxgraph.cisco.routers.service_router;' + c, - 'Cisco_cisco_Services' : 'shape=mxgraph.cisco.misc.services;' + c, - 'Cisco_cisco_Set_top_box' : 'shape=mxgraph.cisco.misc.set_top_box;' + c, - 'Cisco_cisco_simulitlayer_switch' : 'shape=mxgraph.cisco.switches.simultilayer_switch;' + c, - 'Cisco_cisco_sip_proxy_werver' : 'shape=mxgraph.cisco.servers.sip_proxy_server;' + c, - 'Cisco_cisco_sitting_woman' : 'shape=mxgraph.cisco.people.sitting_woman;' + c, - 'Cisco_cisco_small_business' : 'shape=mxgraph.cisco.buildings.small_business;' + c, - 'Cisco_cisco_small_hub' : 'shape=mxgraph.cisco.hubs_and_gateways.small_hub;' + c, - 'Cisco_cisco_softphone' : 'shape=mxgraph.cisco.modems_and_phones.softphone;' + c, - 'Cisco_cisco_softswitch_pgw_mgc' : 'shape=mxgraph.cisco.switches.softswitch_pgw_mgc;' + c, - 'Cisco_cisco_software_based_server' : 'shape=mxgraph.cisco.servers.software_based_server;' + c, + 'Cisco_cisco_cisco_unified_presence_server' : s + 'cisco.servers.cisco_unified_presence_server;' + c, + 'Cisco_cisco_cisco_unityexpress' : s + 'cisco.misc.cisco_unity_express;' + c, + 'Cisco_cisco_ciscoworks' : s + 'cisco.misc.cisco_works;' + c, + 'Cisco_cisco_class_4_5_switch' : s + 'cisco.switches.class_4_5_switch;' + c, + 'Cisco_cisco_communications_server' : s + 'cisco.servers.communications_server;' + c, + 'Cisco_cisco_contact_center' : s + 'cisco.misc.contact_center;' + c, + 'Cisco_cisco_content_engine__cache_director_' : s + 'cisco.directors.content_engine_(cache_director);' + c, + 'Cisco_cisco_content_service_router' : s + 'cisco.routers.content_service_router;' + c, + 'Cisco_cisco_content_service_switch_1100' : s + 'cisco.switches.content_service_switch_1100;' + c, + 'Cisco_cisco_content_switch_module' : s + 'cisco.controllers_and_modules.content_switch_module;' + c, + 'Cisco_cisco_content_switch' : s + 'cisco.switches.content_switch;' + c, + 'Cisco_cisco_content_transformation_engine__cte_' : s + 'cisco.misc.content_transformation_engine_(cte);' + c, + 'Cisco_cisco_cs_mars' : s + 'cisco.misc.cs-mars;' + c, + 'Cisco_cisco_csm_s' : s + 'cisco.misc.csm-s;' + c, + 'Cisco_cisco_csu_dsu' : s + 'cisco.misc.csu_dsu;' + c, + 'Cisco_cisco_CUBE' : s + 'cisco.misc.cube;' + c, + 'Cisco_cisco_detector' : s + 'cisco.misc.detector;' + c, + 'Cisco_cisco_director_class_fibre_channel_director' : s + 'cisco.directors.director-class_fibre_channel_director;' + c, + 'Cisco_cisco_directory_server' : s + 'cisco.servers.directory_server;' + c, + 'Cisco_cisco_diskette' : s + 'cisco.storage.diskette;' + c, + 'Cisco_cisco_distributed_director' : s + 'cisco.directors.distributed_director;' + c, + 'Cisco_cisco_dot_dot' : s + 'cisco.misc.dot-dot;' + c, + 'Cisco_cisco_dpt' : s + 'cisco.misc.dpt;' + c, + 'Cisco_cisco_dslam' : s + 'cisco.misc.dslam;' + c, + 'Cisco_cisco_dual_mode_ap' : s + 'cisco.misc.dual_mode;' + c, + 'Cisco_cisco_dwdm_filter' : s + 'cisco.misc.dwdm_filter;' + c, + 'Cisco_cisco_end_office' : s + 'cisco.buildings.end_office;' + c, + 'Cisco_cisco_fax' : s + 'cisco.modems_and_phones.fax;' + c, + 'Cisco_cisco_fc_storage' : s + 'cisco.storage.fc_storage;' + c, + 'Cisco_cisco_fddi_ring' : s + 'cisco.misc.fddi_ring;strokeColor=#036897;', + 'Cisco_cisco_fibre_channel_disk_subsystem' : s + 'cisco.storage.fibre_channel_disk_subsystem;' + c, + 'Cisco_cisco_fibre_channel_fabric_switch' : s + 'cisco.switches.fibre_channel_fabric_switch;' + c, + 'Cisco_cisco_file_cabinet' : s + 'cisco.storage.file_cabinet;' + c, + 'Cisco_cisco_file_server' : s + 'cisco.servers.file_server;' + c, + 'Cisco_cisco_firewall_service_module__fwsm_' : s + 'cisco.controllers_and_modules.firewall_service_module_(fwsm);' + c, + 'Cisco_cisco_front_end_processor' : s + 'cisco.misc.front_end_processor;' + c, + 'Cisco_cisco_gatekeeper' : s + 'cisco.security.gatekeeper;strokeColor=#036897;', + 'Cisco_cisco_general_applicance' : s + 'cisco.misc.general_appliance;' + c, + 'Cisco_cisco_generic_gateway' : s + 'cisco.hubs_and_gateways.generic_gateway;' + c, + 'Cisco_cisco_generic_processor' : s + 'cisco.misc.generic_processor;' + c, + 'Cisco_cisco_generic_softswitch' : s + 'cisco.switches.generic_softswitch;' + c, + 'Cisco_cisco_gigabit_switch_atm_tag_router' : s + 'cisco.routers.gigabit_switch_atm_tag_router;' + c, + 'Cisco_cisco_government_building' : s + 'cisco.buildings.government_building;' + c, + 'Cisco_cisco_Ground_terminal' : s + 'cisco.wireless.ground_terminal;' + c, + 'Cisco_cisco_guard' : s + 'cisco.security.guard;' + c, + 'Cisco_cisco_handheld' : s + 'cisco.misc.handheld;' + c, + 'Cisco_cisco_hootphone' : s + 'cisco.modems_and_phones.hootphone;' + c, + 'Cisco_cisco_host' : s + 'cisco.servers.host;' + c, + 'Cisco_cisco_hp_mini' : s + 'cisco.misc.hp_mini;' + c, + 'Cisco_cisco_h' : s + 'cisco.misc.h_323;' + c, + 'Cisco_cisco_hub' : s + 'cisco.hubs_and_gateways.hub;' + c, + 'Cisco_cisco_iad_router' : s + 'cisco.routers.iad_router;' + c, + 'Cisco_cisco_ibm_mainframe' : s + 'cisco.computers_and_peripherals.ibm_mainframe;' + c, + 'Cisco_cisco_ibm_mini_as400' : s + 'cisco.computers_and_peripherals.ibm_mini_as400;' + c, + 'Cisco_cisco_ibm_tower' : s + 'cisco.computers_and_peripherals.ibm_tower;' + c, + 'Cisco_cisco_icm' : s + 'cisco.misc.icm;' + c, + 'Cisco_cisco_ics' : s + 'cisco.misc.ics;' + c, + 'Cisco_cisco_intelliswitch_stack' : s + 'cisco.switches.intelliswitch_stack;' + c, + 'Cisco_cisco_ios_firewall' : s + 'cisco.security.ios_firewall;' + c, + 'Cisco_cisco_ios_slb' : s + 'cisco.misc.ios_slb;' + c, + 'Cisco_cisco_ip_communicator' : s + 'cisco.misc.ip_communicator;' + c, + 'Cisco_cisco_ip_dsl' : s + 'cisco.misc.ip_dsl;' + c, + 'Cisco_cisco_ip_phone' : s + 'cisco.modems_and_phones.ip_phone;' + c, + 'Cisco_cisco_ip' : s + 'cisco.misc.ip;' + c, + 'Cisco_cisco_iptc' : s + 'cisco.misc.iptc;' + c, + 'Cisco_cisco_ip_telephony_router' : s + 'cisco.routers.ip_telephony_router;' + c, + 'Cisco_cisco_iptv_content_manager' : s + 'cisco.misc.iptv_content_manager;' + c, + 'Cisco_cisco_iptv_server' : s + 'cisco.servers.iptv_server;' + c, + 'Cisco_cisco_iscsi_router' : s + 'cisco.routers.isci_router;' + c, + 'Cisco_cisco_isdn_switch' : s + 'cisco.switches.isdn_switch;' + c, + 'Cisco_cisco_itp' : s + 'cisco.misc.itp;' + c, + 'Cisco_cisco_jbod' : s + 'cisco.misc.jbod;' + c, + 'Cisco_cisco_key' : s + 'cisco.misc.key;' + c, + 'Cisco_cisco_keys' : s + 'cisco.misc.keys;' + c, + 'Cisco_cisco_lan_to_lan' : s + 'cisco.misc.lan_to_lan;' + c, + 'Cisco_cisco_layer_2_remote_switch' : s + 'cisco.switches.layer_2_remote_switch;' + c, + 'Cisco_cisco_layer_3_switch' : s + 'cisco.switches.layer_3_switch;' + c, + 'Cisco_cisco_lightweight_ap' : s + 'cisco.misc.lightweight_ap;' + c, + 'Cisco_cisco_localdirector' : s + 'cisco.directors.localdirector;' + c, + 'Cisco_cisco_longreach_cpe' : s + 'cisco.misc.longreach_cpe;' + c, + 'Cisco_cisco_macintosh' : s + 'cisco.computers_and_peripherals.macintosh;' + c, + 'Cisco_cisco_mac_woman' : s + 'cisco.people.mac_woman;' + c, + 'Cisco_cisco_man_woman' : s + 'cisco.people.man_woman;' + c, + 'Cisco_cisco_mas_gateway' : s + 'cisco.hubs_and_gateways.mas_gateway;' + c, + 'Cisco_cisco_mau' : s + 'cisco.misc.mau;' + c, + 'Cisco_cisco_mcu' : s + 'cisco.misc.mcu;' + c, + 'Cisco_cisco_mdu' : s + 'cisco.buildings.mdu;' + c, + 'Cisco_cisco_me_1100' : s + 'cisco.misc.me1100;' + c, + 'Cisco_cisco_Mediator' : s + 'cisco.misc.mediator;' + c, + 'Cisco_cisco_meetingplace' : s + 'cisco.misc.meetingplace;' + c, + 'Cisco_cisco_mesh_ap' : s + 'cisco.misc.mesh_ap;' + c, + 'Cisco_cisco_metro_1500' : s + 'cisco.misc.metro_1500;' + c, + 'Cisco_cisco_mgx_8000_multiservice_switch' : s + 'cisco.switches.mgx_8000_multiservice_switch;' + c, + 'Cisco_cisco_microphone' : s + 'cisco.computers_and_peripherals.microphone;' + c, + 'Cisco_cisco_mini_vax' : s + 'cisco.misc.mini_vax;' + c, + 'Cisco_cisco_mobile_access_ip_phone' : s + 'cisco.modems_and_phones.mobile_access_ip_phone;' + c, + 'Cisco_cisco_mobile_access_router' : s + 'cisco.routers.mobile_access_router;' + c, + 'Cisco_cisco_modem' : s + 'cisco.modems_and_phones.modem;' + c, + 'Cisco_cisco_moh_server' : s + 'cisco.servers.moh_server;' + c, + 'Cisco_cisco_MSE' : s + 'cisco.misc.mse;' + c, + 'Cisco_cisco_mulitswitch_device' : s + 'cisco.switches.multiswitch_device;' + c, + 'Cisco_cisco_multi_fabric_server_switch' : s + 'cisco.switches.multi-fabric_server_switch;' + c, + 'Cisco_cisco_multilayer_remote_switch' : s + 'cisco.switches.multilayer_remote_switch;' + c, + 'Cisco_cisco_mux' : s + 'cisco.misc.mux;' + c, + 'Cisco_cisco_MXE' : s + 'cisco.misc.mxe;' + c, + 'Cisco_cisco_nac_appliance' : s + 'cisco.misc.nac_appliance;' + c, + 'Cisco_cisco_NCE' : s + 'cisco.misc.nce;' + c, + 'Cisco_cisco_NCE_router' : s + 'cisco.routers.nce_router;' + c, + 'Cisco_cisco_netflow_router' : s + 'cisco.routers.netflow_router;' + c, + 'Cisco_cisco_netranger' : s + 'cisco.misc.netranger;' + c, + 'Cisco_cisco_netsonar' : s + 'cisco.misc.netsonar;' + c, + 'Cisco_cisco_network_management' : s + 'cisco.misc.network_management;' + c, + 'Cisco_cisco_Nexus_1000' : s + 'cisco.misc.nexus_1000;' + c, + 'Cisco_cisco_Nexus_2000' : s + 'cisco.misc.nexus_2000_fabric_extender;' + c, + 'Cisco_cisco_Nexus_5000' : s + 'cisco.misc.nexus_5000;' + c, + 'Cisco_cisco_Nexus_7000' : s + 'cisco.misc.nexus_7000;' + c, + 'Cisco_cisco_octel' : s + 'cisco.misc.octel;' + c, + 'Cisco_cisco_ons15500' : s + 'cisco.misc.ons15500;' + c, + 'Cisco_cisco_optical_amplifier' : s + 'cisco.misc.optical_amplifier;' + c, + 'Cisco_cisco_optical_services_router' : s + 'cisco.routers.optical_services_router;' + c, + 'Cisco_cisco_optical_transport' : s + 'cisco.misc.optical_transport;' + c, + 'Cisco_cisco_pad' : s + 'cisco.misc.pad_2;' + c, + 'Cisco_cisco_pad_x' : s + 'cisco.misc.pad_1;' + c, + 'Cisco_cisco_page_icon' : s + 'cisco.misc.page_icon;strokeColor=#036897;', + 'Cisco_cisco_pbx' : s + 'cisco.misc.pbx;' + c, + 'Cisco_cisco_pbx_switch' : s + 'cisco.switches.pbx_switch;' + c, + 'Cisco_cisco_pc_adapter_card' : s + 'cisco.computers_and_peripherals.pc_adapter_card;' + c, + 'Cisco_cisco_pc_man' : s + 'cisco.people.pc_man;' + c, + 'Cisco_cisco_pc_routercard' : s + 'cisco.computers_and_peripherals.pc_routercard;' + c, + 'Cisco_cisco_pc_software' : s + 'cisco.misc.pc_software;' + c, + 'Cisco_cisco_pc_video' : s + 'cisco.misc.pc_video;' + c, + 'Cisco_cisco_phone_fax' : s + 'cisco.modems_and_phones.phone-fax;' + c, + 'Cisco_cisco_pix_firewall' : s + 'cisco.security.pix_firewall;' + c, + 'Cisco_cisco_pmc' : s + 'cisco.misc.pmc;' + c, + 'Cisco_cisco_programmable_switch' : s + 'cisco.switches.programmable_switch;' + c, + 'Cisco_cisco_protocol_translator' : s + 'cisco.misc.protocol_translator;' + c, + 'Cisco_cisco_pxf' : s + 'cisco.misc.pxf;' + c, + 'Cisco_cisco_radio_tower' : s + 'cisco.wireless.radio_tower;strokeColor=#036897;', + 'Cisco_cisco_ratemux' : s + 'cisco.misc.ratemux;' + c, + 'Cisco_cisco_repeater' : s + 'cisco.misc.repeater;' + c, + 'Cisco_cisco_RF_modem' : s + 'cisco.modems_and_phones.rf_modem;' + c, + 'Cisco_cisco_router_firewall' : s + 'cisco.security.router_firewall;' + c, + 'Cisco_cisco_routerin_building' : s + 'cisco.routers.router_in_building;' + c, + 'Cisco_cisco_router_with_silicon_switch' : s + 'cisco.routers.router_with_silicon_switch;' + c, + 'Cisco_cisco_route_switch_processor' : s + 'cisco.misc.route_switch_processor;' + c, + 'Cisco_cisco_rpsrps' : s + 'cisco.misc.rpsrps;' + c, + 'Cisco_cisco_running_man' : s + 'cisco.people.running_man;' + c, + 'Cisco_cisco_sattelite_dish' : s + 'cisco.wireless.satellite_dish;' + c, + 'Cisco_cisco_sattelite' : s + 'cisco.wireless.satellite;' + c, + 'Cisco_cisco_scanner' : s + 'cisco.computers_and_peripherals.scanner;' + c, + 'Cisco_cisco_server_switch' : s + 'cisco.switches.server_switch;' + c, + 'Cisco_cisco_server_with_router' : s + 'cisco.servers.server_with_router;' + c, + 'Cisco_cisco_service_control' : s + 'cisco.misc.service_control;' + c, + 'Cisco_cisco_Service_Module' : s + 'cisco.controllers_and_modules.service_module;' + c, + 'Cisco_cisco_Service_router' : s + 'cisco.routers.service_router;' + c, + 'Cisco_cisco_Services' : s + 'cisco.misc.services;' + c, + 'Cisco_cisco_Set_top_box' : s + 'cisco.misc.set_top_box;' + c, + 'Cisco_cisco_simulitlayer_switch' : s + 'cisco.switches.simultilayer_switch;' + c, + 'Cisco_cisco_sip_proxy_werver' : s + 'cisco.servers.sip_proxy_server;' + c, + 'Cisco_cisco_sitting_woman' : s + 'cisco.people.sitting_woman;' + c, + 'Cisco_cisco_small_business' : s + 'cisco.buildings.small_business;' + c, + 'Cisco_cisco_small_hub' : s + 'cisco.hubs_and_gateways.small_hub;' + c, + 'Cisco_cisco_softphone' : s + 'cisco.modems_and_phones.softphone;' + c, + 'Cisco_cisco_softswitch_pgw_mgc' : s + 'cisco.switches.softswitch_pgw_mgc;' + c, + 'Cisco_cisco_software_based_server' : s + 'cisco.servers.software_based_server;' + c, // 'Cisco_cisco_Space_router' NA - 'Cisco_cisco_speaker' : 'shape=mxgraph.cisco.computers_and_peripherals.speaker;' + c, - 'Cisco_cisco_ssc' : 'shape=mxgraph.cisco.misc.ssc;' + c, - 'Cisco_cisco_ssl_terminator' : 'shape=mxgraph.cisco.misc.ssl_terminator;' + c, - 'Cisco_cisco_standard_host' : 'shape=mxgraph.cisco.servers.standard_host;' + c, - 'Cisco_cisco_stb' : 'shape=mxgraph.cisco.misc.stb;' + c, - 'Cisco_cisco_storage_router' : 'shape=mxgraph.cisco.routers.storage_router;' + c, - 'Cisco_cisco_storage_server' : 'shape=mxgraph.cisco.servers.storage_server;' + c, - 'Cisco_cisco_stp' : 'shape=mxgraph.cisco.misc.stp;' + c, - 'Cisco_cisco_streamer' : 'shape=mxgraph.cisco.misc.streamer;' + c, - 'Cisco_cisco_sun_workstation' : 'shape=mxgraph.cisco.computers_and_peripherals.workstation;' + c, - 'Cisco_cisco_supercomputer' : 'shape=mxgraph.cisco.computers_and_peripherals.supercomputer;' + c, - 'Cisco_cisco_svx' : 'shape=mxgraph.cisco.misc.svx;' + c, - 'Cisco_cisco_system_controller' : 'shape=mxgraph.cisco.controllers_and_modules.system_controller;' + c, - 'Cisco_cisco_tablet' : 'shape=mxgraph.cisco.computers_and_peripherals.tablet;' + c, - 'Cisco_cisco_tape_array' : 'shape=mxgraph.cisco.storage.tape_array;' + c, - 'Cisco_cisco_tdm_router' : 'shape=mxgraph.cisco.routers.tdm_router;' + c, - 'Cisco_cisco_telecommuter_house_pc' : 'shape=mxgraph.cisco.buildings.telecommuter_house_pc;' + c, - 'Cisco_cisco_telecommuter_house' : 'shape=mxgraph.cisco.buildings.telecommuter_house;' + c, - 'Cisco_cisco_telecommuter_icon' : 'shape=mxgraph.cisco.misc.telecommuter_icon;' + c, + 'Cisco_cisco_speaker' : s + 'cisco.computers_and_peripherals.speaker;' + c, + 'Cisco_cisco_ssc' : s + 'cisco.misc.ssc;' + c, + 'Cisco_cisco_ssl_terminator' : s + 'cisco.misc.ssl_terminator;' + c, + 'Cisco_cisco_standard_host' : s + 'cisco.servers.standard_host;' + c, + 'Cisco_cisco_stb' : s + 'cisco.misc.stb;' + c, + 'Cisco_cisco_storage_router' : s + 'cisco.routers.storage_router;' + c, + 'Cisco_cisco_storage_server' : s + 'cisco.servers.storage_server;' + c, + 'Cisco_cisco_stp' : s + 'cisco.misc.stp;' + c, + 'Cisco_cisco_streamer' : s + 'cisco.misc.streamer;' + c, + 'Cisco_cisco_sun_workstation' : s + 'cisco.computers_and_peripherals.workstation;' + c, + 'Cisco_cisco_supercomputer' : s + 'cisco.computers_and_peripherals.supercomputer;' + c, + 'Cisco_cisco_svx' : s + 'cisco.misc.svx;' + c, + 'Cisco_cisco_system_controller' : s + 'cisco.controllers_and_modules.system_controller;' + c, + 'Cisco_cisco_tablet' : s + 'cisco.computers_and_peripherals.tablet;' + c, + 'Cisco_cisco_tape_array' : s + 'cisco.storage.tape_array;' + c, + 'Cisco_cisco_tdm_router' : s + 'cisco.routers.tdm_router;' + c, + 'Cisco_cisco_telecommuter_house_pc' : s + 'cisco.buildings.telecommuter_house_pc;' + c, + 'Cisco_cisco_telecommuter_house' : s + 'cisco.buildings.telecommuter_house;' + c, + 'Cisco_cisco_telecommuter_icon' : s + 'cisco.misc.telecommuter_icon;' + c, // 'Cisco_cisco_Telepresence_1000' NA // 'Cisco_cisco_Telepresence_3000' NA - 'Cisco_cisco_Telepresence_3200' : 'shape=mxgraph.cisco.misc.telepresence;' + c, + 'Cisco_cisco_Telepresence_3200' : s + 'cisco.misc.telepresence;' + c, // 'Cisco_cisco_Telepresence_500' NA - 'Cisco_cisco_terminal' : 'shape=mxgraph.cisco.computers_and_peripherals.terminal;' + c, - 'Cisco_cisco_token' : 'shape=mxgraph.cisco.misc.token;strokeColor=#036897;', - 'Cisco_cisco_TP_MCU' : 'shape=mxgraph.cisco.misc.tp_mcu;' + c, - 'Cisco_cisco_transpath' : 'shape=mxgraph.cisco.misc.transpath;' + c, - 'Cisco_cisco_truck' : 'shape=mxgraph.cisco.misc.truck;' + c, - 'Cisco_cisco_turret' : 'shape=mxgraph.cisco.misc.turret;' + c, - 'Cisco_cisco_tv' : 'shape=mxgraph.cisco.misc.tv;' + c, - 'Cisco_cisco_ubr910' : 'shape=mxgraph.cisco.misc.ubr910;' + c, - 'Cisco_cisco_umg_series' : 'shape=mxgraph.cisco.misc.umg_series;' + c, - 'Cisco_cisco_unity_server' : 'shape=mxgraph.cisco.servers.unity_server;' + c, - 'Cisco_cisco_universal_gateway' : 'shape=mxgraph.cisco.hubs_and_gateways.universal_gateway;' + c, - 'Cisco_cisco_university' : 'shape=mxgraph.cisco.buildings.university;' + c, - 'Cisco_cisco_upc' : 'shape=mxgraph.cisco.computers_and_peripherals.upc;' + c, - 'Cisco_cisco_vault' : 'shape=mxgraph.cisco.misc.vault;' + c, - 'Cisco_cisco_video_camera' : 'shape=mxgraph.cisco.computers_and_peripherals.video_camera;' + c, - 'Cisco_cisco_vip' : 'shape=mxgraph.cisco.misc.vip;' + c, - 'Cisco_cisco_virtual_layer_switch' : 'shape=mxgraph.cisco.switches.virtual_layer_switch;' + c, - 'Cisco_cisco_virtual_switch_controller__vsc3000_' : 'shape=mxgraph.cisco.controllers_and_modules.virtual_switch_controller_(vsc3000);' + c, - 'Cisco_cisco_voice_atm_switch' : 'shape=mxgraph.cisco.switches.voice_atm_switch;' + c, - 'Cisco_cisco_voice_commserver' : 'shape=mxgraph.cisco.servers.voice_commserver;' + c, - 'Cisco_cisco_voice_router' : 'shape=mxgraph.cisco.routers.voice_router;' + c, - 'Cisco_cisco_voice_switch' : 'shape=mxgraph.cisco.switches.voice_switch;' + c, - 'Cisco_cisco_vpn_concentrator' : 'shape=mxgraph.cisco.misc.vpn_concentrator;' + c, - 'Cisco_cisco_vpn_gateway' : 'shape=mxgraph.cisco.hubs_and_gateways.vpn_gateway;' + c, - 'Cisco_cisco_VSS' : 'shape=mxgraph.cisco.misc.vss;' + c, - 'Cisco_cisco_wae' : 'shape=mxgraph.cisco.misc.wae;' + c, - 'Cisco_cisco_wavelength_router' : 'shape=mxgraph.cisco.routers.wavelength_router;' + c, - 'Cisco_cisco_web_browser' : 'shape=mxgraph.cisco.computers_and_peripherals.web_browser;' + c, - 'Cisco_cisco_web_cluster' : 'shape=mxgraph.cisco.storage.web_cluster;' + c, - 'Cisco_cisco_wi_fi_tag' : 'shape=mxgraph.cisco.wireless.wi-fi_tag;' + c, - 'Cisco_cisco_wireless_bridge' : 'shape=mxgraph.cisco.wireless.wireless_bridge;' + c, - 'Cisco_cisco_wireless_location_appliance' : 'shape=mxgraph.cisco.wireless.wireless_location_appliance;' + c, - 'Cisco_cisco_wireless' : 'shape=mxgraph.cisco.wireless.wireless;' + c, - 'Cisco_cisco_wireless_transport' : 'shape=mxgraph.cisco.wireless.wireless_transport;' + c, - 'Cisco_cisco_wism' : 'shape=mxgraph.cisco.misc.wism;' + c, - 'Cisco_cisco_wlan_controller' : 'shape=mxgraph.cisco.wireless.wlan_controller;' + c, - 'Cisco_cisco_workgroup_director' : 'shape=mxgraph.cisco.directors.workgroup_director;' + c, - 'Cisco_cisco_workgroup_switch' : 'shape=mxgraph.cisco.switches.workgroup_switch;' + c, - 'Cisco_cisco_workstation' : 'shape=mxgraph.cisco.computers_and_peripherals.workstation;' + c, - 'Cisco_cisco_www_server' : 'shape=mxgraph.cisco.servers.www_server;' + c, + 'Cisco_cisco_terminal' : s + 'cisco.computers_and_peripherals.terminal;' + c, + 'Cisco_cisco_token' : s + 'cisco.misc.token;strokeColor=#036897;', + 'Cisco_cisco_TP_MCU' : s + 'cisco.misc.tp_mcu;' + c, + 'Cisco_cisco_transpath' : s + 'cisco.misc.transpath;' + c, + 'Cisco_cisco_truck' : s + 'cisco.misc.truck;' + c, + 'Cisco_cisco_turret' : s + 'cisco.misc.turret;' + c, + 'Cisco_cisco_tv' : s + 'cisco.misc.tv;' + c, + 'Cisco_cisco_ubr910' : s + 'cisco.misc.ubr910;' + c, + 'Cisco_cisco_umg_series' : s + 'cisco.misc.umg_series;' + c, + 'Cisco_cisco_unity_server' : s + 'cisco.servers.unity_server;' + c, + 'Cisco_cisco_universal_gateway' : s + 'cisco.hubs_and_gateways.universal_gateway;' + c, + 'Cisco_cisco_university' : s + 'cisco.buildings.university;' + c, + 'Cisco_cisco_upc' : s + 'cisco.computers_and_peripherals.upc;' + c, + 'Cisco_cisco_vault' : s + 'cisco.misc.vault;' + c, + 'Cisco_cisco_video_camera' : s + 'cisco.computers_and_peripherals.video_camera;' + c, + 'Cisco_cisco_vip' : s + 'cisco.misc.vip;' + c, + 'Cisco_cisco_virtual_layer_switch' : s + 'cisco.switches.virtual_layer_switch;' + c, + 'Cisco_cisco_virtual_switch_controller__vsc3000_' : s + 'cisco.controllers_and_modules.virtual_switch_controller_(vsc3000);' + c, + 'Cisco_cisco_voice_atm_switch' : s + 'cisco.switches.voice_atm_switch;' + c, + 'Cisco_cisco_voice_commserver' : s + 'cisco.servers.voice_commserver;' + c, + 'Cisco_cisco_voice_router' : s + 'cisco.routers.voice_router;' + c, + 'Cisco_cisco_voice_switch' : s + 'cisco.switches.voice_switch;' + c, + 'Cisco_cisco_vpn_concentrator' : s + 'cisco.misc.vpn_concentrator;' + c, + 'Cisco_cisco_vpn_gateway' : s + 'cisco.hubs_and_gateways.vpn_gateway;' + c, + 'Cisco_cisco_VSS' : s + 'cisco.misc.vss;' + c, + 'Cisco_cisco_wae' : s + 'cisco.misc.wae;' + c, + 'Cisco_cisco_wavelength_router' : s + 'cisco.routers.wavelength_router;' + c, + 'Cisco_cisco_web_browser' : s + 'cisco.computers_and_peripherals.web_browser;' + c, + 'Cisco_cisco_web_cluster' : s + 'cisco.storage.web_cluster;' + c, + 'Cisco_cisco_wi_fi_tag' : s + 'cisco.wireless.wi-fi_tag;' + c, + 'Cisco_cisco_wireless_bridge' : s + 'cisco.wireless.wireless_bridge;' + c, + 'Cisco_cisco_wireless_location_appliance' : s + 'cisco.wireless.wireless_location_appliance;' + c, + 'Cisco_cisco_wireless' : s + 'cisco.wireless.wireless;' + c, + 'Cisco_cisco_wireless_transport' : s + 'cisco.wireless.wireless_transport;' + c, + 'Cisco_cisco_wism' : s + 'cisco.misc.wism;' + c, + 'Cisco_cisco_wlan_controller' : s + 'cisco.wireless.wlan_controller;' + c, + 'Cisco_cisco_workgroup_director' : s + 'cisco.directors.workgroup_director;' + c, + 'Cisco_cisco_workgroup_switch' : s + 'cisco.switches.workgroup_switch;' + c, + 'Cisco_cisco_workstation' : s + 'cisco.computers_and_peripherals.workstation;' + c, + 'Cisco_cisco_www_server' : s + 'cisco.servers.www_server;' + c, //Computers and Monitors // 'NET_PC' NA // 'NET_Virtual-PC' NA @@ -778,19 +911,19 @@ // 'NET_Camera' NA // 'NET_VideoCamera' NA //Server Racks - 'RackServerRack' : 'shape=mxgraph.rackGeneral.container;container=1;collapsible=0;childLayout=rack;marginLeft=9;marginRight=9;marginTop=21;marginBottom=22;textColor=#000000;numDisp=off;', - 'RackBlank' : 'strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;shape=mxgraph.rackGeneral.plate;fillColor=#e8e8e8;', - 'RackRaidArray' : 'shape=mxgraph.rack.cisco.cisco_carrier_packet_transport_50;labelPosition=left;align=right;spacingRight=15;', - 'RackServer' : 'shape=mxgraph.rack.oracle.sunfire_x4100;labelPosition=left;align=right;spacingRight=15;', - 'RackEthernetSwitch' : 'shape=mxgraph.rack.cisco.cisco_nexus_3016_switch;labelPosition=left;align=right;spacingRight=15;', - 'RackPatchPanel' : 'strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;shape=mxgraph.rack.general.cat5e_rack_mount_patch_panel_24_ports;', - 'RackRouter' : 'shape=mxgraph.rack.cisco.cisco_asr_1001_router;labelPosition=left;align=right;spacingRight=15;', - 'RackMonitor' : 'shape=mxgraph.rack.ibm.ibm_1u_flat_panel_console_kit;labelPosition=left;align=right;spacingRight=15;', - 'RackKeyboard' : 'shape=mxgraph.rack.cisco.cisco_1905_serial_integrated_services_router;labelPosition=left;align=right;spacingRight=15;', - 'RackPowerStrip' : 'shape=mxgraph.rack.dell.power_strip;labelPosition=left;align=right;spacingRight=15;', - 'RackPowerSupply' : 'shape=mxgraph.rack.cisco.cisco_web_security_appliance_s170;labelPosition=left;align=right;spacingRight=15;', - 'RackBridge' : 'shape=mxgraph.rack.cisco.cisco_nexus_5548p_switch;labelPosition=left;align=right;spacingRight=15;', - 'RackTapeDrive' : 'shape=mxgraph.rack.ibm.ibm_1754_local_console_manager;labelPosition=left;align=right;spacingRight=15;', + 'RackServerRack' : s + 'rackGeneral.container;container=1;collapsible=0;childLayout=rack;marginLeft=9;marginRight=9;marginTop=21;marginBottom=22;textColor=#000000;numDisp=off;', + 'RackBlank' : s + 'rackGeneral.plate;strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;fillColor=#e8e8e8;', + 'RackRaidArray' : s + 'rack.cisco.cisco_carrier_packet_transport_50;labelPosition=left;align=right;spacingRight=15;', + 'RackServer' : s + 'rack.oracle.sunfire_x4100;labelPosition=left;align=right;spacingRight=15;', + 'RackEthernetSwitch' : s + 'rack.cisco.cisco_nexus_3016_switch;labelPosition=left;align=right;spacingRight=15;', + 'RackPatchPanel' : s + 'rack.general.cat5e_rack_mount_patch_panel_24_ports;strokeColor=#666666;labelPosition=left;align=right;spacingRight=15;', + 'RackRouter' : s + 'rack.cisco.cisco_asr_1001_router;labelPosition=left;align=right;spacingRight=15;', + 'RackMonitor' : s + 'rack.ibm.ibm_1u_flat_panel_console_kit;labelPosition=left;align=right;spacingRight=15;', + 'RackKeyboard' : s + 'rack.cisco.cisco_1905_serial_integrated_services_router;labelPosition=left;align=right;spacingRight=15;', + 'RackPowerStrip' : s + 'rack.dell.power_strip;labelPosition=left;align=right;spacingRight=15;', + 'RackPowerSupply' : s + 'rack.cisco.cisco_web_security_appliance_s170;labelPosition=left;align=right;spacingRight=15;', + 'RackBridge' : s + 'rack.cisco.cisco_nexus_5548p_switch;labelPosition=left;align=right;spacingRight=15;', + 'RackTapeDrive' : s + 'rack.ibm.ibm_1754_local_console_manager;labelPosition=left;align=right;spacingRight=15;', //Network 'Image_network_server' : 'image;image=img/lib/clip_art/computers/Server_Tower_128x128.png;flipH=1;', 'Image_network_server_file' : 'image;image=img/lib/clip_art/computers/Server_128x128.png;', @@ -838,84 +971,84 @@ // 'Image_audio_record_player' NA // 'Image_audio_headset' NA //Electrical - 'EE_Amplifier' : 'shape=mxgraph.electrical.abstract.amplifier;', - 'EE_OpAmp' : 'shape=mxgraph.electrical.abstract.operational_amp_1;', //EXT - 'EE_ControlledAmp' : 'shape=mxgraph.electrical.abstract.controlled_amplifier;', //EXT - 'EE_Multiplexer' : 'shape=mxgraph.electrical.abstract.mux;', //EXT - 'EE_Demultiplexer' : 'shape=mxgraph.electrical.abstract.demux;', //EXT - 'EE_Capacitor1' : 'shape=mxgraph.electrical.capacitors.capacitor_1;', //EXT - 'EE_Capacitor2' : 'shape=mxgraph.electrical.capacitors.capacitor_3;', //EXT - 'EE_Diode' : 'shape=mxgraph.electrical.diodes.diode;', //EXT - 'EE_Resistor' : 'shape=mxgraph.electrical.resistors.resistor_2;', //EXT - 'EE_VarResistor' : 'shape=mxgraph.electrical.resistors.variable_resistor_2;', - 'EE_Potentiometer' : 'shape=mxgraph.electrical.resistors.potentiometer_2;', //EXT - 'EE_ProtGround' : 'shape=mxgraph.electrical.signal_sources.protective_earth;', - 'EE_SignalGround' : 'shape=mxgraph.electrical.signal_sources.signal_ground;', - 'EE_Transformer' : 'shape=mxgraph.electrical.inductors.transformer_1;', - 'EE_Inductor' : 'shape=mxgraph.electrical.inductors.inductor_3;', //EXT - 'EE_Variable Inductor' : 'shape=mxgraph.electrical.inductors.variable_inductor;', //EXT - 'EE_TwoWaySwitch' : 'shape=mxgraph.electrical.electro-mechanical.2-way_switch;', - 'EE_OnOffSwitch' : 'shape=mxgraph.electrical.electro-mechanical.simple_switch;', - 'EE_Loudspeaker' : 'shape=mxgraph.electrical.electro-mechanical.loudspeaker;', - 'EE_Motor' : 'shape=mxgraph.electrical.electro-mechanical.motor_1;', //EXT - 'EE_LED1' : 'shape=mxgraph.electrical.opto_electronics.led_2;', - 'EE_Lightbulb' : 'shape=mxgraph.electrical.miscellaneous.light_bulb;', + 'EE_Amplifier' : s + 'electrical.abstract.amplifier;', + 'EE_OpAmp' : s + 'electrical.abstract.operational_amp_1;', //EXT + 'EE_ControlledAmp' : s + 'electrical.abstract.controlled_amplifier;', //EXT + 'EE_Multiplexer' : s + 'electrical.abstract.mux;', //EXT + 'EE_Demultiplexer' : s + 'electrical.abstract.demux;', //EXT + 'EE_Capacitor1' : s + 'electrical.capacitors.capacitor_1;', //EXT + 'EE_Capacitor2' : s + 'electrical.capacitors.capacitor_3;', //EXT + 'EE_Diode' : s + 'electrical.diodes.diode;', //EXT + 'EE_Resistor' : s + 'electrical.resistors.resistor_2;', //EXT + 'EE_VarResistor' : s + 'electrical.resistors.variable_resistor_2;', + 'EE_Potentiometer' : s + 'electrical.resistors.potentiometer_2;', //EXT + 'EE_ProtGround' : s + 'electrical.signal_sources.protective_earth;', + 'EE_SignalGround' : s + 'electrical.signal_sources.signal_ground;', + 'EE_Transformer' : s + 'electrical.inductors.transformer_1;', + 'EE_Inductor' : s + 'electrical.inductors.inductor_3;', //EXT + 'EE_Variable Inductor' : s + 'electrical.inductors.variable_inductor;', //EXT + 'EE_TwoWaySwitch' : s + 'electrical.electro-mechanical.2-way_switch;', + 'EE_OnOffSwitch' : s + 'electrical.electro-mechanical.simple_switch;', + 'EE_Loudspeaker' : s + 'electrical.electro-mechanical.loudspeaker;', + 'EE_Motor' : s + 'electrical.electro-mechanical.motor_1;', //EXT + 'EE_LED1' : s + 'electrical.opto_electronics.led_2;', + 'EE_Lightbulb' : s + 'electrical.miscellaneous.light_bulb;', // 'EE_IntegratedCircuit' EXT //Power Sources - 'EE_AcSource' : 'strokeWidth=1;shape=mxgraph.electrical.signal_sources.ac_source;', //EXT - 'EE_VoltageSource' : 'shape=mxgraph.electrical.signal_sources.dc_source_3;', //EXT - 'EE_CurrentSource' : 'shape=mxgraph.electrical.signal_sources.dc_source_2;direction=north;', //EXT - 'EE_ControlledCurrentSource' : 'shape=mxgraph.electrical.signal_sources.dependent_source_2;direction=west;', //EXT - 'EE_ControlledVoltageSource' : 'shape=mxgraph.electrical.signal_sources.dependent_source_3;', //EXT + 'EE_AcSource' : s + 'electrical.signal_sources.ac_source;strokeWidth=1;', //EXT + 'EE_VoltageSource' : s + 'electrical.signal_sources.dc_source_3;', //EXT + 'EE_CurrentSource' : s + 'electrical.signal_sources.dc_source_2;direction=north;', //EXT + 'EE_ControlledCurrentSource' : s + 'electrical.signal_sources.dependent_source_2;direction=west;', //EXT + 'EE_ControlledVoltageSource' : s + 'electrical.signal_sources.dependent_source_3;', //EXT // 'EE_DcSource1' NA // 'EE_DcSource2' NA - 'EE_Vss' : 'verticalLabelPosition=top;verticalAlign=bottom;shape=mxgraph.electrical.signal_sources.vss2;fontSize=24;', - 'EE_Vdd' : 'verticalLabelPosition=bottom;verticalAlign=top;shape=mxgraph.electrical.signal_sources.vdd;', + 'EE_Vss' : s + 'electrical.signal_sources.vss2;verticalLabelPosition=top;verticalAlign=bottom;fontSize=24;', + 'EE_Vdd' : s + 'electrical.signal_sources.vdd;verticalLabelPosition=bottom;verticalAlign=top;', //Transistors - 'EE_BJT_NPN1' : 'shape=mxgraph.electrical.transistors.pnp_transistor_1;', - 'EE_BJT_PNP1' : 'shape=mxgraph.electrical.transistors.npn_transistor_1;', - 'EE_JFET_P' : 'shape=mxgraph.electrical.transistors.p-channel_jfet_1;flipV=1;', - 'EE_JFET_N' : 'shape=mxgraph.electrical.transistors.n-channel_jfet_1;', - 'EE_MOSFET_P1' : 'shape=mxgraph.electrical.mosfets1.mosfet_ic_p;flipV=1;', - 'EE_MOSFET_P2' : 'shape=mxgraph.electrical.mosfets1.mosfet_p_no_bulk;', - 'EE_MOSFET_P3' : 'shape=mxgraph.electrical.mosfets1.p-channel_mosfet_1;flipV=1;', - 'EE_MOSFET_N1' : 'shape=mxgraph.electrical.mosfets1.mosfet_ic_n;', - 'EE_MOSFET_N2' : 'shape=mxgraph.electrical.mosfets1.mosfet_n_no_bulk;', - 'EE_MOSFET_N3' : 'shape=mxgraph.electrical.mosfets1.n-channel_mosfet_1;', + 'EE_BJT_NPN1' : s + 'electrical.transistors.pnp_transistor_1;', + 'EE_BJT_PNP1' : s + 'electrical.transistors.npn_transistor_1;', + 'EE_JFET_P' : s + 'electrical.transistors.p-channel_jfet_1;flipV=1;', + 'EE_JFET_N' : s + 'electrical.transistors.n-channel_jfet_1;', + 'EE_MOSFET_P1' : s + 'electrical.mosfets1.mosfet_ic_p;flipV=1;', + 'EE_MOSFET_P2' : s + 'electrical.mosfets1.mosfet_p_no_bulk;', + 'EE_MOSFET_P3' : s + 'electrical.mosfets1.p-channel_mosfet_1;flipV=1;', + 'EE_MOSFET_N1' : s + 'electrical.mosfets1.mosfet_ic_n;', + 'EE_MOSFET_N2' : s + 'electrical.mosfets1.mosfet_n_no_bulk;', + 'EE_MOSFET_N3' : s + 'electrical.mosfets1.n-channel_mosfet_1;', //Relays // 'EE_SPST' NA // 'EE_SPDT' NA // 'EE_DPST' NA // 'EE_DPDT' NA //Logic Gates - 'EE_AND' : 'shape=mxgraph.electrical.logic_gates.and;', - 'EE_OR' : 'shape=mxgraph.electrical.logic_gates.or;', - 'EE_Inverter' : 'shape=mxgraph.electrical.logic_gates.inverter;', - 'EE_NAND' : 'shape=mxgraph.electrical.logic_gates.nand;', - 'EE_NOR' : 'shape=mxgraph.electrical.logic_gates.nor;', - 'EE_XOR' : 'shape=mxgraph.electrical.logic_gates.xor;', - 'EE_NXOR' : 'shape=mxgraph.electrical.logic_gates.xnor;', - 'EE_DTypeRSFlipFlop' : 'shape=mxgraph.electrical.logic_gates.d_type_rs_flip-flop;', - 'EE_DTypeFlipFlop' : 'shape=mxgraph.electrical.logic_gates.d_type_flip-flop;', - 'EE_DTypeFlipFlopWithClear' : 'shape=mxgraph.electrical.logic_gates.d_type_flip-flop_with_clear;', - 'EE_RSLatch' : 'shape=mxgraph.electrical.logic_gates.rs_latch;', - 'EE_SyncRSLatch' : 'shape=mxgraph.electrical.logic_gates.synchronous_rs_latch;', - 'EE_TTypeFlipFlop' : 'shape=mxgraph.electrical.logic_gates.t_type_flip-flop;', + 'EE_AND' : s + 'electrical.logic_gates.and;', + 'EE_OR' : s + 'electrical.logic_gates.or;', + 'EE_Inverter' : s + 'electrical.logic_gates.inverter;', + 'EE_NAND' : s + 'electrical.logic_gates.nand;', + 'EE_NOR' : s + 'electrical.logic_gates.nor;', + 'EE_XOR' : s + 'electrical.logic_gates.xor;', + 'EE_NXOR' : s + 'electrical.logic_gates.xnor;', + 'EE_DTypeRSFlipFlop' : s + 'electrical.logic_gates.d_type_rs_flip-flop;', + 'EE_DTypeFlipFlop' : s + 'electrical.logic_gates.d_type_flip-flop;', + 'EE_DTypeFlipFlopWithClear' : s + 'electrical.logic_gates.d_type_flip-flop_with_clear;', + 'EE_RSLatch' : s + 'electrical.logic_gates.rs_latch;', + 'EE_SyncRSLatch' : s + 'electrical.logic_gates.synchronous_rs_latch;', + 'EE_TTypeFlipFlop' : s + 'electrical.logic_gates.t_type_flip-flop;', //Miscellaneous - 'EE_Plus' : 'shape=mxgraph.ios7.misc.flagged;', + 'EE_Plus' : s + 'ios7.misc.flagged;', 'EE_Negative' : 'shape=line;', 'EE_InverterContact' : 'shape=ellipse;', - 'EE_Voltmeter' : 'shape=mxgraph.electrical.instruments.voltmeter;', - 'EE_Ammeter' : 'shape=mxgraph.electrical.instruments.ampermeter;', - 'EE_SineWave' : 'shape=mxgraph.electrical.waveforms.sine_wave;', - 'EE_Sawtooth' : 'shape=mxgraph.electrical.waveforms.sawtooth;', - 'EE_SquareWave' : 'shape=mxgraph.electrical.waveforms.square_wave;', + 'EE_Voltmeter' : s + 'electrical.instruments.voltmeter;', + 'EE_Ammeter' : s + 'electrical.instruments.ampermeter;', + 'EE_SineWave' : s + 'electrical.waveforms.sine_wave;', + 'EE_Sawtooth' : s + 'electrical.waveforms.sawtooth;', + 'EE_SquareWave' : s + 'electrical.waveforms.square_wave;', //Messaging Systems - 'EIChannelBlock' : 'shape=mxgraph.eip.messageChannel;', + 'EIChannelBlock' : s + 'eip.messageChannel;', // 'EIMessageChannelBlock' NA // 'EIMessageBlock' EXT - 'EIMessageRouterBlock' : 'shape=mxgraph.eip.content_based_router;', - 'EIMessageTranslatorBlock' : 'shape=mxgraph.eip.message_translator;', + 'EIMessageRouterBlock' : s + 'eip.content_based_router;', + 'EIMessageTranslatorBlock' : s + 'eip.message_translator;', // 'EIMessageEndpointBlock' EXT //Messaging Channels // 'EIPublishSubscribeChannelBlock' NA @@ -924,7 +1057,7 @@ // 'EIDeadLetterChannelBlock' NA // 'EIGuaranteedDeliveryBlock' NA // 'EIChannelAdapterBlock' NA - 'EIMessagingBridgeBlock' : 'shape=mxgraph.eip.messaging_bridge;', + 'EIMessagingBridgeBlock' : s + 'eip.messaging_bridge;', // 'EIMessageBusBlock' NA //Message Construction // 'EICommandMessageBlock' EXT @@ -937,55 +1070,55 @@ // 'EIMessageSequenceBlock' NA // 'EIMessageExpirationBlock' NA //Message Routing - 'EIContentBasedRouterBlock' : 'shape=mxgraph.eip.content_based_router;', - 'EIMessageFilterBlock' : 'shape=mxgraph.eip.message_filter;', - 'EIDynamicRouterBlock' : 'shape=mxgraph.eip.dynamic_router;', - 'EIRecipientListBlock' : 'shape=mxgraph.eip.recipient_list;', - 'EISplitterBlock' : 'shape=mxgraph.eip.splitter;', - 'EIAggregatorBlock' : 'shape=mxgraph.eip.aggregator;', - 'EIResequencerBlock' : 'shape=mxgraph.eip.resequencer;', - 'EIComposedMessageBlock' : 'shape=mxgraph.eip.composed_message_processor;', - 'EIRoutingSlipBlock' : 'shape=mxgraph.eip.routing_slip;', - 'EIProcessManagerBlock' : 'shape=mxgraph.eip.process_manager;', + 'EIContentBasedRouterBlock' : s + 'eip.content_based_router;', + 'EIMessageFilterBlock' : s + 'eip.message_filter;', + 'EIDynamicRouterBlock' : s + 'eip.dynamic_router;', + 'EIRecipientListBlock' : s + 'eip.recipient_list;', + 'EISplitterBlock' : s + 'eip.splitter;', + 'EIAggregatorBlock' : s + 'eip.aggregator;', + 'EIResequencerBlock' : s + 'eip.resequencer;', + 'EIComposedMessageBlock' : s + 'eip.composed_message_processor;', + 'EIRoutingSlipBlock' : s + 'eip.routing_slip;', + 'EIProcessManagerBlock' : s + 'eip.process_manager;', // 'EIMessageBrokerBlock' EXT //Message Transformation - 'EIEnvelopeWrapperBlock' : 'shape=mxgraph.eip.envelope_wrapper;', - 'EIContentEnricherBlock' : 'shape=mxgraph.eip.content_enricher;', - 'EIContentFilterBlock' : 'shape=mxgraph.eip.content_filter;', - 'EIClaimCheckBlock' : 'shape=mxgraph.eip.claim_check;', - 'EINormalizerBlock' : 'shape=mxgraph.eip.normalizer;', + 'EIEnvelopeWrapperBlock' : s + 'eip.envelope_wrapper;', + 'EIContentEnricherBlock' : s + 'eip.content_enricher;', + 'EIContentFilterBlock' : s + 'eip.content_filter;', + 'EIClaimCheckBlock' : s + 'eip.claim_check;', + 'EINormalizerBlock' : s + 'eip.normalizer;', //Messaging Endpoints - 'EIMessagingGatewayBlock' : 'shape=mxgraph.eip.messaging_gateway;', - 'EITransactionalClientBlock' : 'shape=mxgraph.eip.transactional_client;', - 'EIPollingConsumerBlock' : 'shape=mxgraph.eip.polling_consumer;', - 'EIEventDrivenConsumerBlock' : 'shape=mxgraph.eip.event_driven_consumer;', - 'EICompetingConsumersBlock' : 'shape=mxgraph.eip.competing_consumers;', - 'EIMessageDispatcherBlock' : 'shape=mxgraph.eip.message_dispatcher;', - 'EISelectiveConsumerBlock' : 'shape=mxgraph.eip.selective_consumer;', + 'EIMessagingGatewayBlock' : s + 'eip.messaging_gateway;', + 'EITransactionalClientBlock' : s + 'eip.transactional_client;', + 'EIPollingConsumerBlock' : s + 'eip.polling_consumer;', + 'EIEventDrivenConsumerBlock' : s + 'eip.event_driven_consumer;', + 'EICompetingConsumersBlock' : s + 'eip.competing_consumers;', + 'EIMessageDispatcherBlock' : s + 'eip.message_dispatcher;', + 'EISelectiveConsumerBlock' : s + 'eip.selective_consumer;', // 'EIDurableSubscriberBlock' NA - 'EIServiceActivatorBlock' : 'shape=mxgraph.eip.service_activator;', + 'EIServiceActivatorBlock' : s + 'eip.service_activator;', //System Management // 'EIControlBusBlock' NA - 'EIDetourBlock' : 'shape=mxgraph.eip.detour;', - 'EIWireTapBlock' : 'shape=mxgraph.eip.wire_tap;', + 'EIDetourBlock' : s + 'eip.detour;', + 'EIWireTapBlock' : s + 'eip.wire_tap;', // 'EIMessageHistoryBlock' EXT - 'EIMessageStoreBlock' : 'shape=mxgraph.eip.message_store;', - 'EISmartProxyBlock' : 'shape=mxgraph.eip.smart_proxy;', - 'EITestMessageBlock' : 'shape=mxgraph.eip.test_message;', - 'EIChannelPurgerBlock' : 'shape=mxgraph.eip.channel_purger;', + 'EIMessageStoreBlock' : s + 'eip.message_store;', + 'EISmartProxyBlock' : s + 'eip.smart_proxy;', + 'EITestMessageBlock' : s + 'eip.test_message;', + 'EIChannelPurgerBlock' : s + 'eip.channel_purger;', //Equation // 'Equation' EXT //Walls 'fpWall' : 'shape=rect;', //Rooms //Doors & Windows - 'fpWindow' : 'shape=mxgraph.floorplan.window;', + 'fpWindow' : s + 'floorplan.window;', 'fpOpening' : 'shape=rect;', - 'fpDoor' : 'shape=mxgraph.floorplan.doorLeft;flipV=1;', //EXT - 'fpDoubleDoor' : 'shape=mxgraph.floorplan.doorDouble;flipV=1;', //EXT + 'fpDoor' : s + 'floorplan.doorLeft;flipV=1;', //EXT + 'fpDoubleDoor' : s + 'floorplan.doorDouble;flipV=1;', //EXT //Stairs - 'fpStairs' : 'shape=mxgraph.floorplan.stairs;direction=north;', - 'fpStairsDirectional' : 'shape=mxgraph.floorplan.stairs;direction=north;', + 'fpStairs' : s + 'floorplan.stairs;direction=north;', + 'fpStairsDirectional' : s + 'floorplan.stairs;direction=north;', // 'fpStairsCurved' EXT // 'fpStairsCurvedWide' EXT //Desks @@ -993,30 +1126,30 @@ 'fpDeskLongSegment' : 'shape=rect;', 'fpDeskShortSegment' : 'shape=rect;rounded=1;', // 'fpDeskSmallCornerSegment' NA - 'fpDeskLargeCornerSegment' : 'shape=mxgraph.floorplan.desk_corner;', + 'fpDeskLargeCornerSegment' : s + 'floorplan.desk_corner;', // 'fpDeskMediumCornerSegment' NA // 'fpDeskRoundedLSegment' NA // 'fpDeskRoundedCornerSegment' NA //Cubicle walls - 'fpCubiclePanel' : 'shape=mxgraph.floorplan.wall;wallThickness=3;', - 'fpCubicleWorkstation' : 'shape=mxgraph.floorplan.wallU;wallThickness=3;', - 'fpCubicleCorner5x5' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;', - 'fpCubicleCorner6x6' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;', - 'fpCubicleCorner8x8' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;', - 'fpCubicleCorner8x6' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;', - 'fpCubicleCornerOpen6x4' : 'shape=mxgraph.floorplan.wallCorner;wallThickness=3;', - 'fpCubicleDouble14x8' : 'shape=mxgraph.floorplan.wallU;wallThickness=3;', - 'fpCubicleEnclosed11x9' : 'shape=mxgraph.floorplan.wallU;wallThickness=3;', + 'fpCubiclePanel' : s + 'floorplan.wall;wallThickness=3;', + 'fpCubicleWorkstation' : s + 'floorplan.wallU;wallThickness=3;', + 'fpCubicleCorner5x5' : s + 'floorplan.wallCorner;wallThickness=3;', + 'fpCubicleCorner6x6' : s + 'floorplan.wallCorner;wallThickness=3;', + 'fpCubicleCorner8x8' : s + 'floorplan.wallCorner;wallThickness=3;', + 'fpCubicleCorner8x6' : s + 'floorplan.wallCorner;wallThickness=3;', + 'fpCubicleCornerOpen6x4' : s + 'floorplan.wallCorner;wallThickness=3;', + 'fpCubicleDouble14x8' : s + 'floorplan.wallU;wallThickness=3;', + 'fpCubicleEnclosed11x9' : s + 'floorplan.wallU;wallThickness=3;', //Tables & Chairs 'fpTableConferenceOval' : 'shape=ellipse;', 'fpTableConferenceBoat' : 'shape=rect;rounded=1;', 'fpTableConferenceRectangle' : 'shape=rect;rounded=1;', 'fpTableDiningRound' : 'shape=ellipse;', 'fpTableDiningSquare' : 'shape=rect;rounded=1;', - 'fpChairOffice' : 'shape=mxgraph.floorplan.office_chair;', - 'fpChairExecutive' : 'shape=mxgraph.floorplan.office_chair;', - 'fpChairLobby' : 'shape=mxgraph.floorplan.office_chair;', - 'fpChairDining' : 'shape=mxgraph.floorplan.chair;', + 'fpChairOffice' : s + 'floorplan.office_chair;', + 'fpChairExecutive' : s + 'floorplan.office_chair;', + 'fpChairLobby' : s + 'floorplan.office_chair;', + 'fpChairDining' : s + 'floorplan.chair;', 'fpChairBarstool' : 'shape=ellipse;', //Cubicles - Prebuilt //Tables - Prebuilt @@ -1030,31 +1163,31 @@ 'fpCabinetBasicWithShelves' : 'shape=rect;rounded=1;', 'fpCabinetsAboveDeskShelves' : 'shape=rect;rounded=1;', //Restroom - 'fpRestroomToiletPrivate' : 'shape=mxgraph.floorplan.toilet;', - 'fpRestroomToiletPublic' : 'shape=mxgraph.floorplan.toilet;', + 'fpRestroomToiletPrivate' : s + 'floorplan.toilet;', + 'fpRestroomToiletPublic' : s + 'floorplan.toilet;', // 'fpRestroomBidet' NA // 'fpRestroomLights' EXT // 'fpRestroomSinks' EXT // 'fpRestroomGrabBar' NA - 'fpRestroomBathtub' : 'shape=mxgraph.floorplan.bathtub;direction=south;', - 'fpRestroomShower' : 'shape=mxgraph.floorplan.shower;flipH=1;', + 'fpRestroomBathtub' : s + 'floorplan.bathtub;direction=south;', + 'fpRestroomShower' : s + 'floorplan.shower;flipH=1;', // 'fpRestroomCornerSink' NA - 'fpRestroomPedastalSink' : 'shape=mxgraph.floorplan.sink_1;', + 'fpRestroomPedastalSink' : s + 'floorplan.sink_1;', 'fpRestroomCountertop' : 'shape=rect;rounded=1;', 'fpRestroomMirror' : 'shape=line;strokeWidth=3;', // 'fpDresserOrnateMirror' NA // 'fpRestroomToiletPaper' NA // 'fpRestroomStalls' NA //Beds - 'fpBedDouble' : 'shape=mxgraph.floorplan.bed_double;', - 'fpBedSingle' : 'shape=mxgraph.floorplan.bed_single;', - 'fpBedQueen' : 'shape=mxgraph.floorplan.bed_double;', - 'fpBedKing' : 'shape=mxgraph.floorplan.bed_double;', - 'fpBedDoubleWithTrundle' : 'shape=mxgraph.floorplan.bed_double;', - 'fpBedBunk' : 'shape=mxgraph.floorplan.bed_double;', + 'fpBedDouble' : s + 'floorplan.bed_double;', + 'fpBedSingle' : s + 'floorplan.bed_single;', + 'fpBedQueen' : s + 'floorplan.bed_double;', + 'fpBedKing' : s + 'floorplan.bed_double;', + 'fpBedDoubleWithTrundle' : s + 'floorplan.bed_double;', + 'fpBedBunk' : s + 'floorplan.bed_double;', // 'fpBedBunkL' NA // 'fpBedCrib' NA - 'fpBedBassinet' : 'shape=mxgraph.pid.fittings.compensator;', + 'fpBedBassinet' : s + 'pid.fittings.compensator;', //Dressers // 'fpDresserChest' NA // 'fpDresserMirrorDresser' NA @@ -1065,47 +1198,47 @@ 'fpApplianceDryer' : 'shape=rect;', 'fpApplianceWaterHeater' : 'shape=ellipse;', // 'fpApplianceRefrigerator' NA - 'fpApplianceStoveOven' : 'shape=mxgraph.floorplan.range_1;', - 'fpStoveOvenSixBurner' : 'shape=mxgraph.floorplan.range_2;', + 'fpApplianceStoveOven' : s + 'floorplan.range_1;', + 'fpStoveOvenSixBurner' : s + 'floorplan.range_2;', 'fpApplianceDishwasher' : 'shape=rect;', //Kitchen - 'fpKitchenSink' : 'shape=mxgraph.floorplan.sink_2;', - 'fpKitchenDoubleSink' : 'shape=mxgraph.floorplan.sink_double;', + 'fpKitchenSink' : s + 'floorplan.sink_2;', + 'fpKitchenDoubleSink' : s + 'floorplan.sink_double;', 'fpKitchenCountertop' : 'shape=rect;rounded=1;', - 'fpKitchenCountertopCorner' : 'shape=mxgraph.floorplan.desk_corner;', + 'fpKitchenCountertopCorner' : s + 'floorplan.desk_corner;', //Couches - 'fpCouchLoveSeat' : 'shape=mxgraph.floorplan.couch;', - 'fpCouchSofa' : 'shape=mxgraph.floorplan.couch;', + 'fpCouchLoveSeat' : s + 'floorplan.couch;', + 'fpCouchSofa' : s + 'floorplan.couch;', // 'fpCouchSectional' NA 'fpCouchOttoman' : 'shape=rect;rounded=1;', // 'fpCouchPillow' NA //Technology - 'fpMiscDesktopComputer' : 'shape=mxgraph.floorplan.workstation;', - 'fpMiscLaptopComputer' : 'shape=mxgraph.floorplan.laptop;', - 'fpComputerMonitor' : 'shape=mxgraph.floorplan.flat_tv;', - 'fpCRTTelevision' : 'shape=mxgraph.floorplan.flat_tv;', + 'fpMiscDesktopComputer' : s + 'floorplan.workstation;', + 'fpMiscLaptopComputer' : s + 'floorplan.laptop;', + 'fpComputerMonitor' : s + 'floorplan.flat_tv;', + 'fpCRTTelevision' : s + 'floorplan.flat_tv;', // 'fpMiscProjector' NA // 'fpMiscProjectorScreen' NA //Misc Floorplan - 'fpMiscIndoorPlant' : 'shape=mxgraph.floorplan.plant;', + 'fpMiscIndoorPlant' : s + 'floorplan.plant;', // 'fpMiscPodium' NA - 'fpPiano' : 'shape=mxgraph.floorplan.piano;', + 'fpPiano' : s + 'floorplan.piano;', // 'fpPianoBench' : 'shape=rect;rounded=1;', //Equipment - 'PEAxialCompressor' : 'shape=mxgraph.pid.compressors.centrifugal_compressor_-_turbine_driven;', - 'PECentrifugalCompressor' : 'shape=mxgraph.pid.compressors.centrifugal_compressor', - 'PECentrifugalCompressor2' : 'shape=mxgraph.pid.compressors.centrifugal_compressor_-_turbine_driven;', + 'PEAxialCompressor' : s + 'pid.compressors.centrifugal_compressor_-_turbine_driven;', + 'PECentrifugalCompressor' : s + 'pid.compressors.centrifugal_compressor', + 'PECentrifugalCompressor2' : s + 'pid.compressors.centrifugal_compressor_-_turbine_driven;', // 'PECentrifugalCompressor3' NA - 'PEReciprocationCompressor' : 'shape=mxgraph.pid.compressors.reciprocating_compressor;', - 'PERotaryCompressorBlock' : 'shape=mxgraph.pid.compressors.rotary_compressor;', - 'PERotaryCompressor2Block' : 'shape=mxgraph.pid.compressors.compressor_and_silencers;', - 'PEConveyorBlock' : 'shape=mxgraph.pid2misc.conveyor;', + 'PEReciprocationCompressor' : s + 'pid.compressors.reciprocating_compressor;', + 'PERotaryCompressorBlock' : s + 'pid.compressors.rotary_compressor;', + 'PERotaryCompressor2Block' : s + 'pid.compressors.compressor_and_silencers;', + 'PEConveyorBlock' : s + 'pid2misc.conveyor;', // 'PEOverheadConveyorBlock' NA // 'PEScraperConveyorBlock' NA // 'PEScrewConveyorBlock' NA // 'PEPositiveDisplacementBlock' NA // 'PEPositiveDisplacement2' NA - 'PEElevator1Block' : 'shape=mxgraph.pid.misc.bucket_elevator;flipH=1;', + 'PEElevator1Block' : s + 'pid.misc.bucket_elevator;flipH=1;', // 'PEElevator2Block' NA // 'PEHoistBlock' NA // 'PESkipHoistBlock' NA @@ -1115,9 +1248,9 @@ // 'PELiquidRingVacuumBlock' NA // 'PETurbineDriverBlock' NA // 'PEDoubleFlowTurbineBlock' NA - 'PEAgitatorMixerBlock' : 'shape=mxgraph.pid.agitators.agitator_(propeller);', - 'PEDrumBlock' : 'shape=mxgraph.pid.vessels.drum_or_condenser;', - 'PETankEquipmentBlock' : 'mxgraph.pid.vessels.tank;', + 'PEAgitatorMixerBlock' : s + 'pid.agitators.agitator_(propeller);', + 'PEDrumBlock' : s + 'pid.vessels.drum_or_condenser;', + 'PETankEquipmentBlock' : s + 'pid.vessels.tank;', // 'PECentrifugalBlower' NA // 'PEAlkylationBlock' NA // 'PEBoomLoaderBlock' NA @@ -1126,156 +1259,156 @@ // 'PEFluidizedReactorBlock' NA // 'PETubularBlock' NA // 'PEReformerBlock' NA - 'PEMixingReactorBlock' : 'shape=mxgraph.pid.vessels.mixing_reactor;', + 'PEMixingReactorBlock' : s + 'pid.vessels.mixing_reactor;', // 'PEHydrodesulferizationBlock' NA // 'PEHydrocrackingBlock' NA - 'PEPlateTowerBlock' : 'shape=mxgraph.pid2misc.column;columnType=baffle;', - 'PEPackedTowerBlock' : 'shape=mxgraph.pid2misc.column;columnType=fixed;', + 'PEPlateTowerBlock' : s + 'pid2misc.column;columnType=baffle;', + 'PEPackedTowerBlock' : s + 'pid2misc.column;columnType=fixed;', // 'PEAutomaticStokerBlock' NA // 'PEOilBurnerBlock' NA // 'PECounterflowForcedDraftBlock' NA // 'PECounterflowNaturalDraftBlock' NA // 'PECrossflowInductedBlock' NA - 'PEFurnaceBlock' : 'shape=mxgraph.pid.vessels.furnace;', + 'PEFurnaceBlock' : s + 'pid.vessels.furnace;', // 'PEChimneyTowerBlock' NA //Piping // 'PEOneToMany' EXT // 'PEMultilines' EXT 'PEMidArrow' : 'shape=triangle;', - 'PEButtWeld' : 'shape=mxgraph.sysml.x;', - 'PETopToTop' : 'shape=mxgraph.pid.vessels.container,_tank,_cistern;', + 'PEButtWeld' : s + 'sysml.x;', + 'PETopToTop' : s + 'pid.vessels.container,_tank,_cistern;', // 'PESonicSignal' NA - 'PENuclear' : 'shape=mxgraph.electrical.waveforms.sine_wave;', + 'PENuclear' : s + 'electrical.waveforms.sine_wave;', // 'PEPneumatic' NA // 'PEHydraulicSignalLine' NA 'PEMechanicalLink' : 'shape=ellipse;', 'PESolderedSolvent' : 'shape=ellipse;', 'PEDoubleContainment' : 'shape=hexagon;', - 'PEFlange' : 'shape=mxgraph.pid.piping.double_flange;', - 'PEFlange2' : 'shape=mxgraph.pid.piping.flange_in;flipH=1;', - 'PEEndCap' : 'shape=mxgraph.pid.piping.cap;', - 'PEEndCap2' : 'shape=mxgraph.pid.vessels.container,_tank,_cistern;direction=north;', - 'PEBreather' : 'shape=mxgraph.pid.piping.breather;', - 'PEElectronicallyInsulated' : 'shape=mxgraph.pid.piping.double_flange;', - 'PEReducer' : 'shape=mxgraph.pid.piping.concentric_reducer;', - 'PEInlineMixer' : 'shape=mxgraph.pid.piping.in-line_mixer;', + 'PEFlange' : s + 'pid.piping.double_flange;', + 'PEFlange2' : s + 'pid.piping.flange_in;flipH=1;', + 'PEEndCap' : s + 'pid.piping.cap;', + 'PEEndCap2' : s + 'pid.vessels.container,_tank,_cistern;direction=north;', + 'PEBreather' : s + 'pid.piping.breather;', + 'PEElectronicallyInsulated' : s + 'pid.piping.double_flange;', + 'PEReducer' : s + 'pid.piping.concentric_reducer;', + 'PEInlineMixer' : s + 'pid.piping.in-line_mixer;', // 'PESeparator' NA // 'PEBurstingDisc' NA - 'PEFlameArrester' : 'shape=mxgraph.pid.piping.flame_arrestor;', + 'PEFlameArrester' : s + 'pid.piping.flame_arrestor;', // 'PEFlameArrester2' NA - 'PEDetonationArrester' : 'shape=mxgraph.pid.piping.detonation_arrestor;', + 'PEDetonationArrester' : s + 'pid.piping.detonation_arrestor;', // 'PEDrainSilencer' NA 'PETriangleSeparator' : 'shape=triangle;direction=west;', // 'PETriangleSeparator2' NA - 'PETundish' : 'shape=mxgraph.ios7.misc.left;', - 'PEOpenVent' : 'shape=mxgraph.pid.vessels.vent_(bent);', + 'PETundish' : s + 'ios7.misc.left;', + 'PEOpenVent' : s + 'pid.vessels.vent_(bent);', // 'PESiphonDrain' NA - 'PERemovableSpool' : 'shape=mxgraph.pid.piping.removable_spool;', - 'PEYTypeStrainer' : 'shape=mxgraph.pid.piping.y-type_strainer;', - 'PEDiverterValve' : 'shape=mxgraph.pid.piping.diverter_valve;', - 'PEPulsationDampener' : 'shape=mxgraph.pid.piping.pulsation_dampener;', - 'PEDuplexStrainer' : 'shape=mxgraph.pid.piping.duplex_strainer;', - 'PEBasketStrainer' : 'shape=mxgraph.pid.piping.basket_strainer;', - 'PEVentSilencer' : 'shape=mxgraph.pid.piping.vent_silencer;', - 'PEInlineSilencer' : 'shape=mxgraph.pid.piping.in-line_silencer;', - 'PESteamTrap' : 'shape=mxgraph.pid.piping.steam_trap;', - 'PEDesuperheater' : 'shape=mxgraph.pid.piping.desuper_heater;', - 'PEEjectorOrEductor' : 'shape=mxgraph.pid.fittings.injector;', - 'PEExhaustHead' : 'shape=mxgraph.pid.piping.exhaust_head;', - 'PERotaryValve' : 'shape=mxgraph.pid.piping.rotary_valve;', - 'PEExpansionJoint' : 'shape=mxgraph.pid.piping.expansion_joint;', + 'PERemovableSpool' : s + 'pid.piping.removable_spool;', + 'PEYTypeStrainer' : s + 'pid.piping.y-type_strainer;', + 'PEDiverterValve' : s + 'pid.piping.diverter_valve;', + 'PEPulsationDampener' : s + 'pid.piping.pulsation_dampener;', + 'PEDuplexStrainer' : s + 'pid.piping.duplex_strainer;', + 'PEBasketStrainer' : s + 'pid.piping.basket_strainer;', + 'PEVentSilencer' : s + 'pid.piping.vent_silencer;', + 'PEInlineSilencer' : s + 'pid.piping.in-line_silencer;', + 'PESteamTrap' : s + 'pid.piping.steam_trap;', + 'PEDesuperheater' : s + 'pid.piping.desuper_heater;', + 'PEEjectorOrEductor' : s + 'pid.fittings.injector;', + 'PEExhaustHead' : s + 'pid.piping.exhaust_head;', + 'PERotaryValve' : s + 'pid.piping.rotary_valve;', + 'PEExpansionJoint' : s + 'pid.piping.expansion_joint;', //Vessels 'PEVesselBlock' : 'shape=rect;', //EXT - 'PEOpenTankBlock' : 'shape=mxgraph.pid.vessels.container,_tank,_cistern;', //EXT + 'PEOpenTankBlock' : s + 'pid.vessels.container,_tank,_cistern;', //EXT // 'PEOpenTopTank' NA 'PEClosedTankBlock' : 'shape=rect;', //EXT - 'PEStorageSphereBlock' : 'shape=mxgraph.pid.vessels.storage_sphere;', - 'PEColumnBlock' : 'shape=mxgraph.pid.vessels.pressurized_vessel;', //EXT - 'PEBagBlock' : 'shape=mxgraph.pid.vessels.bag;', - 'PEGasCylinderBlock' : 'shape=mxgraph.pid.vessels.gas_bottle;', - 'PEGasHolderBlock' : 'shape=mxgraph.pid.vessels.gas_holder;', - 'PEClarifierBlock' : 'shape=mxgraph.pid.vessels.bunker_(conical_bottom);', + 'PEStorageSphereBlock' : s + 'pid.vessels.storage_sphere;', + 'PEColumnBlock' : s + 'pid.vessels.pressurized_vessel;', //EXT + 'PEBagBlock' : s + 'pid.vessels.bag;', + 'PEGasCylinderBlock' : s + 'pid.vessels.gas_bottle;', + 'PEGasHolderBlock' : s + 'pid.vessels.gas_holder;', + 'PEClarifierBlock' : s + 'pid.vessels.bunker_(conical_bottom);', // 'PETankBlock' NA - 'PETrayColumnBlock' : 'shape=mxgraph.pid2misc.column;columnType=tray;', - 'PEReactionVesselBlock' : 'shape=mxgraph.pid.vessels.reactor;', - 'PEBin' : 'shape=mxgraph.pid.vessels.tank_(conical_bottom);', - 'PEDomeRoofTank' : 'shape=mxgraph.pid.vessels.tank_(dished_roof);', - 'PEConeRoofTank' : 'shape=mxgraph.pid.vessels.tank_(conical_roof);', + 'PETrayColumnBlock' : s + 'pid2misc.column;columnType=tray;', + 'PEReactionVesselBlock' : s + 'pid.vessels.reactor;', + 'PEBin' : s + 'pid.vessels.tank_(conical_bottom);', + 'PEDomeRoofTank' : s + 'pid.vessels.tank_(dished_roof);', + 'PEConeRoofTank' : s + 'pid.vessels.tank_(conical_roof);', // 'PEInternalFloatingRoof' NA // 'PEDoubleWallTank' NA // 'PEOnionTank' NA //Heat Exchangers - 'PEBoilerBlock' : 'shape=mxgraph.pid.misc.boiler_(dome);', - 'PEEquipmentBoilerBlock' : 'shape=mxgraph.pid.misc.boiler_(dome);', - 'PEReboilerBlock' : 'shape=mxgraph.pid.heat_exchangers.reboiler;', - 'PECondenserBlock' : 'shape=mxgraph.pid.heat_exchangers.heat_exchanger_(straight_tubes);', - 'PEEquipmentCondenserBlock' : 'shape=mxgraph.pid.heat_exchangers.condenser;', + 'PEBoilerBlock' : s + 'pid.misc.boiler_(dome);', + 'PEEquipmentBoilerBlock' : s + 'pid.misc.boiler_(dome);', + 'PEReboilerBlock' : s + 'pid.heat_exchangers.reboiler;', + 'PECondenserBlock' : s + 'pid.heat_exchangers.heat_exchanger_(straight_tubes);', + 'PEEquipmentCondenserBlock' : s + 'pid.heat_exchangers.condenser;', // 'PEEvaporativeCondenserBlock' NA - 'PECoolingTowerBlock' : 'shape=mxgraph.pid.misc.cooling_tower;', - 'PEHeatExchangerBlock' : 'shape=mxgraph.pid.heat_exchangers.shell_and_tube_heat_exchanger_1;', + 'PECoolingTowerBlock' : s + 'pid.misc.cooling_tower;', + 'PEHeatExchangerBlock' : s + 'pid.heat_exchangers.shell_and_tube_heat_exchanger_1;', // 'PEAirCooledExchangerBlock' NA - 'PEHairpinExchangerBlock' : 'shape=mxgraph.pid.heat_exchangers.hairpin_exchanger;', - 'PEPlateAndFrameHeatExchangerBlock' : 'shape=mxgraph.pid.heat_exchangers.plate_and_frame_heat_exchanger;', - 'PESpiralHeatExchanger' : 'shape=mxgraph.pid.heat_exchangers.spiral_heat_exchanger;', - 'PEUTubeHeatExchangerBlock' : 'shape=mxgraph.pid.heat_exchangers.u-tube_heat_exchanger;', - 'PEDoublePipeHeatBlock' : 'shape=mxgraph.pid.heat_exchangers.double_pipe_heat_exchanger;', - 'PEShellAndTubeHeat1Block' : 'shape=mxgraph.pid.heat_exchangers.shell_and_tube_heat_exchanger_1;', - 'PEShellAndTubeHeat2Block' : 'shape=mxgraph.pid.heat_exchangers.shell_and_tube_heat_exchanger_2;', - 'PEShellAndTubeHeat3Block' : 'shape=mxgraph.pid.heat_exchangers.shell_and_tube_heat_exchanger_1;direction=north;', - 'PESinglePassHeatBlock' : 'shape=mxgraph.pid.heat_exchangers.single_pass_heat_exchanger;', - 'PEHeaterBlock' : 'shape=mxgraph.pid.heat_exchangers.heater;', + 'PEHairpinExchangerBlock' : s + 'pid.heat_exchangers.hairpin_exchanger;', + 'PEPlateAndFrameHeatExchangerBlock' : s + 'pid.heat_exchangers.plate_and_frame_heat_exchanger;', + 'PESpiralHeatExchanger' : s + 'pid.heat_exchangers.spiral_heat_exchanger;', + 'PEUTubeHeatExchangerBlock' : s + 'pid.heat_exchangers.u-tube_heat_exchanger;', + 'PEDoublePipeHeatBlock' : s + 'pid.heat_exchangers.double_pipe_heat_exchanger;', + 'PEShellAndTubeHeat1Block' : s + 'pid.heat_exchangers.shell_and_tube_heat_exchanger_1;', + 'PEShellAndTubeHeat2Block' : s + 'pid.heat_exchangers.shell_and_tube_heat_exchanger_2;', + 'PEShellAndTubeHeat3Block' : s + 'pid.heat_exchangers.shell_and_tube_heat_exchanger_1;direction=north;', + 'PESinglePassHeatBlock' : s + 'pid.heat_exchangers.single_pass_heat_exchanger;', + 'PEHeaterBlock' : s + 'pid.heat_exchangers.heater;', //Pumps - 'PEEjectorInjectorBlock' : 'shape=mxgraph.pid.fittings.injector;', - 'PECompressorTurbineBlock' : 'shape=mxgraph.pid.engines.turbine;flipH=1;', //EXT + 'PEEjectorInjectorBlock' : s + 'pid.fittings.injector;', + 'PECompressorTurbineBlock' : s + 'pid.engines.turbine;flipH=1;', //EXT // 'PEMotorDrivenTurbineBlock' NA - 'PETripleFanBlades2Block' : 'shape=mxgraph.pid2misc.fan;fanType=common;', - 'PEFanBlades2Block' : 'shape=mxgraph.pid2misc.fan;fanType=common;', //EXT - 'PECentrifugalPumpBlock' : 'shape=mxgraph.pid.pumps.centrifugal_pump_1;', //EXT - 'PECentrifugalPump' : 'shape=mxgraph.pid.pumps.centrifugal_pump_1;', - 'PECentrifugalPump2' : 'shape=mxgraph.pid.pumps.centrifugal_pump_2;', - 'PECentrifugalPump3' : 'shape=mxgraph.pid.pumps.centrifugal_pump_1;flipH=1;', - 'PEGearPumpBlock' : 'shape=mxgraph.pid.pumps.gear_pump;', - 'PEHorizontalPump' : 'shape=mxgraph.pid.pumps.horizontal_pump;', - 'PEProgressiveCavityPump' : 'shape=mxgraph.pid.pumps.cavity_pump;flipH=1;flipV=1;', - 'PEScrewPump' : 'shape=mxgraph.pid.pumps.screw_pump;', - 'PEScrewPump2' : 'shape=mxgraph.pid.pumps.screw_pump_2;flipH=1;', - 'PESumpPump' : 'shape=mxgraph.pid.pumps.sump_pump;', - 'PEVacuumPump' : 'shape=mxgraph.pid.pumps.vacuum_pump;', - 'PEVerticalPump' : 'shape=mxgraph.pid.pumps.vertical_pump;', - 'PEVerticalPump2' : 'shape=mxgraph.pid.pumps.vertical_pump;', + 'PETripleFanBlades2Block' : s + 'pid2misc.fan;fanType=common;', + 'PEFanBlades2Block' : s + 'pid2misc.fan;fanType=common;', //EXT + 'PECentrifugalPumpBlock' : s + 'pid.pumps.centrifugal_pump_1;', //EXT + 'PECentrifugalPump' : s + 'pid.pumps.centrifugal_pump_1;', + 'PECentrifugalPump2' : s + 'pid.pumps.centrifugal_pump_2;', + 'PECentrifugalPump3' : s + 'pid.pumps.centrifugal_pump_1;flipH=1;', + 'PEGearPumpBlock' : s + 'pid.pumps.gear_pump;', + 'PEHorizontalPump' : s + 'pid.pumps.horizontal_pump;', + 'PEProgressiveCavityPump' : s + 'pid.pumps.cavity_pump;flipH=1;flipV=1;', + 'PEScrewPump' : s + 'pid.pumps.screw_pump;', + 'PEScrewPump2' : s + 'pid.pumps.screw_pump_2;flipH=1;', + 'PESumpPump' : s + 'pid.pumps.sump_pump;', + 'PEVacuumPump' : s + 'pid.pumps.vacuum_pump;', + 'PEVerticalPump' : s + 'pid.pumps.vertical_pump;', + 'PEVerticalPump2' : s + 'pid.pumps.vertical_pump;', //Instruments - 'PEIndicatorBlock' : 'shape=mxgraph.pid2inst.discInst;mounting=room;', //EXT - 'PEIndicator2Block' : 'shape=mxgraph.pid2inst.indicator;mounting=room;indType=inst;', //EXT - 'PEIndicator3Block' : 'shape=mxgraph.pid2inst.discInst;mounting=field;', - 'PEIndicator4Block' : 'shape=mxgraph.pid2inst.indicator;mounting=field;indType=inst;', + 'PEIndicatorBlock' : s + 'pid2inst.discInst;mounting=room;', //EXT + 'PEIndicator2Block' : s + 'pid2inst.indicator;mounting=room;indType=inst;', //EXT + 'PEIndicator3Block' : s + 'pid2inst.discInst;mounting=field;', + 'PEIndicator4Block' : s + 'pid2inst.indicator;mounting=field;indType=inst;', // 'PEIndicator5Block' NA - 'PESharedIndicatorBlock' : 'shape=mxgraph.pid2inst.sharedCont;mounting=room;', //EXT - 'PESharedIndicator2Block' : 'shape=mxgraph.pid2inst.indicator;mounting=room;indType=ctrl;', //EXT + 'PESharedIndicatorBlock' : s + 'pid2inst.sharedCont;mounting=room;', //EXT + 'PESharedIndicator2Block' : s + 'pid2inst.indicator;mounting=room;indType=ctrl;', //EXT // 'PEComputerIndicatorBlock' NA - 'PEProgrammableIndicatorBlock' : 'shape=mxgraph.pid2inst.progLogCont;mounting=room;', //EXT + 'PEProgrammableIndicatorBlock' : s + 'pid2inst.progLogCont;mounting=room;', //EXT //Valves - 'PEGateValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=gate;', //EXT - 'PEGlobeValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=globe;', //EXT - 'PEControlValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=gate;actuator=diaph;', //EXT - 'PENeedleValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=needle;', + 'PEGateValveBlock' : s + 'pid2valves.valve;valveType=gate;', //EXT + 'PEGlobeValveBlock' : s + 'pid2valves.valve;valveType=globe;', //EXT + 'PEControlValveBlock' : s + 'pid2valves.valve;valveType=gate;actuator=diaph;', //EXT + 'PENeedleValveBlock' : s + 'pid2valves.valve;valveType=needle;', // 'PEButterflyValveBlock' NA - 'PEButterflyValve2Block' : 'shape=mxgraph.pid2valves.valve;valveType=butterfly;', + 'PEButterflyValve2Block' : s + 'pid2valves.valve;valveType=butterfly;', // 'PEBallValveBlock' NA - 'PEDiaphragmBlock' : 'shape=mxgraph.pid2valves.valve;valveType=ball;', + 'PEDiaphragmBlock' : s + 'pid2valves.valve;valveType=ball;', // 'PEPlugValveBlock' NA - 'PECheckValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=check;', - 'PECheckValve2Block' : 'shape=mxgraph.pid2valves.valve;valveType=check;', - 'PEAngleValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=angle;actuator=none;', - 'PEAngleGlobeValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=angleGlobe;actuator=man;flipH=1;', //EXT - 'PEPoweredValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=gate;actuator=digital;', //EXT - 'PEFloatOperatedValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=gate;actuator=singActing;', + 'PECheckValveBlock' : s + 'pid2valves.valve;valveType=check;', + 'PECheckValve2Block' : s + 'pid2valves.valve;valveType=check;', + 'PEAngleValveBlock' : s + 'pid2valves.valve;valveType=angle;actuator=none;', + 'PEAngleGlobeValveBlock' : s + 'pid2valves.valve;valveType=angleGlobe;actuator=man;flipH=1;', //EXT + 'PEPoweredValveBlock' : s + 'pid2valves.valve;valveType=gate;actuator=digital;', //EXT + 'PEFloatOperatedValveBlock' : s + 'pid2valves.valve;valveType=gate;actuator=singActing;', // 'PENeedleValve2Block' NA - 'PEThreeWayValveBlock' : 'shape=mxgraph.pid2valves.valve;valveType=threeWay;actuator=none;', + 'PEThreeWayValveBlock' : s + 'pid2valves.valve;valveType=threeWay;actuator=none;', // 'PEFourWayValveBlock' NA // 'PEGaugeBlock' NA - 'PEBleederValveBlock' : 'shape=mxgraph.pid2valves.blockBleedValve;actuator=none;', + 'PEBleederValveBlock' : s + 'pid2valves.blockBleedValve;actuator=none;', // 'PEOrificeBlock' NA - 'PERotameterBlock' : 'shape=mxgraph.pid.flow_sensors.rotameter;flipH=1;', + 'PERotameterBlock' : s + 'pid.flow_sensors.rotameter;flipH=1;', //Venn Gradient 'VennGradientColor1' : 'shape=ellipse;', 'VennGradientColor2' : 'shape=ellipse;', @@ -1295,127 +1428,127 @@ 'VennPlainColor7' : 'shape=ellipse;', 'VennPlainColor8' : 'shape=ellipse;', //iOS Devices - 'iOS7DeviceiPhone5Portrait' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT - 'iOS7DeviceiPhone5Landscape' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT - 'iOS7DeviceiPadPortrait' : 'shape=mxgraph.ios.iPad;bgStyle=bgGreen;', //EXT - 'iOS7DeviceiPadLandscape' : 'shape=mxgraph.ios.iPad;bgStyle=bgGreen;', //EXT - 'iOS7DeviceiPhone6Portrait' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT - 'iOS7DeviceiPhone6Landscape' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT - 'iOS7DeviceiPhone6PlusPortrait' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT - 'iOS7DeviceiPhone6PlusLandscape' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', //EXT + 'iOS7DeviceiPhone5Portrait' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT + 'iOS7DeviceiPhone5Landscape' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT + 'iOS7DeviceiPadPortrait' : s + 'ios.iPad;bgStyle=bgGreen;', //EXT + 'iOS7DeviceiPadLandscape' : s + 'ios.iPad;bgStyle=bgGreen;', //EXT + 'iOS7DeviceiPhone6Portrait' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT + 'iOS7DeviceiPhone6Landscape' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT + 'iOS7DeviceiPhone6PlusPortrait' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT + 'iOS7DeviceiPhone6PlusLandscape' : s + 'ios.iPhone;bgStyle=bgGreen;', //EXT //iPhone Elements - 'iOS7StatusBariPhone' : 'shape=mxgraph.ios7ui.appBar;', + 'iOS7StatusBariPhone' : s + 'ios7ui.appBar;', // 'iOS7NavBariPhone' NA // 'iOS7TabsiPhone' EXT // 'iOS7iPhoneActionSheet' EXT - 'iOS7iPhoneKeyboard' : 'shape=mxgraph.ios7.misc.keyboard_(letters);', + 'iOS7iPhoneKeyboard' : s + 'ios7.misc.keyboard_(letters);', // 'iOS7TableView' EXT //iPad Elements - 'iOS7StatusBariPad' : 'shape=mxgraph.ios7ui.appBar;', + 'iOS7StatusBariPad' : s + 'ios7ui.appBar;', // 'iOS7NavBariPad' EXT // 'iOS7TabsiPad' EXT // 'iOS7iPadActionSheet' EXT - 'iOS7iPadKeyboard' : 'shape=mxgraph.ios7.misc.keyboard_(letters);', + 'iOS7iPadKeyboard' : s + 'ios7.misc.keyboard_(letters);', // 'iOS7SplitView' // 'iOS7iPadPopover' //Common Elements // 'iOS7AlertDialog' EXT - 'iOS7ProgressBar' : 'shape=mxgraph.ios7ui.downloadBar;', //EXT - 'iOS7Slider' : 'shape=mxgraph.ios7ui.searchBox;', //EXT - 'iOS7SearchBar' : 'shape=mxgraph.ios7ui.searchBox;', + 'iOS7ProgressBar' : s + 'ios7ui.downloadBar;', //EXT + 'iOS7Slider' : s + 'ios7ui.searchBox;', //EXT + 'iOS7SearchBar' : s + 'ios7ui.searchBox;', 'iOS7Button' : 'shape=rect;', 'iOS7TextField' : 'shape=rect;', 'iOS7TextView' : 'shape=rect;', // 'iOS7SegmentedControl' EXT - 'iOS7Toggle' : 'shape=mxgraph.ios7ui.onOffButton;buttonState=on;strokeColor=#38D145;strokeColor2=#aaaaaa;fillColor=#38D145;fillColor2=#ffffff;', //EXT - 'iOS7Stepper' : 'shape=mxgraph.ios7.misc.adjust;fillColor=#ffffff;gradientColor=none;', - 'iOS7PageControls' : 'shape=mxgraph.ios7ui.pageControl;fillColor=#666666;strokeColor=#bbbbbb;', //EXT + 'iOS7Toggle' : s + 'ios7ui.onOffButton;buttonState=on;strokeColor=#38D145;strokeColor2=#aaaaaa;fillColor=#38D145;fillColor2=#ffffff;', //EXT + 'iOS7Stepper' : s + 'ios7.misc.adjust;fillColor=#ffffff;gradientColor=none;', + 'iOS7PageControls' : s + 'ios7ui.pageControl;fillColor=#666666;strokeColor=#bbbbbb;', //EXT 'iOS7Block' : 'shape=rect;', // 'iOS7DatePicker' EXT // 'iOS7TimePicker' EXT // 'iOS7CountdownPicker' EXT //iOS Icons - 'iOS7IconArrow left' : 'shape=mxgraph.ios7.misc.left;', - 'iOS7IconArrow' : 'shape=mxgraph.ios7.misc.right;', - 'iOS7IconArrow up' : 'shape=mxgraph.ios7.misc.up;', - 'iOS7IconArrow down' : 'shape=mxgraph.ios7.misc.down;', - 'iOS7IconWifi' : 'shape=mxgraph.ios7.icons.wifi;', - 'iOS7IconBluetooth' : 'shape=mxgraph.ios7.icons.bluetooth;', - 'iOS7IconBattery' : 'shape=mxgraph.ios7.icons.battery;', - 'iOS7IconSiri' : 'shape=mxgraph.ios7.icons.microphone;', - 'iOS7IconCheck' : 'shape=mxgraph.ios7.icons.select;', - 'iOS7IconCreate' : 'shape=mxgraph.ios7.icons.add;', - 'iOS7IconInfo' : 'shape=mxgraph.ios7.icons.info;', - 'iOS7IconLocation' : 'shape=mxgraph.ios7.icons.location_2;', - 'iOS7IconQuestion' : 'shape=mxgraph.ios7.icons.help;', - 'iOS7IconSearch' : 'shape=mxgraph.ios7.icons.looking_glass;', - 'iOS7IconToolbox' : 'shape=mxgraph.ios7.icons.briefcase;', - 'iOS7IconOptions' : 'shape=mxgraph.ios7.icons.options;', - 'iOS7IconShare' : 'shape=mxgraph.ios7.icons.share;', - 'iOS7IconTyping' : 'shape=mxgraph.ios7.icons.message;', - 'iOS7IconCopy' : 'shape=mxgraph.ios7.icons.folders_2;', - 'iOS7IconChat' : 'shape=mxgraph.ios7.icons.messages;', - 'iOS7IconOrganize' : 'shape=mxgraph.ios7.icons.folder;', - 'iOS7IconTrash' : 'shape=mxgraph.ios7.icons.trashcan;', - 'iOS7IconReply' : 'shape=mxgraph.ios7.icons.back;', - 'iOS7IconArchive' : 'shape=mxgraph.ios7.icons.box;', - 'iOS7IconCompose' : 'shape=mxgraph.ios7.icons.compose;', - 'iOS7IconSend' : 'shape=mxgraph.ios7.icons.pointer;', - 'iOS7IconDrawer' : 'shape=mxgraph.ios7.icons.storage;', - 'iOS7IconMail' : 'shape=mxgraph.ios7.icons.mail;', - 'iOS7IconDocument' : 'shape=mxgraph.ios7.icons.document;', - 'iOS7IconFlag' : 'shape=mxgraph.ios7.icons.flag;', - 'iOS7IconBookmarks' : 'shape=mxgraph.ios7.icons.book;', - 'iOS7IconGlasses' : 'shape=mxgraph.ios7.icons.glasses;', - 'iOS7IconFiles' : 'shape=mxgraph.ios7.icons.folders;', - 'iOS7IconDownloads' : 'shape=mxgraph.ios7.icons.down;', - 'iOS7IconLock' : 'shape=mxgraph.ios7.icons.locked;', + 'iOS7IconArrow left' : s + 'ios7.misc.left;', + 'iOS7IconArrow' : s + 'ios7.misc.right;', + 'iOS7IconArrow up' : s + 'ios7.misc.up;', + 'iOS7IconArrow down' : s + 'ios7.misc.down;', + 'iOS7IconWifi' : s + 'ios7.icons.wifi;', + 'iOS7IconBluetooth' : s + 'ios7.icons.bluetooth;', + 'iOS7IconBattery' : s + 'ios7.icons.battery;', + 'iOS7IconSiri' : s + 'ios7.icons.microphone;', + 'iOS7IconCheck' : s + 'ios7.icons.select;', + 'iOS7IconCreate' : s + 'ios7.icons.add;', + 'iOS7IconInfo' : s + 'ios7.icons.info;', + 'iOS7IconLocation' : s + 'ios7.icons.location_2;', + 'iOS7IconQuestion' : s + 'ios7.icons.help;', + 'iOS7IconSearch' : s + 'ios7.icons.looking_glass;', + 'iOS7IconToolbox' : s + 'ios7.icons.briefcase;', + 'iOS7IconOptions' : s + 'ios7.icons.options;', + 'iOS7IconShare' : s + 'ios7.icons.share;', + 'iOS7IconTyping' : s + 'ios7.icons.message;', + 'iOS7IconCopy' : s + 'ios7.icons.folders_2;', + 'iOS7IconChat' : s + 'ios7.icons.messages;', + 'iOS7IconOrganize' : s + 'ios7.icons.folder;', + 'iOS7IconTrash' : s + 'ios7.icons.trashcan;', + 'iOS7IconReply' : s + 'ios7.icons.back;', + 'iOS7IconArchive' : s + 'ios7.icons.box;', + 'iOS7IconCompose' : s + 'ios7.icons.compose;', + 'iOS7IconSend' : s + 'ios7.icons.pointer;', + 'iOS7IconDrawer' : s + 'ios7.icons.storage;', + 'iOS7IconMail' : s + 'ios7.icons.mail;', + 'iOS7IconDocument' : s + 'ios7.icons.document;', + 'iOS7IconFlag' : s + 'ios7.icons.flag;', + 'iOS7IconBookmarks' : s + 'ios7.icons.book;', + 'iOS7IconGlasses' : s + 'ios7.icons.glasses;', + 'iOS7IconFiles' : s + 'ios7.icons.folders;', + 'iOS7IconDownloads' : s + 'ios7.icons.down;', + 'iOS7IconLock' : s + 'ios7.icons.locked;', // 'iOS7IconUnlock' NA - 'iOS7IconCloud' : 'shape=mxgraph.ios7.icons.cloud;', + 'iOS7IconCloud' : s + 'ios7.icons.cloud;', // 'iOS7IconCloud-lock' NA - 'iOS7IconOrientation Lock' : 'shape=mxgraph.ios7.icons.orientation_lock;', + 'iOS7IconOrientation Lock' : s + 'ios7.icons.orientation_lock;', // 'iOS7IconNotification' NA - 'iOS7IconContacts' : 'shape=mxgraph.ios7.icons.user;', - 'iOS7IconGlobal' : 'shape=mxgraph.ios7.icons.globe;', - 'iOS7IconSettings' : 'shape=mxgraph.ios7.icons.settings;', - 'iOS7IconAirplay' : 'shape=mxgraph.ios7.icons.move_to_folder;', - 'iOS7IconCamera' : 'shape=mxgraph.ios7.icons.camera;', - 'iOS7IconAirplane' : 'shape=mxgraph.signs.transportation.airplane_6;direction=south;', - 'iOS7IconCalculator' : 'shape=mxgraph.ios7.icons.calculator;', - 'iOS7IconPreferences' : 'shape=mxgraph.ios7.icons.most_viewed;', - 'iOS7IconPhone' : 'shape=mxgraph.signs.tech.telephone_3;', - 'iOS7IconKeypad' : 'shape=mxgraph.ios7.icons.keypad;', - 'iOS7IconVoicemail' : 'shape=mxgraph.ios7.icons.tape;', - 'iOS7IconStar' : 'shape=mxgraph.ios7.icons.star;', - 'iOS7IconMost Viewed' : 'shape=mxgraph.ios7.icons.most_viewed;', - 'iOS7IconVideo' : 'shape=mxgraph.ios7.icons.video_conversation;', - 'iOS7IconVolumne Controls' : 'shape=mxgraph.ios7.icons.volume;', - 'iOS7IconLocation pin' : 'shape=mxgraph.ios7.icons.location;', - 'iOS7IconCalendar' : 'shape=mxgraph.ios7.icons.calendar;', - 'iOS7IconAlarm' : 'shape=mxgraph.ios7.icons.alarm_clock;', - 'iOS7IconClock' : 'shape=mxgraph.ios7.icons.clock;', - 'iOS7IconTimer' : 'shape=mxgraph.ios7.icons.gauge;', - 'iOS7IconVolume down' : 'shape=mxgraph.ios7.icons.silent;', - 'iOS7IconVolume' : 'shape=mxgraph.ios7.icons.volume_2;', - 'iOS7IconVolume up' : 'shape=mxgraph.ios7.icons.loud;', - 'iOS7IconRepeat' : 'shape=mxgraph.ios7.icons.reload;', - 'iOS7IconRewind' : 'shape=mxgraph.ios7.icons.backward;', - 'iOS7IconPlay' : 'shape=mxgraph.ios7.icons.play;', - 'iOS7IconPause' : 'shape=mxgraph.ios7.icons.pause;', - 'iOS7IconFast forward' : 'shape=mxgraph.ios7.icons.forward;', + 'iOS7IconContacts' : s + 'ios7.icons.user;', + 'iOS7IconGlobal' : s + 'ios7.icons.globe;', + 'iOS7IconSettings' : s + 'ios7.icons.settings;', + 'iOS7IconAirplay' : s + 'ios7.icons.move_to_folder;', + 'iOS7IconCamera' : s + 'ios7.icons.camera;', + 'iOS7IconAirplane' : s + 'signs.transportation.airplane_6;direction=south;', + 'iOS7IconCalculator' : s + 'ios7.icons.calculator;', + 'iOS7IconPreferences' : s + 'ios7.icons.most_viewed;', + 'iOS7IconPhone' : s + 'signs.tech.telephone_3;', + 'iOS7IconKeypad' : s + 'ios7.icons.keypad;', + 'iOS7IconVoicemail' : s + 'ios7.icons.tape;', + 'iOS7IconStar' : s + 'ios7.icons.star;', + 'iOS7IconMost Viewed' : s + 'ios7.icons.most_viewed;', + 'iOS7IconVideo' : s + 'ios7.icons.video_conversation;', + 'iOS7IconVolumne Controls' : s + 'ios7.icons.volume;', + 'iOS7IconLocation pin' : s + 'ios7.icons.location;', + 'iOS7IconCalendar' : s + 'ios7.icons.calendar;', + 'iOS7IconAlarm' : s + 'ios7.icons.alarm_clock;', + 'iOS7IconClock' : s + 'ios7.icons.clock;', + 'iOS7IconTimer' : s + 'ios7.icons.gauge;', + 'iOS7IconVolume down' : s + 'ios7.icons.silent;', + 'iOS7IconVolume' : s + 'ios7.icons.volume_2;', + 'iOS7IconVolume up' : s + 'ios7.icons.loud;', + 'iOS7IconRepeat' : s + 'ios7.icons.reload;', + 'iOS7IconRewind' : s + 'ios7.icons.backward;', + 'iOS7IconPlay' : s + 'ios7.icons.play;', + 'iOS7IconPause' : s + 'ios7.icons.pause;', + 'iOS7IconFast forward' : s + 'ios7.icons.forward;', // 'iOS7IconArtists' NA // 'iOS7IconPlaylist' NA - 'iOS7IconControls' : 'shape=mxgraph.ios7.icons.controls;', + 'iOS7IconControls' : s + 'ios7.icons.controls;', // 'iOS7IconShuffle' NA - 'iOS7IconPrivacy' : 'shape=mxgraph.ios7.icons.privacy;', - 'iOS7IconLink' : 'shape=mxgraph.ios7.icons.link;', - 'iOS7IconLight' : 'shape=mxgraph.ios7.icons.flashlight;', - 'iOS7IconBrightness' : 'shape=mxgraph.ios7.icons.sun;', - 'iOS7IconHeart' : 'shape=mxgraph.ios7.icons.heart;', - 'iOS7IconJava' : 'shape=mxgraph.ios7.icons.cup;', - 'iOS7IconBox' : 'shape=mxgraph.ios7.icons.bag;', - 'iOS7IconEye' : 'shape=mxgraph.ios7.icons.eye;', - 'iOS7IconDo not disturb' : 'shape=mxgraph.ios7.icons.moon;', + 'iOS7IconPrivacy' : s + 'ios7.icons.privacy;', + 'iOS7IconLink' : s + 'ios7.icons.link;', + 'iOS7IconLight' : s + 'ios7.icons.flashlight;', + 'iOS7IconBrightness' : s + 'ios7.icons.sun;', + 'iOS7IconHeart' : s + 'ios7.icons.heart;', + 'iOS7IconJava' : s + 'ios7.icons.cup;', + 'iOS7IconBox' : s + 'ios7.icons.bag;', + 'iOS7IconEye' : s + 'ios7.icons.eye;', + 'iOS7IconDo not disturb' : s + 'ios7.icons.moon;', //iOS Activity // 'iOS7ActivityAdd bookmark' NA // 'iOS7ActivityAdd to home screen' NA @@ -1427,8 +1560,8 @@ // 'iOS7ActivitySlideshow' NA // 'iOS7ActivityUse as wallpaper' NA //UI Containers - 'UI2BrowserBlock' : 'shape=mxgraph.mockup.containers.browserWindow;mainText=,;', //EXT - 'UI2WindowBlock' : 'shape=mxgraph.mockup.containers.window;strokeColor2=#008cff;strokeColor3=#c4c4c4;fontColor=#666666;mainText=;', + 'UI2BrowserBlock' : s + 'mockup.containers.browserWindow;mainText=,;', //EXT + 'UI2WindowBlock' : s + 'mockup.containers.window;strokeColor2=#008cff;strokeColor3=#c4c4c4;fontColor=#666666;mainText=;', // 'UI2DialogBlock' EXT 'UI2AreaBlock' : 'shape=rect;', 'UI2ElementBlock' : 'shape=rect;', @@ -1436,22 +1569,22 @@ // 'UI2TabBarContainerBlock' EXT // 'UI2TabBar2ContainerBlock' EXT // 'UI2VTabBarContainerBlock' EXT - 'UI2VScrollBlock' : 'shape=mxgraph.mockup.navigation.scrollBar;direction=north;', - 'UI2HScrollBlock' : 'shape=mxgraph.mockup.navigation.scrollBar;', - 'UI2VerticalSplitterBlock' : 'shape=mxgraph.mockup.forms.splitter;direction=north;', - 'UI2HorizontalSplitterBlock' : 'shape=mxgraph.mockup.forms.splitter;', + 'UI2VScrollBlock' : s + 'mockup.navigation.scrollBar;direction=north;', + 'UI2HScrollBlock' : s + 'mockup.navigation.scrollBar;', + 'UI2VerticalSplitterBlock' : s + 'mockup.forms.splitter;direction=north;', + 'UI2HorizontalSplitterBlock' : s + 'mockup.forms.splitter;', //UI Widgets - 'UI2ImageBlock' : 'shape=mxgraph.mockup.graphics.simpleIcon;', - 'UI2VideoBlock' : 'shape=mxgraph.mockup.containers.videoPlayer;barHeight=30;', - 'UI2AudioBlock' : 'shape=mxgraph.mockup.misc.playbackControls;', - 'UI2MapBlock' : 'shape=mxgraph.mockup.misc.map;', + 'UI2ImageBlock' : s + 'mockup.graphics.simpleIcon;', + 'UI2VideoBlock' : s + 'mockup.containers.videoPlayer;barHeight=30;', + 'UI2AudioBlock' : s + 'mockup.misc.playbackControls;', + 'UI2MapBlock' : s + 'mockup.misc.map;', // 'UI2CalendarBlock' NA - 'UI2BarChartBlock' : 'shape=mxgraph.mockup.graphics.barChart;strokeColor=none;strokeColor2=none;', - 'UI2ColumnChartBlock' : 'shape=mxgraph.mockup.graphics.columnChart;strokeColor=none;strokeColor2=none;', - 'UI2LineChartBlock' : 'shape=mxgraph.mockup.graphics.lineChart;strokeColor=none;', - 'UI2PieChartBlock' : 'shape=mxgraph.mockup.graphics.pieChart;parts=10,20,35;', - 'UI2WebcamBlock' : 'shape=mxgraph.mockup.containers.userMale;', - 'UI2CaptchaBlock' : 'shape=mxgraph.mockup.text.captcha;mainText=;', + 'UI2BarChartBlock' : s + 'mockup.graphics.barChart;strokeColor=none;strokeColor2=none;', + 'UI2ColumnChartBlock' : s + 'mockup.graphics.columnChart;strokeColor=none;strokeColor2=none;', + 'UI2LineChartBlock' : s + 'mockup.graphics.lineChart;strokeColor=none;', + 'UI2PieChartBlock' : s + 'mockup.graphics.pieChart;parts=10,20,35;', + 'UI2WebcamBlock' : s + 'mockup.containers.userMale;', + 'UI2CaptchaBlock' : s + 'mockup.text.captcha;mainText=;', // 'Image_ui_formatting_toolbar2' //UI Input 'UI2ButtonBlock' : 'shape=rect;rounded=1;', @@ -1459,14 +1592,14 @@ // 'UI2HorizontalCheckBoxBlock' EXT // 'UI2RadioBlock' EXT // 'UI2HorizontalRadioBlock' EXT - 'UI2ColorPickerBlock' : 'shape=mxgraph.mockup.forms.colorPicker;chosenColor=#aaddff;', + 'UI2ColorPickerBlock' : s + 'mockup.forms.colorPicker;chosenColor=#aaddff;', 'UI2TextInputBlock' : 'shape=rect;rounded=1;', - 'UI2SelectBlock' : 'shape=mxgraph.mockup.forms.comboBox;strokeColor=#999999;fillColor=#ddeeff;align=left;fillColor2=#aaddff;mainText=;fontColor=#666666;', - 'UI2VSliderBlock' : 'shape=mxgraph.mockup.forms.horSlider;sliderStyle=basic;sliderPos=20;handleStyle=circle;direction=north;', - 'UI2HSliderBlock' : 'shape=mxgraph.mockup.forms.horSlider;sliderStyle=basic;sliderPos=20;handleStyle=circle;', + 'UI2SelectBlock' : s + 'mockup.forms.comboBox;strokeColor=#999999;fillColor=#ddeeff;align=left;fillColor2=#aaddff;mainText=;fontColor=#666666;', + 'UI2VSliderBlock' : s + 'mockup.forms.horSlider;sliderStyle=basic;sliderPos=20;handleStyle=circle;direction=north;', + 'UI2HSliderBlock' : s + 'mockup.forms.horSlider;sliderStyle=basic;sliderPos=20;handleStyle=circle;', // 'UI2DatePickerBlock' NA - 'UI2SearchBlock' : 'shape=mxgraph.mockup.forms.searchBox;mainText=;flipH=1;', - 'UI2NumericStepperBlock' : 'shape=mxgraph.mockup.forms.spinner;spinLayout=right;spinStyle=normal;adjStyle=triangle;fillColor=#000000;mainText=;', + 'UI2SearchBlock' : s + 'mockup.forms.searchBox;mainText=;flipH=1;', + 'UI2NumericStepperBlock' : s + 'mockup.forms.spinner;spinLayout=right;spinStyle=normal;adjStyle=triangle;fillColor=#000000;mainText=;', // 'UI2TableBlock' EXT //UI Menus // 'UI2ButtonBarBlock' EXT @@ -1474,31 +1607,31 @@ // 'UI2LinkBarBlock' EXT // 'UI2BreadCrumbsBlock' EXT // 'UI2MenuBarBlock' EXT - 'UI2AtoZBlock' : 'shape=mxgraph.mockup.text.alphanumeric;linkText=;fontStyle=4;', - 'UI2PaginationBlock' : 'shape=mxgraph.mockup.navigation.pagination;linkText=;fontStyle=4;', + 'UI2AtoZBlock' : s + 'mockup.text.alphanumeric;linkText=;fontStyle=4;', + 'UI2PaginationBlock' : s + 'mockup.navigation.pagination;linkText=;fontStyle=4;', // 'UI2ContextMenuBlock' EXT // 'UI2TreePaneBlock'EXT - 'UI2PlaybackControlsBlock' : 'shape=mxgraph.mockup.misc.playbackControls;fillColor=#ffffff;strokeColor=#999999;fillColor2=#99ddff;strokeColor2=none;fillColor3=#ffffff;strokeColor3=none;', - 'Image_ui_formatting_toolbar' : 'shape=mxgraph.mockup.menus_and_buttons.font_style_selector_2;', + 'UI2PlaybackControlsBlock' : s + 'mockup.misc.playbackControls;fillColor=#ffffff;strokeColor=#999999;fillColor2=#99ddff;strokeColor2=none;fillColor3=#ffffff;strokeColor3=none;', + 'Image_ui_formatting_toolbar' : s + 'mockup.menus_and_buttons.font_style_selector_2;', //UI Misc - 'UI2ProgressBarBlock' : 'shape=mxgraph.mockup.misc.progressBar;fillColor2=#888888;barPos=25;', - 'UI2HelpIconBlock' : 'shape=mxgraph.mockup.misc.help_icon;', - 'UI2BraceNoteBlock' : 'shape=mxgraph.mockup.markup.curlyBrace;direction=north;', //EXT - 'UI2TooltipBlock' : 'shape=mxgraph.basic.rectangular_callout;flipV=1;', //EXT + 'UI2ProgressBarBlock' : s + 'mockup.misc.progressBar;fillColor2=#888888;barPos=25;', + 'UI2HelpIconBlock' : s + 'mockup.misc.help_icon;', + 'UI2BraceNoteBlock' : s + 'mockup.markup.curlyBrace;direction=north;', //EXT + 'UI2TooltipBlock' : s + 'basic.rectangular_callout;flipV=1;', //EXT 'UI2CalloutBlock' : 'shape=ellipse;', // 'UI2AlertBlock' EXT //iOS 6 iPad Elements - 'Image_ipad_ipad' : 'shape=mxgraph.ios.iPad;bgStyle=bgGreen;', + 'Image_ipad_ipad' : s + 'ios.iPad;bgStyle=bgGreen;', 'iPadGrayBackgroundBlock' : 'shape=rect;', - 'Image_ipad_top_bar' : 'shape=mxgraph.ios.iTopBar2;opacity=50;fillColor=#999999;strokeColor=#cccccc;', + 'Image_ipad_top_bar' : s + 'ios.iTopBar2;opacity=50;fillColor=#999999;strokeColor=#cccccc;', // 'Image_ipad_bar_gray' : 'shape=rect;', // 'Image_ipad_bar_semi_trans_black' : 'shape=rect;', // 'Image_ipad_bar_black' : 'shape=rect;', // 'Image_ipad_safari_top' NA - 'Image_ipad_search' : 'shape=mxgraph.mockup.forms.searchBox;mainText=;flipH=1;', + 'Image_ipad_search' : s + 'mockup.forms.searchBox;mainText=;flipH=1;', // 'Image_ipad_alert_dialog' EXT // 'Image_ipad_dialog' EXT - 'Image_ipad_popover' : 'shape=mxgraph.ios.iOption;barPos=50;pointerPos=top;buttonText=;', + 'Image_ipad_popover' : s + 'ios.iOption;barPos=50;pointerPos=top;buttonText=;', // 'Image_ipad_table' EXT // 'Image_ipad_vtab' EXT //iOS 6 iPad Controls @@ -1506,47 +1639,47 @@ 'Image_ipad_button_blue' : 'shape=rect;roudned=1;', 'Image_ipad_button_grayblue' : 'shape=rect;roudned=1;', 'Image_ipad_button_red' : 'shape=rect;roudned=1;', - 'Image_ipad_back_button_gray' : 'shape=mxgraph.ios.iButtonBack;buttonText=;fillColor=#eeeeee;fillColor2=#aaaaaa;', - 'Image_ipad_back_button_black' : 'shape=mxgraph.ios.iButtonBack;buttonText=;fillColor=#888888;fillColor2=#000000;', - 'Image_ipad_sort_handle' : 'shape=mxgraph.ios7.icons.options;', - 'Image_ipad_dropdown' : 'shape=mxgraph.ios.iComboBox;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;', + 'Image_ipad_back_button_gray' : s + 'ios.iButtonBack;buttonText=;fillColor=#eeeeee;fillColor2=#aaaaaa;', + 'Image_ipad_back_button_black' : s + 'ios.iButtonBack;buttonText=;fillColor=#888888;fillColor2=#000000;', + 'Image_ipad_sort_handle' : s + 'ios7.icons.options;', + 'Image_ipad_dropdown' : s + 'ios.iComboBox;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;', 'Image_ipad_email_name' : 'shape=rect;rounded=1;', - 'Image_ipad_prev_next' : 'shape=mxgraph.ios.iPrevNext;strokeColor=#444444;fillColor=#dddddd;fillColor2=#3D5565;fillColor3=#ffffff;', - 'Image_ipad_keyboard_portrait' : 'shape=mxgraph.ios.iKeybLett;', - 'Image_ipad_keyboard_landscape' : 'shape=mxgraph.ios.iKeybLett;', + 'Image_ipad_prev_next' : s + 'ios.iPrevNext;strokeColor=#444444;fillColor=#dddddd;fillColor2=#3D5565;fillColor3=#ffffff;', + 'Image_ipad_keyboard_portrait' : s + 'ios.iKeybLett;', + 'Image_ipad_keyboard_landscape' : s + 'ios.iKeybLett;', // 'Image_ipad_large_tabbed_button' EXT // 'Image_ipad_sort_button' EXT // 'Image_ipad_tab_bar' EXT - 'Image_ipad_slider' : 'shape=mxgraph.ios.iSlider;barPos=20;', + 'Image_ipad_slider' : s + 'ios.iSlider;barPos=20;', // 'Image_ipad_switch_off' //iOS 6 iPad Icons - 'Image_ipad_add_icon_blue' : 'shape=mxgraph.ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;', - 'Image_ipad_add_icon_green' : 'shape=mxgraph.ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;', - 'Image_ipad_remove_icon' : 'shape=mxgraph.ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;', - 'Image_ipad_arrow_icon' : 'shape=mxgraph.ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;', - 'Image_ipad_arrow' : 'shape=mxgraph.ios7.misc.more;', - 'Image_ipad_checkmark' : 'shape=mxgraph.ios7.misc.check;', + 'Image_ipad_add_icon_blue' : s + 'ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;', + 'Image_ipad_add_icon_green' : s + 'ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;', + 'Image_ipad_remove_icon' : s + 'ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;', + 'Image_ipad_arrow_icon' : s + 'ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;', + 'Image_ipad_arrow' : s + 'ios7.misc.more;', + 'Image_ipad_checkmark' : s + 'ios7.misc.check;', 'Image_ipad_check_off' : 'shape=ellipse;', //EXT 'Image_ipad_location_dot' : 'shape=ellipse;', 'Image_ipad_mark_as_read' : 'shape=ellipse;', - 'Image_ipad_pin_green' : 'shape=mxgraph.ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;', - 'Image_ipad_pin_red' : 'shape=mxgraph.ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;', + 'Image_ipad_pin_green' : s + 'ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;', + 'Image_ipad_pin_red' : s + 'ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;', 'Image_ipad_radio_off' : 'shape=ellipse;', //EXT 'Image_ipad_checkbox_off' : 'shape=rect;rounded=1;', //EXT 'Image_ipad_indicator' : 'shape=rect;rounded=1;fillColor=#e8878E;gradientColor=#BD1421;strokeColor=#ffffff;', //iOS 6 iPhone Elements - 'Image_iphone_iphone_4' : 'shape=mxgraph.ios.iPhone;bgStyle=bgGreen;', + 'Image_iphone_iphone_4' : s + 'ios.iPhone;bgStyle=bgGreen;', 'Image_iphone_bg_black' : 'shape=rect;', 'Image_iphone_bg_gray' : 'shape=rect;', - 'Image_iphone_bg_stripe_drk' : 'shape=mxgraph.ios.iBgStriped;strokeColor=#18211b;fillColor=#5D7585;strokeColor2=#657E8F;', - 'Image_iphone_bg_stripe_lt' : 'shape=mxgraph.ios.iBgStriped;strokeColor=#18211b;fillColor=#5D7585;strokeColor2=#657E8F;', + 'Image_iphone_bg_stripe_drk' : s + 'ios.iBgStriped;strokeColor=#18211b;fillColor=#5D7585;strokeColor2=#657E8F;', + 'Image_iphone_bg_stripe_lt' : s + 'ios.iBgStriped;strokeColor=#18211b;fillColor=#5D7585;strokeColor2=#657E8F;', 'Image_iphone_bg_white' : 'shape=rect;', - 'Image_iphone_top_bar_app' : 'shape=mxgraph.ios.iAppBar;', - 'Image_iphone_top_bar_home' : 'shape=mxgraph.ios.iTopBar2;opacity=50;fillColor=#999999;strokeColor=#cccccc;strokeWidth=1;', + 'Image_iphone_top_bar_app' : s + 'ios.iAppBar;', + 'Image_iphone_top_bar_home' : s + 'ios.iTopBar2;opacity=50;fillColor=#999999;strokeColor=#cccccc;strokeWidth=1;', 'Image_iphone_bar_top' : 'shape=rect;', 'Image_iphone_bar_semi_trans_black' : 'shape=rect;', 'Image_iphone_bar_semi_trans_blue' : 'shape=rect;', - 'Image_iphone_search' : 'shape=mxgraph.mockup.forms.searchBox;mainText=;flipH=1;', + 'Image_iphone_search' : s + 'mockup.forms.searchBox;mainText=;flipH=1;', // 'Image_iphone_table' EXT // 'Image_iphone_table_w_buttons' EXT // 'Image_iphone_table_w_icons' EXT @@ -1558,7 +1691,7 @@ // 'Image_iphone_alert_dialog' EXT // 'Image_iphone_dialog' EXT // 'Image_iphone_scroll_pane' EXT - 'Image_iphone_alpha_list' : 'shape=mxgraph.ios.iAlphaList;', + 'Image_iphone_alpha_list' : s + 'ios.iAlphaList;', //iOS 6 iPhone Controls 'Image_iphone_button_black' : 'shape=rect;rounded=1;', 'Image_iphone_button_blue' : 'shape=rect;rounded=1;', @@ -1570,33 +1703,33 @@ 'Image_iphone_button_lg_red' : 'shape=rect;rounded=1;', 'Image_iphone_button_lg_yellow' : 'shape=rect;rounded=1;', 'Image_iphone_button_xl_green' : 'shape=rect;rounded=1;', - 'Image_iphone_back_button' : 'shape=mxgraph.ios.iButtonBack;strokeColor=#444444;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;', - 'Image_iphone_prev_next' : 'shape=mxgraph.ios.iPrevNext;strokeColor=#444444;fillColor=#dddddd;fillColor2=#3D5565;fillColor3=#ffffff;', - 'Image_iphone_sort_handle' : 'shape=mxgraph.ios7.icons.options;', - 'Image_iphone_slider' : 'shape=mxgraph.ios.iSlider;barPos=60;', - 'Image_iphone_dropdown' : 'shape=mxgraph.ios.iComboBox;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;', + 'Image_iphone_back_button' : s + 'ios.iButtonBack;strokeColor=#444444;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;', + 'Image_iphone_prev_next' : s + 'ios.iPrevNext;strokeColor=#444444;fillColor=#dddddd;fillColor2=#3D5565;fillColor3=#ffffff;', + 'Image_iphone_sort_handle' : s + 'ios7.icons.options;', + 'Image_iphone_slider' : s + 'ios.iSlider;barPos=60;', + 'Image_iphone_dropdown' : s + 'ios.iComboBox;buttonText=;fillColor=#dddddd;fillColor2=#3D5565;', 'Image_iphone_email_name' : 'shape=rect;rounded=1;', - 'Image_iphone_switch_off' : 'shape=mxgraph.android.switch_off;fillColor=#666666;', //EXT + 'Image_iphone_switch_off' : s + 'android.switch_off;fillColor=#666666;', //EXT 'Image_iphone_keyboard_button_blue' : 'shape=rect;rounded=1;', - 'Image_iphone_keyboard_letters' : 'shape=mxgraph.ios.iKeybLett;', - 'Image_iphone_keyboard_landscape' : 'shape=mxgraph.ios.iKeybLett;', + 'Image_iphone_keyboard_letters' : s + 'ios.iKeybLett;', + 'Image_iphone_keyboard_landscape' : s + 'ios.iKeybLett;', // 'Image_iphone_large_tabbed_button' EXT // 'Image_iphone_sort_button' EXT // 'Image_iphone_tab_bar' EXT // 'Image_iphone_picker_multi' EXT // 'Image_iphone_picker_web' EXT //iOS 6 iPhone Icons - 'Image_iphone_add_icon_blue' : 'shape=mxgraph.ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;', - 'Image_iphone_add_icon_green' : 'shape=mxgraph.ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;', - 'Image_iphone_remove_icon' : 'shape=mxgraph.ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;', - 'Image_iphone_arrow_icon' : 'shape=mxgraph.ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;', - 'Image_iphone_arrow' : 'shape=mxgraph.ios7.misc.more;', - 'Image_iphone_checkmark' : 'shape=mxgraph.ios7.misc.check;', + 'Image_iphone_add_icon_blue' : s + 'ios.iAddIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;', + 'Image_iphone_add_icon_green' : s + 'ios.iAddIcon;fillColor=#7AdF78;fillColor2=#1A9917;strokeColor=#ffffff;', + 'Image_iphone_remove_icon' : s + 'ios.iDeleteIcon;fillColor=#e8878E;fillColor2=#BD1421;strokeColor=#ffffff;', + 'Image_iphone_arrow_icon' : s + 'ios.iArrowIcon;fillColor=#8BbEff;fillColor2=#135Ec8;strokeColor=#ffffff;', + 'Image_iphone_arrow' : s + 'ios7.misc.more;', + 'Image_iphone_checkmark' : s + 'ios7.misc.check;', 'Image_iphone_check_off' : 'shape=ellipse;', //EXT 'Image_iphone_location_dot' : 'shape=ellipse;', 'Image_iphone_mark_as_read' : 'shape=ellipse;', - 'Image_iphone_pin_green' : 'shape=mxgraph.ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;', - 'Image_iphone_pin_red' : 'shape=mxgraph.ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;', + 'Image_iphone_pin_green' : s + 'ios.iPin;fillColor2=#00dd00;fillColor3=#004400;strokeColor=#006600;', + 'Image_iphone_pin_red' : s + 'ios.iPin;fillColor2=#dd0000;fillColor3=#440000;strokeColor=#660000;', 'Image_iphone_radio_off' : 'shape=ellipse;', //EXT 'Image_iphone_checkbox_off' : 'shape=rect;rounded=1;', //EXT 'Image_iphone_indicator' : 'shape=rect;rounded=1;fillColor=#e8878E;gradientColor=#BD1421;strokeColor=#ffffff;', @@ -1638,7 +1771,7 @@ } else if (a.Class != null) { - //console.log('no mapping', a.Class); +// console.log('no mapping', a.Class); } var p = (a.Properties != null) ? a.Properties : a; @@ -1706,17 +1839,22 @@ // Gradients and fill color if (p.FillColor != null) { - if (typeof p.FillColor === 'object') + var exc = ['AWSAndroidBlock3', 'AWSiOSBlock3', 'AWSJavaBlock3', 'AWSJavaScript', 'AWSNetBlock3', 'AWSNodeJSBlock3', 'AWSPHPBlock3', 'AWSPythonBlock3', 'AWSRubyBlock3', 'AWSXamarin', 'AWSCLIBlock3', 'AWSEclipseToolkitBlock3', 'AWSVisualStudioToolkitBlock3', 'AWSWindowsPowershellToolkitBlock3']; + + if (!exc.includes(a.Class)) { - if (p.FillColor.cs != null && p.FillColor.cs.length > 1) + if (typeof p.FillColor === 'object') { - cell.style += createStyle(mxConstants.STYLE_FILLCOLOR, p.FillColor.cs[0].c.substring(0, 7)); - cell.style += createStyle(mxConstants.STYLE_GRADIENTCOLOR, p.FillColor.cs[1].c.substring(0, 7)); + if (p.FillColor.cs != null && p.FillColor.cs.length > 1) + { + cell.style += createStyle(mxConstants.STYLE_FILLCOLOR, p.FillColor.cs[0].c.substring(0, 7)); + cell.style += createStyle(mxConstants.STYLE_GRADIENTCOLOR, p.FillColor.cs[1].c.substring(0, 7)); + } + } + else if (typeof p.FillColor === 'string') + { + cell.style += createStyle(mxConstants.STYLE_FILLCOLOR, p.FillColor.substring(0, 7), '#FFFFFF'); } - } - else if (typeof p.FillColor === 'string') - { - cell.style += createStyle(mxConstants.STYLE_FILLCOLOR, p.FillColor.substring(0, 7), '#FFFFFF'); } } @@ -1772,9 +1910,14 @@ { var p = getAction(obj).Properties; var b = p.BoundingBox; + + if (obj.Class.startsWith("AWS")) + { + b.h = b.h - 20; + } - var v = new mxCell('', new mxGeometry(Math.round(b.x * scale + dx), Math.round(b.y * scale + dy), - Math.round(b.w * scale), Math.round(b.h * scale)), vertexStyle); + v = new mxCell('', new mxGeometry(Math.round(b.x * scale + dx), Math.round(b.y * scale + dy), + Math.round(b.w * scale), Math.round(b.h * scale)), vertexStyle); v.vertex = true; updateCell(v, obj); diff --git a/war/js/embed-static.min.js b/war/js/embed-static.min.js index 564fecc8..6649cfaa 100644 --- a/war/js/embed-static.min.js +++ b/war/js/embed-static.min.js @@ -81,7 +81,7 @@ v,k,f));else if(c.c&a.c.RCDATA)d.F&&d.F(e(l),f,g,h(d,b,v,k,f));else throw Error( e[1].toLowerCase(),n;if(e[2]){n=e[3];var v=n.charCodeAt(0);if(34===v||39===v)n=n.substr(1,n.length-2);n=c(n.replace(F,""))}else n="";l.push(m,n);g=g.substr(e[0].length)}else g=g.replace(/^[\s\S][^a-z\s]*/,"");f.R=l;f.next=h+1;return f}}function n(b){function c(a,b){f||b.push(a)}var e,f;return g({startDoc:function(){e=[];f=!1},startTag:function(c,g,h){if(!f&&a.f.hasOwnProperty(c)){var k=a.f[c];if(!(k&a.c.FOLDABLE)){var l=b(c,g);if(l){if("object"!==typeof l)throw Error("tagPolicy did not return object (old API?)"); if("attribs"in l)g=l.attribs;else throw Error("tagPolicy gave no attribs");var m;"tagName"in l?(m=l.tagName,l=a.f[m]):(m=c,l=k);if(k&a.c.OPTIONAL_ENDTAG){var n=e[e.length-1];n&&n.D===c&&(n.v!==m||c!==m)&&h.push("")}k&a.c.EMPTY||e.push({D:c,v:m});h.push("<",m);c=0;for(n=g.length;c");k&a.c.EMPTY&&!(l&a.c.EMPTY)&&h.push("")}else f=!(k&a.c.EMPTY)}}},endTag:function(b,c){if(f)f=!1;else if(a.f.hasOwnProperty(b)){var d= a.f[b];if(!(d&(a.c.EMPTY|a.c.FOLDABLE))){if(d&a.c.OPTIONAL_ENDTAG)for(d=e.length;0<=--d;){var g=e[d].D;if(g===b)break;if(!(a.f[g]&a.c.OPTIONAL_ENDTAG))return}else for(d=e.length;0<=--d&&e[d].D!==b;);if(!(0>d)){for(g=e.length;--g>d;){var h=e[g].v;a.f[h]&a.c.OPTIONAL_ENDTAG||c.push("")}d")}}}},pcdata:c,rcdata:c,cdata:c,endDoc:function(a){for(;e.length;e.length--)a.push("")}})}function p(a,b,c,d,e){if(!e)return null;try{var g= -f.parse(""+a);if(g&&(!g.K()||fa.test(g.W()))){var h=e(g,b,c,d);return h?h.toString():null}}catch(qa){}return null}function r(a,b,c,d,e){c||a(b+" removed",{S:"removed",tagName:b});if(d!==e){var f="changed";d&&!e?f="removed":!d&&e&&(f="added");a(b+"."+c+" "+f,{S:f,tagName:b,la:c,oldValue:d,newValue:e})}}function C(a,b,c){b=b+"::"+c;if(a.hasOwnProperty(b))return a[b];b="*::"+c;if(a.hasOwnProperty(b))return a[b]}function H(b,c,d,e,f){for(var g=0;g",GT:">",amp:"&",AMP:"&",quot:'"',apos:"'",nbsp:" "},A=/^#(\d+)$/,v=/^#x([0-9A-Fa-f]+)$/,R=/^[A-Za-z][A-za-z0-9]+$/,K="undefined"!==typeof window&&window.document?window.document.createElement("textarea"):null,F=/\0/g,ca=/&(#[0-9]+|#[xX][0-9A-Fa-f]+|\w+);/g,N=/^(#[0-9]+|#[xX][0-9A-Fa-f]+|\w+);/,G=/&/g,Y=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi,T= @@ -184,7 +184,7 @@ f)+"\n"+t+"}":"{"+x.join(",")+"}";f=t;return l}}"function"!==typeof Date.prototy e=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,f,g,h={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},k;"function"!==typeof JSON.stringify&&(JSON.stringify=function(a,b,d){var e;g=f="";if("number"===typeof d)for(e=0;enavigator.userAgent.indexOf("MSIE")&& +window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"7.0.0",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&& 0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&& 0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&& 0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")|| @@ -1741,9 +1741,9 @@ a;this.canvas.setLineJoin("round");this.canvas.setLineCap("round");this.defaultV this.canvas.curveTo=mxUtils.bind(this,q.prototype.curveTo);this.originalArcTo=this.canvas.arcTo;this.canvas.arcTo=mxUtils.bind(this,q.prototype.arcTo)}function t(){mxRectangleShape.call(this)}function x(){mxActor.call(this)}function w(){mxActor.call(this)}function z(){mxRectangleShape.call(this)}function y(){mxRectangleShape.call(this)}function u(){mxCylinder.call(this)}function I(){mxShape.call(this)}function L(){mxShape.call(this)}function D(){mxEllipse.call(this)}function B(){mxShape.call(this)} function E(){mxShape.call(this)}function C(){mxRectangleShape.call(this)}function H(){mxShape.call(this)}function M(){mxShape.call(this)}function J(){mxShape.call(this)}function U(){mxCylinder.call(this)}function S(){mxDoubleEllipse.call(this)}function aa(){mxDoubleEllipse.call(this)}function A(){mxArrowConnector.call(this);this.spacing=0}function v(){mxArrowConnector.call(this);this.spacing=0}function R(){mxActor.call(this)}function K(){mxRectangleShape.call(this)}function F(){mxActor.call(this)} function ca(){mxActor.call(this)}function N(){mxActor.call(this)}function G(){mxActor.call(this)}function Y(){mxActor.call(this)}function T(){mxActor.call(this)}function Z(){mxActor.call(this)}function da(){mxActor.call(this)}function P(){mxActor.call(this)}function ea(){mxActor.call(this)}function W(){mxEllipse.call(this)}function O(){mxEllipse.call(this)}function Q(){mxEllipse.call(this)}function fa(){mxRhombus.call(this)}function V(){mxEllipse.call(this)}function X(){mxEllipse.call(this)}function ua(){mxEllipse.call(this)} -function oa(){mxEllipse.call(this)}function pa(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function xa(a,b,c,d,e,f,g,h,k,l){g+=k;var m=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(m.x-e-g,m.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))))); -f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var qa=Math.tan(mxUtils.toRadians(30)),ia=(.5-qa)/2;mxUtils.extend(b,mxActor);b.prototype.size=20;b.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/qa);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ia);a.lineTo(b,.25*b);a.lineTo(.5* -b,(.5-ia)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=b;mxUtils.extend(c,mxCylinder);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+qa));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ia)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ia)*b),a.lineTo(.5*b,(1-ia)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ia),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ia)*b),a.lineTo(0,.75*b),a.close());a.end()}; +function na(){mxEllipse.call(this)}function oa(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function xa(a,b,c,d,e,f,g,h,k,l){g+=k;var m=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(m.x-e-g,m.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))))); +f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var pa=Math.tan(mxUtils.toRadians(30)),ia=(.5-pa)/2;mxUtils.extend(b,mxActor);b.prototype.size=20;b.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/pa);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ia);a.lineTo(b,.25*b);a.lineTo(.5* +b,(.5-ia)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=b;mxUtils.extend(c,mxCylinder);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+pa));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ia)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ia)*b),a.lineTo(.5*b,(1-ia)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ia),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ia)*b),a.lineTo(0,.75*b),a.close());a.end()}; mxCellRenderer.prototype.defaultShapes.isoCube=c;mxUtils.extend(d,mxCylinder);d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(e/2,Math.round(e/8)+this.strokewidth-1);if(f&&null!=this.fill||!f&&null==this.fill)a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,-b);f||(a.moveTo(0,b),a.curveTo(0, -b/3,d,-b/3,d,b),a.lineTo(d,e-b),a.curveTo(d,e+b/3,0,e+b/3,0,e-b),a.close())};d.prototype.getLabelBounds=function(a){var b=2.5*Math.min(a.height/2,Math.round(a.height/8)+this.strokewidth-1);if(!this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST)||this.flipV&&this.direction==mxConstants.DIRECTION_WEST)a.y+=b,a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH||this.flipV&&this.direction==mxConstants.DIRECTION_NORTH)a.width-=b;else if(!this.flipV&& this.direction==mxConstants.DIRECTION_WEST||this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST))a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_NORTH||this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH)a.x+=b,a.width-=b;return a};mxCellRenderer.prototype.defaultShapes.datastore=d;mxUtils.extend(e,mxCylinder);e.prototype.size=30;e.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style, @@ -1769,12 +1769,12 @@ mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPo arguments)};mxCellRenderer.prototype.defaultShapes.plus=z;var ya=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};mxRhombus.prototype.paintVertexShape=function(a,b,c,d,e){ya.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var f=2*Math.max(2,this.strokewidth+ 1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0")}k&a.c.EMPTY||e.push({D:c,v:m});h.push("<",m);c=0;for(n=g.length;c");k&a.c.EMPTY&&!(l&a.c.EMPTY)&&h.push("")}else f=!(k&a.c.EMPTY)}}},endTag:function(b,c){if(f)f=!1;else if(a.f.hasOwnProperty(b)){var d= a.f[b];if(!(d&(a.c.EMPTY|a.c.FOLDABLE))){if(d&a.c.OPTIONAL_ENDTAG)for(d=e.length;0<=--d;){var g=e[d].D;if(g===b)break;if(!(a.f[g]&a.c.OPTIONAL_ENDTAG))return}else for(d=e.length;0<=--d&&e[d].D!==b;);if(!(0>d)){for(g=e.length;--g>d;){var h=e[g].v;a.f[h]&a.c.OPTIONAL_ENDTAG||c.push("")}d")}}}},pcdata:c,rcdata:c,cdata:c,endDoc:function(a){for(;e.length;e.length--)a.push("")}})}function p(a,b,c,d,e){if(!e)return null;try{var g= -f.parse(""+a);if(g&&(!g.K()||fa.test(g.W()))){var h=e(g,b,c,d);return h?h.toString():null}}catch(qa){}return null}function r(a,b,c,d,e){c||a(b+" removed",{S:"removed",tagName:b});if(d!==e){var f="changed";d&&!e?f="removed":!d&&e&&(f="added");a(b+"."+c+" "+f,{S:f,tagName:b,la:c,oldValue:d,newValue:e})}}function C(a,b,c){b=b+"::"+c;if(a.hasOwnProperty(b))return a[b];b="*::"+c;if(a.hasOwnProperty(b))return a[b]}function H(b,c,d,e,f){for(var g=0;g",GT:">",amp:"&",AMP:"&",quot:'"',apos:"'",nbsp:" "},A=/^#(\d+)$/,v=/^#x([0-9A-Fa-f]+)$/,R=/^[A-Za-z][A-za-z0-9]+$/,K="undefined"!==typeof window&&window.document?window.document.createElement("textarea"):null,F=/\0/g,ca=/&(#[0-9]+|#[xX][0-9A-Fa-f]+|\w+);/g,N=/^(#[0-9]+|#[xX][0-9A-Fa-f]+|\w+);/,G=/&/g,Y=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi,T= @@ -184,7 +184,7 @@ f)+"\n"+t+"}":"{"+x.join(",")+"}";f=t;return l}}"function"!==typeof Date.prototy e=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,f,g,h={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"},k;"function"!==typeof JSON.stringify&&(JSON.stringify=function(a,b,d){var e;g=f="";if("number"===typeof d)for(e=0;enavigator.userAgent.indexOf("MSIE")&& +window.STYLE_PATH=window.STYLE_PATH||"styles";window.CSS_PATH=window.CSS_PATH||"styles";window.OPEN_FORM=window.OPEN_FORM||"open.html";window.mxBasePath=window.mxBasePath||"../../../src";window.mxLanguage=window.mxLanguage||urlParams.lang;window.mxLanguages=window.mxLanguages||["de"];var mxClient={VERSION:"7.0.0",IS_IE:0<=navigator.userAgent.indexOf("MSIE"),IS_IE6:0<=navigator.userAgent.indexOf("MSIE 6"),IS_IE11:!!navigator.userAgent.match(/Trident\/7\./),IS_EDGE:!!navigator.userAgent.match(/Edge\//),IS_QUIRKS:0<=navigator.userAgent.indexOf("MSIE")&&(null==document.documentMode||5==document.documentMode),IS_EM:"spellcheck"in document.createElement("textarea")&&8==document.documentMode,VML_PREFIX:"v",OFFICE_PREFIX:"o",IS_NS:0<=navigator.userAgent.indexOf("Mozilla/")&&0>navigator.userAgent.indexOf("MSIE")&& 0>navigator.userAgent.indexOf("Edge/"),IS_OP:0<=navigator.userAgent.indexOf("Opera/")||0<=navigator.userAgent.indexOf("OPR/"),IS_OT:0<=navigator.userAgent.indexOf("Presto/")&&0>navigator.userAgent.indexOf("Presto/2.4.")&&0>navigator.userAgent.indexOf("Presto/2.3.")&&0>navigator.userAgent.indexOf("Presto/2.2.")&&0>navigator.userAgent.indexOf("Presto/2.1.")&&0>navigator.userAgent.indexOf("Presto/2.0.")&&0>navigator.userAgent.indexOf("Presto/1."),IS_SF:0<=navigator.userAgent.indexOf("AppleWebKit/")&& 0>navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_IOS:navigator.userAgent.match(/(iPad|iPhone|iPod)/g)?!0:!1,IS_GC:0<=navigator.userAgent.indexOf("Chrome/")&&0>navigator.userAgent.indexOf("Edge/"),IS_CHROMEAPP:null!=window.chrome&&null!=chrome.app&&null!=chrome.app.runtime,IS_FF:0<=navigator.userAgent.indexOf("Firefox/"),IS_MT:0<=navigator.userAgent.indexOf("Firefox/")&&0>navigator.userAgent.indexOf("Firefox/1.")&&0>navigator.userAgent.indexOf("Firefox/2.")||0<=navigator.userAgent.indexOf("Iceweasel/")&& 0>navigator.userAgent.indexOf("Iceweasel/1.")&&0>navigator.userAgent.indexOf("Iceweasel/2.")||0<=navigator.userAgent.indexOf("SeaMonkey/")&&0>navigator.userAgent.indexOf("SeaMonkey/1.")||0<=navigator.userAgent.indexOf("Iceape/")&&0>navigator.userAgent.indexOf("Iceape/1."),IS_SVG:0<=navigator.userAgent.indexOf("Firefox/")||0<=navigator.userAgent.indexOf("Iceweasel/")||0<=navigator.userAgent.indexOf("Seamonkey/")||0<=navigator.userAgent.indexOf("Iceape/")||0<=navigator.userAgent.indexOf("Galeon/")|| @@ -1741,9 +1741,9 @@ a;this.canvas.setLineJoin("round");this.canvas.setLineCap("round");this.defaultV this.canvas.curveTo=mxUtils.bind(this,q.prototype.curveTo);this.originalArcTo=this.canvas.arcTo;this.canvas.arcTo=mxUtils.bind(this,q.prototype.arcTo)}function t(){mxRectangleShape.call(this)}function x(){mxActor.call(this)}function w(){mxActor.call(this)}function z(){mxRectangleShape.call(this)}function y(){mxRectangleShape.call(this)}function u(){mxCylinder.call(this)}function I(){mxShape.call(this)}function L(){mxShape.call(this)}function D(){mxEllipse.call(this)}function B(){mxShape.call(this)} function E(){mxShape.call(this)}function C(){mxRectangleShape.call(this)}function H(){mxShape.call(this)}function M(){mxShape.call(this)}function J(){mxShape.call(this)}function U(){mxCylinder.call(this)}function S(){mxDoubleEllipse.call(this)}function aa(){mxDoubleEllipse.call(this)}function A(){mxArrowConnector.call(this);this.spacing=0}function v(){mxArrowConnector.call(this);this.spacing=0}function R(){mxActor.call(this)}function K(){mxRectangleShape.call(this)}function F(){mxActor.call(this)} function ca(){mxActor.call(this)}function N(){mxActor.call(this)}function G(){mxActor.call(this)}function Y(){mxActor.call(this)}function T(){mxActor.call(this)}function Z(){mxActor.call(this)}function da(){mxActor.call(this)}function P(){mxActor.call(this)}function ea(){mxActor.call(this)}function W(){mxEllipse.call(this)}function O(){mxEllipse.call(this)}function Q(){mxEllipse.call(this)}function fa(){mxRhombus.call(this)}function V(){mxEllipse.call(this)}function X(){mxEllipse.call(this)}function ua(){mxEllipse.call(this)} -function oa(){mxEllipse.call(this)}function pa(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function xa(a,b,c,d,e,f,g,h,k,l){g+=k;var m=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(m.x-e-g,m.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))))); -f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var qa=Math.tan(mxUtils.toRadians(30)),ia=(.5-qa)/2;mxUtils.extend(b,mxActor);b.prototype.size=20;b.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/qa);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ia);a.lineTo(b,.25*b);a.lineTo(.5* -b,(.5-ia)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=b;mxUtils.extend(c,mxCylinder);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+qa));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ia)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ia)*b),a.lineTo(.5*b,(1-ia)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ia),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ia)*b),a.lineTo(0,.75*b),a.close());a.end()}; +function na(){mxEllipse.call(this)}function oa(){mxActor.call(this)}function ja(){mxActor.call(this)}function ka(){mxActor.call(this)}function xa(a,b,c,d,e,f,g,h,k,l){g+=k;var m=d.clone();d.x-=e*(2*g+k);d.y-=f*(2*g+k);e*=g+k;f*=g+k;return function(){a.ellipse(m.x-e-g,m.y-f-g,2*g,2*g);l?a.fillAndStroke():a.stroke()}}mxUtils.extend(a,mxCylinder);a.prototype.size=20;a.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style,"size",this.size))))); +f?(a.moveTo(b,e),a.lineTo(b,b),a.lineTo(0,0),a.moveTo(b,b),a.lineTo(d,b)):(a.moveTo(0,0),a.lineTo(d-b,0),a.lineTo(d,b),a.lineTo(d,e),a.lineTo(b,e),a.lineTo(0,e-b),a.lineTo(0,0),a.close());a.end()};mxCellRenderer.prototype.defaultShapes.cube=a;var pa=Math.tan(mxUtils.toRadians(30)),ia=(.5-pa)/2;mxUtils.extend(b,mxActor);b.prototype.size=20;b.prototype.redrawPath=function(a,b,c,d,e){b=Math.min(d,e/pa);a.translate((d-b)/2,(e-b)/2+b/4);a.moveTo(0,.25*b);a.lineTo(.5*b,b*ia);a.lineTo(b,.25*b);a.lineTo(.5* +b,(.5-ia)*b);a.lineTo(0,.25*b);a.close();a.end()};mxCellRenderer.prototype.defaultShapes.isoRectangle=b;mxUtils.extend(c,mxCylinder);c.prototype.size=20;c.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(d,e/(.5+pa));f?(a.moveTo(0,.25*b),a.lineTo(.5*b,(.5-ia)*b),a.lineTo(b,.25*b),a.moveTo(.5*b,(.5-ia)*b),a.lineTo(.5*b,(1-ia)*b)):(a.translate((d-b)/2,(e-b)/2),a.moveTo(0,.25*b),a.lineTo(.5*b,b*ia),a.lineTo(b,.25*b),a.lineTo(b,.75*b),a.lineTo(.5*b,(1-ia)*b),a.lineTo(0,.75*b),a.close());a.end()}; mxCellRenderer.prototype.defaultShapes.isoCube=c;mxUtils.extend(d,mxCylinder);d.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.min(e/2,Math.round(e/8)+this.strokewidth-1);if(f&&null!=this.fill||!f&&null==this.fill)a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,b/2),a.moveTo(0,b),a.curveTo(0,2*b,d,2*b,d,b),f||(a.stroke(),a.begin()),a.translate(0,-b);f||(a.moveTo(0,b),a.curveTo(0, -b/3,d,-b/3,d,b),a.lineTo(d,e-b),a.curveTo(d,e+b/3,0,e+b/3,0,e-b),a.close())};d.prototype.getLabelBounds=function(a){var b=2.5*Math.min(a.height/2,Math.round(a.height/8)+this.strokewidth-1);if(!this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST)||this.flipV&&this.direction==mxConstants.DIRECTION_WEST)a.y+=b,a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH||this.flipV&&this.direction==mxConstants.DIRECTION_NORTH)a.width-=b;else if(!this.flipV&& this.direction==mxConstants.DIRECTION_WEST||this.flipV&&(null==this.direction||this.direction==mxConstants.DIRECTION_EAST))a.height-=b;else if(!this.flipV&&this.direction==mxConstants.DIRECTION_NORTH||this.flipV&&this.direction==mxConstants.DIRECTION_SOUTH)a.x+=b,a.width-=b;return a};mxCellRenderer.prototype.defaultShapes.datastore=d;mxUtils.extend(e,mxCylinder);e.prototype.size=30;e.prototype.redrawPath=function(a,b,c,d,e,f){b=Math.max(0,Math.min(d,Math.min(e,parseFloat(mxUtils.getValue(this.style, @@ -1769,12 +1769,12 @@ mxConstants.STYLE_ARCSIZE,mxConstants.LINE_ARCSIZE)/2;this.addPoints(a,[new mxPo arguments)};mxCellRenderer.prototype.defaultShapes.plus=z;var ya=mxRhombus.prototype.paintVertexShape;mxRhombus.prototype.getLabelBounds=function(a){if(1==this.style["double"]){var b=(2*Math.max(2,this.strokewidth+1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0))*this.scale;return new mxRectangle(a.x+b,a.y+b,a.width-2*b,a.height-2*b)}return a};mxRhombus.prototype.paintVertexShape=function(a,b,c,d,e){ya.apply(this,arguments);if(!this.outline&&1==this.style["double"]){var f=2*Math.max(2,this.strokewidth+ 1)+parseFloat(this.style[mxConstants.STYLE_MARGIN]||0);b+=f;c+=f;d-=2*f;e-=2*f;0=f.getStatus())try{this.exportFile(f.getText(),a,q,!0,c,d)}catch(z){this.handleError(z)}else this.handleError({message:mxResources.get("errorSavingFile")})}),function(a){this.spinner.stop();this.handleError(a)})})))}}),mxUtils.bind(this,function(){this.hideDialog()}),mxResources.get("saveAs"),mxResources.get("download"),!1,!1,h,null,null,4);this.showDialog(a.container,380,5>this.getServiceCount(!1)- 1?270:390,!0,!0);a.init()};EditorUi.prototype.exportFile=function(a,b,d,e,h,q){};EditorUi.prototype.pickFolder=function(a,b,d){b(null)};EditorUi.prototype.exportSvg=function(a,b,d,e,h,q,k,n,l){if(this.spinner.spin(document.body,mxResources.get("export"))){var c=this.editor.graph.isSelectionEmpty();d=null!=d?d:c;c=b?null:this.editor.graph.background;c==mxConstants.NONE&&(c=null);null==c&&0==b&&(c="#ffffff");var f=this.editor.graph.getSvg(c,a,k,n,null,d);e&&this.editor.graph.addSvgShadow(f);var g=this.getBaseFilename()+ ".svg",p=mxUtils.bind(this,function(a){this.spinner.stop();h&&a.setAttribute("content",this.getFileData(!0,null,null,null,d,l));var c='\n'+mxUtils.getXml(a);this.isLocalFileSave()||c.length<=MAX_REQUEST_SIZE?this.saveData(g,"svg",c,"image/svg+xml"):this.handleError({message:mxResources.get("drawingTooLarge")},mxResources.get("error"),mxUtils.bind(this,function(){mxUtils.popup(c)}))});this.convertMath(this.editor.graph, -f,!1,mxUtils.bind(this,function(){q?(null==this.thumbImageCache&&(this.thumbImageCache={}),this.convertImages(f,p,this.thumbImageCache)):p(f)}))}};EditorUi.prototype.addCheckbox=function(a,b,d,e,h,k){k=null!=k?k:!0;var c=document.createElement("input");c.style.marginRight="8px";c.style.marginTop="16px";c.setAttribute("type","checkbox");d&&(c.setAttribute("checked","checked"),c.defaultChecked=!0);e&&c.setAttribute("disabled","disabled");k&&(a.appendChild(c),mxUtils.write(a,b),h||mxUtils.br(a));return c}; +f,!1,mxUtils.bind(this,function(){q?(null==this.thumbImageCache&&(this.thumbImageCache={}),this.convertImages(f,p,this.thumbImageCache)):p(f)}))}};EditorUi.prototype.addCheckbox=function(a,b,d,e,h,q){q=null!=q?q:!0;var c=document.createElement("input");c.style.marginRight="8px";c.style.marginTop="16px";c.setAttribute("type","checkbox");d&&(c.setAttribute("checked","checked"),c.defaultChecked=!0);e&&c.setAttribute("disabled","disabled");q&&(a.appendChild(c),mxUtils.write(a,b),h||mxUtils.br(a));return c}; EditorUi.prototype.addEditButton=function(a,b){var c=this.addCheckbox(a,mxResources.get("edit")+":",!0,null,!0);c.style.marginLeft="24px";var d=this.getCurrentFile(),e="";null!=d&&d.getMode()!=App.MODE_DEVICE&&d.getMode()!=App.MODE_BROWSER&&(e=window.location.href);var f=document.createElement("select");f.style.width="120px";f.style.marginLeft="8px";f.style.marginRight="10px";f.className="geBtn";d=document.createElement("option");d.setAttribute("value","blank");mxUtils.write(d,mxResources.get("makeCopy")); f.appendChild(d);d=document.createElement("option");d.setAttribute("value","custom");mxUtils.write(d,mxResources.get("custom")+"...");f.appendChild(d);a.appendChild(f);mxEvent.addListener(f,"change",mxUtils.bind(this,function(){if("custom"==f.value){var a=new FilenameDialog(this,e,mxResources.get("ok"),function(a){null!=a?e=a:f.value="blank"},mxResources.get("url"),null,null,null,null,function(){f.value="blank"});this.showDialog(a.container,300,80,!0,!1);a.init()}}));mxEvent.addListener(c,"change", mxUtils.bind(this,function(){c.checked&&(null==b||b.checked)?f.removeAttribute("disabled"):f.setAttribute("disabled","disabled")}));mxUtils.br(a);return{getLink:function(){return c.checked?"blank"===f.value?"_blank":e:null},getEditInput:function(){return c},getEditSelect:function(){return f}}};EditorUi.prototype.addLinkSection=function(a,b){function c(){k.innerHTML='
=a.getStatus()){if(null!=b){var e=a.getText();if(c){if((9==document.documentMode||10==document.documentMode)&&"undefined"!==typeof window.mxUtilsBinaryToArray){a=mxUtilsBinaryToArray(a.request.responseBody).toArray();for(var e=Array(a.length),f=0;fc.Properties.Order?1:0})}else a.push(h);if(0]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))/i.test(h.value)&&c.setLinkForCell(h,h.value),h.geometry.width+=c.gridSize,h.geometry.height+=c.gridSize}finally{c.getModel().endUpdate()}return[h]}}return[]};EditorUi.prototype.formatFileSize=function(a){var c=-1;do a/=1024,c++;while(1024=a.status&&(a=a.responseText,null!=a&&">2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4);c+="==";break}k=a.charCodeAt(b++);if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>> +" kB; MB; GB; TB;PB;EB;ZB;YB".split(";")[c]};EditorUi.prototype.convertDataUri=function(a){if("data:"==a.substring(0,5)){var c=a.indexOf(";");0=a.status&&(a=a.responseText,null!=a&&">2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4);c+="==";break}k=a.charCodeAt(b++);if(b==d){c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>> 2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4|(k&240)>>4);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k&15)<<2);c+="=";break}l=a.charCodeAt(b++);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e>>2);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((e&3)<<4|(k&240)>>4);c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt((k&15)<<2|(l&192)>>6); c+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(l&63)}return c};EditorUi.prototype.importFiles=function(a,b,d,e,h,k,l,m,t,r,z,v){b=null!=b?b:0;d=null!=d?d:0;e=null!=e?e:this.maxImageSize;r=null!=r?r:this.maxImageBytes;var c=null!=b&&null!=d,f=!0,g=!1;if(!mxClient.IS_CHROMEAPP&&null!=a)for(var p=z||this.resampleThreshold,n=0;np){g=!0;break}var q=mxUtils.bind(this,function(){var g=this.editor.graph,p=g.gridSize; h=null!=h?h:mxUtils.bind(this,function(a,b,d,e,f,g,h,k,p){return null!=a&&"','',isLocalStorage||mxClient.IS_CHROMEAPP)).container,340,isLocalStorage||mxClient.IS_CHROMEAPP?220:200,!0,!0):d(!1,e)};EditorUi.prototype.parseFile=function(a,b,d){d=null!=d?d:a.name;var c=new FormData; c.append("format","xml");c.append("upfile",a,d);var e=new XMLHttpRequest;e.open("POST",OPEN_URL);e.onreadystatechange=function(){b(e)};e.send(c)};EditorUi.prototype.isResampleImage=function(a,b){b=null!=b?b:this.resampleThreshold;return a.length>b};EditorUi.prototype.resizeImage=function(a,b,d,e,h,k){h=null!=h?h:this.maxImageSize;var c=Math.max(1,a.width),f=Math.max(1,a.height);if(e&&this.isResampleImage(b,k))try{var g=Math.max(c/h,f/h);if(1