Commit Graph

1204 Commits

Author SHA1 Message Date
Nico Rehwaldt da4f321284 chore(project): use external bpmn-font
This is a breaking change for users that may rely on `assets/bpmn-font`
being present in the library.

BREAKING CHANGE:

* use `bpmn-font` package, specifically `bpmn-font/dist` if you need the
font previously contained in the assets directory.
2018-02-02 11:24:00 +01:00
Nico Rehwaldt 1184cbd271 chore(distro): apply envify transform 2018-02-02 11:24:00 +01:00
Nico Rehwaldt ea17632311 chore(distro): rename dist files and omit .map
This renames distribution files to:

  {variant}.development.js
  {variant}.production.min.js

Additional changes:

* drops .map file; users should use .development bundle
  for easier debugging

Related to #725

BREAKING CHANGE:

* distribution files have been renamed; users must update their
  apps accordingly if they'd like to use newer bpmn-js dists
2018-02-02 11:24:00 +01:00
Nico Rehwaldt d9d0d9dcdb chore(distro): consolidate into single task 2018-02-02 11:24:00 +01:00
Nico Rehwaldt f7cb94244d chore(project): update copyright banner
* {start}-present
2018-02-02 11:24:00 +01:00
Nico Rehwaldt dc9b06d1b1 chore(project): build distro pre-publish
Closes #725
2018-02-02 11:24:00 +01:00
Nico Rehwaldt 1a0e14efa5 chore(project): package dist folder
Related to #725
2018-02-02 11:24:00 +01:00
Nico Rehwaldt 0b159674e2 chore(package): rebuild package-lock.json 2018-02-02 11:24:00 +01:00
Nico Rehwaldt e3bf356461 chore(project): drop grunt + bundle assets to dist directory
* replace grunt with npm scripts
* copy static assets to dist directory
* build and copy library variants to dist directory

Related to #725
2018-02-02 11:24:00 +01:00
Philipp Fromme f047fefd89 fix(update-properties-handler): fix typo 2018-01-31 18:21:16 +01:00
Nico Rehwaldt ce791b8e17 test(Modeler): verify color support
Related to #756
2018-01-31 12:22:31 +01:00
Nico Rehwaldt cbb2f9f600 fix(modeling): correct DI updating
Don't assign <di> property to businessObject; will
be serialized as di="[Object...]" otherwise.

Closes #756
2018-01-31 12:22:31 +01:00
Nico Rehwaldt 3124f9ba96 chore(modeling): minor SetColorHandler cleanup 2018-01-31 12:16:08 +01:00
Nico Rehwaldt 953574eefb style(tests): reformat UpdatePropertiesSpec
* line width = 80
2018-01-31 12:06:17 +01:00
Nico Rehwaldt acb2d83856 chore(project): bump diagram-js dependency
Adds support for reacting to element.contextmenu.

Related to #750
2018-01-31 11:16:20 +01:00
Nico Rehwaldt 38bff969ac chore(tests): reformat color tests 2018-01-30 13:15:41 +01:00
Nico Rehwaldt 46cd6ea119 0.26.6 2018-01-29 20:26:36 +01:00
Nico Rehwaldt f637d63da9 fix(tests): resolve lib/* locally in helper util
* ensures reusing test/helper does not break
2018-01-29 20:23:14 +01:00
Nico Rehwaldt 3d17c37a42 0.26.5 2018-01-29 20:19:06 +01:00
Nico Rehwaldt 7c7db26027 chore(lint): add function expression indent rule 2018-01-29 20:09:41 +01:00
Nico Rehwaldt f1daf4841f fix(modeling): support newBounds
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
2018-01-29 17:20:41 +01:00
Nico Rehwaldt d32da90013 chore(lint): bump eslint
...and fix lint errors
2018-01-28 20:35:04 +01:00
Nico Rehwaldt 49cc8dc7ea chore(lint): disallow trailing spaces
+ format lint rules
+ fix lint error
2018-01-24 11:41:57 +01:00
Nico Rehwaldt 37a06a378d chore(tests): use absolute lib requires 2018-01-24 11:41:21 +01:00
Nico Rehwaldt 85dd6f6cd8 0.26.4 2018-01-18 16:04:56 +01:00
Nico Rehwaldt 729ddce821 fix(copy-paste): don't override descriptor <type> property
This is redundant anyway, as we take the type + additional
information from the to-be-copied business object.

Closes #751
2018-01-18 11:22:09 +01:00
Nico Rehwaldt f40b5c41b3 chore(project): bump bpmn-moddle dependency
Pulls in the following improvements:

* gracefully detect and handle attribute re-declaration in broken
  BPMN 2.0 documents
2018-01-09 19:22:39 +01:00
Nico Rehwaldt 82ef31295a 0.26.3 2018-01-04 14:18:29 +01:00
Nico Rehwaldt 1f5c69a58b fix(modeling): create ConditionalEventDefinition with condition
This ensures we always create valid BPMN 2.0 XML when
creating conditional start and intermediate events.

Closes #747
2018-01-03 14:19:01 +01:00
Nico Rehwaldt f15407d95b chore(Viewer): inline logo as SVG
Make logo retina friendly and save 30 bytes.

Closes #119
2018-01-02 13:46:15 +01:00
Nico Rehwaldt 6e76f76ae4 0.26.2 2017-12-22 22:00:17 +01:00
Nico Rehwaldt 1c3d06ae2d chore(project): bump diagram-js version
* inverts SHIFT+wheel scroll behavior (matching default
  behavior in standard applications now)
2017-12-22 21:57:08 +01:00
Nico Rehwaldt fdab6a852c 0.26.1 2017-12-22 15:51:21 +01:00
Nico Rehwaldt 562674e74b chore(project): bump diagram-js dependency
Fixes text sometimes being selected during dragging.

* makes a ContextPad hack obsolete, too.
2017-12-22 15:49:00 +01:00
Nico Rehwaldt 01ed2bce68 0.26.0 2017-12-22 13:30:43 +01:00
Nico Rehwaldt 4b94f35d63 chore(project): bump diagram-js version
Adds support for create from contextPad (#742).
2017-12-22 10:38:37 +01:00
Nico Rehwaldt 367399d509 feat(rules): support attach from context-menu
* take target attach and parent hints on `connection.create`
  rule into account to implement create from context-menu

Related to bpmn-io/diagram-js#242

Closes #742
2017-12-22 10:32:54 +01:00
Nico Rehwaldt 11354e951c chore(project): migrate to new attach related Modeling APIs
Related to bpmn-io/diagram-js#242

BREAKING CHANGE:

* as documented in bpmn-io/diagram-js#242 a few modeling APIs changed;
  users of these APIs must adapt accordingly.
2017-12-22 10:32:54 +01:00
Nico Rehwaldt 22d2b97bbe feat(auto-place): handle boundary events
Add basic auto-placement of boundary events:

* handle top aligned events
* handle bottom aligned events
* take boundary events into account when placing
  host elements and vice versa

Related to #563
2017-12-22 10:32:54 +01:00
Nico Rehwaldt 718836f53e chore(auto-place): improve TextAnnotation and DataElement locations
Related to #563
2017-12-22 10:32:54 +01:00
Nico Rehwaldt a845560425 chore(auto-place): handle multiple source <-> target connections
Related to #563
2017-12-22 10:32:54 +01:00
Nico Rehwaldt 2e4cd7e0a9 chore(auto-place): factor out deconflict position into method 2017-12-22 10:32:54 +01:00
Nico Rehwaldt ae96f3714d feat(modeling): add auto placement from context menu
Elements will automatically be created at appropriate
positions when context menu create entries are being
clicked (rather than dragged).

This marks a major step forward for mobile modeling,
too as dragging, especially dragging out from very small
controls is very cumbersome to do.

Things we take into account:

* for bpmn:FlowNodes, we try to compute the current
  distance between elements on the flow based on
  connections going in and out of the flow nodes
  source element
* for bpmn:TextAnnotation we assume placement of the
  element top right of the source shape
* for bpmn:DataObject and friends we assume a
  placement bottom right of the source shape
* for all elements, we try not to place elements on
  top of each other; i.e. new elements will be pushed
  up or down accordingly, if an element at a chosen
  position does already exist

Integration into other services:

* context pad provider works with autoPlace, if
  available and defaults to drag start without
* auto placed elements are selected and direct editing
  may conditionally be activated based on element type
  (LabelEditingProvider knows the rules)

Users can out out of autoPlace by specifying the configuration
property `config.contextPad.autoPlace = false`.

Closes #563

BREAKING CHANGE:

* This breaks the default interaction from the context
  pad; if you rely on clicking to start the drag
  you can opt out of autoPlace:

  ```
  new BpmnJS({ contextPad: { autoPlace: false } });
  ```
2017-12-22 10:30:44 +01:00
Nico Rehwaldt 6b5277b936 chore(draw): render connections without source
This allows us to renders temporary connections,
i.e. during create / connect.
2017-12-22 10:30:44 +01:00
Nico Rehwaldt 0dd5c9cb6c chore(tests): rename suite 2017-12-22 10:30:44 +01:00
Nico Rehwaldt cff0c4ef91 chore(tests): remove unused utility 2017-12-20 10:37:38 +01:00
Nico Rehwaldt a64cf9b7a1 chore(tests): rename description 2017-12-20 10:37:27 +01:00
Nico Rehwaldt ddd1dae25c chore(project): bump diagram-js version 2017-12-18 22:52:13 +01:00
Nico Rehwaldt c220bfb612 fix(draw): no opacity for boundary events
Ensure boundary events have no opacity.

Fixed regression introduced with #727
2017-12-15 14:35:51 +01:00
Nico Rehwaldt 2218b84af6 test(modeling): verify connection move behavior
Closes to #511
2017-12-14 23:42:02 +01:00