99 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
829989ed88 fix: error info use tagged template 2024-04-29 09:06:03 +02:00
ea9318b3d5 feat: do not translate import errors
These are technical errors that shall be searchable in
public knowledge bases _as is_.
2024-04-24 10:18:42 +02:00
e95e16746d chore: lift up label-editing/LabelUtil 2023-04-24 10:30:43 +02:00
2ca4907d5c fix: correct various JSDocs 2023-04-20 16:02:33 +02:00
3ea2852221 chore: simplify element type names 2023-04-19 12:18:42 +02:00
fc4f4afd74 chore(import): fix JSDoc 2023-04-19 12:18:42 +02: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
79bd395689 chore(Importer): correct spelling 2022-03-16 17:54:13 +01:00
4e531cc9f7 chore: code style 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
e9cf046bbb chore(import): don't monkey patch ID but use attrs utility 2022-01-12 09:14:15 +01:00
bb59dd0b61 chore(import): make root discovery future proof
Related to https://github.com/bpmn-io/bpmn-js/issues/1546
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
bd20db3aba chore(drilldown): rename subprocess-navigation -> drilldown and document
* rename subprocess-navigation -> drilldown
* add JSDoc comments
2021-11-04 13:31:34 +00:00
29a6636ac7 feat(import): support importing multiple diagrams at once
closes #1474
2021-10-08 10:16:03 +02:00
597c417dce chore: throw error when accessing DI from business object
Related to https://github.com/bpmn-io/bpmn-js/issues/1472
2021-09-03 15:14:00 +02:00
2b11d871cd feat: decouple DI from businessObject
In the diagram `di` is now accessed via the diagram element, not the
business object. This has the benefit that elements in multiple diagrams
can easily be represented.

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

BREAKING CHANGE:

* Instead of referencing the `di` from the business object, reference it
  from the diagram element representing it.
2021-09-03 15:14:00 +02:00
d19c4b0027 fix(import): pass context during collaboration import 2021-08-30 09:41:34 +00: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
2dd1e13305 chore(documentation): fix JSDoc boolean types 2020-04-07 06:52:55 +00:00
7a67ff95b2 chore(documentation): fix JSDoc string types 2020-04-07 06:52:55 +00:00
566f0eadaa fix(import): set <isFrame> property on import
Closes #1278
2020-02-07 10:45:02 +01:00
e65809f246 docs(project): correct spelling 2019-09-09 12:21:33 +02:00
33156e43be chore(project): fix linting errors 2019-08-19 14:27:33 +00:00
5a7d579d3a fix(import): handle data associations on boundary import
Closes #1170
2019-08-19 08:19:04 +00:00
fb3398fa39 feat(label-editing): enable direct editing for group labels
* Adds external label for Groups
* Modifies referenced categoryValue

Closes #955
2019-05-28 06:46:53 +00:00
daee95743d chore(Viewer): type BPMNDiagram arg where possible 2019-04-16 15:20:12 +02: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
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
100f3fb2ee fix(label-behavior): text annotation resizing after text property change
Depends on bpmn-io/diagram-js#259

Related to camunda/camunda-modeler#631
2018-06-13 11:02:55 +02:00
4bb270f192 chore(draw): unify text rendering into service
A newly introduced TextRenderer is responsible for text
rendering and text related bounds computation.

This removes a bunch of code duplication, too.
2018-05-24 16:26:01 +02:00
7537757357 feat(labels): labels can be deleted
Related to camunda/camunda-modeler#243
2018-05-24 16:22:51 +02: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
67b9711399 feat(import/BpmnTreeWalker): make businessObject#di prop configurable
This allows advanced use-cases such as lazy importing
elements into the diagram.
2018-04-25 21:31:43 +02:00
12a38da9c7 feat(import): expose additional BpmnTreeWalker functionality
* expose API needed for lazy sub-process imports
* also changes #handleDeferred to NOT expect deferred
  as a parameter anymore

Related to bpmn-io/bpmn-js-signavio-compat#1
2018-04-25 21:31:02 +02:00
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
bec8d06e08 chore(project): fix typos introduced 2018-03-22 12:43:36 +01:00
11f5a22471 chore(project): adjust min-dash usage (2) 2018-03-22 11:59:39 +01:00
245d1d6a96 chore(project): upgrade lodash to min-dash 2018-03-22 11:59:39 +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
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
81de98f786 feat(bpmn-renderer): use updated text util api
Related to bpmn-io/diagram-js#205
2017-03-02 10:55:40 +01:00
bf133bb8da fix(rules): allow data-association + participant move
Closes #638
2016-12-19 15:33:42 +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