Commit Graph

770 Commits

Author SHA1 Message Date
Martin Stamm 6bbedc47d1 feat(drilldown/compat): create planes for empty processes 2022-01-12 09:14:15 +01:00
Martin Stamm aaee4476f6 feat(di-ordering): support multi-root diagrams 2022-01-12 09:14:15 +01:00
Martin Stamm 8563bb2a4b feat(bpmn-replace): add basic collapsed sub-process awareness
closes #1511
2022-01-12 09:14:15 +01:00
Martin Stamm eed6c3b662 fix(elementFactory): ensure `collapsed` is set 2021-12-15 10:29:26 +00:00
Nico Rehwaldt a42ba5cd90 feat(util/ModelUtil): expose `isAny`
It is a core utility that will be tree-shaken if not used.

We'll continue to expose it via `ModelingUtil` for backwards
compatibility.
2021-12-14 11:58:10 +00:00
Nico Rehwaldt ed03dfe063 style: add newline when it is due 2021-12-14 11:58:10 +00:00
Nico Rehwaldt 4e08a1c703 chore: switch to truely multi-root aware mode
Use new `Canvas#*RootElement` APIs.
2021-12-14 11:58:10 +00:00
Nico Rehwaldt 56eb34cc82 feat(modeling): do not trigger direct editing on newly created group
The first canonical operation is to resize the group
to the respective size, not to assign a group label.
2021-12-09 09:00:07 +01:00
Nico Rehwaldt 6214772b85 feat(modeling): don't select start-event inside newly created sub-process
The canonical modeling operation shall
not be drill down, but continue to model.
2021-12-08 13:24:28 +01:00
Maciej Barelkowski 88a484e41e fix: don't create illegal `waypoint` property
Closes https://github.com/bpmn-io/bpmn-js/issues/1544
2021-12-03 19:45:37 +00:00
Nico Rehwaldt 4204c2bb2a Merge branch 'master' into develop 2021-12-03 17:38:54 +01:00
Nico Rehwaldt 3a96864a97 fix(modeling): set label color on `bpmndi:BPMNLabel#color`
Related to https://github.com/camunda/camunda-modeler/issues/2599.
2021-12-03 17:14:26 +01:00
bpmn-io-bot b3ff599127 Merge master to develop 2021-12-03 07:54:03 +00:00
Nico Rehwaldt 1ede893679 fix(modeling): handle close to {source,target} drop-on-flow
Closes https://github.com/bpmn-io/bpmn-js/issues/1541
2021-12-03 07:53:44 +00:00
Martin Stamm b2fd342054 feat(drilldown): make breadcrumbs reactive
* react to palette state
* expose own state to djs-container
2021-11-18 10:27:48 +00:00
Martin Stamm bd20db3aba chore(drilldown): rename subprocess-navigation -> drilldown and document
* rename subprocess-navigation -> drilldown
* add JSDoc comments
2021-11-04 13:31:34 +00:00
Martin Stamm e154d88d15 fix(drilldown): patch legacy processes before import 2021-11-04 13:31:34 +00:00
Martin Stamm 495997607c feat: add Overlays to navigate collapsed subprocesses
This introduces a new css file to bpmn-js. To upgrade, please include
`dist/assets/bpmn-js.css` in your application.

closes #1483
2021-10-21 11:05:08 +02:00
Maciej Barelkowski 96255cdd96 Merge branch 'master' into develop 2021-10-20 17:11:00 +02:00
Maciej Barelkowski 39d7b9e59b fix(moddle-copy): properly copy ids
Related to https://github.com/camunda/camunda-modeler/issues/1410
2021-10-20 17:07:26 +02:00
Maciej Barelkowski e1efb556f2 chore(bpmn-replace): reorganize toggling collapsed state 2021-10-20 14:58:50 +02:00
github-actions 6f421a4063 Merge master to develop 2021-10-15 11:07:21 +00:00
Maciej Barelkowski 1253326768 fix(copy-paste): do not create new id if unnecessary
Related to https://github.com/camunda/camunda-modeler/issues/1410
2021-10-15 13:07:00 +02:00
github-actions 6f88c01956 Merge master to develop 2021-10-15 08:38:22 +00:00
Nico Rehwaldt b4bd6557b1 chore: unbuild circular dependency
Inline `ResizeUtil` into behavior to prevent circular depdendency.

It is not being used outside the behavior anyway and uses behavior
internals (lane dimensions).
2021-10-15 10:38:06 +02:00
Nico Rehwaldt bb9dc16cac chore(modeling): consistently create DI with attrs
This fixes the existing DI creation methods in `BpmnFactory` and
simplifies the related `ElementFactory` code that relied on it.

In the past args got ignored and passing attrs to the created DI
was not possible, now it is.

BREAKING CHANGE:

With this change the following `BpmnFactory` API methods got reworked to
take (businessObject, attrs) as an input:

  * `BpmnFactory#createDiEdge`
  * `BpmnFactory#createDiShape`
  * `BpmnFactory#createDiPlane`
2021-09-03 15:14:00 +02:00
Martin Stamm c4206a4d31 fix(replace): create new di on replace 2021-09-03 15:14:00 +02:00
Nico Rehwaldt 7243aa4acc chore: consistently use new `getDi` utility 2021-09-03 15:14:00 +02:00
Martin Stamm 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
Martin Stamm 5589439774 feat: make elementFactory._getDefaultSize public
This has the benefit of using the public API method across our 
code base.
2021-09-03 15:14:00 +02:00
Martin Stamm 769bcbeeff chore: adjust features to new DI structure
Related to https://github.com/bpmn-io/bpmn-js/issues/1472
2021-09-03 15:14:00 +02:00
Joel Knott 8d90d4dc63 chore: use ES6 exports
Modified the file to use 'export default' instead of 'module.exports'
so that I don't get errors stating that there is no default export.
2021-08-25 08:41:34 +02:00
Nico Rehwaldt 809ec84309 chore(ordering): make exception handling fail-safe
Would previously fail if no new parent was given.
2021-06-24 09:44:40 +02:00
Nico Rehwaldt 5f266b20df chore(ordering): throw on missing order
Throw a proper exception of we fail to compute an elements ordering.
2021-06-24 09:44:40 +02:00
Maciej Barelkowski 2a60745991 Merge branch 'master' into develop 2021-06-02 08:53:22 +02:00
Maciej Barelkowski 7f1c0be591 fix(rules): disallow creating DataStoreReference if process is missing
Closes #1456
2021-05-31 18:31:39 +00:00
Maciej Barelkowski e0c4dea90d fix(modeling): append DataStoreReference to first available process
Related to #1456
2021-05-31 18:31:39 +00:00
Maciej Barelkowski 439bc4ead0 feat(modeling): use BPMN in Color for color setting
Additionally to custom bpmn.io properties, `modeling#setColor` will use
[BPMN in Color properties](https://github.com/bpmn-miwg/bpmn-in-color).
2021-05-27 12:43:53 +00:00
Maciej Barelkowski f120624580 Merge branch 'master' into develop 2021-05-06 16:06:04 +02:00
Martin Stamm b56604d5f3 fix(paste): don't insert multiple shapes on flow
closes #1440
2021-05-04 14:03:30 +00:00
Philipp Fromme 4806507936 feat: reconnect message flows when collapsing participant
Related to camunda/camunda-modeler#1651
2021-04-22 07:09:34 +00:00
Maciej Barelkowski d4078f1ab0 feat: replace elements on create
Closes #1340
2021-04-16 12:38:28 +00:00
Philipp Fromme c3e0d6d164 fix: copy root element references
Related to camunda/camunda-modeler#2185
2021-04-14 11:56:08 +00:00
KHADIR Tayeb 40f1d3af52 feat: enable connection tool for text annotation
fixes upstream camunda/camunda-modeler#2042
2021-04-07 11:51:22 +02:00
Nico Rehwaldt 6c02ecde34 fix(modeling): if we fix hover, we gotta fix out, too
This ensures our FixHoverBehavior (that ensures we drop onto /
connect to participants, not lanes) does fix the hover element
during *.out, too.

Otherwise there is no way for other behaviors to correctly
remove hover indicators.

Closes https://github.com/bpmn-io/bpmn-js/issues/1413
2021-01-28 11:11:27 +01:00
Niklas Kiefer 9b0f82dd47 fix(palette): activate globalConnect tool instead of toggling
This prevents unwanted move events when triggered from the palette action.

Closes #1402
2021-01-07 13:58:54 +00:00
Maximilian Trumpf 2e9f617911 fix(replace-menu): only allow cancel boundary events on transactions
related to camunda/camunda-modeler#2026
2021-01-05 07:27:08 +00:00
Alexis Zeghers 5eff166135 feat(replace): add multiplicity marker to replace menu for participants
Closes #533
2020-12-11 06:59:20 +00:00
Niklas Kiefer 8faee2bde9 feat(replace-menu): update label of collapsed pool
* Indicate the action in a clearer, more standard-compliant way --> replaces an expanded pool with an empty "black box" + removing its content.
* We will not update the action identifier (`replace-with-collapsed-pool`) to avoid breaking changes.
* Make it possible to retrieve label via function

Related to camunda/camunda-modeler#2022
2020-12-07 10:33:27 +00:00
Alexis Zeghers 1ccba5c5e6 feat(replace): add switch between DataStore and DataObject in replace menu
Closes #1372
2020-12-03 11:01:38 +00:00
Nico Rehwaldt 3cecc95ecf fix: make hasOwnProperty check safe 2020-12-02 20:28:33 +00:00
Nico Rehwaldt 667d469f38 feat(modeling): provide generic moddle properties update API
Modeling#updateModdleProperties allows users to update moddle elements
that are backed up by diagram elements.

It provides us a path forward when we start to update more _hidden_
things from within the modeling canvas.
2020-11-19 14:24:59 +00:00
Alexis Zeghers 4b46f695ce feat(modeler): add toggle to mark a data object as a collection
Closes #381
2020-11-18 10:03:46 +00:00
Nico Rehwaldt b75f1c2cb7 chore(modeling): drop dead code
Remove modeling feedback on paste rejected.

That event is long gone, as we two-step copy and paste nowadays.
2020-11-03 20:39:20 +00:00
Niklas Kiefer a9ce32449a fix(rules): allow message boundary event as message flow target
Closes #1346
Related to camunda/camunda-modeler#1919
2020-09-14 14:07:13 +02:00
Maximilian Trumpf 90614dd99a feat(rules/bpmnRules): typed start event to none type on subProcess move
closes #831
2020-07-30 09:34:09 +02:00
Maximilian Trumpf 06ca742bc2 feat(popup-menu/replace): disallow replace typed event in subprocess 2020-07-30 09:34:09 +02:00
Maximilian Trumpf 8bc29e7f3e fix(bpmnRules): disallow boundaryEvents as message flow targets
closes #1300
2020-06-23 15:48:00 +02:00
Niklas Kiefer 949703aa08 feat(rules): allow starting connections from groups 2020-06-05 08:52:46 +00:00
Niklas Kiefer b7ad57e348 feat(context-pad): append text annotations on groups
Related to #1327
2020-06-05 08:52:46 +00:00
Philipp Fromme 8d583dd91f chore(auto-place): adjust to new auto place API 2020-04-16 11:36:12 +00:00
Philipp Fromme e03a4b2c59 chore(auto-place): move common feature to diagram-js
https://github.com/bpmn-io/dmn-js/issues/470
2020-04-16 11:36:12 +00:00
Maciej Barelkowski f1745547f0 feat(layouter): prefer straight layout for sub-process connections
Related to https://github.com/camunda/camunda-modeler/issues/1758
2020-04-08 11:14:46 +00:00
Philipp Fromme 2dd1e13305 chore(documentation): fix JSDoc boolean types 2020-04-07 06:52:55 +00:00
Philipp Fromme fcb11a60f7 chore(documentation): fix JSDoc number types 2020-04-07 06:52:55 +00:00
Philipp Fromme 7a67ff95b2 chore(documentation): fix JSDoc string types 2020-04-07 06:52:55 +00:00
Nico Rehwaldt 33f5f2d663 Merge branch 'master' into develop 2020-03-30 14:58:43 +02:00
Nico Rehwaldt bf436bef1e feat(replace): create bpmn:LinkEventDefinition with empty name
Closes https://github.com/bpmn-io/bpmn-js/issues/1296
2020-03-30 11:36:08 +02:00
Nico Rehwaldt 960a085d4c fix(modeling): do not resize label target when setting empty label
This prevents a bug that cause the label target to be accidentally
resized if the user updates the label value to an empty string (or null).

Closes #1294
2020-03-30 07:53:16 +00:00
Nico Rehwaldt 95b50f08a7 feat(replace): create bpmn:LinkEventDefinition with empty name
Closes https://github.com/bpmn-io/bpmn-js/issues/1296
2020-03-27 07:23:12 +00:00
Maciej Barelkowski d48812766f Merge branch 'master' into develop 2020-03-16 13:24:50 +01:00
Maciej Barelkowski 7696534f22 fix(modeling): save bpmndi as drawn on the diagram
Related to https://github.com/camunda/camunda-modeler/issues/1326

Closes #985
2020-03-16 12:24:05 +00:00
Maciej Barelkowski 62f331bc3d Merge branch 'master' into develop 2020-03-13 14:15:14 +01:00
Maciej Barelkowski 6388312fb5 chore(space-tool): refactor participant minimum height function 2020-03-13 07:56:38 +00:00
Philipp Fromme dafa6f138c fix(space-tool): consider lanes when resizing participant
Related to camunda/camunda-modeler#1703
2020-03-13 07:56:38 +00:00
Philipp Fromme e4e789bd3e fix(label-editing): resize empty text annotations on complete
Related to bpmn-io/diagram-js-direct-editing#12
2020-03-10 14:35:39 +01:00
Nico Rehwaldt 368f9e14b5 fix(modeling): make AddLaneHandler recognize top-level labels
Related to https://github.com/camunda/camunda-modeler/issues/1715
2020-03-09 14:50:37 +01:00
Nico Rehwaldt d902a970e8 fix(modeling): update AddLaneHandler to new spaceTool API
Related to https://github.com/camunda/camunda-modeler/issues/1715
2020-03-09 14:50:37 +01:00
Maciej Barelkowski 53e7198a47 fix(modeling): assign id prefix matching element type
Closes #1285
2020-03-09 09:54:35 +00:00
Nico Rehwaldt ffa0a88d30 fix(modeling): update AddLaneHandler to new spaceTool API
Related to https://github.com/camunda/camunda-modeler/issues/1715
2020-03-09 10:48:05 +01:00
Nico Rehwaldt 707257e020 fix(copy-paste): emit <moddleCopy.canSetCopiedProperty> with existing property 2020-03-02 13:08:42 +00:00
Nico Rehwaldt c1cc210434 fix(modeling): add type hint 2020-02-06 13:47:32 +01:00
Philipp Fromme 50630c7aac fix(label-behavior): do not move labels if labelBehavior=false 2020-02-06 13:47:32 +01:00
Philipp Fromme 7ee304f424 feat(space-tool): ensure minimum size when resizing shapes 2020-02-06 13:47:32 +01:00
Maciej Barelkowski 035bb0c1fd feat(modeling): create generic ids for new elements
This makes sure that the semantic ID prefix reflects
the common type of all replace options.

ID prefixes for elements will match the examples:
  * `bpmn:ServiceTask` => `Activity_<id_suffix>`
  * `bpmn:EndEvent` => `Event_<id_suffix>`
  * `bpmn:EventBasedGateway` => `Gateway_<id_suffix>`
  * `bpmn:SequenceFlow` => `Flow_<id_suffix>`

Related to https://github.com/camunda/camunda-modeler/issues/1654
2020-02-06 13:43:04 +01:00
Maciej Barelkowski 9e31327335 feat(modeling/copy-paste): copy message referenced by SendTask
Related to https://github.com/camunda/camunda-modeler/issues/1637
2020-01-31 10:10:01 +00:00
Maciej Barelkowski dcc6d1ca94 feat(modeling/copy-paste): copy message referenced by ReceiveTask
Related to https://github.com/camunda/camunda-modeler/issues/1637
2020-01-31 10:10:01 +00:00
Maciej Barelkowski dc5a566e10 fix(modeling/copy-paste): copy referenced message if not present
Related to https://github.com/camunda/camunda-modeler/issues/1639
2020-01-31 06:36:23 +00:00
Nico Rehwaldt 82a250b014 fix(modeling): keep non-duplicate outgoing connection when dropping on flow
Closes https://github.com/bpmn-io/bpmn-js/issues/1263
2020-01-15 14:29:10 +00:00
Nico Rehwaldt 14eeba897d Merge branch 'master' into develop 2020-01-09 16:54:06 +01:00
nov rain 5a1b7f7117 feat(context-pad): Translate append ReceiveTask action title 2020-01-03 09:18:08 +00:00
Nico Rehwaldt 4a675b3780 fix(rules): allow associations where data associations are allowed, too
Related to https://github.com/camunda/camunda-modeler/issues/1635
2020-01-02 09:23:14 +00:00
Oguz Eroglu 27fec8bdf1 fix(snapping): snap origins of docking points on create
Related to: https://github.com/camunda/camunda-modeler/issues/1612
2019-12-17 10:36:44 +00:00
Nico Rehwaldt d6ab00783a Merge branch 'master' into develop 2019-12-16 10:55:28 +01:00
Niklas Kiefer 8efb20c03e fix(context-pad): do not open replace menu if context pad not open
Related to camunda/camunda-modeler#1613
2019-12-16 09:49:37 +00:00
Philipp Fromme 477217c891 feat(copy-paste): copy error, escalation, message and signal references
* copy references when copying element
* add referenced root element if it doesn't exist
* do NOT add referenced root element if root element with same ID exists

Related to camunda/camunda-modeler#1049.
Related to camunda/camunda-modeler#1463.
2019-12-11 23:08:14 +01:00
Niklas Kiefer 9f8a724e9a fix(modeling): do not crop waypoints on pasting
Related to camunda/camunda-modeler#1611
2019-12-11 11:18:54 +00:00
Nico Rehwaldt b4b5d1d139 fix(modeling): correct creation of nested lanes
With diagram-js@5 we've introduced the CreateBehavior that ensures
elements are not created on top of lanes but always on top of the actual
participant.

Unfortunately we forgot about the fact that lanes are created once in a
while, too.

This commit accounts for this fact and ensures we do not adjust the
parent of to-be-created lanes.

(A test cases for splitting nested lanes did not exist until now).

Closes #1254
Closes #1253
2019-12-11 10:52:43 +00:00
Nico Rehwaldt 4455c3fc35 fix(modeling/behavior): hook UpdateFlowNodeRefs behavior in on elements.create 2019-12-06 15:24:54 +00:00
Nico Rehwaldt d769e6ddb0 fix(grid-snapping): do not update waypoints on multiple create
Related to https://github.com/camunda/camunda-modeler/issues/1617
2019-12-06 15:24:54 +00:00