zeebe-io / zeebe-modeler

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

Adapt recent upstream ReplaceMenuProvider changes #289

Closed pinussilvestrus closed 3 years ago

pinussilvestrus commented 3 years ago

Is your feature request related to a problem? Please describe.

Inside the Zeebe Modeler, we override the basic replace menu provider with a custom one. However, if we would like to upgrade bpmn-js@8, we would run into errors because of breaking changes.

export default function ReplaceMenuProvider(
    bpmnFactory, popupMenu, modeling, moddle,
    bpmnReplace, rules, translate) {

Describe the solution you'd like

Update the custom replace menu to handle this while upgrading to bpmn-js@8.

Describe alternatives you've considered

Don't use inheritance but create a proper new provider

export default class ReplaceMenuProvider {

  constructor(popupMenu) {
    popupMenu.registerProvider('bpmn-replace', this);
  }

  getPopupMenuEntries(element) {
    return function(entries) {
      // ...
    };
}

ReplaceMenuProvider.$inject = ['popupMenu'];

==> We will likely do it on the fly while fixing #288.

Additional context

Related to #288

pinussilvestrus commented 3 years ago

Fixed alongside https://github.com/zeebe-io/zeebe-modeler/issues/288. Let's close the issue on this side.