| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- /**
- * A modeler for BPMN 2.0 diagrams.
- *
- *
- * ## Extending the Modeler
- *
- * In order to extend the viewer pass extension modules to bootstrap via the
- * `additionalModules` option. An extension module is an object that exposes
- * named services.
- *
- * The following example depicts the integration of a simple
- * logging component that integrates with interaction events:
- *
- *
- * ```javascript
- *
- * // logging component
- * function InteractionLogger(eventBus) {
- * eventBus.on('element.hover', function(event) {
- * console.log()
- * })
- * }
- *
- * InteractionLogger.$inject = [ 'eventBus' ]; // minification save
- *
- * // extension module
- * var extensionModule = {
- * __init__: [ 'interactionLogger' ],
- * interactionLogger: [ 'type', InteractionLogger ]
- * };
- *
- * // extend the viewer
- * var bpmnModeler = new Modeler({ additionalModules: [ extensionModule ] });
- * bpmnModeler.importXML(...);
- * ```
- *
- *
- * ## Customizing / Replacing Components
- *
- * You can replace individual diagram components by redefining them in override modules.
- * This works for all components, including those defined in the core.
- *
- * Pass in override modules via the `options.additionalModules` flag like this:
- *
- * ```javascript
- * function CustomContextPadProvider(contextPad) {
- *
- * contextPad.registerProvider(this);
- *
- * this.getContextPadEntries = function(element) {
- * // no entries, effectively disable the context pad
- * return {};
- * };
- * }
- *
- * CustomContextPadProvider.$inject = [ 'contextPad' ];
- *
- * var overrideModule = {
- * contextPadProvider: [ 'type', CustomContextPadProvider ]
- * };
- *
- * var bpmnModeler = new Modeler({ additionalModules: [ overrideModule ]});
- * ```
- *
- */
- export default class Modeler extends BaseModeler {
- static Viewer: typeof Viewer;
- static NavigatedViewer: typeof NavigatedViewer;
- /**
- * Create a new diagram to start modeling.
- *
- * @throws {ImportXMLError} An error thrown during the import of the XML.
- *
- * @return A promise resolving with warnings that were produced during the import.
- */
- createDiagram(): Promise<ImportXMLResult>;
- }
- type BaseViewerOptions = import('./BaseViewer').BaseViewerOptions;
- type ImportXMLResult = import('./BaseViewer').ImportXMLResult;
- import BaseModeler from './BaseModeler';
- import Viewer from './Viewer';
- import NavigatedViewer from './NavigatedViewer';
|