camunda-bpmn-js 0.16.1 → 0.17.2

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.
@@ -71,6 +71,26 @@
71
71
  });
72
72
  return match;
73
73
  }
74
+ /**
75
+ * Find element index in collection.
76
+ *
77
+ * @param {Array|Object} collection
78
+ * @param {Function} matcher
79
+ *
80
+ * @return {Object}
81
+ */
82
+
83
+ function findIndex(collection, matcher) {
84
+ matcher = toMatcher(matcher);
85
+ var idx = isArray(collection) ? -1 : undefined;
86
+ forEach(collection, function (val, key) {
87
+ if (matcher(val, key)) {
88
+ idx = key;
89
+ return false;
90
+ }
91
+ });
92
+ return idx;
93
+ }
74
94
  /**
75
95
  * Find element in collection.
76
96
  *
@@ -1133,149 +1153,6 @@
1133
1153
  }
1134
1154
  }
1135
1155
 
1136
- /**
1137
- * Serialization util
1138
- */
1139
-
1140
- var TEXT_ENTITIES = /([&<>]{1})/g;
1141
- var ATTR_ENTITIES = /([\n\r"]{1})/g;
1142
-
1143
- var ENTITY_REPLACEMENT = {
1144
- '&': '&amp;',
1145
- '<': '&lt;',
1146
- '>': '&gt;',
1147
- '"': '\''
1148
- };
1149
-
1150
- function escape(str, pattern) {
1151
-
1152
- function replaceFn(match, entity) {
1153
- return ENTITY_REPLACEMENT[entity] || entity;
1154
- }
1155
-
1156
- return str.replace(pattern, replaceFn);
1157
- }
1158
-
1159
- function serialize(node, output) {
1160
-
1161
- var i, len, attrMap, attrNode, childNodes;
1162
-
1163
- switch (node.nodeType) {
1164
- // TEXT
1165
- case 3:
1166
- // replace special XML characters
1167
- output.push(escape(node.textContent, TEXT_ENTITIES));
1168
- break;
1169
-
1170
- // ELEMENT
1171
- case 1:
1172
- output.push('<', node.tagName);
1173
-
1174
- if (node.hasAttributes()) {
1175
- attrMap = node.attributes;
1176
- for (i = 0, len = attrMap.length; i < len; ++i) {
1177
- attrNode = attrMap.item(i);
1178
- output.push(' ', attrNode.name, '="', escape(attrNode.value, ATTR_ENTITIES), '"');
1179
- }
1180
- }
1181
-
1182
- if (node.hasChildNodes()) {
1183
- output.push('>');
1184
- childNodes = node.childNodes;
1185
- for (i = 0, len = childNodes.length; i < len; ++i) {
1186
- serialize(childNodes.item(i), output);
1187
- }
1188
- output.push('</', node.tagName, '>');
1189
- } else {
1190
- output.push('/>');
1191
- }
1192
- break;
1193
-
1194
- // COMMENT
1195
- case 8:
1196
- output.push('<!--', escape(node.nodeValue, TEXT_ENTITIES), '-->');
1197
- break;
1198
-
1199
- // CDATA
1200
- case 4:
1201
- output.push('<![CDATA[', node.nodeValue, ']]>');
1202
- break;
1203
-
1204
- default:
1205
- throw new Error('unable to handle node ' + node.nodeType);
1206
- }
1207
-
1208
- return output;
1209
- }
1210
-
1211
- /**
1212
- * innerHTML like functionality for SVG elements.
1213
- * based on innerSVG (https://code.google.com/p/innersvg)
1214
- */
1215
-
1216
-
1217
- function set(element, svg) {
1218
-
1219
- var parsed = parse(svg);
1220
-
1221
- // clear element contents
1222
- clear(element);
1223
-
1224
- if (!svg) {
1225
- return;
1226
- }
1227
-
1228
- if (!isFragment(parsed)) {
1229
- // extract <svg> from parsed document
1230
- parsed = parsed.documentElement;
1231
- }
1232
-
1233
- var nodes = slice(parsed.childNodes);
1234
-
1235
- // import + append each node
1236
- for (var i = 0; i < nodes.length; i++) {
1237
- appendTo(nodes[i], element);
1238
- }
1239
-
1240
- }
1241
-
1242
- function get(element) {
1243
- var child = element.firstChild,
1244
- output = [];
1245
-
1246
- while (child) {
1247
- serialize(child, output);
1248
- child = child.nextSibling;
1249
- }
1250
-
1251
- return output.join('');
1252
- }
1253
-
1254
- function isFragment(node) {
1255
- return node.nodeName === '#document-fragment';
1256
- }
1257
-
1258
- function innerSVG(element, svg) {
1259
-
1260
- if (svg !== undefined) {
1261
-
1262
- try {
1263
- set(element, svg);
1264
- } catch (e) {
1265
- throw new Error('error parsing SVG: ' + e.message);
1266
- }
1267
-
1268
- return element;
1269
- } else {
1270
- return get(element);
1271
- }
1272
- }
1273
-
1274
-
1275
- function slice(arr) {
1276
- return Array.prototype.slice.call(arr);
1277
- }
1278
-
1279
1156
  /**
1280
1157
  * transform accessor utility
1281
1158
  */
@@ -1426,11 +1303,11 @@
1426
1303
  radius = shape.width / 2;
1427
1304
 
1428
1305
  var circlePath = [
1429
- ['M', cx, cy],
1430
- ['m', 0, -radius],
1431
- ['a', radius, radius, 0, 1, 1, 0, 2 * radius],
1432
- ['a', radius, radius, 0, 1, 1, 0, -2 * radius],
1433
- ['z']
1306
+ [ 'M', cx, cy ],
1307
+ [ 'm', 0, -radius ],
1308
+ [ 'a', radius, radius, 0, 1, 1, 0, 2 * radius ],
1309
+ [ 'a', radius, radius, 0, 1, 1, 0, -2 * radius ],
1310
+ [ 'z' ]
1434
1311
  ];
1435
1312
 
1436
1313
  return componentsToPath(circlePath);
@@ -1444,16 +1321,16 @@
1444
1321
  height = shape.height;
1445
1322
 
1446
1323
  var roundRectPath = [
1447
- ['M', x + borderRadius, y],
1448
- ['l', width - borderRadius * 2, 0],
1449
- ['a', borderRadius, borderRadius, 0, 0, 1, borderRadius, borderRadius],
1450
- ['l', 0, height - borderRadius * 2],
1451
- ['a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, borderRadius],
1452
- ['l', borderRadius * 2 - width, 0],
1453
- ['a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, -borderRadius],
1454
- ['l', 0, borderRadius * 2 - height],
1455
- ['a', borderRadius, borderRadius, 0, 0, 1, borderRadius, -borderRadius],
1456
- ['z']
1324
+ [ 'M', x + borderRadius, y ],
1325
+ [ 'l', width - borderRadius * 2, 0 ],
1326
+ [ 'a', borderRadius, borderRadius, 0, 0, 1, borderRadius, borderRadius ],
1327
+ [ 'l', 0, height - borderRadius * 2 ],
1328
+ [ 'a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, borderRadius ],
1329
+ [ 'l', borderRadius * 2 - width, 0 ],
1330
+ [ 'a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, -borderRadius ],
1331
+ [ 'l', 0, borderRadius * 2 - height ],
1332
+ [ 'a', borderRadius, borderRadius, 0, 0, 1, borderRadius, -borderRadius ],
1333
+ [ 'z' ]
1457
1334
  ];
1458
1335
 
1459
1336
  return componentsToPath(roundRectPath);
@@ -1469,11 +1346,11 @@
1469
1346
  halfHeight = height / 2;
1470
1347
 
1471
1348
  var diamondPath = [
1472
- ['M', x + halfWidth, y],
1473
- ['l', halfWidth, halfHeight],
1474
- ['l', -halfWidth, halfHeight],
1475
- ['l', -halfWidth, -halfHeight],
1476
- ['z']
1349
+ [ 'M', x + halfWidth, y ],
1350
+ [ 'l', halfWidth, halfHeight ],
1351
+ [ 'l', -halfWidth, halfHeight ],
1352
+ [ 'l', -halfWidth, -halfHeight ],
1353
+ [ 'z' ]
1477
1354
  ];
1478
1355
 
1479
1356
  return componentsToPath(diamondPath);
@@ -1486,11 +1363,11 @@
1486
1363
  height = shape.height;
1487
1364
 
1488
1365
  var rectPath = [
1489
- ['M', x, y],
1490
- ['l', width, 0],
1491
- ['l', 0, height],
1492
- ['l', -width, 0],
1493
- ['z']
1366
+ [ 'M', x, y ],
1367
+ [ 'l', width, 0 ],
1368
+ [ 'l', 0, height ],
1369
+ [ 'l', -width, 0 ],
1370
+ [ 'z' ]
1494
1371
  ];
1495
1372
 
1496
1373
  return componentsToPath(rectPath);
@@ -2002,106 +1879,742 @@
2002
1879
  * Wrap map from jquery.
2003
1880
  */
2004
1881
 
2005
- var map$1 = {
2006
- legend: [1, '<fieldset>', '</fieldset>'],
2007
- tr: [2, '<table><tbody>', '</tbody></table>'],
2008
- col: [2, '<table><tbody></tbody><colgroup>', '</colgroup></table>'],
2009
- // for script/link/style tags to work in IE6-8, you have to wrap
2010
- // in a div with a non-whitespace character in front, ha!
2011
- _default: innerHTMLBug ? [1, 'X<div>', '</div>'] : [0, '', '']
2012
- };
1882
+ var map$1 = {
1883
+ legend: [1, '<fieldset>', '</fieldset>'],
1884
+ tr: [2, '<table><tbody>', '</tbody></table>'],
1885
+ col: [2, '<table><tbody></tbody><colgroup>', '</colgroup></table>'],
1886
+ // for script/link/style tags to work in IE6-8, you have to wrap
1887
+ // in a div with a non-whitespace character in front, ha!
1888
+ _default: innerHTMLBug ? [1, 'X<div>', '</div>'] : [0, '', '']
1889
+ };
1890
+
1891
+ map$1.td =
1892
+ map$1.th = [3, '<table><tbody><tr>', '</tr></tbody></table>'];
1893
+
1894
+ map$1.option =
1895
+ map$1.optgroup = [1, '<select multiple="multiple">', '</select>'];
1896
+
1897
+ map$1.thead =
1898
+ map$1.tbody =
1899
+ map$1.colgroup =
1900
+ map$1.caption =
1901
+ map$1.tfoot = [1, '<table>', '</table>'];
1902
+
1903
+ map$1.polyline =
1904
+ map$1.ellipse =
1905
+ map$1.polygon =
1906
+ map$1.circle =
1907
+ map$1.text =
1908
+ map$1.line =
1909
+ map$1.path =
1910
+ map$1.rect =
1911
+ map$1.g = [1, '<svg xmlns="http://www.w3.org/2000/svg" version="1.1">','</svg>'];
1912
+
1913
+ /**
1914
+ * Parse `html` and return a DOM Node instance, which could be a TextNode,
1915
+ * HTML DOM Node of some kind (<div> for example), or a DocumentFragment
1916
+ * instance, depending on the contents of the `html` string.
1917
+ *
1918
+ * @param {String} html - HTML string to "domify"
1919
+ * @param {Document} doc - The `document` instance to create the Node for
1920
+ * @return {DOMNode} the TextNode, DOM Node, or DocumentFragment instance
1921
+ * @api private
1922
+ */
1923
+
1924
+ function parse$1(html, doc) {
1925
+ if ('string' != typeof html) throw new TypeError('String expected');
1926
+
1927
+ // default to the global `document` object
1928
+ if (!doc) doc = document;
1929
+
1930
+ // tag name
1931
+ var m = /<([\w:]+)/.exec(html);
1932
+ if (!m) return doc.createTextNode(html);
1933
+
1934
+ html = html.replace(/^\s+|\s+$/g, ''); // Remove leading/trailing whitespace
1935
+
1936
+ var tag = m[1];
1937
+
1938
+ // body support
1939
+ if (tag == 'body') {
1940
+ var el = doc.createElement('html');
1941
+ el.innerHTML = html;
1942
+ return el.removeChild(el.lastChild);
1943
+ }
1944
+
1945
+ // wrap map
1946
+ var wrap = map$1[tag] || map$1._default;
1947
+ var depth = wrap[0];
1948
+ var prefix = wrap[1];
1949
+ var suffix = wrap[2];
1950
+ var el = doc.createElement('div');
1951
+ el.innerHTML = prefix + html + suffix;
1952
+ while (depth--) el = el.lastChild;
1953
+
1954
+ // one element
1955
+ if (el.firstChild == el.lastChild) {
1956
+ return el.removeChild(el.firstChild);
1957
+ }
1958
+
1959
+ // several elements
1960
+ var fragment = doc.createDocumentFragment();
1961
+ while (el.firstChild) {
1962
+ fragment.appendChild(el.removeChild(el.firstChild));
1963
+ }
1964
+
1965
+ return fragment;
1966
+ }
1967
+
1968
+ function query(selector, el) {
1969
+ el = el || document;
1970
+
1971
+ return el.querySelector(selector);
1972
+ }
1973
+
1974
+ function all(selector, el) {
1975
+ el = el || document;
1976
+
1977
+ return el.querySelectorAll(selector);
1978
+ }
1979
+
1980
+ function remove$1(el) {
1981
+ el.parentNode && el.parentNode.removeChild(el);
1982
+ }
1983
+
1984
+ function ensureImported$1(element, target) {
1985
+
1986
+ if (element.ownerDocument !== target.ownerDocument) {
1987
+ try {
1988
+ // may fail on webkit
1989
+ return target.ownerDocument.importNode(element, true);
1990
+ } catch (e) {
1991
+ // ignore
1992
+ }
1993
+ }
1994
+
1995
+ return element;
1996
+ }
1997
+
1998
+ /**
1999
+ * appendTo utility
2000
+ */
2001
+
2002
+ /**
2003
+ * Append a node to a target element and return the appended node.
2004
+ *
2005
+ * @param {SVGElement} element
2006
+ * @param {SVGElement} target
2007
+ *
2008
+ * @return {SVGElement} the appended node
2009
+ */
2010
+ function appendTo$1(element, target) {
2011
+ return target.appendChild(ensureImported$1(element, target));
2012
+ }
2013
+
2014
+ /**
2015
+ * append utility
2016
+ */
2017
+
2018
+ /**
2019
+ * Append a node to an element
2020
+ *
2021
+ * @param {SVGElement} element
2022
+ * @param {SVGElement} node
2023
+ *
2024
+ * @return {SVGElement} the element
2025
+ */
2026
+ function append$1(target, node) {
2027
+ appendTo$1(node, target);
2028
+ return target;
2029
+ }
2030
+
2031
+ /**
2032
+ * attribute accessor utility
2033
+ */
2034
+
2035
+ var LENGTH_ATTR$1 = 2;
2036
+
2037
+ var CSS_PROPERTIES$1 = {
2038
+ 'alignment-baseline': 1,
2039
+ 'baseline-shift': 1,
2040
+ 'clip': 1,
2041
+ 'clip-path': 1,
2042
+ 'clip-rule': 1,
2043
+ 'color': 1,
2044
+ 'color-interpolation': 1,
2045
+ 'color-interpolation-filters': 1,
2046
+ 'color-profile': 1,
2047
+ 'color-rendering': 1,
2048
+ 'cursor': 1,
2049
+ 'direction': 1,
2050
+ 'display': 1,
2051
+ 'dominant-baseline': 1,
2052
+ 'enable-background': 1,
2053
+ 'fill': 1,
2054
+ 'fill-opacity': 1,
2055
+ 'fill-rule': 1,
2056
+ 'filter': 1,
2057
+ 'flood-color': 1,
2058
+ 'flood-opacity': 1,
2059
+ 'font': 1,
2060
+ 'font-family': 1,
2061
+ 'font-size': LENGTH_ATTR$1,
2062
+ 'font-size-adjust': 1,
2063
+ 'font-stretch': 1,
2064
+ 'font-style': 1,
2065
+ 'font-variant': 1,
2066
+ 'font-weight': 1,
2067
+ 'glyph-orientation-horizontal': 1,
2068
+ 'glyph-orientation-vertical': 1,
2069
+ 'image-rendering': 1,
2070
+ 'kerning': 1,
2071
+ 'letter-spacing': 1,
2072
+ 'lighting-color': 1,
2073
+ 'marker': 1,
2074
+ 'marker-end': 1,
2075
+ 'marker-mid': 1,
2076
+ 'marker-start': 1,
2077
+ 'mask': 1,
2078
+ 'opacity': 1,
2079
+ 'overflow': 1,
2080
+ 'pointer-events': 1,
2081
+ 'shape-rendering': 1,
2082
+ 'stop-color': 1,
2083
+ 'stop-opacity': 1,
2084
+ 'stroke': 1,
2085
+ 'stroke-dasharray': 1,
2086
+ 'stroke-dashoffset': 1,
2087
+ 'stroke-linecap': 1,
2088
+ 'stroke-linejoin': 1,
2089
+ 'stroke-miterlimit': 1,
2090
+ 'stroke-opacity': 1,
2091
+ 'stroke-width': LENGTH_ATTR$1,
2092
+ 'text-anchor': 1,
2093
+ 'text-decoration': 1,
2094
+ 'text-rendering': 1,
2095
+ 'unicode-bidi': 1,
2096
+ 'visibility': 1,
2097
+ 'word-spacing': 1,
2098
+ 'writing-mode': 1
2099
+ };
2100
+
2101
+
2102
+ function getAttribute$1(node, name) {
2103
+ if (CSS_PROPERTIES$1[name]) {
2104
+ return node.style[name];
2105
+ } else {
2106
+ return node.getAttributeNS(null, name);
2107
+ }
2108
+ }
2109
+
2110
+ function setAttribute$1(node, name, value) {
2111
+ var hyphenated = name.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
2112
+
2113
+ var type = CSS_PROPERTIES$1[hyphenated];
2114
+
2115
+ if (type) {
2116
+ // append pixel unit, unless present
2117
+ if (type === LENGTH_ATTR$1 && typeof value === 'number') {
2118
+ value = String(value) + 'px';
2119
+ }
2120
+
2121
+ node.style[hyphenated] = value;
2122
+ } else {
2123
+ node.setAttributeNS(null, name, value);
2124
+ }
2125
+ }
2126
+
2127
+ function setAttributes$1(node, attrs) {
2128
+
2129
+ var names = Object.keys(attrs), i, name;
2130
+
2131
+ for (i = 0, name; (name = names[i]); i++) {
2132
+ setAttribute$1(node, name, attrs[name]);
2133
+ }
2134
+ }
2135
+
2136
+ /**
2137
+ * Gets or sets raw attributes on a node.
2138
+ *
2139
+ * @param {SVGElement} node
2140
+ * @param {Object} [attrs]
2141
+ * @param {String} [name]
2142
+ * @param {String} [value]
2143
+ *
2144
+ * @return {String}
2145
+ */
2146
+ function attr$2(node, name, value) {
2147
+ if (typeof name === 'string') {
2148
+ if (value !== undefined) {
2149
+ setAttribute$1(node, name, value);
2150
+ } else {
2151
+ return getAttribute$1(node, name);
2152
+ }
2153
+ } else {
2154
+ setAttributes$1(node, name);
2155
+ }
2156
+
2157
+ return node;
2158
+ }
2159
+
2160
+ /**
2161
+ * Clear utility
2162
+ */
2163
+ function index$1(arr, obj) {
2164
+ if (arr.indexOf) {
2165
+ return arr.indexOf(obj);
2166
+ }
2167
+
2168
+
2169
+ for (var i = 0; i < arr.length; ++i) {
2170
+ if (arr[i] === obj) {
2171
+ return i;
2172
+ }
2173
+ }
2174
+
2175
+ return -1;
2176
+ }
2177
+
2178
+ var re$2 = /\s+/;
2179
+
2180
+ var toString$2 = Object.prototype.toString;
2181
+
2182
+ function defined$1(o) {
2183
+ return typeof o !== 'undefined';
2184
+ }
2185
+
2186
+ /**
2187
+ * Wrap `el` in a `ClassList`.
2188
+ *
2189
+ * @param {Element} el
2190
+ * @return {ClassList}
2191
+ * @api public
2192
+ */
2193
+
2194
+ function classes$2(el) {
2195
+ return new ClassList$2(el);
2196
+ }
2197
+
2198
+ function ClassList$2(el) {
2199
+ if (!el || !el.nodeType) {
2200
+ throw new Error('A DOM element reference is required');
2201
+ }
2202
+ this.el = el;
2203
+ this.list = el.classList;
2204
+ }
2205
+
2206
+ /**
2207
+ * Add class `name` if not already present.
2208
+ *
2209
+ * @param {String} name
2210
+ * @return {ClassList}
2211
+ * @api public
2212
+ */
2213
+
2214
+ ClassList$2.prototype.add = function(name) {
2215
+
2216
+ // classList
2217
+ if (this.list) {
2218
+ this.list.add(name);
2219
+ return this;
2220
+ }
2221
+
2222
+ // fallback
2223
+ var arr = this.array();
2224
+ var i = index$1(arr, name);
2225
+ if (!~i) {
2226
+ arr.push(name);
2227
+ }
2228
+
2229
+ if (defined$1(this.el.className.baseVal)) {
2230
+ this.el.className.baseVal = arr.join(' ');
2231
+ } else {
2232
+ this.el.className = arr.join(' ');
2233
+ }
2234
+
2235
+ return this;
2236
+ };
2237
+
2238
+ /**
2239
+ * Remove class `name` when present, or
2240
+ * pass a regular expression to remove
2241
+ * any which match.
2242
+ *
2243
+ * @param {String|RegExp} name
2244
+ * @return {ClassList}
2245
+ * @api public
2246
+ */
2247
+
2248
+ ClassList$2.prototype.remove = function(name) {
2249
+ if ('[object RegExp]' === toString$2.call(name)) {
2250
+ return this.removeMatching(name);
2251
+ }
2252
+
2253
+ // classList
2254
+ if (this.list) {
2255
+ this.list.remove(name);
2256
+ return this;
2257
+ }
2258
+
2259
+ // fallback
2260
+ var arr = this.array();
2261
+ var i = index$1(arr, name);
2262
+ if (~i) {
2263
+ arr.splice(i, 1);
2264
+ }
2265
+ this.el.className.baseVal = arr.join(' ');
2266
+ return this;
2267
+ };
2268
+
2269
+ /**
2270
+ * Remove all classes matching `re`.
2271
+ *
2272
+ * @param {RegExp} re
2273
+ * @return {ClassList}
2274
+ * @api private
2275
+ */
2276
+
2277
+ ClassList$2.prototype.removeMatching = function(re) {
2278
+ var arr = this.array();
2279
+ for (var i = 0; i < arr.length; i++) {
2280
+ if (re.test(arr[i])) {
2281
+ this.remove(arr[i]);
2282
+ }
2283
+ }
2284
+ return this;
2285
+ };
2286
+
2287
+ /**
2288
+ * Toggle class `name`, can force state via `force`.
2289
+ *
2290
+ * For browsers that support classList, but do not support `force` yet,
2291
+ * the mistake will be detected and corrected.
2292
+ *
2293
+ * @param {String} name
2294
+ * @param {Boolean} force
2295
+ * @return {ClassList}
2296
+ * @api public
2297
+ */
2298
+
2299
+ ClassList$2.prototype.toggle = function(name, force) {
2300
+ // classList
2301
+ if (this.list) {
2302
+ if (defined$1(force)) {
2303
+ if (force !== this.list.toggle(name, force)) {
2304
+ this.list.toggle(name); // toggle again to correct
2305
+ }
2306
+ } else {
2307
+ this.list.toggle(name);
2308
+ }
2309
+ return this;
2310
+ }
2311
+
2312
+ // fallback
2313
+ if (defined$1(force)) {
2314
+ if (!force) {
2315
+ this.remove(name);
2316
+ } else {
2317
+ this.add(name);
2318
+ }
2319
+ } else {
2320
+ if (this.has(name)) {
2321
+ this.remove(name);
2322
+ } else {
2323
+ this.add(name);
2324
+ }
2325
+ }
2326
+
2327
+ return this;
2328
+ };
2329
+
2330
+ /**
2331
+ * Return an array of classes.
2332
+ *
2333
+ * @return {Array}
2334
+ * @api public
2335
+ */
2336
+
2337
+ ClassList$2.prototype.array = function() {
2338
+ var className = this.el.getAttribute('class') || '';
2339
+ var str = className.replace(/^\s+|\s+$/g, '');
2340
+ var arr = str.split(re$2);
2341
+ if ('' === arr[0]) {
2342
+ arr.shift();
2343
+ }
2344
+ return arr;
2345
+ };
2346
+
2347
+ /**
2348
+ * Check if class `name` is present.
2349
+ *
2350
+ * @param {String} name
2351
+ * @return {ClassList}
2352
+ * @api public
2353
+ */
2354
+
2355
+ ClassList$2.prototype.has =
2356
+ ClassList$2.prototype.contains = function(name) {
2357
+ return (
2358
+ this.list ?
2359
+ this.list.contains(name) :
2360
+ !! ~index$1(this.array(), name)
2361
+ );
2362
+ };
2363
+
2364
+ function remove$2(element) {
2365
+ var parent = element.parentNode;
2366
+
2367
+ if (parent) {
2368
+ parent.removeChild(element);
2369
+ }
2370
+
2371
+ return element;
2372
+ }
2373
+
2374
+ /**
2375
+ * Clear utility
2376
+ */
2377
+
2378
+ /**
2379
+ * Removes all children from the given element
2380
+ *
2381
+ * @param {DOMElement} element
2382
+ * @return {DOMElement} the element (for chaining)
2383
+ */
2384
+ function clear$2(element) {
2385
+ var child;
2386
+
2387
+ while ((child = element.firstChild)) {
2388
+ remove$2(child);
2389
+ }
2390
+
2391
+ return element;
2392
+ }
2393
+
2394
+ var ns$1 = {
2395
+ svg: 'http://www.w3.org/2000/svg'
2396
+ };
2397
+
2398
+ /**
2399
+ * DOM parsing utility
2400
+ */
2401
+
2402
+ var SVG_START$1 = '<svg xmlns="' + ns$1.svg + '"';
2403
+
2404
+ function parse$2(svg) {
2405
+
2406
+ var unwrap = false;
2407
+
2408
+ // ensure we import a valid svg document
2409
+ if (svg.substring(0, 4) === '<svg') {
2410
+ if (svg.indexOf(ns$1.svg) === -1) {
2411
+ svg = SVG_START$1 + svg.substring(4);
2412
+ }
2413
+ } else {
2414
+ // namespace svg
2415
+ svg = SVG_START$1 + '>' + svg + '</svg>';
2416
+ unwrap = true;
2417
+ }
2418
+
2419
+ var parsed = parseDocument$1(svg);
2420
+
2421
+ if (!unwrap) {
2422
+ return parsed;
2423
+ }
2424
+
2425
+ var fragment = document.createDocumentFragment();
2426
+
2427
+ var parent = parsed.firstChild;
2428
+
2429
+ while (parent.firstChild) {
2430
+ fragment.appendChild(parent.firstChild);
2431
+ }
2432
+
2433
+ return fragment;
2434
+ }
2435
+
2436
+ function parseDocument$1(svg) {
2437
+
2438
+ var parser;
2439
+
2440
+ // parse
2441
+ parser = new DOMParser();
2442
+ parser.async = false;
2443
+
2444
+ return parser.parseFromString(svg, 'text/xml');
2445
+ }
2446
+
2447
+ /**
2448
+ * Create utility for SVG elements
2449
+ */
2450
+
2451
+
2452
+ /**
2453
+ * Create a specific type from name or SVG markup.
2454
+ *
2455
+ * @param {String} name the name or markup of the element
2456
+ * @param {Object} [attrs] attributes to set on the element
2457
+ *
2458
+ * @returns {SVGElement}
2459
+ */
2460
+ function create$1(name, attrs) {
2461
+ var element;
2462
+
2463
+ if (name.charAt(0) === '<') {
2464
+ element = parse$2(name).firstChild;
2465
+ element = document.importNode(element, true);
2466
+ } else {
2467
+ element = document.createElementNS(ns$1.svg, name);
2468
+ }
2469
+
2470
+ if (attrs) {
2471
+ attr$2(element, attrs);
2472
+ }
2473
+
2474
+ return element;
2475
+ }
2476
+
2477
+ /**
2478
+ * Serialization util
2479
+ */
2480
+
2481
+ var TEXT_ENTITIES = /([&<>]{1})/g;
2482
+ var ATTR_ENTITIES = /([\n\r"]{1})/g;
2483
+
2484
+ var ENTITY_REPLACEMENT = {
2485
+ '&': '&amp;',
2486
+ '<': '&lt;',
2487
+ '>': '&gt;',
2488
+ '"': '\''
2489
+ };
2490
+
2491
+ function escape(str, pattern) {
2492
+
2493
+ function replaceFn(match, entity) {
2494
+ return ENTITY_REPLACEMENT[entity] || entity;
2495
+ }
2496
+
2497
+ return str.replace(pattern, replaceFn);
2498
+ }
2499
+
2500
+ function serialize(node, output) {
2501
+
2502
+ var i, len, attrMap, attrNode, childNodes;
2503
+
2504
+ switch (node.nodeType) {
2505
+ // TEXT
2506
+ case 3:
2507
+ // replace special XML characters
2508
+ output.push(escape(node.textContent, TEXT_ENTITIES));
2509
+ break;
2510
+
2511
+ // ELEMENT
2512
+ case 1:
2513
+ output.push('<', node.tagName);
2514
+
2515
+ if (node.hasAttributes()) {
2516
+ attrMap = node.attributes;
2517
+ for (i = 0, len = attrMap.length; i < len; ++i) {
2518
+ attrNode = attrMap.item(i);
2519
+ output.push(' ', attrNode.name, '="', escape(attrNode.value, ATTR_ENTITIES), '"');
2520
+ }
2521
+ }
2522
+
2523
+ if (node.hasChildNodes()) {
2524
+ output.push('>');
2525
+ childNodes = node.childNodes;
2526
+ for (i = 0, len = childNodes.length; i < len; ++i) {
2527
+ serialize(childNodes.item(i), output);
2528
+ }
2529
+ output.push('</', node.tagName, '>');
2530
+ } else {
2531
+ output.push('/>');
2532
+ }
2533
+ break;
2013
2534
 
2014
- map$1.td =
2015
- map$1.th = [3, '<table><tbody><tr>', '</tr></tbody></table>'];
2535
+ // COMMENT
2536
+ case 8:
2537
+ output.push('<!--', escape(node.nodeValue, TEXT_ENTITIES), '-->');
2538
+ break;
2016
2539
 
2017
- map$1.option =
2018
- map$1.optgroup = [1, '<select multiple="multiple">', '</select>'];
2540
+ // CDATA
2541
+ case 4:
2542
+ output.push('<![CDATA[', node.nodeValue, ']]>');
2543
+ break;
2019
2544
 
2020
- map$1.thead =
2021
- map$1.tbody =
2022
- map$1.colgroup =
2023
- map$1.caption =
2024
- map$1.tfoot = [1, '<table>', '</table>'];
2545
+ default:
2546
+ throw new Error('unable to handle node ' + node.nodeType);
2547
+ }
2025
2548
 
2026
- map$1.polyline =
2027
- map$1.ellipse =
2028
- map$1.polygon =
2029
- map$1.circle =
2030
- map$1.text =
2031
- map$1.line =
2032
- map$1.path =
2033
- map$1.rect =
2034
- map$1.g = [1, '<svg xmlns="http://www.w3.org/2000/svg" version="1.1">','</svg>'];
2549
+ return output;
2550
+ }
2035
2551
 
2036
2552
  /**
2037
- * Parse `html` and return a DOM Node instance, which could be a TextNode,
2038
- * HTML DOM Node of some kind (<div> for example), or a DocumentFragment
2039
- * instance, depending on the contents of the `html` string.
2040
- *
2041
- * @param {String} html - HTML string to "domify"
2042
- * @param {Document} doc - The `document` instance to create the Node for
2043
- * @return {DOMNode} the TextNode, DOM Node, or DocumentFragment instance
2044
- * @api private
2553
+ * innerHTML like functionality for SVG elements.
2554
+ * based on innerSVG (https://code.google.com/p/innersvg)
2045
2555
  */
2046
2556
 
2047
- function parse$1(html, doc) {
2048
- if ('string' != typeof html) throw new TypeError('String expected');
2049
2557
 
2050
- // default to the global `document` object
2051
- if (!doc) doc = document;
2558
+ function set(element, svg) {
2052
2559
 
2053
- // tag name
2054
- var m = /<([\w:]+)/.exec(html);
2055
- if (!m) return doc.createTextNode(html);
2560
+ var parsed = parse$2(svg);
2056
2561
 
2057
- html = html.replace(/^\s+|\s+$/g, ''); // Remove leading/trailing whitespace
2562
+ // clear element contents
2563
+ clear$2(element);
2058
2564
 
2059
- var tag = m[1];
2565
+ if (!svg) {
2566
+ return;
2567
+ }
2060
2568
 
2061
- // body support
2062
- if (tag == 'body') {
2063
- var el = doc.createElement('html');
2064
- el.innerHTML = html;
2065
- return el.removeChild(el.lastChild);
2569
+ if (!isFragment(parsed)) {
2570
+ // extract <svg> from parsed document
2571
+ parsed = parsed.documentElement;
2066
2572
  }
2067
2573
 
2068
- // wrap map
2069
- var wrap = map$1[tag] || map$1._default;
2070
- var depth = wrap[0];
2071
- var prefix = wrap[1];
2072
- var suffix = wrap[2];
2073
- var el = doc.createElement('div');
2074
- el.innerHTML = prefix + html + suffix;
2075
- while (depth--) el = el.lastChild;
2574
+ var nodes = slice(parsed.childNodes);
2076
2575
 
2077
- // one element
2078
- if (el.firstChild == el.lastChild) {
2079
- return el.removeChild(el.firstChild);
2576
+ // import + append each node
2577
+ for (var i = 0; i < nodes.length; i++) {
2578
+ appendTo$1(nodes[i], element);
2080
2579
  }
2081
2580
 
2082
- // several elements
2083
- var fragment = doc.createDocumentFragment();
2084
- while (el.firstChild) {
2085
- fragment.appendChild(el.removeChild(el.firstChild));
2581
+ }
2582
+
2583
+ function get(element) {
2584
+ var child = element.firstChild,
2585
+ output = [];
2586
+
2587
+ while (child) {
2588
+ serialize(child, output);
2589
+ child = child.nextSibling;
2086
2590
  }
2087
2591
 
2088
- return fragment;
2592
+ return output.join('');
2089
2593
  }
2090
2594
 
2091
- function query(selector, el) {
2092
- el = el || document;
2093
-
2094
- return el.querySelector(selector);
2595
+ function isFragment(node) {
2596
+ return node.nodeName === '#document-fragment';
2095
2597
  }
2096
2598
 
2097
- function all(selector, el) {
2098
- el = el || document;
2599
+ function innerSVG(element, svg) {
2099
2600
 
2100
- return el.querySelectorAll(selector);
2601
+ if (svg !== undefined) {
2602
+
2603
+ try {
2604
+ set(element, svg);
2605
+ } catch (e) {
2606
+ throw new Error('error parsing SVG: ' + e.message);
2607
+ }
2608
+
2609
+ return element;
2610
+ } else {
2611
+ return get(element);
2612
+ }
2101
2613
  }
2102
2614
 
2103
- function remove$1(el) {
2104
- el.parentNode && el.parentNode.removeChild(el);
2615
+
2616
+ function slice(arr) {
2617
+ return Array.prototype.slice.call(arr);
2105
2618
  }
2106
2619
 
2107
2620
  /**
@@ -2353,16 +2866,16 @@
2353
2866
  // fix for safari / chrome / firefox bug not correctly
2354
2867
  // resetting stroke dash array
2355
2868
  if (attrs.strokeDasharray === 'none') {
2356
- attrs.strokeDasharray = [10000, 1];
2869
+ attrs.strokeDasharray = [ 10000, 1 ];
2357
2870
  }
2358
2871
 
2359
- var marker = create('marker');
2872
+ var marker = create$1('marker');
2360
2873
 
2361
- attr(options.element, attrs);
2874
+ attr$2(options.element, attrs);
2362
2875
 
2363
- append(marker, options.element);
2876
+ append$1(marker, options.element);
2364
2877
 
2365
- attr(marker, {
2878
+ attr$2(marker, {
2366
2879
  id: id,
2367
2880
  viewBox: '0 0 20 20',
2368
2881
  refX: ref.x,
@@ -2375,12 +2888,12 @@
2375
2888
  var defs = query('defs', canvas._svg);
2376
2889
 
2377
2890
  if (!defs) {
2378
- defs = create('defs');
2891
+ defs = create$1('defs');
2379
2892
 
2380
- append(canvas._svg, defs);
2893
+ append$1(canvas._svg, defs);
2381
2894
  }
2382
2895
 
2383
- append(defs, marker);
2896
+ append$1(defs, marker);
2384
2897
 
2385
2898
  markers[id] = marker;
2386
2899
  }
@@ -2404,8 +2917,8 @@
2404
2917
  function createMarker(id, type, fill, stroke) {
2405
2918
 
2406
2919
  if (type === 'sequenceflow-end') {
2407
- var sequenceflowEnd = create('path');
2408
- attr(sequenceflowEnd, { d: 'M 1 5 L 11 10 L 1 15 Z' });
2920
+ var sequenceflowEnd = create$1('path');
2921
+ attr$2(sequenceflowEnd, { d: 'M 1 5 L 11 10 L 1 15 Z' });
2409
2922
 
2410
2923
  addMarker(id, {
2411
2924
  element: sequenceflowEnd,
@@ -2419,8 +2932,8 @@
2419
2932
  }
2420
2933
 
2421
2934
  if (type === 'messageflow-start') {
2422
- var messageflowStart = create('circle');
2423
- attr(messageflowStart, { cx: 6, cy: 6, r: 3.5 });
2935
+ var messageflowStart = create$1('circle');
2936
+ attr$2(messageflowStart, { cx: 6, cy: 6, r: 3.5 });
2424
2937
 
2425
2938
  addMarker(id, {
2426
2939
  element: messageflowStart,
@@ -2433,8 +2946,8 @@
2433
2946
  }
2434
2947
 
2435
2948
  if (type === 'messageflow-end') {
2436
- var messageflowEnd = create('path');
2437
- attr(messageflowEnd, { d: 'm 1 5 l 0 -3 l 7 3 l -7 3 z' });
2949
+ var messageflowEnd = create$1('path');
2950
+ attr$2(messageflowEnd, { d: 'm 1 5 l 0 -3 l 7 3 l -7 3 z' });
2438
2951
 
2439
2952
  addMarker(id, {
2440
2953
  element: messageflowEnd,
@@ -2448,8 +2961,8 @@
2448
2961
  }
2449
2962
 
2450
2963
  if (type === 'association-start') {
2451
- var associationStart = create('path');
2452
- attr(associationStart, { d: 'M 11 5 L 1 10 L 11 15' });
2964
+ var associationStart = create$1('path');
2965
+ attr$2(associationStart, { d: 'M 11 5 L 1 10 L 11 15' });
2453
2966
 
2454
2967
  addMarker(id, {
2455
2968
  element: associationStart,
@@ -2464,8 +2977,8 @@
2464
2977
  }
2465
2978
 
2466
2979
  if (type === 'association-end') {
2467
- var associationEnd = create('path');
2468
- attr(associationEnd, { d: 'M 1 5 L 11 10 L 1 15' });
2980
+ var associationEnd = create$1('path');
2981
+ attr$2(associationEnd, { d: 'M 1 5 L 11 10 L 1 15' });
2469
2982
 
2470
2983
  addMarker(id, {
2471
2984
  element: associationEnd,
@@ -2480,8 +2993,8 @@
2480
2993
  }
2481
2994
 
2482
2995
  if (type === 'conditional-flow-marker') {
2483
- var conditionalflowMarker = create('path');
2484
- attr(conditionalflowMarker, { d: 'M 0 10 L 8 6 L 16 10 L 8 14 Z' });
2996
+ var conditionalflowMarker = create$1('path');
2997
+ attr$2(conditionalflowMarker, { d: 'M 0 10 L 8 6 L 16 10 L 8 14 Z' });
2485
2998
 
2486
2999
  addMarker(id, {
2487
3000
  element: conditionalflowMarker,
@@ -2495,8 +3008,8 @@
2495
3008
  }
2496
3009
 
2497
3010
  if (type === 'conditional-default-flow-marker') {
2498
- var conditionaldefaultflowMarker = create('path');
2499
- attr(conditionaldefaultflowMarker, { d: 'M 6 4 L 10 16' });
3011
+ var conditionaldefaultflowMarker = create$1('path');
3012
+ attr$2(conditionaldefaultflowMarker, { d: 'M 6 4 L 10 16' });
2500
3013
 
2501
3014
  addMarker(id, {
2502
3015
  element: conditionaldefaultflowMarker,
@@ -2531,15 +3044,15 @@
2531
3044
  var cx = width / 2,
2532
3045
  cy = height / 2;
2533
3046
 
2534
- var circle = create('circle');
2535
- attr(circle, {
3047
+ var circle = create$1('circle');
3048
+ attr$2(circle, {
2536
3049
  cx: cx,
2537
3050
  cy: cy,
2538
3051
  r: Math.round((width + height) / 4 - offset)
2539
3052
  });
2540
- attr(circle, attrs);
3053
+ attr$2(circle, attrs);
2541
3054
 
2542
- append(parentGfx, circle);
3055
+ append$1(parentGfx, circle);
2543
3056
 
2544
3057
  return circle;
2545
3058
  }
@@ -2559,8 +3072,8 @@
2559
3072
  fill: 'white'
2560
3073
  });
2561
3074
 
2562
- var rect = create('rect');
2563
- attr(rect, {
3075
+ var rect = create$1('rect');
3076
+ attr$2(rect, {
2564
3077
  x: offset,
2565
3078
  y: offset,
2566
3079
  width: width - offset * 2,
@@ -2568,9 +3081,9 @@
2568
3081
  rx: r,
2569
3082
  ry: r
2570
3083
  });
2571
- attr(rect, attrs);
3084
+ attr$2(rect, attrs);
2572
3085
 
2573
- append(parentGfx, rect);
3086
+ append$1(parentGfx, rect);
2574
3087
 
2575
3088
  return rect;
2576
3089
  }
@@ -2580,7 +3093,7 @@
2580
3093
  var x_2 = width / 2;
2581
3094
  var y_2 = height / 2;
2582
3095
 
2583
- var points = [{ x: x_2, y: 0 }, { x: width, y: y_2 }, { x: x_2, y: height }, { x: 0, y: y_2 }];
3096
+ var points = [ { x: x_2, y: 0 }, { x: width, y: y_2 }, { x: x_2, y: height }, { x: 0, y: y_2 } ];
2584
3097
 
2585
3098
  var pointsString = points.map(function(point) {
2586
3099
  return point.x + ',' + point.y;
@@ -2592,13 +3105,13 @@
2592
3105
  fill: 'white'
2593
3106
  });
2594
3107
 
2595
- var polygon = create('polygon');
2596
- attr(polygon, {
3108
+ var polygon = create$1('polygon');
3109
+ attr$2(polygon, {
2597
3110
  points: pointsString
2598
3111
  });
2599
- attr(polygon, attrs);
3112
+ attr$2(polygon, attrs);
2600
3113
 
2601
- append(parentGfx, polygon);
3114
+ append$1(parentGfx, polygon);
2602
3115
 
2603
3116
  return polygon;
2604
3117
  }
@@ -2612,7 +3125,7 @@
2612
3125
 
2613
3126
  var line = createLine(waypoints, attrs);
2614
3127
 
2615
- append(parentGfx, line);
3128
+ append$1(parentGfx, line);
2616
3129
 
2617
3130
  return line;
2618
3131
  }
@@ -2624,11 +3137,11 @@
2624
3137
  stroke: black
2625
3138
  });
2626
3139
 
2627
- var path = create('path');
2628
- attr(path, { d: d });
2629
- attr(path, attrs);
3140
+ var path = create$1('path');
3141
+ attr$2(path, { d: d });
3142
+ attr$2(path, attrs);
2630
3143
 
2631
- append(parentGfx, path);
3144
+ append$1(parentGfx, path);
2632
3145
 
2633
3146
  return path;
2634
3147
  }
@@ -2652,7 +3165,7 @@
2652
3165
  var event = getSemantic(element);
2653
3166
  var isThrowing = isThrowEvent(event);
2654
3167
 
2655
- if (event.eventDefinitions && event.eventDefinitions.length>1) {
3168
+ if (event.eventDefinitions && event.eventDefinitions.length > 1) {
2656
3169
  if (event.parallelMultiple) {
2657
3170
  return renderer('bpmn:ParallelMultipleEventDefinition')(parentGfx, element, isThrowing);
2658
3171
  }
@@ -2714,9 +3227,9 @@
2714
3227
 
2715
3228
  var text = textRenderer.createText(label || '', options);
2716
3229
 
2717
- classes(text).add('djs-label');
3230
+ classes$2(text).add('djs-label');
2718
3231
 
2719
- append(parentGfx, text);
3232
+ append$1(parentGfx, text);
2720
3233
 
2721
3234
  return text;
2722
3235
  }
@@ -3326,7 +3839,7 @@
3326
3839
  });
3327
3840
 
3328
3841
  var businessHeaderPath = drawPath(parentGfx, headerPathData);
3329
- attr(businessHeaderPath, {
3842
+ attr$2(businessHeaderPath, {
3330
3843
  strokeWidth: 1,
3331
3844
  fill: getFillColor(element, '#aaaaaa'),
3332
3845
  stroke: getStrokeColor(element, defaultStrokeColor)
@@ -3340,7 +3853,7 @@
3340
3853
  });
3341
3854
 
3342
3855
  var businessPath = drawPath(parentGfx, headerData);
3343
- attr(businessPath, {
3856
+ attr$2(businessPath, {
3344
3857
  strokeWidth: 1,
3345
3858
  stroke: getStrokeColor(element, defaultStrokeColor)
3346
3859
  });
@@ -3358,7 +3871,7 @@
3358
3871
  var expanded = isExpanded(element);
3359
3872
 
3360
3873
  if (isEventSubProcess(element)) {
3361
- attr(rect, {
3874
+ attr$2(rect, {
3362
3875
  strokeDasharray: '1,2'
3363
3876
  });
3364
3877
  }
@@ -3368,7 +3881,7 @@
3368
3881
  if (expanded) {
3369
3882
  attachTaskMarkers(parentGfx, element);
3370
3883
  } else {
3371
- attachTaskMarkers(parentGfx, element, ['SubProcessMarker']);
3884
+ attachTaskMarkers(parentGfx, element, [ 'SubProcessMarker' ]);
3372
3885
  }
3373
3886
 
3374
3887
  return rect;
@@ -3580,7 +4093,7 @@
3580
4093
  });
3581
4094
 
3582
4095
  var parallelPath = drawPath(parentGfx, pathData);
3583
- attr(parallelPath, {
4096
+ attr$2(parallelPath, {
3584
4097
  strokeWidth: 1,
3585
4098
  fill: 'none'
3586
4099
  });
@@ -3588,7 +4101,7 @@
3588
4101
 
3589
4102
  if (!instantiate) {
3590
4103
  var innerCircle = drawCircle(parentGfx, element.width, element.height, element.height * 0.26);
3591
- attr(innerCircle, {
4104
+ attr$2(innerCircle, {
3592
4105
  strokeWidth: 1,
3593
4106
  fill: 'none',
3594
4107
  stroke: getStrokeColor(element, defaultStrokeColor)
@@ -3633,7 +4146,7 @@
3633
4146
 
3634
4147
  // conditional flow marker
3635
4148
  if (sequenceFlow.conditionExpression && source.$instanceOf('bpmn:Activity')) {
3636
- attr(path, {
4149
+ attr$2(path, {
3637
4150
  markerStart: marker('conditional-flow-marker', fill, stroke)
3638
4151
  });
3639
4152
  }
@@ -3641,7 +4154,7 @@
3641
4154
  // default marker
3642
4155
  if (source.default && (source.$instanceOf('bpmn:Gateway') || source.$instanceOf('bpmn:Activity')) &&
3643
4156
  source.default === sequenceFlow) {
3644
- attr(path, {
4157
+ attr$2(path, {
3645
4158
  markerStart: marker('conditional-default-flow-marker', fill, stroke)
3646
4159
  });
3647
4160
  }
@@ -4702,22 +5215,22 @@
4702
5215
  d: 'm {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}',
4703
5216
  height: 36,
4704
5217
  width: 36,
4705
- heightElements: [6, 14],
4706
- widthElements: [10.5, 21]
5218
+ heightElements: [ 6, 14 ],
5219
+ widthElements: [ 10.5, 21 ]
4707
5220
  },
4708
5221
  'EVENT_SIGNAL': {
4709
5222
  d: 'M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z',
4710
5223
  height: 36,
4711
5224
  width: 36,
4712
- heightElements: [18],
4713
- widthElements: [10, 20]
5225
+ heightElements: [ 18 ],
5226
+ widthElements: [ 10, 20 ]
4714
5227
  },
4715
5228
  'EVENT_ESCALATION': {
4716
5229
  d: 'M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z',
4717
5230
  height: 36,
4718
5231
  width: 36,
4719
- heightElements: [20, 7],
4720
- widthElements: [8]
5232
+ heightElements: [ 20, 7 ],
5233
+ widthElements: [ 8 ]
4721
5234
  },
4722
5235
  'EVENT_CONDITIONAL': {
4723
5236
  d: 'M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z ' +
@@ -4729,67 +5242,67 @@
4729
5242
  'M {e.x2},{e.y8} l {e.x0},0 ',
4730
5243
  height: 36,
4731
5244
  width: 36,
4732
- heightElements: [8.5, 14.5, 18, 11.5, 14.5, 17.5, 20.5, 23.5, 26.5],
4733
- widthElements: [10.5, 14.5, 12.5]
5245
+ heightElements: [ 8.5, 14.5, 18, 11.5, 14.5, 17.5, 20.5, 23.5, 26.5 ],
5246
+ widthElements: [ 10.5, 14.5, 12.5 ]
4734
5247
  },
4735
5248
  'EVENT_LINK': {
4736
5249
  d: 'm {mx},{my} 0,{e.y0} -{e.x1},0 0,{e.y1} {e.x1},0 0,{e.y0} {e.x0},-{e.y2} -{e.x0},-{e.y2} z',
4737
5250
  height: 36,
4738
5251
  width: 36,
4739
- heightElements: [4.4375, 6.75, 7.8125],
4740
- widthElements: [9.84375, 13.5]
5252
+ heightElements: [ 4.4375, 6.75, 7.8125 ],
5253
+ widthElements: [ 9.84375, 13.5 ]
4741
5254
  },
4742
5255
  'EVENT_ERROR': {
4743
5256
  d: 'm {mx},{my} {e.x0},-{e.y0} {e.x1},-{e.y1} {e.x2},{e.y2} {e.x3},-{e.y3} -{e.x4},{e.y4} -{e.x5},-{e.y5} z',
4744
5257
  height: 36,
4745
5258
  width: 36,
4746
- heightElements: [0.023, 8.737, 8.151, 16.564, 10.591, 8.714],
4747
- widthElements: [0.085, 6.672, 6.97, 4.273, 5.337, 6.636]
5259
+ heightElements: [ 0.023, 8.737, 8.151, 16.564, 10.591, 8.714 ],
5260
+ widthElements: [ 0.085, 6.672, 6.97, 4.273, 5.337, 6.636 ]
4748
5261
  },
4749
5262
  'EVENT_CANCEL_45': {
4750
5263
  d: 'm {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 ' +
4751
5264
  '0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z',
4752
5265
  height: 36,
4753
5266
  width: 36,
4754
- heightElements: [4.75, 8.5],
4755
- widthElements: [4.75, 8.5]
5267
+ heightElements: [ 4.75, 8.5 ],
5268
+ widthElements: [ 4.75, 8.5 ]
4756
5269
  },
4757
5270
  'EVENT_COMPENSATION': {
4758
5271
  d: 'm {mx},{my} {e.x0},-{e.y0} 0,{e.y1} z m {e.x1},-{e.y2} {e.x2},-{e.y3} 0,{e.y1} -{e.x2},-{e.y3} z',
4759
5272
  height: 36,
4760
5273
  width: 36,
4761
- heightElements: [6.5, 13, 0.4, 6.1],
4762
- widthElements: [9, 9.3, 8.7]
5274
+ heightElements: [ 6.5, 13, 0.4, 6.1 ],
5275
+ widthElements: [ 9, 9.3, 8.7 ]
4763
5276
  },
4764
5277
  'EVENT_TIMER_WH': {
4765
5278
  d: 'M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ',
4766
5279
  height: 36,
4767
5280
  width: 36,
4768
- heightElements: [10, 2],
4769
- widthElements: [3, 7]
5281
+ heightElements: [ 10, 2 ],
5282
+ widthElements: [ 3, 7 ]
4770
5283
  },
4771
5284
  'EVENT_TIMER_LINE': {
4772
5285
  d: 'M {mx},{my} ' +
4773
5286
  'm {e.x0},{e.y0} l -{e.x1},{e.y1} ',
4774
5287
  height: 36,
4775
5288
  width: 36,
4776
- heightElements: [10, 3],
4777
- widthElements: [0, 0]
5289
+ heightElements: [ 10, 3 ],
5290
+ widthElements: [ 0, 0 ]
4778
5291
  },
4779
5292
  'EVENT_MULTIPLE': {
4780
5293
  d:'m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z',
4781
5294
  height: 36,
4782
5295
  width: 36,
4783
- heightElements: [6.28099, 12.56199],
4784
- widthElements: [3.1405, 9.42149, 12.56198]
5296
+ heightElements: [ 6.28099, 12.56199 ],
5297
+ widthElements: [ 3.1405, 9.42149, 12.56198 ]
4785
5298
  },
4786
5299
  'EVENT_PARALLEL_MULTIPLE': {
4787
5300
  d:'m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} ' +
4788
5301
  '-{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z',
4789
5302
  height: 36,
4790
5303
  width: 36,
4791
- heightElements: [2.56228, 7.68683],
4792
- widthElements: [2.56228, 7.68683]
5304
+ heightElements: [ 2.56228, 7.68683 ],
5305
+ widthElements: [ 2.56228, 7.68683 ]
4793
5306
  },
4794
5307
  'GATEWAY_EXCLUSIVE': {
4795
5308
  d:'m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} ' +
@@ -4797,23 +5310,23 @@
4797
5310
  '{e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z',
4798
5311
  height: 17.5,
4799
5312
  width: 17.5,
4800
- heightElements: [8.5, 6.5312, -6.5312, -8.5],
4801
- widthElements: [6.5, -6.5, 3, -3, 5, -5]
5313
+ heightElements: [ 8.5, 6.5312, -6.5312, -8.5 ],
5314
+ widthElements: [ 6.5, -6.5, 3, -3, 5, -5 ]
4802
5315
  },
4803
5316
  'GATEWAY_PARALLEL': {
4804
5317
  d:'m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 ' +
4805
5318
  '0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z',
4806
5319
  height: 30,
4807
5320
  width: 30,
4808
- heightElements: [5, 12.5],
4809
- widthElements: [5, 12.5]
5321
+ heightElements: [ 5, 12.5 ],
5322
+ widthElements: [ 5, 12.5 ]
4810
5323
  },
4811
5324
  'GATEWAY_EVENT_BASED': {
4812
5325
  d:'m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z',
4813
5326
  height: 11,
4814
5327
  width: 11,
4815
- heightElements: [-6, 6, 12, -12],
4816
- widthElements: [9, -3, -12]
5328
+ heightElements: [ -6, 6, 12, -12 ],
5329
+ widthElements: [ 9, -3, -12 ]
4817
5330
  },
4818
5331
  'GATEWAY_COMPLEX': {
4819
5332
  d:'m {mx},{my} 0,{e.y0} -{e.x0},-{e.y1} -{e.x1},{e.y2} {e.x0},{e.y1} -{e.x2},0 0,{e.y3} ' +
@@ -4822,15 +5335,15 @@
4822
5335
  '-{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z',
4823
5336
  height: 17.125,
4824
5337
  width: 17.125,
4825
- heightElements: [4.875, 3.4375, 2.125, 3],
4826
- widthElements: [3.4375, 2.125, 4.875, 3]
5338
+ heightElements: [ 4.875, 3.4375, 2.125, 3 ],
5339
+ widthElements: [ 3.4375, 2.125, 4.875, 3 ]
4827
5340
  },
4828
5341
  'DATA_OBJECT_PATH': {
4829
5342
  d:'m 0,0 {e.x1},0 {e.x0},{e.y0} 0,{e.y1} -{e.x2},0 0,-{e.y2} {e.x1},0 0,{e.y0} {e.x0},0',
4830
5343
  height: 61,
4831
5344
  width: 51,
4832
- heightElements: [10, 50, 60],
4833
- widthElements: [10, 40, 50, 60]
5345
+ heightElements: [ 10, 50, 60 ],
5346
+ widthElements: [ 10, 40, 50, 60 ]
4834
5347
  },
4835
5348
  'DATA_OBJECT_COLLECTION_PATH': {
4836
5349
  d: 'm{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10',
@@ -4859,15 +5372,15 @@
4859
5372
  'c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0',
4860
5373
  height: 61,
4861
5374
  width: 61,
4862
- heightElements: [7, 10, 45],
4863
- widthElements: [2, 58, 60]
5375
+ heightElements: [ 7, 10, 45 ],
5376
+ widthElements: [ 2, 58, 60 ]
4864
5377
  },
4865
5378
  'TEXT_ANNOTATION': {
4866
5379
  d: 'm {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0',
4867
5380
  height: 30,
4868
5381
  width: 10,
4869
- heightElements: [30],
4870
- widthElements: [10]
5382
+ heightElements: [ 30 ],
5383
+ widthElements: [ 10 ]
4871
5384
  },
4872
5385
  'MARKER_SUB_PROCESS': {
4873
5386
  d: 'm{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0',
@@ -4922,8 +5435,8 @@
4922
5435
  d: 'm {mx},{my} l 0,{e.y1} l {e.x1},0 l 0,-{e.y1} z l {e.x0},{e.y0} l {e.x0},-{e.y0}',
4923
5436
  height: 14,
4924
5437
  width: 21,
4925
- heightElements: [6, 14],
4926
- widthElements: [10.5, 21]
5438
+ heightElements: [ 6, 14 ],
5439
+ widthElements: [ 10.5, 21 ]
4927
5440
  },
4928
5441
  'TASK_TYPE_SCRIPT': {
4929
5442
  d: 'm {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 ' +
@@ -4934,8 +5447,8 @@
4934
5447
  'm -4,3 l 5,0',
4935
5448
  height: 15,
4936
5449
  width: 12.6,
4937
- heightElements: [6, 14],
4938
- widthElements: [10.5, 21]
5450
+ heightElements: [ 6, 14 ],
5451
+ widthElements: [ 10.5, 21 ]
4939
5452
  },
4940
5453
  'TASK_TYPE_USER_1': {
4941
5454
  d: 'm {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 ' +
@@ -5616,11 +6129,6 @@
5616
6129
  parentElement = this._canvas.findRoot(parentElement);
5617
6130
  }
5618
6131
 
5619
- // insert sequence flows behind other flow nodes (cf. #727)
5620
- if (is(semantic, 'bpmn:SequenceFlow')) {
5621
- parentIndex = 0;
5622
- }
5623
-
5624
6132
  this._canvas.addConnection(element, parentElement, parentIndex);
5625
6133
  } else {
5626
6134
  throw new Error(translate('unknown di {di} for element {semantic}', {
@@ -8372,7 +8880,7 @@
8372
8880
 
8373
8881
  // dataAssociations are children of the subprocess but rendered on process level
8374
8882
  // cf. https://github.com/bpmn-io/bpmn-js/issues/1619
8375
- if (isAny(bo, ['bpmn:DataInputAssociation', 'bpmn:DataOutputAssociation'])) {
8883
+ if (isAny(bo, [ 'bpmn:DataInputAssociation', 'bpmn:DataOutputAssociation' ])) {
8376
8884
  return false;
8377
8885
  }
8378
8886
 
@@ -8420,7 +8928,7 @@
8420
8928
  }, true);
8421
8929
 
8422
8930
 
8423
- this.executed(['shape.create', 'shape.move', 'shape.delete'], LOW_PRIORITY$3,
8931
+ this.executed([ 'shape.create', 'shape.move', 'shape.delete' ], LOW_PRIORITY$3,
8424
8932
  function(context) {
8425
8933
  var oldParent = context.oldParent,
8426
8934
  newParent = context.newParent || context.parent,
@@ -8437,7 +8945,7 @@
8437
8945
  }, true);
8438
8946
 
8439
8947
 
8440
- this.reverted(['shape.create', 'shape.move', 'shape.delete'], LOW_PRIORITY$3,
8948
+ this.reverted([ 'shape.create', 'shape.move', 'shape.delete' ], LOW_PRIORITY$3,
8441
8949
  function(context) {
8442
8950
  var oldParent = context.oldParent,
8443
8951
  newParent = context.newParent || context.parent,
@@ -8556,7 +9064,7 @@
8556
9064
 
8557
9065
  var DrilldownModdule = {
8558
9066
  __depends__: [ OverlaysModule, ChangeSupportModule, RootElementsModule ],
8559
- __init__: [ 'drilldownBreadcrumbs', 'drilldownOverlayBehavior', 'drilldownCentering', 'subprocessCompatibility'],
9067
+ __init__: [ 'drilldownBreadcrumbs', 'drilldownOverlayBehavior', 'drilldownCentering', 'subprocessCompatibility' ],
8560
9068
  drilldownBreadcrumbs: [ 'type', DrilldownBreadcrumbs ],
8561
9069
  drilldownCentering: [ 'type', DrilldownCentering ],
8562
9070
  drilldownOverlayBehavior: [ 'type', DrilldownOverlayBehavior ],
@@ -8884,20 +9392,11 @@
8884
9392
  return function() {
8885
9393
  initializers.forEach(function(initializer) {
8886
9394
 
8887
- try {
8888
-
8889
- // eagerly resolve component (fn or string)
8890
- if (typeof initializer === 'string') {
8891
- injector.get(initializer);
8892
- } else {
8893
- injector.invoke(initializer);
8894
- }
8895
- } catch (error) {
8896
- if (typeof AggregateError !== 'undefined') {
8897
- throw new AggregateError([ error ], 'Failed to initialize!');
8898
- }
8899
-
8900
- throw new Error('Failed to initialize! ' + error.message);
9395
+ // eagerly resolve component (fn or string)
9396
+ if (typeof initializer === 'string') {
9397
+ injector.get(initializer);
9398
+ } else {
9399
+ injector.invoke(initializer);
8901
9400
  }
8902
9401
  });
8903
9402
  };
@@ -9213,7 +9712,7 @@
9213
9712
  *
9214
9713
  * @return {number} the previous index of the element
9215
9714
  */
9216
- function remove$2(collection, element) {
9715
+ function remove$3(collection, element) {
9217
9716
 
9218
9717
  if (!collection || !element) {
9219
9718
  return -1;
@@ -10165,7 +10664,7 @@
10165
10664
  graphicsFactory.remove(element);
10166
10665
 
10167
10666
  // unset parent <-> child relationship
10168
- remove$2(element.parent && element.parent.children, element);
10667
+ remove$3(element.parent && element.parent.children, element);
10169
10668
  element.parent = null;
10170
10669
 
10171
10670
  eventBus.fire(type + '.removed', { element: element });
@@ -11489,7 +11988,7 @@
11489
11988
  *
11490
11989
  * @return {Base} the new model instance
11491
11990
  */
11492
- function create$1(type, attrs) {
11991
+ function create$2(type, attrs) {
11493
11992
  var Type = types[type];
11494
11993
  if (!Type) {
11495
11994
  throw new Error('unknown type: <' + type + '>');
@@ -11537,7 +12036,7 @@
11537
12036
  attrs.id = type + '_' + (this._uid++);
11538
12037
  }
11539
12038
 
11540
- return create$1(type, attrs);
12039
+ return create$2(type, attrs);
11541
12040
  };
11542
12041
 
11543
12042
  var FN_REF = '__fn';
@@ -16058,7 +16557,23 @@
16058
16557
  value = escapeAttr(value);
16059
16558
  }
16060
16559
 
16061
- attrs.push({ name: name, value: value });
16560
+ // de-duplicate attributes
16561
+ // https://github.com/bpmn-io/moddle-xml/issues/66
16562
+ var idx = findIndex(attrs, function(element) {
16563
+ return (
16564
+ element.name.localName === name.localName &&
16565
+ element.name.uri === name.uri &&
16566
+ element.name.prefix === name.prefix
16567
+ );
16568
+ });
16569
+
16570
+ var attr = { name: name, value: value };
16571
+
16572
+ if (idx !== -1) {
16573
+ attrs.splice(idx, 1, attr);
16574
+ } else {
16575
+ attrs.push(attr);
16576
+ }
16062
16577
  };
16063
16578
 
16064
16579
  ElementSerializer.prototype.serializeAttributes = function(writer) {
@@ -16318,12 +16833,12 @@
16318
16833
  });
16319
16834
  };
16320
16835
 
16321
- var name = "BPMN20";
16322
- var uri = "http://www.omg.org/spec/BPMN/20100524/MODEL";
16323
- var prefix$1 = "bpmn";
16324
- var associations = [
16836
+ var name$5 = "BPMN20";
16837
+ var uri$5 = "http://www.omg.org/spec/BPMN/20100524/MODEL";
16838
+ var prefix$5 = "bpmn";
16839
+ var associations$5 = [
16325
16840
  ];
16326
- var types$1 = [
16841
+ var types$5 = [
16327
16842
  {
16328
16843
  name: "Interface",
16329
16844
  superClass: [
@@ -19141,7 +19656,7 @@
19141
19656
  ]
19142
19657
  }
19143
19658
  ];
19144
- var enumerations = [
19659
+ var enumerations$3 = [
19145
19660
  {
19146
19661
  name: "ProcessType",
19147
19662
  literalValues: [
@@ -19272,24 +19787,24 @@
19272
19787
  ]
19273
19788
  }
19274
19789
  ];
19275
- var xml = {
19790
+ var xml$1 = {
19276
19791
  tagAlias: "lowerCase",
19277
19792
  typePrefix: "t"
19278
19793
  };
19279
19794
  var BpmnPackage = {
19280
- name: name,
19281
- uri: uri,
19282
- prefix: prefix$1,
19283
- associations: associations,
19284
- types: types$1,
19285
- enumerations: enumerations,
19286
- xml: xml
19795
+ name: name$5,
19796
+ uri: uri$5,
19797
+ prefix: prefix$5,
19798
+ associations: associations$5,
19799
+ types: types$5,
19800
+ enumerations: enumerations$3,
19801
+ xml: xml$1
19287
19802
  };
19288
19803
 
19289
- var name$1 = "BPMNDI";
19290
- var uri$1 = "http://www.omg.org/spec/BPMN/20100524/DI";
19291
- var prefix$1$1 = "bpmndi";
19292
- var types$1$1 = [
19804
+ var name$4 = "BPMNDI";
19805
+ var uri$4 = "http://www.omg.org/spec/BPMN/20100524/DI";
19806
+ var prefix$4 = "bpmndi";
19807
+ var types$4 = [
19293
19808
  {
19294
19809
  name: "BPMNDiagram",
19295
19810
  properties: [
@@ -19440,7 +19955,7 @@
19440
19955
  ]
19441
19956
  }
19442
19957
  ];
19443
- var enumerations$1 = [
19958
+ var enumerations$2 = [
19444
19959
  {
19445
19960
  name: "ParticipantBandKind",
19446
19961
  literalValues: [
@@ -19476,21 +19991,21 @@
19476
19991
  ]
19477
19992
  }
19478
19993
  ];
19479
- var associations$1 = [
19994
+ var associations$4 = [
19480
19995
  ];
19481
19996
  var BpmnDiPackage = {
19482
- name: name$1,
19483
- uri: uri$1,
19484
- prefix: prefix$1$1,
19485
- types: types$1$1,
19486
- enumerations: enumerations$1,
19487
- associations: associations$1
19997
+ name: name$4,
19998
+ uri: uri$4,
19999
+ prefix: prefix$4,
20000
+ types: types$4,
20001
+ enumerations: enumerations$2,
20002
+ associations: associations$4
19488
20003
  };
19489
20004
 
19490
- var name$2 = "DC";
19491
- var uri$2 = "http://www.omg.org/spec/DD/20100524/DC";
19492
- var prefix$2 = "dc";
19493
- var types$2 = [
20005
+ var name$3 = "DC";
20006
+ var uri$3 = "http://www.omg.org/spec/DD/20100524/DC";
20007
+ var prefix$3 = "dc";
20008
+ var types$3 = [
19494
20009
  {
19495
20010
  name: "Boolean"
19496
20011
  },
@@ -19583,20 +20098,20 @@
19583
20098
  ]
19584
20099
  }
19585
20100
  ];
19586
- var associations$2 = [
20101
+ var associations$3 = [
19587
20102
  ];
19588
20103
  var DcPackage = {
19589
- name: name$2,
19590
- uri: uri$2,
19591
- prefix: prefix$2,
19592
- types: types$2,
19593
- associations: associations$2
20104
+ name: name$3,
20105
+ uri: uri$3,
20106
+ prefix: prefix$3,
20107
+ types: types$3,
20108
+ associations: associations$3
19594
20109
  };
19595
20110
 
19596
- var name$3 = "DI";
19597
- var uri$3 = "http://www.omg.org/spec/DD/20100524/DI";
19598
- var prefix$3 = "di";
19599
- var types$3 = [
20111
+ var name$2 = "DI";
20112
+ var uri$2 = "http://www.omg.org/spec/DD/20100524/DI";
20113
+ var prefix$2 = "di";
20114
+ var types$2 = [
19600
20115
  {
19601
20116
  name: "DiagramElement",
19602
20117
  isAbstract: true,
@@ -19825,24 +20340,24 @@
19825
20340
  ]
19826
20341
  }
19827
20342
  ];
19828
- var associations$3 = [
20343
+ var associations$2 = [
19829
20344
  ];
19830
- var xml$1 = {
20345
+ var xml = {
19831
20346
  tagAlias: "lowerCase"
19832
20347
  };
19833
20348
  var DiPackage = {
19834
- name: name$3,
19835
- uri: uri$3,
19836
- prefix: prefix$3,
19837
- types: types$3,
19838
- associations: associations$3,
19839
- xml: xml$1
20349
+ name: name$2,
20350
+ uri: uri$2,
20351
+ prefix: prefix$2,
20352
+ types: types$2,
20353
+ associations: associations$2,
20354
+ xml: xml
19840
20355
  };
19841
20356
 
19842
- var name$4 = "bpmn.io colors for BPMN";
19843
- var uri$4 = "http://bpmn.io/schema/bpmn/biocolor/1.0";
19844
- var prefix$4 = "bioc";
19845
- var types$4 = [
20357
+ var name$1 = "bpmn.io colors for BPMN";
20358
+ var uri$1 = "http://bpmn.io/schema/bpmn/biocolor/1.0";
20359
+ var prefix$1 = "bioc";
20360
+ var types$1 = [
19846
20361
  {
19847
20362
  name: "ColoredShape",
19848
20363
  "extends": [
@@ -19880,23 +20395,23 @@
19880
20395
  ]
19881
20396
  }
19882
20397
  ];
19883
- var enumerations$2 = [
20398
+ var enumerations$1 = [
19884
20399
  ];
19885
- var associations$4 = [
20400
+ var associations$1 = [
19886
20401
  ];
19887
20402
  var BiocPackage = {
19888
- name: name$4,
19889
- uri: uri$4,
19890
- prefix: prefix$4,
19891
- types: types$4,
19892
- enumerations: enumerations$2,
19893
- associations: associations$4
20403
+ name: name$1,
20404
+ uri: uri$1,
20405
+ prefix: prefix$1,
20406
+ types: types$1,
20407
+ enumerations: enumerations$1,
20408
+ associations: associations$1
19894
20409
  };
19895
20410
 
19896
- var name$5 = "BPMN in Color";
19897
- var uri$5 = "http://www.omg.org/spec/BPMN/non-normative/color/1.0";
19898
- var prefix$5 = "color";
19899
- var types$5 = [
20411
+ var name = "BPMN in Color";
20412
+ var uri = "http://www.omg.org/spec/BPMN/non-normative/color/1.0";
20413
+ var prefix$6 = "color";
20414
+ var types$6 = [
19900
20415
  {
19901
20416
  name: "ColoredLabel",
19902
20417
  "extends": [
@@ -19942,17 +20457,17 @@
19942
20457
  ]
19943
20458
  }
19944
20459
  ];
19945
- var enumerations$3 = [
20460
+ var enumerations = [
19946
20461
  ];
19947
- var associations$5 = [
20462
+ var associations = [
19948
20463
  ];
19949
20464
  var BpmnInColorPackage = {
19950
- name: name$5,
19951
- uri: uri$5,
19952
- prefix: prefix$5,
19953
- types: types$5,
19954
- enumerations: enumerations$3,
19955
- associations: associations$5
20465
+ name: name,
20466
+ uri: uri,
20467
+ prefix: prefix$6,
20468
+ types: types$6,
20469
+ enumerations: enumerations,
20470
+ associations: associations
19956
20471
  };
19957
20472
 
19958
20473
  var packages = {
@@ -20032,6 +20547,7 @@
20032
20547
  // bpmnElement can have multiple independent DIs
20033
20548
  if (!has(businessObject, 'di')) {
20034
20549
  Object.defineProperty(businessObject, 'di', {
20550
+ enumerable: false,
20035
20551
  get: function() {
20036
20552
  throw new Error(DI_ERROR_MESSAGE);
20037
20553
  }