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.
* take numeric line height into account when
rendering text labels
* take line height into account when directly
editing labels
* use default line height of 1.2 for text rendering
Closes#803
* 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).
This fixes a bug where Modeling#updateLabel would not work on
text annotations, because these need to have labels pre-configured.
* Modeling#updateLabel now takes the (optional) newBounds
* newBounds must now explicitly be passed to trigger resize
for text annotations
* newBounds is _only_ passed for text annotations via
LabelEditingProvider (it was discarded before anyway)
* lib/features/label-editing did not depend on lib/features/modeling
for historical reasons. It now uses the offical #updateLabel
API provided by Modeling
* Localize test diagrams
Closes#753
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.
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 }.
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
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.
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