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
31271059d4
fix(ordering): render labels always on top
2018-12-04 13:48:12 +00:00
Nico Rehwaldt
7aad42d178
fix(modeling): limit flow join behavior to bpmn:SequenceFlows
...
Closes #917
2018-11-30 09:32:05 +00:00
Nico Rehwaldt
b410eed96f
test(keyboard): use standard KeyEvents util
2018-11-21 09:41:52 +01:00
Niklas Kiefer
e6c073ebea
test(Modeler): add regression test for correct module injection
2018-11-06 13:56:53 +00:00
Nico Rehwaldt
a94406e423
feat(modeler): (re-)integrate selection moving via keyboard
...
Closes #376
2018-10-29 14:52:41 +00:00
Nico Rehwaldt
a525c633a2
chore(keyboard): register keys backed by editor actions only
...
* only register keyboard bindings that are backed by actual
editor actions
* rename BpmnKeyBindings -> BpmnKeyboardBindings for parity with
diagram-js@latest
* sub-class and override _keyboardBindings_ service provided
by diagram-js
* extend spec to verify default actions
2018-10-29 14:52:41 +00:00
Nico Rehwaldt
b60feba531
test(Viewer): verify editor action support
2018-10-29 14:52:41 +00:00
Nico Rehwaldt
a348092230
test(NavigatedViewer): verify editor action support
2018-10-29 14:52:41 +00:00
Nico Rehwaldt
37e38e9a2a
test(Modeler): verify existing editorActions
2018-10-29 14:52:41 +00:00
Maciej Barelkowski
f0610721c9
feat(keyboard): use key value for bindings
...
`KeyboardEvent.keyCode` is deprecated, so the BpmnKeyBindings will
use non-deprecated `KeyboardEvent.key` instead.
2018-10-29 14:52:41 +00:00
Niklas Kiefer
acd2fe520b
feat(draw): render group names
...
Closes #844
2018-10-25 14:32:07 +02:00
Philipp Fromme
6d54ff34e3
chore(boundary-event-behavior): clean up tests
2018-10-17 14:31:40 +00:00
Niklas Kiefer
178e1cfccb
fix(modeling/behaviors): add a behavior that deletes attached boundaries after replacing a gateway with an event based gateway
2018-10-17 13:12:31 +00:00
Niklas Kiefer
b3e4b1dc1f
fix(modeling/behaviors): add behavior for deleting boundaries on receive tasks after connecting to event based gateway
2018-10-16 10:53:57 +00:00
Niklas Kiefer
ea681df2d3
fix(bpmn-rules): adjust canAttach rule for boundary events after event based gateways
2018-10-16 10:53:57 +00:00
Maciej Barelkowski
ba42e9edde
feat(global-connect): use rules for connection starting
...
* remove `BpmnGlobalConnect` provider
* use `connection.start` rule to determine whether
an element can start a connection
Closes #565
Closes #870
BREAKING CHANGE:
* `BpmnGlobalConnect` got removed. Add `connection.start`
rule to specify whether connection should be allowed.
2018-10-11 09:28:30 +00:00
Nico Rehwaldt
e54a3a7692
test(draw): visually verify label rendering
2018-09-20 22:18:10 +02:00
Nico Rehwaldt
374c7d7f18
fix(rules): correct bpmn:Lane insert rule
...
Closes #855
2018-08-29 00:38:03 +02:00
Nico Rehwaldt
6689af6f5b
feat(snapping): snap message flows to bpmn:Event mid
...
This snaps source / target to the element mid, if
the element is a `bpmn:Event`.
There is usually no more than one snap point for
an event other than the center.
Closes #850
2018-08-22 14:43:16 +02:00
Nico Rehwaldt
905ee6f667
fix(rules): allow labels to be dropped everywhere
...
Closes #849
2018-08-22 14:41:59 +02:00
Nico Rehwaldt
8a6ab27b04
test(rules/Helper): accept actual elements
2018-08-22 14:41:59 +02:00
Nico Rehwaldt
898a0fa9c8
fix(modeling/DropOnFlowBehavior): filter redundant connections
...
This prevents duplicate flows from being created, accidentially.
Closes #774
2018-07-25 11:10:51 +02:00
Nico Rehwaldt
249ea6a3ea
fix(modeling): disallow inserting on incoming/outgoing connection
...
Closes #836
2018-07-25 11:10:51 +02:00
Nico Rehwaldt
311e5d7bc7
chore(tests): convert BpmnTreeWalker test to ES5
2018-07-16 13:00:55 +02:00
Philipp Fromme
e637a8e57b
feat(modeling/BpmnLayouter): layout Element -> Element loops
...
Closes #824
2018-07-13 10:29:00 +02:00
Philipp Fromme
220c0a73f3
feat(modeling/BpmnLayouter): handle boundary events
...
This adds proper connection layouting for sequence
flows leaving from boundary events.
If needed, such connections will be layoute with
an U-turn.
Closes #467
2018-07-13 10:16:11 +02:00
Nico Rehwaldt
4806938600
feat(modeling): create label at appropriate position
...
This re-introduces adaptive label positioning
on label creation as a feature.
It worked before but broke during the introduction
of optional labels.
Closes #825
2018-07-11 13:26:43 +02:00
Nico Rehwaldt
15596ef97c
test(modeling): verify correct label adjustment
2018-07-11 13:10:18 +02:00
Nico Rehwaldt
abbe54912f
test(modeling): correct test cases
...
Ensure the test cases are not affected by accidential
automatic label adjumstment (TM).
2018-07-11 13:09:40 +02:00
Philipp Fromme
82a37e7253
chore(test): clean up test setup
2018-07-09 12:30:45 +02:00
Nico Rehwaldt
75c0880341
chore(replace): retain definitions where appropriate
...
* simplify implementation
* retain event definitions when switching from interrupting
to non-interrupting and vice versa
Closes #799
2018-06-28 09:03:34 +02:00
Nico Rehwaldt
300e7010c4
fix(modeling): correct DataStoreBehavior updating multiple stores
2018-06-18 09:21:18 +02:00
Philipp Fromme
5cc28d5d55
fix(modeling): apply DataStoreBehavior in collaboration only
...
* updating parents of datastores in the root is only
necessary when deleting a subprocess in a collaboration
Related to camunda/camunda-modeler#823
2018-06-13 13:48:39 +02:00
Philipp Fromme
100f3fb2ee
fix(label-behavior): text annotation resizing after text property change
...
Depends on bpmn-io/diagram-js#259
Related to camunda/camunda-modeler#631
2018-06-13 11:02:55 +02:00
Nico Rehwaldt
3c87716895
feat(viewer): emit export events
...
This makes the viewer emit events during SVG and XML export.
These events allow others to hook in, i.e. to trigger additional _save_
actions.
Closes #811
2018-06-12 15:44:52 +02:00
Nico Rehwaldt
6c081d854f
chore(label-editing): remove businessObject name on empty text
...
The following two actions will now unset the
business objects name property:
* deleting external label
* entering empty text via direct editing
2018-06-11 11:39:08 +02:00
Nico Rehwaldt
a7a1743df0
fix(modeling): properly cascade label deletion
...
Ensure we execute the following nicely:
* unset name -> remove label shape
* remove label shape -> unset name
2018-06-11 11:39:08 +02:00
Philipp Fromme
4a0f6da814
fix(label-behavior): properly check for name property change
...
Related to camunda/camunda-modeler#824
2018-06-06 13:35:57 +02:00
Philipp Fromme
891cf4ac0c
feat(draw+modeling): support lineHeight
...
* take numeric line height into account when
rendering text labels
* take line height into account when directly
editing labels
* use default line height of 1.2 for text rendering
Closes #803
2018-05-29 11:58:15 +02:00
Nico Rehwaldt
b1a4e08ddd
feat(modeling): assign ID when creating bpmn:LaneSet
2018-05-28 09:55:30 +02:00
Nico Rehwaldt
4bb270f192
chore(draw): unify text rendering into service
...
A newly introduced TextRenderer is responsible for text
rendering and text related bounds computation.
This removes a bunch of code duplication, too.
2018-05-24 16:26:01 +02:00
Philipp Fromme
7537757357
feat(labels): labels can be deleted
...
Related to camunda/camunda-modeler#243
2018-05-24 16:22:51 +02:00
Nico Rehwaldt
0b66b77483
chore(draw): retrieve default colors from bpmnRenderer config
...
Related to #713
2018-05-24 15:03:52 +02:00
Nico Rehwaldt
3a980af0e7
test(draw): run tests in test containers
2018-05-24 14:21:09 +02:00
Philipp Fromme
dc1f18a497
feat(bpmn-renderer): accept default fill and stroke color
...
Related to #797
2018-05-24 07:39:30 +02:00
Philipp Fromme
690417b389
feat(modeling): allow data store anywhere in collaboration
...
ensure valid BPMN 2.0 parent when
* creating/moving data store
* removing participant
* turning process into collaboration
* turning collaboration into process
Closes #483
2018-05-17 15:09:37 +02:00
Nico Rehwaldt
0f62183410
test(modeling): verify missing bpmndi:BPMNLabel update behavior
2018-05-17 14:57:54 +02:00
Nico Rehwaldt
b98dd6fe95
fix(modeling): correctly handle missing bpmndi:Label bounds
...
Closes #794
2018-05-17 14:57:54 +02:00
Nico Rehwaldt
92b0d4eced
test(draw): unskip color spec
2018-05-17 11:26:38 +02:00
pedesen
17896df65c
chore(contextPadProvider): adjust popupMenu method calls
...
Since breaking changes were introduced in diagram-js
popupMenu methos calls need to be adjusted
* call popupMenu#open with element, id and position as params
* call popupMenu#isEmpty with element and providerId as params
* remove popupMenu#create call
2018-05-14 15:13:29 +02:00
Nicolas Boissel-Dallier
9379abafcc
fix(auto-place): fix infinite loop during auto-place
...
* NaN was returned when autoplacing an element after
a boundary event, attached to its hosts corner.
Closes #788
2018-05-04 10:40:01 +02:00
Nico Rehwaldt
327eb90140
style(tests): use not.to matchers
...
...in favor of to.not.
2018-05-03 16:37:24 +02:00
Philipp Fromme
12a38da9c7
feat(import): expose additional BpmnTreeWalker functionality
...
* expose API needed for lazy sub-process imports
* also changes #handleDeferred to NOT expect deferred
as a parameter anymore
Related to bpmn-io/bpmn-js-signavio-compat#1
2018-04-25 21:31:02 +02:00
Nico Rehwaldt
68f85a171d
fix(rules): allow message flows between collapsed pools
...
Adresses camunda/camunda-modeler#782
2018-04-12 19:35:19 +02:00
pedesen
fcd1e2f12c
feat(snapping): add initial snapping for associations
...
Snap to target mid when creating associations.
Closes #782
2018-04-11 13:55:16 +02:00
Nico Rehwaldt
e5a3973107
fix(replace-preview): escape element ids in CSS selectors
2018-04-10 09:34:49 +02:00
Nico Rehwaldt
e159b002cd
fix(copy-paste): correctly set $parent on copied model elements
...
Related to camunda/camunda-modeler#625
2018-04-09 11:27:58 +02:00
Nico Rehwaldt
b4fcb2d906
test(copy-paste): fix formating
2018-04-09 11:27:22 +02:00
Nico Rehwaldt
6c9d37da12
fix(project): correct library default export
2018-04-05 09:47:37 +02:00
Nico Rehwaldt
9be61259bd
chore(project): drop 'use strict'
...
We use ES modules, so 'use strict' is not necessary anymore.
2018-04-03 18:09:53 +02:00
Nico Rehwaldt
d3449ca87c
chore(project): es6ify source code
...
* use ES6 import / export
* UTILS: export individual utilities
* TESTS: localize TestHelper includes
BREAKING CHANGE:
* all utilities export independent functions
* library sources got ported to ES6. You must now use
a ES module bundler such as Browserify + babelify or
Webpack to consume this library (or parts of it).
2018-04-03 16:32:14 +02:00
Nico Rehwaldt
0f04b76ad2
test(Modeler): minor test style improvements
2018-04-02 09:24:21 +02:00
Nico Rehwaldt
44a08ae6a3
test(Modeler): bind keyboard
2018-04-02 09:12:44 +02:00
Nico Rehwaldt
e4dbc422bf
chore(project): migrate to tiny-svg@1.x
2018-03-28 10:49:55 +02:00
Philipp Fromme
bec8d06e08
chore(project): fix typos introduced
2018-03-22 12:43:36 +01:00
Nico Rehwaldt
11f5a22471
chore(project): adjust min-dash usage (2)
2018-03-22 11:59:39 +01:00
TheSharpieOne Bot
245d1d6a96
chore(project): upgrade lodash to min-dash
2018-03-22 11:59:39 +01:00
Nico Rehwaldt
e8e5e2ced9
chore(project): update to min-dom@2
2018-03-22 00:54:59 +01:00
Nico Rehwaldt
b03014fc2c
chore(project): update to new lint style
2018-02-27 10:08:31 +01:00
Nico Rehwaldt
19e4e19bb5
chore(project): migrate to new SECTION comments
2018-02-27 09:57:22 +01:00
Nico Rehwaldt
b35aa48d14
fix(label-editing): complete on autoPlace start
...
Closes #764
2018-02-20 11:33:28 +01:00
Nico Rehwaldt
25dc30df06
fix(modeling/rules): make compensation activity a message flow source
...
Related to camunda/camunda-modeler#661
2018-02-20 11:32:52 +01:00
Nico Rehwaldt
8c92800bd2
test(Viewer): bump SVG export timeout
2018-02-14 22:22:30 +01:00
Nico Rehwaldt
de63fd49a3
style(tests): reformat DropOnFlowBehaviorSpec
2018-02-14 22:20:11 +01:00
Philipp Fromme
f5afc732fe
fix(drop-on-flow): don't insert on accidentally found intersection
...
Related to camunda/camunda-modeler#727
2018-02-14 22:15:33 +01:00
Philipp Fromme
ef52dff84c
fix(bpmn-replace): correctly replace sub process -> call activity
...
* when not morphing collapsed sub process with children
into expanded sub process children must be removed
Related to camunda/camunda-modeler#739
2018-02-14 22:07:28 +01:00
Nico Rehwaldt
ce791b8e17
test(Modeler): verify color support
...
Related to #756
2018-01-31 12:22:31 +01:00
Nico Rehwaldt
cbb2f9f600
fix(modeling): correct DI updating
...
Don't assign <di> property to businessObject; will
be serialized as di="[Object...]" otherwise.
Closes #756
2018-01-31 12:22:31 +01:00
Nico Rehwaldt
953574eefb
style(tests): reformat UpdatePropertiesSpec
...
* line width = 80
2018-01-31 12:06:17 +01:00
Nico Rehwaldt
38bff969ac
chore(tests): reformat color tests
2018-01-30 13:15:41 +01:00
Nico Rehwaldt
f1daf4841f
fix(modeling): support newBounds
...
This fixes a bug where Modeling#updateLabel would not work on
text annotations, because these need to have labels pre-configured.
* Modeling#updateLabel now takes the (optional) newBounds
* newBounds must now explicitly be passed to trigger resize
for text annotations
* newBounds is _only_ passed for text annotations via
LabelEditingProvider (it was discarded before anyway)
* lib/features/label-editing did not depend on lib/features/modeling
for historical reasons. It now uses the offical #updateLabel
API provided by Modeling
* Localize test diagrams
Closes #753
2018-01-29 17:20:41 +01:00
Nico Rehwaldt
d32da90013
chore(lint): bump eslint
...
...and fix lint errors
2018-01-28 20:35:04 +01:00
Nico Rehwaldt
37a06a378d
chore(tests): use absolute lib requires
2018-01-24 11:41:21 +01:00