Commit Graph

431 Commits

Author SHA1 Message Date
Nico Rehwaldt 305b59e1f3 fix(replace): allow morphing SubProcess -> EventSubProcess
Closes #451
2016-01-20 11:22:16 +01:00
Nico Rehwaldt 22686f7614 fix(Viewer): allow canvas configuration
Closes #444
2016-01-08 14:42:09 +01:00
pedesen ac910a9082 chore(test): rename diagrams 2016-01-08 12:57:38 +01:00
Ricardo Matias 694d52d6bb fix(ReplaceMenuProvider): handle condition/default when morphing flows
* Remove conditionExpression when morphing to default flow
 * Remove default property when morphing to conditional flow

Closes #441, closes #442
2016-01-08 12:01:01 +01:00
pedesen 0c6c26ef4d chore(test): refactor replace action trigger 2016-01-07 16:29:30 +01:00
Ricardo Matias 0feebe0b0c feat(DefaultFlows): allow default flows going out of tasks
Closes #425
2016-01-07 16:29:30 +01:00
Nico Rehwaldt 348a0b2d99 test(context-pad): cleanup provider test case 2016-01-06 17:36:28 +01:00
Nico Rehwaldt bab00633ad test(context-pad): verify wrench only shows if replace entries exist
Related to #428
2016-01-06 16:37:17 +01:00
pedesen f619a06cae chore(test): adjust test cases to fit popup menu provider concept
Related to #426
2016-01-06 16:37:17 +01:00
pedesen eb7b5d7bb4 chore(replace): separate popup menu from replace logic
This commit makes use of the provider concept introduced
in diagram-js. The replace menu entries are now created
in the replace menu provider. This separates BpmnReplace
from the entry creation in the popup menu.

Closes #428
2016-01-06 16:37:17 +01:00
Adam Brengesjö 93d4bade22 feat(replace): let rules disallow replacement operations 2016-01-06 16:37:17 +01:00
Nico Rehwaldt 9ac0a9a957 fix(modeling): correctly populate DataInputAssociation#targetRef
Closes #431
2016-01-06 11:57:52 +01:00
Nico Rehwaldt f89fd529de fix(ordering): correctly attach boundary element in front of task
The way we create labels during import (right after the respective
element) interfered with the ordering during boundary attach.

This commit fixes the behavior.

Closes #437
2016-01-04 16:10:55 +01:00
Ricardo Matias d344e679fd fix(BpmnLabelSupport): fix hidden property assignment
Closes #401
2016-01-04 15:19:08 +01:00
hoferch 35564d1bea fix(draw): add plus sign (+) to call activities
Closes #403
2016-01-04 15:11:38 +01:00
Nico Rehwaldt a046b14d6f feat(modeling): allow passing shapes to modeling#updateProperties
Closes #430
2015-12-08 15:18:13 +01:00
Nico Rehwaldt 65c94ea9ac feat(import): pass definitions during import.start event 2015-12-08 15:18:13 +01:00
Nico Rehwaldt 15dd0b006d style(test): replace tabs with spaces 2015-12-08 15:18:13 +01:00
David Luis Wiegandt 6e2ec62b00 feat(Viewer): indicate empty model through an error
Fail import with an error message if the XML does not contain
a valid diagram.

Closes #417
2015-12-08 15:18:13 +01:00
Nico Rehwaldt e00197d67a chore(tests): migrate to (.not).exist matcher
Migrate parts of our test suite that rely on legacy
`.to.be.(un)defined` matchers to Chai's `.to(.not).exist`.

Closes #423
Closes #422
2015-12-03 13:08:56 +01:00
Adam Brengesjö 9322a6a1e6 feat(context-pad): show delete only if allowed by rules
Related to bpmn-io/diagram-js#131
2015-12-02 15:56:09 +01:00
Nico Rehwaldt 283ddae6d3 fix(modeling/cmd): do not fail updating non-changed id
Closes #420
2015-11-25 21:53:02 +01:00
pedesen acb3716716 fix(replace): properly set parent of event definitions
Related to bpmn-io/bpmn-js-properties-panel#82
2015-11-19 13:28:39 +01:00
Adam Brengesjö 0a33d7c2b4 fix(replace): do NOT show current sequence flow type for OR-gateways
Closes #410
2015-11-12 17:22:25 +01:00
Ricardo Matias a6b76d7fc3 revert(Modeling): change back 'createTemplate' to 'createDiagram' 2015-11-11 11:31:58 +01:00
Ricardo Matias 4e79d16c90 feat(Modeler): rename createDiagram to createTemplate
This will allow us to have the same interface on dmn-js

BREAKING CHANGE:

* Modeler.createDiagram is renamed to Modeler.createTemplate
2015-11-06 11:33:31 +01:00
Nico Rehwaldt 2c3767a0e7 test(snapping): fix BpmnSnappingUtil tests 2015-10-23 11:35:41 +02:00
pedesen 8704d5d5a0 fix(auto-resize): expand non-primary parents in multi select move
Closes #397
2015-10-22 18:20:35 +02:00
Ricardo Matias 4930fd72d4 fix(viewer): add priority and context arguments to events
Closes #393
2015-10-22 14:08:45 +02:00
Nico Rehwaldt b21fb7cec3 chore(tests): allow canvas options to be provided 2015-10-22 08:43:05 +02:00
Nico Rehwaldt f68054295b feat(modeling): allow data associations from and to events
Closes #384
2015-10-22 08:21:01 +02:00
Nico Rehwaldt 2807129585 chore(test): fix mock events patching argument 2015-10-20 16:09:14 +02:00
Nico Rehwaldt e1cd32fa91 fix(auto-resize): correctly auto-resize participant
Closes #390
2015-10-20 16:09:14 +02:00
Nico Rehwaldt d789342b10 feat(modeling): update Lane#flowNodeRefs while modeling
Closes #387
2015-10-20 16:05:24 +02:00
Nico Rehwaldt 4be7324856 chore(import): compute FlowNode#lanes 2015-10-20 16:05:24 +02:00
Nico Rehwaldt 6a3bdd32ea chore(context-pad): make lane actions available
Lanes are going to be modeled via the parents context-pad only.

This commit

* removes lanes from the palette
* adds lane actions to the context-pad

Related to #379
2015-10-20 16:04:23 +02:00
Nico Rehwaldt 0831cae843 feat(rules): add lane rules 2015-10-20 15:47:12 +02:00
Nico Rehwaldt fefc748a9a feat(snapping): add lane snapping 2015-10-20 15:47:12 +02:00
Nico Rehwaldt 5e26068f99 feat(modeling): add lane modeling operations
This commit adds the functionality to

* add a lane (above/below an existing one)
* split a lane into sub lanes
* remove a lane
* resize a lane

Closes #379
Closes #338
2015-10-20 15:47:12 +02:00
Nico Rehwaldt 04d8ef8a18 test(draw): nest path tests 2015-10-20 15:47:12 +02:00
Nico Rehwaldt 17c074464c chore(test): clean up karma config 2015-10-20 15:47:12 +02:00
Nico Rehwaldt 523c10b5c6 feat(import): add flowElements to participant
This changes the tree walker to add FlowElements directly to a
participant, independent of their lane assignments.
2015-10-20 15:47:12 +02:00
Nico Rehwaldt a0a8b38c46 chore(tests): add connection matchers 2015-10-20 15:47:12 +02:00
Ricardo Matias 03b4a59f84 feat(keyboard): use editor actions
Related to bpmn-io/diagram-js#116
2015-10-20 15:34:40 +02:00
pedesen a77796b271 fix(modeling): retain connection layout for (data-)associations
Closes #380
2015-10-13 11:11:44 +02:00
Ricardo Matias a0bfc29482 fix(modeling): hide labels on element create 2015-10-07 15:19:55 +02:00
pedesen 08c2ebc78f feat(modeling): add data objects
Closes #344
2015-10-07 15:15:57 +02:00
pedesen 3f6a7d5621 fix(tests): revise expectConnected and adjust test cases 2015-10-07 15:15:57 +02:00
Ricardo Matias 534061d821 feat(replace): update bpmn when reconnecting flows
When reconnecting the source and end waypoints of a conditional
or default flow, the bpmn tree should be updated to reflect
these changes.

Closes #373
2015-10-06 13:51:01 +02:00
Kristin Polenz 188487ebdc feat(modeling/UpdateProperties): unclaim old business object id 2015-10-05 16:13:46 +02:00
Nico Rehwaldt 6d86dc9e27 chore(tests): add . as base path for browserify
This allows us to reference files in (lib|test)/* via absolute path
names.
2015-10-05 15:41:13 +02:00
Nico Rehwaldt 8b5572d3c4 fix(draw): hide empty on import + show on property update
Closes #362
2015-10-05 15:40:49 +02:00
Ricardo Matias fe7e8fe6d1 feat(replace): add conditional flows
Closes #369
2015-09-30 11:35:44 +02:00
Ricardo Matias 5a60c370a7 feat(replace): add default flows
Closes #272
2015-09-30 11:35:44 +02:00
Ricardo Matias 421912ddbf fix(replace): fix test cases for cancel events 2015-09-30 11:35:44 +02:00
Ricardo Matias 8a0f566ee3 feat(replace): add cancel events
Closes #337
2015-09-28 11:35:38 +02:00
pedesen 02af025a2e fix(auto-resize): allow concurrent top/bottom or left/right expanding 2015-09-25 11:44:07 +02:00
pedesen dc78909227 chore(auto-resize): change behavior on multi-selection move
Related to #354
2015-09-25 11:44:07 +02:00
pedesen 52cd71287d fix(replace-preview): change type of visualReplacements from array to object
Closes #368
2015-09-24 16:50:34 +02:00
pedesen 629239f93c feat(auto-resize): recursively expand parent elements
Closes #357
2015-09-21 15:17:29 +02:00
pedesen f29793ed9e feat(auto-resize): add expanding of sub processes and transactions
Closes #356
2015-09-21 14:23:08 +02:00
Nico Rehwaldt 4891eb4f84 fix(draw): show labels with text
Closes #362
2015-09-14 16:20:49 +02:00
pedesen 63d0321210 chore(ordering): modify sub process ordering
Closes #358
2015-09-11 14:43:09 +02:00
Ricardo Matias 1295400fe0 test(custom-elements): add integration tests for custom elements
Closes #352
2015-09-09 16:44:10 +02:00
pedesen 857454bbc1 feat(auto-resize): expand participants when moving multiple elements
Closes #353
2015-09-08 12:40:24 +02:00
pedesen 536eb790a0 fix(snapping): boundary event labels snap to siblings
Closes #327
2015-09-07 15:08:59 +02:00
Ricardo Matias 31f0ea1ec0 feat(modeling): add support for custom elements
This commit adds part of the infrastructure that allows
the coexistence between bpmn elements and custom ones.

Closes #348
2015-09-03 09:57:30 +02:00
pedesen 6482273aa4 test(modeling/lanes): expect labels to be children of lanes
Related to #326
2015-09-03 06:39:09 +02:00
Nico Rehwaldt e897c6746d chore(palette): restore lanes 2015-09-02 16:23:47 +02:00
Nico Rehwaldt 7ba323b0a1 chore(palette): temporarily remove lanes
Do not confuse people with the unfinished lane support.
Lanes shall be restored once we have layouting + visual feedback in
place.
2015-09-02 16:03:12 +02:00
Nico Rehwaldt e78e4c94a3 test(matchers): add custom .bounds matcher
Closes #349
2015-09-02 14:36:39 +02:00
pedesen 0b8f0465f0 chore(auto-resize): adjust vertical resizing behavior
The parent participant/lane now expands vertically only if the edge of
an element intersects the collaboration edge, or if the element is
is placed beyond the edge.

Closes #347
2015-09-02 11:50:54 +02:00
pedesen ccf21e2f0c fix(replace-preview): rename canExecute.replace -> canExecute.replacements
Closes #346
2015-09-01 18:04:12 +02:00
pedesen d831ed45b8 test(modeling/behavior): add test cases for boundary event connections
Related to #323
2015-09-01 16:31:24 +02:00
Nico Rehwaldt ede384b5ac fix(auto-resize): do not resize on lane create / resize lanes, too
Related to #263
2015-08-31 15:35:32 +02:00
Nico Rehwaldt afa72ad5bd fix(modeling): correctly update Lane#flowNodeRefs
Previously, the bpmn:FlowNode <-> bpmn:Lane relationship was not
properly maintained in the BpmnUpdater.

This commit fixes the behavior.

Closes #341
2015-08-31 15:00:27 +02:00
pedesen 39db57987d feat(auto-resize): add ability to automatically expand parent participants
Closes #263
2015-08-31 12:08:21 +02:00
Nico Rehwaldt f8d6658c10 fix(import): import elements with missing #flowNodeRef
We now properly import lane children with missing #flowNodeRef.

Closes #340
2015-08-25 15:49:00 +02:00
Ricardo Matias 34bd632544 fix(modeling): add caveat for message flows layouting
related to bpmn-io/diagram-js#110
2015-08-25 11:04:51 +02:00
Nico Rehwaldt 834f1844ec feat(snapping): snap participant to child lane border 2015-08-24 16:59:13 +02:00
Nico Rehwaldt b0ce4d834d test(util): add MockEvents util + use in tests
* MockEvents provides a simple to use interface for creating
  events globally or locally to the currently active DiagramJS
  instance.
2015-08-24 16:02:21 +02:00
Nico Rehwaldt e66f2d92aa fix(rules): adjust participant size + fix test case 2015-08-21 17:34:41 +02:00
Nico Rehwaldt 711a2df758 feat(modeling): wrap existing elements in new lane
Related to #316
2015-08-21 17:34:41 +02:00
Nico Rehwaldt 42b66b1602 chore(project): move {modeling->}/rules
This syncs the bpmn-js structure with diagram-js.
2015-08-21 17:34:41 +02:00
Nico Rehwaldt e9a7bfa986 fix(modeling): make sure lanes get ids assigned 2015-08-21 17:34:41 +02:00
Nico Rehwaldt 4afefcb838 feat(rules): add lane rules
* add create / move rules
* add resize rules

Related to #316
2015-08-21 17:34:41 +02:00
Nico Rehwaldt fe63cb87a4 feat(palette): integrate lane symbol 2015-08-21 17:34:41 +02:00
Nico Rehwaldt d520574d1a feat(modeling): wire lanes in BPMN 2.0 xml
Related to #316
2015-08-21 17:34:41 +02:00
pedesen 1cdce93f5b fix(selection): select element replacements after move
Closes #335
2015-08-21 13:46:21 +02:00
pedesen fed7aefabe chore(test): add test case for issue #326 2015-08-21 11:46:50 +02:00
Nico Rehwaldt 966e3aaa34 feat(modeling): define BPMN specific ordering
Closes #336
2015-08-20 14:49:53 +02:00
Nico Rehwaldt 5c629a9889 chore(modeling/behavior): rename Remove{->Participant}Behavior 2015-08-19 17:24:49 +02:00
Nico Rehwaldt e237937726 chore(modeling): update BpmnUpdater to hook into element.updateAttachment
BREAKING CHANGE:

* The id of the update attachment command changed from 'shape.attach' to
'element.updateAttachment'
2015-08-19 14:34:07 +02:00
Ricardo Matias fd3afbb508 test(modeling/layout): fix test case values
closes #266
2015-08-19 13:52:46 +02:00
pedesen 4196ae8b00 feat(replace-preview): Add visual feedback during shape movement
Closes #325
2015-08-19 10:52:15 +02:00
Nico Rehwaldt 3cb1721c89 chore(modeling): rename Modeling#move{Shapes->Elements}
Related to bpmn-io/diagram-js#107

BREAKING CHANGE:

* Modeling#moveShapes got renamed to Modeling#moveElements
* Id of command changed from 'shapes.move' to 'elements.move'
2015-08-13 10:51:52 +02:00
pedesen 5b0029a8fd feat(modeling): define behavior for non-interrupting start events
Related to #302
2015-08-12 09:48:28 +02:00
pedesen 4af603e5be feat(modeling): add expanded event sub processes
Closes #302
2015-08-12 09:47:42 +02:00
Nico Rehwaldt d5dc43ef32 fix(util): ensure ModelUtil#is never fails 2015-08-10 15:44:30 +02:00
Nico Rehwaldt 485f83f026 test(modeling): simplify CreateBoundaryEventBehavior tests 2015-08-06 10:58:50 +02:00
Nico Rehwaldt ece7b7d597 feat(snapping): snap boundary events
This adds immediate feedback when creating and moving boundary events.

* During move, boundary events are snapped, if attachment is allowed
* Boundary events snap to their siblings and not to elements inside
the host

Closes #320
2015-08-06 10:58:50 +02:00
pedesen 8e9beeaae2 chore(test): use createKeyEvent util
Related to #321
2015-08-05 09:26:34 +02:00
pedesen 2c3c422e93 fix(popup-menu): the current event is hidden in the replace menu
Closes #322
2015-08-03 17:18:30 +02:00
pedesen 022bc9f192 chore(tests): use different fixtures for different use cases 2015-08-03 17:18:30 +02:00
Nico Rehwaldt dac5bb397b fix(modeling/rules): correct boundary rules
* clean up boundary related rules
* split boundary tests into separate section
* add boundary message flow tests
* fix boundary message flow behavior

Closes #319
2015-07-30 17:11:19 +02:00
Nico Rehwaldt 8e4f480868 feat(modeling/layout): improve sequence flow layouting behind Gateways
Closes bpmn-io/bpmn-js#227
2015-07-30 10:36:06 +02:00
Nico Rehwaldt 568afdd118 test(fixtures): cleanup simple.bpmn 2015-07-27 11:16:41 +02:00
pedesen 42c052f7ec feat(replace): morph boundary events
Closes #293
2015-07-27 10:55:29 +02:00
pedesen 0651bf39a8 feat(keyboard): add select all key binding
Closes #184
2015-07-23 15:46:42 +02:00
Ricardo Matias 75dc681d46 feat(modeling): add boundary events behavior
This commit adds support for modeling boundery events.

Users may pull out the boundary events from the palette.

Closes #292
2015-07-22 17:23:31 +02:00
Nico Rehwaldt b9f30d77bb test(import+export): increase timeouts 2015-07-20 17:13:47 +02:00
pedesen 363ce892c9 fix(modeling): sequence flow can be reconnected to participant
Closes #315
2015-07-20 16:48:44 +02:00
pedesen 8c6c920482 fix(modeling): message flow updating correctly after changing source
Closes #267
2015-07-20 16:48:44 +02:00
Nico Rehwaldt 3f90a77a7b test(integration/model): replace log with actual guard 2015-07-20 16:48:14 +02:00
Nico Rehwaldt e3faad9cda test(import): increase timeout for complex import test 2015-07-20 16:04:58 +02:00
Ricardo Matias acb2184087 feat(import): attach boundary events
* establish host <> attachers relationship
* clean up import tests (use diagrams in fixtures/bpmn/import)

closes #310
2015-07-20 15:50:31 +02:00
pedesen c3e4ad3e40 test(project): replace jasmine with mocha
Closes #204
2015-07-15 17:42:37 +02:00
pedesen 31ea6b2f91 feat(modeling): add ad-hoc sub processes
Closes #271
2015-07-14 15:26:43 +02:00
pedesen b76c1c8ded chore(replace): add test case for bpmn containment
Related to bpmn-io/diagram-js#101
2015-07-13 15:20:22 +02:00
pedesen 367eeb80c7 feat(popup-menu): undo and redo toggling markers is reflected in the popup menu
Closes #308
2015-07-07 14:42:27 +02:00
pedesen 88f91d342b feat(replace): model collapsed subprocesses using the replace menu
Closes #303
2015-07-03 15:54:36 +02:00
pedesen af991e89e9 feat(BpmnReplace): morphing between expanded sub processes and transactions
Closes #223
2015-06-26 15:36:33 +02:00
pedesen af5354e337 feat(popup-menu): add toggle buttons for loop and MI markers
Closes #275
2015-06-26 14:13:35 +02:00
pedesen 6da0d166e3 feat(popup-menu): allow morphing a task into a call activity
Closes #304
2015-06-23 17:24:13 +02:00
Nico Rehwaldt 71a5c2e1ed fix(modeling): correctly update extension attributes
Closes #301
2015-06-22 14:35:30 +02:00
Nico Rehwaldt ae962de925 fix(palette): add required modules
This adds space-tool and lasso-tool as required modules to the BPMN
palette. That in term ensures that users can simply reuse the palette
without further configuration.
2015-06-17 12:03:37 +02:00
Nico Rehwaldt a04d03da44 chore(snapping): add tests + adjust min participant size
Related to #299
2015-06-10 15:58:52 +02:00
Nico Rehwaldt 749120c4e9 fix(modeling): allow only bpmn:FlowNode(s) to be dropped on flow
Closes #297
2015-06-09 11:04:05 +02:00
pedesen db6cd21205 test(replace-menu): refactor and fix positioning test case
relates to bpmn-io/diagram-js#88
2015-06-04 16:40:01 +02:00
Nico Rehwaldt 19673a340c test(snapping): add participant snapping test case
Related to #290
2015-06-03 17:48:40 +02:00
Ricardo Matias cced954f37 fix(snapping): add participant specific min resize bounds
closes #290
2015-06-03 17:47:58 +02:00
Nico Rehwaldt 084d831d9e feat(modeling): add generic create-on-flow
Closes #232
2015-06-02 14:22:58 +02:00
pedesen 58f5965335 feat(modeling): drop new intermediateThrowEvents on sequenceFlows
Related to #232
2015-05-28 17:47:50 +02:00
Ricardo Matias 437a28b953 fix(replace): refactor the test case for replace menu positioning 2015-05-15 11:11:19 +02:00
Mohsen Hariri 206457e764 fix(context-pad): fix context pad positioning in special case
context pad was misplaced when the canvas is placed with a left offset within the parent
2015-05-15 11:11:19 +02:00
Nico Rehwaldt d3aa1a7667 fix(modeling/rules): allow moving message flows
Closes #276
2015-05-12 18:04:42 +02:00
Nico Rehwaldt bd2a4dd16b fix(rules): connect message flow to message/untyped events only
Closes #261
2015-05-12 14:35:21 +02:00
Nico Rehwaldt f0f475dad5 feat(palette): integrate multi selection + space tool
related to #244
2015-05-06 16:52:33 +02:00
Nico Rehwaldt 4f236382a0 fix(modeling): adjust default size for participants
From 600x300 -> 600x250.

Closes #262
2015-05-06 16:51:01 +02:00
Ricardo Matias 6fc512b477 feat(resize): snap to minimum bounds during resize
closes #252
2015-05-04 15:32:36 +02:00
Ricardo Matias 6f8999b8ae fix(modeling/BpmnUpdater): restore children di when changing diagram type
closes #253
2015-05-04 15:08:32 +02:00
Nico Rehwaldt 877cfcca78 test(Modeler): make sure we can bootstrap without options 2015-05-04 14:58:46 +02:00
Nico Rehwaldt e6a51f4181 test(Viewer): make sure we can bootstrap without options 2015-05-04 14:58:46 +02:00
Nico Rehwaldt 7a54267536 fix(replace): remove unused modeling dependency
The modeling module should be provided by components explicitly.

This allows users to replace it for customization.
2015-04-30 11:40:05 +02:00
Nico Rehwaldt b233ab957c feat(snapping): add bpmn-specific move snapping
This commit adds message flow + collaboration specific snapping by
subclassing the diagram-js provided default Snapping implementation.

* Add collaboration snapping
* Rename lib/util/{Name}.js -> lib/util/{Name}Util.js

Closes #255
2015-04-29 15:04:54 +02:00
Nico Rehwaldt 183a41cf26 fix(modeling): convert to process when deleting last participant only
Related to #128
2015-04-28 14:13:54 +02:00
Nico Rehwaldt 6eceb0926b feat(layout): add straight layouting for message flows
This commit adds a straight layouting strategy for message flows.
Other than that it makes sure connection attachments are being
remembered during reconnection / shape move.

Closes #249
Closes #179
2015-04-22 16:19:26 +02:00
Nico Rehwaldt 373b8c6293 test(importer): decouple from draw fixtures 2015-04-22 16:19:26 +02:00
Nico Rehwaldt 087506cc9a feat(modeling): transform message <> sequence flows
Closes #199
2015-04-22 16:12:58 +02:00
Nico Rehwaldt c14a87e5ad feat(modeling): add message flow modeling
Related to #199
Closes #201
2015-04-22 16:12:58 +02:00