bpmn-js 17.4.0 → 17.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/bpmn-modeler.development.js +167 -154
  2. package/dist/bpmn-modeler.production.min.js +7 -7
  3. package/dist/bpmn-navigated-viewer.development.js +108 -85
  4. package/dist/bpmn-navigated-viewer.production.min.js +4 -4
  5. package/dist/bpmn-viewer.development.js +104 -85
  6. package/dist/bpmn-viewer.production.min.js +4 -4
  7. package/lib/BaseModeler.d.ts +5 -2
  8. package/lib/BaseModeler.js +5 -1
  9. package/lib/BaseViewer.d.ts +81 -9
  10. package/lib/BaseViewer.js +47 -3
  11. package/lib/Modeler.d.ts +4 -2
  12. package/lib/Modeler.js +4 -1
  13. package/lib/NavigatedViewer.d.ts +4 -1
  14. package/lib/NavigatedViewer.js +4 -0
  15. package/lib/Viewer.d.ts +5 -2
  16. package/lib/Viewer.js +5 -1
  17. package/lib/features/context-pad/ContextPadProvider.js +4 -5
  18. package/lib/features/label-editing/LabelEditingProvider.js +21 -1
  19. package/lib/features/modeling/BpmnUpdater.d.ts +1 -3
  20. package/lib/features/modeling/BpmnUpdater.js +4 -17
  21. package/lib/features/modeling/ElementFactory.d.ts +1 -3
  22. package/lib/features/modeling/ElementFactory.js +5 -10
  23. package/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.d.ts +1 -3
  24. package/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.js +4 -7
  25. package/lib/features/modeling/cmd/SetColorHandler.js +1 -1
  26. package/lib/features/modeling/cmd/SplitLaneHandler.d.ts +1 -3
  27. package/lib/features/modeling/cmd/SplitLaneHandler.js +4 -9
  28. package/lib/features/modeling/cmd/UpdatePropertiesHandler.d.ts +1 -3
  29. package/lib/features/modeling/cmd/UpdatePropertiesHandler.js +3 -8
  30. package/lib/features/ordering/BpmnOrderingProvider.d.ts +1 -3
  31. package/lib/features/ordering/BpmnOrderingProvider.js +4 -6
  32. package/lib/features/ordering/index.d.ts +0 -1
  33. package/lib/features/ordering/index.js +0 -5
  34. package/lib/import/BpmnImporter.d.ts +1 -3
  35. package/lib/import/BpmnImporter.js +17 -29
  36. package/lib/import/BpmnTreeWalker.d.ts +1 -3
  37. package/lib/import/BpmnTreeWalker.js +32 -47
  38. package/lib/import/Importer.js +2 -4
  39. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * bpmn-js - bpmn-modeler v17.4.0
2
+ * bpmn-js - bpmn-modeler v17.6.0
3
3
  *
4
4
  * Copyright (c) 2014-present, camunda Services GmbH
5
5
  *
@@ -8,7 +8,7 @@
8
8
  *
9
9
  * Source Code: https://github.com/bpmn-io/bpmn-js
10
10
  *
11
- * Date: 2024-04-26
11
+ * Date: 2024-04-30
12
12
  */
13
13
  (function (global, factory) {
14
14
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
@@ -16254,8 +16254,6 @@
16254
16254
  }
16255
16255
 
16256
16256
  /**
16257
- * @typedef {import('diagram-js/lib/i18n/translate/translate').default} Translate
16258
- *
16259
16257
  * @typedef {import('../model/Types').ModdleElement} ModdleElement
16260
16258
  */
16261
16259
 
@@ -16288,9 +16286,8 @@
16288
16286
 
16289
16287
  /**
16290
16288
  * @param {Record<'element' | 'root' | 'error', Function>} handler
16291
- * @param {Translate} translate
16292
16289
  */
16293
- function BpmnTreeWalker(handler, translate) {
16290
+ function BpmnTreeWalker(handler) {
16294
16291
 
16295
16292
  // list of containers already walked
16296
16293
  var handledElements = {};
@@ -16324,7 +16321,7 @@
16324
16321
  // avoid multiple rendering of elements
16325
16322
  if (gfx) {
16326
16323
  throw new Error(
16327
- translate('already rendered {element}', { element: elementToString(element) })
16324
+ `already rendered ${ elementToString(element) }`
16328
16325
  );
16329
16326
  }
16330
16327
 
@@ -16344,11 +16341,10 @@
16344
16341
  handled(element);
16345
16342
 
16346
16343
  return gfx;
16347
- } catch (e) {
16348
- logError(e.message, { element: element, error: e });
16344
+ } catch (error) {
16345
+ logError(error.message, { element, error });
16349
16346
 
16350
- console.error(translate('failed to import {element}', { element: elementToString(element) }));
16351
- console.error(e);
16347
+ console.error(`failed to import ${ elementToString(element) }`, error);
16352
16348
  }
16353
16349
  }
16354
16350
 
@@ -16364,9 +16360,7 @@
16364
16360
  if (bpmnElement) {
16365
16361
  if (diMap[bpmnElement.id]) {
16366
16362
  logError(
16367
- translate('multiple DI elements defined for {element}', {
16368
- element: elementToString(bpmnElement)
16369
- }),
16363
+ `multiple DI elements defined for ${ elementToString(bpmnElement) }`,
16370
16364
  { element: bpmnElement }
16371
16365
  );
16372
16366
  } else {
@@ -16376,9 +16370,7 @@
16376
16370
  }
16377
16371
  } else {
16378
16372
  logError(
16379
- translate('no bpmnElement referenced in {element}', {
16380
- element: elementToString(di)
16381
- }),
16373
+ `no bpmnElement referenced in ${ elementToString(di) }`,
16382
16374
  { element: di }
16383
16375
  );
16384
16376
  }
@@ -16416,7 +16408,7 @@
16416
16408
  var diagrams = definitions.diagrams;
16417
16409
 
16418
16410
  if (diagram && diagrams.indexOf(diagram) === -1) {
16419
- throw new Error(translate('diagram not part of bpmn:Definitions'));
16411
+ throw new Error('diagram not part of <bpmn:Definitions />');
16420
16412
  }
16421
16413
 
16422
16414
  if (!diagram && diagrams && diagrams.length) {
@@ -16425,7 +16417,7 @@
16425
16417
 
16426
16418
  // no diagram -> nothing to import
16427
16419
  if (!diagram) {
16428
- throw new Error(translate('no diagram to display'));
16420
+ throw new Error('no diagram to display');
16429
16421
  }
16430
16422
 
16431
16423
  // load DI from selected diagram only
@@ -16436,10 +16428,9 @@
16436
16428
  var plane = diagram.plane;
16437
16429
 
16438
16430
  if (!plane) {
16439
- throw new Error(translate(
16440
- 'no plane for {element}',
16441
- { element: elementToString(diagram) }
16442
- ));
16431
+ throw new Error(
16432
+ `no plane for ${ elementToString(diagram) }`
16433
+ );
16443
16434
  }
16444
16435
 
16445
16436
  var rootElement = plane.bpmnElement;
@@ -16450,14 +16441,11 @@
16450
16441
  rootElement = findDisplayCandidate(definitions);
16451
16442
 
16452
16443
  if (!rootElement) {
16453
- throw new Error(translate('no process or collaboration to display'));
16444
+ throw new Error('no process or collaboration to display');
16454
16445
  } else {
16455
16446
 
16456
16447
  logError(
16457
- translate('correcting missing bpmnElement on {plane} to {rootElement}', {
16458
- plane: elementToString(plane),
16459
- rootElement: elementToString(rootElement)
16460
- })
16448
+ `correcting missing bpmnElement on ${ elementToString(plane) } to ${ elementToString(rootElement) }`
16461
16449
  );
16462
16450
 
16463
16451
  // correct DI on the fly
@@ -16478,10 +16466,7 @@
16478
16466
  handleUnhandledProcesses(definitions.rootElements, ctx);
16479
16467
  } else {
16480
16468
  throw new Error(
16481
- translate('unsupported bpmnElement for {plane}: {rootElement}', {
16482
- plane: elementToString(plane),
16483
- rootElement: elementToString(rootElement)
16484
- })
16469
+ `unsupported bpmnElement for ${ elementToString(plane) }: ${ elementToString(rootElement) }`
16485
16470
  );
16486
16471
  }
16487
16472
 
@@ -16643,28 +16628,28 @@
16643
16628
  }
16644
16629
 
16645
16630
  function handleFlowElements(flowElements, context) {
16646
- forEach$1(flowElements, function(e) {
16647
- if (is$2(e, 'bpmn:SequenceFlow')) {
16631
+ forEach$1(flowElements, function(flowElement) {
16632
+ if (is$2(flowElement, 'bpmn:SequenceFlow')) {
16648
16633
  deferred.push(function() {
16649
- handleSequenceFlow(e, context);
16634
+ handleSequenceFlow(flowElement, context);
16650
16635
  });
16651
- } else if (is$2(e, 'bpmn:BoundaryEvent')) {
16636
+ } else if (is$2(flowElement, 'bpmn:BoundaryEvent')) {
16652
16637
  deferred.unshift(function() {
16653
- handleFlowNode(e, context);
16638
+ handleFlowNode(flowElement, context);
16654
16639
  });
16655
- } else if (is$2(e, 'bpmn:FlowNode')) {
16656
- handleFlowNode(e, context);
16657
- } else if (is$2(e, 'bpmn:DataObject')) ; else if (is$2(e, 'bpmn:DataStoreReference')) {
16658
- handleDataElement(e, context);
16659
- } else if (is$2(e, 'bpmn:DataObjectReference')) {
16660
- handleDataElement(e, context);
16640
+ } else if (is$2(flowElement, 'bpmn:FlowNode')) {
16641
+ handleFlowNode(flowElement, context);
16642
+ } else if (is$2(flowElement, 'bpmn:DataObject')) ; else if (is$2(flowElement, 'bpmn:DataStoreReference')) {
16643
+ handleDataElement(flowElement, context);
16644
+ } else if (is$2(flowElement, 'bpmn:DataObjectReference')) {
16645
+ handleDataElement(flowElement, context);
16661
16646
  } else {
16662
16647
  logError(
16663
- translate('unrecognized flowElement {element} in context {context}', {
16664
- element: elementToString(e),
16665
- context: (context ? elementToString(context.businessObject) : 'null')
16666
- }),
16667
- { element: e, context: context }
16648
+ `unrecognized flowElement ${ elementToString(flowElement) } in context ${ elementToString(context && context.businessObject) }`,
16649
+ {
16650
+ element: flowElement,
16651
+ context
16652
+ }
16668
16653
  );
16669
16654
  }
16670
16655
  });
@@ -16787,7 +16772,6 @@
16787
16772
 
16788
16773
  var importer,
16789
16774
  eventBus,
16790
- translate,
16791
16775
  canvas;
16792
16776
 
16793
16777
  var error,
@@ -16817,7 +16801,7 @@
16817
16801
  }
16818
16802
  };
16819
16803
 
16820
- var walker = new BpmnTreeWalker(visitor, translate);
16804
+ var walker = new BpmnTreeWalker(visitor);
16821
16805
 
16822
16806
 
16823
16807
  bpmnDiagram = bpmnDiagram || (definitions.diagrams && definitions.diagrams[0]);
@@ -16825,7 +16809,7 @@
16825
16809
  var diagramsToImport = getDiagramsToImport(definitions, bpmnDiagram);
16826
16810
 
16827
16811
  if (!diagramsToImport) {
16828
- throw new Error(translate('no diagram to display'));
16812
+ throw new Error('no diagram to display');
16829
16813
  }
16830
16814
 
16831
16815
  // traverse BPMN 2.0 document model,
@@ -16848,7 +16832,6 @@
16848
16832
  try {
16849
16833
  importer = diagram.get('bpmnImporter');
16850
16834
  eventBus = diagram.get('eventBus');
16851
- translate = diagram.get('translate');
16852
16835
  canvas = diagram.get('canvas');
16853
16836
 
16854
16837
  eventBus.fire('import.render.start', { definitions: definitions });
@@ -17070,6 +17053,12 @@
17070
17053
  * @see http://bpmn.io/license for more information.
17071
17054
  */
17072
17055
 
17056
+ /**
17057
+ * @template T
17058
+ *
17059
+ * @typedef { import('diagram-js/lib/core/EventBus').default<T> } EventBus
17060
+ */
17061
+
17073
17062
  /**
17074
17063
  * @template T
17075
17064
  *
@@ -17155,12 +17144,22 @@
17155
17144
  * } } SaveSVGDoneEvent
17156
17145
  */
17157
17146
 
17147
+ /**
17148
+ * @template Type
17149
+ *
17150
+ * @typedef { Type extends { eventBus: EventBus<infer X> } ? X : never } EventMap
17151
+ */
17152
+
17158
17153
  /**
17159
17154
  * A base viewer for BPMN 2.0 diagrams.
17160
17155
  *
17161
- * Have a look at {@link Viewer}, {@link NavigatedViewer} or {@link Modeler} for
17156
+ * Have a look at {@link bpmn-js/lib/Viewer}, {@link bpmn-js/lib/NavigatedViewer} or {@link bpmn-js/lib/Modeler} for
17162
17157
  * bundles that include actual features.
17163
17158
  *
17159
+ * @template [ServiceMap=null]
17160
+ *
17161
+ * @extends Diagram<ServiceMap>
17162
+ *
17164
17163
  * @param {BaseViewerOptions} [options] The options to configure the viewer.
17165
17164
  */
17166
17165
  function BaseViewer(options) {
@@ -17581,9 +17580,18 @@
17581
17580
  };
17582
17581
 
17583
17582
  /**
17584
- * Register an event listener.
17583
+ * @overlord
17584
+ *
17585
+ * Register an event listener for events with the given name.
17585
17586
  *
17586
- * Remove an event listener via {@link BaseViewer#off}.
17587
+ * The callback will be invoked with `event, ...additionalArguments`
17588
+ * that have been passed to {@link EventBus#fire}.
17589
+ *
17590
+ * Returning false from a listener will prevent the events default action
17591
+ * (if any is specified). To stop an event from being processed further in
17592
+ * other listeners execute {@link Event#stopPropagation}.
17593
+ *
17594
+ * Returning anything but `undefined` from a listener will stop the listener propagation.
17587
17595
  *
17588
17596
  * @template T
17589
17597
  *
@@ -17592,6 +17600,25 @@
17592
17600
  * @param {EventBusEventCallback<T>} callback The callback.
17593
17601
  * @param {any} [that] Value of `this` the callback will be called with.
17594
17602
  */
17603
+ /**
17604
+ * Register an event listener for events with the given name.
17605
+ *
17606
+ * The callback will be invoked with `event, ...additionalArguments`
17607
+ * that have been passed to {@link EventBus#fire}.
17608
+ *
17609
+ * Returning false from a listener will prevent the events default action
17610
+ * (if any is specified). To stop an event from being processed further in
17611
+ * other listeners execute {@link Event#stopPropagation}.
17612
+ *
17613
+ * Returning anything but `undefined` from a listener will stop the listener propagation.
17614
+ *
17615
+ * @template {keyof EventMap<ServiceMap>} EventName
17616
+ *
17617
+ * @param {EventName} events to subscribe to
17618
+ * @param {number} [priority=1000] listen priority
17619
+ * @param {EventBusEventCallback<(EventMap<ServiceMap>)[EventName]>} callback
17620
+ * @param {any} [that] callback context
17621
+ */
17595
17622
  BaseViewer.prototype.on = function(events, priority, callback, that) {
17596
17623
  return this.get('eventBus').on(events, priority, callback, that);
17597
17624
  };
@@ -17848,7 +17875,11 @@
17848
17875
  /**
17849
17876
  * A base modeler for BPMN 2.0 diagrams.
17850
17877
  *
17851
- * See {@link Modeler} for a fully-featured modeler.
17878
+ * See {@link bpmn-js/lib/Modeler} for a fully-featured modeler.
17879
+ *
17880
+ * @template [ServiceMap=null]
17881
+ *
17882
+ * @extends BaseViewer<ServiceMap>
17852
17883
  *
17853
17884
  * @param {BaseViewerOptions} [options] The options to configure the modeler.
17854
17885
  */
@@ -21875,7 +21906,6 @@
21875
21906
  * @typedef {import('diagram-js/lib/core/Canvas').default} Canvas
21876
21907
  * @typedef {import('diagram-js/lib/core/ElementRegistry').default} ElementRegistry
21877
21908
  * @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
21878
- * @typedef {import('diagram-js/lib/i18n/translate/translate').default} Translate
21879
21909
  *
21880
21910
  * @typedef {import('../features/modeling/ElementFactory').default} ElementFactory
21881
21911
  * @typedef {import('../draw/TextRenderer').default} TextRenderer
@@ -21917,12 +21947,10 @@
21917
21947
  });
21918
21948
  }
21919
21949
 
21920
- function notYetDrawn(translate, semantic, refSemantic, property) {
21921
- return new Error(translate('element {element} referenced by {referenced}#{property} not yet drawn', {
21922
- element: elementToString(refSemantic),
21923
- referenced: elementToString(semantic),
21924
- property: property
21925
- }));
21950
+ function notYetDrawn(semantic, refSemantic, property) {
21951
+ return new Error(
21952
+ `element ${ elementToString(refSemantic) } referenced by ${ elementToString(semantic) }#${ property } not yet drawn`
21953
+ );
21926
21954
  }
21927
21955
 
21928
21956
 
@@ -21933,18 +21961,16 @@
21933
21961
  * @param {Canvas} canvas
21934
21962
  * @param {ElementFactory} elementFactory
21935
21963
  * @param {ElementRegistry} elementRegistry
21936
- * @param {Function} translate
21937
21964
  * @param {TextRenderer} textRenderer
21938
21965
  */
21939
21966
  function BpmnImporter(
21940
21967
  eventBus, canvas, elementFactory,
21941
- elementRegistry, translate, textRenderer) {
21968
+ elementRegistry, textRenderer) {
21942
21969
 
21943
21970
  this._eventBus = eventBus;
21944
21971
  this._canvas = canvas;
21945
21972
  this._elementFactory = elementFactory;
21946
21973
  this._elementRegistry = elementRegistry;
21947
- this._translate = translate;
21948
21974
  this._textRenderer = textRenderer;
21949
21975
  }
21950
21976
 
@@ -21953,7 +21979,6 @@
21953
21979
  'canvas',
21954
21980
  'elementFactory',
21955
21981
  'elementRegistry',
21956
- 'translate',
21957
21982
  'textRenderer'
21958
21983
  ];
21959
21984
 
@@ -21970,7 +21995,6 @@
21970
21995
  */
21971
21996
  BpmnImporter.prototype.add = function(semantic, di, parentElement) {
21972
21997
  var element,
21973
- translate = this._translate,
21974
21998
  hidden;
21975
21999
 
21976
22000
  var parentIndex;
@@ -22056,10 +22080,9 @@
22056
22080
 
22057
22081
  this._canvas.addConnection(element, parentElement, parentIndex);
22058
22082
  } else {
22059
- throw new Error(translate('unknown di {di} for element {semantic}', {
22060
- di: elementToString(di),
22061
- semantic: elementToString(semantic)
22062
- }));
22083
+ throw new Error(
22084
+ `unknown di ${ elementToString(di) } for element ${ elementToString(semantic) }`
22085
+ );
22063
22086
  }
22064
22087
 
22065
22088
  // (optional) LABEL
@@ -22067,7 +22090,6 @@
22067
22090
  this.addLabel(semantic, di, element);
22068
22091
  }
22069
22092
 
22070
-
22071
22093
  this._eventBus.fire('bpmnElement.added', { element: element });
22072
22094
 
22073
22095
  return element;
@@ -22081,20 +22103,19 @@
22081
22103
  * @param {Shape} boundaryElement
22082
22104
  */
22083
22105
  BpmnImporter.prototype._attachBoundary = function(boundarySemantic, boundaryElement) {
22084
- var translate = this._translate;
22085
22106
  var hostSemantic = boundarySemantic.attachedToRef;
22086
22107
 
22087
22108
  if (!hostSemantic) {
22088
- throw new Error(translate('missing {semantic}#attachedToRef', {
22089
- semantic: elementToString(boundarySemantic)
22090
- }));
22109
+ throw new Error(
22110
+ `missing ${ elementToString(boundarySemantic) }#attachedToRef`
22111
+ );
22091
22112
  }
22092
22113
 
22093
22114
  var host = this._elementRegistry.get(hostSemantic.id),
22094
22115
  attachers = host && host.attachers;
22095
22116
 
22096
22117
  if (!host) {
22097
- throw notYetDrawn(translate, boundarySemantic, hostSemantic, 'attachedToRef');
22118
+ throw notYetDrawn(boundarySemantic, hostSemantic, 'attachedToRef');
22098
22119
  }
22099
22120
 
22100
22121
  // wire element.host <> host.attachers
@@ -22160,8 +22181,7 @@
22160
22181
 
22161
22182
  var element,
22162
22183
  refSemantic,
22163
- type = semantic.$type,
22164
- translate = this._translate;
22184
+ type = semantic.$type;
22165
22185
 
22166
22186
  refSemantic = semantic[side + 'Ref'];
22167
22187
 
@@ -22184,12 +22204,11 @@
22184
22204
  }
22185
22205
 
22186
22206
  if (refSemantic) {
22187
- throw notYetDrawn(translate, semantic, refSemantic, side + 'Ref');
22207
+ throw notYetDrawn(semantic, refSemantic, side + 'Ref');
22188
22208
  } else {
22189
- throw new Error(translate('{semantic}#{side} Ref not specified', {
22190
- semantic: elementToString(semantic),
22191
- side: side
22192
- }));
22209
+ throw new Error(
22210
+ `${ elementToString(semantic) }#${ side } Ref not specified`
22211
+ );
22193
22212
  }
22194
22213
  };
22195
22214
 
@@ -25569,7 +25588,7 @@
25569
25588
  /**
25570
25589
  * A viewer for BPMN 2.0 diagrams.
25571
25590
  *
25572
- * Have a look at {@link NavigatedViewer} or {@link Modeler} for bundles that include
25591
+ * Have a look at {@link bpmn-js/lib/NavigatedViewer} or {@link bpmn-js/lib/Modeler} for bundles that include
25573
25592
  * additional features.
25574
25593
  *
25575
25594
  *
@@ -25605,6 +25624,10 @@
25605
25624
  * bpmnViewer.importXML(...);
25606
25625
  * ```
25607
25626
  *
25627
+ * @template [ServiceMap=null]
25628
+ *
25629
+ * @extends BaseViewer<ServiceMap>
25630
+ *
25608
25631
  * @param {BaseViewerOptions} [options] The options to configure the viewer.
25609
25632
  */
25610
25633
  function Viewer(options) {
@@ -26727,6 +26750,10 @@
26727
26750
  /**
26728
26751
  * A viewer with mouse and keyboard navigation features.
26729
26752
  *
26753
+ * @template [ServiceMap=null]
26754
+ *
26755
+ * @extends Viewer<ServiceMap>
26756
+ *
26730
26757
  * @param {BaseViewerOptions} [options]
26731
26758
  */
26732
26759
  function NavigatedViewer(options) {
@@ -40760,7 +40787,6 @@
40760
40787
  /**
40761
40788
  * @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
40762
40789
  * @typedef {import('../Modeling').default} Modeling
40763
- * @typedef {import('diagram-js/lib/i18n/translate/translate').default} Translate
40764
40790
  */
40765
40791
 
40766
40792
  var LOW_PRIORITY$c = 500,
@@ -40772,9 +40798,8 @@
40772
40798
  *
40773
40799
  * @param {EventBus} eventBus
40774
40800
  * @param {Modeling} modeling
40775
- * @param {Translate} translate
40776
40801
  */
40777
- function UpdateFlowNodeRefsBehavior(eventBus, modeling, translate) {
40802
+ function UpdateFlowNodeRefsBehavior(eventBus, modeling) {
40778
40803
 
40779
40804
  CommandInterceptor.call(this, eventBus);
40780
40805
 
@@ -40797,7 +40822,7 @@
40797
40822
 
40798
40823
  function getContext() {
40799
40824
  if (!context) {
40800
- throw new Error(translate('out of bounds release'));
40825
+ throw new Error('out of bounds release');
40801
40826
  }
40802
40827
 
40803
40828
  return context;
@@ -40806,7 +40831,7 @@
40806
40831
  function releaseContext() {
40807
40832
 
40808
40833
  if (!context) {
40809
- throw new Error(translate('out of bounds release'));
40834
+ throw new Error('out of bounds release');
40810
40835
  }
40811
40836
 
40812
40837
  var triggerUpdate = context.leave();
@@ -40878,8 +40903,7 @@
40878
40903
 
40879
40904
  UpdateFlowNodeRefsBehavior.$inject = [
40880
40905
  'eventBus',
40881
- 'modeling' ,
40882
- 'translate'
40906
+ 'modeling'
40883
40907
  ];
40884
40908
 
40885
40909
  e$2(UpdateFlowNodeRefsBehavior, CommandInterceptor);
@@ -42329,7 +42353,6 @@
42329
42353
  /**
42330
42354
  * @typedef {import('diagram-js/lib/core/Canvas').default} Canvas
42331
42355
  * @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
42332
- * @typedef {import('diagram-js/i18n/translate/translate').default} Translate
42333
42356
  */
42334
42357
 
42335
42358
  /**
@@ -42337,9 +42360,8 @@
42337
42360
  *
42338
42361
  * @param {EventBus} eventBus
42339
42362
  * @param {Canvas} canvas
42340
- * @param {Translate} translate
42341
42363
  */
42342
- function BpmnOrderingProvider(eventBus, canvas, translate) {
42364
+ function BpmnOrderingProvider(eventBus, canvas) {
42343
42365
 
42344
42366
  OrderingProvider.call(this, eventBus);
42345
42367
 
@@ -42429,7 +42451,7 @@
42429
42451
  }
42430
42452
 
42431
42453
  if (!order) {
42432
- throw new Error('no order for <' + element.id + '>');
42454
+ throw new Error(`no order for <${ element.id }>`);
42433
42455
  }
42434
42456
 
42435
42457
  return order;
@@ -42449,7 +42471,7 @@
42449
42471
  }
42450
42472
 
42451
42473
  if (!actualParent) {
42452
- throw new Error('no parent for <' + element.id + '> in <' + (newParent && newParent.id) + '>');
42474
+ throw new Error(`no parent for <${ element.id }> in <${ newParent && newParent.id }>`);
42453
42475
  }
42454
42476
 
42455
42477
  return actualParent;
@@ -42503,14 +42525,11 @@
42503
42525
  };
42504
42526
  }
42505
42527
 
42506
- BpmnOrderingProvider.$inject = [ 'eventBus', 'canvas', 'translate' ];
42528
+ BpmnOrderingProvider.$inject = [ 'eventBus', 'canvas' ];
42507
42529
 
42508
42530
  e$2(BpmnOrderingProvider, OrderingProvider);
42509
42531
 
42510
42532
  var OrderingModule = {
42511
- __depends__: [
42512
- TranslateModule
42513
- ],
42514
42533
  __init__: [ 'bpmnOrderingProvider' ],
42515
42534
  bpmnOrderingProvider: [ 'type', BpmnOrderingProvider ]
42516
42535
  };
@@ -47161,7 +47180,6 @@
47161
47180
  * @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
47162
47181
  * @typedef {import('./BpmnFactory').default} BpmnFactory
47163
47182
  * @typedef {import('diagram-js/lib/layout/CroppingConnectionDocking').default} CroppingConnectionDocking
47164
- * @typedef {import('diagram-js/lib/i18n/translate/translate').default} Translate
47165
47183
  *
47166
47184
  * @typedef {import('../../model/Types').Connection} Connection
47167
47185
  * @typedef {import('../../model/Types').Element} Element
@@ -47177,24 +47195,20 @@
47177
47195
  * @param {EventBus} eventBus
47178
47196
  * @param {BpmnFactory} bpmnFactory
47179
47197
  * @param {CroppingConnectionDocking} connectionDocking
47180
- * @param {Translate} translate
47181
47198
  */
47182
47199
  function BpmnUpdater(
47183
47200
  eventBus,
47184
47201
  bpmnFactory,
47185
- connectionDocking,
47186
- translate
47202
+ connectionDocking
47187
47203
  ) {
47188
47204
 
47189
47205
  CommandInterceptor.call(this, eventBus);
47190
47206
 
47191
47207
  this._bpmnFactory = bpmnFactory;
47192
- this._translate = translate;
47193
47208
 
47194
47209
  var self = this;
47195
47210
 
47196
47211
 
47197
-
47198
47212
  // connection cropping //////////////////////
47199
47213
 
47200
47214
  // crop connection ends during create/update
@@ -47449,8 +47463,7 @@
47449
47463
  BpmnUpdater.$inject = [
47450
47464
  'eventBus',
47451
47465
  'bpmnFactory',
47452
- 'connectionDocking',
47453
- 'translate'
47466
+ 'connectionDocking'
47454
47467
  ];
47455
47468
 
47456
47469
 
@@ -47689,8 +47702,7 @@
47689
47702
  */
47690
47703
  BpmnUpdater.prototype.updateSemanticParent = function(businessObject, newParent, visualParent) {
47691
47704
 
47692
- var containment,
47693
- translate = this._translate;
47705
+ var containment;
47694
47706
 
47695
47707
  if (businessObject.$parent === newParent) {
47696
47708
  return;
@@ -47795,13 +47807,7 @@
47795
47807
  }
47796
47808
 
47797
47809
  if (!containment) {
47798
- throw new Error(translate(
47799
- 'no parent for {element} in {parent}',
47800
- {
47801
- element: businessObject.id,
47802
- parent: newParent.id
47803
- }
47804
- ));
47810
+ throw new Error(`no parent for <${ businessObject.id }> in <${ newParent.id }>`);
47805
47811
  }
47806
47812
 
47807
47813
  var children;
@@ -47978,8 +47984,6 @@
47978
47984
  }
47979
47985
 
47980
47986
  /**
47981
- * @typedef {import('diagram-js/lib/i18n/translate/translate').default} Translate
47982
- *
47983
47987
  * @typedef {import('diagram-js/lib/util/Types').Dimensions} Dimensions
47984
47988
  *
47985
47989
  * @typedef {import('./BpmnFactory').default} BpmnFactory
@@ -48006,22 +48010,19 @@
48006
48010
  *
48007
48011
  * @param {BpmnFactory} bpmnFactory
48008
48012
  * @param {Moddle} moddle
48009
- * @param {Translate} translate
48010
48013
  */
48011
- function ElementFactory(bpmnFactory, moddle, translate) {
48014
+ function ElementFactory(bpmnFactory, moddle) {
48012
48015
  ElementFactory$1.call(this);
48013
48016
 
48014
48017
  this._bpmnFactory = bpmnFactory;
48015
48018
  this._moddle = moddle;
48016
- this._translate = translate;
48017
48019
  }
48018
48020
 
48019
48021
  e$2(ElementFactory, ElementFactory$1);
48020
48022
 
48021
48023
  ElementFactory.$inject = [
48022
48024
  'bpmnFactory',
48023
- 'moddle',
48024
- 'translate'
48025
+ 'moddle'
48025
48026
  ];
48026
48027
 
48027
48028
  ElementFactory.prototype._baseCreate = ElementFactory$1.prototype.create;
@@ -48099,17 +48100,17 @@
48099
48100
  * @return {T}
48100
48101
  */
48101
48102
  ElementFactory.prototype.createElement = function(elementType, attrs) {
48102
- var size,
48103
- translate = this._translate;
48104
48103
 
48105
48104
  attrs = assign$1({}, attrs || {});
48106
48105
 
48106
+ var size;
48107
+
48107
48108
  var businessObject = attrs.businessObject,
48108
48109
  di = attrs.di;
48109
48110
 
48110
48111
  if (!businessObject) {
48111
48112
  if (!attrs.type) {
48112
- throw new Error(translate('no shape type specified'));
48113
+ throw new Error('no shape type specified');
48113
48114
  }
48114
48115
 
48115
48116
  businessObject = this._bpmnFactory.create(attrs.type);
@@ -51207,7 +51208,6 @@
51207
51208
  *
51208
51209
  * @typedef {import('diagram-js/lib/core/ElementRegistry').default} ElementRegistry
51209
51210
  * @typedef {import('../../../model/Types').Moddle} Moddle
51210
- * @typedef {import('diagram-js/lib/i18n/translate/translate').default} Translate
51211
51211
  * @typedef {import('../Modeling').default} Modeling
51212
51212
  * @typedef {import('../../../draw/TextRenderer').default} TextRenderer
51213
51213
  *
@@ -51236,17 +51236,15 @@
51236
51236
  *
51237
51237
  * @param {ElementRegistry} elementRegistry
51238
51238
  * @param {Moddle} moddle
51239
- * @param {Translate} translate
51240
51239
  * @param {Modeling} modeling
51241
51240
  * @param {TextRenderer} textRenderer
51242
51241
  */
51243
51242
  function UpdatePropertiesHandler(
51244
- elementRegistry, moddle, translate,
51243
+ elementRegistry, moddle,
51245
51244
  modeling, textRenderer) {
51246
51245
 
51247
51246
  this._elementRegistry = elementRegistry;
51248
51247
  this._moddle = moddle;
51249
- this._translate = translate;
51250
51248
  this._modeling = modeling;
51251
51249
  this._textRenderer = textRenderer;
51252
51250
  }
@@ -51254,7 +51252,6 @@
51254
51252
  UpdatePropertiesHandler.$inject = [
51255
51253
  'elementRegistry',
51256
51254
  'moddle',
51257
- 'translate',
51258
51255
  'modeling',
51259
51256
  'textRenderer'
51260
51257
  ];
@@ -51275,11 +51272,10 @@
51275
51272
  UpdatePropertiesHandler.prototype.execute = function(context) {
51276
51273
 
51277
51274
  var element = context.element,
51278
- changed = [ element ],
51279
- translate = this._translate;
51275
+ changed = [ element ];
51280
51276
 
51281
51277
  if (!element) {
51282
- throw new Error(translate('element required'));
51278
+ throw new Error('element required');
51283
51279
  }
51284
51280
 
51285
51281
  var elementRegistry = this._elementRegistry,
@@ -51729,7 +51725,6 @@
51729
51725
  * @typedef {import('diagram-js/lib/command/CommandHandler').default} CommandHandler
51730
51726
  *
51731
51727
  * @typedef {import('../Modeling').default} Modeling
51732
- * @typedef {import('diagram-js/lib/i18n/translate/translate').default} Translate
51733
51728
  */
51734
51729
 
51735
51730
  /**
@@ -51739,23 +51734,19 @@
51739
51734
  * @implements {CommandHandler}
51740
51735
  *
51741
51736
  * @param {Modeling} modeling
51742
- * @param {Translate} translate
51743
51737
  */
51744
- function SplitLaneHandler(modeling, translate) {
51738
+ function SplitLaneHandler(modeling) {
51745
51739
  this._modeling = modeling;
51746
- this._translate = translate;
51747
51740
  }
51748
51741
 
51749
51742
  SplitLaneHandler.$inject = [
51750
- 'modeling',
51751
- 'translate'
51743
+ 'modeling'
51752
51744
  ];
51753
51745
 
51754
51746
 
51755
51747
  SplitLaneHandler.prototype.preExecute = function(context) {
51756
51748
 
51757
- var modeling = this._modeling,
51758
- translate = this._translate;
51749
+ var modeling = this._modeling;
51759
51750
 
51760
51751
  var shape = context.shape,
51761
51752
  newLanesCount = context.count;
@@ -51764,7 +51755,7 @@
51764
51755
  existingLanesCount = childLanes.length;
51765
51756
 
51766
51757
  if (existingLanesCount > newLanesCount) {
51767
- throw new Error(translate('more than {count} child lanes', { count: newLanesCount }));
51758
+ throw new Error(`more than <${ newLanesCount }> child lanes`);
51768
51759
  }
51769
51760
 
51770
51761
  var isHorizontalLane = isHorizontal$3(shape);
@@ -52238,7 +52229,7 @@
52238
52229
  }
52239
52230
  }
52240
52231
 
52241
- throw new Error('invalid color value: ' + color);
52232
+ throw new Error(`invalid color value: ${ color }`);
52242
52233
  };
52243
52234
  }
52244
52235
 
@@ -56618,6 +56609,10 @@
56618
56609
  entries.replace.action.click(event, shape);
56619
56610
  }
56620
56611
  });
56612
+
56613
+ eventBus.on('contextPad.close', function() {
56614
+ appendPreview.cleanUp();
56615
+ });
56621
56616
  }
56622
56617
 
56623
56618
  ContextPadProvider.$inject = [
@@ -56752,16 +56747,12 @@
56752
56747
  create.start(event, shape, {
56753
56748
  source: element
56754
56749
  });
56755
-
56756
- appendPreview.cleanUp();
56757
56750
  }
56758
56751
 
56759
56752
  var append = autoPlace ? function(_, element) {
56760
56753
  var shape = elementFactory.createShape(assign$1({ type: type }, options));
56761
56754
 
56762
56755
  autoPlace.append(element, shape);
56763
-
56764
- appendPreview.cleanUp();
56765
56756
  } : appendStart;
56766
56757
 
56767
56758
  var previewAppend = autoPlace ? function(_, element) {
@@ -56995,7 +56986,6 @@
56995
56986
  'bpmn-icon-text-annotation',
56996
56987
  translate('Add text annotation')
56997
56988
  ),
56998
-
56999
56989
  'connect': {
57000
56990
  group: 'connect',
57001
56991
  className: 'bpmn-icon-connection-multi',
@@ -60127,6 +60117,13 @@
60127
60117
  assign$1(context, bounds);
60128
60118
 
60129
60119
  var options = {};
60120
+ var style = context.style || {};
60121
+
60122
+ // Remove background and border
60123
+ assign$1(style, {
60124
+ backgroundColor: null,
60125
+ border: null
60126
+ });
60130
60127
 
60131
60128
  // tasks
60132
60129
  if (
@@ -60148,6 +60145,12 @@
60148
60145
  assign$1(options, {
60149
60146
  autoResize: true
60150
60147
  });
60148
+
60149
+ // keep background and border for external labels
60150
+ assign$1(style, {
60151
+ backgroundColor: '#ffffff',
60152
+ border: '1px solid #ccc'
60153
+ });
60151
60154
  }
60152
60155
 
60153
60156
  // text annotations
@@ -60156,10 +60159,17 @@
60156
60159
  resizable: true,
60157
60160
  autoResize: true
60158
60161
  });
60162
+
60163
+ // keep background and border for text annotations
60164
+ assign$1(style, {
60165
+ backgroundColor: '#ffffff',
60166
+ border: '1px solid #ccc'
60167
+ });
60159
60168
  }
60160
60169
 
60161
60170
  assign$1(context, {
60162
- options: options
60171
+ options: options,
60172
+ style: style
60163
60173
  });
60164
60174
 
60165
60175
  return context;
@@ -64994,7 +65004,6 @@
64994
65004
  /**
64995
65005
  * A modeler for BPMN 2.0 diagrams.
64996
65006
  *
64997
- *
64998
65007
  * ## Extending the Modeler
64999
65008
  *
65000
65009
  * In order to extend the viewer pass extension modules to bootstrap via the
@@ -65055,6 +65064,10 @@
65055
65064
  * var bpmnModeler = new Modeler({ additionalModules: [ overrideModule ]});
65056
65065
  * ```
65057
65066
  *
65067
+ * @template [ServiceMap=null]
65068
+ *
65069
+ * @extends BaseModeler<ServiceMap>
65070
+ *
65058
65071
  * @param {BaseViewerOptions} [options] The options to configure the modeler.
65059
65072
  */
65060
65073
  function Modeler(options) {