All notable changes to bpmn-js are documented here. We use semantic versioning for releases.
Note: Yet to be released changes appear here.
CHORE: provide align and distribute context pad and popup menu icons as html (#1920)DEPS: update todiagram-js@12.2.0
FEAT: allow event rendering without icons (#1917)
CHORE: update translations infra
Republish of v13.0.7.
Republish of v13.0.6.
DOCS: update translations
DEPS: update todiagram-js@12.1.0
DEPS: bump todiagram-js@12.0.2
FIX: update label onmodeling.updateModdleProperties(#1872)
FIX: export types astype(#1897)DEPS: bump todiagram-js@12.0.1
FIX: correct some type definitions (#1896)
FEAT: rework and complete type definitions (#1886)DEPS: update todiagram-js@12.0.0
DEPS: update todiagram-js@11.13.0
FIX: correctViewer#saveXMLtype definition (#1885)FIX: correctViewerconstructor type definition (#1882)
FEAT: movecreate-append-anythingto external module (#1873, #1862)CHORE: usediagram-js@11.11.0built-in selection after replace feature (#1857)DEPS: update todiagram-js@11.12.0
- The create/append anything features moved to an external module. Include it to restore the
v11create/append behavior.
FEAT: add root elements to definitions when provided viamodeling#update(Moddle)Properties
FIX: correct redo triggering on international keyboard layouts (#1842)
FEAT: translate append menu entry labels and groups (#1810)FEAT: activate direct editing on participant creation (#1845)FIX: dragging append menu entries creates element connection (#1843)FIX: append shortcut triggers create menu if append not allowed (#1840)FIX: restore marker rendering workaround (9c6e475)
Republish of v11.3.0.
FEAT: featureserviceandusertasks more prominently in replace menu (#1836)FEAT: hide rare items initially from create/append menus (#1836)FEAT: retrieve instantiation modules with context (#1835)DEPS: update todiagram-js@11.9.0
Adds create/append anything.
FEAT: append menu available via context pad (#1802, #1809, #1815, #1818, #1831)FEAT: create menu available via palette (#1811, #1809, #1817)FEAT: simplify connection-multi icon (#1822)FEAT: join pathsroundby default (1827)FEAT: improved BPMN symbol rendering (#1830)FEAT: round connection corners (#1828)FEAT: improve visibility of popup menu (#1812)FIX: missing special attributes inbpmnElementFactory(#1807)FIX: handlebpmn:DataObjectReferencewithout data object in replace menu (#1823)DEPS: update todiagram-js@11.8.0
FIX: correct popup menu display in fullscreen (#1795)DEPS: update todiagram-js@11.4.3
FEAT: add replace element keyboard binding (#1785)FEAT: addreplaceElementeditor action (#1785)DEPS: update todiagram-js@11.4.1
DEPS: update todiagram-js@11.3.0
DEPS: update todiagram-js@11.2.0
Re-release of v11.0.2.
FIX: correct test for replace options (#1787)
DEPS: update todiagram-js@11.1.1
Reworks popup menu UI.
- New popup menu UI introduced with
diagram-js@11. Seediagram-jsbreaking changes and migration guide. - Keyboard-related features no longer use
KeyboardEvent#keyCode. Use a polyfill (e.g. keyboardevent-key-polyfill) if you need to support old browsers.
FEAT: add BPMN specific space tool (#1344)FIX: do not resizebpmn:TextAnnotationwhen using space tool (#1344)FIX: correct attachers left hanging when using space tool (#1344)FIX: stick labels to label targets when using space tool (#1344, #1302)DEPS: update todiagram-js@10
FIX: correct preserving of outgoing connections on event-based gateway morph (#1738)
DEPS: update tobpmn-moddle@8
DEPS: update todiagram-js@9.1.0
Updates the library target to ES2018.
FEAT: use ES2018 syntax (#1737)
- Migrated to ES2018 syntax. Read the blog post with details and a migration guide.
FIX: ignore elements which cannot be colored (#1734)
FEAT: allow clipboard to be serialized (#1707)FEAT: allow cloning of elements (#1707)FEAT: copy groups in a safe manner (#1707)FIX: make clipboard contents immutable (#1707)FIX: do not alter inputs passed toElementFactory#create(#1711)FIX: prevent bogus meta-data to be attached on paste (#1707)FIX: only claim existing IDs (#1707)FIX: prevent double paste on label creation (#1707)FIX: move labels when collapsing sub-process (#1695)FIX: assign default size when expanding element (#1687)FIX: render sequence flows always on top (#1716)DEPS: update todiagram-js@8.9.0DEPS: update tobpmn-moddle@7.1.3
FIX: prevent unnecessary scrollbar (#1692)FIX: check for replacement using actual target (#1699)DEPS: update todiagram-js@8.7.1
FIX: properly size icons for distribute/align menu (#1694)
FIX: correctly toggle loop characteristics (#1673)
FIX: cancel direct editing before shape deletion (#1677)
FEAT: rework select and hover interaction on the diagram (#1616, #640, #643)FEAT: rework diagram interaction handles (#640)FEAT: clearly distinguish select and hover states (#1616)FEAT: allow text annotation on sequence flows (#1652)FEAT: add multi-element context pad (#1525)FEAT: change default color to off black (#1656)FEAT: select connection after connect (#644)FIX: copy elements withstringextension properties (#1518)FIX: cancel direct editing before shape deletion (#1664)FIX: remove connection on source connection deletion (#1663)FIX: set correct label color when batch coloring elements (#1653)FIX: always reconnect labels and associations (#1659)FIX: correct connection drop highlightingDEPS: replaceinheritswithinherits-browserDEPS: bump todiagram-js@8.5.0
FEAT: allow to select participant and subprocess via click on body (#1646)FIX: comply with strict style-src CSP (#1625)FIX: complete direct editing when selection changes (#1648)DEPS: update todiagram-js@8.3.0DEPS: update tomin-dom@3.2.0
FIX: removelabelproperty on empty label (#1637)FIX: create drilldown overlays onviewer.open(574a67438)FIX: render data association inside collapsed sub-processes (#1619)FIX: preserve multi-instance properties when toggling between parallel and sequential (#1581)FIX: correct hanging sequence flow label after collapsing sub-process (#1617)FIX: correct start event not added to newly created sub-process (#1631)
FIX: support modeling of groups in collapsed subporcesses (#1606)FIX: override default padding of breadcrumb element (#1608)
FIX: use ES5 everywhere (#1605)FIX: support DIs without associated business object (#1605)DEPS: bump todiagram-js@8.1.2(bdf9cf3)
FEAT: support drilldown and modeling of collapsed subprocesses (#1443)FEAT: update embedded label bounds when shape is moved (#1586)FIX: create di for embedded labels (#1579)CHORE: exposeBpmnRendererextension points (#1585)DEPS: bump todiagram-js@8.1.1
- Reworked the link of elements to bpmn DIs. You must access the
didirectly from the diagram element instead of thebusinessObject#1472. - Reworked
viewer.openbehavior for single planes (#1576). - Reworked import and
BpmnFactoryAPIs #1472. - Added
bpmn-js.css, which is required to display drilldown overlays correctly.
FIX: re-use process for redo of first participant (#1439)FIX: ensure IDs are claimed when used (#1555)FIX: prevent morphing data stores outside participants (#1508)
FEAT: select newly created sub-process (6214772b)FEAT: select newly created group for immediate resizing (56eb34cc)FEAT: simplify color schemeFIX: set label color onbpmndi:BPMNLabel#color(#1543)FIX: don't create illegalbpmndi:BPMNEdge#waypointsproperty (#1544)FIX: correct direct editing on touch devicesDEPS: update todiagram-js@7.8.2
FIX: correct resize handles hidden behind element (#1520)FIX: handle close to source or target drop on flow (#1541)CHORE: bump todiagram-js@7.6.3
FIX: properly re-use ID of a copied element if available (#1503)
FIX: re-use ID of a copied element if available (#1503)CHORE: unbuild circular dependency withResizeUtil(#1500)
FEAT: givekeyboardfine-grained control over which events to handle (#1493)FIX: correct keyboard shortcuts not working in direct editing mode (#1493)DEPS: update todiagram-js@7.15
FIX: convert file toES6module (#1478)
CHORE: improve error recovery in ordering providerDEPS: update build dependencies
FIX: allow connectingbpmn:MessageFlowtobpmn:CallActivity(#1467)DEPS: update tobpmn-moddle@7.1.2
FEAT: support BPMN in Color (#1453)DEPS: update tobpmn-moddle@7.1.1
DEPS: update diagram-js-direct-editing to v1.6.3
FIX: serializebpmn:DataStoreReferencecorrectly in case if first participant is an empty pool (#1456)
FEAT: reconnect message flows when participant is collapsed (#1432)FEAT: replace elements on create (#1340)FEAT: show message name on message flow (#777)FEAT: ensure auto-placed elements are visibleFIX: fix reversed connection preview (#1431)FIX: copy root element references on replace (#1430)DEPS: update todiagram-js@7.3.0
FIX: disallow inserting multiple elements on a sequence flow (#1440)
FIX: correctly serializexmlattributes onAnyelementsDEPS: update bump tobpmn-moddle@7.0.5
FEAT: enable connection tool for text annotations (#1428)
FIX: always emitsaveXML.doneFIX: correct path intersections not being detected in certain casesCHORE: bump todiagram-js@7.2.3
FIX: prevent bendpoint hover error (#1387)
FIX: correct label colors on connect / hover (#1380)FIX: correct new parent indicator when leaving lane (#1413)CHORE: update todiagram-js@7.2.0
TEST: simplify markup created by built-in test helpers
FIX: activate, not toggle global connect tool on palette clickFIX: only allow cancel boundary events on transactionsCHORE: addnpm startscript for demo purposes
FEAT: improve replace label for collapsed pools (8faee2bd)FEAT: allow participant multiplicity marker to be toggled (#533)FEAT: support soft breaks / discretionary hyphens in labels (#1383)FEAT: improve tool activation via keyboard shortcuts or editor actionsFEAT: allow components to react to auxiliary mouse button interactionsFEAT: move canvas on auxiliary button mouse downCHORE: bump todiagram-js@7
- Auxiliary mouse button events will now be passed as
element.*mouse events to components. You must filter your event listeners to prevent reactions to these events (1063f7c1).
FEAT: update translatable strings (#1364)FEAT: add collection marker to DataObjectReference (#381)FEAT: provide generic command for updating moddle properties (#1376)FEAT: add switch between DataStoreReference and DataObjectReference in replace menu (#1372)FIX: align collection and parallel instance markers style (#1371)
FIX: correctly emit outelement.eventafter drop-on-flow (#1366)
FIX: correct keyboard zoom in key on international keyboard shortcuts (#1362)
CHORE: bump todiagram-js@6.8.0CHORE: migrate totravis-ci.com
CHORE: bump todiagram-js@6.7.1
FEAT: disallow typed start events inside non-event based sub processes (#831)CHORE: bump todiagram-js@6.7.0
FIX: disallow boundary events as message flow targets (#1300)
Republish of v7.1.0.
FEAT: allow annotating groups (#1327)
FIX: roundtrip defaultxmlnamespace (#1319)CHORE: bump tobpmn-moddle@7.0.3
FEAT: make import and export APIs awaitable (#812)FEAT: update watermark (#1281)CHORE: deprecatedimport.parse.completecontext payload (157aec6e)CHORE: clarify license terms (bc98a637)CHORE: bump tobpmn-moddle@7.0.1
- The toolkit now requires the ES6
Promiseto be present. To support IE11 you must polyfill it.
FIX: correct namespaces being removed on diagram export (#1310)CHORE: bump tobpmn-moddle@6.0.6
FEAT: prefer straight layout for sub-process connections (#1309)FEAT: move common auto-place feature to diagram-js, add BPMN-specific auto-place feature (#1284)CHORE: make bpmn-font a development dependency (63045bdf)CHORE: bump todiagram-js@6.6.1
CHORE: bump tobpmn-moddle@6.0.5
FIX: parse>in attribute names and body tagCHORE: bump tobpmn-moddle@6.0.4
FEAT: serialize link events with an empty name (#1296)
FIX: correct accidental resizing of label target (#1294)
FIX: export BPMNDI in correct order (#985)
FIX: resize empty text annotationsCHORE: bumpmin-domversionCHORE: bump todiagram-js@6.4.1
FIX: correctly move flows when adding lane (#1287)FIX: restore semantic IDs for non flow nodes (#1285)
FIX: prevent editor crash in some strict execution environments (#1283)
FEAT: generate more generic IDs for new elements (035bb0c1)FEAT: copy referenced root elements (message, signal, ...) (dc5a566e)FEAT: ensure minimum size when resizing elements with space tool (7ee304f4)FIX: correct interaction events insidebpmn:Groupelements (#1278)FIX: correct copy and paste of collapsed sub-processes (#1270)FIX: correct various space tool related issues (#1019, #878)CHORE: rework space toolCHORE: update todiagram-js@6.4.0
FIX: correct serialization ofDataAssociation#assignmentCHORE: update tobpmn-moddle@6.0.2
FIX: keep non-duplicate outgoing connection when dropping on flows (#1263)FIX: properly reconnect message flows when collapsing participantCHORE: update todiagram-js@6.3.0CHORE: update tobpmn-moddle@6.0.1
FIX: translate Append ReceiveTaskFIX: allow associations where data associations are allowed, too (4a675b37)FIX: correct origin snapping on multi-element create (27fec8bd)CHORE: update todiagram-js@6.2.2
Republish of v6.1.0.
FEAT: copy signals, escalations and errors (#1245)FEAT: provide base viewer / modeler distributions (bb94b206)FEAT: add horizontal and vertical resize handlesFEAT: improve connection cropping (bump topath-intersection@2)FIX: correctly mark elements as changed on{shape|connection}.createundoFIX: do not open replace menu after multi create (#1255)CHORE: update todiagram-js@6.2.0
FIX: disable waypoints-cropping after pasting connections (9f8a724e)
FIX: only updateLane#flownNodeRefsonce during paste (4455c3fc)FIX: do not adjust labels on paste (b2b607f5)FIX: do not snap connection waypoints on paste (d769e6dd)
FIX: correctly fix hover on cleanup (#1247)
FIX: render colored BPMN groups (#1246)CHORE: bump todiagram-js@6.0.2
CHORE: bumpdiagram-js-direct-editingdependency
CHORE: bump todiagram-js@6.0.1
FEAT: rework (re-)connecting of shapes (#427)
Connecting and re-connecting shapes got reworked via #427:
- The rules
connection.reconnectStartandconnection.reconnectEndgot replaced withconnection.reconnectrule BpmnLayouter#layoutConnectionwaypoints can be specified via hint
FIX: account for label pasting in label behavior (#1227)
FIX: re-select only existing elements when dragging is finished (#1225)FIX: correctly hide nested children of a collapsed shapeCHORE: bump todiagram-js@5.1.1
FEAT: adjust label position post creation (41c6af18)FEAT: copy and paste boundary events (2e27d743)FIX: ordering after moving boundary events between hosts (#1207)FIX: do not remove sequence flow condition on type change (b2900786)FIX: do not remove default sequence flow on type change (37bcd070)FIX: do not duplicate flow node references (168a1493)FIX: ignore labels that are being created in adaptive label positioning (44cceb5d)
FIX: snap connections to task mid (86c61b0)FIX: snap connections to sub process mid (83e9f05)FIX: complete direct editing when auto place starts (dcf440b)FIX: do not clear diagram if no diagram to clear (#1181)FIX: copy boundary events attachments (#1190)FIX: do not copy generic properties (a74d83)
FIX: correct sequence flow layout after drop on flow (#1178)
Republish of v5.0.2.
FIX: allow reconnecting to loops (#1121)CHORE: bump todiagram-js@5.0.1
FIX: import boundary event associations (#1170)
FEAT: add two-step copy and paste (#1137)FEATaddelements.createrule for creating multiple elements (#1137)FEAT: make containers draggable via their borders / labels only (#1097, #957)FEAT: allow copied elements to be filtered (#888)FIX: prevent accidental dragging of participants and sub-processes (#1097, #957)FIX: keep labels during pool extraction (#921)FIX: duplicatebpmn:CategoryValuewhen copying groups (#1055)FIX: translate group creation entry in palette (#1146)CHORE: useelement.copyPropertyevent to copy category value when copying group (12bedca5)CHORE: bump todiagram-js@5
Copy and paste as well as create is completely reworked:
CopyPaste: removeModelCloneHelperin favor ofModdleCopyservice, removeproperty.cloneevent, addmoddleCopy.canCopyProperties,moddleCopy.canCopyPropertyandmoddleCopy.canSetCopiedPropertyeventBpmnRules: removedelements.pasterule in favor ofelements.createruleBpmnRules: removedelement.pasteruleElementFactory: useattrs.diproperty instead ofattrs.colorsfor fill and stroke when creating element throughElementFactory#createBpmnElement- To prevent additional behavior on create after paste you should check for the
createElementsBehaviorhint, cf.bf180321
FIX: creatingbpmn:Participanton singlebpmn:Groupthrowing error (#1133)CHORE: bump todiagram-js@4.0.3
FIX: prevent dropping on labels andbpmn:Groupelements (#1131)
FIX: correct element positioning update (#1129)CHORE: bump todiagram-js@4.0.2
FIX: prevent adding lane from crashing IE (#746)FIX: correct inverse space tool visuals (#1105)CHORE: updatediagram-js-direct-editingto prevent install warningCHORE: update todiagram-js@4.0.1
FEAT: add top, right, bottom, left snapping with container elements (#1108)FEAT: add grid snapping (#987)FEAT: allow modeling of groups (#343)FEAT: improve modeling rules behind event-based gateways (#1006)FEAT: adjust default collapsed pool to standard height (5affe2570)FEAT: add connection previews (#743)FEAT: create expanded sub-process with start event included (#1039)FEAT: improve automatic label adjustment for boundary events (#1064)FEAT: improve creation of initial participant (#1046)FEAT: improve boundary to host loop layout (#1070)FEAT: make connection segment move the primary connection drag behaviorFEAT: allow label and group movement everywhere (#1080)FEAT: improve message flow to participant connection in the presence of lanes (#950)FEAT: allow detaching of boundary and attaching of intermediate events (#1045)FEAT: simplify requested palette and context pad translations (#1027)FEAT: simplify participant dragging in the presence of nested lanes (fdb299dc)FEAT: correctly render all kinds of multiple events (#1091)CHORE: validate BPMN 2.0 XML ids as QNames (92c03679a)FIX: correctly handle flow reconnection + type replacement (#896, #1008)
CHORE: bump todiagram-js@4.0.0
FEAT: restoreViewer#importDefinitionsand make it public API (#1112)
FIX: prevent HTML injection in search (diagram-js#362)
FIX: prevent HTML injection in search (diagram-js#362)CHORE: bump todiagram-js@2.6.2
FIX: do not evaluate pasted text as HTML (#1073)
FIX: do not evaluate pasted text as HTML (#1073)
Republish of v3.4.0 without .git folder.
FIX: properly render colored connection markers (#981)FEAT: add ability to open different DI diagrams (#87)FIX: correctly layout straight boundary to target connections (#891)FEAT: resize participant to standard size on collapse (#975)FEAT: consistently layout connection on reconnect start and end (#971)FEAT: layout connection on element removal (#989)FIX: properly crop sequence flow ends on undo/redo (#940)CHORE: bump todiagram-js@3.3.0
FIX: ignore unchanged direct editing completionCHORE: update todiagram-js-direct-editing@1.4.2
FEAT: displayDataInput/DataOutputlabels (89719de3b)FEAT: support basicDataInput/DataOutputmove (#962)FIX: properly handleDataInput/DataOutputmove (#961)
FIX: update todiagram-js-direct-editing@1.4.1to trim trailing/leading whitespace in task names (#763)
FIX: gracefully handle missing waypoints (45486f2)
FIX: bump todiagram-js@3.1.3/tiny-svg@2.2.1to work around MS Edge bug (ed798a15)
FEAT: set isHorizontal=true for new and updated participant/lane DIs (#934)
CHORE: update todiagram-js@3.1.1
CHORE: update todiagram-js@3.1
FIX: render labels always on top (#920)
FIX: do not join incoming/outgoing flows other than sequence flows on element deletion (#917)
FIX: correct IE 11 delete keybinding (#904)
FIX: restore copy-paste behavior
FEAT: improve context pad tooltip titles forEventBasedGateway(350a5ab)FEAT: display group names (#844)FEAT: add ability to move selection with keyboard arrows (#376)FEAT: supportSHIFTmodifier to move elements / canvas with keyboard arrows at accelerated speedFEAT: requireCtrl/Cmdto be pressed as a modifier key to move the canvas via keyboard errorsFEAT: auto-expand elements when children resize (#786)CHORE: bind editor actions and keyboard shortcuts for explicitly added features only (#887)CHORE: update todiagram-js@3.0.0FIX: disallow attaching ofBoundaryEventto aReceiveTaskfollowing anEventBasedGateway(#874)FIX: fix date in license (#882)
BpmnGlobalConnectprovider got removed. Useconnection.startrule to customize whether connection should allowed to be started (#565, #870)EditorActions/Keyboarddo not pull in features implicitly anymore. If you roll your own editor, include features you would like to ship with manually to provide the respective actions / keyboard bindings (645265ad)- Moving the canvas with keyboard arrows now requires the
Ctrl/Cmdmodifiers to be pressed.
FIX: correct horizontal embedded label padding
FIX: prevent error to be thrown on lane move (#855)
FEAT: snap message flows tobpmn:Eventcenter during connect (#850)CHORE: bump todiagram-js@2.6.0FIX: allow label movement over message flow (#849)
FIX: make viewer IE 9 compatibleFIX: prevent duplicate connections after drop on flow (#774)FIX: fix rules not preventing redundant loop (#836)
FEAT: improve layouting of boundary event to host loops (#467)FEAT: allow circular activity to activity loops (#824)FEAT: create label on appropriate free position (#825)CHORE: bump todiagram-js@2.5.0FIX: repair label position not being adapted on host move
FIX: revert toArialas the default rendering font (#819)FIX: keep event definitions when switching from interrupting to non-interrupting boundary event (#799)
CHORE: update todiagram-js@2.4.0
FIX: correct updating of multiple data stores (300e7010)
FEAT: emit export events (#813)FEAT: unset businessObject name if empty (6c081d85)FEAT: resize text annotation on text change (100f3fb2)FIX: apply data store behavior in collaboration only (5cc28d5d)FIX: create/update labels when updating element name viaModeling#updateProperties(4a0f6da8)
FEAT: support specifyinglineHeightfor text rendering (#256)FEAT:bpmn:LaneSetelements get an ID assigned on creationFEAT: external labels can be deleted, clearing the elements name (#791)FEAT: add ability to override default element colors (#713)FEAT: add ability to override font family and size of rendered labels (4bb270f1)
Republish of v2.0.0 due to registry error.
FEAT: allow data store to be modeled between participants (#483)CHORE: update todiagram-js@2.0.0FIX: correctly handle missingbpmndi:Labelbounds during model updating (#794)
- The
PopupMenuAPI got rewritten, cf.b1852e1d
CHORE: update tobpmn-moddle@5.1.5
FIX: correctly serialize extension attributes onbpmn:Expression
FIX: correctly auto-place from boundary events attached to host edges (#788)
FEAT: expose additionalBpmnTreeWalkerAPIs for advanced import use-casesCHORE: bump diagram-js and object-refs version
FIX: correct side-effects config to not include*.cssfiles
FEAT: add initial snapping when creating associationsCHORE: update todiagram-js@1.3.0FIX: allow message flows between collapsed poolsFIX: complete direct editing on popup menu useFIX: focus label editing box on element creation
FIX: escapedata-element-idin CSS selectors
FEAT: show gateway icon on context pad without marker (15dfab6b)
FIX: properly wire$parenton copy + pasteFIX: improve boundary event rendering to correct SVG to image conversion
FIX: re-exposeTestHelper#bootstrapBpmnJSutil
FIX: correct library default export
Republished 1.0.0 with CHANGELOG entries.
CHORE: convert code base to ES modulesCHORE: update utility toolbelt
- You must now configure a module transpiler such as Babel or Webpack to handle ES module imports and exports.
FEAT: encode entities in body properties during XML exportCHORE: bump tobpmn-moddle@4.0.0CHORE: bump utility version
CHORE: bump todiagram-js@0.31.0
Check git log for earlier history.