Hello,
I create a custom element to palette, but I cannot drag the new item and use it at a flow.
I getting the following error:
TypeError: Cannot read property ‘pointers’ of undefined
at to (bpmn-modeler.production.min.js:formatted:1)
at s (bpmn-modeler.production.min.js:formatted:1)
at la.init (bpmn-modeler.production.min.js:formatted:1)
at gp.start (bpmn-modeler.production.min.js:formatted:1)
at startCreate (CustomPaletteProvider.ts:26)
at CustomPaletteProvider.push…/src/app/custom/CustomPaletteProvider.ts.CustomPaletteProvider.getPaletteEntries (CustomPaletteProvider.ts:35)
at bpmn-modeler.production.min.js:formatted:1
at b (bpmn-modeler.production.min.js:formatted:1)
at lm.getEntries (bpmn-modeler.production.min.js:formatted:1)
at lm._update (bpmn-modeler.production.min.js:formatted:1)
My CustomPaletteProvider.ts
import {IPalette, IPaletteProvider, OriginalPaletteProvider} from “…/bpmn-js/bpmn-js”;
export class CustomPaletteProvider implements IPaletteProvider {
static $inject = [‘palette’, ‘originalPaletteProvider’, ‘elementFactory’, ‘create’];
private readonly elementFactory: any;
private create: any;
constructor(private palette: IPalette, private originalPaletteProvider: IPaletteProvider, elementFactory, create) {
palette.registerProvider(this);
this.elementFactory = elementFactory;
this.create = create;
}
getPaletteEntries() {
console.log(this.create);
function startCreate(event, elementFactory, create) {
var serviceTaskShape = elementFactory.create(
‘shape’, { type: ‘bpmn:ServiceTask’ }
);
create.start(event, serviceTaskShape);
}
return {
'create-call-api': {
group: 'activity',
title: 'Call API',
className: ['fa-tv', 'fa'],
action: {
dragstart: startCreate(event, this.elementFactory, this.create),
click: () => console.log( 'Call API ', this.elementFactory)
}
}
};
}
}