bpmn-io / bpmn-io/bpmn-js-differ
SequenceFlow type change is not recognized
- Dominant language
- JavaScript
- Stars
- 55
- Forks
- 20
- PR merge metrics
- No merged PRs in 30d
Description
SequenceFlow element type toggling (eg.: Sequence flow -> Default flow) is not recognized as a change.
Label change works fine.
**__changed_** property of **_diff_** function result should contain something similar:
```ts
_changed : {
Gateway_id: {
attrs: {
default: {
oldValue: undefined,
newValue: 'Flow_id'
}
}
}
}
```
Object model contains this default attribute:
```ts
modeler._definitions.rootElements[0].flowElements.find(f => f.id == 'Gateway_id').default
ModdleElement {id: 'Flow_id', name: 'default', $parent: ModdleElement, …}
$type: "bpmn:SequenceFlow"
id: "Flow_id"
name: "default"
$attrs: (...)
// ...
```
Library version: 2.0.2
Contributor guide
Research direction
Start by tracing the diff function against the modeler._definitions.rootElements[0].flowElements model shown in the issue, focusing on the Gateway_id.default value when a SequenceFlow changes type. Compare this path with the existing label-change handling and verify the result's _changed.attrs output. Done means the default-flow change is reported with its oldValue and newValue as illustrated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100