camunda-bpmn-js 0.21.1 → 0.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/base-modeler.development.js +9007 -9488
- package/dist/base-modeler.production.min.js +4 -4
- package/dist/base-navigated-viewer.development.js +322 -744
- package/dist/base-navigated-viewer.production.min.js +2 -2
- package/dist/base-viewer.development.js +319 -741
- package/dist/base-viewer.production.min.js +2 -2
- package/dist/camunda-cloud-modeler.development.js +8915 -8312
- package/dist/camunda-cloud-modeler.production.min.js +4 -4
- package/dist/camunda-cloud-navigated-viewer.development.js +529 -864
- package/dist/camunda-cloud-navigated-viewer.production.min.js +2 -2
- package/dist/camunda-cloud-viewer.development.js +526 -861
- package/dist/camunda-cloud-viewer.production.min.js +2 -2
- package/dist/camunda-platform-modeler.development.js +2843 -2099
- package/dist/camunda-platform-modeler.production.min.js +4 -4
- package/dist/camunda-platform-navigated-viewer.development.js +322 -744
- package/dist/camunda-platform-navigated-viewer.production.min.js +2 -2
- package/dist/camunda-platform-viewer.development.js +319 -741
- package/dist/camunda-platform-viewer.production.min.js +2 -2
- package/lib/camunda-cloud/Modeler.js +0 -12
- package/lib/camunda-cloud/util/commonModules.js +0 -3
- package/package.json +9 -10
- package/lib/camunda-cloud/features/context-pad/ContextPadOptions.js +0 -16
- package/lib/camunda-cloud/features/context-pad/ContextPadProvider.js +0 -45
- package/lib/camunda-cloud/features/context-pad/index.js +0 -6
- package/lib/camunda-cloud/features/drilldown/index.js +0 -3
- package/lib/camunda-cloud/features/palette/PaletteOptions.js +0 -15
- package/lib/camunda-cloud/features/palette/PaletteProvider.js +0 -31
- package/lib/camunda-cloud/features/palette/index.js +0 -6
- package/lib/camunda-cloud/features/popup-menu/ReplaceMenuProvider.js +0 -72
- package/lib/camunda-cloud/features/popup-menu/ReplaceOptions.js +0 -49
- package/lib/camunda-cloud/features/popup-menu/index.js +0 -6
|
@@ -682,7 +682,7 @@
|
|
|
682
682
|
}
|
|
683
683
|
}
|
|
684
684
|
|
|
685
|
-
function ensureImported
|
|
685
|
+
function ensureImported(element, target) {
|
|
686
686
|
|
|
687
687
|
if (element.ownerDocument !== target.ownerDocument) {
|
|
688
688
|
try {
|
|
@@ -710,8 +710,8 @@
|
|
|
710
710
|
*
|
|
711
711
|
* @return {SVGElement} the appended node
|
|
712
712
|
*/
|
|
713
|
-
function appendTo
|
|
714
|
-
return target.appendChild(ensureImported
|
|
713
|
+
function appendTo(element, target) {
|
|
714
|
+
return target.appendChild(ensureImported(element, target));
|
|
715
715
|
}
|
|
716
716
|
|
|
717
717
|
/**
|
|
@@ -726,8 +726,8 @@
|
|
|
726
726
|
*
|
|
727
727
|
* @return {SVGElement} the element
|
|
728
728
|
*/
|
|
729
|
-
function append
|
|
730
|
-
appendTo
|
|
729
|
+
function append(target, node) {
|
|
730
|
+
appendTo(node, target);
|
|
731
731
|
return target;
|
|
732
732
|
}
|
|
733
733
|
|
|
@@ -735,9 +735,9 @@
|
|
|
735
735
|
* attribute accessor utility
|
|
736
736
|
*/
|
|
737
737
|
|
|
738
|
-
var LENGTH_ATTR
|
|
738
|
+
var LENGTH_ATTR = 2;
|
|
739
739
|
|
|
740
|
-
var CSS_PROPERTIES
|
|
740
|
+
var CSS_PROPERTIES = {
|
|
741
741
|
'alignment-baseline': 1,
|
|
742
742
|
'baseline-shift': 1,
|
|
743
743
|
'clip': 1,
|
|
@@ -761,7 +761,7 @@
|
|
|
761
761
|
'flood-opacity': 1,
|
|
762
762
|
'font': 1,
|
|
763
763
|
'font-family': 1,
|
|
764
|
-
'font-size': LENGTH_ATTR
|
|
764
|
+
'font-size': LENGTH_ATTR,
|
|
765
765
|
'font-size-adjust': 1,
|
|
766
766
|
'font-stretch': 1,
|
|
767
767
|
'font-style': 1,
|
|
@@ -791,7 +791,7 @@
|
|
|
791
791
|
'stroke-linejoin': 1,
|
|
792
792
|
'stroke-miterlimit': 1,
|
|
793
793
|
'stroke-opacity': 1,
|
|
794
|
-
'stroke-width': LENGTH_ATTR
|
|
794
|
+
'stroke-width': LENGTH_ATTR,
|
|
795
795
|
'text-anchor': 1,
|
|
796
796
|
'text-decoration': 1,
|
|
797
797
|
'text-rendering': 1,
|
|
@@ -802,23 +802,23 @@
|
|
|
802
802
|
};
|
|
803
803
|
|
|
804
804
|
|
|
805
|
-
function getAttribute
|
|
806
|
-
if (CSS_PROPERTIES
|
|
805
|
+
function getAttribute(node, name) {
|
|
806
|
+
if (CSS_PROPERTIES[name]) {
|
|
807
807
|
return node.style[name];
|
|
808
808
|
} else {
|
|
809
809
|
return node.getAttributeNS(null, name);
|
|
810
810
|
}
|
|
811
811
|
}
|
|
812
812
|
|
|
813
|
-
function setAttribute
|
|
813
|
+
function setAttribute(node, name, value) {
|
|
814
814
|
var hyphenated = name.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
|
|
815
815
|
|
|
816
|
-
var type = CSS_PROPERTIES
|
|
816
|
+
var type = CSS_PROPERTIES[hyphenated];
|
|
817
817
|
|
|
818
818
|
if (type) {
|
|
819
819
|
|
|
820
820
|
// append pixel unit, unless present
|
|
821
|
-
if (type === LENGTH_ATTR
|
|
821
|
+
if (type === LENGTH_ATTR && typeof value === 'number') {
|
|
822
822
|
value = String(value) + 'px';
|
|
823
823
|
}
|
|
824
824
|
|
|
@@ -828,12 +828,12 @@
|
|
|
828
828
|
}
|
|
829
829
|
}
|
|
830
830
|
|
|
831
|
-
function setAttributes
|
|
831
|
+
function setAttributes(node, attrs) {
|
|
832
832
|
|
|
833
833
|
var names = Object.keys(attrs), i, name;
|
|
834
834
|
|
|
835
835
|
for (i = 0, name; (name = names[i]); i++) {
|
|
836
|
-
setAttribute
|
|
836
|
+
setAttribute(node, name, attrs[name]);
|
|
837
837
|
}
|
|
838
838
|
}
|
|
839
839
|
|
|
@@ -847,15 +847,15 @@
|
|
|
847
847
|
*
|
|
848
848
|
* @return {String}
|
|
849
849
|
*/
|
|
850
|
-
function attr$
|
|
850
|
+
function attr$1(node, name, value) {
|
|
851
851
|
if (typeof name === 'string') {
|
|
852
852
|
if (value !== undefined) {
|
|
853
|
-
setAttribute
|
|
853
|
+
setAttribute(node, name, value);
|
|
854
854
|
} else {
|
|
855
|
-
return getAttribute
|
|
855
|
+
return getAttribute(node, name);
|
|
856
856
|
}
|
|
857
857
|
} else {
|
|
858
|
-
setAttributes
|
|
858
|
+
setAttributes(node, name);
|
|
859
859
|
}
|
|
860
860
|
|
|
861
861
|
return node;
|
|
@@ -871,7 +871,7 @@
|
|
|
871
871
|
* toString reference.
|
|
872
872
|
*/
|
|
873
873
|
|
|
874
|
-
const toString$
|
|
874
|
+
const toString$1 = Object.prototype.toString;
|
|
875
875
|
|
|
876
876
|
/**
|
|
877
877
|
* Wrap `el` in a `ClassList`.
|
|
@@ -881,11 +881,11 @@
|
|
|
881
881
|
* @api public
|
|
882
882
|
*/
|
|
883
883
|
|
|
884
|
-
function classes$
|
|
885
|
-
return new ClassList$
|
|
884
|
+
function classes$1(el) {
|
|
885
|
+
return new ClassList$1(el);
|
|
886
886
|
}
|
|
887
887
|
|
|
888
|
-
function ClassList$
|
|
888
|
+
function ClassList$1(el) {
|
|
889
889
|
if (!el || !el.nodeType) {
|
|
890
890
|
throw new Error('A DOM element reference is required');
|
|
891
891
|
}
|
|
@@ -901,7 +901,7 @@
|
|
|
901
901
|
* @api public
|
|
902
902
|
*/
|
|
903
903
|
|
|
904
|
-
ClassList$
|
|
904
|
+
ClassList$1.prototype.add = function(name) {
|
|
905
905
|
this.list.add(name);
|
|
906
906
|
return this;
|
|
907
907
|
};
|
|
@@ -916,8 +916,8 @@
|
|
|
916
916
|
* @api public
|
|
917
917
|
*/
|
|
918
918
|
|
|
919
|
-
ClassList$
|
|
920
|
-
if ('[object RegExp]' == toString$
|
|
919
|
+
ClassList$1.prototype.remove = function(name) {
|
|
920
|
+
if ('[object RegExp]' == toString$1.call(name)) {
|
|
921
921
|
return this.removeMatching(name);
|
|
922
922
|
}
|
|
923
923
|
|
|
@@ -933,7 +933,7 @@
|
|
|
933
933
|
* @api private
|
|
934
934
|
*/
|
|
935
935
|
|
|
936
|
-
ClassList$
|
|
936
|
+
ClassList$1.prototype.removeMatching = function(re) {
|
|
937
937
|
const arr = this.array();
|
|
938
938
|
for (let i = 0; i < arr.length; i++) {
|
|
939
939
|
if (re.test(arr[i])) {
|
|
@@ -955,7 +955,7 @@
|
|
|
955
955
|
* @api public
|
|
956
956
|
*/
|
|
957
957
|
|
|
958
|
-
ClassList$
|
|
958
|
+
ClassList$1.prototype.toggle = function(name, force) {
|
|
959
959
|
if ('undefined' !== typeof force) {
|
|
960
960
|
if (force !== this.list.toggle(name, force)) {
|
|
961
961
|
this.list.toggle(name); // toggle again to correct
|
|
@@ -973,7 +973,7 @@
|
|
|
973
973
|
* @api public
|
|
974
974
|
*/
|
|
975
975
|
|
|
976
|
-
ClassList$
|
|
976
|
+
ClassList$1.prototype.array = function() {
|
|
977
977
|
return Array.from(this.list);
|
|
978
978
|
};
|
|
979
979
|
|
|
@@ -985,12 +985,12 @@
|
|
|
985
985
|
* @api public
|
|
986
986
|
*/
|
|
987
987
|
|
|
988
|
-
ClassList$
|
|
989
|
-
ClassList$
|
|
988
|
+
ClassList$1.prototype.has =
|
|
989
|
+
ClassList$1.prototype.contains = function(name) {
|
|
990
990
|
return this.list.contains(name);
|
|
991
991
|
};
|
|
992
992
|
|
|
993
|
-
function remove$
|
|
993
|
+
function remove$2(element) {
|
|
994
994
|
var parent = element.parentNode;
|
|
995
995
|
|
|
996
996
|
if (parent) {
|
|
@@ -1010,17 +1010,17 @@
|
|
|
1010
1010
|
* @param {DOMElement} element
|
|
1011
1011
|
* @return {DOMElement} the element (for chaining)
|
|
1012
1012
|
*/
|
|
1013
|
-
function clear$
|
|
1013
|
+
function clear$1(element) {
|
|
1014
1014
|
var child;
|
|
1015
1015
|
|
|
1016
1016
|
while ((child = element.firstChild)) {
|
|
1017
|
-
remove$
|
|
1017
|
+
remove$2(child);
|
|
1018
1018
|
}
|
|
1019
1019
|
|
|
1020
1020
|
return element;
|
|
1021
1021
|
}
|
|
1022
1022
|
|
|
1023
|
-
var ns
|
|
1023
|
+
var ns = {
|
|
1024
1024
|
svg: 'http://www.w3.org/2000/svg'
|
|
1025
1025
|
};
|
|
1026
1026
|
|
|
@@ -1028,25 +1028,25 @@
|
|
|
1028
1028
|
* DOM parsing utility
|
|
1029
1029
|
*/
|
|
1030
1030
|
|
|
1031
|
-
var SVG_START
|
|
1031
|
+
var SVG_START = '<svg xmlns="' + ns.svg + '"';
|
|
1032
1032
|
|
|
1033
|
-
function parse$
|
|
1033
|
+
function parse$1(svg) {
|
|
1034
1034
|
|
|
1035
1035
|
var unwrap = false;
|
|
1036
1036
|
|
|
1037
1037
|
// ensure we import a valid svg document
|
|
1038
1038
|
if (svg.substring(0, 4) === '<svg') {
|
|
1039
|
-
if (svg.indexOf(ns
|
|
1040
|
-
svg = SVG_START
|
|
1039
|
+
if (svg.indexOf(ns.svg) === -1) {
|
|
1040
|
+
svg = SVG_START + svg.substring(4);
|
|
1041
1041
|
}
|
|
1042
1042
|
} else {
|
|
1043
1043
|
|
|
1044
1044
|
// namespace svg
|
|
1045
|
-
svg = SVG_START
|
|
1045
|
+
svg = SVG_START + '>' + svg + '</svg>';
|
|
1046
1046
|
unwrap = true;
|
|
1047
1047
|
}
|
|
1048
1048
|
|
|
1049
|
-
var parsed = parseDocument
|
|
1049
|
+
var parsed = parseDocument(svg);
|
|
1050
1050
|
|
|
1051
1051
|
if (!unwrap) {
|
|
1052
1052
|
return parsed;
|
|
@@ -1063,7 +1063,7 @@
|
|
|
1063
1063
|
return fragment;
|
|
1064
1064
|
}
|
|
1065
1065
|
|
|
1066
|
-
function parseDocument
|
|
1066
|
+
function parseDocument(svg) {
|
|
1067
1067
|
|
|
1068
1068
|
var parser;
|
|
1069
1069
|
|
|
@@ -1087,18 +1087,18 @@
|
|
|
1087
1087
|
*
|
|
1088
1088
|
* @returns {SVGElement}
|
|
1089
1089
|
*/
|
|
1090
|
-
function create$
|
|
1090
|
+
function create$1(name, attrs) {
|
|
1091
1091
|
var element;
|
|
1092
1092
|
|
|
1093
1093
|
if (name.charAt(0) === '<') {
|
|
1094
|
-
element = parse$
|
|
1094
|
+
element = parse$1(name).firstChild;
|
|
1095
1095
|
element = document.importNode(element, true);
|
|
1096
1096
|
} else {
|
|
1097
|
-
element = document.createElementNS(ns
|
|
1097
|
+
element = document.createElementNS(ns.svg, name);
|
|
1098
1098
|
}
|
|
1099
1099
|
|
|
1100
1100
|
if (attrs) {
|
|
1101
|
-
attr$
|
|
1101
|
+
attr$1(element, attrs);
|
|
1102
1102
|
}
|
|
1103
1103
|
|
|
1104
1104
|
return element;
|
|
@@ -1113,7 +1113,7 @@
|
|
|
1113
1113
|
|
|
1114
1114
|
function getNode() {
|
|
1115
1115
|
if (node === null) {
|
|
1116
|
-
node = create$
|
|
1116
|
+
node = create$1('svg');
|
|
1117
1117
|
}
|
|
1118
1118
|
|
|
1119
1119
|
return node;
|
|
@@ -1168,6 +1168,152 @@
|
|
|
1168
1168
|
}
|
|
1169
1169
|
}
|
|
1170
1170
|
|
|
1171
|
+
/**
|
|
1172
|
+
* Serialization util
|
|
1173
|
+
*/
|
|
1174
|
+
|
|
1175
|
+
var TEXT_ENTITIES = /([&<>]{1})/g;
|
|
1176
|
+
var ATTR_ENTITIES = /([\n\r"]{1})/g;
|
|
1177
|
+
|
|
1178
|
+
var ENTITY_REPLACEMENT = {
|
|
1179
|
+
'&': '&',
|
|
1180
|
+
'<': '<',
|
|
1181
|
+
'>': '>',
|
|
1182
|
+
'"': '\''
|
|
1183
|
+
};
|
|
1184
|
+
|
|
1185
|
+
function escape$1(str, pattern) {
|
|
1186
|
+
|
|
1187
|
+
function replaceFn(match, entity) {
|
|
1188
|
+
return ENTITY_REPLACEMENT[entity] || entity;
|
|
1189
|
+
}
|
|
1190
|
+
|
|
1191
|
+
return str.replace(pattern, replaceFn);
|
|
1192
|
+
}
|
|
1193
|
+
|
|
1194
|
+
function serialize(node, output) {
|
|
1195
|
+
|
|
1196
|
+
var i, len, attrMap, attrNode, childNodes;
|
|
1197
|
+
|
|
1198
|
+
switch (node.nodeType) {
|
|
1199
|
+
|
|
1200
|
+
// TEXT
|
|
1201
|
+
case 3:
|
|
1202
|
+
|
|
1203
|
+
// replace special XML characters
|
|
1204
|
+
output.push(escape$1(node.textContent, TEXT_ENTITIES));
|
|
1205
|
+
break;
|
|
1206
|
+
|
|
1207
|
+
// ELEMENT
|
|
1208
|
+
case 1:
|
|
1209
|
+
output.push('<', node.tagName);
|
|
1210
|
+
|
|
1211
|
+
if (node.hasAttributes()) {
|
|
1212
|
+
attrMap = node.attributes;
|
|
1213
|
+
for (i = 0, len = attrMap.length; i < len; ++i) {
|
|
1214
|
+
attrNode = attrMap.item(i);
|
|
1215
|
+
output.push(' ', attrNode.name, '="', escape$1(attrNode.value, ATTR_ENTITIES), '"');
|
|
1216
|
+
}
|
|
1217
|
+
}
|
|
1218
|
+
|
|
1219
|
+
if (node.hasChildNodes()) {
|
|
1220
|
+
output.push('>');
|
|
1221
|
+
childNodes = node.childNodes;
|
|
1222
|
+
for (i = 0, len = childNodes.length; i < len; ++i) {
|
|
1223
|
+
serialize(childNodes.item(i), output);
|
|
1224
|
+
}
|
|
1225
|
+
output.push('</', node.tagName, '>');
|
|
1226
|
+
} else {
|
|
1227
|
+
output.push('/>');
|
|
1228
|
+
}
|
|
1229
|
+
break;
|
|
1230
|
+
|
|
1231
|
+
// COMMENT
|
|
1232
|
+
case 8:
|
|
1233
|
+
output.push('<!--', escape$1(node.nodeValue, TEXT_ENTITIES), '-->');
|
|
1234
|
+
break;
|
|
1235
|
+
|
|
1236
|
+
// CDATA
|
|
1237
|
+
case 4:
|
|
1238
|
+
output.push('<![CDATA[', node.nodeValue, ']]>');
|
|
1239
|
+
break;
|
|
1240
|
+
|
|
1241
|
+
default:
|
|
1242
|
+
throw new Error('unable to handle node ' + node.nodeType);
|
|
1243
|
+
}
|
|
1244
|
+
|
|
1245
|
+
return output;
|
|
1246
|
+
}
|
|
1247
|
+
|
|
1248
|
+
/**
|
|
1249
|
+
* innerHTML like functionality for SVG elements.
|
|
1250
|
+
* based on innerSVG (https://code.google.com/p/innersvg)
|
|
1251
|
+
*/
|
|
1252
|
+
|
|
1253
|
+
|
|
1254
|
+
function set(element, svg) {
|
|
1255
|
+
|
|
1256
|
+
var parsed = parse$1(svg);
|
|
1257
|
+
|
|
1258
|
+
// clear element contents
|
|
1259
|
+
clear$1(element);
|
|
1260
|
+
|
|
1261
|
+
if (!svg) {
|
|
1262
|
+
return;
|
|
1263
|
+
}
|
|
1264
|
+
|
|
1265
|
+
if (!isFragment(parsed)) {
|
|
1266
|
+
|
|
1267
|
+
// extract <svg> from parsed document
|
|
1268
|
+
parsed = parsed.documentElement;
|
|
1269
|
+
}
|
|
1270
|
+
|
|
1271
|
+
var nodes = slice$1(parsed.childNodes);
|
|
1272
|
+
|
|
1273
|
+
// import + append each node
|
|
1274
|
+
for (var i = 0; i < nodes.length; i++) {
|
|
1275
|
+
appendTo(nodes[i], element);
|
|
1276
|
+
}
|
|
1277
|
+
|
|
1278
|
+
}
|
|
1279
|
+
|
|
1280
|
+
function get(element) {
|
|
1281
|
+
var child = element.firstChild,
|
|
1282
|
+
output = [];
|
|
1283
|
+
|
|
1284
|
+
while (child) {
|
|
1285
|
+
serialize(child, output);
|
|
1286
|
+
child = child.nextSibling;
|
|
1287
|
+
}
|
|
1288
|
+
|
|
1289
|
+
return output.join('');
|
|
1290
|
+
}
|
|
1291
|
+
|
|
1292
|
+
function isFragment(node) {
|
|
1293
|
+
return node.nodeName === '#document-fragment';
|
|
1294
|
+
}
|
|
1295
|
+
|
|
1296
|
+
function innerSVG(element, svg) {
|
|
1297
|
+
|
|
1298
|
+
if (svg !== undefined) {
|
|
1299
|
+
|
|
1300
|
+
try {
|
|
1301
|
+
set(element, svg);
|
|
1302
|
+
} catch (e) {
|
|
1303
|
+
throw new Error('error parsing SVG: ' + e.message);
|
|
1304
|
+
}
|
|
1305
|
+
|
|
1306
|
+
return element;
|
|
1307
|
+
} else {
|
|
1308
|
+
return get(element);
|
|
1309
|
+
}
|
|
1310
|
+
}
|
|
1311
|
+
|
|
1312
|
+
|
|
1313
|
+
function slice$1(arr) {
|
|
1314
|
+
return Array.prototype.slice.call(arr);
|
|
1315
|
+
}
|
|
1316
|
+
|
|
1171
1317
|
/**
|
|
1172
1318
|
* transform accessor utility
|
|
1173
1319
|
*/
|
|
@@ -1230,18 +1376,18 @@
|
|
|
1230
1376
|
|
|
1231
1377
|
function createLine(points, attrs) {
|
|
1232
1378
|
|
|
1233
|
-
var line = create$
|
|
1234
|
-
attr$
|
|
1379
|
+
var line = create$1('polyline');
|
|
1380
|
+
attr$1(line, { points: toSVGPoints(points) });
|
|
1235
1381
|
|
|
1236
1382
|
if (attrs) {
|
|
1237
|
-
attr$
|
|
1383
|
+
attr$1(line, attrs);
|
|
1238
1384
|
}
|
|
1239
1385
|
|
|
1240
1386
|
return line;
|
|
1241
1387
|
}
|
|
1242
1388
|
|
|
1243
1389
|
function updateLine(gfx, points) {
|
|
1244
|
-
attr$
|
|
1390
|
+
attr$1(gfx, { points: toSVGPoints(points) });
|
|
1245
1391
|
|
|
1246
1392
|
return gfx;
|
|
1247
1393
|
}
|
|
@@ -1510,7 +1656,7 @@
|
|
|
1510
1656
|
* @param {String} [val]
|
|
1511
1657
|
* @api public
|
|
1512
1658
|
*/
|
|
1513
|
-
function attr
|
|
1659
|
+
function attr(el, name, val) {
|
|
1514
1660
|
|
|
1515
1661
|
// get
|
|
1516
1662
|
if (arguments.length == 2) {
|
|
@@ -1538,7 +1684,7 @@
|
|
|
1538
1684
|
* toString reference.
|
|
1539
1685
|
*/
|
|
1540
1686
|
|
|
1541
|
-
const toString
|
|
1687
|
+
const toString = Object.prototype.toString;
|
|
1542
1688
|
|
|
1543
1689
|
/**
|
|
1544
1690
|
* Wrap `el` in a `ClassList`.
|
|
@@ -1548,8 +1694,8 @@
|
|
|
1548
1694
|
* @api public
|
|
1549
1695
|
*/
|
|
1550
1696
|
|
|
1551
|
-
function classes
|
|
1552
|
-
return new ClassList
|
|
1697
|
+
function classes(el) {
|
|
1698
|
+
return new ClassList(el);
|
|
1553
1699
|
}
|
|
1554
1700
|
|
|
1555
1701
|
/**
|
|
@@ -1559,7 +1705,7 @@
|
|
|
1559
1705
|
* @api private
|
|
1560
1706
|
*/
|
|
1561
1707
|
|
|
1562
|
-
function ClassList
|
|
1708
|
+
function ClassList(el) {
|
|
1563
1709
|
if (!el || !el.nodeType) {
|
|
1564
1710
|
throw new Error('A DOM element reference is required');
|
|
1565
1711
|
}
|
|
@@ -1575,7 +1721,7 @@
|
|
|
1575
1721
|
* @api public
|
|
1576
1722
|
*/
|
|
1577
1723
|
|
|
1578
|
-
ClassList
|
|
1724
|
+
ClassList.prototype.add = function(name) {
|
|
1579
1725
|
this.list.add(name);
|
|
1580
1726
|
return this;
|
|
1581
1727
|
};
|
|
@@ -1590,8 +1736,8 @@
|
|
|
1590
1736
|
* @api public
|
|
1591
1737
|
*/
|
|
1592
1738
|
|
|
1593
|
-
ClassList
|
|
1594
|
-
if ('[object RegExp]' == toString
|
|
1739
|
+
ClassList.prototype.remove = function(name) {
|
|
1740
|
+
if ('[object RegExp]' == toString.call(name)) {
|
|
1595
1741
|
return this.removeMatching(name);
|
|
1596
1742
|
}
|
|
1597
1743
|
|
|
@@ -1607,7 +1753,7 @@
|
|
|
1607
1753
|
* @api private
|
|
1608
1754
|
*/
|
|
1609
1755
|
|
|
1610
|
-
ClassList
|
|
1756
|
+
ClassList.prototype.removeMatching = function(re) {
|
|
1611
1757
|
const arr = this.array();
|
|
1612
1758
|
for (let i = 0; i < arr.length; i++) {
|
|
1613
1759
|
if (re.test(arr[i])) {
|
|
@@ -1629,7 +1775,7 @@
|
|
|
1629
1775
|
* @api public
|
|
1630
1776
|
*/
|
|
1631
1777
|
|
|
1632
|
-
ClassList
|
|
1778
|
+
ClassList.prototype.toggle = function(name, force) {
|
|
1633
1779
|
if ('undefined' !== typeof force) {
|
|
1634
1780
|
if (force !== this.list.toggle(name, force)) {
|
|
1635
1781
|
this.list.toggle(name); // toggle again to correct
|
|
@@ -1647,7 +1793,7 @@
|
|
|
1647
1793
|
* @api public
|
|
1648
1794
|
*/
|
|
1649
1795
|
|
|
1650
|
-
ClassList
|
|
1796
|
+
ClassList.prototype.array = function() {
|
|
1651
1797
|
return Array.from(this.list);
|
|
1652
1798
|
};
|
|
1653
1799
|
|
|
@@ -1659,15 +1805,15 @@
|
|
|
1659
1805
|
* @api public
|
|
1660
1806
|
*/
|
|
1661
1807
|
|
|
1662
|
-
ClassList
|
|
1663
|
-
ClassList
|
|
1808
|
+
ClassList.prototype.has =
|
|
1809
|
+
ClassList.prototype.contains = function(name) {
|
|
1664
1810
|
return this.list.contains(name);
|
|
1665
1811
|
};
|
|
1666
1812
|
|
|
1667
1813
|
/**
|
|
1668
1814
|
* Remove all children from the given element.
|
|
1669
1815
|
*/
|
|
1670
|
-
function clear
|
|
1816
|
+
function clear(el) {
|
|
1671
1817
|
|
|
1672
1818
|
var c;
|
|
1673
1819
|
|
|
@@ -1819,7 +1965,7 @@
|
|
|
1819
1965
|
* Expose `parse`.
|
|
1820
1966
|
*/
|
|
1821
1967
|
|
|
1822
|
-
var domify = parse
|
|
1968
|
+
var domify = parse;
|
|
1823
1969
|
|
|
1824
1970
|
/**
|
|
1825
1971
|
* Tests for browser support.
|
|
@@ -1883,7 +2029,7 @@
|
|
|
1883
2029
|
* @api private
|
|
1884
2030
|
*/
|
|
1885
2031
|
|
|
1886
|
-
function parse
|
|
2032
|
+
function parse(html, doc) {
|
|
1887
2033
|
if ('string' != typeof html) throw new TypeError('String expected');
|
|
1888
2034
|
|
|
1889
2035
|
// default to the global `document` object
|
|
@@ -1941,578 +2087,10 @@
|
|
|
1941
2087
|
return el.querySelectorAll(selector);
|
|
1942
2088
|
}
|
|
1943
2089
|
|
|
1944
|
-
function remove$
|
|
2090
|
+
function remove$1(el) {
|
|
1945
2091
|
el.parentNode && el.parentNode.removeChild(el);
|
|
1946
2092
|
}
|
|
1947
2093
|
|
|
1948
|
-
function ensureImported(element, target) {
|
|
1949
|
-
|
|
1950
|
-
if (element.ownerDocument !== target.ownerDocument) {
|
|
1951
|
-
try {
|
|
1952
|
-
|
|
1953
|
-
// may fail on webkit
|
|
1954
|
-
return target.ownerDocument.importNode(element, true);
|
|
1955
|
-
} catch (e) {
|
|
1956
|
-
|
|
1957
|
-
// ignore
|
|
1958
|
-
}
|
|
1959
|
-
}
|
|
1960
|
-
|
|
1961
|
-
return element;
|
|
1962
|
-
}
|
|
1963
|
-
|
|
1964
|
-
/**
|
|
1965
|
-
* appendTo utility
|
|
1966
|
-
*/
|
|
1967
|
-
|
|
1968
|
-
/**
|
|
1969
|
-
* Append a node to a target element and return the appended node.
|
|
1970
|
-
*
|
|
1971
|
-
* @param {SVGElement} element
|
|
1972
|
-
* @param {SVGElement} target
|
|
1973
|
-
*
|
|
1974
|
-
* @return {SVGElement} the appended node
|
|
1975
|
-
*/
|
|
1976
|
-
function appendTo(element, target) {
|
|
1977
|
-
return target.appendChild(ensureImported(element, target));
|
|
1978
|
-
}
|
|
1979
|
-
|
|
1980
|
-
/**
|
|
1981
|
-
* append utility
|
|
1982
|
-
*/
|
|
1983
|
-
|
|
1984
|
-
/**
|
|
1985
|
-
* Append a node to an element
|
|
1986
|
-
*
|
|
1987
|
-
* @param {SVGElement} element
|
|
1988
|
-
* @param {SVGElement} node
|
|
1989
|
-
*
|
|
1990
|
-
* @return {SVGElement} the element
|
|
1991
|
-
*/
|
|
1992
|
-
function append(target, node) {
|
|
1993
|
-
appendTo(node, target);
|
|
1994
|
-
return target;
|
|
1995
|
-
}
|
|
1996
|
-
|
|
1997
|
-
/**
|
|
1998
|
-
* attribute accessor utility
|
|
1999
|
-
*/
|
|
2000
|
-
|
|
2001
|
-
var LENGTH_ATTR = 2;
|
|
2002
|
-
|
|
2003
|
-
var CSS_PROPERTIES = {
|
|
2004
|
-
'alignment-baseline': 1,
|
|
2005
|
-
'baseline-shift': 1,
|
|
2006
|
-
'clip': 1,
|
|
2007
|
-
'clip-path': 1,
|
|
2008
|
-
'clip-rule': 1,
|
|
2009
|
-
'color': 1,
|
|
2010
|
-
'color-interpolation': 1,
|
|
2011
|
-
'color-interpolation-filters': 1,
|
|
2012
|
-
'color-profile': 1,
|
|
2013
|
-
'color-rendering': 1,
|
|
2014
|
-
'cursor': 1,
|
|
2015
|
-
'direction': 1,
|
|
2016
|
-
'display': 1,
|
|
2017
|
-
'dominant-baseline': 1,
|
|
2018
|
-
'enable-background': 1,
|
|
2019
|
-
'fill': 1,
|
|
2020
|
-
'fill-opacity': 1,
|
|
2021
|
-
'fill-rule': 1,
|
|
2022
|
-
'filter': 1,
|
|
2023
|
-
'flood-color': 1,
|
|
2024
|
-
'flood-opacity': 1,
|
|
2025
|
-
'font': 1,
|
|
2026
|
-
'font-family': 1,
|
|
2027
|
-
'font-size': LENGTH_ATTR,
|
|
2028
|
-
'font-size-adjust': 1,
|
|
2029
|
-
'font-stretch': 1,
|
|
2030
|
-
'font-style': 1,
|
|
2031
|
-
'font-variant': 1,
|
|
2032
|
-
'font-weight': 1,
|
|
2033
|
-
'glyph-orientation-horizontal': 1,
|
|
2034
|
-
'glyph-orientation-vertical': 1,
|
|
2035
|
-
'image-rendering': 1,
|
|
2036
|
-
'kerning': 1,
|
|
2037
|
-
'letter-spacing': 1,
|
|
2038
|
-
'lighting-color': 1,
|
|
2039
|
-
'marker': 1,
|
|
2040
|
-
'marker-end': 1,
|
|
2041
|
-
'marker-mid': 1,
|
|
2042
|
-
'marker-start': 1,
|
|
2043
|
-
'mask': 1,
|
|
2044
|
-
'opacity': 1,
|
|
2045
|
-
'overflow': 1,
|
|
2046
|
-
'pointer-events': 1,
|
|
2047
|
-
'shape-rendering': 1,
|
|
2048
|
-
'stop-color': 1,
|
|
2049
|
-
'stop-opacity': 1,
|
|
2050
|
-
'stroke': 1,
|
|
2051
|
-
'stroke-dasharray': 1,
|
|
2052
|
-
'stroke-dashoffset': 1,
|
|
2053
|
-
'stroke-linecap': 1,
|
|
2054
|
-
'stroke-linejoin': 1,
|
|
2055
|
-
'stroke-miterlimit': 1,
|
|
2056
|
-
'stroke-opacity': 1,
|
|
2057
|
-
'stroke-width': LENGTH_ATTR,
|
|
2058
|
-
'text-anchor': 1,
|
|
2059
|
-
'text-decoration': 1,
|
|
2060
|
-
'text-rendering': 1,
|
|
2061
|
-
'unicode-bidi': 1,
|
|
2062
|
-
'visibility': 1,
|
|
2063
|
-
'word-spacing': 1,
|
|
2064
|
-
'writing-mode': 1
|
|
2065
|
-
};
|
|
2066
|
-
|
|
2067
|
-
|
|
2068
|
-
function getAttribute(node, name) {
|
|
2069
|
-
if (CSS_PROPERTIES[name]) {
|
|
2070
|
-
return node.style[name];
|
|
2071
|
-
} else {
|
|
2072
|
-
return node.getAttributeNS(null, name);
|
|
2073
|
-
}
|
|
2074
|
-
}
|
|
2075
|
-
|
|
2076
|
-
function setAttribute(node, name, value) {
|
|
2077
|
-
var hyphenated = name.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
|
|
2078
|
-
|
|
2079
|
-
var type = CSS_PROPERTIES[hyphenated];
|
|
2080
|
-
|
|
2081
|
-
if (type) {
|
|
2082
|
-
|
|
2083
|
-
// append pixel unit, unless present
|
|
2084
|
-
if (type === LENGTH_ATTR && typeof value === 'number') {
|
|
2085
|
-
value = String(value) + 'px';
|
|
2086
|
-
}
|
|
2087
|
-
|
|
2088
|
-
node.style[hyphenated] = value;
|
|
2089
|
-
} else {
|
|
2090
|
-
node.setAttributeNS(null, name, value);
|
|
2091
|
-
}
|
|
2092
|
-
}
|
|
2093
|
-
|
|
2094
|
-
function setAttributes(node, attrs) {
|
|
2095
|
-
|
|
2096
|
-
var names = Object.keys(attrs), i, name;
|
|
2097
|
-
|
|
2098
|
-
for (i = 0, name; (name = names[i]); i++) {
|
|
2099
|
-
setAttribute(node, name, attrs[name]);
|
|
2100
|
-
}
|
|
2101
|
-
}
|
|
2102
|
-
|
|
2103
|
-
/**
|
|
2104
|
-
* Gets or sets raw attributes on a node.
|
|
2105
|
-
*
|
|
2106
|
-
* @param {SVGElement} node
|
|
2107
|
-
* @param {Object} [attrs]
|
|
2108
|
-
* @param {String} [name]
|
|
2109
|
-
* @param {String} [value]
|
|
2110
|
-
*
|
|
2111
|
-
* @return {String}
|
|
2112
|
-
*/
|
|
2113
|
-
function attr(node, name, value) {
|
|
2114
|
-
if (typeof name === 'string') {
|
|
2115
|
-
if (value !== undefined) {
|
|
2116
|
-
setAttribute(node, name, value);
|
|
2117
|
-
} else {
|
|
2118
|
-
return getAttribute(node, name);
|
|
2119
|
-
}
|
|
2120
|
-
} else {
|
|
2121
|
-
setAttributes(node, name);
|
|
2122
|
-
}
|
|
2123
|
-
|
|
2124
|
-
return node;
|
|
2125
|
-
}
|
|
2126
|
-
|
|
2127
|
-
/**
|
|
2128
|
-
* Taken from https://github.com/component/classes
|
|
2129
|
-
*
|
|
2130
|
-
* Without the component bits.
|
|
2131
|
-
*/
|
|
2132
|
-
|
|
2133
|
-
/**
|
|
2134
|
-
* toString reference.
|
|
2135
|
-
*/
|
|
2136
|
-
|
|
2137
|
-
const toString = Object.prototype.toString;
|
|
2138
|
-
|
|
2139
|
-
/**
|
|
2140
|
-
* Wrap `el` in a `ClassList`.
|
|
2141
|
-
*
|
|
2142
|
-
* @param {Element} el
|
|
2143
|
-
* @return {ClassList}
|
|
2144
|
-
* @api public
|
|
2145
|
-
*/
|
|
2146
|
-
|
|
2147
|
-
function classes(el) {
|
|
2148
|
-
return new ClassList(el);
|
|
2149
|
-
}
|
|
2150
|
-
|
|
2151
|
-
function ClassList(el) {
|
|
2152
|
-
if (!el || !el.nodeType) {
|
|
2153
|
-
throw new Error('A DOM element reference is required');
|
|
2154
|
-
}
|
|
2155
|
-
this.el = el;
|
|
2156
|
-
this.list = el.classList;
|
|
2157
|
-
}
|
|
2158
|
-
|
|
2159
|
-
/**
|
|
2160
|
-
* Add class `name` if not already present.
|
|
2161
|
-
*
|
|
2162
|
-
* @param {String} name
|
|
2163
|
-
* @return {ClassList}
|
|
2164
|
-
* @api public
|
|
2165
|
-
*/
|
|
2166
|
-
|
|
2167
|
-
ClassList.prototype.add = function(name) {
|
|
2168
|
-
this.list.add(name);
|
|
2169
|
-
return this;
|
|
2170
|
-
};
|
|
2171
|
-
|
|
2172
|
-
/**
|
|
2173
|
-
* Remove class `name` when present, or
|
|
2174
|
-
* pass a regular expression to remove
|
|
2175
|
-
* any which match.
|
|
2176
|
-
*
|
|
2177
|
-
* @param {String|RegExp} name
|
|
2178
|
-
* @return {ClassList}
|
|
2179
|
-
* @api public
|
|
2180
|
-
*/
|
|
2181
|
-
|
|
2182
|
-
ClassList.prototype.remove = function(name) {
|
|
2183
|
-
if ('[object RegExp]' == toString.call(name)) {
|
|
2184
|
-
return this.removeMatching(name);
|
|
2185
|
-
}
|
|
2186
|
-
|
|
2187
|
-
this.list.remove(name);
|
|
2188
|
-
return this;
|
|
2189
|
-
};
|
|
2190
|
-
|
|
2191
|
-
/**
|
|
2192
|
-
* Remove all classes matching `re`.
|
|
2193
|
-
*
|
|
2194
|
-
* @param {RegExp} re
|
|
2195
|
-
* @return {ClassList}
|
|
2196
|
-
* @api private
|
|
2197
|
-
*/
|
|
2198
|
-
|
|
2199
|
-
ClassList.prototype.removeMatching = function(re) {
|
|
2200
|
-
const arr = this.array();
|
|
2201
|
-
for (let i = 0; i < arr.length; i++) {
|
|
2202
|
-
if (re.test(arr[i])) {
|
|
2203
|
-
this.remove(arr[i]);
|
|
2204
|
-
}
|
|
2205
|
-
}
|
|
2206
|
-
return this;
|
|
2207
|
-
};
|
|
2208
|
-
|
|
2209
|
-
/**
|
|
2210
|
-
* Toggle class `name`, can force state via `force`.
|
|
2211
|
-
*
|
|
2212
|
-
* For browsers that support classList, but do not support `force` yet,
|
|
2213
|
-
* the mistake will be detected and corrected.
|
|
2214
|
-
*
|
|
2215
|
-
* @param {String} name
|
|
2216
|
-
* @param {Boolean} force
|
|
2217
|
-
* @return {ClassList}
|
|
2218
|
-
* @api public
|
|
2219
|
-
*/
|
|
2220
|
-
|
|
2221
|
-
ClassList.prototype.toggle = function(name, force) {
|
|
2222
|
-
if ('undefined' !== typeof force) {
|
|
2223
|
-
if (force !== this.list.toggle(name, force)) {
|
|
2224
|
-
this.list.toggle(name); // toggle again to correct
|
|
2225
|
-
}
|
|
2226
|
-
} else {
|
|
2227
|
-
this.list.toggle(name);
|
|
2228
|
-
}
|
|
2229
|
-
return this;
|
|
2230
|
-
};
|
|
2231
|
-
|
|
2232
|
-
/**
|
|
2233
|
-
* Return an array of classes.
|
|
2234
|
-
*
|
|
2235
|
-
* @return {Array}
|
|
2236
|
-
* @api public
|
|
2237
|
-
*/
|
|
2238
|
-
|
|
2239
|
-
ClassList.prototype.array = function() {
|
|
2240
|
-
return Array.from(this.list);
|
|
2241
|
-
};
|
|
2242
|
-
|
|
2243
|
-
/**
|
|
2244
|
-
* Check if class `name` is present.
|
|
2245
|
-
*
|
|
2246
|
-
* @param {String} name
|
|
2247
|
-
* @return {ClassList}
|
|
2248
|
-
* @api public
|
|
2249
|
-
*/
|
|
2250
|
-
|
|
2251
|
-
ClassList.prototype.has =
|
|
2252
|
-
ClassList.prototype.contains = function(name) {
|
|
2253
|
-
return this.list.contains(name);
|
|
2254
|
-
};
|
|
2255
|
-
|
|
2256
|
-
function remove$1(element) {
|
|
2257
|
-
var parent = element.parentNode;
|
|
2258
|
-
|
|
2259
|
-
if (parent) {
|
|
2260
|
-
parent.removeChild(element);
|
|
2261
|
-
}
|
|
2262
|
-
|
|
2263
|
-
return element;
|
|
2264
|
-
}
|
|
2265
|
-
|
|
2266
|
-
/**
|
|
2267
|
-
* Clear utility
|
|
2268
|
-
*/
|
|
2269
|
-
|
|
2270
|
-
/**
|
|
2271
|
-
* Removes all children from the given element
|
|
2272
|
-
*
|
|
2273
|
-
* @param {DOMElement} element
|
|
2274
|
-
* @return {DOMElement} the element (for chaining)
|
|
2275
|
-
*/
|
|
2276
|
-
function clear(element) {
|
|
2277
|
-
var child;
|
|
2278
|
-
|
|
2279
|
-
while ((child = element.firstChild)) {
|
|
2280
|
-
remove$1(child);
|
|
2281
|
-
}
|
|
2282
|
-
|
|
2283
|
-
return element;
|
|
2284
|
-
}
|
|
2285
|
-
|
|
2286
|
-
var ns = {
|
|
2287
|
-
svg: 'http://www.w3.org/2000/svg'
|
|
2288
|
-
};
|
|
2289
|
-
|
|
2290
|
-
/**
|
|
2291
|
-
* DOM parsing utility
|
|
2292
|
-
*/
|
|
2293
|
-
|
|
2294
|
-
var SVG_START = '<svg xmlns="' + ns.svg + '"';
|
|
2295
|
-
|
|
2296
|
-
function parse(svg) {
|
|
2297
|
-
|
|
2298
|
-
var unwrap = false;
|
|
2299
|
-
|
|
2300
|
-
// ensure we import a valid svg document
|
|
2301
|
-
if (svg.substring(0, 4) === '<svg') {
|
|
2302
|
-
if (svg.indexOf(ns.svg) === -1) {
|
|
2303
|
-
svg = SVG_START + svg.substring(4);
|
|
2304
|
-
}
|
|
2305
|
-
} else {
|
|
2306
|
-
|
|
2307
|
-
// namespace svg
|
|
2308
|
-
svg = SVG_START + '>' + svg + '</svg>';
|
|
2309
|
-
unwrap = true;
|
|
2310
|
-
}
|
|
2311
|
-
|
|
2312
|
-
var parsed = parseDocument(svg);
|
|
2313
|
-
|
|
2314
|
-
if (!unwrap) {
|
|
2315
|
-
return parsed;
|
|
2316
|
-
}
|
|
2317
|
-
|
|
2318
|
-
var fragment = document.createDocumentFragment();
|
|
2319
|
-
|
|
2320
|
-
var parent = parsed.firstChild;
|
|
2321
|
-
|
|
2322
|
-
while (parent.firstChild) {
|
|
2323
|
-
fragment.appendChild(parent.firstChild);
|
|
2324
|
-
}
|
|
2325
|
-
|
|
2326
|
-
return fragment;
|
|
2327
|
-
}
|
|
2328
|
-
|
|
2329
|
-
function parseDocument(svg) {
|
|
2330
|
-
|
|
2331
|
-
var parser;
|
|
2332
|
-
|
|
2333
|
-
// parse
|
|
2334
|
-
parser = new DOMParser();
|
|
2335
|
-
parser.async = false;
|
|
2336
|
-
|
|
2337
|
-
return parser.parseFromString(svg, 'text/xml');
|
|
2338
|
-
}
|
|
2339
|
-
|
|
2340
|
-
/**
|
|
2341
|
-
* Create utility for SVG elements
|
|
2342
|
-
*/
|
|
2343
|
-
|
|
2344
|
-
|
|
2345
|
-
/**
|
|
2346
|
-
* Create a specific type from name or SVG markup.
|
|
2347
|
-
*
|
|
2348
|
-
* @param {String} name the name or markup of the element
|
|
2349
|
-
* @param {Object} [attrs] attributes to set on the element
|
|
2350
|
-
*
|
|
2351
|
-
* @returns {SVGElement}
|
|
2352
|
-
*/
|
|
2353
|
-
function create$1(name, attrs) {
|
|
2354
|
-
var element;
|
|
2355
|
-
|
|
2356
|
-
if (name.charAt(0) === '<') {
|
|
2357
|
-
element = parse(name).firstChild;
|
|
2358
|
-
element = document.importNode(element, true);
|
|
2359
|
-
} else {
|
|
2360
|
-
element = document.createElementNS(ns.svg, name);
|
|
2361
|
-
}
|
|
2362
|
-
|
|
2363
|
-
if (attrs) {
|
|
2364
|
-
attr(element, attrs);
|
|
2365
|
-
}
|
|
2366
|
-
|
|
2367
|
-
return element;
|
|
2368
|
-
}
|
|
2369
|
-
|
|
2370
|
-
/**
|
|
2371
|
-
* Serialization util
|
|
2372
|
-
*/
|
|
2373
|
-
|
|
2374
|
-
var TEXT_ENTITIES = /([&<>]{1})/g;
|
|
2375
|
-
var ATTR_ENTITIES = /([\n\r"]{1})/g;
|
|
2376
|
-
|
|
2377
|
-
var ENTITY_REPLACEMENT = {
|
|
2378
|
-
'&': '&',
|
|
2379
|
-
'<': '<',
|
|
2380
|
-
'>': '>',
|
|
2381
|
-
'"': '\''
|
|
2382
|
-
};
|
|
2383
|
-
|
|
2384
|
-
function escape$1(str, pattern) {
|
|
2385
|
-
|
|
2386
|
-
function replaceFn(match, entity) {
|
|
2387
|
-
return ENTITY_REPLACEMENT[entity] || entity;
|
|
2388
|
-
}
|
|
2389
|
-
|
|
2390
|
-
return str.replace(pattern, replaceFn);
|
|
2391
|
-
}
|
|
2392
|
-
|
|
2393
|
-
function serialize(node, output) {
|
|
2394
|
-
|
|
2395
|
-
var i, len, attrMap, attrNode, childNodes;
|
|
2396
|
-
|
|
2397
|
-
switch (node.nodeType) {
|
|
2398
|
-
|
|
2399
|
-
// TEXT
|
|
2400
|
-
case 3:
|
|
2401
|
-
|
|
2402
|
-
// replace special XML characters
|
|
2403
|
-
output.push(escape$1(node.textContent, TEXT_ENTITIES));
|
|
2404
|
-
break;
|
|
2405
|
-
|
|
2406
|
-
// ELEMENT
|
|
2407
|
-
case 1:
|
|
2408
|
-
output.push('<', node.tagName);
|
|
2409
|
-
|
|
2410
|
-
if (node.hasAttributes()) {
|
|
2411
|
-
attrMap = node.attributes;
|
|
2412
|
-
for (i = 0, len = attrMap.length; i < len; ++i) {
|
|
2413
|
-
attrNode = attrMap.item(i);
|
|
2414
|
-
output.push(' ', attrNode.name, '="', escape$1(attrNode.value, ATTR_ENTITIES), '"');
|
|
2415
|
-
}
|
|
2416
|
-
}
|
|
2417
|
-
|
|
2418
|
-
if (node.hasChildNodes()) {
|
|
2419
|
-
output.push('>');
|
|
2420
|
-
childNodes = node.childNodes;
|
|
2421
|
-
for (i = 0, len = childNodes.length; i < len; ++i) {
|
|
2422
|
-
serialize(childNodes.item(i), output);
|
|
2423
|
-
}
|
|
2424
|
-
output.push('</', node.tagName, '>');
|
|
2425
|
-
} else {
|
|
2426
|
-
output.push('/>');
|
|
2427
|
-
}
|
|
2428
|
-
break;
|
|
2429
|
-
|
|
2430
|
-
// COMMENT
|
|
2431
|
-
case 8:
|
|
2432
|
-
output.push('<!--', escape$1(node.nodeValue, TEXT_ENTITIES), '-->');
|
|
2433
|
-
break;
|
|
2434
|
-
|
|
2435
|
-
// CDATA
|
|
2436
|
-
case 4:
|
|
2437
|
-
output.push('<![CDATA[', node.nodeValue, ']]>');
|
|
2438
|
-
break;
|
|
2439
|
-
|
|
2440
|
-
default:
|
|
2441
|
-
throw new Error('unable to handle node ' + node.nodeType);
|
|
2442
|
-
}
|
|
2443
|
-
|
|
2444
|
-
return output;
|
|
2445
|
-
}
|
|
2446
|
-
|
|
2447
|
-
/**
|
|
2448
|
-
* innerHTML like functionality for SVG elements.
|
|
2449
|
-
* based on innerSVG (https://code.google.com/p/innersvg)
|
|
2450
|
-
*/
|
|
2451
|
-
|
|
2452
|
-
|
|
2453
|
-
function set(element, svg) {
|
|
2454
|
-
|
|
2455
|
-
var parsed = parse(svg);
|
|
2456
|
-
|
|
2457
|
-
// clear element contents
|
|
2458
|
-
clear(element);
|
|
2459
|
-
|
|
2460
|
-
if (!svg) {
|
|
2461
|
-
return;
|
|
2462
|
-
}
|
|
2463
|
-
|
|
2464
|
-
if (!isFragment(parsed)) {
|
|
2465
|
-
|
|
2466
|
-
// extract <svg> from parsed document
|
|
2467
|
-
parsed = parsed.documentElement;
|
|
2468
|
-
}
|
|
2469
|
-
|
|
2470
|
-
var nodes = slice$1(parsed.childNodes);
|
|
2471
|
-
|
|
2472
|
-
// import + append each node
|
|
2473
|
-
for (var i = 0; i < nodes.length; i++) {
|
|
2474
|
-
appendTo(nodes[i], element);
|
|
2475
|
-
}
|
|
2476
|
-
|
|
2477
|
-
}
|
|
2478
|
-
|
|
2479
|
-
function get(element) {
|
|
2480
|
-
var child = element.firstChild,
|
|
2481
|
-
output = [];
|
|
2482
|
-
|
|
2483
|
-
while (child) {
|
|
2484
|
-
serialize(child, output);
|
|
2485
|
-
child = child.nextSibling;
|
|
2486
|
-
}
|
|
2487
|
-
|
|
2488
|
-
return output.join('');
|
|
2489
|
-
}
|
|
2490
|
-
|
|
2491
|
-
function isFragment(node) {
|
|
2492
|
-
return node.nodeName === '#document-fragment';
|
|
2493
|
-
}
|
|
2494
|
-
|
|
2495
|
-
function innerSVG(element, svg) {
|
|
2496
|
-
|
|
2497
|
-
if (svg !== undefined) {
|
|
2498
|
-
|
|
2499
|
-
try {
|
|
2500
|
-
set(element, svg);
|
|
2501
|
-
} catch (e) {
|
|
2502
|
-
throw new Error('error parsing SVG: ' + e.message);
|
|
2503
|
-
}
|
|
2504
|
-
|
|
2505
|
-
return element;
|
|
2506
|
-
} else {
|
|
2507
|
-
return get(element);
|
|
2508
|
-
}
|
|
2509
|
-
}
|
|
2510
|
-
|
|
2511
|
-
|
|
2512
|
-
function slice$1(arr) {
|
|
2513
|
-
return Array.prototype.slice.call(arr);
|
|
2514
|
-
}
|
|
2515
|
-
|
|
2516
2094
|
/**
|
|
2517
2095
|
* @param {<SVGElement>} element
|
|
2518
2096
|
* @param {number} x
|
|
@@ -2767,11 +2345,11 @@
|
|
|
2767
2345
|
|
|
2768
2346
|
var marker = create$1('marker');
|
|
2769
2347
|
|
|
2770
|
-
attr(options.element, attrs);
|
|
2348
|
+
attr$1(options.element, attrs);
|
|
2771
2349
|
|
|
2772
2350
|
append(marker, options.element);
|
|
2773
2351
|
|
|
2774
|
-
attr(marker, {
|
|
2352
|
+
attr$1(marker, {
|
|
2775
2353
|
id: id,
|
|
2776
2354
|
viewBox: '0 0 20 20',
|
|
2777
2355
|
refX: ref.x,
|
|
@@ -2814,7 +2392,7 @@
|
|
|
2814
2392
|
|
|
2815
2393
|
if (type === 'sequenceflow-end') {
|
|
2816
2394
|
var sequenceflowEnd = create$1('path');
|
|
2817
|
-
attr(sequenceflowEnd, { d: 'M 1 5 L 11 10 L 1 15 Z' });
|
|
2395
|
+
attr$1(sequenceflowEnd, { d: 'M 1 5 L 11 10 L 1 15 Z' });
|
|
2818
2396
|
|
|
2819
2397
|
addMarker(id, {
|
|
2820
2398
|
element: sequenceflowEnd,
|
|
@@ -2829,7 +2407,7 @@
|
|
|
2829
2407
|
|
|
2830
2408
|
if (type === 'messageflow-start') {
|
|
2831
2409
|
var messageflowStart = create$1('circle');
|
|
2832
|
-
attr(messageflowStart, { cx: 6, cy: 6, r: 3.5 });
|
|
2410
|
+
attr$1(messageflowStart, { cx: 6, cy: 6, r: 3.5 });
|
|
2833
2411
|
|
|
2834
2412
|
addMarker(id, {
|
|
2835
2413
|
element: messageflowStart,
|
|
@@ -2843,7 +2421,7 @@
|
|
|
2843
2421
|
|
|
2844
2422
|
if (type === 'messageflow-end') {
|
|
2845
2423
|
var messageflowEnd = create$1('path');
|
|
2846
|
-
attr(messageflowEnd, { d: 'm 1 5 l 0 -3 l 7 3 l -7 3 z' });
|
|
2424
|
+
attr$1(messageflowEnd, { d: 'm 1 5 l 0 -3 l 7 3 l -7 3 z' });
|
|
2847
2425
|
|
|
2848
2426
|
addMarker(id, {
|
|
2849
2427
|
element: messageflowEnd,
|
|
@@ -2858,7 +2436,7 @@
|
|
|
2858
2436
|
|
|
2859
2437
|
if (type === 'association-start') {
|
|
2860
2438
|
var associationStart = create$1('path');
|
|
2861
|
-
attr(associationStart, { d: 'M 11 5 L 1 10 L 11 15' });
|
|
2439
|
+
attr$1(associationStart, { d: 'M 11 5 L 1 10 L 11 15' });
|
|
2862
2440
|
|
|
2863
2441
|
addMarker(id, {
|
|
2864
2442
|
element: associationStart,
|
|
@@ -2874,7 +2452,7 @@
|
|
|
2874
2452
|
|
|
2875
2453
|
if (type === 'association-end') {
|
|
2876
2454
|
var associationEnd = create$1('path');
|
|
2877
|
-
attr(associationEnd, { d: 'M 1 5 L 11 10 L 1 15' });
|
|
2455
|
+
attr$1(associationEnd, { d: 'M 1 5 L 11 10 L 1 15' });
|
|
2878
2456
|
|
|
2879
2457
|
addMarker(id, {
|
|
2880
2458
|
element: associationEnd,
|
|
@@ -2890,7 +2468,7 @@
|
|
|
2890
2468
|
|
|
2891
2469
|
if (type === 'conditional-flow-marker') {
|
|
2892
2470
|
var conditionalflowMarker = create$1('path');
|
|
2893
|
-
attr(conditionalflowMarker, { d: 'M 0 10 L 8 6 L 16 10 L 8 14 Z' });
|
|
2471
|
+
attr$1(conditionalflowMarker, { d: 'M 0 10 L 8 6 L 16 10 L 8 14 Z' });
|
|
2894
2472
|
|
|
2895
2473
|
addMarker(id, {
|
|
2896
2474
|
element: conditionalflowMarker,
|
|
@@ -2905,7 +2483,7 @@
|
|
|
2905
2483
|
|
|
2906
2484
|
if (type === 'conditional-default-flow-marker') {
|
|
2907
2485
|
var conditionaldefaultflowMarker = create$1('path');
|
|
2908
|
-
attr(conditionaldefaultflowMarker, { d: 'M 6 4 L 10 16' });
|
|
2486
|
+
attr$1(conditionaldefaultflowMarker, { d: 'M 6 4 L 10 16' });
|
|
2909
2487
|
|
|
2910
2488
|
addMarker(id, {
|
|
2911
2489
|
element: conditionaldefaultflowMarker,
|
|
@@ -2941,12 +2519,12 @@
|
|
|
2941
2519
|
cy = height / 2;
|
|
2942
2520
|
|
|
2943
2521
|
var circle = create$1('circle');
|
|
2944
|
-
attr(circle, {
|
|
2522
|
+
attr$1(circle, {
|
|
2945
2523
|
cx: cx,
|
|
2946
2524
|
cy: cy,
|
|
2947
2525
|
r: Math.round((width + height) / 4 - offset)
|
|
2948
2526
|
});
|
|
2949
|
-
attr(circle, attrs);
|
|
2527
|
+
attr$1(circle, attrs);
|
|
2950
2528
|
|
|
2951
2529
|
append(parentGfx, circle);
|
|
2952
2530
|
|
|
@@ -2969,7 +2547,7 @@
|
|
|
2969
2547
|
});
|
|
2970
2548
|
|
|
2971
2549
|
var rect = create$1('rect');
|
|
2972
|
-
attr(rect, {
|
|
2550
|
+
attr$1(rect, {
|
|
2973
2551
|
x: offset,
|
|
2974
2552
|
y: offset,
|
|
2975
2553
|
width: width - offset * 2,
|
|
@@ -2977,7 +2555,7 @@
|
|
|
2977
2555
|
rx: r,
|
|
2978
2556
|
ry: r
|
|
2979
2557
|
});
|
|
2980
|
-
attr(rect, attrs);
|
|
2558
|
+
attr$1(rect, attrs);
|
|
2981
2559
|
|
|
2982
2560
|
append(parentGfx, rect);
|
|
2983
2561
|
|
|
@@ -3002,10 +2580,10 @@
|
|
|
3002
2580
|
});
|
|
3003
2581
|
|
|
3004
2582
|
var polygon = create$1('polygon');
|
|
3005
|
-
attr(polygon, {
|
|
2583
|
+
attr$1(polygon, {
|
|
3006
2584
|
points: pointsString
|
|
3007
2585
|
});
|
|
3008
|
-
attr(polygon, attrs);
|
|
2586
|
+
attr$1(polygon, attrs);
|
|
3009
2587
|
|
|
3010
2588
|
append(parentGfx, polygon);
|
|
3011
2589
|
|
|
@@ -3034,8 +2612,8 @@
|
|
|
3034
2612
|
});
|
|
3035
2613
|
|
|
3036
2614
|
var path = create$1('path');
|
|
3037
|
-
attr(path, { d: d });
|
|
3038
|
-
attr(path, attrs);
|
|
2615
|
+
attr$1(path, { d: d });
|
|
2616
|
+
attr$1(path, attrs);
|
|
3039
2617
|
|
|
3040
2618
|
append(parentGfx, path);
|
|
3041
2619
|
|
|
@@ -3123,7 +2701,7 @@
|
|
|
3123
2701
|
|
|
3124
2702
|
var text = textRenderer.createText(label || '', options);
|
|
3125
2703
|
|
|
3126
|
-
classes(text).add('djs-label');
|
|
2704
|
+
classes$1(text).add('djs-label');
|
|
3127
2705
|
|
|
3128
2706
|
append(parentGfx, text);
|
|
3129
2707
|
|
|
@@ -3735,7 +3313,7 @@
|
|
|
3735
3313
|
});
|
|
3736
3314
|
|
|
3737
3315
|
var businessHeaderPath = drawPath(parentGfx, headerPathData);
|
|
3738
|
-
attr(businessHeaderPath, {
|
|
3316
|
+
attr$1(businessHeaderPath, {
|
|
3739
3317
|
strokeWidth: 1,
|
|
3740
3318
|
fill: getFillColor(element, '#aaaaaa'),
|
|
3741
3319
|
stroke: getStrokeColor(element, defaultStrokeColor)
|
|
@@ -3749,7 +3327,7 @@
|
|
|
3749
3327
|
});
|
|
3750
3328
|
|
|
3751
3329
|
var businessPath = drawPath(parentGfx, headerData);
|
|
3752
|
-
attr(businessPath, {
|
|
3330
|
+
attr$1(businessPath, {
|
|
3753
3331
|
strokeWidth: 1,
|
|
3754
3332
|
stroke: getStrokeColor(element, defaultStrokeColor)
|
|
3755
3333
|
});
|
|
@@ -3767,7 +3345,7 @@
|
|
|
3767
3345
|
var expanded = isExpanded(element);
|
|
3768
3346
|
|
|
3769
3347
|
if (isEventSubProcess(element)) {
|
|
3770
|
-
attr(rect, {
|
|
3348
|
+
attr$1(rect, {
|
|
3771
3349
|
strokeDasharray: '1,2'
|
|
3772
3350
|
});
|
|
3773
3351
|
}
|
|
@@ -3989,7 +3567,7 @@
|
|
|
3989
3567
|
});
|
|
3990
3568
|
|
|
3991
3569
|
var parallelPath = drawPath(parentGfx, pathData);
|
|
3992
|
-
attr(parallelPath, {
|
|
3570
|
+
attr$1(parallelPath, {
|
|
3993
3571
|
strokeWidth: 1,
|
|
3994
3572
|
fill: 'none'
|
|
3995
3573
|
});
|
|
@@ -3997,7 +3575,7 @@
|
|
|
3997
3575
|
|
|
3998
3576
|
if (!instantiate) {
|
|
3999
3577
|
var innerCircle = drawCircle(parentGfx, element.width, element.height, element.height * 0.26);
|
|
4000
|
-
attr(innerCircle, {
|
|
3578
|
+
attr$1(innerCircle, {
|
|
4001
3579
|
strokeWidth: 1,
|
|
4002
3580
|
fill: 'none',
|
|
4003
3581
|
stroke: getStrokeColor(element, defaultStrokeColor)
|
|
@@ -4042,7 +3620,7 @@
|
|
|
4042
3620
|
|
|
4043
3621
|
// conditional flow marker
|
|
4044
3622
|
if (sequenceFlow.conditionExpression && source.$instanceOf('bpmn:Activity')) {
|
|
4045
|
-
attr(path, {
|
|
3623
|
+
attr$1(path, {
|
|
4046
3624
|
markerStart: marker('conditional-flow-marker', fill, stroke)
|
|
4047
3625
|
});
|
|
4048
3626
|
}
|
|
@@ -4050,7 +3628,7 @@
|
|
|
4050
3628
|
// default marker
|
|
4051
3629
|
if (source.default && (source.$instanceOf('bpmn:Gateway') || source.$instanceOf('bpmn:Activity')) &&
|
|
4052
3630
|
source.default === sequenceFlow) {
|
|
4053
|
-
attr(path, {
|
|
3631
|
+
attr$1(path, {
|
|
4054
3632
|
markerStart: marker('conditional-default-flow-marker', fill, stroke)
|
|
4055
3633
|
});
|
|
4056
3634
|
}
|
|
@@ -4768,9 +4346,9 @@
|
|
|
4768
4346
|
var helperSvg = document.getElementById('helper-svg');
|
|
4769
4347
|
|
|
4770
4348
|
if (!helperSvg) {
|
|
4771
|
-
helperSvg = create$
|
|
4349
|
+
helperSvg = create$1('svg');
|
|
4772
4350
|
|
|
4773
|
-
attr$
|
|
4351
|
+
attr$1(helperSvg, {
|
|
4774
4352
|
id: 'helper-svg'
|
|
4775
4353
|
});
|
|
4776
4354
|
|
|
@@ -4864,13 +4442,13 @@
|
|
|
4864
4442
|
var maxWidth = box.width - padding.left - padding.right;
|
|
4865
4443
|
|
|
4866
4444
|
// ensure correct rendering by attaching helper text node to invisible SVG
|
|
4867
|
-
var helperText = create$
|
|
4868
|
-
attr$
|
|
4869
|
-
attr$
|
|
4445
|
+
var helperText = create$1('text');
|
|
4446
|
+
attr$1(helperText, { x: 0, y: 0 });
|
|
4447
|
+
attr$1(helperText, style);
|
|
4870
4448
|
|
|
4871
4449
|
var helperSvg = getHelperSvg();
|
|
4872
4450
|
|
|
4873
|
-
append
|
|
4451
|
+
append(helperSvg, helperText);
|
|
4874
4452
|
|
|
4875
4453
|
while (lines.length) {
|
|
4876
4454
|
layouted.push(layoutNext(lines, maxWidth, helperText));
|
|
@@ -4899,9 +4477,9 @@
|
|
|
4899
4477
|
y -= (lineHeight || layouted[0].height) / 4;
|
|
4900
4478
|
|
|
4901
4479
|
|
|
4902
|
-
var textElement = create$
|
|
4480
|
+
var textElement = create$1('text');
|
|
4903
4481
|
|
|
4904
|
-
attr$
|
|
4482
|
+
attr$1(textElement, style);
|
|
4905
4483
|
|
|
4906
4484
|
// layout each line taking into account that parent
|
|
4907
4485
|
// shape might resize to fit text size
|
|
@@ -4928,15 +4506,15 @@
|
|
|
4928
4506
|
- line.width) / 2 + padding.left), 0);
|
|
4929
4507
|
}
|
|
4930
4508
|
|
|
4931
|
-
var tspan = create$
|
|
4932
|
-
attr$
|
|
4509
|
+
var tspan = create$1('tspan');
|
|
4510
|
+
attr$1(tspan, { x: x, y: y });
|
|
4933
4511
|
|
|
4934
4512
|
tspan.textContent = line.text;
|
|
4935
4513
|
|
|
4936
|
-
append
|
|
4514
|
+
append(textElement, tspan);
|
|
4937
4515
|
});
|
|
4938
4516
|
|
|
4939
|
-
remove$
|
|
4517
|
+
remove$2(helperText);
|
|
4940
4518
|
|
|
4941
4519
|
var dimensions = {
|
|
4942
4520
|
width: maxLineWidth,
|
|
@@ -6507,13 +6085,13 @@
|
|
|
6507
6085
|
throw new Error('invalid hit type <' + type + '>');
|
|
6508
6086
|
}
|
|
6509
6087
|
|
|
6510
|
-
attr$
|
|
6088
|
+
attr$1(hit, attrs);
|
|
6511
6089
|
|
|
6512
6090
|
return hit;
|
|
6513
6091
|
}
|
|
6514
6092
|
|
|
6515
6093
|
function appendHit(gfx, hit) {
|
|
6516
|
-
append
|
|
6094
|
+
append(gfx, hit);
|
|
6517
6095
|
}
|
|
6518
6096
|
|
|
6519
6097
|
|
|
@@ -6527,7 +6105,7 @@
|
|
|
6527
6105
|
this.removeHits = function(gfx) {
|
|
6528
6106
|
var hits = all('.djs-hit', gfx);
|
|
6529
6107
|
|
|
6530
|
-
forEach$1(hits, remove$
|
|
6108
|
+
forEach$1(hits, remove$2);
|
|
6531
6109
|
};
|
|
6532
6110
|
|
|
6533
6111
|
/**
|
|
@@ -6591,11 +6169,11 @@
|
|
|
6591
6169
|
y: 0
|
|
6592
6170
|
}, attrs);
|
|
6593
6171
|
|
|
6594
|
-
var hit = create$
|
|
6172
|
+
var hit = create$1('rect');
|
|
6595
6173
|
|
|
6596
6174
|
applyStyle(hit, type);
|
|
6597
6175
|
|
|
6598
|
-
attr$
|
|
6176
|
+
attr$1(hit, attrs);
|
|
6599
6177
|
|
|
6600
6178
|
appendHit(gfx, hit);
|
|
6601
6179
|
|
|
@@ -6621,7 +6199,7 @@
|
|
|
6621
6199
|
if (element.waypoints) {
|
|
6622
6200
|
updateLine(hit, element.waypoints);
|
|
6623
6201
|
} else {
|
|
6624
|
-
attr$
|
|
6202
|
+
attr$1(hit, {
|
|
6625
6203
|
width: element.width,
|
|
6626
6204
|
height: element.height
|
|
6627
6205
|
});
|
|
@@ -6829,9 +6407,9 @@
|
|
|
6829
6407
|
var self = this;
|
|
6830
6408
|
|
|
6831
6409
|
function createOutline(gfx, bounds) {
|
|
6832
|
-
var outline = create$
|
|
6410
|
+
var outline = create$1('rect');
|
|
6833
6411
|
|
|
6834
|
-
attr$
|
|
6412
|
+
attr$1(outline, assign$1({
|
|
6835
6413
|
x: 10,
|
|
6836
6414
|
y: 10,
|
|
6837
6415
|
rx: 3,
|
|
@@ -6839,7 +6417,7 @@
|
|
|
6839
6417
|
height: 100
|
|
6840
6418
|
}, OUTLINE_STYLE));
|
|
6841
6419
|
|
|
6842
|
-
append
|
|
6420
|
+
append(gfx, outline);
|
|
6843
6421
|
|
|
6844
6422
|
return outline;
|
|
6845
6423
|
}
|
|
@@ -6883,7 +6461,7 @@
|
|
|
6883
6461
|
*/
|
|
6884
6462
|
Outline.prototype.updateShapeOutline = function(outline, element) {
|
|
6885
6463
|
|
|
6886
|
-
attr$
|
|
6464
|
+
attr$1(outline, {
|
|
6887
6465
|
x: -this.offset,
|
|
6888
6466
|
y: -this.offset,
|
|
6889
6467
|
width: element.width + this.offset * 2,
|
|
@@ -6904,7 +6482,7 @@
|
|
|
6904
6482
|
|
|
6905
6483
|
var bbox = getBBox(connection);
|
|
6906
6484
|
|
|
6907
|
-
attr$
|
|
6485
|
+
attr$1(outline, {
|
|
6908
6486
|
x: bbox.x - this.offset,
|
|
6909
6487
|
y: bbox.y - this.offset,
|
|
6910
6488
|
width: bbox.width + this.offset * 2,
|
|
@@ -7108,13 +6686,13 @@
|
|
|
7108
6686
|
SelectionVisuals.prototype._updateSelectionOutline = function(selection) {
|
|
7109
6687
|
var layer = this._canvas.getLayer('selectionOutline');
|
|
7110
6688
|
|
|
7111
|
-
clear$
|
|
6689
|
+
clear$1(layer);
|
|
7112
6690
|
|
|
7113
6691
|
var enabled = selection.length > 1;
|
|
7114
6692
|
|
|
7115
6693
|
var container = this._canvas.getContainer();
|
|
7116
6694
|
|
|
7117
|
-
classes$
|
|
6695
|
+
classes$1(container)[enabled ? 'add' : 'remove']('djs-multi-select');
|
|
7118
6696
|
|
|
7119
6697
|
if (!enabled) {
|
|
7120
6698
|
return;
|
|
@@ -7122,15 +6700,15 @@
|
|
|
7122
6700
|
|
|
7123
6701
|
var bBox = addSelectionOutlinePadding(getBBox(selection));
|
|
7124
6702
|
|
|
7125
|
-
var rect = create$
|
|
6703
|
+
var rect = create$1('rect');
|
|
7126
6704
|
|
|
7127
|
-
attr$
|
|
6705
|
+
attr$1(rect, assign$1({
|
|
7128
6706
|
rx: 3
|
|
7129
6707
|
}, bBox));
|
|
7130
6708
|
|
|
7131
|
-
classes$
|
|
6709
|
+
classes$1(rect).add('djs-selection-outline');
|
|
7132
6710
|
|
|
7133
|
-
append
|
|
6711
|
+
append(layer, rect);
|
|
7134
6712
|
};
|
|
7135
6713
|
|
|
7136
6714
|
// helpers //////////
|
|
@@ -7539,8 +7117,8 @@
|
|
|
7539
7117
|
var container = self._getOverlayContainer(overlay.element, true);
|
|
7540
7118
|
|
|
7541
7119
|
if (overlay) {
|
|
7542
|
-
remove$
|
|
7543
|
-
remove$
|
|
7120
|
+
remove$1(overlay.html);
|
|
7121
|
+
remove$1(overlay.htmlContainer);
|
|
7544
7122
|
|
|
7545
7123
|
delete overlay.htmlContainer;
|
|
7546
7124
|
delete overlay.element;
|
|
@@ -7573,7 +7151,7 @@
|
|
|
7573
7151
|
|
|
7574
7152
|
this._overlayContainers = [];
|
|
7575
7153
|
|
|
7576
|
-
clear
|
|
7154
|
+
clear(this._overlayRoot);
|
|
7577
7155
|
};
|
|
7578
7156
|
|
|
7579
7157
|
Overlays.prototype._updateOverlayContainer = function(container) {
|
|
@@ -7594,7 +7172,7 @@
|
|
|
7594
7172
|
|
|
7595
7173
|
setPosition(html, x, y);
|
|
7596
7174
|
|
|
7597
|
-
attr
|
|
7175
|
+
attr(container.html, 'data-container-id', element.id);
|
|
7598
7176
|
};
|
|
7599
7177
|
|
|
7600
7178
|
|
|
@@ -7721,7 +7299,7 @@
|
|
|
7721
7299
|
htmlContainer.appendChild(html);
|
|
7722
7300
|
|
|
7723
7301
|
if (overlay.type) {
|
|
7724
|
-
classes
|
|
7302
|
+
classes(htmlContainer).add('djs-overlay-' + overlay.type);
|
|
7725
7303
|
}
|
|
7726
7304
|
|
|
7727
7305
|
var elementRoot = this._canvas.findRoot(element);
|
|
@@ -7850,7 +7428,7 @@
|
|
|
7850
7428
|
var container = self._getOverlayContainer(element);
|
|
7851
7429
|
|
|
7852
7430
|
if (container) {
|
|
7853
|
-
remove$
|
|
7431
|
+
remove$1(container.html);
|
|
7854
7432
|
var i = self._overlayContainers.indexOf(container);
|
|
7855
7433
|
if (i !== -1) {
|
|
7856
7434
|
self._overlayContainers.splice(i, 1);
|
|
@@ -7881,7 +7459,7 @@
|
|
|
7881
7459
|
eventBus.on('element.marker.update', function(e) {
|
|
7882
7460
|
var container = self._getOverlayContainer(e.element, true);
|
|
7883
7461
|
if (container) {
|
|
7884
|
-
classes
|
|
7462
|
+
classes(container.html)[e.add ? 'add' : 'remove'](e.marker);
|
|
7885
7463
|
}
|
|
7886
7464
|
});
|
|
7887
7465
|
|
|
@@ -8346,7 +7924,7 @@
|
|
|
8346
7924
|
function DrilldownBreadcrumbs(eventBus, elementRegistry, overlays, canvas) {
|
|
8347
7925
|
var breadcrumbs = domify$1('<ul class="bjs-breadcrumbs"></ul>');
|
|
8348
7926
|
var container = canvas.getContainer();
|
|
8349
|
-
var containerClasses = classes
|
|
7927
|
+
var containerClasses = classes(container);
|
|
8350
7928
|
container.appendChild(breadcrumbs);
|
|
8351
7929
|
|
|
8352
7930
|
var boParents = [];
|
|
@@ -8902,7 +8480,7 @@
|
|
|
8902
8480
|
}
|
|
8903
8481
|
|
|
8904
8482
|
var hasContent = bo && bo.flowElements && bo.flowElements.length;
|
|
8905
|
-
classes
|
|
8483
|
+
classes(overlay.html).toggle(EMPTY_MARKER, !hasContent);
|
|
8906
8484
|
};
|
|
8907
8485
|
|
|
8908
8486
|
/**
|
|
@@ -9454,9 +9032,9 @@
|
|
|
9454
9032
|
};
|
|
9455
9033
|
|
|
9456
9034
|
DefaultRenderer.prototype.drawShape = function drawShape(visuals, element, attrs) {
|
|
9457
|
-
var rect = create$
|
|
9035
|
+
var rect = create$1('rect');
|
|
9458
9036
|
|
|
9459
|
-
attr$
|
|
9037
|
+
attr$1(rect, {
|
|
9460
9038
|
x: 0,
|
|
9461
9039
|
y: 0,
|
|
9462
9040
|
width: element.width || 0,
|
|
@@ -9464,12 +9042,12 @@
|
|
|
9464
9042
|
});
|
|
9465
9043
|
|
|
9466
9044
|
if (isFrameElement(element)) {
|
|
9467
|
-
attr$
|
|
9045
|
+
attr$1(rect, assign$1({}, this.FRAME_STYLE, attrs || {}));
|
|
9468
9046
|
} else {
|
|
9469
|
-
attr$
|
|
9047
|
+
attr$1(rect, assign$1({}, this.SHAPE_STYLE, attrs || {}));
|
|
9470
9048
|
}
|
|
9471
9049
|
|
|
9472
|
-
append
|
|
9050
|
+
append(visuals, rect);
|
|
9473
9051
|
|
|
9474
9052
|
return rect;
|
|
9475
9053
|
};
|
|
@@ -9477,7 +9055,7 @@
|
|
|
9477
9055
|
DefaultRenderer.prototype.drawConnection = function drawConnection(visuals, connection, attrs) {
|
|
9478
9056
|
|
|
9479
9057
|
var line = createLine(connection.waypoints, assign$1({}, this.CONNECTION_STYLE, attrs || {}));
|
|
9480
|
-
append
|
|
9058
|
+
append(visuals, line);
|
|
9481
9059
|
|
|
9482
9060
|
return line;
|
|
9483
9061
|
};
|
|
@@ -9715,8 +9293,8 @@
|
|
|
9715
9293
|
}
|
|
9716
9294
|
|
|
9717
9295
|
function createGroup(parent, cls, childIndex) {
|
|
9718
|
-
const group = create$
|
|
9719
|
-
classes$
|
|
9296
|
+
const group = create$1('g');
|
|
9297
|
+
classes$1(group).add(cls);
|
|
9720
9298
|
|
|
9721
9299
|
const index = childIndex !== undefined ? childIndex : parent.childNodes.length - 1;
|
|
9722
9300
|
|
|
@@ -9794,10 +9372,10 @@
|
|
|
9794
9372
|
// html container
|
|
9795
9373
|
const container = this._container = createContainer(config);
|
|
9796
9374
|
|
|
9797
|
-
const svg = this._svg = create$
|
|
9798
|
-
attr$
|
|
9375
|
+
const svg = this._svg = create$1('svg');
|
|
9376
|
+
attr$1(svg, { width: '100%', height: '100%' });
|
|
9799
9377
|
|
|
9800
|
-
append
|
|
9378
|
+
append(container, svg);
|
|
9801
9379
|
|
|
9802
9380
|
const viewport = this._viewport = createGroup(svg, 'viewport');
|
|
9803
9381
|
|
|
@@ -10035,7 +9613,7 @@
|
|
|
10035
9613
|
return group;
|
|
10036
9614
|
}
|
|
10037
9615
|
|
|
10038
|
-
remove$
|
|
9616
|
+
remove$2(group);
|
|
10039
9617
|
|
|
10040
9618
|
layer.visible = false;
|
|
10041
9619
|
|
|
@@ -10050,7 +9628,7 @@
|
|
|
10050
9628
|
if (layer) {
|
|
10051
9629
|
delete this._layers[name];
|
|
10052
9630
|
|
|
10053
|
-
remove$
|
|
9631
|
+
remove$2(layer.group);
|
|
10054
9632
|
}
|
|
10055
9633
|
};
|
|
10056
9634
|
|
|
@@ -10143,9 +9721,9 @@
|
|
|
10143
9721
|
|
|
10144
9722
|
// invoke either addClass or removeClass based on mode
|
|
10145
9723
|
if (add) {
|
|
10146
|
-
classes$
|
|
9724
|
+
classes$1(gfx).add(marker);
|
|
10147
9725
|
} else {
|
|
10148
|
-
classes$
|
|
9726
|
+
classes$1(gfx).remove(marker);
|
|
10149
9727
|
}
|
|
10150
9728
|
}
|
|
10151
9729
|
});
|
|
@@ -10211,7 +9789,7 @@
|
|
|
10211
9789
|
|
|
10212
9790
|
const gfx = this.getGraphics(element);
|
|
10213
9791
|
|
|
10214
|
-
return classes$
|
|
9792
|
+
return classes$1(gfx).has(marker);
|
|
10215
9793
|
};
|
|
10216
9794
|
|
|
10217
9795
|
/**
|
|
@@ -11109,10 +10687,10 @@
|
|
|
11109
10687
|
this._validateId(id);
|
|
11110
10688
|
|
|
11111
10689
|
// associate dom node with element
|
|
11112
|
-
attr$
|
|
10690
|
+
attr$1(gfx, ELEMENT_ID, id);
|
|
11113
10691
|
|
|
11114
10692
|
if (secondaryGfx) {
|
|
11115
|
-
attr$
|
|
10693
|
+
attr$1(secondaryGfx, ELEMENT_ID, id);
|
|
11116
10694
|
}
|
|
11117
10695
|
|
|
11118
10696
|
this._elements[id] = { element: element, gfx: gfx, secondaryGfx: secondaryGfx };
|
|
@@ -11131,10 +10709,10 @@
|
|
|
11131
10709
|
if (container) {
|
|
11132
10710
|
|
|
11133
10711
|
// unset element id on gfx
|
|
11134
|
-
attr$
|
|
10712
|
+
attr$1(container.gfx, ELEMENT_ID, '');
|
|
11135
10713
|
|
|
11136
10714
|
if (container.secondaryGfx) {
|
|
11137
|
-
attr$
|
|
10715
|
+
attr$1(container.secondaryGfx, ELEMENT_ID, '');
|
|
11138
10716
|
}
|
|
11139
10717
|
|
|
11140
10718
|
delete elements[id];
|
|
@@ -11189,7 +10767,7 @@
|
|
|
11189
10767
|
}
|
|
11190
10768
|
|
|
11191
10769
|
if (gfx) {
|
|
11192
|
-
attr$
|
|
10770
|
+
attr$1(gfx, ELEMENT_ID, id);
|
|
11193
10771
|
}
|
|
11194
10772
|
|
|
11195
10773
|
return gfx;
|
|
@@ -11214,7 +10792,7 @@
|
|
|
11214
10792
|
if (typeof filter === 'string') {
|
|
11215
10793
|
id = filter;
|
|
11216
10794
|
} else {
|
|
11217
|
-
id = filter && attr$
|
|
10795
|
+
id = filter && attr$1(filter, ELEMENT_ID);
|
|
11218
10796
|
}
|
|
11219
10797
|
|
|
11220
10798
|
var container = this._elements[id];
|
|
@@ -12497,10 +12075,10 @@
|
|
|
12497
12075
|
} else {
|
|
12498
12076
|
childrenGfx = getChildren(gfx);
|
|
12499
12077
|
if (!childrenGfx) {
|
|
12500
|
-
childrenGfx = create$
|
|
12501
|
-
classes$
|
|
12078
|
+
childrenGfx = create$1('g');
|
|
12079
|
+
classes$1(childrenGfx).add('djs-children');
|
|
12502
12080
|
|
|
12503
|
-
append
|
|
12081
|
+
append(gfx.parentNode, childrenGfx);
|
|
12504
12082
|
}
|
|
12505
12083
|
}
|
|
12506
12084
|
|
|
@@ -12514,7 +12092,7 @@
|
|
|
12514
12092
|
GraphicsFactory.prototype._clear = function(gfx) {
|
|
12515
12093
|
var visual = getVisual(gfx);
|
|
12516
12094
|
|
|
12517
|
-
clear
|
|
12095
|
+
clear(visual);
|
|
12518
12096
|
|
|
12519
12097
|
return visual;
|
|
12520
12098
|
};
|
|
@@ -12549,31 +12127,31 @@
|
|
|
12549
12127
|
GraphicsFactory.prototype._createContainer = function(
|
|
12550
12128
|
type, childrenGfx, parentIndex, isFrame
|
|
12551
12129
|
) {
|
|
12552
|
-
var outerGfx = create$
|
|
12553
|
-
classes$
|
|
12130
|
+
var outerGfx = create$1('g');
|
|
12131
|
+
classes$1(outerGfx).add('djs-group');
|
|
12554
12132
|
|
|
12555
12133
|
// insert node at position
|
|
12556
12134
|
if (typeof parentIndex !== 'undefined') {
|
|
12557
12135
|
prependTo(outerGfx, childrenGfx, childrenGfx.childNodes[parentIndex]);
|
|
12558
12136
|
} else {
|
|
12559
|
-
append
|
|
12137
|
+
append(childrenGfx, outerGfx);
|
|
12560
12138
|
}
|
|
12561
12139
|
|
|
12562
|
-
var gfx = create$
|
|
12563
|
-
classes$
|
|
12564
|
-
classes$
|
|
12140
|
+
var gfx = create$1('g');
|
|
12141
|
+
classes$1(gfx).add('djs-element');
|
|
12142
|
+
classes$1(gfx).add('djs-' + type);
|
|
12565
12143
|
|
|
12566
12144
|
if (isFrame) {
|
|
12567
|
-
classes$
|
|
12145
|
+
classes$1(gfx).add('djs-frame');
|
|
12568
12146
|
}
|
|
12569
12147
|
|
|
12570
|
-
append
|
|
12148
|
+
append(outerGfx, gfx);
|
|
12571
12149
|
|
|
12572
12150
|
// create visual
|
|
12573
|
-
var visual = create$
|
|
12574
|
-
classes$
|
|
12151
|
+
var visual = create$1('g');
|
|
12152
|
+
classes$1(visual).add('djs-visual');
|
|
12575
12153
|
|
|
12576
|
-
append
|
|
12154
|
+
append(gfx, visual);
|
|
12577
12155
|
|
|
12578
12156
|
return gfx;
|
|
12579
12157
|
};
|
|
@@ -12665,9 +12243,9 @@
|
|
|
12665
12243
|
}
|
|
12666
12244
|
|
|
12667
12245
|
if (element.hidden) {
|
|
12668
|
-
attr$
|
|
12246
|
+
attr$1(gfx, 'display', 'none');
|
|
12669
12247
|
} else {
|
|
12670
|
-
attr$
|
|
12248
|
+
attr$1(gfx, 'display', 'block');
|
|
12671
12249
|
}
|
|
12672
12250
|
};
|
|
12673
12251
|
|
|
@@ -12675,7 +12253,7 @@
|
|
|
12675
12253
|
var gfx = this._elementRegistry.getGraphics(element);
|
|
12676
12254
|
|
|
12677
12255
|
// remove
|
|
12678
|
-
remove$
|
|
12256
|
+
remove$2(gfx.parentNode);
|
|
12679
12257
|
};
|
|
12680
12258
|
|
|
12681
12259
|
|
|
@@ -21692,7 +21270,7 @@
|
|
|
21692
21270
|
Diagram.prototype.destroy.call(this);
|
|
21693
21271
|
|
|
21694
21272
|
// dom detach
|
|
21695
|
-
remove$
|
|
21273
|
+
remove$1(this._container);
|
|
21696
21274
|
};
|
|
21697
21275
|
|
|
21698
21276
|
/**
|