A BPMN 2.0 rendering toolkit and web modeler. https://bpmn.io/toolkit/bpmn-js/
Go to file
Gustavo E. Jimenez Folta 424a05a18a feat(modeling): correctly handle event based gateway connections
Handles two new scenarios:

1. A user wants to connect an event-based gateway to an event-based
gateway target with existing incoming sequence flows. The existing
sequence flows are removed before connecting the new one.

2. A user wants to replace a gateway, that is already connected to
event-based gateway targets, with an event-based gateway. The existing
incoming sequence flows of the targets, which do not belong to the
newly replaced event-based gateway, are removed before the replacement
operation finishes.

This is because target elements in an event gateway configuration
must not have any additional incoming sequence flows other than
that from the event gateway.
2019-05-06 12:41:11 +02:00
.github chore(PULL_REQUEST_TEMPLATE): fix typo 2019-04-18 16:07:18 +02:00
docs chore(CONTRIBUTING): link conventional commits 2018-09-27 14:34:48 +02:00
lib feat(modeling): correctly handle event based gateway connections 2019-05-06 12:41:11 +02:00
resources chore(project): update screencast 2019-04-11 09:35:56 +02:00
tasks chore(ci): add wiredeps script 2019-04-12 17:42:08 +02:00
test feat(modeling): correctly handle event based gateway connections 2019-05-06 12:41:11 +02:00
.babelrc chore(project): build using ES6 ready deps 2018-04-03 16:30:05 +02:00
.eslintignore chore(project): don't lint coverage folder 2018-10-04 16:37:28 +02:00
.eslintrc chore(project): build pre-packaged distros with Rollup 2018-04-03 18:09:52 +02:00
.gitignore chore(project): re-introduce package-lock 2018-11-27 08:38:38 +00:00
.npmignore chore(project): move CONTRIBUTING to .github folder 2018-07-25 11:40:04 +02:00
.travis.yml chore(ci): add wiredeps script 2019-04-12 17:42:08 +02:00
CHANGELOG.md chore(CHANGELOG): update to v3.4.1 2019-04-25 20:37:06 +02:00
LICENSE chore(LICENSE): update date 2019-02-28 10:22:35 +01:00
README.md chore(project): move CONTRIBUTING to .github folder 2018-07-25 11:40:04 +02:00
index.js fix(project): correct library default export 2018-04-05 09:47:37 +02:00
package-lock.json 3.4.1 2019-04-25 20:40:30 +02:00
package.json 3.4.1 2019-04-25 20:40:30 +02:00
rollup.config.js chore(project): bump devDependencies 2018-10-26 09:39:35 +00:00

README.md

bpmn-js - BPMN 2.0 for the web

Build Status

View and edit BPMN 2.0 diagrams in the browser.

bpmn-js screencast

Installation

Use the library pre-packaged or include it via npm into your node-style web-application.

Usage

To get started, create a bpmn-js instance and render BPMN 2.0 diagrams in the browser:

var xml; // my BPMN 2.0 xml
var viewer = new BpmnJS({
  container: 'body'
});

viewer.importXML(xml, function(err) {

  if (err) {
    console.log('error rendering', err);
  } else {
    console.log('rendered');
  }
});

Checkout our examples for many more supported usage scenarios.

Dynamic Attach/Detach

You may attach or detach the viewer dynamically to any element on the page, too:

var viewer = new BpmnJS();

// attach it to some element
viewer.attachTo('#container');

// detach the panel
viewer.detach();

Resources

Building the Project

Perform the following steps to build the library, including running all tests:

cd bpmn-js
npm install
npm run all

You may need to perform additional project setup when building the latest development snapshot.

Please checkout our contributing guidelines if you plan to file an issue or pull request.

bpmn-js builds on top of a few additional powerful tools:

  • bpmn-moddle: Read / write support for BPMN 2.0 XML in the browsers
  • diagram-js: Diagram rendering and editing toolkit

License

Use under the terms of the bpmn.io license.