zeebe-io / zeebe-modeler

Desktop Application for modeling Zeebe Workflows with BPMN
MIT License
221 stars 49 forks source link

Integrate zeebe-bpmn-moddle extension #274

Closed azeghers closed 4 years ago

azeghers commented 4 years ago

Description

Bumps zeebe-bpmn-moddle to v0.3.0 and integrates the new moddle extension.

The extension ensures that properties are allowed to be copied when replacing elements. Eg. a CallActivity with a calledElement attribute changed to a simple Task won't have its calledElement copied because it's not allowed on Task elements, in accordance with the json schema.

The schema itself is incomplete in its current version and doesn't specify for instance that a <zeebe:TaskDefinition> isn't allowed on anything else than a ServiceTask, implicitely allowing the property to be copied regardless of the parent element's type.

See https://github.com/zeebe-io/zeebe-bpmn-moddle/issues/4 for context

Which issue does this PR address?

Closes #248

Acceptance Criteria

Definition of Done

MaxTru commented 4 years ago

Works in principle :heavy_check_mark:

Tested with calledElement => works Tested with Input Output Parameters => kind of works, (Inputs and Outputs are removed), but the surrounding IoMapping element remains present. (ie. this is what a task looks likes after it was morphed from a ServiceTask which had Input and Output mappings:

    <bpmn:task id="Activity_117rfe9" name="asdf">
      <bpmn:extensionElements>
        <zeebe:ioMapping />
      </bpmn:extensionElements>
    </bpmn:task>

We should get this "works 50%" state resolved. Therefore I will directly create an Issue in zeebe-bpmn-moddle and propose to merge this after we have zeebe-bpmn-moddle fixed.

MaxTru commented 4 years ago

See https://github.com/zeebe-io/zeebe-bpmn-moddle/pull/5