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.
- package/LICENSE +23 -23
- package/README.md +95 -95
- package/dist/assets/bpmn-js.css +145 -145
- package/dist/bpmn-modeler.development.js +38666 -38635
- package/dist/bpmn-modeler.production.min.js +4 -4
- package/dist/bpmn-navigated-viewer.development.js +20798 -20798
- package/dist/bpmn-navigated-viewer.production.min.js +3 -3
- package/dist/bpmn-viewer.development.js +20735 -20735
- package/dist/bpmn-viewer.production.min.js +3 -3
- package/lib/BaseModeler.d.ts +15 -15
- package/lib/BaseModeler.js +79 -79
- package/lib/BaseViewer.d.ts +352 -352
- package/lib/BaseViewer.js +858 -858
- package/lib/Modeler.d.ts +86 -86
- package/lib/Modeler.js +206 -206
- package/lib/NavigatedViewer.d.ts +11 -11
- package/lib/NavigatedViewer.js +37 -37
- package/lib/Viewer.d.ts +47 -47
- package/lib/Viewer.js +76 -76
- package/lib/core/index.d.ts +10 -10
- package/lib/core/index.js +8 -8
- package/lib/draw/BpmnRenderUtil.d.ts +123 -123
- package/lib/draw/BpmnRenderUtil.js +256 -256
- package/lib/draw/BpmnRenderer.d.ts +116 -116
- package/lib/draw/BpmnRenderer.js +2339 -2339
- package/lib/draw/PathMap.d.ts +330 -330
- package/lib/draw/PathMap.js +478 -478
- package/lib/draw/TextRenderer.d.ts +74 -74
- package/lib/draw/TextRenderer.js +136 -136
- package/lib/draw/index.d.ts +10 -10
- package/lib/draw/index.js +11 -11
- package/lib/features/align-elements/AlignElementsContextPadProvider.d.ts +32 -32
- package/lib/features/align-elements/AlignElementsContextPadProvider.js +105 -105
- package/lib/features/align-elements/AlignElementsIcons.d.ts +10 -10
- package/lib/features/align-elements/AlignElementsIcons.js +43 -43
- package/lib/features/align-elements/AlignElementsMenuProvider.d.ts +32 -32
- package/lib/features/align-elements/AlignElementsMenuProvider.js +100 -100
- package/lib/features/align-elements/BpmnAlignElements.d.ts +9 -9
- package/lib/features/align-elements/BpmnAlignElements.js +45 -45
- package/lib/features/align-elements/index.d.ts +11 -11
- package/lib/features/align-elements/index.js +23 -23
- package/lib/features/append-preview/AppendPreview.d.ts +36 -36
- package/lib/features/append-preview/AppendPreview.js +108 -108
- package/lib/features/append-preview/index.d.ts +16 -16
- package/lib/features/append-preview/index.js +15 -15
- package/lib/features/auto-place/BpmnAutoPlace.d.ts +15 -15
- package/lib/features/auto-place/BpmnAutoPlace.js +22 -22
- package/lib/features/auto-place/BpmnAutoPlaceUtil.d.ts +52 -52
- package/lib/features/auto-place/BpmnAutoPlaceUtil.js +226 -226
- package/lib/features/auto-place/index.d.ts +7 -7
- package/lib/features/auto-place/index.js +8 -8
- package/lib/features/auto-resize/BpmnAutoResize.d.ts +25 -25
- package/lib/features/auto-resize/BpmnAutoResize.js +45 -45
- package/lib/features/auto-resize/BpmnAutoResizeProvider.d.ts +26 -26
- package/lib/features/auto-resize/BpmnAutoResizeProvider.js +69 -69
- package/lib/features/auto-resize/index.d.ts +8 -8
- package/lib/features/auto-resize/index.js +12 -12
- package/lib/features/context-pad/ContextPadProvider.d.ts +62 -62
- package/lib/features/context-pad/ContextPadProvider.js +582 -582
- package/lib/features/context-pad/index.d.ts +7 -7
- package/lib/features/context-pad/index.js +22 -22
- package/lib/features/copy-paste/BpmnCopyPaste.d.ts +17 -17
- package/lib/features/copy-paste/BpmnCopyPaste.js +192 -192
- package/lib/features/copy-paste/ModdleCopy.d.ts +45 -45
- package/lib/features/copy-paste/index.d.ts +9 -9
- package/lib/features/copy-paste/index.js +13 -13
- package/lib/features/di-ordering/BpmnDiOrdering.d.ts +11 -11
- package/lib/features/di-ordering/BpmnDiOrdering.js +48 -48
- package/lib/features/di-ordering/index.d.ts +6 -6
- package/lib/features/di-ordering/index.js +7 -7
- package/lib/features/distribute-elements/BpmnDistributeElements.d.ts +10 -10
- package/lib/features/distribute-elements/BpmnDistributeElements.js +60 -60
- package/lib/features/distribute-elements/DistributeElementsIcons.d.ts +5 -5
- package/lib/features/distribute-elements/DistributeElementsIcons.js +18 -18
- package/lib/features/distribute-elements/DistributeElementsMenuProvider.d.ts +32 -32
- package/lib/features/distribute-elements/DistributeElementsMenuProvider.js +92 -92
- package/lib/features/distribute-elements/index.d.ts +9 -9
- package/lib/features/distribute-elements/index.js +19 -19
- package/lib/features/drilldown/DrilldownBreadcrumbs.d.ts +19 -19
- package/lib/features/drilldown/DrilldownBreadcrumbs.js +138 -138
- package/lib/features/drilldown/DrilldownCentering.d.ts +17 -17
- package/lib/features/drilldown/DrilldownCentering.js +122 -122
- package/lib/features/drilldown/DrilldownOverlayBehavior.d.ts +20 -20
- package/lib/features/drilldown/DrilldownOverlayBehavior.js +218 -218
- package/lib/features/drilldown/SubprocessCompatibility.d.ts +21 -21
- package/lib/features/drilldown/SubprocessCompatibility.js +266 -266
- package/lib/features/drilldown/index.d.ts +13 -13
- package/lib/features/drilldown/index.js +16 -16
- package/lib/features/editor-actions/BpmnEditorActions.d.ts +13 -13
- package/lib/features/editor-actions/BpmnEditorActions.js +187 -187
- package/lib/features/editor-actions/index.d.ts +6 -6
- package/lib/features/editor-actions/index.js +10 -10
- package/lib/features/grid-snapping/BpmnGridSnapping.d.ts +9 -9
- package/lib/features/grid-snapping/behavior/GridSnappingAutoPlaceBehavior.d.ts +14 -14
- package/lib/features/grid-snapping/behavior/GridSnappingLayoutConnectionBehavior.d.ts +27 -27
- package/lib/features/grid-snapping/behavior/GridSnappingLayoutConnectionBehavior.js +155 -155
- package/lib/features/grid-snapping/behavior/GridSnappingParticipantBehavior.d.ts +13 -13
- package/lib/features/grid-snapping/behavior/index.d.ts +10 -10
- package/lib/features/grid-snapping/index.d.ts +11 -11
- package/lib/features/interaction-events/BpmnInteractionEvents.d.ts +18 -18
- package/lib/features/interaction-events/BpmnInteractionEvents.js +146 -146
- package/lib/features/interaction-events/index.d.ts +6 -6
- package/lib/features/interaction-events/index.js +5 -5
- package/lib/features/keyboard/BpmnKeyboardBindings.d.ts +15 -15
- package/lib/features/keyboard/BpmnKeyboardBindings.js +179 -179
- package/lib/features/keyboard/index.d.ts +7 -7
- package/lib/features/keyboard/index.js +11 -11
- package/lib/features/label-editing/LabelEditingPreview.d.ts +13 -13
- package/lib/features/label-editing/LabelEditingPreview.js +145 -145
- package/lib/features/label-editing/LabelEditingProvider.d.ts +62 -62
- package/lib/features/label-editing/LabelEditingProvider.js +519 -519
- package/lib/features/label-editing/LabelUtil.d.ts +1 -1
- package/lib/features/label-editing/LabelUtil.js +4 -4
- package/lib/features/label-editing/cmd/UpdateLabelHandler.d.ts +22 -22
- package/lib/features/label-editing/cmd/UpdateLabelHandler.js +149 -149
- package/lib/features/label-editing/index.d.ts +9 -9
- package/lib/features/label-editing/index.js +21 -21
- package/lib/features/modeling/BpmnFactory.d.ts +73 -73
- package/lib/features/modeling/BpmnFactory.js +180 -180
- package/lib/features/modeling/BpmnLayouter.d.ts +30 -30
- package/lib/features/modeling/BpmnLayouter.js +488 -488
- package/lib/features/modeling/BpmnUpdater.d.ts +90 -90
- package/lib/features/modeling/BpmnUpdater.js +818 -818
- package/lib/features/modeling/ElementFactory.d.ts +117 -117
- package/lib/features/modeling/ElementFactory.js +412 -412
- package/lib/features/modeling/ElementFactory.test.ts +132 -132
- package/lib/features/modeling/Modeling.d.ts +150 -150
- package/lib/features/modeling/Modeling.js +309 -309
- package/lib/features/modeling/Modeling.test.ts +147 -147
- package/lib/features/modeling/behavior/AdaptiveLabelPositioningBehavior.d.ts +19 -19
- package/lib/features/modeling/behavior/AdaptiveLabelPositioningBehavior.js +288 -288
- package/lib/features/modeling/behavior/AppendBehavior.d.ts +6 -6
- package/lib/features/modeling/behavior/AppendBehavior.js +42 -42
- package/lib/features/modeling/behavior/AssociationBehavior.d.ts +11 -11
- package/lib/features/modeling/behavior/AttachEventBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/AttachEventBehavior.js +106 -106
- package/lib/features/modeling/behavior/BoundaryEventBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/BoundaryEventBehavior.js +74 -74
- package/lib/features/modeling/behavior/CompensateBoundaryEventBehavior.d.ts +17 -17
- package/lib/features/modeling/behavior/CompensateBoundaryEventBehavior.js +222 -222
- package/lib/features/modeling/behavior/CreateBehavior.d.ts +9 -9
- package/lib/features/modeling/behavior/CreateBehavior.js +33 -33
- package/lib/features/modeling/behavior/CreateDataObjectBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/CreateDataObjectBehavior.js +43 -43
- package/lib/features/modeling/behavior/CreateParticipantBehavior.d.ts +19 -19
- package/lib/features/modeling/behavior/CreateParticipantBehavior.js +237 -237
- package/lib/features/modeling/behavior/DataInputAssociationBehavior.d.ts +21 -21
- package/lib/features/modeling/behavior/DataInputAssociationBehavior.js +162 -162
- package/lib/features/modeling/behavior/DataStoreBehavior.d.ts +19 -19
- package/lib/features/modeling/behavior/DeleteLaneBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/DeleteLaneBehavior.js +162 -162
- package/lib/features/modeling/behavior/DetachEventBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/DetachEventBehavior.js +101 -101
- package/lib/features/modeling/behavior/DropOnFlowBehavior.d.ts +13 -13
- package/lib/features/modeling/behavior/DropOnFlowBehavior.js +221 -221
- package/lib/features/modeling/behavior/EventBasedGatewayBehavior.d.ts +11 -11
- package/lib/features/modeling/behavior/EventBasedGatewayBehavior.js +110 -110
- package/lib/features/modeling/behavior/FixHoverBehavior.d.ts +17 -17
- package/lib/features/modeling/behavior/GroupBehavior.d.ts +26 -26
- package/lib/features/modeling/behavior/ImportDockingFix.d.ts +13 -13
- package/lib/features/modeling/behavior/ImportDockingFix.js +83 -83
- package/lib/features/modeling/behavior/IsHorizontalFix.d.ts +10 -10
- package/lib/features/modeling/behavior/IsHorizontalFix.js +54 -54
- package/lib/features/modeling/behavior/LabelBehavior.d.ts +56 -56
- package/lib/features/modeling/behavior/LabelBehavior.js +364 -364
- package/lib/features/modeling/behavior/LayoutConnectionBehavior.d.ts +16 -16
- package/lib/features/modeling/behavior/LayoutConnectionBehavior.js +121 -121
- package/lib/features/modeling/behavior/MessageFlowBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/NonInterruptingBehavior.d.ts +4 -4
- package/lib/features/modeling/behavior/NonInterruptingBehavior.js +41 -41
- package/lib/features/modeling/behavior/RemoveElementBehavior.d.ts +13 -13
- package/lib/features/modeling/behavior/RemoveElementBehavior.js +91 -91
- package/lib/features/modeling/behavior/RemoveEmbeddedLabelBoundsBehavior.d.ts +16 -16
- package/lib/features/modeling/behavior/RemoveEmbeddedLabelBoundsBehavior.js +41 -41
- package/lib/features/modeling/behavior/RemoveParticipantBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/RemoveParticipantBehavior.js +59 -59
- package/lib/features/modeling/behavior/ReplaceConnectionBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/ReplaceConnectionBehavior.js +194 -194
- package/lib/features/modeling/behavior/ReplaceElementBehaviour.d.ts +23 -23
- package/lib/features/modeling/behavior/ReplaceElementBehaviour.js +144 -144
- package/lib/features/modeling/behavior/ResizeBehavior.d.ts +64 -64
- package/lib/features/modeling/behavior/ResizeBehavior.js +265 -265
- package/lib/features/modeling/behavior/ResizeLaneBehavior.d.ts +16 -16
- package/lib/features/modeling/behavior/ResizeLaneBehavior.js +70 -70
- package/lib/features/modeling/behavior/RootElementReferenceBehavior.d.ts +25 -25
- package/lib/features/modeling/behavior/SetCompensationActivityAfterPasteBehavior.d.ts +16 -16
- package/lib/features/modeling/behavior/SetCompensationActivityAfterPasteBehavior.js +66 -66
- package/lib/features/modeling/behavior/SpaceToolBehavior.d.ts +10 -10
- package/lib/features/modeling/behavior/SpaceToolBehavior.js +207 -207
- package/lib/features/modeling/behavior/SubProcessPlaneBehavior.d.ts +28 -28
- package/lib/features/modeling/behavior/SubProcessPlaneBehavior.js +588 -588
- package/lib/features/modeling/behavior/SubProcessStartEventBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/SubProcessStartEventBehavior.js +55 -55
- package/lib/features/modeling/behavior/TextAnnotationBehavior.d.ts +6 -6
- package/lib/features/modeling/behavior/TextAnnotationBehavior.js +42 -42
- package/lib/features/modeling/behavior/ToggleCollapseConnectionBehaviour.d.ts +14 -14
- package/lib/features/modeling/behavior/ToggleCollapseConnectionBehaviour.js +87 -87
- package/lib/features/modeling/behavior/ToggleElementCollapseBehaviour.d.ts +13 -13
- package/lib/features/modeling/behavior/ToggleElementCollapseBehaviour.js +156 -156
- package/lib/features/modeling/behavior/UnclaimIdBehavior.d.ts +19 -19
- package/lib/features/modeling/behavior/UnclaimIdBehavior.js +64 -64
- package/lib/features/modeling/behavior/UnsetDefaultFlowBehavior.d.ts +16 -16
- package/lib/features/modeling/behavior/UnsetDefaultFlowBehavior.js +59 -59
- package/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.d.ts +15 -15
- package/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.js +157 -157
- package/lib/features/modeling/behavior/index.d.ts +2 -2
- package/lib/features/modeling/behavior/index.js +131 -131
- package/lib/features/modeling/behavior/util/CategoryUtil.d.ts +49 -49
- package/lib/features/modeling/behavior/util/CategoryUtil.js +86 -86
- package/lib/features/modeling/behavior/util/ConnectionLayoutUtil.d.ts +19 -19
- package/lib/features/modeling/behavior/util/ConnectionLayoutUtil.js +22 -22
- package/lib/features/modeling/behavior/util/GeometricUtil.d.ts +1 -1
- package/lib/features/modeling/behavior/util/LabelLayoutUtil.d.ts +32 -32
- package/lib/features/modeling/behavior/util/LabelLayoutUtil.js +41 -41
- package/lib/features/modeling/behavior/util/LayoutUtil.d.ts +48 -48
- package/lib/features/modeling/behavior/util/LayoutUtil.js +259 -259
- package/lib/features/modeling/behavior/util/LineAttachmentUtil.d.ts +37 -37
- package/lib/features/modeling/behavior/util/LineAttachmentUtil.js +241 -241
- package/lib/features/modeling/behavior/util/LineIntersect.d.ts +13 -13
- package/lib/features/modeling/behavior/util/LineIntersect.js +39 -39
- package/lib/features/modeling/behavior/util/NonInterruptingUtil.d.ts +3 -3
- package/lib/features/modeling/behavior/util/NonInterruptingUtil.js +32 -32
- package/lib/features/modeling/behavior/util/ResizeUtil.d.ts +1 -1
- package/lib/features/modeling/cmd/AddLaneHandler.d.ts +22 -22
- package/lib/features/modeling/cmd/AddLaneHandler.js +187 -187
- package/lib/features/modeling/cmd/IdClaimHandler.d.ts +22 -22
- package/lib/features/modeling/cmd/IdClaimHandler.js +51 -51
- package/lib/features/modeling/cmd/ResizeLaneHandler.d.ts +39 -39
- package/lib/features/modeling/cmd/ResizeLaneHandler.js +146 -146
- package/lib/features/modeling/cmd/SetColorHandler.d.ts +18 -18
- package/lib/features/modeling/cmd/SplitLaneHandler.d.ts +20 -20
- package/lib/features/modeling/cmd/SplitLaneHandler.js +99 -99
- package/lib/features/modeling/cmd/UpdateCanvasRootHandler.d.ts +20 -20
- package/lib/features/modeling/cmd/UpdateCanvasRootHandler.js +99 -99
- package/lib/features/modeling/cmd/UpdateFlowNodeRefsHandler.d.ts +21 -21
- package/lib/features/modeling/cmd/UpdateFlowNodeRefsHandler.js +218 -218
- package/lib/features/modeling/cmd/UpdateModdlePropertiesHandler.d.ts +20 -20
- package/lib/features/modeling/cmd/UpdateModdlePropertiesHandler.js +107 -107
- package/lib/features/modeling/cmd/UpdatePropertiesHandler.d.ts +58 -58
- package/lib/features/modeling/cmd/UpdatePropertiesHandler.js +260 -260
- package/lib/features/modeling/cmd/UpdateSemanticParentHandler.d.ts +18 -18
- package/lib/features/modeling/index.d.ts +27 -27
- package/lib/features/modeling/index.js +45 -45
- package/lib/features/modeling/util/LaneUtil.d.ts +46 -46
- package/lib/features/modeling/util/LaneUtil.js +188 -188
- package/lib/features/modeling/util/ModelingUtil.d.ts +23 -23
- package/lib/features/modeling/util/ModelingUtil.js +88 -88
- package/lib/features/modeling-feedback/ModelingFeedback.d.ts +13 -13
- package/lib/features/modeling-feedback/ModelingFeedback.js +46 -46
- package/lib/features/modeling-feedback/index.d.ts +7 -7
- package/lib/features/modeling-feedback/index.js +12 -12
- package/lib/features/ordering/BpmnOrderingProvider.d.ts +19 -19
- package/lib/features/ordering/BpmnOrderingProvider.js +191 -191
- package/lib/features/ordering/index.d.ts +6 -6
- package/lib/features/ordering/index.js +5 -5
- package/lib/features/outline/OutlineProvider.d.ts +39 -39
- package/lib/features/outline/OutlineProvider.js +189 -189
- package/lib/features/outline/OutlineUtil.d.ts +23 -23
- package/lib/features/outline/OutlineUtil.js +35 -35
- package/lib/features/outline/index.d.ts +7 -7
- package/lib/features/outline/index.js +10 -10
- package/lib/features/palette/PaletteProvider.d.ts +34 -34
- package/lib/features/palette/PaletteProvider.js +214 -214
- package/lib/features/palette/index.d.ts +9 -9
- package/lib/features/palette/index.js +23 -23
- package/lib/features/popup-menu/ReplaceMenuProvider.d.ts +52 -52
- package/lib/features/popup-menu/ReplaceMenuProvider.js +629 -677
- package/lib/features/popup-menu/index.d.ts +11 -11
- package/lib/features/popup-menu/index.js +16 -16
- package/lib/features/popup-menu/util/Icons.d.ts +5 -5
- package/lib/features/popup-menu/util/Icons.js +14 -14
- package/lib/features/popup-menu/util/TypeUtil.d.ts +14 -14
- package/lib/features/popup-menu/util/TypeUtil.js +52 -52
- package/lib/features/replace/BpmnReplace.d.ts +45 -45
- package/lib/features/replace/BpmnReplace.js +391 -391
- package/lib/features/replace/ReplaceOptions.d.ts +79 -75
- package/lib/features/replace/ReplaceOptions.js +998 -919
- package/lib/features/replace/index.d.ts +9 -9
- package/lib/features/replace/index.js +14 -14
- package/lib/features/replace-preview/BpmnReplacePreview.d.ts +17 -17
- package/lib/features/replace-preview/BpmnReplacePreview.js +139 -139
- package/lib/features/replace-preview/index.d.ts +7 -7
- package/lib/features/replace-preview/index.js +11 -11
- package/lib/features/rules/BpmnRules.d.ts +181 -181
- package/lib/features/rules/BpmnRules.js +1191 -1191
- package/lib/features/rules/index.d.ts +7 -7
- package/lib/features/rules/index.js +11 -11
- package/lib/features/search/BpmnSearchProvider.d.ts +34 -34
- package/lib/features/search/BpmnSearchProvider.js +91 -91
- package/lib/features/search/index.d.ts +7 -7
- package/lib/features/search/index.js +14 -14
- package/lib/features/snapping/BpmnConnectSnapping.d.ts +17 -17
- package/lib/features/snapping/BpmnCreateMoveSnapping.d.ts +41 -41
- package/lib/features/snapping/BpmnCreateMoveSnapping.js +289 -289
- package/lib/features/snapping/BpmnSnappingUtil.d.ts +11 -11
- package/lib/features/snapping/index.d.ts +9 -9
- package/lib/features/snapping/index.js +12 -12
- package/lib/features/space-tool/BpmnSpaceTool.d.ts +21 -21
- package/lib/features/space-tool/BpmnSpaceTool.js +69 -69
- package/lib/features/space-tool/index.d.ts +6 -6
- package/lib/features/space-tool/index.js +7 -7
- package/lib/import/BpmnImporter.d.ts +51 -51
- package/lib/import/BpmnImporter.js +363 -363
- package/lib/import/BpmnTreeWalker.d.ts +20 -20
- package/lib/import/BpmnTreeWalker.js +453 -453
- package/lib/import/Importer.d.ts +25 -25
- package/lib/import/Importer.js +222 -222
- package/lib/import/Util.d.ts +1 -1
- package/lib/import/Util.js +6 -6
- package/lib/import/index.d.ts +6 -6
- package/lib/import/index.js +9 -9
- package/lib/index.d.ts +1 -1
- package/lib/index.js +2 -2
- package/lib/model/Types.d.ts +25 -25
- package/lib/model/Types.ts +40 -40
- package/lib/util/CompatibilityUtil.d.ts +8 -8
- package/lib/util/CompatibilityUtil.js +29 -29
- package/lib/util/DiUtil.d.ts +60 -60
- package/lib/util/DiUtil.js +122 -122
- package/lib/util/DrilldownUtil.d.ts +39 -39
- package/lib/util/DrilldownUtil.js +69 -69
- package/lib/util/LabelUtil.d.ts +83 -83
- package/lib/util/LabelUtil.js +266 -266
- package/lib/util/ModelUtil.d.ts +40 -40
- package/lib/util/ModelUtil.js +58 -58
- package/lib/util/PoweredByUtil.d.ts +8 -8
- package/lib/util/PoweredByUtil.js +99 -99
- package/lib/util/Types.js +4 -4
- package/lib/util/Types.ts +3 -3
- package/package.json +131 -131
- package/test/helper/TranslationCollector.js +15 -15
- package/test/helper/index.js +313 -313
- package/test/matchers/BoundsMatchers.js +252 -252
- package/test/matchers/ConnectionMatchers.js +165 -165
- package/test/matchers/JSONMatcher.js +19 -19
- package/test/util/KeyEvents.js +22 -22
- package/test/util/MockEvents.js +61 -61
- package/test/util/custom-rules/CustomRules.js +16 -16
- package/test/util/custom-rules/index.js +6 -6
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A component that makes sure that Associations connected to Connections
|
|
3
|
-
* are updated together with the Connection.
|
|
4
|
-
*
|
|
5
|
-
*/
|
|
6
|
-
export default class LayoutConnectionBehavior extends CommandInterceptor {
|
|
7
|
-
/**
|
|
8
|
-
* @param eventBus
|
|
9
|
-
* @param modeling
|
|
10
|
-
*/
|
|
11
|
-
constructor(eventBus: EventBus, modeling: Modeling);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
type EventBus = import("diagram-js/lib/core/EventBus").default;
|
|
15
|
-
type Modeling = import("../Modeling").default;
|
|
16
|
-
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
1
|
+
/**
|
|
2
|
+
* A component that makes sure that Associations connected to Connections
|
|
3
|
+
* are updated together with the Connection.
|
|
4
|
+
*
|
|
5
|
+
*/
|
|
6
|
+
export default class LayoutConnectionBehavior extends CommandInterceptor {
|
|
7
|
+
/**
|
|
8
|
+
* @param eventBus
|
|
9
|
+
* @param modeling
|
|
10
|
+
*/
|
|
11
|
+
constructor(eventBus: EventBus, modeling: Modeling);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
type EventBus = import("diagram-js/lib/core/EventBus").default;
|
|
15
|
+
type Modeling = import("../Modeling").default;
|
|
16
|
+
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
@@ -1,121 +1,121 @@
|
|
|
1
|
-
import {
|
|
2
|
-
assign
|
|
3
|
-
} from 'min-dash';
|
|
4
|
-
|
|
5
|
-
import inherits from 'inherits-browser';
|
|
6
|
-
|
|
7
|
-
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
8
|
-
|
|
9
|
-
import { getConnectionAdjustment as getConnectionAnchorPoint } from './util/ConnectionLayoutUtil';
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
|
|
13
|
-
* @typedef {import('../Modeling').default} Modeling
|
|
14
|
-
*/
|
|
15
|
-
|
|
16
|
-
/**
|
|
17
|
-
* A component that makes sure that Associations connected to Connections
|
|
18
|
-
* are updated together with the Connection.
|
|
19
|
-
*
|
|
20
|
-
* @param {EventBus} eventBus
|
|
21
|
-
* @param {Modeling} modeling
|
|
22
|
-
*/
|
|
23
|
-
export default function LayoutConnectionBehavior(eventBus, modeling) {
|
|
24
|
-
|
|
25
|
-
CommandInterceptor.call(this, eventBus);
|
|
26
|
-
|
|
27
|
-
function getnewAnchorPoint(event, point) {
|
|
28
|
-
|
|
29
|
-
var context = event.context,
|
|
30
|
-
connection = context.connection,
|
|
31
|
-
hints = assign({}, context.hints),
|
|
32
|
-
newWaypoints = context.newWaypoints || connection.waypoints,
|
|
33
|
-
oldWaypoints = context.oldWaypoints;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
if (typeof hints.startChanged === 'undefined') {
|
|
37
|
-
hints.startChanged = !!hints.connectionStart;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
if (typeof hints.endChanged === 'undefined') {
|
|
41
|
-
hints.endChanged = !!hints.connectionEnd;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
|
-
return getConnectionAnchorPoint(point, newWaypoints, oldWaypoints, hints);
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
this.postExecute([
|
|
48
|
-
'connection.layout',
|
|
49
|
-
'connection.updateWaypoints'
|
|
50
|
-
], function(event) {
|
|
51
|
-
var context = event.context;
|
|
52
|
-
|
|
53
|
-
var connection = context.connection,
|
|
54
|
-
outgoing = connection.outgoing,
|
|
55
|
-
incoming = connection.incoming;
|
|
56
|
-
|
|
57
|
-
incoming.forEach(function(connection) {
|
|
58
|
-
var endPoint = connection.waypoints[connection.waypoints.length - 1];
|
|
59
|
-
var newEndpoint = getnewAnchorPoint(event, endPoint);
|
|
60
|
-
|
|
61
|
-
var newWaypoints = [].concat(connection.waypoints.slice(0, -1), [ newEndpoint ]);
|
|
62
|
-
|
|
63
|
-
modeling.updateWaypoints(connection, newWaypoints);
|
|
64
|
-
});
|
|
65
|
-
|
|
66
|
-
outgoing.forEach(function(connection) {
|
|
67
|
-
var startpoint = connection.waypoints[0];
|
|
68
|
-
var newStartpoint = getnewAnchorPoint(event, startpoint);
|
|
69
|
-
|
|
70
|
-
var newWaypoints = [].concat([ newStartpoint ], connection.waypoints.slice(1));
|
|
71
|
-
|
|
72
|
-
modeling.updateWaypoints(connection, newWaypoints);
|
|
73
|
-
});
|
|
74
|
-
|
|
75
|
-
});
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
this.postExecute([
|
|
79
|
-
'connection.move'
|
|
80
|
-
], function(event) {
|
|
81
|
-
var context = event.context;
|
|
82
|
-
|
|
83
|
-
var connection = context.connection,
|
|
84
|
-
outgoing = connection.outgoing,
|
|
85
|
-
incoming = connection.incoming,
|
|
86
|
-
delta = context.delta;
|
|
87
|
-
|
|
88
|
-
incoming.forEach(function(connection) {
|
|
89
|
-
var endPoint = connection.waypoints[connection.waypoints.length - 1];
|
|
90
|
-
var newEndpoint = {
|
|
91
|
-
x: endPoint.x + delta.x,
|
|
92
|
-
y: endPoint.y + delta.y
|
|
93
|
-
};
|
|
94
|
-
|
|
95
|
-
var newWaypoints = [].concat(connection.waypoints.slice(0, -1), [ newEndpoint ]);
|
|
96
|
-
|
|
97
|
-
modeling.updateWaypoints(connection, newWaypoints);
|
|
98
|
-
});
|
|
99
|
-
|
|
100
|
-
outgoing.forEach(function(connection) {
|
|
101
|
-
var startpoint = connection.waypoints[0];
|
|
102
|
-
var newStartpoint = {
|
|
103
|
-
x: startpoint.x + delta.x,
|
|
104
|
-
y: startpoint.y + delta.y
|
|
105
|
-
};
|
|
106
|
-
|
|
107
|
-
var newWaypoints = [].concat([ newStartpoint ], connection.waypoints.slice(1));
|
|
108
|
-
|
|
109
|
-
modeling.updateWaypoints(connection, newWaypoints);
|
|
110
|
-
});
|
|
111
|
-
|
|
112
|
-
});
|
|
113
|
-
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
inherits(LayoutConnectionBehavior, CommandInterceptor);
|
|
117
|
-
|
|
118
|
-
LayoutConnectionBehavior.$inject = [
|
|
119
|
-
'eventBus',
|
|
120
|
-
'modeling'
|
|
121
|
-
];
|
|
1
|
+
import {
|
|
2
|
+
assign
|
|
3
|
+
} from 'min-dash';
|
|
4
|
+
|
|
5
|
+
import inherits from 'inherits-browser';
|
|
6
|
+
|
|
7
|
+
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
8
|
+
|
|
9
|
+
import { getConnectionAdjustment as getConnectionAnchorPoint } from './util/ConnectionLayoutUtil';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
|
|
13
|
+
* @typedef {import('../Modeling').default} Modeling
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* A component that makes sure that Associations connected to Connections
|
|
18
|
+
* are updated together with the Connection.
|
|
19
|
+
*
|
|
20
|
+
* @param {EventBus} eventBus
|
|
21
|
+
* @param {Modeling} modeling
|
|
22
|
+
*/
|
|
23
|
+
export default function LayoutConnectionBehavior(eventBus, modeling) {
|
|
24
|
+
|
|
25
|
+
CommandInterceptor.call(this, eventBus);
|
|
26
|
+
|
|
27
|
+
function getnewAnchorPoint(event, point) {
|
|
28
|
+
|
|
29
|
+
var context = event.context,
|
|
30
|
+
connection = context.connection,
|
|
31
|
+
hints = assign({}, context.hints),
|
|
32
|
+
newWaypoints = context.newWaypoints || connection.waypoints,
|
|
33
|
+
oldWaypoints = context.oldWaypoints;
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
if (typeof hints.startChanged === 'undefined') {
|
|
37
|
+
hints.startChanged = !!hints.connectionStart;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
if (typeof hints.endChanged === 'undefined') {
|
|
41
|
+
hints.endChanged = !!hints.connectionEnd;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return getConnectionAnchorPoint(point, newWaypoints, oldWaypoints, hints);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
this.postExecute([
|
|
48
|
+
'connection.layout',
|
|
49
|
+
'connection.updateWaypoints'
|
|
50
|
+
], function(event) {
|
|
51
|
+
var context = event.context;
|
|
52
|
+
|
|
53
|
+
var connection = context.connection,
|
|
54
|
+
outgoing = connection.outgoing,
|
|
55
|
+
incoming = connection.incoming;
|
|
56
|
+
|
|
57
|
+
incoming.forEach(function(connection) {
|
|
58
|
+
var endPoint = connection.waypoints[connection.waypoints.length - 1];
|
|
59
|
+
var newEndpoint = getnewAnchorPoint(event, endPoint);
|
|
60
|
+
|
|
61
|
+
var newWaypoints = [].concat(connection.waypoints.slice(0, -1), [ newEndpoint ]);
|
|
62
|
+
|
|
63
|
+
modeling.updateWaypoints(connection, newWaypoints);
|
|
64
|
+
});
|
|
65
|
+
|
|
66
|
+
outgoing.forEach(function(connection) {
|
|
67
|
+
var startpoint = connection.waypoints[0];
|
|
68
|
+
var newStartpoint = getnewAnchorPoint(event, startpoint);
|
|
69
|
+
|
|
70
|
+
var newWaypoints = [].concat([ newStartpoint ], connection.waypoints.slice(1));
|
|
71
|
+
|
|
72
|
+
modeling.updateWaypoints(connection, newWaypoints);
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
});
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
this.postExecute([
|
|
79
|
+
'connection.move'
|
|
80
|
+
], function(event) {
|
|
81
|
+
var context = event.context;
|
|
82
|
+
|
|
83
|
+
var connection = context.connection,
|
|
84
|
+
outgoing = connection.outgoing,
|
|
85
|
+
incoming = connection.incoming,
|
|
86
|
+
delta = context.delta;
|
|
87
|
+
|
|
88
|
+
incoming.forEach(function(connection) {
|
|
89
|
+
var endPoint = connection.waypoints[connection.waypoints.length - 1];
|
|
90
|
+
var newEndpoint = {
|
|
91
|
+
x: endPoint.x + delta.x,
|
|
92
|
+
y: endPoint.y + delta.y
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
var newWaypoints = [].concat(connection.waypoints.slice(0, -1), [ newEndpoint ]);
|
|
96
|
+
|
|
97
|
+
modeling.updateWaypoints(connection, newWaypoints);
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
outgoing.forEach(function(connection) {
|
|
101
|
+
var startpoint = connection.waypoints[0];
|
|
102
|
+
var newStartpoint = {
|
|
103
|
+
x: startpoint.x + delta.x,
|
|
104
|
+
y: startpoint.y + delta.y
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
var newWaypoints = [].concat([ newStartpoint ], connection.waypoints.slice(1));
|
|
108
|
+
|
|
109
|
+
modeling.updateWaypoints(connection, newWaypoints);
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
});
|
|
113
|
+
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
inherits(LayoutConnectionBehavior, CommandInterceptor);
|
|
117
|
+
|
|
118
|
+
LayoutConnectionBehavior.$inject = [
|
|
119
|
+
'eventBus',
|
|
120
|
+
'modeling'
|
|
121
|
+
];
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* BPMN-specific message flow behavior.
|
|
3
|
-
*
|
|
4
|
-
*/
|
|
5
|
-
export default class MessageFlowBehavior extends CommandInterceptor {
|
|
6
|
-
/**
|
|
7
|
-
* @param eventBus
|
|
8
|
-
* @param modeling
|
|
9
|
-
*/
|
|
10
|
-
constructor(eventBus: EventBus, modeling: Modeling);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
type EventBus = import("diagram-js/lib/core/EventBus").default;
|
|
14
|
-
type Modeling = import("../Modeling").default;
|
|
15
|
-
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
1
|
+
/**
|
|
2
|
+
* BPMN-specific message flow behavior.
|
|
3
|
+
*
|
|
4
|
+
*/
|
|
5
|
+
export default class MessageFlowBehavior extends CommandInterceptor {
|
|
6
|
+
/**
|
|
7
|
+
* @param eventBus
|
|
8
|
+
* @param modeling
|
|
9
|
+
*/
|
|
10
|
+
constructor(eventBus: EventBus, modeling: Modeling);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
type EventBus = import("diagram-js/lib/core/EventBus").default;
|
|
14
|
+
type Modeling = import("../Modeling").default;
|
|
15
|
+
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export default class NonInterruptingBehavior extends CommandInterceptor {
|
|
2
|
-
constructor(injector: any, modeling: any);
|
|
3
|
-
}
|
|
4
|
-
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
1
|
+
export default class NonInterruptingBehavior extends CommandInterceptor {
|
|
2
|
+
constructor(injector: any, modeling: any);
|
|
3
|
+
}
|
|
4
|
+
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
2
|
-
import inherits from 'inherits-browser';
|
|
3
|
-
|
|
4
|
-
import { canBeNonInterrupting, getInterruptingProperty } from './util/NonInterruptingUtil';
|
|
5
|
-
import { getBusinessObject } from '../../../util/ModelUtil';
|
|
6
|
-
|
|
7
|
-
export default function NonInterruptingBehavior(injector, modeling) {
|
|
8
|
-
injector.invoke(CommandInterceptor, this);
|
|
9
|
-
|
|
10
|
-
this.postExecuted('shape.replace', function(event) {
|
|
11
|
-
const oldShape = event.context.oldShape;
|
|
12
|
-
const newShape = event.context.newShape;
|
|
13
|
-
const hints = event.context.hints;
|
|
14
|
-
|
|
15
|
-
if (!canBeNonInterrupting(newShape)) {
|
|
16
|
-
return;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
const property = getInterruptingProperty(newShape);
|
|
20
|
-
const isExplicitChange = hints.targetElement && hints.targetElement[property] !== undefined;
|
|
21
|
-
|
|
22
|
-
if (isExplicitChange) {
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
const isOldInterrupting = getBusinessObject(oldShape).get(property);
|
|
27
|
-
const isNewInterruptingDefault = getBusinessObject(newShape).get(property);
|
|
28
|
-
|
|
29
|
-
if (isOldInterrupting === isNewInterruptingDefault) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
modeling.updateProperties(newShape, {
|
|
34
|
-
[property]: isOldInterrupting
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
NonInterruptingBehavior.$inject = [ 'injector', 'modeling' ];
|
|
40
|
-
|
|
41
|
-
inherits(NonInterruptingBehavior, CommandInterceptor);
|
|
1
|
+
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
2
|
+
import inherits from 'inherits-browser';
|
|
3
|
+
|
|
4
|
+
import { canBeNonInterrupting, getInterruptingProperty } from './util/NonInterruptingUtil';
|
|
5
|
+
import { getBusinessObject } from '../../../util/ModelUtil';
|
|
6
|
+
|
|
7
|
+
export default function NonInterruptingBehavior(injector, modeling) {
|
|
8
|
+
injector.invoke(CommandInterceptor, this);
|
|
9
|
+
|
|
10
|
+
this.postExecuted('shape.replace', function(event) {
|
|
11
|
+
const oldShape = event.context.oldShape;
|
|
12
|
+
const newShape = event.context.newShape;
|
|
13
|
+
const hints = event.context.hints;
|
|
14
|
+
|
|
15
|
+
if (!canBeNonInterrupting(newShape)) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
const property = getInterruptingProperty(newShape);
|
|
20
|
+
const isExplicitChange = hints.targetElement && hints.targetElement[property] !== undefined;
|
|
21
|
+
|
|
22
|
+
if (isExplicitChange) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
const isOldInterrupting = getBusinessObject(oldShape).get(property);
|
|
27
|
+
const isNewInterruptingDefault = getBusinessObject(newShape).get(property);
|
|
28
|
+
|
|
29
|
+
if (isOldInterrupting === isNewInterruptingDefault) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
modeling.updateProperties(newShape, {
|
|
34
|
+
[property]: isOldInterrupting
|
|
35
|
+
});
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
NonInterruptingBehavior.$inject = [ 'injector', 'modeling' ];
|
|
40
|
+
|
|
41
|
+
inherits(NonInterruptingBehavior, CommandInterceptor);
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
export default class RemoveElementBehavior extends CommandInterceptor {
|
|
2
|
-
/**
|
|
3
|
-
* @param eventBus
|
|
4
|
-
* @param bpmnRules
|
|
5
|
-
* @param modeling
|
|
6
|
-
*/
|
|
7
|
-
constructor(eventBus: EventBus, bpmnRules: BpmnRules, modeling: Modeling);
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
type EventBus = import("diagram-js/lib/core/EventBus").default;
|
|
11
|
-
type BpmnRules = import("../../rules/BpmnRules").default;
|
|
12
|
-
type Modeling = import("../Modeling").default;
|
|
13
|
-
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
1
|
+
export default class RemoveElementBehavior extends CommandInterceptor {
|
|
2
|
+
/**
|
|
3
|
+
* @param eventBus
|
|
4
|
+
* @param bpmnRules
|
|
5
|
+
* @param modeling
|
|
6
|
+
*/
|
|
7
|
+
constructor(eventBus: EventBus, bpmnRules: BpmnRules, modeling: Modeling);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
type EventBus = import("diagram-js/lib/core/EventBus").default;
|
|
11
|
+
type BpmnRules = import("../../rules/BpmnRules").default;
|
|
12
|
+
type Modeling = import("../Modeling").default;
|
|
13
|
+
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
@@ -1,92 +1,92 @@
|
|
|
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
|
-
import lineIntersect from './util/LineIntersect';
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
|
|
11
|
-
* @typedef {import('../../rules/BpmnRules').default} BpmnRules
|
|
12
|
-
* @typedef {import('../Modeling').default} Modeling
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* @param {EventBus} eventBus
|
|
17
|
-
* @param {BpmnRules} bpmnRules
|
|
18
|
-
* @param {Modeling} modeling
|
|
19
|
-
*/
|
|
20
|
-
export default function RemoveElementBehavior(eventBus, bpmnRules, modeling) {
|
|
21
|
-
|
|
22
|
-
CommandInterceptor.call(this, eventBus);
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Combine sequence flows when deleting an element
|
|
26
|
-
* if there is one incoming and one outgoing
|
|
27
|
-
* sequence flow
|
|
28
|
-
*/
|
|
29
|
-
this.preExecute('shape.delete', function(e) {
|
|
30
|
-
|
|
31
|
-
var shape = e.context.shape;
|
|
32
|
-
|
|
33
|
-
// only handle [a] -> [shape] -> [b] patterns
|
|
34
|
-
if (shape.incoming.length !== 1 || shape.outgoing.length !== 1) {
|
|
35
|
-
return;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
var inConnection = shape.incoming[0],
|
|
39
|
-
outConnection = shape.outgoing[0];
|
|
40
|
-
|
|
41
|
-
// only handle sequence flows
|
|
42
|
-
if (!is(inConnection, 'bpmn:SequenceFlow') || !is(outConnection, 'bpmn:SequenceFlow')) {
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
if (bpmnRules.canConnect(inConnection.source, outConnection.target, inConnection)) {
|
|
47
|
-
|
|
48
|
-
// compute new, combined waypoints
|
|
49
|
-
var newWaypoints = getNewWaypoints(inConnection.waypoints, outConnection.waypoints);
|
|
50
|
-
|
|
51
|
-
modeling.reconnectEnd(inConnection, outConnection.target, newWaypoints);
|
|
52
|
-
}
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
inherits(RemoveElementBehavior, CommandInterceptor);
|
|
58
|
-
|
|
59
|
-
RemoveElementBehavior.$inject = [
|
|
60
|
-
'eventBus',
|
|
61
|
-
'bpmnRules',
|
|
62
|
-
'modeling'
|
|
63
|
-
];
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
// helpers //////////////////////
|
|
67
|
-
|
|
68
|
-
function getDocking(point) {
|
|
69
|
-
return point.original || point;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
function getNewWaypoints(inWaypoints, outWaypoints) {
|
|
74
|
-
|
|
75
|
-
var intersection = lineIntersect(
|
|
76
|
-
getDocking(inWaypoints[inWaypoints.length - 2]),
|
|
77
|
-
getDocking(inWaypoints[inWaypoints.length - 1]),
|
|
78
|
-
getDocking(outWaypoints[1]),
|
|
79
|
-
getDocking(outWaypoints[0]));
|
|
80
|
-
|
|
81
|
-
if (intersection) {
|
|
82
|
-
return [].concat(
|
|
83
|
-
inWaypoints.slice(0, inWaypoints.length - 1),
|
|
84
|
-
[ intersection ],
|
|
85
|
-
outWaypoints.slice(1));
|
|
86
|
-
} else {
|
|
87
|
-
return [
|
|
88
|
-
getDocking(inWaypoints[0]),
|
|
89
|
-
getDocking(outWaypoints[outWaypoints.length - 1])
|
|
90
|
-
];
|
|
91
|
-
}
|
|
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
|
+
import lineIntersect from './util/LineIntersect';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* @typedef {import('diagram-js/lib/core/EventBus').default} EventBus
|
|
11
|
+
* @typedef {import('../../rules/BpmnRules').default} BpmnRules
|
|
12
|
+
* @typedef {import('../Modeling').default} Modeling
|
|
13
|
+
*/
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* @param {EventBus} eventBus
|
|
17
|
+
* @param {BpmnRules} bpmnRules
|
|
18
|
+
* @param {Modeling} modeling
|
|
19
|
+
*/
|
|
20
|
+
export default function RemoveElementBehavior(eventBus, bpmnRules, modeling) {
|
|
21
|
+
|
|
22
|
+
CommandInterceptor.call(this, eventBus);
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Combine sequence flows when deleting an element
|
|
26
|
+
* if there is one incoming and one outgoing
|
|
27
|
+
* sequence flow
|
|
28
|
+
*/
|
|
29
|
+
this.preExecute('shape.delete', function(e) {
|
|
30
|
+
|
|
31
|
+
var shape = e.context.shape;
|
|
32
|
+
|
|
33
|
+
// only handle [a] -> [shape] -> [b] patterns
|
|
34
|
+
if (shape.incoming.length !== 1 || shape.outgoing.length !== 1) {
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
var inConnection = shape.incoming[0],
|
|
39
|
+
outConnection = shape.outgoing[0];
|
|
40
|
+
|
|
41
|
+
// only handle sequence flows
|
|
42
|
+
if (!is(inConnection, 'bpmn:SequenceFlow') || !is(outConnection, 'bpmn:SequenceFlow')) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
if (bpmnRules.canConnect(inConnection.source, outConnection.target, inConnection)) {
|
|
47
|
+
|
|
48
|
+
// compute new, combined waypoints
|
|
49
|
+
var newWaypoints = getNewWaypoints(inConnection.waypoints, outConnection.waypoints);
|
|
50
|
+
|
|
51
|
+
modeling.reconnectEnd(inConnection, outConnection.target, newWaypoints);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
inherits(RemoveElementBehavior, CommandInterceptor);
|
|
58
|
+
|
|
59
|
+
RemoveElementBehavior.$inject = [
|
|
60
|
+
'eventBus',
|
|
61
|
+
'bpmnRules',
|
|
62
|
+
'modeling'
|
|
63
|
+
];
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
// helpers //////////////////////
|
|
67
|
+
|
|
68
|
+
function getDocking(point) {
|
|
69
|
+
return point.original || point;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
function getNewWaypoints(inWaypoints, outWaypoints) {
|
|
74
|
+
|
|
75
|
+
var intersection = lineIntersect(
|
|
76
|
+
getDocking(inWaypoints[inWaypoints.length - 2]),
|
|
77
|
+
getDocking(inWaypoints[inWaypoints.length - 1]),
|
|
78
|
+
getDocking(outWaypoints[1]),
|
|
79
|
+
getDocking(outWaypoints[0]));
|
|
80
|
+
|
|
81
|
+
if (intersection) {
|
|
82
|
+
return [].concat(
|
|
83
|
+
inWaypoints.slice(0, inWaypoints.length - 1),
|
|
84
|
+
[ intersection ],
|
|
85
|
+
outWaypoints.slice(1));
|
|
86
|
+
} else {
|
|
87
|
+
return [
|
|
88
|
+
getDocking(inWaypoints[0]),
|
|
89
|
+
getDocking(outWaypoints[outWaypoints.length - 1])
|
|
90
|
+
];
|
|
91
|
+
}
|
|
92
92
|
}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* BPMN specific behavior ensuring that bpmndi:Label's dc:Bounds are removed
|
|
3
|
-
* when shape is resized.
|
|
4
|
-
*
|
|
5
|
-
*/
|
|
6
|
-
export default class RemoveEmbeddedLabelBoundsBehavior extends CommandInterceptor {
|
|
7
|
-
/**
|
|
8
|
-
* @param eventBus
|
|
9
|
-
* @param modeling
|
|
10
|
-
*/
|
|
11
|
-
constructor(eventBus: EventBus, modeling: Modeling);
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
type EventBus = import("diagram-js/lib/core/EventBus").default;
|
|
15
|
-
type Modeling = import("../Modeling").default;
|
|
16
|
-
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
1
|
+
/**
|
|
2
|
+
* BPMN specific behavior ensuring that bpmndi:Label's dc:Bounds are removed
|
|
3
|
+
* when shape is resized.
|
|
4
|
+
*
|
|
5
|
+
*/
|
|
6
|
+
export default class RemoveEmbeddedLabelBoundsBehavior extends CommandInterceptor {
|
|
7
|
+
/**
|
|
8
|
+
* @param eventBus
|
|
9
|
+
* @param modeling
|
|
10
|
+
*/
|
|
11
|
+
constructor(eventBus: EventBus, modeling: Modeling);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
type EventBus = import("diagram-js/lib/core/EventBus").default;
|
|
15
|
+
type Modeling = import("../Modeling").default;
|
|
16
|
+
import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|