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
Niklas Kiefer
c5326859b4
fix(palette): add translation support for group entry
...
Closes #1146
2019-08-07 15:23:48 +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
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
ca4e21224d
fix(modeling): fix typo
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
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
Danilo Akamine
65216cbdd5
feat(translations): add new keywords
2019-06-25 07:20:25 +00: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
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
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
Nico Rehwaldt
d0ff81a6e7
feat(label-editing): auto-activate for group
2019-06-13 16:38:50 +00:00
Nico Rehwaldt
c80f29c57f
feat(modeling): increase default group size
2019-06-13 16:38:50 +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
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
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
5e199694a1
chore(bpmn-snapping): use injector to call super
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
Nico Rehwaldt
0a6cecc609
feat(modeling): lay out connection once per event attachment
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
1da513808c
chore(bpmn-rules): remove legacy hacks
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
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
Niklas Kiefer
643ca2193c
fix(snapping): prevent participants snap to group bounds
2019-05-29 06:42:54 +00:00
Niklas Kiefer
c28aa00f3d
chore(ordering): fix typo
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
Niklas Kiefer
57f516ef32
chore(group-behavior): move category creation to util
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
Maciej Barelkowski
86b3069eaf
fix(grid-snapping): use correct align values for segment snapping
2019-05-23 16:24:06 +00: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
2dfeee7567
chore(bpmn-factory): require id for category value
2019-05-23 15:12:38 +02:00
Niklas Kiefer
569ef62f13
chore(element-factory): add default size for group
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
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
Philipp Fromme
2335282a82
fix(bpmn-create-connect-preview): override #getConnection
2019-05-09 14:12:37 +00:00
Philipp Fromme
1958b2e81b
fix(bpmn-connect-preview): override #getConnection
2019-05-09 14:12:37 +00:00
Nico Rehwaldt
d90f048e8c
chore(layout): support { source, target } hints in BpmnLayouter
...
Closes #743
2019-05-08 12:59:27 +00: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
Maciej Barelkowski
e4fe8c239b
style(modeling): simplify event-based-gateway behavior
2019-05-06 12:41:11 +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
Philipp Fromme
4388359fb1
chore(autp-place): move helper function to util
2019-04-30 09:32:42 +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
86506468ba
feat(Modeler): re-integrate grid snapping
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
Maciej Barelkowski
b72426834d
chore(Modeler): disable grid snapping
2019-04-25 10:21:05 +02:00
Maciej Barelkowski
06ffc9d407
fix(modeling/BpmnLayouter): properly lay out boundary event connections
...
Closes #891
2019-04-24 11:56:01 +00:00
Maciej Barelkowski
5438f1a0c2
chore(modeling/BpmnLayouter): refactor boundary event layout
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
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
411da58d43
chore(modeling): remove reconnect listeners
...
Listeners are triggered via layout event.
2019-04-18 16:06:44 +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
Nico Rehwaldt
daee95743d
chore(Viewer): type BPMNDiagram arg where possible
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