59 Commits

Author SHA1 Message Date
bc24a6092d fix(import): handle missing BPMNDiagram#plane
Without this change any auxiliary <bpmndi:BPMNDiagram /> without a plane
would crash the importer.

Now the (broken) BPMN diagram is simply ignored during import.
2024-05-27 11:45:29 +02:00
0106e4f831 Merge master to develop 2022-08-19 09:44:04 +00:00
69beeff423 fix: render sequence flows always on top
Closes https://github.com/bpmn-io/bpmn-js/issues/1716
2022-08-19 11:43:49 +02:00
c42dbf8a70 style: update code style
Apply latest bpmn-io code style.
2022-08-18 10:57:23 +00:00
bd180e3977 test(drilldown): add integration test for multi-di planes 2022-02-03 09:11:06 +01:00
e6c6996521 test: restructure multi-diagram import tests 2022-01-31 11:23:04 +01:00
99bfdd2fb8 feat(importer): import all associated processes
closes #1546
2022-01-31 11:23:04 +01:00
a09926c325 test(import): improve assertions of root elements 2021-12-14 11:58:10 +00:00
4e08a1c703 chore: switch to truely multi-root aware mode
Use new `Canvas#*RootElement` APIs.
2021-12-14 11:58:10 +00:00
495997607c feat: add Overlays to navigate collapsed subprocesses
This introduces a new css file to bpmn-js. To upgrade, please include
`dist/assets/bpmn-js.css` in your application.

closes #1483
2021-10-21 11:05:08 +02:00
832faf178c chore(test): add data-association test case 2021-10-08 10:16:03 +02:00
29a6636ac7 feat(import): support importing multiple diagrams at once
closes #1474
2021-10-08 10:16:03 +02:00
ca8488b2c9 test: adjust to use getDi utility function
Related to https://github.com/bpmn-io/bpmn-js/issues/1472
2021-09-03 15:14:00 +02:00
04ca31fac9 feat(lib): Promisify public APIs
This commit promisifies following APIs:

   BaseViewer#importXML
   BaseViewer#importDefinitions
   BaseViewer#open
   BaseViewer#saveXML
   BaseViewer#saveSVG
   Modeler#createDiagram

Related to https://github.com/bpmn-io/bpmn-js/issues/812

BREAKING CHANGES:

* Users are now expected to have Promises either by default or
polyfilled as the APIs return a Promise now.
2020-04-29 11:12:23 +02:00
506321eafd chore(deps): update to bpmn-moddle v7.0.1
Adds awaitable import and export apis.

Related to https://github.com/bpmn-io/bpmn-js/issues/812
2020-04-29 11:12:23 +02:00
566f0eadaa fix(import): set <isFrame> property on import
Closes #1278
2020-02-07 10:45:02 +01:00
1c0585aaaf feat(Viewer): allow to select diagram to view
This introduces a new parameter to `Viewer#importXML`
which enables to choose the diagram to display.

```
var viewer = new Viewer({ container: container });
viewer.importXML(xml, diagramId, done);
```

Closes #87
2019-04-16 15:20:12 +02:00
00b7d9ecc2 fix(import/BpmnTreeWalker): pass context to unhandled process handler 2019-04-16 09:15:14 +00:00
1538bd8a9e style(tests): use appropriate chai matcher 2019-03-12 08:56:03 +00:00
45486f2afe fix(import): gracefully handle missing waypoints
This ensures we do not blow up if a diagram
is missing waypoints for connections.

Related to camunda/camunda-modeler#1294
2019-03-12 08:56:03 +00:00
690417b389 feat(modeling): allow data store anywhere in collaboration
ensure valid BPMN 2.0 parent when

* creating/moving data store
* removing participant
* turning process into collaboration
* turning collaboration into process

Closes #483
2018-05-17 15:09:37 +02:00
9be61259bd chore(project): drop 'use strict'
We use ES modules, so 'use strict' is not necessary anymore.
2018-04-03 18:09:53 +02:00
d3449ca87c chore(project): es6ify source code
* use ES6 import / export
* UTILS: export individual utilities
* TESTS: localize TestHelper includes

BREAKING CHANGE:

* all utilities export independent functions
* library sources got ported to ES6. You must now use
  a ES module bundler such as Browserify + babelify or
  Webpack to consume this library (or parts of it).
2018-04-03 16:32:14 +02:00
245d1d6a96 chore(project): upgrade lodash to min-dash 2018-03-22 11:59:39 +01:00
e8e5e2ced9 chore(project): update to min-dom@2 2018-03-22 00:54:59 +01:00
b03014fc2c chore(project): update to new lint style 2018-02-27 10:08:31 +01:00
19e4e19bb5 chore(project): migrate to new SECTION comments 2018-02-27 09:57:22 +01:00
d32da90013 chore(lint): bump eslint
...and fix lint errors
2018-01-28 20:35:04 +01:00
37a06a378d chore(tests): use absolute lib requires 2018-01-24 11:41:21 +01:00
1e6186e3ce feat(draw): render sequence flows behind tasks
* ordering provider ensures sequence flows appear
  behind tasks
* importer makes sure we render elements in the order
  lanes > sequence flows > other flow elements
* consistent minimal opacity ensures elements in
  front of tasks don't look _connected_

Closes #727
2017-12-14 11:56:00 +01:00
7ffb865023 chore(project): consistent async error handling
Async utilities properly propagate _all_ errors to the
specified _done_ callback. Failing in _done_ does not
re-invoke it.

Adjustments made in

* Viewer#importXML
* Viewer#saveSVG
* Importer#importBpmnDiagram

Tests cleaned up to remove un-necessary `if (err) { ...` snippets.
2017-12-09 22:31:15 +01:00
a314e8dbfa fix(bpmn-importer): hide sequence flows inside collapsed subprocesses
Closes #231
2016-06-15 11:07:02 +02:00
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
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
65c94ea9ac feat(import): pass definitions during import.start event 2015-12-08 15:18:13 +01:00
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
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
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
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
e3faad9cda test(import): increase timeout for complex import test 2015-07-20 16:04:58 +02:00
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
c3e4ad3e40 test(project): replace jasmine with mocha
Closes #204
2015-07-15 17:42:37 +02:00
373b8c6293 test(importer): decouple from draw fixtures 2015-04-22 16:19:26 +02:00
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
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
07ba58d805 fix(import): import message flows to dangling process
Closes #166
2015-01-02 12:56:32 +01:00
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
710ff1be58 test(import): do not check internals 2014-12-09 18:04:59 +01:00
9e37037ac6 fix(move): adjust positioning of all attached labels 2014-11-28 11:38:06 +01:00
f363356fcb fix(import): handle multiple DI elements per semantic
Closes #158
2014-11-26 20:54:52 +01:00