Commit Graph

904 Commits

Author SHA1 Message Date
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
Nico Rehwaldt 7e93759a0d fix(modeling/BpmnUpdater): ignore custom elements on canvas.updateRoot
Closes #559
2016-06-01 09:43:02 +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
Vladimirs Katusenoks c1399372f2 fix(tests): updating test utilities to use { x, y } as well
Relates to #355
2016-04-27 14:43:35 +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 d83a0e9101 test(integration): add re-import stress test 2016-03-18 13:12:09 +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 a5b8f379fc chore(tests): use canvas.deferUpdate=false per default 2016-03-17 17:44:32 +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 a9d8ea7a20 fix(draw): correct compensation look and feel 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
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
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 701bae6c1f fix(tests): restore matchers
We previously inherited the test matchers from diagram-js.
With the diagram-js migration to Mocha, the matchers changed.

As a result Jasmine silently discarted a number of test cases on our
suite.

This restores the old matchers from diagram-js in our project.
2015-04-13 10:52:07 +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
Nico Rehwaldt 5735a8bc3a feat(library): add navigated viewer
This adds an additional viewer variant that contains canvas navigation
features.

Related to #169
2015-01-10 12:04:26 +01:00
Nico Rehwaldt 2019c658df feat(modeling): add property update mechanism
This adds the modeling#updateProperties(element, props) method to the
modeler that can be used to set BPMN 2.0 properties on elements.

By assigning the properties this way, the modeler is aware of the
elements that got changed and can update / redraw the elements
accordingly.

This hooks up with the modelers undo/redo chain, too.

Related to #167
2015-01-02 16:15:18 +01:00
Nico Rehwaldt 07ba58d805 fix(import): import message flows to dangling process
Closes #166
2015-01-02 12:56:32 +01:00
Nico Rehwaldt 74092d40a2 chore(Modeler): remove bpmn-js-cli 2014-12-30 22:53:58 +01:00
Nico Rehwaldt 2909847ac8 feat(direct-editing): rework editing
This commit updates the default direct editing behavior.

It activates on non-touch environments only and only on embedded
labels, too.

This provides a way smoother modeling experience.
2014-12-23 16:56:35 +01:00
jdotzki fd76cc98dd fix(BpmnImporter): Round diagram coordinates on import
The model coordinates stay intact until shape is changed.
2014-12-22 11:44:44 +01:00
Nico Rehwaldt 574af0814d feat(bpmn-js): add #destroy method and allow custom position
Closes #100
2014-12-18 09:45:45 +01:00
Nico Rehwaldt 18784c5994 fix(label-editing): listen to correct events 2014-12-17 21:55:03 +01:00
Nico Rehwaldt 710ff1be58 test(import): do not check internals 2014-12-09 18:04:59 +01:00
Nico Rehwaldt 6041717c6c feat(modeling): implement create via palette/context-pad
Related to #137
2014-12-07 13:08:50 +01:00
Nico Rehwaldt e387768ef1 fix(modeling): use correct parent for bpmn:TextAnnotation 2014-12-02 08:36:15 +01:00
Nico Rehwaldt a5ed6aa9db test(modeling/move): add label move undo tests 2014-11-28 13:19:57 +01:00
Nico Rehwaldt 9e37037ac6 fix(move): adjust positioning of all attached labels 2014-11-28 11:38:06 +01:00
Nico Rehwaldt 2258642cb4 fix(modeling): skip updating BPMN parent on label move 2014-11-27 11:55:38 +01:00
Nico Rehwaldt f363356fcb fix(import): handle multiple DI elements per semantic
Closes #158
2014-11-26 20:54:52 +01:00
Nico Rehwaldt e2aaf342f7 feat(import): wire root element
Related to #151
2014-11-26 18:17:52 +01:00
Nico Rehwaldt 2f679a36b9 feat(modeling): move to rules infrastructure
Related to bpmn-io/diagram-js#55
2014-11-21 09:22:51 +01:00
Nico Rehwaldt 2707fc8858 chore(test): fix brfs include encoding 2014-11-21 09:22:51 +01:00
Nico Rehwaldt 3d66502ee8 chore(test): assign fixed height to test containers 2014-11-21 09:22:51 +01:00
jdotzki 51918b3493 feat(drop): basic implementation
This commit adds a basic implementation for model drop

* using rules to check whether the drop is allowed
* updating the model after drop

See #127
2014-11-21 09:21:41 +01:00
Nico Rehwaldt 0b8baccd32 feat(palette): migrate to icon font
Related to #148
2014-11-17 18:26:07 +01:00
Nico Rehwaldt 3a377a3871 chore(core/ElementRegistry): pull API changes
Related to #153
2014-11-17 17:36:22 +01:00
Nico Rehwaldt b1f310a1db feat(context-pad): use font to render symbols
Related to #148
2014-11-17 11:02:25 +01:00
Nico Rehwaldt 8deb9d30a1 fix(import): ensure correctly import *associations
This commit ensures we correctly detect and import
Data*Associations and Associations.

It aligns logging across the import components, too, being slightly more
verbose and helpful.

Related to #112
2014-10-31 15:05:16 +01:00
Nico Rehwaldt 447086bbdf fix(import): correctly import label DI
Related to #145
2014-10-30 12:07:28 +01:00
Nico Rehwaldt c58532aeac chore(import): reorganize import related functionality
This commit puts all import related stuff into the import module.

The core module remains as an entry point to require the basic modules
needed by bpmn-js. At the time this is { import, draw }.
2014-10-30 12:06:43 +01:00
Nico Rehwaldt 05b044e64d feat(import): forgive missing bpmnPlane#bpmnElement
Related to #146
2014-10-28 15:13:52 +01:00
jdotzki 86f66bc534 improve(resize): allow to set minimum size for element 2014-10-14 17:26:50 +02:00
jdotzki d3dbeb1375 feat(bpmnpaletteprovider): BPMN item provider for the palette
close bpmn-js#137
2014-10-06 12:23:22 +02:00
Christian Lipphardt 81ca09fe64 chore(karma): increase timeout for no browser activity 2014-09-25 09:54:40 +02:00
Nico Rehwaldt 4428be4227 fix(draw): render labels as one-liner per default
This is a temporary fix for #113
2014-09-15 14:41:26 +02:00
Nico Rehwaldt 8cc530bf58 feat(modeling): move external labels with nodes
Closes #105
2014-09-11 17:22:59 +02:00
Nico Rehwaldt 179121880f test(bpmn-moddle): create integration test 2014-09-08 19:04:07 +02:00
Nico Rehwaldt 9d16e17c5c fix(labels): correct positioning + hide if empty
This commit improves the label handling by

* showing the label only if it exists
* updating the status accordingly
* positioning the label correctly on import

Related to #113
2014-09-08 19:03:39 +02:00
Nico Rehwaldt d0644c953a feat(modeling): integrate connection repair 2014-09-04 13:47:31 +02:00
Nico Rehwaldt a301acc4c4 feat(modeling): integrate connection.move
Related to #125
2014-08-28 16:17:55 +02:00
Nico Rehwaldt 5f986dcb3a test(import): assert correct number of children 2014-08-28 14:27:13 +02:00
Nico Rehwaldt c685c0fcce feat(project): add manhattan style layouting for flows
Related to #48
2014-08-27 16:55:26 +02:00
Nico Rehwaldt 5a2c5c425c chore(navigation): move features to diagram-js
This commit moves the navigation features from bpmn-js to diagram-js so
that they can be reused in other modeling / viewer tools.

Related to #124

BREAKING CHANGE:

Navigation features have been moved to diagram-js. If you use them in
custom bundles, update their location accordingly:

bpmn-js/lib/features/movecanvas -> diagram-js/lib/navigation/movecanvas
bpmn-js/lib/features/zoomscroll -> diagram-js/lib/navigation/zoomscroll
bpmn-js/lib/features/touch -> diagram-js/lib/navigation/touch
2014-08-27 15:43:18 +02:00
Nico Rehwaldt 5c2a079307 feat(tests): extract test helper to own module
This commit extracts the test helper utility to its own module.

Use in bpmn-js extensions via

var Helper = require('bpmn-js/test/helper');

This adds the global helper bindings bootstrapModeler/Viewer and inject.
2014-08-25 17:58:18 +02:00
jdotzki 470e0f88ba feat(modeling): update bpmn model on remove
On removeShape/removeConnection the BPMN model is updated accordingly.

related to #106
2014-08-22 15:20:48 +02:00
jdotzki 49d0be47d1 test(importer): fix xml id 2014-08-18 13:48:45 +02:00
jdotzki 7e345a348e test(importer): attribute default value
Make sure 'eventGatewayType' get default value if undefined.
2014-08-18 12:38:41 +02:00
jdotzki b5ba814952 improve(viewer): clean up SVG before export
Remove outer-marker-bound <rect> from export.

close bpmn-io/bpmn-js#97
2014-08-17 12:17:15 +02:00
Nico Rehwaldt 6be9a9e0e4 test(Modeler): fix overlay expectations 2014-08-12 11:53:38 +02:00
Nico Rehwaldt 5df579bd02 chore(tests): add diagram.css during tests 2014-08-12 11:53:00 +02:00
Nico Rehwaldt 86d5c20f07 fix(modeling): strip all namespaces for semantic id generation
Related to #108
2014-08-12 11:03:47 +02:00
jdotzki 58b9964828 improve(bpmnfactory): add semantic element IDs
The ID will have an semantic prefix: SequenceFlow_6bpz90i

related to bpmn-io/bpmn-js#108
2014-08-11 17:55:54 +02:00
Nico Rehwaldt ac3669f0ca feat(Modeler): include bpmn-js-cli 2014-08-08 14:42:50 +02:00
Nico Rehwaldt 2202bb07fa feat(tests): gracefully handle missing jasmine-test-container-support
This allows us to smoothly transition into a jasmine-free world.
2014-08-08 08:49:12 +02:00
Nico Rehwaldt 08f45fd444 test(Modeler): add additional overlay 2014-08-07 22:09:12 +02:00
Nico Rehwaldt 4f6d57accf fix(Viewer): freakin fix SVG export performance
From /.*<svg[^>]*>|<\/svg>.*$/g to /^.*<svg[^>]*>|<\/svg>.*$/g, spot the
   difference.
2014-08-06 15:22:06 +02:00
Nico Rehwaldt fb86037cdd fix(modeling): properly update sourceRef/targetRef for associations
Related to #90
2014-08-05 17:57:19 +02:00
Nico Rehwaldt 8116941fca test(overlays): add overlay support tests
Related to #54
2014-08-05 17:02:03 +02:00
Nico Rehwaldt c21b295ec2 feat(Viewer): fire <import.*> events 2014-08-05 08:34:54 +02:00
Nico Rehwaldt 911e991bc8 chore(tests): instantiate modeler only when neccessary
This commit replaces the test helper #bootstrapBpmnJS with either

This ensures we can have different Modeler/Viewer specific bootstrap
code being called based on whether we test modeling or viewing only
features.
2014-08-05 08:17:22 +02:00
Nico Rehwaldt 4a824911c2 feat(modeling): validate + create unique ids
This adds id logging + validation to the Modeler. As a result the
modeler will throw hard exeptions on colliding id mappings and may
generated unique ids.

Related to bpmn-io/bpmn-js#92
2014-08-04 16:34:37 +02:00
Nico Rehwaldt 925fbc98b8 chore(project): pull bpmn-moddle changes 2014-08-04 16:32:11 +02:00
Nico Rehwaldt b1663db035 fix(modeling): correct initial label positioning 2014-08-04 09:34:45 +02:00
Nico Rehwaldt 9bf74c95e6 chore(modeling): pull diagram-js changes 2014-08-04 09:34:45 +02:00
Nico Rehwaldt 11f166a7f9 fix(modeling): update di bounds during shape.create 2014-08-04 09:34:44 +02:00
Nico Rehwaldt 72729ce248 fix(modeling/BpmnFactory): do not serialize point#original 2014-08-01 08:32:56 +02:00
Nico Rehwaldt cb77832fbe feat(viewer): allow additional modules to be passed
This enables users to instantiate Viewers/Modelers via

```
new Viewer({
additionalModules: [ ... ]
});
```

to bootstrap their own modules with the viewer without overriding the
existing ones.
2014-08-01 07:55:47 +02:00
Nico Rehwaldt 826d798f19 chore(tests): remove unused node test folders
This commit cleans up reminders of the node-js test suite removal
by removing the test/node folder.

The test structure has been aligned by moving all tests from

* test/spec/browser to test/spec
* test/spec/integration to test/integration
2014-08-01 07:20:15 +02:00
Nico Rehwaldt c490d4539b test(modeling): ensure connection is layouted during shape move 2014-07-31 16:26:05 +02:00
Nico Rehwaldt 4afe3a80ed feat(modeling): crop connections on shape boundaries
Behind the scenes changes:

* use diagram-js Matcher util in tests
* add test cases for LayoutConnection
* add test cases for CreateConnection
* cleanup unused test diagram

Related to #2
2014-07-31 16:26:05 +02:00
Nico Rehwaldt bc61e6c3ed feat(features/modeling): implement BPMN update for shape+label move
Related to #2
2014-07-31 15:58:28 +02:00
Nico Rehwaldt d729818b94 feat(features/modeling): implement bpmn update as command listeners
This commit adds

* handling of bpmn update as command listeners
* label support

Related to bpmn-io/diagram-js#45

BREAKING CHANGE:

* rename bpmnModeling -> modeling to achive parity with diagram-js
2014-07-31 15:56:15 +02:00
jdotzki e1ed479314 feat(modeling): model gateways in processes
- Gateways can added via context pad
- BpmnModelingSpec.js split up into several files

See #88
2014-07-31 14:03:33 +02:00
Nico Rehwaldt ec83cc67d9 feat(import): deferred import connections 2014-07-23 18:53:04 +02:00
Nico Rehwaldt 1947a9c4de fix(features/bpmn-modeling): correctly remove flow from outgoing/incoming
Related to #6
2014-07-18 15:10:33 +02:00
Nico Rehwaldt f1b023f419 fix(features/bpmn-modeling): reuse created elements during redo
This commit fixes the append node command by caching and reusing created
shapes and bpmn elements.

This ensures we do not invalidate actions that build on these element
references.

Related to #6
2014-07-18 14:39:15 +02:00
Nico Rehwaldt 894280e723 feat(feature/bpmn-modeling): append task via context-pad
Related to #6, #40
2014-07-17 15:29:34 +02:00
Nico Rehwaldt 0880dd32e7 chore(tests): increase karma timeout 2014-07-17 14:11:28 +02:00
Nico Rehwaldt 4fe5bbc0f5 feat(features/bpmn-modeling): implement appendNode
Related to #6
2014-07-17 14:11:28 +02:00
Nico Rehwaldt f380a4b044 feat(lib/core): use directly linked data-model
Closes #91
2014-07-17 14:08:15 +02:00
Nico Rehwaldt 5da37a24c4 chore(tests): reactivate BPMN 2.0 rendering for tests
Related to #6
2014-07-17 14:06:30 +02:00
Nico Rehwaldt ae60914146 fix(import): handle invisible root elements
This commit ensures we pipe invisible root elements (Process,
Collaboration) through our import infrastructure, too.

This way we we receive proper events for them.

Related to #6
2014-07-17 14:06:29 +02:00
Nico Rehwaldt 90e3e86237 tests(import): add end event to simple fixture 2014-07-17 14:06:28 +02:00
Nico Rehwaldt 4fb8a04251 Merge branch 'tap' 2014-07-17 13:22:46 +02:00
jdotzki 7e73e9d7c9 feat(features/label-editing): add touch based editing
Closes #84
2014-07-17 13:20:59 +02:00
jdotzki 551b445837 feat(bpmntreewalker): improve 'boundary event' handling
- correct z-index of boundary event close #75
- also render 'boundary events' that have no flowNodeRef close #66
2014-07-15 12:43:30 +02:00
jdotzki 9d178b23f2 feat(bpmnrenderer): render X-OR marker only if 'isMarkerVisible' is set
close #69
2014-07-09 10:04:21 +02:00
Nico Rehwaldt 1aa431ca36 feat(Viewer): improve BPMN 2.0 XML parse error message
Related to #86
2014-06-30 19:04:40 +02:00
Nico Rehwaldt 88c5dcbb2f chore(core): swap draw dependency
Make bpmn-js/draw depend on bpmn-js/core and not vice versa
2014-06-30 17:09:39 +02:00
jdotzki 3c7033f92e feat(features/touch): add touch gesture support
Allow to navigate i.e. scroll/zoom on the diagram via touch gestures.

Closes #46
2014-06-27 14:24:29 +02:00
Nico Rehwaldt fcb35c366d test(zoomScroll): add basic test 2014-06-26 10:04:11 +02:00
Nico Rehwaldt 27b39a9d44 feat(modeler): add createDiagram API
Related to #4
2014-06-24 15:50:51 +02:00
Nico Rehwaldt 3f958aa84b test(bpmn/draw): correct test case 2014-06-24 15:35:19 +02:00
Nico Rehwaldt 8ad29d034d fix(import): forgive invalid flowElements
Instead of failing hard when we parse invalid flow elements (i.e.
TextAnnotation) we log a warning that may be handled by the diagram
import.

Related to #74
2014-06-23 14:44:03 +02:00
Nico Rehwaldt c7da579f83 fix(import/Importer): clear commandStack after import 2014-06-19 09:56:31 +02:00
Nico Rehwaldt dc3fca67b1 chore(tests): use jasmine-test-container-support for test execution
This allows us to have tests nice and easily rendered within test-local
containers, including captions, status highlighting and links.
2014-06-18 11:45:30 +02:00
Nico Rehwaldt 84510cc45d feat(label-editing): edit all labels
Related to #7
2014-06-17 11:53:07 +02:00
Nico Rehwaldt 3b9662527e feat(test-environment): add diagram-js like test env 2014-06-17 11:49:15 +02:00
Nico Rehwaldt e947cb8bbe chore(modeler/viewer): clean up module loading + api 2014-06-17 11:20:36 +02:00
Nico Rehwaldt d4e55f0ba3 fix(import): hide labels of hidden elements
Closes #78
2014-06-17 11:18:33 +02:00
Nico Rehwaldt d41cad1b67 fix(importer): import label on messageFlows
Closes #76
2014-06-17 11:03:03 +02:00
Nico Rehwaldt fc45cf8c61 test(import): add message flow label import test case
Related to #76
2014-06-13 11:02:07 +02:00
Nico Rehwaldt 7db31042aa chore(test/fixtures/bpmn): structure files by feature 2014-06-13 11:02:07 +02:00
Nico Rehwaldt 73fbeb3d27 feat(modeler): add label editing
Related to #7
2014-06-11 15:08:45 +02:00
Nico Rehwaldt 4e00114409 chore(project): upgrade to new diagram.js module structure 2014-06-11 14:41:55 +02:00
Nico Rehwaldt 281de42998 feat(BpmnRenderer): clean up flow markers
This fixes flow marker strokeDasharray being used on non browser SVG
viewers.
2014-05-28 22:49:35 +02:00
Nico Rehwaldt 698167783b fix(svg-export): correctly serialize svg 1.1
Closes #68
2014-05-28 12:19:35 +02:00
Nico Rehwaldt 21224bf32c chore(BpmnRenderer): cleanup test suite 2014-05-27 17:48:04 +02:00
jdotzki 9bfa4de445 fix(bpmnrenderer): render conditional flow marker only on task
close #67
2014-05-27 12:25:28 +02:00
Nico Rehwaldt 4b135fd9e7 fix(importer): show better error if no BPMNPlane#bpmnElement
Closes #40
2014-05-23 16:31:28 +02:00
Nico Rehwaldt 6dee60e2ab fix(svg-export): workaround safari incompatiblity 2014-05-23 10:58:44 +02:00
Nico Rehwaldt 1733bc6de9 fix(Importer): collapse subProcesses only
Related to #49
2014-05-22 10:51:40 +02:00
Nico Rehwaldt 19bf425efa feat(Import): hide child elements in collapsed parents
Closes #49
2014-05-21 16:30:17 +02:00
jdotzki d18089db0a feat(bpmnrenderer): add rendering of message marker on message flows
The marker will be placed in the middle of the message flow.

close #23
2014-05-21 13:51:59 +02:00
jdotzki 738a8a64f6 feat(bpmnrenderer): add default flow markers
close #29
2014-05-19 16:22:55 +02:00
jdotzki b2f2f1a29c feat(bpmnrenderer): add collection marker to pools
Collapsed pools looks ok. Expanded Pools have issues with z-index.
2014-05-18 12:23:17 +02:00
jdotzki 7695e66f44 test(bpmnrenderer): add test for conditional flows
#29
2014-05-16 14:45:48 +02:00
jdotzki be189b0daa test(bpmnrenderer): add test for collapsed event sub-processes
For now no visual indication about type of the start event. That will covered later.

close #31
2014-05-16 10:33:17 +02:00
jdotzki 7cdf82cce1 impr(bpmnrenderer): set correct outline for non interrupting start events
#31
2014-05-15 10:09:07 +02:00
jdotzki 10c1dbcf95 impr(bpmnrenderer): add task type symbols
close #45
2014-05-14 16:30:43 +02:00
jdotzki 048ce1e9cc feat(bpmnrenderer): add activity marker rendering
close #18
2014-05-09 16:31:10 +02:00
Nico Rehwaldt 6062ce10b8 test(draw/BpmnRenderer): use file relative model includes 2014-05-09 15:20:29 +02:00
jdotzki 4a26c14448 fix(bpmnrenderer): fixed incorrect rendering of event based gateways
close #42
2014-05-06 11:39:53 +02:00
Nico Rehwaldt 7d9ffa820a test(draw/BpmnRenderer): add collaboration label test 2014-05-06 10:00:06 +02:00
jdotzki 00bd2712e2 feat(bpmnrenderer): add text annotation rendering 2014-05-02 12:17:26 +02:00
jdotzki 4864fe99cf test(bpmnrenderer): add automatic rendering tests
Add all fixtures from test/fixtures/bpmn/render/ to the test suite.
2014-05-02 08:31:58 +02:00
Nico Rehwaldt a63186599e test(draw/BpmnRenderer): add test for group rendering 2014-04-30 16:36:02 +02:00
Nico Rehwaldt 5e9afa4d3a test(draw/BpmnRenderer): correct pool fixture
Reopenes #20
2014-04-30 16:28:30 +02:00
jdotzki 0411154440 test(bpmnrenderer): add test case for pools and lanes 2014-04-30 14:58:18 +02:00
Nico Rehwaldt e8b70ebc83 feat(labels): render external / internal labels
This commit adds internal + external label rendering for

* activity
* event
* gateway
* sequenceFlow
* subProcess
* transaction

Closes #16
2014-04-30 14:31:48 +02:00
jdotzki 1369fb5ad6 feat(bpmnrenderer): render group frame 2014-04-30 08:44:59 +02:00
Nico Rehwaldt c17204356c chore(project): move to karma-bro for test preprocessing 2014-04-30 01:57:54 +02:00
jdotzki 21b1ac0ab0 feat(bpmnrenderer): gateway renndering added
closes #17
2014-04-28 09:28:10 +02:00
Nico Rehwaldt 0a061e2060 test(draw/BpmnRenderer): add event tests 2014-04-25 13:31:18 +02:00
Nico Rehwaldt 7d0e8dabe0 test(browser): clean up unused code + keep rendered resources 2014-04-25 13:30:10 +02:00
jdotzki e146b27e44 feat(bpmnrenderer): add events to renderer
Add support for all event types expect Sub-Process events.

Closes #19
2014-04-24 10:09:54 +02:00
Nico Rehwaldt 06cf214249 chore(project): upgrade to latest karma-browserify
This fixes module loading bugs during test run and lets us use the
latest  browserify version.
2014-04-08 13:41:27 +02:00
Nico Rehwaldt 008015b227 feat(Viewer): embed and show project logo
The project logo now properly embeds in the Viewer and links to bpmn.io.
This way, we are able to ship it as part of a bpmn-js bundle.

In addition to that change this commit upgrades to the latest diagram-js
release, too which adds support for Diagram#destroy().

Closes #15
2014-04-08 13:41:24 +02:00
jdotzki 082ca624bb feat(bpmnrenderer): add collection marker
for Input- and Output-DataObjects too.
2014-04-07 00:16:57 +02:00
jdotzki 1b8095a442 feat(bpmnrenderer): add support for DataCollectionObject 2014-04-04 12:01:42 +02:00
Nico Rehwaldt 6737d90b92 fix(Viewer): correctly export SVG
Closes #26
2014-04-03 21:20:13 +02:00
Nico Rehwaldt bd6aa53662 chore(project): pull out bpmn model
This commit removes the bpmn model specific parts that have been
outsourced to the project bpmn-io/bpmn-moddle.

In addition it removes BPMN 2.0 diagrams that were crafted
especially for tests of that functionality.

Closes #25
2014-04-03 19:34:17 +02:00
Nico Rehwaldt 777fabd700 test(Model): add missing diagram file 2014-04-03 11:55:22 +02:00
Nico Rehwaldt 02313e6c1b feat(bpmn): make available BpmnRegistry in renderer
This commit upgrades the code base to the latest diagram-js changes and
adds a component called BpmnRegistry that can be used to retrieve a
certain BPMN/DI element from a shape/connection id.

Related to #19
2014-04-03 11:55:22 +02:00
jdotzki 62def97a2b feat(bpmnrenderer) add support for data objects
* DataObject
* InputData
* OutputData
* DataAssociation
* DataStore

closes #21
2014-04-03 08:46:00 +02:00
Nico Rehwaldt e631de2b2f feat(Model): support extensionElements
Related to #12
2014-03-27 16:45:02 +01:00
Nico Rehwaldt 144776399f refactor(import+examples): reorganize files 2014-03-25 14:08:11 +01:00
Nico Rehwaldt 20c4f4e396 fix(Viewer): handle and display errors
Closes #8
2014-03-21 21:10:01 +01:00
Nico Rehwaldt 8055914d41 fix(Import): forgive broken di (missing bpmnElement attr)
Related to #8
2014-03-21 16:55:59 +01:00
Nico Rehwaldt 1597af78c2 feat(XML): use http://bpmn.io/schema/bpmn as targetNamespace 2014-03-21 16:43:15 +01:00
Nico Rehwaldt 8c46e91fc0 test(browser/ImporterSpec): fix missing Renderer dependency 2014-03-21 14:42:14 +01:00
Nico Rehwaldt 3cafee107a fix(tests/fixtures): remove choreography task from data-items 2014-03-21 14:41:24 +01:00
Nico Rehwaldt 7e119dc402 feat(BpmnRenderer): basic render events and activities
Related to #1
2014-03-20 16:18:23 +01:00
Nico Rehwaldt 0954398c8d feat(example): update renderer/modeler example
This commit updates the example to accompain a renderer AND modeler
component.
2014-03-18 17:01:24 +01:00
Nico Rehwaldt 1d46d915d1 fix(BpmnTreeWalker): do not fail if no di 2014-03-17 11:13:03 +01:00
Nico Rehwaldt 60b27e393f test(fixtures/bpmn): add collaboration sample 2014-03-17 11:13:03 +01:00
Nico Rehwaldt cc1e91f37f fix(build): remove bowerify dependency 2014-03-14 17:52:30 +01:00
Nico Rehwaldt 514f51a031 test(BpmnTreeWalker): add sequence flow parsing test 2014-03-14 17:51:36 +01:00
Nico Rehwaldt f3f95154fd feat(import): import collaboration + artifacts + message flows
This commit adds support for collaborations, message flows and
artifacts.

Related to #1
2014-03-13 23:26:33 +01:00
Nico Rehwaldt 5a4d0b566a feat(import): import bpmn shapes
We are able to import shapes based on BPMNDI.

Related to #1
2014-03-13 16:06:30 +01:00
Nico Rehwaldt 423c757f1d chore(testsuite): organize tests into node/browser
This commit introduces a clean separation of node and browser tests.

ALL tests should be organized according to where they are run

non browser (áka node tests): `test/spec/node`
browser tests: `test/spec/browser`
2014-03-13 11:33:25 +01:00
Nico Rehwaldt 01a5f28e2d chore(project): initial import 2014-03-11 15:54:36 +01:00