bpmn-js 9.3.1 → 9.4.1

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.
Files changed (46) hide show
  1. package/CHANGELOG.md +817 -0
  2. package/dist/bpmn-modeler.development.js +3424 -3165
  3. package/dist/bpmn-modeler.production.min.js +8 -8
  4. package/dist/bpmn-navigated-viewer.development.js +357 -283
  5. package/dist/bpmn-navigated-viewer.production.min.js +6 -6
  6. package/dist/bpmn-viewer.development.js +323 -269
  7. package/dist/bpmn-viewer.production.min.js +6 -6
  8. package/lib/draw/BpmnRenderUtil.js +25 -25
  9. package/lib/draw/BpmnRenderer.js +4 -4
  10. package/lib/draw/PathMap.js +42 -42
  11. package/lib/features/align-elements/index.js +1 -1
  12. package/lib/features/copy-paste/BpmnCopyPaste.js +75 -69
  13. package/lib/features/copy-paste/ModdleCopy.js +26 -13
  14. package/lib/features/drilldown/DrilldownOverlayBehavior.js +2 -2
  15. package/lib/features/drilldown/SubprocessCompatibility.js +1 -1
  16. package/lib/features/drilldown/index.js +1 -1
  17. package/lib/features/grid-snapping/behavior/{AutoPlaceBehavior.js → GridSnappingAutoPlaceBehavior.js} +2 -2
  18. package/lib/features/grid-snapping/behavior/{LayoutConnectionBehavior.js → GridSnappingLayoutConnectionBehavior.js} +4 -4
  19. package/lib/features/grid-snapping/behavior/{CreateParticipantBehavior.js → GridSnappingParticipantBehavior.js} +2 -2
  20. package/lib/features/grid-snapping/behavior/index.js +7 -7
  21. package/lib/features/keyboard/BpmnKeyboardBindings.js +7 -7
  22. package/lib/features/label-editing/LabelEditingProvider.js +1 -23
  23. package/lib/features/modeling/ElementFactory.js +18 -8
  24. package/lib/features/modeling/behavior/BoundaryEventBehavior.js +1 -16
  25. package/lib/features/modeling/behavior/DropOnFlowBehavior.js +1 -1
  26. package/lib/features/modeling/behavior/GroupBehavior.js +205 -93
  27. package/lib/features/modeling/behavior/ReplaceElementBehaviour.js +8 -4
  28. package/lib/features/modeling/behavior/ResizeBehavior.js +2 -0
  29. package/lib/features/modeling/behavior/RootElementReferenceBehavior.js +7 -8
  30. package/lib/features/modeling/behavior/SpaceToolBehavior.js +5 -0
  31. package/lib/features/modeling/behavior/SubProcessPlaneBehavior.js +9 -0
  32. package/lib/features/modeling/behavior/index.js +1 -1
  33. package/lib/features/modeling/behavior/util/CategoryUtil.js +66 -13
  34. package/lib/features/modeling/behavior/util/LayoutUtil.js +6 -6
  35. package/lib/features/modeling/cmd/SetColorHandler.js +10 -3
  36. package/lib/features/modeling/cmd/UpdateModdlePropertiesHandler.js +4 -1
  37. package/lib/features/ordering/BpmnOrderingProvider.js +3 -1
  38. package/lib/features/replace/BpmnReplace.js +12 -0
  39. package/lib/features/search/index.js +1 -1
  40. package/lib/import/BpmnImporter.js +0 -5
  41. package/lib/util/CompatibilityUtil.js +1 -0
  42. package/package.json +21 -24
  43. package/test/helper/index.js +26 -1
  44. package/.babelrc +0 -3
  45. package/lib/features/distribute-elements/dist/distribute-horizontally-tool.svg +0 -1
  46. package/lib/features/distribute-elements/dist/distribute-vertically-tool.svg +0 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * bpmn-js - bpmn-navigated-viewer v9.3.1
2
+ * bpmn-js - bpmn-navigated-viewer v9.4.1
3
3
  *
4
4
  * Copyright (c) 2014-present, camunda Services GmbH
5
5
  *
@@ -8,13 +8,13 @@
8
8
  *
9
9
  * Source Code: https://github.com/bpmn-io/bpmn-js
10
10
  *
11
- * Date: 2022-07-07
11
+ * Date: 2022-09-05
12
12
  */
13
13
  (function (global, factory) {
14
14
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
15
15
  typeof define === 'function' && define.amd ? define(factory) :
16
16
  (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.BpmnJS = factory());
17
- }(this, (function () { 'use strict';
17
+ })(this, (function () { 'use strict';
18
18
 
19
19
  function e(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}));}
20
20
 
@@ -83,6 +83,26 @@
83
83
  });
84
84
  return match;
85
85
  }
86
+ /**
87
+ * Find element index in collection.
88
+ *
89
+ * @param {Array|Object} collection
90
+ * @param {Function} matcher
91
+ *
92
+ * @return {Object}
93
+ */
94
+
95
+ function findIndex(collection, matcher) {
96
+ matcher = toMatcher(matcher);
97
+ var idx = isArray$2(collection) ? -1 : undefined;
98
+ forEach$1(collection, function (val, key) {
99
+ if (matcher(val, key)) {
100
+ idx = key;
101
+ return false;
102
+ }
103
+ });
104
+ return idx;
105
+ }
86
106
  /**
87
107
  * Find element in collection.
88
108
  *
@@ -1094,7 +1114,15 @@
1094
1114
  */
1095
1115
 
1096
1116
  // fake node used to instantiate svg geometry elements
1097
- var node = create$1('svg');
1117
+ var node = null;
1118
+
1119
+ function getNode() {
1120
+ if (node === null) {
1121
+ node = create$1('svg');
1122
+ }
1123
+
1124
+ return node;
1125
+ }
1098
1126
 
1099
1127
  function extend$1(object, props) {
1100
1128
  var i, k, keys = Object.keys(props);
@@ -1118,7 +1146,7 @@
1118
1146
  * @return {SVGMatrix}
1119
1147
  */
1120
1148
  function createMatrix(a, b, c, d, e, f) {
1121
- var matrix = node.createSVGMatrix();
1149
+ var matrix = getNode().createSVGMatrix();
1122
1150
 
1123
1151
  switch (arguments.length) {
1124
1152
  case 0:
@@ -1139,9 +1167,9 @@
1139
1167
 
1140
1168
  function createTransform(matrix) {
1141
1169
  if (matrix) {
1142
- return node.createSVGTransformFromMatrix(matrix);
1170
+ return getNode().createSVGTransformFromMatrix(matrix);
1143
1171
  } else {
1144
- return node.createSVGTransform();
1172
+ return getNode().createSVGTransform();
1145
1173
  }
1146
1174
  }
1147
1175
 
@@ -1438,11 +1466,11 @@
1438
1466
  radius = shape.width / 2;
1439
1467
 
1440
1468
  var circlePath = [
1441
- ['M', cx, cy],
1442
- ['m', 0, -radius],
1443
- ['a', radius, radius, 0, 1, 1, 0, 2 * radius],
1444
- ['a', radius, radius, 0, 1, 1, 0, -2 * radius],
1445
- ['z']
1469
+ [ 'M', cx, cy ],
1470
+ [ 'm', 0, -radius ],
1471
+ [ 'a', radius, radius, 0, 1, 1, 0, 2 * radius ],
1472
+ [ 'a', radius, radius, 0, 1, 1, 0, -2 * radius ],
1473
+ [ 'z' ]
1446
1474
  ];
1447
1475
 
1448
1476
  return componentsToPath(circlePath);
@@ -1456,16 +1484,16 @@
1456
1484
  height = shape.height;
1457
1485
 
1458
1486
  var roundRectPath = [
1459
- ['M', x + borderRadius, y],
1460
- ['l', width - borderRadius * 2, 0],
1461
- ['a', borderRadius, borderRadius, 0, 0, 1, borderRadius, borderRadius],
1462
- ['l', 0, height - borderRadius * 2],
1463
- ['a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, borderRadius],
1464
- ['l', borderRadius * 2 - width, 0],
1465
- ['a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, -borderRadius],
1466
- ['l', 0, borderRadius * 2 - height],
1467
- ['a', borderRadius, borderRadius, 0, 0, 1, borderRadius, -borderRadius],
1468
- ['z']
1487
+ [ 'M', x + borderRadius, y ],
1488
+ [ 'l', width - borderRadius * 2, 0 ],
1489
+ [ 'a', borderRadius, borderRadius, 0, 0, 1, borderRadius, borderRadius ],
1490
+ [ 'l', 0, height - borderRadius * 2 ],
1491
+ [ 'a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, borderRadius ],
1492
+ [ 'l', borderRadius * 2 - width, 0 ],
1493
+ [ 'a', borderRadius, borderRadius, 0, 0, 1, -borderRadius, -borderRadius ],
1494
+ [ 'l', 0, borderRadius * 2 - height ],
1495
+ [ 'a', borderRadius, borderRadius, 0, 0, 1, borderRadius, -borderRadius ],
1496
+ [ 'z' ]
1469
1497
  ];
1470
1498
 
1471
1499
  return componentsToPath(roundRectPath);
@@ -1481,11 +1509,11 @@
1481
1509
  halfHeight = height / 2;
1482
1510
 
1483
1511
  var diamondPath = [
1484
- ['M', x + halfWidth, y],
1485
- ['l', halfWidth, halfHeight],
1486
- ['l', -halfWidth, halfHeight],
1487
- ['l', -halfWidth, -halfHeight],
1488
- ['z']
1512
+ [ 'M', x + halfWidth, y ],
1513
+ [ 'l', halfWidth, halfHeight ],
1514
+ [ 'l', -halfWidth, halfHeight ],
1515
+ [ 'l', -halfWidth, -halfHeight ],
1516
+ [ 'z' ]
1489
1517
  ];
1490
1518
 
1491
1519
  return componentsToPath(diamondPath);
@@ -1498,11 +1526,11 @@
1498
1526
  height = shape.height;
1499
1527
 
1500
1528
  var rectPath = [
1501
- ['M', x, y],
1502
- ['l', width, 0],
1503
- ['l', 0, height],
1504
- ['l', -width, 0],
1505
- ['z']
1529
+ [ 'M', x, y ],
1530
+ [ 'l', width, 0 ],
1531
+ [ 'l', 0, height ],
1532
+ [ 'l', -width, 0 ],
1533
+ [ 'z' ]
1506
1534
  ];
1507
1535
 
1508
1536
  return componentsToPath(rectPath);
@@ -2365,7 +2393,7 @@
2365
2393
  // fix for safari / chrome / firefox bug not correctly
2366
2394
  // resetting stroke dash array
2367
2395
  if (attrs.strokeDasharray === 'none') {
2368
- attrs.strokeDasharray = [10000, 1];
2396
+ attrs.strokeDasharray = [ 10000, 1 ];
2369
2397
  }
2370
2398
 
2371
2399
  var marker = create$1('marker');
@@ -2592,7 +2620,7 @@
2592
2620
  var x_2 = width / 2;
2593
2621
  var y_2 = height / 2;
2594
2622
 
2595
- var points = [{ x: x_2, y: 0 }, { x: width, y: y_2 }, { x: x_2, y: height }, { x: 0, y: y_2 }];
2623
+ var points = [ { x: x_2, y: 0 }, { x: width, y: y_2 }, { x: x_2, y: height }, { x: 0, y: y_2 } ];
2596
2624
 
2597
2625
  var pointsString = points.map(function(point) {
2598
2626
  return point.x + ',' + point.y;
@@ -2664,7 +2692,7 @@
2664
2692
  var event = getSemantic(element);
2665
2693
  var isThrowing = isThrowEvent(event);
2666
2694
 
2667
- if (event.eventDefinitions && event.eventDefinitions.length>1) {
2695
+ if (event.eventDefinitions && event.eventDefinitions.length > 1) {
2668
2696
  if (event.parallelMultiple) {
2669
2697
  return renderer('bpmn:ParallelMultipleEventDefinition')(parentGfx, element, isThrowing);
2670
2698
  }
@@ -3380,7 +3408,7 @@
3380
3408
  if (expanded) {
3381
3409
  attachTaskMarkers(parentGfx, element);
3382
3410
  } else {
3383
- attachTaskMarkers(parentGfx, element, ['SubProcessMarker']);
3411
+ attachTaskMarkers(parentGfx, element, [ 'SubProcessMarker' ]);
3384
3412
  }
3385
3413
 
3386
3414
  return rect;
@@ -4374,11 +4402,14 @@
4374
4402
  helperSvg = create$1('svg');
4375
4403
 
4376
4404
  attr$1(helperSvg, {
4377
- id: 'helper-svg',
4378
- width: 0,
4379
- height: 0,
4405
+ id: 'helper-svg'
4406
+ });
4407
+
4408
+ assign$1(helperSvg, {
4380
4409
  visibility: 'hidden',
4381
- position: 'fixed'
4410
+ position: 'fixed',
4411
+ width: 0,
4412
+ height: 0
4382
4413
  });
4383
4414
 
4384
4415
  document.body.appendChild(helperSvg);
@@ -4711,22 +4742,22 @@
4711
4742
  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}',
4712
4743
  height: 36,
4713
4744
  width: 36,
4714
- heightElements: [6, 14],
4715
- widthElements: [10.5, 21]
4745
+ heightElements: [ 6, 14 ],
4746
+ widthElements: [ 10.5, 21 ]
4716
4747
  },
4717
4748
  'EVENT_SIGNAL': {
4718
4749
  d: 'M {mx},{my} l {e.x0},{e.y0} l -{e.x1},0 Z',
4719
4750
  height: 36,
4720
4751
  width: 36,
4721
- heightElements: [18],
4722
- widthElements: [10, 20]
4752
+ heightElements: [ 18 ],
4753
+ widthElements: [ 10, 20 ]
4723
4754
  },
4724
4755
  'EVENT_ESCALATION': {
4725
4756
  d: 'M {mx},{my} l {e.x0},{e.y0} l -{e.x0},-{e.y1} l -{e.x0},{e.y1} Z',
4726
4757
  height: 36,
4727
4758
  width: 36,
4728
- heightElements: [20, 7],
4729
- widthElements: [8]
4759
+ heightElements: [ 20, 7 ],
4760
+ widthElements: [ 8 ]
4730
4761
  },
4731
4762
  'EVENT_CONDITIONAL': {
4732
4763
  d: 'M {e.x0},{e.y0} l {e.x1},0 l 0,{e.y2} l -{e.x1},0 Z ' +
@@ -4738,67 +4769,67 @@
4738
4769
  'M {e.x2},{e.y8} l {e.x0},0 ',
4739
4770
  height: 36,
4740
4771
  width: 36,
4741
- heightElements: [8.5, 14.5, 18, 11.5, 14.5, 17.5, 20.5, 23.5, 26.5],
4742
- widthElements: [10.5, 14.5, 12.5]
4772
+ heightElements: [ 8.5, 14.5, 18, 11.5, 14.5, 17.5, 20.5, 23.5, 26.5 ],
4773
+ widthElements: [ 10.5, 14.5, 12.5 ]
4743
4774
  },
4744
4775
  'EVENT_LINK': {
4745
4776
  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',
4746
4777
  height: 36,
4747
4778
  width: 36,
4748
- heightElements: [4.4375, 6.75, 7.8125],
4749
- widthElements: [9.84375, 13.5]
4779
+ heightElements: [ 4.4375, 6.75, 7.8125 ],
4780
+ widthElements: [ 9.84375, 13.5 ]
4750
4781
  },
4751
4782
  'EVENT_ERROR': {
4752
4783
  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',
4753
4784
  height: 36,
4754
4785
  width: 36,
4755
- heightElements: [0.023, 8.737, 8.151, 16.564, 10.591, 8.714],
4756
- widthElements: [0.085, 6.672, 6.97, 4.273, 5.337, 6.636]
4786
+ heightElements: [ 0.023, 8.737, 8.151, 16.564, 10.591, 8.714 ],
4787
+ widthElements: [ 0.085, 6.672, 6.97, 4.273, 5.337, 6.636 ]
4757
4788
  },
4758
4789
  'EVENT_CANCEL_45': {
4759
4790
  d: 'm {mx},{my} -{e.x1},0 0,{e.x0} {e.x1},0 0,{e.y1} {e.x0},0 ' +
4760
4791
  '0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z',
4761
4792
  height: 36,
4762
4793
  width: 36,
4763
- heightElements: [4.75, 8.5],
4764
- widthElements: [4.75, 8.5]
4794
+ heightElements: [ 4.75, 8.5 ],
4795
+ widthElements: [ 4.75, 8.5 ]
4765
4796
  },
4766
4797
  'EVENT_COMPENSATION': {
4767
4798
  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',
4768
4799
  height: 36,
4769
4800
  width: 36,
4770
- heightElements: [6.5, 13, 0.4, 6.1],
4771
- widthElements: [9, 9.3, 8.7]
4801
+ heightElements: [ 6.5, 13, 0.4, 6.1 ],
4802
+ widthElements: [ 9, 9.3, 8.7 ]
4772
4803
  },
4773
4804
  'EVENT_TIMER_WH': {
4774
4805
  d: 'M {mx},{my} l {e.x0},-{e.y0} m -{e.x0},{e.y0} l {e.x1},{e.y1} ',
4775
4806
  height: 36,
4776
4807
  width: 36,
4777
- heightElements: [10, 2],
4778
- widthElements: [3, 7]
4808
+ heightElements: [ 10, 2 ],
4809
+ widthElements: [ 3, 7 ]
4779
4810
  },
4780
4811
  'EVENT_TIMER_LINE': {
4781
4812
  d: 'M {mx},{my} ' +
4782
4813
  'm {e.x0},{e.y0} l -{e.x1},{e.y1} ',
4783
4814
  height: 36,
4784
4815
  width: 36,
4785
- heightElements: [10, 3],
4786
- widthElements: [0, 0]
4816
+ heightElements: [ 10, 3 ],
4817
+ widthElements: [ 0, 0 ]
4787
4818
  },
4788
4819
  'EVENT_MULTIPLE': {
4789
4820
  d:'m {mx},{my} {e.x1},-{e.y0} {e.x1},{e.y0} -{e.x0},{e.y1} -{e.x2},0 z',
4790
4821
  height: 36,
4791
4822
  width: 36,
4792
- heightElements: [6.28099, 12.56199],
4793
- widthElements: [3.1405, 9.42149, 12.56198]
4823
+ heightElements: [ 6.28099, 12.56199 ],
4824
+ widthElements: [ 3.1405, 9.42149, 12.56198 ]
4794
4825
  },
4795
4826
  'EVENT_PARALLEL_MULTIPLE': {
4796
4827
  d:'m {mx},{my} {e.x0},0 0,{e.y1} {e.x1},0 0,{e.y0} -{e.x1},0 0,{e.y1} ' +
4797
4828
  '-{e.x0},0 0,-{e.y1} -{e.x1},0 0,-{e.y0} {e.x1},0 z',
4798
4829
  height: 36,
4799
4830
  width: 36,
4800
- heightElements: [2.56228, 7.68683],
4801
- widthElements: [2.56228, 7.68683]
4831
+ heightElements: [ 2.56228, 7.68683 ],
4832
+ widthElements: [ 2.56228, 7.68683 ]
4802
4833
  },
4803
4834
  'GATEWAY_EXCLUSIVE': {
4804
4835
  d:'m {mx},{my} {e.x0},{e.y0} {e.x1},{e.y0} {e.x2},0 {e.x4},{e.y2} ' +
@@ -4806,23 +4837,23 @@
4806
4837
  '{e.x3},0 {e.x5},{e.y1} {e.x5},{e.y2} {e.x3},0 z',
4807
4838
  height: 17.5,
4808
4839
  width: 17.5,
4809
- heightElements: [8.5, 6.5312, -6.5312, -8.5],
4810
- widthElements: [6.5, -6.5, 3, -3, 5, -5]
4840
+ heightElements: [ 8.5, 6.5312, -6.5312, -8.5 ],
4841
+ widthElements: [ 6.5, -6.5, 3, -3, 5, -5 ]
4811
4842
  },
4812
4843
  'GATEWAY_PARALLEL': {
4813
4844
  d:'m {mx},{my} 0,{e.y1} -{e.x1},0 0,{e.y0} {e.x1},0 0,{e.y1} {e.x0},0 ' +
4814
4845
  '0,-{e.y1} {e.x1},0 0,-{e.y0} -{e.x1},0 0,-{e.y1} -{e.x0},0 z',
4815
4846
  height: 30,
4816
4847
  width: 30,
4817
- heightElements: [5, 12.5],
4818
- widthElements: [5, 12.5]
4848
+ heightElements: [ 5, 12.5 ],
4849
+ widthElements: [ 5, 12.5 ]
4819
4850
  },
4820
4851
  'GATEWAY_EVENT_BASED': {
4821
4852
  d:'m {mx},{my} {e.x0},{e.y0} {e.x0},{e.y1} {e.x1},{e.y2} {e.x2},0 z',
4822
4853
  height: 11,
4823
4854
  width: 11,
4824
- heightElements: [-6, 6, 12, -12],
4825
- widthElements: [9, -3, -12]
4855
+ heightElements: [ -6, 6, 12, -12 ],
4856
+ widthElements: [ 9, -3, -12 ]
4826
4857
  },
4827
4858
  'GATEWAY_COMPLEX': {
4828
4859
  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} ' +
@@ -4831,15 +4862,15 @@
4831
4862
  '-{e.x0},{e.y1} 0,-{e.y0} -{e.x3},0 z',
4832
4863
  height: 17.125,
4833
4864
  width: 17.125,
4834
- heightElements: [4.875, 3.4375, 2.125, 3],
4835
- widthElements: [3.4375, 2.125, 4.875, 3]
4865
+ heightElements: [ 4.875, 3.4375, 2.125, 3 ],
4866
+ widthElements: [ 3.4375, 2.125, 4.875, 3 ]
4836
4867
  },
4837
4868
  'DATA_OBJECT_PATH': {
4838
4869
  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',
4839
4870
  height: 61,
4840
4871
  width: 51,
4841
- heightElements: [10, 50, 60],
4842
- widthElements: [10, 40, 50, 60]
4872
+ heightElements: [ 10, 50, 60 ],
4873
+ widthElements: [ 10, 40, 50, 60 ]
4843
4874
  },
4844
4875
  'DATA_OBJECT_COLLECTION_PATH': {
4845
4876
  d: 'm{mx},{my} m 3,2 l 0,10 m 3,-10 l 0,10 m 3,-10 l 0,10',
@@ -4868,15 +4899,15 @@
4868
4899
  'c {e.x0},{e.y1} {e.x1},{e.y1} {e.x2},0',
4869
4900
  height: 61,
4870
4901
  width: 61,
4871
- heightElements: [7, 10, 45],
4872
- widthElements: [2, 58, 60]
4902
+ heightElements: [ 7, 10, 45 ],
4903
+ widthElements: [ 2, 58, 60 ]
4873
4904
  },
4874
4905
  'TEXT_ANNOTATION': {
4875
4906
  d: 'm {mx}, {my} m 10,0 l -10,0 l 0,{e.y0} l 10,0',
4876
4907
  height: 30,
4877
4908
  width: 10,
4878
- heightElements: [30],
4879
- widthElements: [10]
4909
+ heightElements: [ 30 ],
4910
+ widthElements: [ 10 ]
4880
4911
  },
4881
4912
  'MARKER_SUB_PROCESS': {
4882
4913
  d: 'm{mx},{my} m 7,2 l 0,10 m -5,-5 l 10,0',
@@ -4931,8 +4962,8 @@
4931
4962
  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}',
4932
4963
  height: 14,
4933
4964
  width: 21,
4934
- heightElements: [6, 14],
4935
- widthElements: [10.5, 21]
4965
+ heightElements: [ 6, 14 ],
4966
+ widthElements: [ 10.5, 21 ]
4936
4967
  },
4937
4968
  'TASK_TYPE_SCRIPT': {
4938
4969
  d: 'm {mx},{my} c 9.966553,-6.27276 -8.000926,-7.91932 2.968968,-14.938 l -8.802728,0 ' +
@@ -4943,8 +4974,8 @@
4943
4974
  'm -4,3 l 5,0',
4944
4975
  height: 15,
4945
4976
  width: 12.6,
4946
- heightElements: [6, 14],
4947
- widthElements: [10.5, 21]
4977
+ heightElements: [ 6, 14 ],
4978
+ widthElements: [ 10.5, 21 ]
4948
4979
  },
4949
4980
  'TASK_TYPE_USER_1': {
4950
4981
  d: 'm {mx},{my} c 0.909,-0.845 1.594,-2.049 1.594,-3.385 0,-2.554 -1.805,-4.62199999 ' +
@@ -5317,6 +5348,10 @@
5317
5348
 
5318
5349
  var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
5319
5350
 
5351
+ function getDefaultExportFromCjs (x) {
5352
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
5353
+ }
5354
+
5320
5355
  function roundPoint(point) {
5321
5356
 
5322
5357
  return {
@@ -5627,11 +5662,6 @@
5627
5662
  parentElement = this._canvas.findRoot(parentElement);
5628
5663
  }
5629
5664
 
5630
- // insert sequence flows behind other flow nodes (cf. #727)
5631
- if (is$1(semantic, 'bpmn:SequenceFlow')) {
5632
- parentIndex = 0;
5633
- }
5634
-
5635
5665
  this._canvas.addConnection(element, parentElement, parentIndex);
5636
5666
  } else {
5637
5667
  throw new Error(translate('unknown di {di} for element {semantic}', {
@@ -7817,105 +7847,105 @@
7817
7847
 
7818
7848
  (function (module, exports) {
7819
7849
  (function(root, factory) {
7820
- // https://github.com/umdjs/umd/blob/master/returnExports.js
7821
- {
7822
- // For Node.js.
7823
- module.exports = factory(root);
7824
- }
7825
- }(typeof commonjsGlobal != 'undefined' ? commonjsGlobal : commonjsGlobal, function(root) {
7826
-
7827
- if (root.CSS && root.CSS.escape) {
7828
- return root.CSS.escape;
7829
- }
7850
+ // https://github.com/umdjs/umd/blob/master/returnExports.js
7851
+ {
7852
+ // For Node.js.
7853
+ module.exports = factory(root);
7854
+ }
7855
+ }(typeof commonjsGlobal != 'undefined' ? commonjsGlobal : commonjsGlobal, function(root) {
7830
7856
 
7831
- // https://drafts.csswg.org/cssom/#serialize-an-identifier
7832
- var cssEscape = function(value) {
7833
- if (arguments.length == 0) {
7834
- throw new TypeError('`CSS.escape` requires an argument.');
7857
+ if (root.CSS && root.CSS.escape) {
7858
+ return root.CSS.escape;
7835
7859
  }
7836
- var string = String(value);
7837
- var length = string.length;
7838
- var index = -1;
7839
- var codeUnit;
7840
- var result = '';
7841
- var firstCodeUnit = string.charCodeAt(0);
7842
- while (++index < length) {
7843
- codeUnit = string.charCodeAt(index);
7844
- // Note: there’s no need to special-case astral symbols, surrogate
7845
- // pairs, or lone surrogates.
7846
-
7847
- // If the character is NULL (U+0000), then the REPLACEMENT CHARACTER
7848
- // (U+FFFD).
7849
- if (codeUnit == 0x0000) {
7850
- result += '\uFFFD';
7851
- continue;
7852
- }
7853
7860
 
7854
- if (
7855
- // If the character is in the range [\1-\1F] (U+0001 to U+001F) or is
7856
- // U+007F, […]
7857
- (codeUnit >= 0x0001 && codeUnit <= 0x001F) || codeUnit == 0x007F ||
7858
- // If the character is the first character and is in the range [0-9]
7859
- // (U+0030 to U+0039), […]
7860
- (index == 0 && codeUnit >= 0x0030 && codeUnit <= 0x0039) ||
7861
- // If the character is the second character and is in the range [0-9]
7862
- // (U+0030 to U+0039) and the first character is a `-` (U+002D), […]
7863
- (
7864
- index == 1 &&
7865
- codeUnit >= 0x0030 && codeUnit <= 0x0039 &&
7866
- firstCodeUnit == 0x002D
7867
- )
7868
- ) {
7869
- // https://drafts.csswg.org/cssom/#escape-a-character-as-code-point
7870
- result += '\\' + codeUnit.toString(16) + ' ';
7871
- continue;
7861
+ // https://drafts.csswg.org/cssom/#serialize-an-identifier
7862
+ var cssEscape = function(value) {
7863
+ if (arguments.length == 0) {
7864
+ throw new TypeError('`CSS.escape` requires an argument.');
7872
7865
  }
7866
+ var string = String(value);
7867
+ var length = string.length;
7868
+ var index = -1;
7869
+ var codeUnit;
7870
+ var result = '';
7871
+ var firstCodeUnit = string.charCodeAt(0);
7872
+ while (++index < length) {
7873
+ codeUnit = string.charCodeAt(index);
7874
+ // Note: there’s no need to special-case astral symbols, surrogate
7875
+ // pairs, or lone surrogates.
7876
+
7877
+ // If the character is NULL (U+0000), then the REPLACEMENT CHARACTER
7878
+ // (U+FFFD).
7879
+ if (codeUnit == 0x0000) {
7880
+ result += '\uFFFD';
7881
+ continue;
7882
+ }
7873
7883
 
7874
- if (
7875
- // If the character is the first character and is a `-` (U+002D), and
7876
- // there is no second character, […]
7877
- index == 0 &&
7878
- length == 1 &&
7879
- codeUnit == 0x002D
7880
- ) {
7884
+ if (
7885
+ // If the character is in the range [\1-\1F] (U+0001 to U+001F) or is
7886
+ // U+007F, […]
7887
+ (codeUnit >= 0x0001 && codeUnit <= 0x001F) || codeUnit == 0x007F ||
7888
+ // If the character is the first character and is in the range [0-9]
7889
+ // (U+0030 to U+0039), […]
7890
+ (index == 0 && codeUnit >= 0x0030 && codeUnit <= 0x0039) ||
7891
+ // If the character is the second character and is in the range [0-9]
7892
+ // (U+0030 to U+0039) and the first character is a `-` (U+002D), […]
7893
+ (
7894
+ index == 1 &&
7895
+ codeUnit >= 0x0030 && codeUnit <= 0x0039 &&
7896
+ firstCodeUnit == 0x002D
7897
+ )
7898
+ ) {
7899
+ // https://drafts.csswg.org/cssom/#escape-a-character-as-code-point
7900
+ result += '\\' + codeUnit.toString(16) + ' ';
7901
+ continue;
7902
+ }
7903
+
7904
+ if (
7905
+ // If the character is the first character and is a `-` (U+002D), and
7906
+ // there is no second character, […]
7907
+ index == 0 &&
7908
+ length == 1 &&
7909
+ codeUnit == 0x002D
7910
+ ) {
7911
+ result += '\\' + string.charAt(index);
7912
+ continue;
7913
+ }
7914
+
7915
+ // If the character is not handled by one of the above rules and is
7916
+ // greater than or equal to U+0080, is `-` (U+002D) or `_` (U+005F), or
7917
+ // is in one of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to
7918
+ // U+005A), or [a-z] (U+0061 to U+007A), […]
7919
+ if (
7920
+ codeUnit >= 0x0080 ||
7921
+ codeUnit == 0x002D ||
7922
+ codeUnit == 0x005F ||
7923
+ codeUnit >= 0x0030 && codeUnit <= 0x0039 ||
7924
+ codeUnit >= 0x0041 && codeUnit <= 0x005A ||
7925
+ codeUnit >= 0x0061 && codeUnit <= 0x007A
7926
+ ) {
7927
+ // the character itself
7928
+ result += string.charAt(index);
7929
+ continue;
7930
+ }
7931
+
7932
+ // Otherwise, the escaped character.
7933
+ // https://drafts.csswg.org/cssom/#escape-a-character
7881
7934
  result += '\\' + string.charAt(index);
7882
- continue;
7883
- }
7884
7935
 
7885
- // If the character is not handled by one of the above rules and is
7886
- // greater than or equal to U+0080, is `-` (U+002D) or `_` (U+005F), or
7887
- // is in one of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to
7888
- // U+005A), or [a-z] (U+0061 to U+007A), […]
7889
- if (
7890
- codeUnit >= 0x0080 ||
7891
- codeUnit == 0x002D ||
7892
- codeUnit == 0x005F ||
7893
- codeUnit >= 0x0030 && codeUnit <= 0x0039 ||
7894
- codeUnit >= 0x0041 && codeUnit <= 0x005A ||
7895
- codeUnit >= 0x0061 && codeUnit <= 0x007A
7896
- ) {
7897
- // the character itself
7898
- result += string.charAt(index);
7899
- continue;
7900
7936
  }
7937
+ return result;
7938
+ };
7901
7939
 
7902
- // Otherwise, the escaped character.
7903
- // https://drafts.csswg.org/cssom/#escape-a-character
7904
- result += '\\' + string.charAt(index);
7905
-
7940
+ if (!root.CSS) {
7941
+ root.CSS = {};
7906
7942
  }
7907
- return result;
7908
- };
7909
-
7910
- if (!root.CSS) {
7911
- root.CSS = {};
7912
- }
7913
7943
 
7914
- root.CSS.escape = cssEscape;
7915
- return cssEscape;
7944
+ root.CSS.escape = cssEscape;
7945
+ return cssEscape;
7916
7946
 
7917
- }));
7918
- }(css_escape));
7947
+ }));
7948
+ } (css_escape));
7919
7949
 
7920
7950
  var HTML_ESCAPE_MAP = {
7921
7951
  '&': '&amp;',
@@ -8395,7 +8425,7 @@
8395
8425
 
8396
8426
  // dataAssociations are children of the subprocess but rendered on process level
8397
8427
  // cf. https://github.com/bpmn-io/bpmn-js/issues/1619
8398
- if (isAny(bo, ['bpmn:DataInputAssociation', 'bpmn:DataOutputAssociation'])) {
8428
+ if (isAny(bo, [ 'bpmn:DataInputAssociation', 'bpmn:DataOutputAssociation' ])) {
8399
8429
  return false;
8400
8430
  }
8401
8431
 
@@ -8443,7 +8473,7 @@
8443
8473
  }, true);
8444
8474
 
8445
8475
 
8446
- this.executed(['shape.create', 'shape.move', 'shape.delete'], LOW_PRIORITY$1,
8476
+ this.executed([ 'shape.create', 'shape.move', 'shape.delete' ], LOW_PRIORITY$1,
8447
8477
  function(context) {
8448
8478
  var oldParent = context.oldParent,
8449
8479
  newParent = context.newParent || context.parent,
@@ -8460,7 +8490,7 @@
8460
8490
  }, true);
8461
8491
 
8462
8492
 
8463
- this.reverted(['shape.create', 'shape.move', 'shape.delete'], LOW_PRIORITY$1,
8493
+ this.reverted([ 'shape.create', 'shape.move', 'shape.delete' ], LOW_PRIORITY$1,
8464
8494
  function(context) {
8465
8495
  var oldParent = context.oldParent,
8466
8496
  newParent = context.newParent || context.parent,
@@ -8579,7 +8609,7 @@
8579
8609
 
8580
8610
  var DrilldownModdule = {
8581
8611
  __depends__: [ OverlaysModule, ChangeSupportModule, RootElementsModule ],
8582
- __init__: [ 'drilldownBreadcrumbs', 'drilldownOverlayBehavior', 'drilldownCentering', 'subprocessCompatibility'],
8612
+ __init__: [ 'drilldownBreadcrumbs', 'drilldownOverlayBehavior', 'drilldownCentering', 'subprocessCompatibility' ],
8583
8613
  drilldownBreadcrumbs: [ 'type', DrilldownBreadcrumbs ],
8584
8614
  drilldownCentering: [ 'type', DrilldownCentering ],
8585
8615
  drilldownOverlayBehavior: [ 'type', DrilldownOverlayBehavior ],
@@ -8907,20 +8937,11 @@
8907
8937
  return function() {
8908
8938
  initializers.forEach(function(initializer) {
8909
8939
 
8910
- try {
8911
-
8912
- // eagerly resolve component (fn or string)
8913
- if (typeof initializer === 'string') {
8914
- injector.get(initializer);
8915
- } else {
8916
- injector.invoke(initializer);
8917
- }
8918
- } catch (error) {
8919
- if (typeof AggregateError !== 'undefined') {
8920
- throw new AggregateError([ error ], 'Failed to initialize!');
8921
- }
8922
-
8923
- throw new Error('Failed to initialize! ' + error.message);
8940
+ // eagerly resolve component (fn or string)
8941
+ if (typeof initializer === 'string') {
8942
+ injector.get(initializer);
8943
+ } else {
8944
+ injector.invoke(initializer);
8924
8945
  }
8925
8946
  });
8926
8947
  };
@@ -11282,11 +11303,13 @@
11282
11303
 
11283
11304
  var refs = Refs$1;
11284
11305
 
11285
- objectRefs.exports = refs;
11306
+ (function (module) {
11307
+ module.exports = refs;
11286
11308
 
11287
- objectRefs.exports.Collection = collection;
11309
+ module.exports.Collection = collection;
11310
+ } (objectRefs));
11288
11311
 
11289
- var Refs = objectRefs.exports;
11312
+ var Refs = /*@__PURE__*/getDefaultExportFromCjs(objectRefs.exports);
11290
11313
 
11291
11314
  var parentRefs = new Refs({ name: 'children', enumerable: true, collection: true }, { name: 'parent' }),
11292
11315
  labelRefs = new Refs({ name: 'labels', enumerable: true, collection: true }, { name: 'labelTarget' }),
@@ -13147,6 +13170,20 @@
13147
13170
  * @param {Object} options
13148
13171
  */
13149
13172
  Properties.prototype.define = function(target, name, options) {
13173
+
13174
+ if (!options.writable) {
13175
+
13176
+ var value = options.value;
13177
+
13178
+ // use getters for read-only variables to support ES6 proxies
13179
+ // cf. https://github.com/bpmn-io/internal-docs/issues/386
13180
+ options = assign({}, options, {
13181
+ get: function() { return value; }
13182
+ });
13183
+
13184
+ delete options.value;
13185
+ }
13186
+
13150
13187
  Object.defineProperty(target, name, options);
13151
13188
  };
13152
13189
 
@@ -16069,7 +16106,23 @@
16069
16106
  value = escapeAttr(value);
16070
16107
  }
16071
16108
 
16072
- attrs.push({ name: name, value: value });
16109
+ // de-duplicate attributes
16110
+ // https://github.com/bpmn-io/moddle-xml/issues/66
16111
+ var idx = findIndex(attrs, function(element) {
16112
+ return (
16113
+ element.name.localName === name.localName &&
16114
+ element.name.uri === name.uri &&
16115
+ element.name.prefix === name.prefix
16116
+ );
16117
+ });
16118
+
16119
+ var attr = { name: name, value: value };
16120
+
16121
+ if (idx !== -1) {
16122
+ attrs.splice(idx, 1, attr);
16123
+ } else {
16124
+ attrs.push(attr);
16125
+ }
16073
16126
  };
16074
16127
 
16075
16128
  ElementSerializer.prototype.serializeAttributes = function(writer) {
@@ -16329,12 +16382,12 @@
16329
16382
  });
16330
16383
  };
16331
16384
 
16332
- var name = "BPMN20";
16333
- var uri = "http://www.omg.org/spec/BPMN/20100524/MODEL";
16334
- var prefix = "bpmn";
16335
- var associations = [
16385
+ var name$5 = "BPMN20";
16386
+ var uri$5 = "http://www.omg.org/spec/BPMN/20100524/MODEL";
16387
+ var prefix$5 = "bpmn";
16388
+ var associations$5 = [
16336
16389
  ];
16337
- var types = [
16390
+ var types$5 = [
16338
16391
  {
16339
16392
  name: "Interface",
16340
16393
  superClass: [
@@ -19152,7 +19205,7 @@
19152
19205
  ]
19153
19206
  }
19154
19207
  ];
19155
- var enumerations = [
19208
+ var enumerations$3 = [
19156
19209
  {
19157
19210
  name: "ProcessType",
19158
19211
  literalValues: [
@@ -19283,24 +19336,24 @@
19283
19336
  ]
19284
19337
  }
19285
19338
  ];
19286
- var xml = {
19339
+ var xml$1 = {
19287
19340
  tagAlias: "lowerCase",
19288
19341
  typePrefix: "t"
19289
19342
  };
19290
19343
  var BpmnPackage = {
19291
- name: name,
19292
- uri: uri,
19293
- prefix: prefix,
19294
- associations: associations,
19295
- types: types,
19296
- enumerations: enumerations,
19297
- xml: xml
19344
+ name: name$5,
19345
+ uri: uri$5,
19346
+ prefix: prefix$5,
19347
+ associations: associations$5,
19348
+ types: types$5,
19349
+ enumerations: enumerations$3,
19350
+ xml: xml$1
19298
19351
  };
19299
19352
 
19300
- var name$1 = "BPMNDI";
19301
- var uri$1 = "http://www.omg.org/spec/BPMN/20100524/DI";
19302
- var prefix$1 = "bpmndi";
19303
- var types$1 = [
19353
+ var name$4 = "BPMNDI";
19354
+ var uri$4 = "http://www.omg.org/spec/BPMN/20100524/DI";
19355
+ var prefix$4 = "bpmndi";
19356
+ var types$4 = [
19304
19357
  {
19305
19358
  name: "BPMNDiagram",
19306
19359
  properties: [
@@ -19451,7 +19504,7 @@
19451
19504
  ]
19452
19505
  }
19453
19506
  ];
19454
- var enumerations$1 = [
19507
+ var enumerations$2 = [
19455
19508
  {
19456
19509
  name: "ParticipantBandKind",
19457
19510
  literalValues: [
@@ -19487,21 +19540,21 @@
19487
19540
  ]
19488
19541
  }
19489
19542
  ];
19490
- var associations$1 = [
19543
+ var associations$4 = [
19491
19544
  ];
19492
19545
  var BpmnDiPackage = {
19493
- name: name$1,
19494
- uri: uri$1,
19495
- prefix: prefix$1,
19496
- types: types$1,
19497
- enumerations: enumerations$1,
19498
- associations: associations$1
19546
+ name: name$4,
19547
+ uri: uri$4,
19548
+ prefix: prefix$4,
19549
+ types: types$4,
19550
+ enumerations: enumerations$2,
19551
+ associations: associations$4
19499
19552
  };
19500
19553
 
19501
- var name$2 = "DC";
19502
- var uri$2 = "http://www.omg.org/spec/DD/20100524/DC";
19503
- var prefix$2 = "dc";
19504
- var types$2 = [
19554
+ var name$3 = "DC";
19555
+ var uri$3 = "http://www.omg.org/spec/DD/20100524/DC";
19556
+ var prefix$3 = "dc";
19557
+ var types$3 = [
19505
19558
  {
19506
19559
  name: "Boolean"
19507
19560
  },
@@ -19594,20 +19647,20 @@
19594
19647
  ]
19595
19648
  }
19596
19649
  ];
19597
- var associations$2 = [
19650
+ var associations$3 = [
19598
19651
  ];
19599
19652
  var DcPackage = {
19600
- name: name$2,
19601
- uri: uri$2,
19602
- prefix: prefix$2,
19603
- types: types$2,
19604
- associations: associations$2
19653
+ name: name$3,
19654
+ uri: uri$3,
19655
+ prefix: prefix$3,
19656
+ types: types$3,
19657
+ associations: associations$3
19605
19658
  };
19606
19659
 
19607
- var name$3 = "DI";
19608
- var uri$3 = "http://www.omg.org/spec/DD/20100524/DI";
19609
- var prefix$3 = "di";
19610
- var types$3 = [
19660
+ var name$2 = "DI";
19661
+ var uri$2 = "http://www.omg.org/spec/DD/20100524/DI";
19662
+ var prefix$2 = "di";
19663
+ var types$2 = [
19611
19664
  {
19612
19665
  name: "DiagramElement",
19613
19666
  isAbstract: true,
@@ -19836,24 +19889,24 @@
19836
19889
  ]
19837
19890
  }
19838
19891
  ];
19839
- var associations$3 = [
19892
+ var associations$2 = [
19840
19893
  ];
19841
- var xml$1 = {
19894
+ var xml = {
19842
19895
  tagAlias: "lowerCase"
19843
19896
  };
19844
19897
  var DiPackage = {
19845
- name: name$3,
19846
- uri: uri$3,
19847
- prefix: prefix$3,
19848
- types: types$3,
19849
- associations: associations$3,
19850
- xml: xml$1
19898
+ name: name$2,
19899
+ uri: uri$2,
19900
+ prefix: prefix$2,
19901
+ types: types$2,
19902
+ associations: associations$2,
19903
+ xml: xml
19851
19904
  };
19852
19905
 
19853
- var name$4 = "bpmn.io colors for BPMN";
19854
- var uri$4 = "http://bpmn.io/schema/bpmn/biocolor/1.0";
19855
- var prefix$4 = "bioc";
19856
- var types$4 = [
19906
+ var name$1 = "bpmn.io colors for BPMN";
19907
+ var uri$1 = "http://bpmn.io/schema/bpmn/biocolor/1.0";
19908
+ var prefix$1 = "bioc";
19909
+ var types$1 = [
19857
19910
  {
19858
19911
  name: "ColoredShape",
19859
19912
  "extends": [
@@ -19891,23 +19944,23 @@
19891
19944
  ]
19892
19945
  }
19893
19946
  ];
19894
- var enumerations$2 = [
19947
+ var enumerations$1 = [
19895
19948
  ];
19896
- var associations$4 = [
19949
+ var associations$1 = [
19897
19950
  ];
19898
19951
  var BiocPackage = {
19899
- name: name$4,
19900
- uri: uri$4,
19901
- prefix: prefix$4,
19902
- types: types$4,
19903
- enumerations: enumerations$2,
19904
- associations: associations$4
19952
+ name: name$1,
19953
+ uri: uri$1,
19954
+ prefix: prefix$1,
19955
+ types: types$1,
19956
+ enumerations: enumerations$1,
19957
+ associations: associations$1
19905
19958
  };
19906
19959
 
19907
- var name$5 = "BPMN in Color";
19908
- var uri$5 = "http://www.omg.org/spec/BPMN/non-normative/color/1.0";
19909
- var prefix$5 = "color";
19910
- var types$5 = [
19960
+ var name = "BPMN in Color";
19961
+ var uri = "http://www.omg.org/spec/BPMN/non-normative/color/1.0";
19962
+ var prefix = "color";
19963
+ var types = [
19911
19964
  {
19912
19965
  name: "ColoredLabel",
19913
19966
  "extends": [
@@ -19953,17 +20006,17 @@
19953
20006
  ]
19954
20007
  }
19955
20008
  ];
19956
- var enumerations$3 = [
20009
+ var enumerations = [
19957
20010
  ];
19958
- var associations$5 = [
20011
+ var associations = [
19959
20012
  ];
19960
20013
  var BpmnInColorPackage = {
19961
- name: name$5,
19962
- uri: uri$5,
19963
- prefix: prefix$5,
19964
- types: types$5,
19965
- enumerations: enumerations$3,
19966
- associations: associations$5
20014
+ name: name,
20015
+ uri: uri,
20016
+ prefix: prefix,
20017
+ types: types,
20018
+ enumerations: enumerations,
20019
+ associations: associations
19967
20020
  };
19968
20021
 
19969
20022
  var packages = {
@@ -20043,6 +20096,7 @@
20043
20096
  // bpmnElement can have multiple independent DIs
20044
20097
  if (!has$1(businessObject, 'di')) {
20045
20098
  Object.defineProperty(businessObject, 'di', {
20099
+ enumerable: false,
20046
20100
  get: function() {
20047
20101
  throw new Error(DI_ERROR_MESSAGE);
20048
20102
  }
@@ -21612,6 +21666,16 @@
21612
21666
  // default moddle extensions the viewer is composed of
21613
21667
  Viewer.prototype._moddleExtensions = {};
21614
21668
 
21669
+ var KEYCODE_C = 67;
21670
+ var KEYCODE_V = 86;
21671
+ var KEYCODE_Y = 89;
21672
+ var KEYCODE_Z = 90;
21673
+
21674
+ var KEYS_COPY = [ 'c', 'C', KEYCODE_C ];
21675
+ var KEYS_PASTE = [ 'v', 'V', KEYCODE_V ];
21676
+ var KEYS_REDO = [ 'y', 'Y', KEYCODE_Y ];
21677
+ var KEYS_UNDO = [ 'z', 'Z', KEYCODE_Z ];
21678
+
21615
21679
  /**
21616
21680
  * Returns true if event was triggered with any modifier
21617
21681
  * @param {KeyboardEvent} event
@@ -21651,6 +21715,26 @@
21651
21715
  */
21652
21716
  function isShift(event) {
21653
21717
  return event.shiftKey;
21718
+ }
21719
+
21720
+ function isCopy(event) {
21721
+ return isCmd(event) && isKey(KEYS_COPY, event);
21722
+ }
21723
+
21724
+ function isPaste(event) {
21725
+ return isCmd(event) && isKey(KEYS_PASTE, event);
21726
+ }
21727
+
21728
+ function isUndo(event) {
21729
+ return isCmd(event) && !isShift(event) && isKey(KEYS_UNDO, event);
21730
+ }
21731
+
21732
+ function isRedo(event) {
21733
+ return isCmd(event) && (
21734
+ isKey(KEYS_REDO, event) || (
21735
+ isKey(KEYS_UNDO, event) && isShift(event)
21736
+ )
21737
+ );
21654
21738
  }
21655
21739
 
21656
21740
  var KEYDOWN_EVENT = 'keyboard.keydown',
@@ -21843,16 +21927,6 @@
21843
21927
 
21844
21928
  var LOW_PRIORITY = 500;
21845
21929
 
21846
- var KEYCODE_C = 67;
21847
- var KEYCODE_V = 86;
21848
- var KEYCODE_Y = 89;
21849
- var KEYCODE_Z = 90;
21850
-
21851
- var KEYS_COPY = [ 'c', 'C', KEYCODE_C ];
21852
- var KEYS_PASTE = [ 'v', 'V', KEYCODE_V ];
21853
- var KEYS_REDO = [ 'y', 'Y', KEYCODE_Y ];
21854
- var KEYS_UNDO = [ 'z', 'Z', KEYCODE_Z ];
21855
-
21856
21930
 
21857
21931
  /**
21858
21932
  * Adds default keyboard bindings.
@@ -21910,7 +21984,7 @@
21910
21984
 
21911
21985
  var event = context.keyEvent;
21912
21986
 
21913
- if (isCmd(event) && !isShift(event) && isKey(KEYS_UNDO, event)) {
21987
+ if (isUndo(event)) {
21914
21988
  editorActions.trigger('undo');
21915
21989
 
21916
21990
  return true;
@@ -21924,7 +21998,7 @@
21924
21998
 
21925
21999
  var event = context.keyEvent;
21926
22000
 
21927
- if (isCmd(event) && (isKey(KEYS_REDO, event) || (isKey(KEYS_UNDO, event) && isShift(event)))) {
22001
+ if (isRedo(event)) {
21928
22002
  editorActions.trigger('redo');
21929
22003
 
21930
22004
  return true;
@@ -21937,7 +22011,7 @@
21937
22011
 
21938
22012
  var event = context.keyEvent;
21939
22013
 
21940
- if (isCmd(event) && isKey(KEYS_COPY, event)) {
22014
+ if (isCopy(event)) {
21941
22015
  editorActions.trigger('copy');
21942
22016
 
21943
22017
  return true;
@@ -21950,7 +22024,7 @@
21950
22024
 
21951
22025
  var event = context.keyEvent;
21952
22026
 
21953
- if (isCmd(event) && isKey(KEYS_PASTE, event)) {
22027
+ if (isPaste(event)) {
21954
22028
  editorActions.trigger('paste');
21955
22029
 
21956
22030
  return true;
@@ -22588,4 +22662,4 @@
22588
22662
 
22589
22663
  return NavigatedViewer;
22590
22664
 
22591
- })));
22665
+ }));