bpmn-js 18.1.2 → 18.2.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 (339) hide show
  1. package/LICENSE +23 -23
  2. package/README.md +95 -95
  3. package/dist/assets/bpmn-js.css +145 -145
  4. package/dist/bpmn-modeler.development.js +38666 -38635
  5. package/dist/bpmn-modeler.production.min.js +4 -4
  6. package/dist/bpmn-navigated-viewer.development.js +20798 -20798
  7. package/dist/bpmn-navigated-viewer.production.min.js +3 -3
  8. package/dist/bpmn-viewer.development.js +20735 -20735
  9. package/dist/bpmn-viewer.production.min.js +3 -3
  10. package/lib/BaseModeler.d.ts +15 -15
  11. package/lib/BaseModeler.js +79 -79
  12. package/lib/BaseViewer.d.ts +352 -352
  13. package/lib/BaseViewer.js +858 -858
  14. package/lib/Modeler.d.ts +86 -86
  15. package/lib/Modeler.js +206 -206
  16. package/lib/NavigatedViewer.d.ts +11 -11
  17. package/lib/NavigatedViewer.js +37 -37
  18. package/lib/Viewer.d.ts +47 -47
  19. package/lib/Viewer.js +76 -76
  20. package/lib/core/index.d.ts +10 -10
  21. package/lib/core/index.js +8 -8
  22. package/lib/draw/BpmnRenderUtil.d.ts +123 -123
  23. package/lib/draw/BpmnRenderUtil.js +256 -256
  24. package/lib/draw/BpmnRenderer.d.ts +116 -116
  25. package/lib/draw/BpmnRenderer.js +2339 -2339
  26. package/lib/draw/PathMap.d.ts +330 -330
  27. package/lib/draw/PathMap.js +478 -478
  28. package/lib/draw/TextRenderer.d.ts +74 -74
  29. package/lib/draw/TextRenderer.js +136 -136
  30. package/lib/draw/index.d.ts +10 -10
  31. package/lib/draw/index.js +11 -11
  32. package/lib/features/align-elements/AlignElementsContextPadProvider.d.ts +32 -32
  33. package/lib/features/align-elements/AlignElementsContextPadProvider.js +105 -105
  34. package/lib/features/align-elements/AlignElementsIcons.d.ts +10 -10
  35. package/lib/features/align-elements/AlignElementsIcons.js +43 -43
  36. package/lib/features/align-elements/AlignElementsMenuProvider.d.ts +32 -32
  37. package/lib/features/align-elements/AlignElementsMenuProvider.js +100 -100
  38. package/lib/features/align-elements/BpmnAlignElements.d.ts +9 -9
  39. package/lib/features/align-elements/BpmnAlignElements.js +45 -45
  40. package/lib/features/align-elements/index.d.ts +11 -11
  41. package/lib/features/align-elements/index.js +23 -23
  42. package/lib/features/append-preview/AppendPreview.d.ts +36 -36
  43. package/lib/features/append-preview/AppendPreview.js +108 -108
  44. package/lib/features/append-preview/index.d.ts +16 -16
  45. package/lib/features/append-preview/index.js +15 -15
  46. package/lib/features/auto-place/BpmnAutoPlace.d.ts +15 -15
  47. package/lib/features/auto-place/BpmnAutoPlace.js +22 -22
  48. package/lib/features/auto-place/BpmnAutoPlaceUtil.d.ts +52 -52
  49. package/lib/features/auto-place/BpmnAutoPlaceUtil.js +226 -226
  50. package/lib/features/auto-place/index.d.ts +7 -7
  51. package/lib/features/auto-place/index.js +8 -8
  52. package/lib/features/auto-resize/BpmnAutoResize.d.ts +25 -25
  53. package/lib/features/auto-resize/BpmnAutoResize.js +45 -45
  54. package/lib/features/auto-resize/BpmnAutoResizeProvider.d.ts +26 -26
  55. package/lib/features/auto-resize/BpmnAutoResizeProvider.js +69 -69
  56. package/lib/features/auto-resize/index.d.ts +8 -8
  57. package/lib/features/auto-resize/index.js +12 -12
  58. package/lib/features/context-pad/ContextPadProvider.d.ts +62 -62
  59. package/lib/features/context-pad/ContextPadProvider.js +582 -582
  60. package/lib/features/context-pad/index.d.ts +7 -7
  61. package/lib/features/context-pad/index.js +22 -22
  62. package/lib/features/copy-paste/BpmnCopyPaste.d.ts +17 -17
  63. package/lib/features/copy-paste/BpmnCopyPaste.js +192 -192
  64. package/lib/features/copy-paste/ModdleCopy.d.ts +45 -45
  65. package/lib/features/copy-paste/index.d.ts +9 -9
  66. package/lib/features/copy-paste/index.js +13 -13
  67. package/lib/features/di-ordering/BpmnDiOrdering.d.ts +11 -11
  68. package/lib/features/di-ordering/BpmnDiOrdering.js +48 -48
  69. package/lib/features/di-ordering/index.d.ts +6 -6
  70. package/lib/features/di-ordering/index.js +7 -7
  71. package/lib/features/distribute-elements/BpmnDistributeElements.d.ts +10 -10
  72. package/lib/features/distribute-elements/BpmnDistributeElements.js +60 -60
  73. package/lib/features/distribute-elements/DistributeElementsIcons.d.ts +5 -5
  74. package/lib/features/distribute-elements/DistributeElementsIcons.js +18 -18
  75. package/lib/features/distribute-elements/DistributeElementsMenuProvider.d.ts +32 -32
  76. package/lib/features/distribute-elements/DistributeElementsMenuProvider.js +92 -92
  77. package/lib/features/distribute-elements/index.d.ts +9 -9
  78. package/lib/features/distribute-elements/index.js +19 -19
  79. package/lib/features/drilldown/DrilldownBreadcrumbs.d.ts +19 -19
  80. package/lib/features/drilldown/DrilldownBreadcrumbs.js +138 -138
  81. package/lib/features/drilldown/DrilldownCentering.d.ts +17 -17
  82. package/lib/features/drilldown/DrilldownCentering.js +122 -122
  83. package/lib/features/drilldown/DrilldownOverlayBehavior.d.ts +20 -20
  84. package/lib/features/drilldown/DrilldownOverlayBehavior.js +218 -218
  85. package/lib/features/drilldown/SubprocessCompatibility.d.ts +21 -21
  86. package/lib/features/drilldown/SubprocessCompatibility.js +266 -266
  87. package/lib/features/drilldown/index.d.ts +13 -13
  88. package/lib/features/drilldown/index.js +16 -16
  89. package/lib/features/editor-actions/BpmnEditorActions.d.ts +13 -13
  90. package/lib/features/editor-actions/BpmnEditorActions.js +187 -187
  91. package/lib/features/editor-actions/index.d.ts +6 -6
  92. package/lib/features/editor-actions/index.js +10 -10
  93. package/lib/features/grid-snapping/BpmnGridSnapping.d.ts +9 -9
  94. package/lib/features/grid-snapping/behavior/GridSnappingAutoPlaceBehavior.d.ts +14 -14
  95. package/lib/features/grid-snapping/behavior/GridSnappingLayoutConnectionBehavior.d.ts +27 -27
  96. package/lib/features/grid-snapping/behavior/GridSnappingLayoutConnectionBehavior.js +155 -155
  97. package/lib/features/grid-snapping/behavior/GridSnappingParticipantBehavior.d.ts +13 -13
  98. package/lib/features/grid-snapping/behavior/index.d.ts +10 -10
  99. package/lib/features/grid-snapping/index.d.ts +11 -11
  100. package/lib/features/interaction-events/BpmnInteractionEvents.d.ts +18 -18
  101. package/lib/features/interaction-events/BpmnInteractionEvents.js +146 -146
  102. package/lib/features/interaction-events/index.d.ts +6 -6
  103. package/lib/features/interaction-events/index.js +5 -5
  104. package/lib/features/keyboard/BpmnKeyboardBindings.d.ts +15 -15
  105. package/lib/features/keyboard/BpmnKeyboardBindings.js +179 -179
  106. package/lib/features/keyboard/index.d.ts +7 -7
  107. package/lib/features/keyboard/index.js +11 -11
  108. package/lib/features/label-editing/LabelEditingPreview.d.ts +13 -13
  109. package/lib/features/label-editing/LabelEditingPreview.js +145 -145
  110. package/lib/features/label-editing/LabelEditingProvider.d.ts +62 -62
  111. package/lib/features/label-editing/LabelEditingProvider.js +519 -519
  112. package/lib/features/label-editing/LabelUtil.d.ts +1 -1
  113. package/lib/features/label-editing/LabelUtil.js +4 -4
  114. package/lib/features/label-editing/cmd/UpdateLabelHandler.d.ts +22 -22
  115. package/lib/features/label-editing/cmd/UpdateLabelHandler.js +149 -149
  116. package/lib/features/label-editing/index.d.ts +9 -9
  117. package/lib/features/label-editing/index.js +21 -21
  118. package/lib/features/modeling/BpmnFactory.d.ts +73 -73
  119. package/lib/features/modeling/BpmnFactory.js +180 -180
  120. package/lib/features/modeling/BpmnLayouter.d.ts +30 -30
  121. package/lib/features/modeling/BpmnLayouter.js +488 -488
  122. package/lib/features/modeling/BpmnUpdater.d.ts +90 -90
  123. package/lib/features/modeling/BpmnUpdater.js +818 -818
  124. package/lib/features/modeling/ElementFactory.d.ts +117 -117
  125. package/lib/features/modeling/ElementFactory.js +412 -412
  126. package/lib/features/modeling/ElementFactory.test.ts +132 -132
  127. package/lib/features/modeling/Modeling.d.ts +150 -150
  128. package/lib/features/modeling/Modeling.js +309 -309
  129. package/lib/features/modeling/Modeling.test.ts +147 -147
  130. package/lib/features/modeling/behavior/AdaptiveLabelPositioningBehavior.d.ts +19 -19
  131. package/lib/features/modeling/behavior/AdaptiveLabelPositioningBehavior.js +288 -288
  132. package/lib/features/modeling/behavior/AppendBehavior.d.ts +6 -6
  133. package/lib/features/modeling/behavior/AppendBehavior.js +42 -42
  134. package/lib/features/modeling/behavior/AssociationBehavior.d.ts +11 -11
  135. package/lib/features/modeling/behavior/AttachEventBehavior.d.ts +15 -15
  136. package/lib/features/modeling/behavior/AttachEventBehavior.js +106 -106
  137. package/lib/features/modeling/behavior/BoundaryEventBehavior.d.ts +15 -15
  138. package/lib/features/modeling/behavior/BoundaryEventBehavior.js +74 -74
  139. package/lib/features/modeling/behavior/CompensateBoundaryEventBehavior.d.ts +17 -17
  140. package/lib/features/modeling/behavior/CompensateBoundaryEventBehavior.js +222 -222
  141. package/lib/features/modeling/behavior/CreateBehavior.d.ts +9 -9
  142. package/lib/features/modeling/behavior/CreateBehavior.js +33 -33
  143. package/lib/features/modeling/behavior/CreateDataObjectBehavior.d.ts +15 -15
  144. package/lib/features/modeling/behavior/CreateDataObjectBehavior.js +43 -43
  145. package/lib/features/modeling/behavior/CreateParticipantBehavior.d.ts +19 -19
  146. package/lib/features/modeling/behavior/CreateParticipantBehavior.js +237 -237
  147. package/lib/features/modeling/behavior/DataInputAssociationBehavior.d.ts +21 -21
  148. package/lib/features/modeling/behavior/DataInputAssociationBehavior.js +162 -162
  149. package/lib/features/modeling/behavior/DataStoreBehavior.d.ts +19 -19
  150. package/lib/features/modeling/behavior/DeleteLaneBehavior.d.ts +15 -15
  151. package/lib/features/modeling/behavior/DeleteLaneBehavior.js +162 -162
  152. package/lib/features/modeling/behavior/DetachEventBehavior.d.ts +15 -15
  153. package/lib/features/modeling/behavior/DetachEventBehavior.js +101 -101
  154. package/lib/features/modeling/behavior/DropOnFlowBehavior.d.ts +13 -13
  155. package/lib/features/modeling/behavior/DropOnFlowBehavior.js +221 -221
  156. package/lib/features/modeling/behavior/EventBasedGatewayBehavior.d.ts +11 -11
  157. package/lib/features/modeling/behavior/EventBasedGatewayBehavior.js +110 -110
  158. package/lib/features/modeling/behavior/FixHoverBehavior.d.ts +17 -17
  159. package/lib/features/modeling/behavior/GroupBehavior.d.ts +26 -26
  160. package/lib/features/modeling/behavior/ImportDockingFix.d.ts +13 -13
  161. package/lib/features/modeling/behavior/ImportDockingFix.js +83 -83
  162. package/lib/features/modeling/behavior/IsHorizontalFix.d.ts +10 -10
  163. package/lib/features/modeling/behavior/IsHorizontalFix.js +54 -54
  164. package/lib/features/modeling/behavior/LabelBehavior.d.ts +56 -56
  165. package/lib/features/modeling/behavior/LabelBehavior.js +364 -364
  166. package/lib/features/modeling/behavior/LayoutConnectionBehavior.d.ts +16 -16
  167. package/lib/features/modeling/behavior/LayoutConnectionBehavior.js +121 -121
  168. package/lib/features/modeling/behavior/MessageFlowBehavior.d.ts +15 -15
  169. package/lib/features/modeling/behavior/NonInterruptingBehavior.d.ts +4 -4
  170. package/lib/features/modeling/behavior/NonInterruptingBehavior.js +41 -41
  171. package/lib/features/modeling/behavior/RemoveElementBehavior.d.ts +13 -13
  172. package/lib/features/modeling/behavior/RemoveElementBehavior.js +91 -91
  173. package/lib/features/modeling/behavior/RemoveEmbeddedLabelBoundsBehavior.d.ts +16 -16
  174. package/lib/features/modeling/behavior/RemoveEmbeddedLabelBoundsBehavior.js +41 -41
  175. package/lib/features/modeling/behavior/RemoveParticipantBehavior.d.ts +15 -15
  176. package/lib/features/modeling/behavior/RemoveParticipantBehavior.js +59 -59
  177. package/lib/features/modeling/behavior/ReplaceConnectionBehavior.d.ts +15 -15
  178. package/lib/features/modeling/behavior/ReplaceConnectionBehavior.js +194 -194
  179. package/lib/features/modeling/behavior/ReplaceElementBehaviour.d.ts +23 -23
  180. package/lib/features/modeling/behavior/ReplaceElementBehaviour.js +144 -144
  181. package/lib/features/modeling/behavior/ResizeBehavior.d.ts +64 -64
  182. package/lib/features/modeling/behavior/ResizeBehavior.js +265 -265
  183. package/lib/features/modeling/behavior/ResizeLaneBehavior.d.ts +16 -16
  184. package/lib/features/modeling/behavior/ResizeLaneBehavior.js +70 -70
  185. package/lib/features/modeling/behavior/RootElementReferenceBehavior.d.ts +25 -25
  186. package/lib/features/modeling/behavior/SetCompensationActivityAfterPasteBehavior.d.ts +16 -16
  187. package/lib/features/modeling/behavior/SetCompensationActivityAfterPasteBehavior.js +66 -66
  188. package/lib/features/modeling/behavior/SpaceToolBehavior.d.ts +10 -10
  189. package/lib/features/modeling/behavior/SpaceToolBehavior.js +207 -207
  190. package/lib/features/modeling/behavior/SubProcessPlaneBehavior.d.ts +28 -28
  191. package/lib/features/modeling/behavior/SubProcessPlaneBehavior.js +588 -588
  192. package/lib/features/modeling/behavior/SubProcessStartEventBehavior.d.ts +15 -15
  193. package/lib/features/modeling/behavior/SubProcessStartEventBehavior.js +55 -55
  194. package/lib/features/modeling/behavior/TextAnnotationBehavior.d.ts +6 -6
  195. package/lib/features/modeling/behavior/TextAnnotationBehavior.js +42 -42
  196. package/lib/features/modeling/behavior/ToggleCollapseConnectionBehaviour.d.ts +14 -14
  197. package/lib/features/modeling/behavior/ToggleCollapseConnectionBehaviour.js +87 -87
  198. package/lib/features/modeling/behavior/ToggleElementCollapseBehaviour.d.ts +13 -13
  199. package/lib/features/modeling/behavior/ToggleElementCollapseBehaviour.js +156 -156
  200. package/lib/features/modeling/behavior/UnclaimIdBehavior.d.ts +19 -19
  201. package/lib/features/modeling/behavior/UnclaimIdBehavior.js +64 -64
  202. package/lib/features/modeling/behavior/UnsetDefaultFlowBehavior.d.ts +16 -16
  203. package/lib/features/modeling/behavior/UnsetDefaultFlowBehavior.js +59 -59
  204. package/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.d.ts +15 -15
  205. package/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.js +157 -157
  206. package/lib/features/modeling/behavior/index.d.ts +2 -2
  207. package/lib/features/modeling/behavior/index.js +131 -131
  208. package/lib/features/modeling/behavior/util/CategoryUtil.d.ts +49 -49
  209. package/lib/features/modeling/behavior/util/CategoryUtil.js +86 -86
  210. package/lib/features/modeling/behavior/util/ConnectionLayoutUtil.d.ts +19 -19
  211. package/lib/features/modeling/behavior/util/ConnectionLayoutUtil.js +22 -22
  212. package/lib/features/modeling/behavior/util/GeometricUtil.d.ts +1 -1
  213. package/lib/features/modeling/behavior/util/LabelLayoutUtil.d.ts +32 -32
  214. package/lib/features/modeling/behavior/util/LabelLayoutUtil.js +41 -41
  215. package/lib/features/modeling/behavior/util/LayoutUtil.d.ts +48 -48
  216. package/lib/features/modeling/behavior/util/LayoutUtil.js +259 -259
  217. package/lib/features/modeling/behavior/util/LineAttachmentUtil.d.ts +37 -37
  218. package/lib/features/modeling/behavior/util/LineAttachmentUtil.js +241 -241
  219. package/lib/features/modeling/behavior/util/LineIntersect.d.ts +13 -13
  220. package/lib/features/modeling/behavior/util/LineIntersect.js +39 -39
  221. package/lib/features/modeling/behavior/util/NonInterruptingUtil.d.ts +3 -3
  222. package/lib/features/modeling/behavior/util/NonInterruptingUtil.js +32 -32
  223. package/lib/features/modeling/behavior/util/ResizeUtil.d.ts +1 -1
  224. package/lib/features/modeling/cmd/AddLaneHandler.d.ts +22 -22
  225. package/lib/features/modeling/cmd/AddLaneHandler.js +187 -187
  226. package/lib/features/modeling/cmd/IdClaimHandler.d.ts +22 -22
  227. package/lib/features/modeling/cmd/IdClaimHandler.js +51 -51
  228. package/lib/features/modeling/cmd/ResizeLaneHandler.d.ts +39 -39
  229. package/lib/features/modeling/cmd/ResizeLaneHandler.js +146 -146
  230. package/lib/features/modeling/cmd/SetColorHandler.d.ts +18 -18
  231. package/lib/features/modeling/cmd/SplitLaneHandler.d.ts +20 -20
  232. package/lib/features/modeling/cmd/SplitLaneHandler.js +99 -99
  233. package/lib/features/modeling/cmd/UpdateCanvasRootHandler.d.ts +20 -20
  234. package/lib/features/modeling/cmd/UpdateCanvasRootHandler.js +99 -99
  235. package/lib/features/modeling/cmd/UpdateFlowNodeRefsHandler.d.ts +21 -21
  236. package/lib/features/modeling/cmd/UpdateFlowNodeRefsHandler.js +218 -218
  237. package/lib/features/modeling/cmd/UpdateModdlePropertiesHandler.d.ts +20 -20
  238. package/lib/features/modeling/cmd/UpdateModdlePropertiesHandler.js +107 -107
  239. package/lib/features/modeling/cmd/UpdatePropertiesHandler.d.ts +58 -58
  240. package/lib/features/modeling/cmd/UpdatePropertiesHandler.js +260 -260
  241. package/lib/features/modeling/cmd/UpdateSemanticParentHandler.d.ts +18 -18
  242. package/lib/features/modeling/index.d.ts +27 -27
  243. package/lib/features/modeling/index.js +45 -45
  244. package/lib/features/modeling/util/LaneUtil.d.ts +46 -46
  245. package/lib/features/modeling/util/LaneUtil.js +188 -188
  246. package/lib/features/modeling/util/ModelingUtil.d.ts +23 -23
  247. package/lib/features/modeling/util/ModelingUtil.js +88 -88
  248. package/lib/features/modeling-feedback/ModelingFeedback.d.ts +13 -13
  249. package/lib/features/modeling-feedback/ModelingFeedback.js +46 -46
  250. package/lib/features/modeling-feedback/index.d.ts +7 -7
  251. package/lib/features/modeling-feedback/index.js +12 -12
  252. package/lib/features/ordering/BpmnOrderingProvider.d.ts +19 -19
  253. package/lib/features/ordering/BpmnOrderingProvider.js +191 -191
  254. package/lib/features/ordering/index.d.ts +6 -6
  255. package/lib/features/ordering/index.js +5 -5
  256. package/lib/features/outline/OutlineProvider.d.ts +39 -39
  257. package/lib/features/outline/OutlineProvider.js +189 -189
  258. package/lib/features/outline/OutlineUtil.d.ts +23 -23
  259. package/lib/features/outline/OutlineUtil.js +35 -35
  260. package/lib/features/outline/index.d.ts +7 -7
  261. package/lib/features/outline/index.js +10 -10
  262. package/lib/features/palette/PaletteProvider.d.ts +34 -34
  263. package/lib/features/palette/PaletteProvider.js +214 -214
  264. package/lib/features/palette/index.d.ts +9 -9
  265. package/lib/features/palette/index.js +23 -23
  266. package/lib/features/popup-menu/ReplaceMenuProvider.d.ts +52 -52
  267. package/lib/features/popup-menu/ReplaceMenuProvider.js +629 -677
  268. package/lib/features/popup-menu/index.d.ts +11 -11
  269. package/lib/features/popup-menu/index.js +16 -16
  270. package/lib/features/popup-menu/util/Icons.d.ts +5 -5
  271. package/lib/features/popup-menu/util/Icons.js +14 -14
  272. package/lib/features/popup-menu/util/TypeUtil.d.ts +14 -14
  273. package/lib/features/popup-menu/util/TypeUtil.js +52 -52
  274. package/lib/features/replace/BpmnReplace.d.ts +45 -45
  275. package/lib/features/replace/BpmnReplace.js +391 -391
  276. package/lib/features/replace/ReplaceOptions.d.ts +79 -75
  277. package/lib/features/replace/ReplaceOptions.js +998 -919
  278. package/lib/features/replace/index.d.ts +9 -9
  279. package/lib/features/replace/index.js +14 -14
  280. package/lib/features/replace-preview/BpmnReplacePreview.d.ts +17 -17
  281. package/lib/features/replace-preview/BpmnReplacePreview.js +139 -139
  282. package/lib/features/replace-preview/index.d.ts +7 -7
  283. package/lib/features/replace-preview/index.js +11 -11
  284. package/lib/features/rules/BpmnRules.d.ts +181 -181
  285. package/lib/features/rules/BpmnRules.js +1191 -1191
  286. package/lib/features/rules/index.d.ts +7 -7
  287. package/lib/features/rules/index.js +11 -11
  288. package/lib/features/search/BpmnSearchProvider.d.ts +34 -34
  289. package/lib/features/search/BpmnSearchProvider.js +91 -91
  290. package/lib/features/search/index.d.ts +7 -7
  291. package/lib/features/search/index.js +14 -14
  292. package/lib/features/snapping/BpmnConnectSnapping.d.ts +17 -17
  293. package/lib/features/snapping/BpmnCreateMoveSnapping.d.ts +41 -41
  294. package/lib/features/snapping/BpmnCreateMoveSnapping.js +289 -289
  295. package/lib/features/snapping/BpmnSnappingUtil.d.ts +11 -11
  296. package/lib/features/snapping/index.d.ts +9 -9
  297. package/lib/features/snapping/index.js +12 -12
  298. package/lib/features/space-tool/BpmnSpaceTool.d.ts +21 -21
  299. package/lib/features/space-tool/BpmnSpaceTool.js +69 -69
  300. package/lib/features/space-tool/index.d.ts +6 -6
  301. package/lib/features/space-tool/index.js +7 -7
  302. package/lib/import/BpmnImporter.d.ts +51 -51
  303. package/lib/import/BpmnImporter.js +363 -363
  304. package/lib/import/BpmnTreeWalker.d.ts +20 -20
  305. package/lib/import/BpmnTreeWalker.js +453 -453
  306. package/lib/import/Importer.d.ts +25 -25
  307. package/lib/import/Importer.js +222 -222
  308. package/lib/import/Util.d.ts +1 -1
  309. package/lib/import/Util.js +6 -6
  310. package/lib/import/index.d.ts +6 -6
  311. package/lib/import/index.js +9 -9
  312. package/lib/index.d.ts +1 -1
  313. package/lib/index.js +2 -2
  314. package/lib/model/Types.d.ts +25 -25
  315. package/lib/model/Types.ts +40 -40
  316. package/lib/util/CompatibilityUtil.d.ts +8 -8
  317. package/lib/util/CompatibilityUtil.js +29 -29
  318. package/lib/util/DiUtil.d.ts +60 -60
  319. package/lib/util/DiUtil.js +122 -122
  320. package/lib/util/DrilldownUtil.d.ts +39 -39
  321. package/lib/util/DrilldownUtil.js +69 -69
  322. package/lib/util/LabelUtil.d.ts +83 -83
  323. package/lib/util/LabelUtil.js +266 -266
  324. package/lib/util/ModelUtil.d.ts +40 -40
  325. package/lib/util/ModelUtil.js +58 -58
  326. package/lib/util/PoweredByUtil.d.ts +8 -8
  327. package/lib/util/PoweredByUtil.js +99 -99
  328. package/lib/util/Types.js +4 -4
  329. package/lib/util/Types.ts +3 -3
  330. package/package.json +131 -131
  331. package/test/helper/TranslationCollector.js +15 -15
  332. package/test/helper/index.js +313 -313
  333. package/test/matchers/BoundsMatchers.js +252 -252
  334. package/test/matchers/ConnectionMatchers.js +165 -165
  335. package/test/matchers/JSONMatcher.js +19 -19
  336. package/test/util/KeyEvents.js +22 -22
  337. package/test/util/MockEvents.js +61 -61
  338. package/test/util/custom-rules/CustomRules.js +16 -16
  339. package/test/util/custom-rules/index.js +6 -6
@@ -1,288 +1,288 @@
1
- import inherits from 'inherits-browser';
2
-
3
- import {
4
- getOrientation,
5
- getMid,
6
- asTRBL
7
- } from 'diagram-js/lib/layout/LayoutUtil';
8
-
9
- import {
10
- substract
11
- } from 'diagram-js/lib/util/Math';
12
-
13
- import {
14
- hasExternalLabel
15
- } from '../../../util/LabelUtil';
16
-
17
- import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
18
- import { isConnection } from 'diagram-js/lib/util/ModelUtil';
19
-
20
- /**
21
- * @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
22
- * @typedef {import('../Modeling').default} Modeling
23
- *
24
- * @typedef {import('../../../model/Types').Element} Element
25
- * @typedef {import('../../../model/Types').Shape} Shape
26
- *
27
- * @typedef {import('diagram-js/lib/util/Types').DirectionTRBL} DirectionTRBL
28
- */
29
-
30
- var ALIGNMENTS = [
31
- 'top',
32
- 'bottom',
33
- 'left',
34
- 'right'
35
- ];
36
-
37
- var ELEMENT_LABEL_DISTANCE = 10;
38
-
39
- /**
40
- * A behavior that ensures that labels are positioned in a way that they do not
41
- * overlap with other elements or connections.
42
- *
43
- * @param {EventBus} eventBus
44
- * @param {Modeling} modeling
45
- */
46
- export default function AdaptiveLabelPositioningBehavior(eventBus, modeling) {
47
-
48
- CommandInterceptor.call(this, eventBus);
49
-
50
- this.postExecuted([
51
- 'connection.create',
52
- 'connection.layout',
53
- 'connection.updateWaypoints'
54
- ], function(event) {
55
- var context = event.context,
56
- connection = context.connection,
57
- source = connection.source,
58
- target = connection.target,
59
- hints = context.hints || {};
60
-
61
- if (hints.createElementsBehavior !== false) {
62
- checkLabelAdjustment(source);
63
- checkLabelAdjustment(target);
64
- }
65
- });
66
-
67
-
68
- this.postExecuted([
69
- 'label.create'
70
- ], function(event) {
71
- var context = event.context,
72
- shape = context.shape,
73
- hints = context.hints || {};
74
-
75
- if (hints.createElementsBehavior !== false) {
76
- checkLabelAdjustment(shape.labelTarget);
77
- }
78
- });
79
-
80
-
81
- this.postExecuted([
82
- 'elements.create'
83
- ], function(event) {
84
- var context = event.context,
85
- elements = context.elements,
86
- hints = context.hints || {};
87
-
88
- if (hints.createElementsBehavior !== false) {
89
- elements.forEach(function(element) {
90
- checkLabelAdjustment(element);
91
- });
92
- }
93
- });
94
-
95
- function checkLabelAdjustment(element) {
96
-
97
- // skip non-existing labels
98
- if (!hasExternalLabel(element)) {
99
- return;
100
- }
101
-
102
- if (isConnection(element)) {
103
- return;
104
- }
105
-
106
- var optimalPosition = getOptimalPosition(element);
107
-
108
- // no optimal position found
109
- if (!optimalPosition) {
110
- return;
111
- }
112
-
113
- adjustLabelPosition(element, optimalPosition);
114
- }
115
-
116
- function adjustLabelPosition(element, orientation) {
117
-
118
- var elementMid = getMid(element),
119
- label = element.label,
120
- labelMid = getMid(label);
121
-
122
- // ignore labels that are being created
123
- if (!label.parent) {
124
- return;
125
- }
126
-
127
- var elementTrbl = asTRBL(element);
128
-
129
- var newLabelMid;
130
-
131
- switch (orientation) {
132
- case 'top':
133
- newLabelMid = {
134
- x: elementMid.x,
135
- y: elementTrbl.top - ELEMENT_LABEL_DISTANCE - label.height / 2
136
- };
137
-
138
- break;
139
-
140
- case 'left':
141
-
142
- newLabelMid = {
143
- x: elementTrbl.left - ELEMENT_LABEL_DISTANCE - label.width / 2,
144
- y: elementMid.y
145
- };
146
-
147
- break;
148
-
149
- case 'bottom':
150
-
151
- newLabelMid = {
152
- x: elementMid.x,
153
- y: elementTrbl.bottom + ELEMENT_LABEL_DISTANCE + label.height / 2
154
- };
155
-
156
- break;
157
-
158
- case 'right':
159
-
160
- newLabelMid = {
161
- x: elementTrbl.right + ELEMENT_LABEL_DISTANCE + label.width / 2,
162
- y: elementMid.y
163
- };
164
-
165
- break;
166
- }
167
-
168
- var delta = substract(newLabelMid, labelMid);
169
-
170
- modeling.moveShape(label, delta);
171
- }
172
-
173
- }
174
-
175
- inherits(AdaptiveLabelPositioningBehavior, CommandInterceptor);
176
-
177
- AdaptiveLabelPositioningBehavior.$inject = [
178
- 'eventBus',
179
- 'modeling'
180
- ];
181
-
182
-
183
- // helpers //////////////////////
184
-
185
- /**
186
- * Return alignments which are taken by a boundary's host element
187
- *
188
- * @param {Shape} element
189
- *
190
- * @return {DirectionTRBL[]}
191
- */
192
- function getTakenHostAlignments(element) {
193
-
194
- var hostElement = element.host,
195
- elementMid = getMid(element),
196
- hostOrientation = getOrientation(elementMid, hostElement);
197
-
198
- var freeAlignments;
199
-
200
- // check whether there is a multi-orientation, e.g. 'top-left'
201
- if (hostOrientation.indexOf('-') >= 0) {
202
- freeAlignments = hostOrientation.split('-');
203
- } else {
204
- freeAlignments = [ hostOrientation ];
205
- }
206
-
207
- var takenAlignments = ALIGNMENTS.filter(function(alignment) {
208
-
209
- return freeAlignments.indexOf(alignment) === -1;
210
- });
211
-
212
- return takenAlignments;
213
-
214
- }
215
-
216
- /**
217
- * Return alignments which are taken by related connections
218
- *
219
- * @param {Element} element
220
- *
221
- * @return {DirectionTRBL[]}
222
- */
223
- function getTakenConnectionAlignments(element) {
224
-
225
- var elementMid = getMid(element);
226
-
227
- var takenAlignments = [].concat(
228
- element.incoming.map(function(c) {
229
- return c.waypoints[c.waypoints.length - 2 ];
230
- }),
231
- element.outgoing.map(function(c) {
232
- return c.waypoints[1];
233
- })
234
- ).map(function(point) {
235
- return getApproximateOrientation(elementMid, point);
236
- });
237
-
238
- return takenAlignments;
239
- }
240
-
241
- /**
242
- * Return the optimal label position around an element
243
- * or `undefined`, if none was found.
244
- *
245
- * @param {Element} element
246
- *
247
- * @return {DirectionTRBL|undefined}
248
- */
249
- function getOptimalPosition(element) {
250
-
251
- var labelMid = getMid(element.label);
252
-
253
- var elementMid = getMid(element);
254
-
255
- var labelOrientation = getApproximateOrientation(elementMid, labelMid);
256
-
257
- if (!isAligned(labelOrientation)) {
258
- return;
259
- }
260
-
261
- var takenAlignments = getTakenConnectionAlignments(element);
262
-
263
- if (element.host) {
264
- var takenHostAlignments = getTakenHostAlignments(element);
265
-
266
- takenAlignments = takenAlignments.concat(takenHostAlignments);
267
- }
268
-
269
- var freeAlignments = ALIGNMENTS.filter(function(alignment) {
270
-
271
- return takenAlignments.indexOf(alignment) === -1;
272
- });
273
-
274
- // NOTHING TO DO; label already aligned a.O.K.
275
- if (freeAlignments.indexOf(labelOrientation) !== -1) {
276
- return;
277
- }
278
-
279
- return freeAlignments[0];
280
- }
281
-
282
- function getApproximateOrientation(p0, p1) {
283
- return getOrientation(p1, p0, 5);
284
- }
285
-
286
- function isAligned(orientation) {
287
- return ALIGNMENTS.indexOf(orientation) !== -1;
288
- }
1
+ import inherits from 'inherits-browser';
2
+
3
+ import {
4
+ getOrientation,
5
+ getMid,
6
+ asTRBL
7
+ } from 'diagram-js/lib/layout/LayoutUtil';
8
+
9
+ import {
10
+ substract
11
+ } from 'diagram-js/lib/util/Math';
12
+
13
+ import {
14
+ hasExternalLabel
15
+ } from '../../../util/LabelUtil';
16
+
17
+ import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
18
+ import { isConnection } from 'diagram-js/lib/util/ModelUtil';
19
+
20
+ /**
21
+ * @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
22
+ * @typedef {import('../Modeling').default} Modeling
23
+ *
24
+ * @typedef {import('../../../model/Types').Element} Element
25
+ * @typedef {import('../../../model/Types').Shape} Shape
26
+ *
27
+ * @typedef {import('diagram-js/lib/util/Types').DirectionTRBL} DirectionTRBL
28
+ */
29
+
30
+ var ALIGNMENTS = [
31
+ 'top',
32
+ 'bottom',
33
+ 'left',
34
+ 'right'
35
+ ];
36
+
37
+ var ELEMENT_LABEL_DISTANCE = 10;
38
+
39
+ /**
40
+ * A behavior that ensures that labels are positioned in a way that they do not
41
+ * overlap with other elements or connections.
42
+ *
43
+ * @param {EventBus} eventBus
44
+ * @param {Modeling} modeling
45
+ */
46
+ export default function AdaptiveLabelPositioningBehavior(eventBus, modeling) {
47
+
48
+ CommandInterceptor.call(this, eventBus);
49
+
50
+ this.postExecuted([
51
+ 'connection.create',
52
+ 'connection.layout',
53
+ 'connection.updateWaypoints'
54
+ ], function(event) {
55
+ var context = event.context,
56
+ connection = context.connection,
57
+ source = connection.source,
58
+ target = connection.target,
59
+ hints = context.hints || {};
60
+
61
+ if (hints.createElementsBehavior !== false) {
62
+ checkLabelAdjustment(source);
63
+ checkLabelAdjustment(target);
64
+ }
65
+ });
66
+
67
+
68
+ this.postExecuted([
69
+ 'label.create'
70
+ ], function(event) {
71
+ var context = event.context,
72
+ shape = context.shape,
73
+ hints = context.hints || {};
74
+
75
+ if (hints.createElementsBehavior !== false) {
76
+ checkLabelAdjustment(shape.labelTarget);
77
+ }
78
+ });
79
+
80
+
81
+ this.postExecuted([
82
+ 'elements.create'
83
+ ], function(event) {
84
+ var context = event.context,
85
+ elements = context.elements,
86
+ hints = context.hints || {};
87
+
88
+ if (hints.createElementsBehavior !== false) {
89
+ elements.forEach(function(element) {
90
+ checkLabelAdjustment(element);
91
+ });
92
+ }
93
+ });
94
+
95
+ function checkLabelAdjustment(element) {
96
+
97
+ // skip non-existing labels
98
+ if (!hasExternalLabel(element)) {
99
+ return;
100
+ }
101
+
102
+ if (isConnection(element)) {
103
+ return;
104
+ }
105
+
106
+ var optimalPosition = getOptimalPosition(element);
107
+
108
+ // no optimal position found
109
+ if (!optimalPosition) {
110
+ return;
111
+ }
112
+
113
+ adjustLabelPosition(element, optimalPosition);
114
+ }
115
+
116
+ function adjustLabelPosition(element, orientation) {
117
+
118
+ var elementMid = getMid(element),
119
+ label = element.label,
120
+ labelMid = getMid(label);
121
+
122
+ // ignore labels that are being created
123
+ if (!label.parent) {
124
+ return;
125
+ }
126
+
127
+ var elementTrbl = asTRBL(element);
128
+
129
+ var newLabelMid;
130
+
131
+ switch (orientation) {
132
+ case 'top':
133
+ newLabelMid = {
134
+ x: elementMid.x,
135
+ y: elementTrbl.top - ELEMENT_LABEL_DISTANCE - label.height / 2
136
+ };
137
+
138
+ break;
139
+
140
+ case 'left':
141
+
142
+ newLabelMid = {
143
+ x: elementTrbl.left - ELEMENT_LABEL_DISTANCE - label.width / 2,
144
+ y: elementMid.y
145
+ };
146
+
147
+ break;
148
+
149
+ case 'bottom':
150
+
151
+ newLabelMid = {
152
+ x: elementMid.x,
153
+ y: elementTrbl.bottom + ELEMENT_LABEL_DISTANCE + label.height / 2
154
+ };
155
+
156
+ break;
157
+
158
+ case 'right':
159
+
160
+ newLabelMid = {
161
+ x: elementTrbl.right + ELEMENT_LABEL_DISTANCE + label.width / 2,
162
+ y: elementMid.y
163
+ };
164
+
165
+ break;
166
+ }
167
+
168
+ var delta = substract(newLabelMid, labelMid);
169
+
170
+ modeling.moveShape(label, delta);
171
+ }
172
+
173
+ }
174
+
175
+ inherits(AdaptiveLabelPositioningBehavior, CommandInterceptor);
176
+
177
+ AdaptiveLabelPositioningBehavior.$inject = [
178
+ 'eventBus',
179
+ 'modeling'
180
+ ];
181
+
182
+
183
+ // helpers //////////////////////
184
+
185
+ /**
186
+ * Return alignments which are taken by a boundary's host element
187
+ *
188
+ * @param {Shape} element
189
+ *
190
+ * @return {DirectionTRBL[]}
191
+ */
192
+ function getTakenHostAlignments(element) {
193
+
194
+ var hostElement = element.host,
195
+ elementMid = getMid(element),
196
+ hostOrientation = getOrientation(elementMid, hostElement);
197
+
198
+ var freeAlignments;
199
+
200
+ // check whether there is a multi-orientation, e.g. 'top-left'
201
+ if (hostOrientation.indexOf('-') >= 0) {
202
+ freeAlignments = hostOrientation.split('-');
203
+ } else {
204
+ freeAlignments = [ hostOrientation ];
205
+ }
206
+
207
+ var takenAlignments = ALIGNMENTS.filter(function(alignment) {
208
+
209
+ return freeAlignments.indexOf(alignment) === -1;
210
+ });
211
+
212
+ return takenAlignments;
213
+
214
+ }
215
+
216
+ /**
217
+ * Return alignments which are taken by related connections
218
+ *
219
+ * @param {Element} element
220
+ *
221
+ * @return {DirectionTRBL[]}
222
+ */
223
+ function getTakenConnectionAlignments(element) {
224
+
225
+ var elementMid = getMid(element);
226
+
227
+ var takenAlignments = [].concat(
228
+ element.incoming.map(function(c) {
229
+ return c.waypoints[c.waypoints.length - 2 ];
230
+ }),
231
+ element.outgoing.map(function(c) {
232
+ return c.waypoints[1];
233
+ })
234
+ ).map(function(point) {
235
+ return getApproximateOrientation(elementMid, point);
236
+ });
237
+
238
+ return takenAlignments;
239
+ }
240
+
241
+ /**
242
+ * Return the optimal label position around an element
243
+ * or `undefined`, if none was found.
244
+ *
245
+ * @param {Element} element
246
+ *
247
+ * @return {DirectionTRBL|undefined}
248
+ */
249
+ function getOptimalPosition(element) {
250
+
251
+ var labelMid = getMid(element.label);
252
+
253
+ var elementMid = getMid(element);
254
+
255
+ var labelOrientation = getApproximateOrientation(elementMid, labelMid);
256
+
257
+ if (!isAligned(labelOrientation)) {
258
+ return;
259
+ }
260
+
261
+ var takenAlignments = getTakenConnectionAlignments(element);
262
+
263
+ if (element.host) {
264
+ var takenHostAlignments = getTakenHostAlignments(element);
265
+
266
+ takenAlignments = takenAlignments.concat(takenHostAlignments);
267
+ }
268
+
269
+ var freeAlignments = ALIGNMENTS.filter(function(alignment) {
270
+
271
+ return takenAlignments.indexOf(alignment) === -1;
272
+ });
273
+
274
+ // NOTHING TO DO; label already aligned a.O.K.
275
+ if (freeAlignments.indexOf(labelOrientation) !== -1) {
276
+ return;
277
+ }
278
+
279
+ return freeAlignments[0];
280
+ }
281
+
282
+ function getApproximateOrientation(p0, p1) {
283
+ return getOrientation(p1, p0, 5);
284
+ }
285
+
286
+ function isAligned(orientation) {
287
+ return ALIGNMENTS.indexOf(orientation) !== -1;
288
+ }
@@ -1,6 +1,6 @@
1
- export default class AppendBehavior extends CommandInterceptor {
2
- constructor(eventBus: any);
3
- }
4
-
5
- type EventBus = import("diagram-js/lib/core/EventBus").default;
6
- import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
1
+ export default class AppendBehavior extends CommandInterceptor {
2
+ constructor(eventBus: any);
3
+ }
4
+
5
+ type EventBus = import("diagram-js/lib/core/EventBus").default;
6
+ import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
@@ -1,43 +1,43 @@
1
- import inherits from 'inherits-browser';
2
-
3
- import { is } from '../../../util/ModelUtil';
4
-
5
- import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
6
-
7
- /**
8
- * @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
9
- */
10
-
11
- export default function AppendBehavior(eventBus) {
12
-
13
- CommandInterceptor.call(this, eventBus);
14
-
15
- // assign correct shape position unless already set
16
-
17
- this.preExecute('shape.append', function(context) {
18
-
19
- var source = context.source,
20
- shape = context.shape;
21
-
22
- if (!context.position) {
23
-
24
- if (is(shape, 'bpmn:TextAnnotation')) {
25
- context.position = {
26
- x: source.x + source.width / 2 + 75,
27
- y: source.y - 50 - shape.height / 2
28
- };
29
- } else {
30
- context.position = {
31
- x: source.x + source.width + 80 + shape.width / 2,
32
- y: source.y + source.height / 2
33
- };
34
- }
35
- }
36
- }, true);
37
- }
38
-
39
- inherits(AppendBehavior, CommandInterceptor);
40
-
41
- AppendBehavior.$inject = [
42
- 'eventBus'
1
+ import inherits from 'inherits-browser';
2
+
3
+ import { is } from '../../../util/ModelUtil';
4
+
5
+ import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
6
+
7
+ /**
8
+ * @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
9
+ */
10
+
11
+ export default function AppendBehavior(eventBus) {
12
+
13
+ CommandInterceptor.call(this, eventBus);
14
+
15
+ // assign correct shape position unless already set
16
+
17
+ this.preExecute('shape.append', function(context) {
18
+
19
+ var source = context.source,
20
+ shape = context.shape;
21
+
22
+ if (!context.position) {
23
+
24
+ if (is(shape, 'bpmn:TextAnnotation')) {
25
+ context.position = {
26
+ x: source.x + source.width / 2 + 75,
27
+ y: source.y - 50 - shape.height / 2
28
+ };
29
+ } else {
30
+ context.position = {
31
+ x: source.x + source.width + 80 + shape.width / 2,
32
+ y: source.y + source.height / 2
33
+ };
34
+ }
35
+ }
36
+ }, true);
37
+ }
38
+
39
+ inherits(AppendBehavior, CommandInterceptor);
40
+
41
+ AppendBehavior.$inject = [
42
+ 'eventBus'
43
43
  ];