Commit Graph

577 Commits

Author SHA1 Message Date
Jan Stümmel fd198b6059 feat(modeling): move labels with connections
* move on segment dragging
* move on reconnect
* move on bendpoint add / remove

Closes #331
2016-07-05 12:01:08 +02:00
Philipp Fromme 713021ecff fix(outline): added test case for outline after element replace
Closes #579
2016-07-05 11:06:54 +02:00
Nico Rehwaldt 83f0343512 test(modeling): verify correct connection parent on move
Related to #525
2016-07-05 08:23:51 +02:00
Nico Rehwaldt 8a483284de chore(tests): rename fixture 2016-07-05 08:15:17 +02:00
Adam Brengesjö 91dd1b696c fix(replace):ComplexGateway can have default sequence flows
The BPMN 2.0 specification[1] states "a Sequence Flow that has an
Exclusive, Inclusive or Complex Gateway or an Activity as its source
can also be defined with as default."

This commit will honor that statement by allowing sequence flows from
Complex Gateway to be defined as default.

  [1] = http://www.omg.org/spec/BPMN/2.0/
2016-06-30 14:43:29 +02:00
Nico Rehwaldt ea47cdea30 test(modeler): add complex diagram test (skipped) 2016-06-27 14:14:07 +02:00
Nico Rehwaldt df54005cfa feat(modeling): repair broken connection dockings on import
Closes #479
2016-06-27 00:32:17 +02:00
Nico Rehwaldt 9c236b0d9e test(snapping): verify participant snapping on create 2016-06-22 17:04:42 +02:00
Nico Rehwaldt db53608b3d feat(connect): support point to point connection
Closes #578
2016-06-22 15:52:50 +02:00
Nico Rehwaldt fcf2bbd9aa feat(modeling/layout): improve MessageFlow layout on SubProcesses
Related to #574
2016-06-22 15:52:31 +02:00
Ricardo Matias 6549af7aca feat(modeling/layout): improve message flow layout on Participants
Closes #574
2016-06-22 15:52:06 +02:00
Nico Rehwaldt e99214bb6a chore(editor-actions): factor out into own component
Related to bpmn-io/diagram-js#177
2016-06-21 15:29:03 +02:00
Ricardo Matias 224fa6da61 feat(align-elements): elements can be aligned
Related to bpmn-io/bpmn-js#177
2016-06-21 15:29:03 +02:00
Philipp Fromme e157f1c82f fix(bpmn-updater): keep conditions on element replace
Closes camunda/camunda-modeler#318
2016-06-21 14:01:41 +02:00
Ricardo Matias b43cff1ec2 feat(copy-paste): copy Event Sub Process / Non-Interrupting Boundary
Closes #556, #555
2016-06-21 13:39:37 +02:00
Philipp Fromme 1b17d45260 fix(replace-menu): add sub process to event sub process replace menu
Closes camunda/camunda-modeler#310
2016-06-16 15:18:51 +02:00
Ricardo Matias cf108a9233 feat(distribute-elememts): add element distribution
This allows the distribution of elements evenly.

Related to bpmn-io/diagram-js#172
2016-06-15 14:01:57 +02:00
Philipp Fromme a314e8dbfa fix(bpmn-importer): hide sequence flows inside collapsed subprocesses
Closes #231
2016-06-15 11:07:02 +02:00
Philipp Fromme 6da1a0cb63 feat(replace): keep element ID on replace
Closes #513
2016-06-13 16:53:13 +02:00
Nico Rehwaldt 0ba239bbce chore(project): switch to eslint
Use eslint instead of jshint for linting.

* better linting results
* test files linted, too
* consistent code style checks

Closes #568
2016-06-07 09:55:32 +02:00
pedesen f15647edfd feat(context-pad): add text annotation option for data objects/stores
Closes #564
2016-05-31 11:04:55 +02:00
Vladimirs Katusenoks 839ed0b8e8 fix(paste): copy process with participant
Closes camunda/camunda-modeler#297
2016-05-20 15:55:04 +02:00
Vladimirs Katusenoks 80d62b9873 fix(paste): set correct parent on data associations
Closes camunda/camunda-modeler#296
2016-05-20 12:40:15 +02:00
Nico Rehwaldt c3a159261a test(copy-paste): fix everything 2016-05-19 14:56:23 +02:00
Vladimirs Katusenoks a1ab8f9e7d fix(search): do not include root element in results
Closes camunda/camunda-modeler#280
2016-05-18 10:42:38 +02:00
Ricardo Matias 6e8962574b revert(textarea): support automatic-resizing textarea
This reverts commit 11165e2c21.
2016-05-18 08:17:03 +02:00
Ricardo Matias 62d9b6f993 feat(Modeler): expose Viewer and NavigatedViewer constructors
This allows bundled users (f.ex without browserify)
to use the modeler + viewers easily without having to monkey patch or
load more than one bundled file.

Closes #541
2016-05-12 15:38:41 +02:00
Vladimirs Katusenoks 006be69d63 fix(associations): always show full data association
Closes #506
2016-05-09 14:36:06 +02:00
Vladimirs Katusenoks 5a02923a61 fix(connections): fix update logic on reconnecting elements
Closes #534
2016-05-06 16:26:02 +02:00
Vladimirs Katusenoks 28cc4e8e10 feat(i18n/build): add grunt task for translation extraction
Use `grunt extract-translations` to run extraction.
Will run all test cases to extract the available translations.

Closes #497
2016-05-03 17:31:49 +02:00
Ricardo Matias 30e3fdd81c fix(copy-paste): allow pasting of elements onto lanes
Closes #532
2016-05-03 17:27:25 +02:00
Nico Rehwaldt 35ca66e48a feat(auto-resize): do not expand on child element create
Closes #531
2016-05-03 16:56:02 +02:00
Ricardo Matias 612b93db2e feat(copy-paste): disallow pasting of participants on some scenarios
Participants are not allowed to be pasted onto a Process,
if the Process already has other elements.

Closes #526
2016-05-03 15:23:45 +02:00
Ricardo Matias 3f04e18398 fix(copy-paste): correctly paste on lanes
Closes #516
2016-05-02 14:38:42 +02:00
hoferch91 11165e2c21 fix(textarea): support automatic-resizing textarea
Closes #472
2016-05-02 11:26:19 +02:00
Ricardo Matias c586c908b2 feat(ModelingFeedback): add tooltip when pasting is disallowed
Only in the case of pasting outside of collaboration.

Closes camunda/camunda-modeler#252
2016-04-29 16:19:09 +02:00
Ricardo Matias b9b64f589b fix(modeling): connections are properly removed
This fixes the loss of connections when moving a boundary
event outside of a subprocess.

Closes #480
2016-04-28 18:46:06 +02:00
Jan Stümmel 0731c9888b feat(modeling): I can morph tasks to expanded sub processes
* from expanded subprocesses to tasks or collapsed sub processes is not supported

Closes #247
2016-04-22 13:23:25 +02:00
Ricardo Matias 1b9ebfc993 feat(copy-paste): allow copying & pasting of elements
Closes #391
2016-04-22 09:34:53 +02:00
Vladimirs Katusenoks 07a1ef29b6 fix(morphing): release id on element replace
Closes camunda/camunda-modeler#97
2016-04-21 11:50:36 +02:00
Vladimirs Katusenoks bc53dc98db fix(id): unclaim id on element remove
Closes #421

Fixing incorrect test+implementation for ID property update
2016-04-21 11:50:36 +02:00
Philipp Fromme ec159381ce fix(replace): preserve label position on element replace
closes #235
2016-04-20 16:13:02 +02:00
Philipp Fromme 7de043ab9d fix(modeling): adjust position of hidden label on waypoints change
closes bpmn-io/diagram-js#158
2016-04-20 16:00:14 +02:00
Vladimirs Katusenoks 690881491d chore(labels): set label above sequence flow
Allign for most common 'yes/no' labels  - set label close to right side
2016-04-20 15:40:40 +02:00
Jan Stümmel 7811a47fae feat(label): improve positioning of sequence flow labels
closes #512
2016-04-20 13:13:10 +02:00
Vladimirs Katusenoks 1923a6bdda feat(global-connect): connect distant elements
Closes #474, #394
2016-04-14 17:03:58 +02:00
Jan Stümmel bb06a0386d feat(modeling): combining two sequence flows when removing an element
combines only if removed element has one outgoing and one incoming sequence flow

Closes #433
2016-04-13 14:38:38 +02:00
Vladimirs Katusenoks bff19786b4 feat(search): be able to search bpmn elements
Closes #500
2016-04-12 16:50:23 +02:00
Vladimirs Katusenoks 60720c8ae7 fix(modeling): unset gateway default on default flow delete
Closes #505
2016-04-04 17:24:01 +02:00
Nico Rehwaldt 9bcdd3b958 fix(rules): do not allow deletion of labels
Closes #499
2016-03-23 15:32:10 +01:00
Nico Rehwaldt a41f5d034e test(snapping): fix missing modeling module 2016-03-23 09:30:44 +01:00
Nico Rehwaldt 37eca38dac feat(Viewer): make importXML callback optional
People could be hooking up with import via events, too.
2016-03-17 17:44:56 +01:00
Nico Rehwaldt 46d8abdd70 feat(import): allow users to hook into via events
This commit adds more life-cycle events users can
plug into during xml parsing and rendering:

* import.parse.start
* import.parse.complete
* import.render.start
* import.render.complete
* import.done

Some other events had to go because of that, namely

* import.start
* import.(success|error)

BREAKING CHANGE:

* the event import.start got renamed to import.render.start
* the events import.success and import.error got removed
in favour of import.render.complete (passing err, warnings)
2016-03-17 17:44:56 +01:00
Nico Rehwaldt ff0d88bb90 chore(Viewer+Modeler): inherit from Diagram
* simplifies event handling
* relies on Diagram#clear to reset the diagram before
  successive imports
* allows diagram services to be re-used across imports
* allows diagram services to be injected (or retrieved)
  before import

Closes #237
2016-03-17 17:44:32 +01:00
Nico Rehwaldt f573a36071 chore(Modeler): remove bpmn-moddle id-support
* Handle id tracking ourself.
* Do not reinstantiate moddle on re-import (now stateless)
* <3

Closes #493
2016-03-17 17:27:13 +01:00
Nico Rehwaldt 13be55dca1 fix(ordering): correctly treat transactions / ad-hoc sub-processes 2016-03-16 11:26:41 +01:00
Jan Stümmel 4732dcfc74 feat(modeling): create collapsed pools via morph menu
You are now able to morph between collapsed and expanded pools

* Not possible to drop elements in a collapsed pool
* if a expanded pool collapses, the children are deleted

Closes #365
2016-03-14 16:28:23 +01:00
davcs86 49173abdad feat(i18n): add localization
* Palette, ContextPad, Errors...

Closes #491
2016-03-11 20:10:10 +01:00
Nico Rehwaldt 85f50ff907 fix(replace): require correct dependency modules 2016-03-11 16:59:07 +01:00
Jan Stümmel 9582a68faf fix(textarea-size-zoom): fixes the size of a label textbox on low zoom levels
Closes #477
2016-03-09 14:39:52 +01:00
Nico Rehwaldt 7ad9c7106e fix(label-editing): complete editing operation on drag init
Make sure the direct editing results are applied (not discarded)
when the user starts a drag operation with direct editing active.

Closes #490
2016-03-08 14:41:32 +01:00
Nico Rehwaldt 1bceaaa229 chore(modeling): move BpmnLabelSupport to behavior
* Make sure the label support is part of our
behavior definitions.
* Adjust test cases accordingly.
2016-03-08 14:12:52 +01:00
hoferch91 0393d51893 chore(modeling): set minimum height to one line
Closes #402
2016-03-07 09:11:45 +01:00
pedesen 37353c4f60 fix(modeling): mark elements as changed during label update
Closes #484
2016-03-03 17:27:57 +01:00
Vladimirs Katusenoks c728f7a812 test(viewer): add extra moddle test, correct assertions
Relates to #471
2016-02-25 14:57:50 +01:00
Vladimirs Katusenoks c793c01169 fix(viewer): moddle extensions
Remove .only from test, replace merge with assign, add extra test

Relates to #471
2016-02-25 14:18:29 +01:00
davcs86 0fb1bf616e feat: add additional (default!) moddle descriptor to viewer
Closes #471
2016-02-25 13:10:56 +01:00
pedesen 7f5aefbc02 test(Viewer): remove test isolation 2016-02-22 11:47:25 +01:00
Nico Rehwaldt d09ec1c19d feat(Viewer): add #off to remove event listeners
Closes #470
2016-02-16 10:36:21 +01:00
Nico Rehwaldt 0ad02aa780 test(Viewer): verify saveXML works 2016-02-11 17:20:27 +01:00
Nico Rehwaldt de8482e214 chore(dragging): update to new api
Related to bpmn-io/diagram-js#139
2016-01-27 16:11:20 +01:00
pedesen e568312a68 fix(util): fix isExpanded check
DiUtil/isExpanded now returns either true or false instead of
'undefined' in some cases.

Closes #458
2016-01-27 15:18:54 +01:00
Nico Rehwaldt 3415d24290 test(modeling/behavior): rename files for clarity 2016-01-27 12:33:50 +01:00
Nico Rehwaldt ca979b4c05 feat(palette): add DataStore entry
Related to #345
2016-01-27 12:33:44 +01:00
Nico Rehwaldt 28e845984d test(modeling): verify DataStore addition, update and removal
Related to #345
2016-01-27 12:02:02 +01:00
Nico Rehwaldt 6b27ee4301 feat(context-pad): integrate DataStore pad
Related to #345
2016-01-27 12:01:16 +01:00
Nico Rehwaldt 4f28d14cbc feat(rules): add DataStore rules
Related to #345
2016-01-27 11:56:05 +01:00
Nico Rehwaldt 206daa1154 fix(modeling): manhattan layout compensation association
Related to #291
2016-01-27 09:45:05 +01:00
Nico Rehwaldt 5ab0db65a5 fix(rules): allow TextAnnotation inside SubProcesses 2016-01-26 18:24:05 +01:00
Nico Rehwaldt 12bb7d3c55 fix(replace): allow morph into compensation SubProcess, too
Closes #461
2016-01-26 16:35:08 +01:00
Ricardo Matias fd2230a8fa feat(hand-tool): add hand-tool
Closes #412
2016-01-25 21:43:13 +01:00
Nico Rehwaldt 7196624b8c fix(import): import dataAssociations on events
Closes #455
2016-01-25 16:02:59 +01:00
Nico Rehwaldt eddd90727f fix(rules): allow data associations to be moved
Closes #454
2016-01-25 16:02:59 +01:00
Nico Rehwaldt acf9013bcb feat(context-pad): add compensation pad
Related to #291
2016-01-25 16:02:59 +01:00
Nico Rehwaldt 7190f8bef8 feat(rules): implement compensation rules
Related to #291
2016-01-25 16:02:58 +01:00
Nico Rehwaldt d7834e9bee feat(replace): add compensation morph options
* compensation boundary
* compensation activity

Related to #291
2016-01-25 16:02:58 +01:00
Nico Rehwaldt 2e4b97d4ce feat(draw): render association start/end markers
Closes #454
2016-01-25 16:02:52 +01:00
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
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 f68054295b feat(modeling): allow data associations from and to events
Closes #384
2015-10-22 08:21:01 +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 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
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 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
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
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 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
Ricardo Matias 6011de1c4a fix(resize): correctly compute cropping box after resize
closes #236
2015-04-22 09:20:07 +02:00
Nico Rehwaldt de648520d5 feat(modeling): snap initial participant to diagram contents
Closes #241
2015-04-16 18:30:04 +02:00
Ricardo Matias 0381811d03 feat(space-tool): add create/remove space behaviour
closes #132
2015-04-16 10:00:18 +02:00
Nico Rehwaldt 0a03e59866 feat(modeling): add participant modeling behavior
This commit adds the ability to model participants from the palette.

* Empty diagrams can be used as a start for participant _AND_ process diagram
* Process diagrams can be converted to collaboration diagrams by dropping
  a participant onto them

Closes #128
2015-04-14 15:23:16 +02:00
Nico Rehwaldt 2e73f5ab85 fix(modeling): update id property in diagram-js, too
This fixes a bug where updating the id property of an element
was not propagated to the diagram. Thus, retrieving the element
based on the new id from diagram-js did not work.

Closes #238
2015-04-13 10:55:17 +02:00
Nico Rehwaldt e6885eaebc test(project): replace brfs with stringify
This _could_ fix the various bundle building issues we are seeing on
travis-ci and locally.

Closes #234
2015-03-31 14:22:53 +02:00
jdotzki 8cd3c78d5e fix(rule): allow drop of associations
close #202
2015-03-25 13:45:54 +01:00
Nico Rehwaldt 397a4aeea5 fix(replace): keep associations during replace
Closes #226
2015-03-12 14:03:28 +01:00
Nico Rehwaldt 1c0ade9d51 feat(replace): focus element after replace
Related to #192
2015-03-11 16:31:42 +01:00
Nico Rehwaldt 67d81c346c fix(replace): pre-build BPMN elements
This simplifies the ways we work with replacements.

Instead of monkey-patching the original replace functionality we

* create the business object / target object
* pass it to replace

A simple way that works well with our existing infrastructure.

Other changes:

* fixes redo / undo issues.
* splits context-pad + replace

Closes #180
2015-03-11 16:19:09 +01:00
jdotzki c5af54c1e3 feature(rules): add rule for link events
close #219
2015-03-05 13:57:32 +01:00
jdotzki 225cbb914c fix(rules): fix modeling rules for event based gateways
Allow  condition and signal catching events after event based gateways.

close #213
2015-03-04 10:20:37 +01:00
jdotzki 18c2b0552e feat(contextpad): add replace-menu to context pad
Support for Gateways and Task Types was added.

See #130
2015-03-02 13:43:06 +01:00
jdotzki 3873709141 feat(replace): add service that allows to replace elements
API
- BpmnReplace#replaceElement

see bpmn-io/bpmn-js#130
2015-03-02 13:43:06 +01:00
Nico Rehwaldt 85d0ffd56a fix(tests): re-enable all 2015-02-18 13:25:20 +01:00
Nico Rehwaldt 788b143f27 fix(Viewer): do not cache moddle
This may have unwanted side-effects, i.e. when using id
validation and caching.

We must ensure the meta-model element is actually instance stateless in
order to safely cache it.
2015-02-17 12:04:03 +01:00
Nico Rehwaldt 4854c96067 fix(import): correctly dispatch parse warnings
Fixes our bpmn-moddle integration to correctly dispatch parse warnings
from bpmn-moddle to the client.

Related to bpmn-io/moddle-xml#5

Closes #58
2015-02-17 11:00:00 +01:00
Nico Rehwaldt 8c61906469 feat(bpmn-js): allow custom model extensions to be passed
Related to bpmn-io/bpmn-moddle#15
2015-02-12 15:50:23 +01:00
Nico Rehwaldt 04437a8354 chore(project): remove jquery
Related to bpmn-io/bpmn-js#189
2015-02-06 15:26:41 +01:00
Nico Rehwaldt 3996408404 chore(project): migrate to modularized lodash@3
* use specialized lodash utilities
* consistently apply 'use strict'

Related to #185
2015-02-02 14:46:21 +01:00
jdotzki d8057a2acc fix(rules): disallow circular connection
This temporarily disallows connections from and to the same element
because it rendered the connection unusable..

This change can be reverted once proper auto layout for circular connections is implemented.

Closes #176
2015-01-29 13:26:32 +01:00
Nico Rehwaldt 85e512c97d feat(modeler): add bendpoints
It is now possible to add bendpoints to flows or drag bendpoints to
update their position / trigger reconnects.

Upon bendpoint move a rule is checked to figure out whether or not a
bendpoint operation is allowed or not.

Closes #123
Closes #138
Closes #139
Closes #165
2015-01-20 17:19:56 +01:00