Commit Graph

997 Commits

Author SHA1 Message Date
Niklas Kiefer 8efb20c03e fix(context-pad): do not open replace menu if context pad not open
Related to camunda/camunda-modeler#1613
2019-12-16 09:49:37 +00:00
Nico Rehwaldt d6adc51ddd test(modeling): make move stress test runnable again 2019-12-12 23:25:39 +01:00
Philipp Fromme 477217c891 feat(copy-paste): copy error, escalation, message and signal references
* copy references when copying element
* add referenced root element if it doesn't exist
* do NOT add referenced root element if root element with same ID exists

Related to camunda/camunda-modeler#1049.
Related to camunda/camunda-modeler#1463.
2019-12-11 23:08:14 +01:00
Niklas Kiefer 3ad47af299 Merge branch 'master' into develop 2019-12-11 14:55:38 +01:00
Nico Rehwaldt bb94b206a7 feat(project): provide Base{Viewer|Modeler} distributions
This allows users to use the viewer / modeler features without
inheriting our modules.

Related to #258
2019-12-11 13:28:35 +01:00
Niklas Kiefer 9f8a724e9a fix(modeling): do not crop waypoints on pasting
Related to camunda/camunda-modeler#1611
2019-12-11 11:18:54 +00:00
Nico Rehwaldt 74411387a4 test(project): update test diagrams (namespace only) 2019-12-11 10:52:43 +00:00
Nico Rehwaldt b4b5d1d139 fix(modeling): correct creation of nested lanes
With diagram-js@5 we've introduced the CreateBehavior that ensures
elements are not created on top of lanes but always on top of the actual
participant.

Unfortunately we forgot about the fact that lanes are created once in a
while, too.

This commit accounts for this fact and ensures we do not adjust the
parent of to-be-created lanes.

(A test cases for splitting nested lanes did not exist until now).

Closes #1254
Closes #1253
2019-12-11 10:52:43 +00:00
Nico Rehwaldt c8eedf959f test(project): verify flowNodeRefs updating 2019-12-11 10:52:43 +00:00
Nico Rehwaldt 4d9a9f7252 chore(project): rename test bundles 2019-12-10 15:58:47 +01:00
Philipp Fromme 448a8250ab Merge branch 'master' into develop 2019-12-09 12:54:24 +01:00
Nico Rehwaldt 1b576cda17 test(project): make sinon an allowed global 2019-12-09 12:52:35 +01:00
Nico Rehwaldt a66e9a5c8d test(copy-paste): assert elements.changed behavior 2019-12-09 12:52:35 +01:00
Nico Rehwaldt a1be2ea631 test(project): register BpmnJS in integration tests 2019-12-09 08:32:04 +00:00
Nico Rehwaldt 991ab38c3d feat(test): expose BpmnJS set and clear utilities 2019-12-09 08:32:04 +00:00
Nico Rehwaldt 4455c3fc35 fix(modeling/behavior): hook UpdateFlowNodeRefs behavior in on elements.create 2019-12-06 15:24:54 +00:00
Nico Rehwaldt d769e6ddb0 fix(grid-snapping): do not update waypoints on multiple create
Related to https://github.com/camunda/camunda-modeler/issues/1617
2019-12-06 15:24:54 +00:00
Philipp Fromme b2b607f558 fix(adaptive-label-positioning): do not adjust on paste
Related to camunda/camunda-modeler#1617
2019-11-29 20:38:16 +00:00
Nico Rehwaldt 748674fb35 fix(modeling): correctly fix hover on cleanup, too
Related to #1599
2019-11-25 17:42:58 +00:00
Nico Rehwaldt 6527e7d116 fix(draw): render colored BPMN group elements
Related to https://github.com/camunda/camunda-modeler/issues/1598
2019-11-25 14:44:43 +00:00
Philipp Fromme c8559cd4d9 chore(element-factory): fix test description 2019-11-20 15:53:53 +01:00
Philipp Fromme 8722b6e3c2 fix(element-factory): use BPMN factory to ensure IDs
Closes #1162
2019-11-20 14:41:09 +00:00
Philipp Fromme ec13d8e7b8 chore(copy-paste): add failing test case verifying #798
Failing test case was removed during refactoring.

Related to #798.
2019-11-19 23:54:12 +01:00
Philipp Fromme c8412c27f2 fix(modeling): update association parent on source or target move
Closes #683
2019-11-19 15:27:56 +00:00
Nico Rehwaldt e9687562d0 test(popup-menu): further simplify ReplaceMenuProviderSpec 2019-11-18 16:10:10 +00:00
Philipp Fromme 06e1478fc8 chore(rules): remove <connection.reconnectStart/End> rule 2019-11-18 13:38:19 +01:00
Philipp Fromme 1fa167088c feat(hover-fix): fix hover
* fix start instead of source
2019-11-18 13:38:19 +01:00
Philipp Fromme ca53ab56bb feat(modeling): replace connection on reconnect 2019-11-18 13:38:19 +01:00
Philipp Fromme ef5a72d722 Merge branch 'master' into develop 2019-11-18 11:03:25 +01:00
Philipp Fromme fe11c2ee78 fix(modeling): unclaim ID on shape/connection delete
* unclaim ID of deleted shapes and connections
* unclaim ID of referenced processes when deleting participant
* this does NOT ensure we unclaim IDs of elements like DI, events, errors, ...

Related to camunda/camunda-modeler#1503
Related to #608
2019-11-18 09:57:51 +01:00
Philipp Fromme dd3a139a29 fix(replace): do not resize on replace sub process with ad hoc
Requires bpmn-io/diagram-js#432
Closes #1231
2019-11-15 14:04:08 +01:00
Maciej Barelkowski 7041a1ab9b test(popup-menu): remove dependency on internals 2019-11-13 10:26:21 +01:00
Philipp Fromme e68978bf66 fix(bpmn-renderer): properly escape marker ids
Only characters and numbers are allowed. Anything else will be escaped.

Closes #1209
2019-11-07 21:58:09 +00:00
Maciej Barelkowski 5aa162efcd chore(project): use source maps in tests 2019-11-06 11:54:02 +01:00
Oguz Eroglu 64d360575b fix(modeling): skip moving if label is not yet created.
Related to https://github.com/zeebe-io/zeebe-modeler/issues/134
2019-10-25 13:16:43 +00:00
Oguz Eroglu 41c6af1830 feat(adaptive-label-positioning): adjust label position post creation
Closes #1220
2019-10-14 14:48:32 +00:00
Philipp Fromme 2e27d74306 feat(modeling): copy and paste boundary events
* allow copying boundary events without host
* remove CreateBoundaryEventBehavior in favor of AttachEventBehavior

Closes #1154
Closes #1202
Closes #1204
Closes #1205
2019-10-13 23:19:52 +02:00
Philipp Fromme 59de7598b1 Merge branch 'master' into develop 2019-10-11 16:38:08 +02:00
Philipp Fromme 44cceb5da2 fix(adaptive-label-positioning): ignore labels that are being created
Closes #1211
2019-10-11 16:29:30 +02:00
Philipp Fromme 168a1493b2 fix(modeling): do not duplicate flow node refs
Closes: https://github.com/camunda/camunda-modeler/issues/1504
2019-10-11 16:29:24 +02:00
Philipp Fromme 5bed0aeca5 Merge branch 'master' into develop 2019-09-27 14:33:32 +02:00
ssoorriiin 37bcd070e8 fix(modeling): do not remove default sequence flow on type change
* do not remove default sequence flow when changing type to intermediate catch

Closes #1197
2019-09-27 14:33:08 +02:00
ssoorriiin b290078600 fix(modeling): do not remove sequence flow condition on type change
* do not remove sequence flow condition when changing type to intermediate catch

Closes #1199
2019-09-27 14:30:55 +02:00
Niklas Kiefer 0143595230 Merge branch 'master' into develop 2019-09-25 13:34:54 +02:00
Philipp Fromme a74d838dc7 fix(copy-paste): do NOT copy generic properties
Related to camunda/camunda-modeler#1507
2019-09-25 13:09:00 +02:00
Philipp Fromme 5736cfe794 Merge branch 'master' into develop 2019-09-24 14:41:03 +02:00
Oguz Eroglu d55e3afe35 fix(copy-paste): copy attacher properties
Closes #1190
2019-09-24 12:34:15 +00:00
Philipp Fromme 51232830e2 Merge branch 'master' into develop 2019-09-23 08:59:02 +02:00
Philipp Fromme f177a462ea fix(viewer): do not clear diagram if no diagram to clear
Closes #1181
2019-09-20 11:11:49 +00:00
Philipp Fromme 83e9f05efa fix(connect-snapping): snap to sub process mid
Related to camunda/camunda-modeler#1436
2019-09-13 14:29:38 +00:00
Niklas Kiefer dcf440b076 fix(auto-place): complete direct editing on auto place
Related to camunda/camunda-modeler#1502
2019-09-12 07:55:34 +02:00
Philipp Fromme 5294133a58 Merge branch 'master' into develop 2019-09-11 16:57:23 +02:00
Oguz Eroglu 86c61b0c0d fix(snapping): snap to task mid
Related to https://github.com/camunda/camunda-modeler/issues/1436
2019-09-11 16:56:40 +02:00
Jonathan Irwin aea527775e chore(context-pad): update spelling 2019-09-09 14:45:41 +02:00
Philipp Fromme ddaa3f0b03 fix(keyboard-move-selection): ensure moving lanes is not possible
Closes #943
2019-09-06 15:27:23 +00:00
Philipp Fromme 2f001e1f4a feat(copy-paste): copy process properties
Clone the linked process when copying a participant.

This ensures that properties attached to the process
are not getting lost.

Closes #1161
2019-09-06 15:27:31 +02:00
Philipp Fromme e1d8a67527 fix(drop-on-flow-behavior): handle shape created with bounds
* take into account that shapes can be created with position OR bounds

Fixes #1178
2019-08-29 12:47:53 +00:00
Nico Rehwaldt 70e8da3b9d Merge branch 'master' into develop 2019-08-21 09:53:30 +02:00
Philipp Fromme 6aaf816802 fix(bpmn-layouter): get preferred layout from orientation
Requires https://github.com/bpmn-io/diagram-js/pull/401

Closes #1121
2019-08-21 06:58:15 +00:00
Maciej Barelkowski 33156e43be chore(project): fix linting errors 2019-08-19 14:27:33 +00:00
Niklas Kiefer 5a7d579d3a fix(import): handle data associations on boundary import
Closes #1170
2019-08-19 08:19:04 +00:00
Maciej Barelkowski 6ed51fc036 fix(rules): allow to create attachments
Related to https://github.com/camunda/camunda-modeler/issues/1462
2019-08-13 08:40:37 +00:00
Niklas Kiefer 715d2cca2e fix(label-editing): prevent direct editing after create
Closes #1164
2019-08-13 06:20:34 +00:00
Maciej Barelkowski bf180321a3 fix(modeling): repair event based gateway target pasting
The incoming connections of an event based gateway
target should not be removed when pasting.

Closes #1163
2019-08-12 12:16:45 +00:00
Philipp Fromme 891e0e044d test(grid-snapping): verify start event mid snapping
Closes #1158
2019-08-09 20:30:48 +02:00
Niklas Kiefer 1470d043ba feat(palette): select start event when creating sub process
* use autoSelect hint to only select start event after create

Related to #1152
2019-08-09 12:40:22 +00:00
Philipp Fromme 969472ec9f fix(rules): always allow copying labels
* basic copy rules are implemented in diagram-js CopyPaste e.g. labels can only be copied when their label target is copied

Closes #1153
2019-08-08 09:33:02 +00:00
Philipp Fromme d6b8acc715 fix(copy-paste): copy name property
Closes #921
2019-08-08 07:50:23 +00:00
Philipp Fromme 194b963959 chore(copy-paste): rework and base upon diagram-js@5
* use <copyPaste.canCopyProperty> event to copy category value when copying group
* add camunda-bpmn-moddle for integration tests

BREAKING CHANGES

* CopyPaste: remove <property.clone>, add <moddleCopy.canCopyProperties>, <moddleCopy.canCopyProperty>, <moddleCopy.canSetCopiedProperty>
* BpmnRules: removed <elements.paste> rule in favor of <elements.create> rule
* BpmnRules: removed <element.paste> rule
* ElementFactory: use <attrs.di> property instead of <attrs.colors> for fill and stroke when creating element through ElementFactory#createBpmnElement
2019-08-07 16:03:55 +00:00
Philipp Fromme 14bf3a32ee feat(create): create multiple elements
* add <elements.create> rule for creating multiple elements
* handle creating multiple elements in CreateParticipantBehavior
* create sub process with start event through palette
2019-08-07 16:03:55 +00:00
Nico Rehwaldt 1f706fd9b8 Merge branch 'master' into develop 2019-08-05 14:14:07 +02:00
Niklas Kiefer 5d5f33c38b fix(create-participant-behavior): ensure available children
* Ensure there are leftover children to calculate createConstraints

Closes #1133
2019-08-05 09:56:18 +00:00
Maciej Barelkowski 4ca0a6c9fb Merge branch 'master' into develop 2019-07-22 15:37:51 +02:00
Nico Rehwaldt e7d66b4461 fix(rules): disallow dropping on labels and groups
* test create
* disallow drop on label
* disallow drop on group
* verify create group everywhere

Required by https://github.com/camunda/camunda-modeler/issues/1431
2019-07-22 15:37:07 +02:00
Philipp Fromme d0044f8313 fix(graphics-factory): add test case verifying fix
Related to #1129
2019-07-18 15:46:08 +02:00
Philipp Fromme ab56fc21ad feat(modeling): prevent accidential dragging of container elements
This implements custom hit areas for participants, lanes and
expanded subprocesses.

Given these changes, users need to grab container elements
on the boarder or the label area to move them.

Closes https://github.com/bpmn-io/bpmn-js/issues/957
2019-07-18 15:42:05 +02:00
Maciej Barelkowski 9ee90ef089 fix(modeling): correctly create connection replacement
Closes https://github.com/bpmn-io/bpmn-js/issues/1072
2019-07-02 12:21:49 +00:00
Maciej Barelkowski 23505a4783 Revert "feat(modeling): prevent accidential dragging of container elements"
This reverts commit 7b0e304062.

Related to https://github.com/camunda/camunda-modeler/issues/1416
Opens https://github.com/bpmn-io/bpmn-js/issues/957
2019-07-02 08:12:41 +00:00
Niklas Kiefer 9e52e4ee3e feat(group-behavior): set copied name value to pasted group elements
Closes camunda/camunda-modeler#1417
2019-07-02 07:42:22 +00:00
Niklas Kiefer e31c4d13ed chore(copy-paste): ensure pasted group has new category value
Relates to camunda/camunda-modeler#1417
2019-07-02 07:42:22 +00:00
Niklas Kiefer b7d6d62184 feat(label-behavior): correctly retrieve label from element
Relates to camunda/camunda-modeler#1417
2019-07-02 07:42:22 +00:00
Maciej Barelkowski 9c063f867b feat(Viewer): restore Viewer#importDefinitions
This was removed in f8f9334, but it occurred that
the method is used productively  by some of the clients.
This commit restores the method as part of public API.

Use `Viewer#importDefinitions` to import previously
parsed definitions. Now it is also possible to pass
the diagram or diagram id to be rendered during
graphical import.
2019-06-28 10:26:58 +02:00
Maciej Barelkowski ff45cab7c1 test(Viewer): correctly call done 2019-06-28 10:26:58 +02:00
Nico Rehwaldt 3b4251967d feat(snapping): add TRBL snapping against containers
Adds TRBL snapping with containers only.

Closes #1104
2019-06-27 13:09:22 +00:00
Sergio Rossi 92bdcb83eb feat(bpmn-renderer): correctly render all parallel and multiple events
Closes #1090
2019-06-27 10:41:27 +00:00
Nico Rehwaldt fdb299dc88 feat(modeling): allow to drag participant via nested lane
Related to https://github.com/bpmn-io/bpmn-js/issues/957
2019-06-25 18:01:40 +02:00
Philipp Fromme 7b0e304062 feat(modeling): prevent accidential dragging of container elements
This implements custom hit areas for participants, lanes and
expanded subprocesses.

Given these changes, users need to grab container elements
on the boarder or the label area to move them.

Closes https://github.com/bpmn-io/bpmn-js/issues/957
2019-06-25 18:01:40 +02:00
Maciej Barelkowski 890e466161 fix(bpmn-rules): allow to drop Boundary Events only on containers
Closes https://github.com/bpmn-io/bpmn-js/issues/1095
2019-06-24 13:47:08 +00:00
Niklas Kiefer 827df52e4b test(modeling): add test for center-to-center connection
Relates to #1087
2019-06-19 13:26:17 +00:00
Niklas Kiefer 9b9ff934d2 feat(snapping): snap to task mid on center interaction
Closes #1086
2019-06-19 13:26:17 +00:00
Niklas Kiefer cfad2f49aa feat(snapping): restore center snapping for Gateways and Events
Closes #1079
2019-06-19 13:26:17 +00:00
Nico Rehwaldt ca64b1b353 test(draw): fix broken test diagram 2019-06-18 11:31:15 +00:00
Nico Rehwaldt 19be51abc7 feat(modeling): ignore lanes when connecting message flows
Closes #950

Related to camunda/camunda-modeler#1213
2019-06-18 07:07:03 +00:00
Nico Rehwaldt 055fdf75e1 feat(modeling): allow label and group movement everywhere, round two
This partially reverts 0c0932d4c6f54181d7f06a626ef109ae7c00dccb.

Closes #1076
2019-06-18 07:07:03 +00:00
Nico Rehwaldt 5a69f9c0bc chore(modeling/behavior): rename Create -> FixHover behavior 2019-06-18 07:07:03 +00:00
Philipp Fromme bef75b2435 fix(snapping): snap to docking points
Closes #1081
2019-06-17 18:54:28 +00:00
Nico Rehwaldt 06cd481146 fix(grid-snapping): correctly update snapped waypoints
* make side-effect free
* use Modeling#updateWaypoints for actual update
2019-06-17 12:34:09 +00:00
Niklas Kiefer 405669e376 feat(bpmn-rules): ignore labels movement visually
* Set canMove to null if external label

Closes #1054
2019-06-13 08:44:41 +00:00
Maciej Barelkowski a09e0a3bed feat(bpmn-snapping): snap boundary event loop when close to source
Closes #903
2019-06-12 20:46:39 +02:00
Maciej Barelkowski 085cedfda1 feat(layout): correctly lay out Boundary Event loops
Loops will now be laid out with respect to minimum
second segment width.
2019-06-12 20:46:39 +02:00
Maciej Barelkowski d80076a034 feat(bpmn-snapping): snap inside the target instead of target center 2019-06-12 20:46:39 +02:00
Maciej Barelkowski eadc1fb159 test(layout): remove awesome test 2019-06-12 20:46:39 +02:00
Maciej Barelkowski 6eba64d666 test(layout): extract boundary event loop tests 2019-06-12 20:46:39 +02:00
Niklas Kiefer 144157f9eb feat(label-behavior): move external label after resizing
* Generate reference point for external label 
* Adjust label position after resizing due to reference point delta

Closes #1051
2019-06-11 22:15:18 +00:00
Niklas Kiefer 4777b42f63 chore(label-behavior): move test file
* Adjust to fit the existing behavior test file structure
2019-06-11 22:15:18 +00:00
Maciej Barelkowski debb96f49d test(modeling): ensure reconnecting data association works
Closes #1008
2019-06-06 17:42:48 +00:00
Maciej Barelkowski dd3d7e9c64 fix(modeling): fix selection during reconnection with replacement
Closes #896
2019-06-06 09:10:56 +00:00
Maciej Barelkowski 4c10420017 feat(modeling): replace connection with correct type if rules allow
As a side effect, this corrects also the layout of the replacement.

Closes #1049
2019-06-06 09:10:56 +00:00
Philipp Fromme 8815b73599 feat(grid-snapping): snap width and height on create first participant
Closes #1061
2019-06-05 15:50:47 +02:00
Philipp Fromme a98c8e3bc8 chore(bpmn-snapping): seperate snapping into create/move and connect
* move create/move snapping to BpmnCreateMoveSnapping
* move connect snapping to BpmnConnectSnapping
* refactor tests

Related camunda/camunda-modeler#1290
2019-06-05 14:36:39 +02:00
Philipp Fromme a4e160c48b chore(bpmn-snapping): move create behavior to seperate behavior 2019-06-05 14:36:39 +02:00
Philipp Fromme d42d5e3448 chore(resize-behavior): move resize behavior to seperate behavior
* setting minimum bounds and resize constraints moved to ResizeBehavior

Related to #1290
2019-06-05 14:36:39 +02:00
Philipp Fromme ca12ac91a4 chore(bpmn-snapping): move participant fitting to participant behavior
Related to #1290
2019-06-05 14:36:39 +02:00
Niklas Kiefer 8862865e2a feat(modeling): improve label positioning for boundary events
* Do not allow placing label onto host

Relates to camunda/camunda-modeler#1206
2019-06-05 06:04:42 +00:00
Maciej Barelkowski 2804e559e9 test(layout): skip connection preview test for create 2019-06-04 19:46:05 +02:00
Nico Rehwaldt 0a6cecc609 feat(modeling): lay out connection once per event attachment 2019-06-04 17:44:47 +00:00
Maciej Barelkowski d14e3735a4 test(layout): verify attached event connection layout 2019-06-04 17:44:47 +00:00
Maciej Barelkowski 9dbc3c88df feat(modeling): allow to attach intermediate event with connections
Closes #478
2019-06-04 17:44:47 +00:00
Maciej Barelkowski 33f9e7be6e feat(modeling): allow to attach events with event definition
This feature is allowed only for events which have their boundary
counteparts, i.e. intermediate throw, message catch, timer catch,
signal catch and conditional catch events.
2019-06-04 17:44:47 +00:00
Maciej Barelkowski 1e9aceecd7 feat(modeling): create boundary event via moving intermediate event 2019-06-04 17:44:47 +00:00
Maciej Barelkowski c1052383da feat(modeling): layout connection once per detachment 2019-06-04 16:07:13 +02:00
Maciej Barelkowski 4d6c8586e4 feat(modeling): allow to detach Boundary Events
Closes #1045
2019-06-04 16:07:13 +02:00
Maciej Barelkowski ecf9118a09 style(bpmn-replace): lint tests 2019-06-04 16:07:13 +02:00
Maciej Barelkowski 66bc72d5e3 test(modeling): remove doubled module in test setup 2019-06-04 16:07:13 +02:00
Maciej Barelkowski ba5bf31e42 fix(bpmn-rules): correctly evaluate waypoints update rule
Closes #1048
2019-06-03 09:56:39 +00:00
Gustavo E. Jimenez Folta 3a0f044d9e feat(modeling): add subprocess with start event included
When:

1. Creating expanded subprocess from palette.
2. Replacing task with expanded subprocess.
2019-05-29 16:05:22 +02:00
Philipp Fromme 9e5a5f4944 fix(layout-connection-behavior): do NOT snap on reconnect start and end
Closes #1056
2019-05-29 09:46:30 +00:00
Gustavo E. Jimenez Folta bc5a3f803e revert: feat(modeling): prevent expanded subprocess overlap of previous content
This reverts commit 05fea05834.
2019-05-29 11:23:41 +02:00
Gustavo E. Jimenez Folta 68635fcb33 revert: test(modeling/behavior): remove unnecessary sinon usage
This reverts commit 82dbcc9451.
2019-05-29 11:23:29 +02:00
Niklas Kiefer 643ca2193c fix(snapping): prevent participants snap to group bounds 2019-05-29 06:42:54 +00:00
Niklas Kiefer 46c5a8cb36 fix(ordering): render group elements on collaboration level
Closes #1043
2019-05-29 06:42:54 +00:00
Niklas Kiefer 93a4a579dd feat(label-editing): create categoryValue if not exist
Relates to #955
2019-05-28 06:46:53 +00:00
Niklas Kiefer fb3398fa39 feat(label-editing): enable direct editing for group labels
* Adds external label for Groups
* Modifies referenced categoryValue

Closes #955
2019-05-28 06:46:53 +00:00
Niklas Kiefer f6f9ac29f2 chore(draw): remove internal label for groups 2019-05-28 06:46:53 +00:00
Philipp Fromme bc4b6cbfd8 fix(tests): fix custom elements tests
* in the context of bpmn-js returning true when asked wether two elements can be connected is not sufficient
* remove BpmnConnectionPreview since it's not needed after tests are fixed

Closes #1034
2019-05-23 18:26:12 +02:00
Niklas Kiefer 92640b9c06 test(group-behavior): add test for existing categoryValueRef 2019-05-23 15:12:38 +02:00
Niklas Kiefer a7e3980059 feat(modeling/behaviors): add GroupBehavior
* Create new Category + Value for every new Group
* Cleanup on Group deletion
2019-05-23 15:12:38 +02:00
Niklas Kiefer 20f6d9ab03 feat(palette): add group-entry
Closes #954
2019-05-23 15:12:38 +02:00
Niklas Kiefer 1575b5b26f fix(copy-paste): adjust categoryValueRef when group is copied
Closes #958
2019-05-20 07:56:27 +00:00
Nico Rehwaldt 576a3dec15 fix(rules): do not allow message flows to outside diagram shapes
Closes #1033
2019-05-17 11:01:29 +00:00
Maciej Barelkowski 87bfe23ff8 feat(connection-preview): support general connection preview
Closes #744
2019-05-17 11:15:06 +02:00
Maciej Barelkowski 654fa067d4 test(modeling): verify re-connect preview layout 2019-05-17 11:15:06 +02:00
Gustavo E. Jimenez Folta 82dbcc9451 test(modeling/behavior): remove unnecessary sinon usage 2019-05-16 15:25:15 +02:00
Philipp Fromme 05fea05834 feat(modeling): prevent expanded subprocess overlap of previous content
This covers two scenarios:

1. When a shape is replaced with an expanded subprocess
2. When a subprocess is toggled from collapsed to expanded

Only when:

1. There are incoming sequence flows (previous content)
2. There are no outgoing sequence flows (following content)
2019-05-15 16:57:32 +02:00
Philipp Fromme 62d7746e81 feat(bpmn-snapping): snap shape to itself
Closes #993
2019-05-13 07:25:26 +00:00
Philipp Fromme 8b4ddd53c0 chore(bpmn-auto-resize): add test 2019-05-10 07:22:51 +00:00
Maciej Barelkowski 2bdb36919d test(modeling): verify connection preview layout 2019-05-09 14:12:37 +00:00
Philipp Fromme 2335282a82 fix(bpmn-create-connect-preview): override #getConnection 2019-05-09 14:12:37 +00:00
Maciej Barelkowski 48fcececbf test(layout): add integration test for connection preview 2019-05-08 12:59:27 +00:00
Niklas Kiefer 883d6c8ad3 test(ResizeShape): add test coverage
* Restructure tests to make them more clear
* Add tests for businessObject updates (especially groups)
2019-05-07 14:36:32 +02:00
Philipp Fromme 175e395768 feat(ordering): always render groups on top
Closes #979
2019-05-07 14:36:32 +02:00
Niklas Kiefer bf2dfe4338 feat(rules): add resizing of groups
Closes #956
2019-05-07 14:36:32 +02:00
Niklas Kiefer 89886d7c12 feat(ElementFactory): add #isFrame property on group creation
This allows basic support for diagram-js frame elements.

Closes #959
Closes #960
2019-05-07 14:36:32 +02:00
Philipp Fromme 13f1e05ee7 feat(grid-snapping): integrate with connection layout
Closes #1010
Related to #973
2019-05-07 10:08:35 +02:00
Gustavo E. Jimenez Folta 424a05a18a feat(modeling): correctly handle event based gateway connections
Handles two new scenarios:

1. A user wants to connect an event-based gateway to an event-based
gateway target with existing incoming sequence flows. The existing
sequence flows are removed before connecting the new one.

2. A user wants to replace a gateway, that is already connected to
event-based gateway targets, with an event-based gateway. The existing
incoming sequence flows of the targets, which do not belong to the
newly replaced event-based gateway, are removed before the replacement
operation finishes.

This is because target elements in an event gateway configuration
must not have any additional incoming sequence flows other than
that from the event gateway.
2019-05-06 12:41:11 +02:00
Gustavo E. Jimenez Folta b6e9c2186a fix(BpmnRules): update canConnectSequenceFlow()
This prevents multiple incoming sequence flows to target events of an
event-based gateway when the connection source is not an event-based
gateway.
2019-05-06 12:41:11 +02:00
Philipp Fromme 867b41c04f feat(grid-snapping): integrate grid snapping with auto place feature
Closes #1003
2019-04-30 09:32:42 +00:00
Nico Rehwaldt d73ffd5991 style(tests): adopt cleaner pattern 2019-04-29 12:04:01 +00:00
Nico Rehwaldt 5affe25705 feat(modeling): adjust default collapsed participant height to 60px
This better aligns our collapse behavior with other tools.
2019-04-29 12:04:01 +00:00
Nico Rehwaldt 02848564cf test(grid-snapping): use bound matcher 2019-04-26 18:31:36 +00:00
Philipp Fromme fa2e472361 feat(grid-snapping): integrate auto resize
Related to camunda/camunda-modeler#1344
Related to camunda/camunda-modeler#1349
2019-04-26 18:31:36 +00:00
Philipp Fromme 3b756e0725 feat(grid-snapping): snap resizable elements top-left
Related to camunda/camunda-modeler#1344
2019-04-26 18:31:36 +00:00
Nico Rehwaldt 2935b23ee4 test(modeling/behavior): reorganize label positioning behavior specs 2019-04-25 16:27:58 +02:00
Maciej Barelkowski 06ffc9d407 fix(modeling/BpmnLayouter): properly lay out boundary event connections
Closes #891
2019-04-24 11:56:01 +00:00
Gustavo E. Jimenez Folta 0f7b8f483c feat(replace): auto-resize height when toggling pool collapse/expand 2019-04-23 15:56:50 +02:00
Nico Rehwaldt a40b95cf2f test(modeling): verify connection layouting on element removal
Closes #989
2019-04-18 18:15:31 +02:00
Maciej Barelkowski 55ca4c8f3d chore(modeling/label): adjust label position to laid out connection
Closes #718
2019-04-18 16:06:44 +00:00
Maciej Barelkowski 6c191590b5 test(modeling/layout): expect layout on reconnect end 2019-04-18 16:06:44 +00:00
Maciej Barelkowski 6a396fb947 test(modeling/layout): add integration test for reconnection 2019-04-18 16:06:44 +00:00
Philipp Fromme 76ed2b4c26 fix(tests): fix Firefox 2019-04-18 14:42:01 +00:00
Nico Rehwaldt 65e4a1ab19 test(draw): double check marker coloring
* improves color detection to not fail on CI
* verifies message flow markers are being re-used
2019-04-18 14:42:01 +00:00
Nico Rehwaldt f106187a98 test(draw): in-source colors diagram
* don'r rely on diagram in fixtures
2019-04-18 14:42:01 +00:00
Nico Rehwaldt 13e3752f94 fix(draw): render hex and rgb encoded color markers
Until now we did not properly sanitize the IDs we create for colored
markers. This would make the marker retrival fail with fill and
stroke colors encoded in hex and rgb(a, b, c) form.

This commit improves the situation by removing forbidden chars from
the marker ID.

Closes #981
Related to camunda/camunda-modeler#1342
2019-04-18 14:42:01 +00:00
Maciej Barelkowski 0affb3b3bc test(Viewer): simplify multiple-diagrams test cases 2019-04-16 15:20:12 +02:00
Maciej Barelkowski 87c1d2d142 test(Viewer): expect no warnings when DIs use same elements 2019-04-16 15:20:12 +02:00
Maciej Barelkowski a7c0bb8f57 test(Viewer): make sure it opens only selected diagram 2019-04-16 15:20:12 +02:00
Nico Rehwaldt 7b03e5289a test(import): verify duplicate DI import behavior 2019-04-16 15:20:12 +02:00
Nico Rehwaldt ba987734f8 test(Viewer): make diagram names human readable 2019-04-16 15:20:12 +02:00
Nico Rehwaldt 2f99cff34a test(Viewer): verify non-args #open 2019-04-16 15:20:12 +02:00
Nico Rehwaldt b1ee678fe3 test(Viewer): split config -> container handling into own describe 2019-04-16 15:20:12 +02:00
Nico Rehwaldt a78f8037c7 test(Viewer): group multiple diagram handling 2019-04-16 15:20:12 +02:00
Valerio Spadaro 3f0583ad5f feat(Viewer): add #open method
This adds a method to switch displayed diagram without reimporting
xml via

```
var viewer = new Viewer({ container: container });
viewer.importXML(xml, diagramId, done);

var diagrams = viewer.getDefinitions().diagrams;
viewer.open(diagrams[1], done);
```
2019-04-16 15:20:12 +02:00
Valerio Spadaro 1c0585aaaf feat(Viewer): allow to select diagram to view
This introduces a new parameter to `Viewer#importXML`
which enables to choose the diagram to display.

```
var viewer = new Viewer({ container: container });
viewer.importXML(xml, diagramId, done);
```

Closes #87
2019-04-16 15:20:12 +02:00
Maciej Barelkowski 0c71ad30a0 feat(Viewer): remove businessObject#di binding on #clear
Closes #978
2019-04-16 15:10:43 +02:00
Maciej Barelkowski 00b7d9ecc2 fix(import/BpmnTreeWalker): pass context to unhandled process handler 2019-04-16 09:15:14 +00:00
Maciej Barelkowski 8eced8a3fb test(modeling): ensure layout is done after element removal
* adjust test suite to pass with diagram-js@3.2
* verify new cropping behavior
* verify #940 is fixed
2019-04-10 19:08:49 +00:00
Maciej Barelkowski 6f7925080c chore(modeling/BpmnUpdater): remove now unnecessary crop on reconnect
As of diagram-js@3.2.0 layouting will be triggered
on reconnectStart / reconnectEnd.

Related to #940
2019-04-10 19:08:49 +00:00
Nico Rehwaldt 3348c9e207 style(project): reformat test diagram 2019-03-29 13:21:34 +00:00
Nico Rehwaldt 8ca4c1d7b0 feat(modeling): allow basic movement of DataInput / DataOutput
Allow moving DataInput / DataOutput as
long as they do not leave their original
container.

Related to #951
2019-03-29 13:21:34 +00:00
Nico Rehwaldt fe9d4ff06d feat(modeling): ensure wrapping DataInput/Output in participant works 2019-03-29 13:21:34 +00:00
Nico Rehwaldt 8c49cb679b fix(modeling): properly handle DataInput / DataOutput move
Closes #961
2019-03-29 13:21:34 +00:00
Nico Rehwaldt 4c270a01e4 test(Modeler): add data input / output editing spec 2019-03-26 11:55:36 +01:00
Nico Rehwaldt 2fff30a284 feat(label-editing): support data input/output
Related to #951
2019-03-26 11:55:36 +01:00
Nico Rehwaldt 89719de3be feat(import): render DataInput and DataOutput labels
Related to #951
Related to camunda/camunda-modeler#1324
2019-03-26 11:55:36 +01:00
Nico Rehwaldt 1538bd8a9e style(tests): use appropriate chai matcher 2019-03-12 08:56:03 +00:00
Nico Rehwaldt 45486f2afe fix(import): gracefully handle missing waypoints
This ensures we do not blow up if a diagram
is missing waypoints for connections.

Related to camunda/camunda-modeler#1294
2019-03-12 08:56:03 +00:00
Nico Rehwaldt 0a9efb793b test(modeling/behavior): localize test diagram 2019-03-12 08:56:03 +00:00
Maciej Barelkowski 39d4f1c57e feat(modeling): set isHorizontal=true for partipant/lane DIs
Closes #934
2019-01-31 10:46:16 +00:00
Nico Rehwaldt b00c673c7d test(project): use built-in progress reporter
* yields performance gains up to 30% compared to spec reporter
2019-01-10 12:36:02 +01:00
Nico Rehwaldt 31271059d4 fix(ordering): render labels always on top 2018-12-04 13:48:12 +00:00