From d3449ca87c32366fe0be4b10c2c01a48360aaa08 Mon Sep 17 00:00:00 2001 From: Nico Rehwaldt Date: Mon, 2 Apr 2018 21:01:53 +0200 Subject: [PATCH] chore(project): es6ify source code * use ES6 import / export * UTILS: export individual utilities * TESTS: localize TestHelper includes BREAKING CHANGE: * all utilities export independent functions * library sources got ported to ES6. You must now use a ES module bundler such as Browserify + babelify or Webpack to consume this library (or parts of it). --- index.js | 2 +- lib/Modeler.js | 72 ++++++++------ lib/NavigatedViewer.js | 14 +-- lib/Viewer.js | 63 +++++++----- lib/core/index.js | 9 +- lib/draw/BpmnRenderUtil.js | 56 ++++------- lib/draw/BpmnRenderer.js | 98 +++++++++++-------- lib/draw/PathMap.js | 4 +- lib/draw/index.js | 9 +- lib/features/auto-place/AutoPlace.js | 19 ++-- .../auto-place/AutoPlaceSelectionBehavior.js | 6 +- lib/features/auto-place/AutoPlaceUtil.js | 45 ++++----- lib/features/auto-place/index.js | 9 +- lib/features/auto-resize/BpmnAutoResize.js | 18 ++-- .../auto-resize/BpmnAutoResizeProvider.js | 18 ++-- lib/features/auto-resize/index.js | 15 ++- .../context-pad/ContextPadProvider.js | 44 ++++++--- lib/features/context-pad/index.js | 25 +++-- lib/features/copy-paste/BpmnCopyPaste.js | 29 +++--- lib/features/copy-paste/index.js | 10 +- .../BpmnDistributeElements.js | 15 +-- lib/features/distribute-elements/index.js | 11 ++- .../editor-actions/BpmnEditorActions.js | 28 +++--- lib/features/editor-actions/index.js | 37 ++++--- .../global-connect/BpmnGlobalConnect.js | 9 +- lib/features/global-connect/index.js | 10 +- lib/features/keyboard/BpmnKeyBindings.js | 6 +- lib/features/keyboard/index.js | 10 +- .../label-editing/LabelEditingPreview.js | 44 ++++++--- .../label-editing/LabelEditingProvider.js | 20 ++-- lib/features/label-editing/LabelUtil.js | 10 +- .../label-editing/cmd/UpdateLabelHandler.js | 25 +++-- lib/features/label-editing/index.js | 20 ++-- lib/features/modeling/BpmnFactory.js | 14 +-- lib/features/modeling/BpmnLayouter.js | 35 ++++--- lib/features/modeling/BpmnUpdater.js | 62 +++++++----- lib/features/modeling/ElementFactory.js | 36 ++++--- lib/features/modeling/Modeling.js | 36 ++++--- .../AdaptiveLabelPositioningBehavior.js | 25 ++--- .../modeling/behavior/AppendBehavior.js | 17 ++-- .../modeling/behavior/CopyPasteBehavior.js | 22 +++-- .../behavior/CreateBoundaryEventBehavior.js | 19 ++-- .../behavior/CreateDataObjectBehavior.js | 19 ++-- .../behavior/CreateParticipantBehavior.js | 29 ++++-- .../behavior/DataInputAssociationBehavior.js | 30 +++--- .../modeling/behavior/DeleteLaneBehavior.js | 26 +++-- .../modeling/behavior/DropOnFlowBehavior.js | 71 ++++++++------ .../modeling/behavior/ImportDockingFix.js | 14 +-- .../modeling/behavior/LabelBehavior.js | 43 ++++---- .../modeling/behavior/ModelingFeedback.js | 14 +-- .../behavior/RemoveElementBehavior.js | 16 +-- .../behavior/RemoveParticipantBehavior.js | 12 +-- .../behavior/ReplaceConnectionBehavior.js | 24 +++-- .../behavior/ReplaceElementBehaviour.js | 32 +++--- .../modeling/behavior/ResizeLaneBehavior.js | 19 ++-- .../ToggleElementCollapseBehaviour.js | 24 +++-- .../modeling/behavior/UnclaimIdBehavior.js | 21 ++-- .../behavior/UnsetDefaultFlowBehavior.js | 20 ++-- .../behavior/UpdateFlowNodeRefsBehavior.js | 20 ++-- lib/features/modeling/behavior/index.js | 66 ++++++++----- .../modeling/behavior/util/GeometricUtil.js | 23 ++--- .../modeling/behavior/util/LabelLayoutUtil.js | 24 ++--- .../behavior/util/LineAttachmentUtil.js | 4 +- .../modeling/behavior/util/LineIntersect.js | 4 +- lib/features/modeling/cmd/AddLaneHandler.js | 28 ++++-- lib/features/modeling/cmd/IdClaimHandler.js | 5 +- .../modeling/cmd/ResizeLaneHandler.js | 30 ++++-- lib/features/modeling/cmd/SetColorHandler.js | 10 +- lib/features/modeling/cmd/SplitLaneHandler.js | 15 +-- .../modeling/cmd/UpdateCanvasRootHandler.js | 22 +++-- .../modeling/cmd/UpdateFlowNodeRefsHandler.js | 45 +++++---- .../modeling/cmd/UpdatePropertiesHandler.js | 27 +++-- lib/features/modeling/index.js | 66 +++++++++---- lib/features/modeling/util/LaneUtil.js | 37 ++++--- lib/features/modeling/util/ModelingUtil.js | 16 ++- lib/features/ordering/BpmnOrderingProvider.js | 21 ++-- lib/features/ordering/index.js | 12 ++- lib/features/palette/PaletteProvider.js | 9 +- lib/features/palette/index.js | 29 ++++-- .../popup-menu/ReplaceMenuProvider.js | 30 +++--- lib/features/popup-menu/index.js | 14 ++- lib/features/popup-menu/util/TypeUtil.js | 16 +-- .../replace-preview/BpmnReplacePreview.js | 35 ++++--- lib/features/replace-preview/index.js | 12 ++- lib/features/replace/BpmnReplace.js | 45 +++++---- lib/features/replace/ReplaceOptions.js | 24 ++--- lib/features/replace/index.js | 13 ++- lib/features/rules/BpmnRules.js | 50 ++++++---- lib/features/rules/index.js | 10 +- lib/features/search/BpmnSearchProvider.js | 20 ++-- lib/features/search/index.js | 11 ++- lib/features/snapping/BpmnSnapping.js | 61 +++++++----- lib/features/snapping/BpmnSnappingUtil.js | 28 +++--- lib/features/snapping/index.js | 6 +- lib/import/BpmnImporter.js | 42 +++++--- lib/import/BpmnTreeWalker.js | 20 ++-- lib/import/Importer.js | 8 +- lib/import/Util.js | 4 +- lib/import/index.js | 10 +- lib/util/DiUtil.js | 39 ++++---- lib/util/LabelUtil.js | 30 +++--- lib/util/ModelUtil.js | 10 +- lib/util/PoweredByUtil.js | 17 ++-- lib/util/model/ModelCloneHelper.js | 21 ++-- lib/util/model/ModelCloneUtils.js | 13 +-- test/TestHelper.js | 27 +++-- test/config/karma.unit.js | 7 +- test/config/translation-reporter.js | 7 +- test/helper/TranslationCollector.js | 4 +- test/helper/index.js | 53 +++++----- test/integration/CustomElementsSpec.js | 16 ++- test/integration/ReimportSpec.js | 4 +- test/integration/SimpleModelingSpec.js | 4 +- .../custom-elements/CustomElementFactory.js | 20 ++-- .../custom-elements/CustomRenderer.js | 20 ++-- .../custom-elements/CustomRules.js | 31 +++--- .../custom-elements/CustomUpdater.js | 12 +-- test/integration/custom-elements/index.js | 21 ++-- test/integration/model/BpmnModdleSpec.js | 2 +- test/matchers/BoundsMatchers.js | 8 +- test/matchers/ConnectionMatchers.js | 8 +- test/matchers/JSONMatcher.js | 4 +- test/spec/ModelerSpec.js | 19 ++-- test/spec/NavigatedViewerSpec.js | 4 +- test/spec/ViewerSpec.js | 20 ++-- test/spec/draw/BpmnRenderUtilSpec.js | 38 ++++--- test/spec/draw/BpmnRendererSpec.js | 23 +++-- test/spec/environment/MockingSpec.js | 11 ++- .../align-elements/BpmnAlignElementsSpec.js | 13 +-- .../spec/features/auto-place/AutoPlaceSpec.js | 17 ++-- .../features/auto-resize/AutoResizeSpec.js | 26 +++-- .../context-pad/ContextPadProviderSpec.js | 40 ++++---- .../features/copy-paste/BpmnCopyPasteSpec.js | 43 +++++--- .../features/copy-paste/DescriptorTree.js | 4 +- .../BpmnDistributeElementsSpec.js | 13 +-- .../editor-actions/BpmnEditorActionsSpec.js | 17 ++-- .../global-connect/BpmnGlobalConnectSpec.js | 11 ++- .../features/keyboard/BpmnKeyBindingsSpec.js | 19 ++-- .../label-editing/LabelEditingPreviewSpec.js | 13 ++- .../label-editing/LabelEditingProviderSpec.js | 72 ++++++++------ .../label-editing/TouchIntegrationSpec.js | 7 +- .../spec/features/modeling/AppendShapeSpec.js | 14 ++- test/spec/features/modeling/BendpointsSpec.js | 14 +-- .../spec/features/modeling/BpmnFactorySpec.js | 12 +-- .../spec/features/modeling/BpmnUpdaterSpec.js | 12 +-- .../features/modeling/CreateConnectionSpec.js | 12 +-- .../features/modeling/DeleteConnectionSpec.js | 12 +-- .../modeling/DeleteParticipantSpec.js | 12 +-- .../spec/features/modeling/DeleteShapeSpec.js | 12 +-- test/spec/features/modeling/DropSpec.js | 11 ++- test/spec/features/modeling/IdClaimSpec.js | 9 +- .../spec/features/modeling/LabelBoundsSpec.js | 11 ++- .../features/modeling/LabelLayoutingSpec.js | 23 ++--- .../LoggingCroppingConnectionDocking.js | 12 +-- .../features/modeling/MoveConnectionSpec.js | 12 +-- .../features/modeling/MoveElementsSpec.js | 12 +-- test/spec/features/modeling/MoveRulesSpec.js | 19 ++-- test/spec/features/modeling/MoveShapeSpec.js | 12 +-- test/spec/features/modeling/MoveStressSpec.js | 12 +-- .../spec/features/modeling/ResizeShapeSpec.js | 12 +-- test/spec/features/modeling/SetColorSpec.js | 12 +-- test/spec/features/modeling/SpaceToolSpec.js | 12 +-- .../features/modeling/UpdateAttachmentSpec.js | 12 +-- .../spec/features/modeling/UpdateLabelSpec.js | 9 +- .../features/modeling/UpdatePropertiesSpec.js | 12 +-- .../modeling/append/TextAnnotationSpec.js | 16 +-- .../AdaptiveLabelPositioningBehaviorSpec.js | 15 +-- .../CompensationAssociationBehaviorSpec.js | 9 +- .../CreateBoundaryEventBehaviorSpec.js | 12 +-- .../behavior/CreateParticipantBehaviorSpec.js | 12 +-- .../DataInputAssociationBehaviorSpec.js | 13 ++- .../behavior/DataObjectBehaviorSpec.js | 13 +-- .../behavior/DataStoreBehaviorSpec.js | 11 ++- .../behavior/DropOnFlowBehaviorSpec.js | 23 +++-- .../modeling/behavior/ImportDockingFixSpec.js | 11 ++- .../modeling/behavior/LabelBehaviorSpec.js | 27 ++--- .../behavior/ReconnectConnectionSpec.js | 11 ++- .../behavior/RemoveElementBehaviorSpec.js | 9 +- .../behavior/RemoveParticipantBehaviorSpec.js | 13 +-- .../behavior/ReplaceConnectionBehaviorSpec.js | 24 +++-- .../behavior/ReplaceElementBehaviourSpec.js | 24 +++-- .../ToggleElementCollapseBehaviourSpec.js | 14 +-- .../behavior/UnsetDefaultFlowBehaviorSpec.js | 9 +- .../behavior/util/GeometricUtilSpec.js | 20 ++-- .../behavior/util/LineIntersectSpec.js | 4 +- .../features/modeling/lanes/AddLaneSpec.js | 20 ++-- .../features/modeling/lanes/DeleteLaneSpec.js | 26 +++-- .../features/modeling/lanes/ResizeLaneSpec.js | 21 ++-- .../features/modeling/lanes/SplitLaneSpec.js | 11 ++- .../modeling/lanes/UpdateFlowNodeRefsSpec.js | 12 +-- test/spec/features/modeling/layout/Helper.js | 40 ++++---- .../modeling/layout/LayoutAssociationSpec.js | 11 ++- .../modeling/layout/LayoutConnectionSpec.js | 12 +-- .../layout/LayoutDataAssociationSpec.js | 12 +-- .../modeling/layout/LayoutMessageFlowSpec.js | 12 +-- .../modeling/layout/LayoutSequenceFlowSpec.js | 25 ++--- .../ordering/BpmnOrderingProviderSpec.js | 21 ++-- test/spec/features/ordering/Helper.js | 49 ++++------ .../features/palette/PaletteProviderSpec.js | 19 ++-- .../popup-menu/ReplaceMenuProviderSpec.js | 37 ++++--- .../replace-preview/BpmnReplacePreviewSpec.js | 31 +++--- test/spec/features/replace/BpmnReplaceSpec.js | 28 +++--- .../spec/features/replace/ReplaceRulesSpec.js | 13 +-- .../rules/BpmnRules.dataAssociation.bpmn | 4 - test/spec/features/rules/BpmnRulesSpec.js | 19 ++-- test/spec/features/rules/Helper.js | 24 ++--- .../features/search/BpmnSearchProviderSpec.js | 12 ++- .../features/snapping/BpmnSnappingSpec.js | 27 ++--- .../features/snapping/BpmnSnappingUtilSpec.js | 10 +- .../i18n/custom-translate/custom-translate.js | 6 +- test/spec/i18n/custom-translate/index.js | 6 +- test/spec/i18n/translateSpec.js | 21 ++-- test/spec/import/ImporterSpec.js | 28 ++++-- test/spec/import/ModelWiringSpec.js | 10 +- test/spec/import/elements/AssociationSpec.js | 7 +- test/spec/import/elements/CollapsedSpec.js | 7 +- test/spec/import/elements/LabelSpec.js | 24 +++-- test/spec/util/ModelCloneHelperSpec.js | 27 ++--- test/spec/util/ModelUtilSpec.js | 40 +++++--- test/spec/util/camunda-moddle.js | 10 +- test/util/KeyEvents.js | 4 +- test/util/MockEvents.js | 22 ++--- test/util/custom-rules/CustomRules.js | 11 +-- test/util/custom-rules/index.js | 6 +- 224 files changed, 2635 insertions(+), 1932 deletions(-) diff --git a/index.js b/index.js index d9dda1ad..affb1fd1 100644 --- a/index.js +++ b/index.js @@ -1 +1 @@ -module.exports = require('./lib/Viewer'); \ No newline at end of file +export default './lib/Viewer'; \ No newline at end of file diff --git a/lib/Modeler.js b/lib/Modeler.js index 23fe706d..38f864e6 100644 --- a/lib/Modeler.js +++ b/lib/Modeler.js @@ -1,12 +1,32 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var Ids = require('ids'); +import Ids from 'ids'; -var Viewer = require('./Viewer'); +import Viewer from './Viewer'; + +import NavigatedViewer from './NavigatedViewer'; + +import MoveCanvasModule from 'diagram-js/lib/navigation/movecanvas'; +import TouchModule from 'diagram-js/lib/navigation/touch'; +import ZoomScrollModule from 'diagram-js/lib/navigation/zoomscroll'; + +import AutoScrollModule from 'diagram-js/lib/features/auto-scroll'; +import BendpointsModule from 'diagram-js/lib/features/bendpoints'; +import MoveModule from 'diagram-js/lib/features/move'; +import ResizeModule from 'diagram-js/lib/features/resize'; +import AutoResizeModule from './features/auto-resize'; +import AutoPlaceModule from './features/auto-place'; +import EditorActionsModule from './features/editor-actions'; +import ContextPadModule from './features/context-pad'; +import KeyboardModule from './features/keyboard'; +import LabelEditingModule from './features/label-editing'; +import ModelingModule from './features/modeling'; +import PaletteModule from './features/palette'; +import ReplacePreviewModule from './features/replace-preview'; +import SnappingModule from './features/snapping'; -var NavigatedViewer = require('./NavigatedViewer'); var initialDiagram = '' + @@ -101,7 +121,7 @@ var initialDiagram = * @param {Array} [options.modules] a list of modules to override the default modules * @param {Array} [options.additionalModules] a list of modules to use with the default modules */ -function Modeler(options) { +export default function Modeler(options) { Viewer.call(this, options); // hook ID collection into the modeler @@ -118,11 +138,8 @@ function Modeler(options) { inherits(Modeler, Viewer); -module.exports = Modeler; - -module.exports.Viewer = Viewer; - -module.exports.NavigatedViewer = NavigatedViewer; +Modeler.Viewer = Viewer; +Modeler.NavigatedViewer = NavigatedViewer; /** * Create a new diagram to start modeling. @@ -170,30 +187,29 @@ Modeler.prototype._collectIds = function(definitions, context) { } }; - Modeler.prototype._interactionModules = [ // non-modeling components - require('diagram-js/lib/navigation/movecanvas'), - require('diagram-js/lib/navigation/touch'), - require('diagram-js/lib/navigation/zoomscroll') + MoveCanvasModule, + TouchModule, + ZoomScrollModule ]; Modeler.prototype._modelingModules = [ // modeling components - require('diagram-js/lib/features/auto-scroll'), - require('diagram-js/lib/features/bendpoints'), - require('diagram-js/lib/features/move'), - require('diagram-js/lib/features/resize'), - require('./features/auto-resize'), - require('./features/auto-place'), - require('./features/editor-actions'), - require('./features/context-pad'), - require('./features/keyboard'), - require('./features/label-editing'), - require('./features/modeling'), - require('./features/palette'), - require('./features/replace-preview'), - require('./features/snapping') + AutoScrollModule, + BendpointsModule, + MoveModule, + ResizeModule, + AutoResizeModule, + AutoPlaceModule, + EditorActionsModule, + ContextPadModule, + KeyboardModule, + LabelEditingModule, + ModelingModule, + PaletteModule, + ReplacePreviewModule, + SnappingModule ]; diff --git a/lib/NavigatedViewer.js b/lib/NavigatedViewer.js index 3593fbc6..1f884e4f 100644 --- a/lib/NavigatedViewer.js +++ b/lib/NavigatedViewer.js @@ -1,26 +1,26 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var Viewer = require('./Viewer'); +import Viewer from './Viewer'; +import MoveCanvasModule from 'diagram-js/lib/navigation/movecanvas'; +import ZoomScrollModule from 'diagram-js/lib/navigation/zoomscroll'; /** * A viewer that includes mouse navigation facilities * * @param {Object} options */ -function NavigatedViewer(options) { +export default function NavigatedViewer(options) { Viewer.call(this, options); } inherits(NavigatedViewer, Viewer); -module.exports = NavigatedViewer; - NavigatedViewer.prototype._navigationModules = [ - require('diagram-js/lib/navigation/zoomscroll'), - require('diagram-js/lib/navigation/movecanvas') + MoveCanvasModule, + ZoomScrollModule ]; NavigatedViewer.prototype._modules = [].concat( diff --git a/lib/Viewer.js b/lib/Viewer.js index d572b459..2d0b09d9 100644 --- a/lib/Viewer.js +++ b/lib/Viewer.js @@ -6,23 +6,35 @@ */ 'use strict'; -var assign = require('min-dash').assign, - isNumber = require('min-dash').isNumber, - omit = require('min-dash').omit; +import { + assign, + isNumber, + omit +} from 'min-dash'; -var domify = require('min-dom').domify, - domQuery = require('min-dom').query, - domRemove = require('min-dom').remove; +import { + domify, + query as domQuery, + remove as domRemove +} from 'min-dom'; -var innerSVG = require('tiny-svg').innerSVG; +import { + innerSVG +} from 'tiny-svg'; -var Diagram = require('diagram-js'), - BpmnModdle = require('bpmn-moddle'); +import Diagram from 'diagram-js'; +import BpmnModdle from 'bpmn-moddle'; +import inherits from 'inherits'; -var inherits = require('inherits'); +import { + importBpmnDiagram +} from './import/Importer'; -var importBpmnDiagram = require('./import/Importer').importBpmnDiagram; +import CoreModule from './core'; +import TranslateModule from 'diagram-js/lib/i18n/translate'; +import SelectionModule from 'diagram-js/lib/features/selection'; +import OveraysModule from 'diagram-js/lib/features/overlays'; function checkValidationError(err) { @@ -103,7 +115,7 @@ function ensureUnit(val) { * @param {Array} [options.modules] a list of modules to override the default modules * @param {Array} [options.additionalModules] a list of modules to use with the default modules */ -function Viewer(options) { +export default function Viewer(options) { options = assign({}, DEFAULT_OPTIONS, options); @@ -122,8 +134,6 @@ function Viewer(options) { inherits(Viewer, Diagram); -module.exports = Viewer; - /** * Parse and render a BPMN 2.0 diagram. @@ -457,13 +467,12 @@ Viewer.prototype._createModdle = function(options) { return new BpmnModdle(moddleOptions); }; - // modules the viewer is composed of Viewer.prototype._modules = [ - require('./core'), - require('diagram-js/lib/i18n/translate'), - require('diagram-js/lib/features/selection'), - require('diagram-js/lib/features/overlays') + CoreModule, + TranslateModule, + SelectionModule, + OveraysModule ]; // default moddle extensions the viewer is composed of @@ -471,8 +480,14 @@ Viewer.prototype._moddleExtensions = {}; /* */ -var PoweredBy = require('./util/PoweredByUtil'), - domEvent = require('min-dom').event; +import { + open as openPoweredBy, + BPMNIO_IMG +} from './util/PoweredByUtil'; + +import { + event as domEvent +} from 'min-dom'; /** * Adds the project logo to the diagram container as @@ -483,7 +498,7 @@ var PoweredBy = require('./util/PoweredByUtil'), * @param {Element} container */ function addProjectLogo(container) { - var img = PoweredBy.BPMNIO_IMG; + var img = BPMNIO_IMG; var linkMarkup = ' */ +/* */ \ No newline at end of file diff --git a/lib/core/index.js b/lib/core/index.js index 9b964e93..a90e6471 100644 --- a/lib/core/index.js +++ b/lib/core/index.js @@ -1,6 +1,9 @@ -module.exports = { +import DrawModule from '../draw'; +import ImportModule from '../import'; + +export default { __depends__: [ - require('../draw'), - require('../import') + DrawModule, + ImportModule ] }; \ No newline at end of file diff --git a/lib/draw/BpmnRenderUtil.js b/lib/draw/BpmnRenderUtil.js index e2dee87a..186195b6 100644 --- a/lib/draw/BpmnRenderUtil.js +++ b/lib/draw/BpmnRenderUtil.js @@ -1,9 +1,13 @@ 'use strict'; -var every = require('min-dash').every, - some = require('min-dash').some; +import { + every, + some +} from 'min-dash'; -var componentsToPath = require('diagram-js/lib/util/RenderUtil').componentsToPath; +import { + componentsToPath +} from 'diagram-js/lib/util/RenderUtil'; // element utils ////////////////////// @@ -13,7 +17,7 @@ var componentsToPath = require('diagram-js/lib/util/RenderUtil').componentsToPat * * @return {boolean} true if element is of the given semantic type */ -function isTypedEvent(event, eventDefinitionType, filter) { +export function isTypedEvent(event, eventDefinitionType, filter) { function matches(definition, filter) { return every(filter, function(val, key) { @@ -30,53 +34,39 @@ function isTypedEvent(event, eventDefinitionType, filter) { }); } -module.exports.isTypedEvent = isTypedEvent; - -function isThrowEvent(event) { +export function isThrowEvent(event) { return (event.$type === 'bpmn:IntermediateThrowEvent') || (event.$type === 'bpmn:EndEvent'); } -module.exports.isThrowEvent = isThrowEvent; - -function isCollection(element) { +export function isCollection(element) { var dataObject = element.dataObjectRef; return element.isCollection || (dataObject && dataObject.isCollection); } -module.exports.isCollection = isCollection; - -function getDi(element) { +export function getDi(element) { return element.businessObject.di; } -module.exports.getDi = getDi; - -function getSemantic(element) { +export function getSemantic(element) { return element.businessObject; } -module.exports.getSemantic = getSemantic; - // color access ////////////////////// -function getFillColor(element, defaultColor) { +export function getFillColor(element, defaultColor) { return getDi(element).get('bioc:fill') || defaultColor || 'white'; } -module.exports.getFillColor = getFillColor; - -function getStrokeColor(element, defaultColor) { +export function getStrokeColor(element, defaultColor) { return getDi(element).get('bioc:stroke') || defaultColor || 'black'; } -module.exports.getStrokeColor = getStrokeColor; - // cropping path customizations ////////////////////// -function getCirclePath(shape) { +export function getCirclePath(shape) { var cx = shape.x + shape.width / 2, cy = shape.y + shape.height / 2, @@ -93,9 +83,7 @@ function getCirclePath(shape) { return componentsToPath(circlePath); } -module.exports.getCirclePath = getCirclePath; - -function getRoundRectPath(shape, borderRadius) { +export function getRoundRectPath(shape, borderRadius) { var x = shape.x, y = shape.y, @@ -118,9 +106,7 @@ function getRoundRectPath(shape, borderRadius) { return componentsToPath(roundRectPath); } -module.exports.getRoundRectPath = getRoundRectPath; - -function getDiamondPath(shape) { +export function getDiamondPath(shape) { var width = shape.width, height = shape.height, @@ -140,9 +126,7 @@ function getDiamondPath(shape) { return componentsToPath(diamondPath); } -module.exports.getDiamondPath = getDiamondPath; - -function getRectPath(shape) { +export function getRectPath(shape) { var x = shape.x, y = shape.y, width = shape.width, @@ -157,6 +141,4 @@ function getRectPath(shape) { ]; return componentsToPath(rectPath); -} - -module.exports.getRectPath = getRectPath; \ No newline at end of file +} \ No newline at end of file diff --git a/lib/draw/BpmnRenderer.js b/lib/draw/BpmnRenderer.js index c9040e1d..f434061b 100644 --- a/lib/draw/BpmnRenderer.js +++ b/lib/draw/BpmnRenderer.js @@ -1,46 +1,61 @@ 'use strict'; -var inherits = require('inherits'), - isObject = require('min-dash').isObject, - assign = require('min-dash').assign, - forEach = require('min-dash').forEach; +import inherits from 'inherits'; -var BaseRenderer = require('diagram-js/lib/draw/BaseRenderer'), - TextUtil = require('diagram-js/lib/util/Text'), - DiUtil = require('../util/DiUtil'); +import { + isObject, + assign, + forEach +} from 'min-dash'; -var is = require('../util/ModelUtil').is; +import BaseRenderer from 'diagram-js/lib/draw/BaseRenderer'; +import TextUtil from 'diagram-js/lib/util/Text'; -var createLine = require('diagram-js/lib/util/RenderUtil').createLine; +import { + isExpanded, + isEventSubProcess +} from '../util/DiUtil'; -var BpmnRenderUtil = require('./BpmnRenderUtil'); +import { is } from '../util/ModelUtil'; -var isTypedEvent = BpmnRenderUtil.isTypedEvent, - isThrowEvent = BpmnRenderUtil.isThrowEvent, - isCollection = BpmnRenderUtil.isCollection, - getDi = BpmnRenderUtil.getDi, - getSemantic = BpmnRenderUtil.getSemantic; +import { + createLine +} from 'diagram-js/lib/util/RenderUtil'; -var getCirclePath = BpmnRenderUtil.getCirclePath, - getRoundRectPath = BpmnRenderUtil.getRoundRectPath, - getDiamondPath = BpmnRenderUtil.getDiamondPath, - getRectPath = BpmnRenderUtil.getRectPath, - getFillColor = BpmnRenderUtil.getFillColor, - getStrokeColor = BpmnRenderUtil.getStrokeColor; +import { + isTypedEvent, + isThrowEvent, + isCollection, + getDi, + getSemantic, + getCirclePath, + getRoundRectPath, + getDiamondPath, + getRectPath, + getFillColor, + getStrokeColor +} from './BpmnRenderUtil'; -var domQuery = require('min-dom').query; +import { + query as domQuery +} from 'min-dom'; -var svgAppend = require('tiny-svg').append, - svgAttr = require('tiny-svg').attr, - svgCreate = require('tiny-svg').create, - svgClasses = require('tiny-svg').classes; +import { + append as svgAppend, + attr as svgAttr, + create as svgCreate, + classes as svgClasses +} from 'tiny-svg'; -var rotate = require('diagram-js/lib/util/SvgTransformUtil').rotate, - transform = require('diagram-js/lib/util/SvgTransformUtil').transform, - translate = require('diagram-js/lib/util/SvgTransformUtil').translate; +import { + rotate, + transform, + translate +} from 'diagram-js/lib/util/SvgTransformUtil'; -var Ids = require('ids'), - RENDERER_IDS = new Ids(); +import Ids from 'ids'; + +var RENDERER_IDS = new Ids(); var TASK_BORDER_RADIUS = 10; var INNER_OUTER_DIST = 3; @@ -54,7 +69,9 @@ var DEFAULT_FILL_OPACITY = .95, HIGH_FILL_OPACITY = .35; -function BpmnRenderer(eventBus, styles, pathMap, canvas, priority) { +export default function BpmnRenderer( + eventBus, styles, pathMap, + canvas, priority) { BaseRenderer.call(this, eventBus, priority); @@ -1056,11 +1073,9 @@ function BpmnRenderer(eventBus, styles, pathMap, canvas, priority) { var rect = renderer('bpmn:Activity')(parentGfx, element, attrs); - var expanded = DiUtil.isExpanded(element); + var expanded = isExpanded(element); - var isEventSubProcess = DiUtil.isEventSubProcess(element); - - if (isEventSubProcess) { + if (isEventSubProcess(element)) { svgAttr(rect, { strokeDasharray: '1,2' }); @@ -1105,7 +1120,7 @@ function BpmnRenderer(eventBus, styles, pathMap, canvas, priority) { var lane = renderer('bpmn:Lane')(parentGfx, element, attrs); - var expandedPool = DiUtil.isExpanded(element); + var expandedPool = isExpanded(element); if (expandedPool) { drawLine(parentGfx, [ @@ -1778,9 +1793,12 @@ function BpmnRenderer(eventBus, styles, pathMap, canvas, priority) { inherits(BpmnRenderer, BaseRenderer); -BpmnRenderer.$inject = [ 'eventBus', 'styles', 'pathMap', 'canvas' ]; - -module.exports = BpmnRenderer; +BpmnRenderer.$inject = [ + 'eventBus', + 'styles', + 'pathMap', + 'canvas' +]; BpmnRenderer.prototype.canRender = function(element) { diff --git a/lib/draw/PathMap.js b/lib/draw/PathMap.js index 6681e8ca..cf058f65 100644 --- a/lib/draw/PathMap.js +++ b/lib/draw/PathMap.js @@ -4,7 +4,7 @@ * Map containing SVG paths needed by BpmnRenderer. */ -function PathMap() { +export default function PathMap() { /** * Contains a map of path elements @@ -447,8 +447,6 @@ function PathMap() { }; } -module.exports = PathMap; - // helpers ////////////////////// // copied from https://github.com/adobe-webplatform/Snap.svg/blob/master/src/svg.js diff --git a/lib/draw/index.js b/lib/draw/index.js index ebefbc73..530988e4 100644 --- a/lib/draw/index.js +++ b/lib/draw/index.js @@ -1,5 +1,8 @@ -module.exports = { +import BpmnRenderer from './BpmnRenderer'; +import PathMap from './PathMap'; + +export default { __init__: [ 'bpmnRenderer' ], - bpmnRenderer: [ 'type', require('./BpmnRenderer') ], - pathMap: [ 'type', require('./PathMap') ] + bpmnRenderer: [ 'type', BpmnRenderer ], + pathMap: [ 'type', PathMap ] }; diff --git a/lib/features/auto-place/AutoPlace.js b/lib/features/auto-place/AutoPlace.js index 9bb10ae2..a513fa49 100644 --- a/lib/features/auto-place/AutoPlace.js +++ b/lib/features/auto-place/AutoPlace.js @@ -1,12 +1,15 @@ 'use strict'; -var is = require('../../util/ModelUtil').is; -var isAny = require('../modeling/util/ModelingUtil').isAny; +import { is } from '../../util/ModelUtil'; +import { isAny } from '../modeling/util/ModelingUtil'; + +import { + getTextAnnotationPosition, + getDataElementPosition, + getFlowNodePosition, + getDefaultPosition +} from './AutoPlaceUtil'; -var getTextAnnotationPosition = require('./AutoPlaceUtil').getTextAnnotationPosition, - getDataElementPosition = require('./AutoPlaceUtil').getDataElementPosition, - getFlowNodePosition = require('./AutoPlaceUtil').getFlowNodePosition, - getDefaultPosition = require('./AutoPlaceUtil').getDefaultPosition; /** * A service that places elements connected to existing ones @@ -15,7 +18,7 @@ var getTextAnnotationPosition = require('./AutoPlaceUtil').getTextAnnotationPosi * @param {EventBus} eventBus * @param {Modeling} modeling */ -function AutoPlace(eventBus, modeling) { +export default function AutoPlace(eventBus, modeling) { function emit(event, payload) { return eventBus.fire(event, payload); @@ -59,8 +62,6 @@ AutoPlace.$inject = [ 'modeling' ]; -module.exports = AutoPlace; - // helpers ////////////////////// diff --git a/lib/features/auto-place/AutoPlaceSelectionBehavior.js b/lib/features/auto-place/AutoPlaceSelectionBehavior.js index 63b3c8e6..4e03820f 100644 --- a/lib/features/auto-place/AutoPlaceSelectionBehavior.js +++ b/lib/features/auto-place/AutoPlaceSelectionBehavior.js @@ -6,7 +6,7 @@ * @param {EventBus} eventBus * @param {Selection} selection */ -function AutoPlaceSelectionBehavior(eventBus, selection) { +export default function AutoPlaceSelectionBehavior(eventBus, selection) { eventBus.on('autoPlace.end', 500, function(e) { selection.select(e.shape); @@ -17,6 +17,4 @@ function AutoPlaceSelectionBehavior(eventBus, selection) { AutoPlaceSelectionBehavior.$inject = [ 'eventBus', 'selection' -]; - -module.exports = AutoPlaceSelectionBehavior; +]; \ No newline at end of file diff --git a/lib/features/auto-place/AutoPlaceUtil.js b/lib/features/auto-place/AutoPlaceUtil.js index 61e1055d..8a9cc3b3 100644 --- a/lib/features/auto-place/AutoPlaceUtil.js +++ b/lib/features/auto-place/AutoPlaceUtil.js @@ -1,13 +1,17 @@ 'use strict'; -var is = require('../../util/ModelUtil').is; +import { is } from '../../util/ModelUtil'; -var getMid = require('diagram-js/lib/layout/LayoutUtil').getMid, - asTRBL = require('diagram-js/lib/layout/LayoutUtil').asTRBL, - getOrientation = require('diagram-js/lib/layout/LayoutUtil').getOrientation; +import { + getMid, + asTRBL, + getOrientation +} from 'diagram-js/lib/layout/LayoutUtil'; -var find = require('min-dash').find, - reduce = require('min-dash').reduce; +import { + find, + reduce +} from 'min-dash'; var DEFAULT_HORIZONTAL_DISTANCE = 50; @@ -21,7 +25,7 @@ var PLACEMENT_DETECTION_PAD = 10; * Always try to place element right of source; * compute actual distance from previous nodes in flow. */ -function getFlowNodePosition(source, element) { +export function getFlowNodePosition(source, element) { var sourceTrbl = asTRBL(source); var sourceMid = getMid(source); @@ -62,8 +66,6 @@ function getFlowNodePosition(source, element) { return deconflictPosition(source, element, position, escapeDirection); } -module.exports.getFlowNodePosition = getFlowNodePosition; - /** * Compute best distance between source and target, @@ -74,7 +76,7 @@ module.exports.getFlowNodePosition = getFlowNodePosition; * * @return {Number} distance */ -function getFlowNodeDistance(source, element) { +export function getFlowNodeDistance(source, element) { var sourceTrbl = asTRBL(source); @@ -174,13 +176,11 @@ function getFlowNodeDistance(source, element) { } } -module.exports.getFlowNodeDistance = getFlowNodeDistance; - /** * Always try to place text annotations top right of source. */ -function getTextAnnotationPosition(source, element) { +export function getTextAnnotationPosition(source, element) { var sourceTrbl = asTRBL(source); @@ -199,13 +199,11 @@ function getTextAnnotationPosition(source, element) { return deconflictPosition(source, element, position, escapeDirection); } -module.exports.getTextAnnotationPosition = getTextAnnotationPosition; - /** * Always put element bottom right of source. */ -function getDataElementPosition(source, element) { +export function getDataElementPosition(source, element) { var sourceTrbl = asTRBL(source); @@ -224,13 +222,11 @@ function getDataElementPosition(source, element) { return deconflictPosition(source, element, position, escapeDirection); } -module.exports.getDataElementPosition = getDataElementPosition; - /** * Always put element right of source per default. */ -function getDefaultPosition(source, element) { +export function getDefaultPosition(source, element) { var sourceTrbl = asTRBL(source); @@ -243,8 +239,6 @@ function getDefaultPosition(source, element) { }; } -module.exports.getDefaultPosition = getDefaultPosition; - /** * Returns all connected elements around the given source. @@ -283,7 +277,7 @@ function getAutoPlaceClosure(source, element) { * This takes connected elements from host and attachers * into account, too. */ -function getConnectedAtPosition(source, position, element) { +export function getConnectedAtPosition(source, position, element) { var bounds = { x: position.x - (element.width / 2), @@ -306,8 +300,6 @@ function getConnectedAtPosition(source, position, element) { }); } -module.exports.getConnectedAtPosition = getConnectedAtPosition; - /** * Returns a new, position for the given element @@ -324,7 +316,7 @@ module.exports.getConnectedAtPosition = getConnectedAtPosition; * * @return {Point} */ -function deconflictPosition(source, element, position, escapeDelta) { +export function deconflictPosition(source, element, position, escapeDelta) { function nextPosition(existingElement) { @@ -372,9 +364,6 @@ function deconflictPosition(source, element, position, escapeDelta) { return position; } -module.exports.deconflictPosition = deconflictPosition; - - // helpers ////////////////////// diff --git a/lib/features/auto-place/index.js b/lib/features/auto-place/index.js index 844111c6..cf9a7a0b 100644 --- a/lib/features/auto-place/index.js +++ b/lib/features/auto-place/index.js @@ -1,5 +1,8 @@ -module.exports = { +import AutoPlace from './AutoPlace'; +import AutoPlaceSelectionBehavior from './AutoPlaceSelectionBehavior'; + +export default { __init__: [ 'autoPlaceSelectionBehavior' ], - autoPlace: [ 'type', require('./AutoPlace') ], - autoPlaceSelectionBehavior: [ 'type', require('./AutoPlaceSelectionBehavior') ] + autoPlace: [ 'type', AutoPlace ], + autoPlaceSelectionBehavior: [ 'type', AutoPlaceSelectionBehavior ] }; \ No newline at end of file diff --git a/lib/features/auto-resize/BpmnAutoResize.js b/lib/features/auto-resize/BpmnAutoResize.js index f9e102f6..78705ffe 100644 --- a/lib/features/auto-resize/BpmnAutoResize.js +++ b/lib/features/auto-resize/BpmnAutoResize.js @@ -1,23 +1,25 @@ -var AutoResize = require('diagram-js/lib/features/auto-resize/AutoResize'); +import AutoResize from 'diagram-js/lib/features/auto-resize/AutoResize'; -var inherits = require('inherits'); +import inherits from 'inherits'; + +import { is } from '../../util/ModelUtil'; -var is = require('../../util/ModelUtil').is; /** * Sub class of the AutoResize module which implements a BPMN * specific resize function. */ -function BpmnAutoResize(eventBus, elementRegistry, modeling, rules) { - AutoResize.call(this, eventBus, elementRegistry, modeling, rules); +export default function BpmnAutoResize(injector) { + + injector.invoke(AutoResize, this); } -BpmnAutoResize.$inject = [ 'eventBus', 'elementRegistry', 'modeling', 'rules' ]; +BpmnAutoResize.$inject = [ + 'injector' +]; inherits(BpmnAutoResize, AutoResize); -module.exports = BpmnAutoResize; - /** * Resize shapes and lanes diff --git a/lib/features/auto-resize/BpmnAutoResizeProvider.js b/lib/features/auto-resize/BpmnAutoResizeProvider.js index 80f89781..5aaccfcb 100644 --- a/lib/features/auto-resize/BpmnAutoResizeProvider.js +++ b/lib/features/auto-resize/BpmnAutoResizeProvider.js @@ -1,17 +1,18 @@ 'use strict'; -var is = require('../../util/ModelUtil').is; +import { is } from '../../util/ModelUtil'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var forEach = require('min-dash').forEach; +import { forEach } from 'min-dash'; + +import AutoResizeProvider from 'diagram-js/lib/features/auto-resize/AutoResizeProvider'; -var AutoResizeProvider = require('diagram-js/lib/features/auto-resize/AutoResizeProvider'); /** * This module is a provider for automatically resizing parent BPMN elements */ -function BpmnAutoResizeProvider(eventBus, modeling) { +export default function BpmnAutoResizeProvider(eventBus, modeling) { AutoResizeProvider.call(this, eventBus); this._modeling = modeling; @@ -19,9 +20,10 @@ function BpmnAutoResizeProvider(eventBus, modeling) { inherits(BpmnAutoResizeProvider, AutoResizeProvider); -BpmnAutoResizeProvider.$inject = [ 'eventBus', 'modeling' ]; - -module.exports = BpmnAutoResizeProvider; +BpmnAutoResizeProvider.$inject = [ + 'eventBus', + 'modeling' +]; /** diff --git a/lib/features/auto-resize/index.js b/lib/features/auto-resize/index.js index d795608b..2289ddc0 100644 --- a/lib/features/auto-resize/index.js +++ b/lib/features/auto-resize/index.js @@ -1,5 +1,12 @@ -module.exports = { - __init__: [ 'bpmnAutoResize', 'bpmnAutoResizeProvider' ], - bpmnAutoResize: [ 'type', require('./BpmnAutoResize') ], - bpmnAutoResizeProvider: [ 'type', require('./BpmnAutoResizeProvider') ] +import BpmnAutoResize from './BpmnAutoResize'; +import BpmnAutoResizeProvider from './BpmnAutoResizeProvider'; + + +export default { + __init__: [ + 'bpmnAutoResize', + 'bpmnAutoResizeProvider' + ], + bpmnAutoResize: [ 'type', BpmnAutoResize ], + bpmnAutoResizeProvider: [ 'type', BpmnAutoResizeProvider ] }; diff --git a/lib/features/context-pad/ContextPadProvider.js b/lib/features/context-pad/ContextPadProvider.js index f0901288..f63f7490 100644 --- a/lib/features/context-pad/ContextPadProvider.js +++ b/lib/features/context-pad/ContextPadProvider.js @@ -1,22 +1,40 @@ 'use strict'; +import { + assign, + forEach, + isArray +} from 'min-dash'; + +import { + is +} from '../../util/ModelUtil'; + +import { + isExpanded, + isEventSubProcess +} from '../../util/DiUtil'; + +import { + isAny +} from '../modeling/util/ModelingUtil'; + +import { + getChildLanes +} from '../modeling/util/LaneUtil'; + +import { + hasPrimaryModifier +} from 'diagram-js/lib/util/Mouse'; -var assign = require('min-dash').assign, - forEach = require('min-dash').forEach, - isArray = require('min-dash').isArray, - is = require('../../util/ModelUtil').is, - isExpanded = require('../../util/DiUtil').isExpanded, - isAny = require('../modeling/util/ModelingUtil').isAny, - getChildLanes = require('../modeling/util/LaneUtil').getChildLanes, - isEventSubProcess = require('../../util/DiUtil').isEventSubProcess, - hasPrimaryModifier = require('diagram-js/lib/util/Mouse').hasPrimaryModifier; /** * A provider for BPMN 2.0 elements context pad */ -function ContextPadProvider( - config, injector, eventBus, contextPad, modeling, - elementFactory, connect, create, popupMenu, +export default function ContextPadProvider( + config, injector, eventBus, + contextPad, modeling, elementFactory, + connect, create, popupMenu, canvas, rules, translate) { config = config || {}; @@ -69,8 +87,6 @@ ContextPadProvider.$inject = [ 'translate' ]; -module.exports = ContextPadProvider; - ContextPadProvider.prototype.getContextPadEntries = function(element) { diff --git a/lib/features/context-pad/index.js b/lib/features/context-pad/index.js index c7b26b32..44752b4d 100644 --- a/lib/features/context-pad/index.js +++ b/lib/features/context-pad/index.js @@ -1,12 +1,21 @@ -module.exports = { +import DirectEditingModule from 'diagram-js-direct-editing'; +import ContextPadModule from 'diagram-js/lib/features/context-pad'; +import SelectionModule from 'diagram-js/lib/features/selection'; +import ConnectModule from 'diagram-js/lib/features/connect'; +import CreateModule from 'diagram-js/lib/features/create'; +import PopupMenuModule from '../popup-menu'; + +import ContextPadProvider from './ContextPadProvider'; + +export default { __depends__: [ - require('diagram-js-direct-editing'), - require('diagram-js/lib/features/context-pad'), - require('diagram-js/lib/features/selection'), - require('diagram-js/lib/features/connect'), - require('diagram-js/lib/features/create'), - require('../popup-menu') + DirectEditingModule, + ContextPadModule, + SelectionModule, + ConnectModule, + CreateModule, + PopupMenuModule ], __init__: [ 'contextPadProvider' ], - contextPadProvider: [ 'type', require('./ContextPadProvider') ] + contextPadProvider: [ 'type', ContextPadProvider ] }; \ No newline at end of file diff --git a/lib/features/copy-paste/BpmnCopyPaste.js b/lib/features/copy-paste/BpmnCopyPaste.js index 5b9c1b5f..e6cf2cad 100644 --- a/lib/features/copy-paste/BpmnCopyPaste.js +++ b/lib/features/copy-paste/BpmnCopyPaste.js @@ -1,18 +1,21 @@ 'use strict'; -var ModelUtil = require('../../util/ModelUtil'), - getBusinessObject = ModelUtil.getBusinessObject, - is = ModelUtil.is; +import { + getBusinessObject, + is +} from '../../util/ModelUtil'; -var ModelCloneHelper = require('../../util/model/ModelCloneHelper'); +import ModelCloneHelper from '../../util/model/ModelCloneHelper'; -var ModelCloneUtils = require('../../util/model/ModelCloneUtils'), - getProperties = ModelCloneUtils.getProperties; +import { + getProperties, + IGNORED_PROPERTIES +} from '../../util/model/ModelCloneUtils'; -var IGNORED_PROPERTIES = ModelCloneUtils.IGNORED_PROPERTIES; - -var filter = require('min-dash').filter, - forEach = require('min-dash').forEach; +import { + filter, + forEach +} from 'min-dash'; function setProperties(descriptor, data, properties) { forEach(properties, function(property) { @@ -30,7 +33,7 @@ function removeProperties(element, properties) { }); } -function BpmnCopyPaste( +export default function BpmnCopyPaste( bpmnFactory, eventBus, copyPaste, clipboard, canvas, bpmnRules) { @@ -151,6 +154,4 @@ BpmnCopyPaste.$inject = [ 'clipboard', 'canvas', 'bpmnRules' -]; - -module.exports = BpmnCopyPaste; +]; \ No newline at end of file diff --git a/lib/features/copy-paste/index.js b/lib/features/copy-paste/index.js index 9036868f..5dbb7cbf 100644 --- a/lib/features/copy-paste/index.js +++ b/lib/features/copy-paste/index.js @@ -1,7 +1,11 @@ -module.exports = { +import CopyPasteModule from 'diagram-js/lib/features/copy-paste'; + +import BpmnCopyPaste from './BpmnCopyPaste'; + +export default { __depends__: [ - require('diagram-js/lib/features/copy-paste') + CopyPasteModule ], __init__: [ 'bpmnCopyPaste' ], - bpmnCopyPaste: [ 'type', require('./BpmnCopyPaste') ] + bpmnCopyPaste: [ 'type', BpmnCopyPaste ] }; diff --git a/lib/features/distribute-elements/BpmnDistributeElements.js b/lib/features/distribute-elements/BpmnDistributeElements.js index dc039544..f45fc5cd 100644 --- a/lib/features/distribute-elements/BpmnDistributeElements.js +++ b/lib/features/distribute-elements/BpmnDistributeElements.js @@ -1,14 +1,19 @@ 'use strict'; -var filter = require('min-dash').filter; +import { + filter +} from 'min-dash'; + +import { + isAny +} from '../modeling/util/ModelingUtil'; -var isAny = require('../modeling/util/ModelingUtil').isAny; /** * Registers element exclude filters for elements that * currently do not support distribution. */ -function BpmnDistributeElements(distributeElements) { +export default function BpmnDistributeElements(distributeElements) { distributeElements.registerFilter(function(elements) { return filter(elements, function(element) { @@ -29,6 +34,4 @@ function BpmnDistributeElements(distributeElements) { }); } -BpmnDistributeElements.$inject = [ 'distributeElements' ]; - -module.exports = BpmnDistributeElements; +BpmnDistributeElements.$inject = [ 'distributeElements' ]; \ No newline at end of file diff --git a/lib/features/distribute-elements/index.js b/lib/features/distribute-elements/index.js index 86dbfa38..d6ec22c8 100644 --- a/lib/features/distribute-elements/index.js +++ b/lib/features/distribute-elements/index.js @@ -1,7 +1,12 @@ -module.exports = { +import DistributeElementsModule from 'diagram-js/lib/features/distribute-elements'; + +import BpmnDistributeElements from './BpmnDistributeElements'; + + +export default { __depends__: [ - require('diagram-js/lib/features/distribute-elements') + DistributeElementsModule ], __init__: [ 'bpmnDistributeElements' ], - bpmnDistributeElements: [ 'type', require('./BpmnDistributeElements') ] + bpmnDistributeElements: [ 'type', BpmnDistributeElements ] }; diff --git a/lib/features/editor-actions/BpmnEditorActions.js b/lib/features/editor-actions/BpmnEditorActions.js index fcc7d0fc..83eb0e72 100644 --- a/lib/features/editor-actions/BpmnEditorActions.js +++ b/lib/features/editor-actions/BpmnEditorActions.js @@ -1,21 +1,27 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var EditorActions = require('diagram-js/lib/features/editor-actions/EditorActions'); +import EditorActions from 'diagram-js/lib/features/editor-actions/EditorActions'; -var filter = require('min-dash').filter; +import { filter } from 'min-dash'; -var is = require('../../util/ModelUtil').is; +import { is } from '../../util/ModelUtil'; -var getBBox = require('diagram-js/lib/util/Elements').getBBox; +import { + getBBox +} from 'diagram-js/lib/util/Elements'; -function BpmnEditorActions( +/** + * Registers and executes BPMN specific editor actions. + */ +export default function BpmnEditorActions( injector, canvas, elementRegistry, - selection, spaceTool, lassoTool, handTool, - globalConnect, distributeElements, alignElements, - directEditing, searchPad, modeling) { + selection, spaceTool, lassoTool, + handTool, globalConnect, distributeElements, + alignElements, directEditing, searchPad, + modeling) { injector.invoke(EditorActions, this); @@ -121,6 +127,4 @@ BpmnEditorActions.$inject = [ 'directEditing', 'searchPad', 'modeling' -]; - -module.exports = BpmnEditorActions; +]; \ No newline at end of file diff --git a/lib/features/editor-actions/index.js b/lib/features/editor-actions/index.js index cdac88a3..0fb313e3 100644 --- a/lib/features/editor-actions/index.js +++ b/lib/features/editor-actions/index.js @@ -1,15 +1,28 @@ -module.exports = { +import AlignElementsModule from 'diagram-js/lib/features/align-elements'; +import EditorActionsModule from 'diagram-js/lib/features/editor-actions'; +import HandToolModule from 'diagram-js/lib/features/hand-tool'; +import LassoToolModule from 'diagram-js/lib/features/lasso-tool'; +import SpaceToolModule from 'diagram-js/lib/features/space-tool'; +import DirectEditingModule from 'diagram-js-direct-editing'; +import GlobalConnectModule from '../global-connect'; +import CopyPasteModule from '../copy-paste'; +import DistributeElementsModule from '../distribute-elements'; +import SearchModule from '../search'; + +import BpmnEditorActions from './BpmnEditorActions'; + +export default { __depends__: [ - require('diagram-js/lib/features/align-elements'), - require('diagram-js/lib/features/editor-actions'), - require('diagram-js/lib/features/hand-tool'), - require('diagram-js/lib/features/lasso-tool'), - require('diagram-js/lib/features/space-tool'), - require('diagram-js-direct-editing'), - require('../global-connect'), - require('../copy-paste'), - require('../distribute-elements'), - require('../search') + AlignElementsModule, + EditorActionsModule, + HandToolModule, + LassoToolModule, + SpaceToolModule, + DirectEditingModule, + GlobalConnectModule, + CopyPasteModule, + DistributeElementsModule, + SearchModule ], - editorActions: [ 'type', require('./BpmnEditorActions') ] + editorActions: [ 'type', BpmnEditorActions ] }; diff --git a/lib/features/global-connect/BpmnGlobalConnect.js b/lib/features/global-connect/BpmnGlobalConnect.js index 280767f2..6983abb8 100644 --- a/lib/features/global-connect/BpmnGlobalConnect.js +++ b/lib/features/global-connect/BpmnGlobalConnect.js @@ -1,19 +1,20 @@ 'use strict'; -var isAny = require('../modeling/util/ModelingUtil').isAny; +import { + isAny +} from '../modeling/util/ModelingUtil'; + /** * Extention of GlobalConnect tool that implements BPMN specific rules about * connection start elements. */ -function BpmnGlobalConnect(globalConnect) { +export default function BpmnGlobalConnect(globalConnect) { globalConnect.registerProvider(this); } BpmnGlobalConnect.$inject = [ 'globalConnect' ]; -module.exports = BpmnGlobalConnect; - /** * Checks if given element can be used for starting connection. diff --git a/lib/features/global-connect/index.js b/lib/features/global-connect/index.js index 0cc0c2f3..94c89c2f 100644 --- a/lib/features/global-connect/index.js +++ b/lib/features/global-connect/index.js @@ -1,7 +1,11 @@ -module.exports = { +import GlobalConnectModule from 'diagram-js/lib/features/global-connect'; + +import BpmnGlobalConnect from './BpmnGlobalConnect'; + +export default { __depends__: [ - require('diagram-js/lib/features/global-connect') + GlobalConnectModule ], __init__: [ 'bpmnGlobalConnect' ], - bpmnGlobalConnect: [ 'type', require('./BpmnGlobalConnect') ] + bpmnGlobalConnect: [ 'type', BpmnGlobalConnect ] }; diff --git a/lib/features/keyboard/BpmnKeyBindings.js b/lib/features/keyboard/BpmnKeyBindings.js index d405ff67..dbb46bac 100644 --- a/lib/features/keyboard/BpmnKeyBindings.js +++ b/lib/features/keyboard/BpmnKeyBindings.js @@ -6,7 +6,7 @@ * @param {Keyboard} keyboard * @param {EditorActions} editorActions */ -function BpmnKeyBindings(keyboard, editorActions) { +export default function BpmnKeyBindings(keyboard, editorActions) { keyboard.addListener(function(key, modifiers) { @@ -68,6 +68,4 @@ function BpmnKeyBindings(keyboard, editorActions) { BpmnKeyBindings.$inject = [ 'keyboard', 'editorActions' -]; - -module.exports = BpmnKeyBindings; \ No newline at end of file +]; \ No newline at end of file diff --git a/lib/features/keyboard/index.js b/lib/features/keyboard/index.js index d2fd69af..77b76063 100644 --- a/lib/features/keyboard/index.js +++ b/lib/features/keyboard/index.js @@ -1,7 +1,11 @@ -module.exports = { +import KeyboardModule from 'diagram-js/lib/features/keyboard'; + +import BpmnKeyBindings from './BpmnKeyBindings'; + +export default { __depends__: [ - require('diagram-js/lib/features/keyboard') + KeyboardModule ], __init__: [ 'bpmnKeyBindings' ], - bpmnKeyBindings: [ 'type', require('./BpmnKeyBindings') ] + bpmnKeyBindings: [ 'type', BpmnKeyBindings ] }; diff --git a/lib/features/label-editing/LabelEditingPreview.js b/lib/features/label-editing/LabelEditingPreview.js index 289b9494..b9f62ce7 100644 --- a/lib/features/label-editing/LabelEditingPreview.js +++ b/lib/features/label-editing/LabelEditingPreview.js @@ -1,23 +1,27 @@ -var svgAppend = require('tiny-svg').append, - svgAttr = require('tiny-svg').attr, - svgCreate = require('tiny-svg').create, - svgRemove = require('tiny-svg').remove; +import { + append as svgAppend, + attr as svgAttr, + create as svgCreate, + remove as svgRemove +} from 'tiny-svg'; -var getBusinessObject = require('../../util/ModelUtil').getBusinessObject, - is = require('../../util/ModelUtil').is; +import { + getBusinessObject, + is +} from '../../util/ModelUtil'; -var translate = require('diagram-js/lib/util/SvgTransformUtil').translate; +import { + translate +} from 'diagram-js/lib/util/SvgTransformUtil'; var MARKER_HIDDEN = 'djs-element-hidden', MARKER_LABEL_HIDDEN = 'djs-label-hidden'; -function getStrokeColor(element, defaultColor) { - var bo = getBusinessObject(element); - return bo.di.get('stroke') || defaultColor || 'black'; -} +export default function LabelEditingPreview( + eventBus, canvas, elementRegistry, + pathMap) { -function LabelEditingPreview(eventBus, canvas, elementRegistry, pathMap) { var self = this; var defaultLayer = canvas.getDefaultLayer(); @@ -117,6 +121,18 @@ function LabelEditingPreview(eventBus, canvas, elementRegistry, pathMap) { }); } -LabelEditingPreview.$inject = [ 'eventBus', 'canvas', 'elementRegistry', 'pathMap' ]; +LabelEditingPreview.$inject = [ + 'eventBus', + 'canvas', + 'elementRegistry', + 'pathMap' +]; -module.exports = LabelEditingPreview; + +// helpers /////////////////// + +function getStrokeColor(element, defaultColor) { + var bo = getBusinessObject(element); + + return bo.di.get('stroke') || defaultColor || 'black'; +} \ No newline at end of file diff --git a/lib/features/label-editing/LabelEditingProvider.js b/lib/features/label-editing/LabelEditingProvider.js index 75d75c48..78cc29b6 100644 --- a/lib/features/label-editing/LabelEditingProvider.js +++ b/lib/features/label-editing/LabelEditingProvider.js @@ -1,12 +1,16 @@ 'use strict'; -var assign = require('min-dash').assign; +import { + assign +} from 'min-dash'; -var LabelUtil = require('./LabelUtil'); +import { + getLabel +} from './LabelUtil'; -var is = require('../../util/ModelUtil').is, - isAny = require('../modeling/util/ModelingUtil').isAny, - isExpanded = require('../../util/DiUtil').isExpanded; +import { is } from '../../util/ModelUtil'; +import { isAny } from '../modeling/util/ModelingUtil'; +import { isExpanded } from '../../util/DiUtil'; var SMALL_FONT_SIZE = 11, SMALL_LINE_HEIGHT = 13, @@ -14,7 +18,7 @@ var SMALL_FONT_SIZE = 11, MEDIUM_LINE_HEIGHT = 14; -function LabelEditingProvider( +export default function LabelEditingProvider( eventBus, canvas, directEditing, modeling, resizeHandles) { @@ -97,8 +101,6 @@ LabelEditingProvider.$inject = [ 'resizeHandles' ]; -module.exports = LabelEditingProvider; - /** * Activate direct editing for activities and text annotations. @@ -110,7 +112,7 @@ module.exports = LabelEditingProvider; LabelEditingProvider.prototype.activate = function(element) { // text - var text = LabelUtil.getLabel(element); + var text = getLabel(element); if (text === undefined) { return; diff --git a/lib/features/label-editing/LabelUtil.js b/lib/features/label-editing/LabelUtil.js index 66b1263d..54ca98df 100644 --- a/lib/features/label-editing/LabelUtil.js +++ b/lib/features/label-editing/LabelUtil.js @@ -1,6 +1,6 @@ 'use strict'; -var is = require('../../util/ModelUtil').is; +import { is } from '../../util/ModelUtil'; function getLabelAttr(semantic) { if (is(semantic, 'bpmn:FlowElement') || @@ -17,17 +17,17 @@ function getLabelAttr(semantic) { } } -module.exports.getLabel = function(element) { +export function getLabel(element) { var semantic = element.businessObject, attr = getLabelAttr(semantic); if (attr) { return semantic[attr] || ''; } -}; +} -module.exports.setLabel = function(element, text, isExternal) { +export function setLabel(element, text, isExternal) { var semantic = element.businessObject, attr = getLabelAttr(semantic); @@ -41,4 +41,4 @@ module.exports.setLabel = function(element, text, isExternal) { } return element; -}; \ No newline at end of file +} \ No newline at end of file diff --git a/lib/features/label-editing/cmd/UpdateLabelHandler.js b/lib/features/label-editing/cmd/UpdateLabelHandler.js index 56337ed7..d8531704 100644 --- a/lib/features/label-editing/cmd/UpdateLabelHandler.js +++ b/lib/features/label-editing/cmd/UpdateLabelHandler.js @@ -1,13 +1,20 @@ 'use strict'; -var LabelUtil = require('../LabelUtil'); +import { + setLabel, + getLabel +} from '../LabelUtil'; -var TextUtil = require('diagram-js/lib/util/Text'); +import TextUtil from 'diagram-js/lib/util/Text'; -var hasExternalLabel = require('../../../util/LabelUtil').hasExternalLabel; +import { + hasExternalLabel +} from '../../../util/LabelUtil'; -var getBusinessObject = require('../../../util/ModelUtil').getBusinessObject, - is = require('../../../util/ModelUtil').is; +import { + getBusinessObject, + is +} from '../../../util/ModelUtil'; var NULL_DIMENSIONS = { width: 0, @@ -18,7 +25,7 @@ var NULL_DIMENSIONS = { /** * A handler that updates the text of a BPMN element. */ -function UpdateLabelHandler(modeling) { +export default function UpdateLabelHandler(modeling) { var textUtil = new TextUtil(); @@ -37,13 +44,13 @@ function UpdateLabelHandler(modeling) { var labelTarget = element.labelTarget || element; - LabelUtil.setLabel(label, text, labelTarget !== label); + setLabel(label, text, labelTarget !== label); return [ label, labelTarget ]; } function execute(ctx) { - ctx.oldLabel = LabelUtil.getLabel(ctx.element); + ctx.oldLabel = getLabel(ctx.element); return setText(ctx.element, ctx.newLabel); } @@ -91,8 +98,6 @@ function UpdateLabelHandler(modeling) { UpdateLabelHandler.$inject = [ 'modeling' ]; -module.exports = UpdateLabelHandler; - // TODO(nikku): repeating code (search for ) diff --git a/lib/features/label-editing/index.js b/lib/features/label-editing/index.js index 763ac9dd..e22cf296 100644 --- a/lib/features/label-editing/index.js +++ b/lib/features/label-editing/index.js @@ -1,13 +1,21 @@ -module.exports = { +import ChangeSupportModule from 'diagram-js/lib/features/change-support'; +import ResizeModule from 'diagram-js/lib/features/resize'; +import DirectEditingModule from 'diagram-js-direct-editing'; + +import LabelEditingProvider from './LabelEditingProvider'; +import LabelEditingPreview from './LabelEditingPreview'; + + +export default { __depends__: [ - require('diagram-js/lib/features/change-support'), - require('diagram-js/lib/features/resize'), - require('diagram-js-direct-editing') + ChangeSupportModule, + ResizeModule, + DirectEditingModule ], __init__: [ 'labelEditingProvider', 'labelEditingPreview' ], - labelEditingProvider: [ 'type', require('./LabelEditingProvider') ], - labelEditingPreview: [ 'type', require('./LabelEditingPreview') ] + labelEditingProvider: [ 'type', LabelEditingProvider ], + labelEditingPreview: [ 'type', LabelEditingPreview ] }; diff --git a/lib/features/modeling/BpmnFactory.js b/lib/features/modeling/BpmnFactory.js index 57f33671..606f6303 100644 --- a/lib/features/modeling/BpmnFactory.js +++ b/lib/features/modeling/BpmnFactory.js @@ -1,11 +1,13 @@ 'use strict'; -var map = require('min-dash').map, - assign = require('min-dash').assign, - pick = require('min-dash').pick; +import { + map, + assign, + pick +} from 'min-dash'; -function BpmnFactory(moddle) { +export default function BpmnFactory(moddle) { this._model = moddle; } @@ -94,6 +96,4 @@ BpmnFactory.prototype.createDiPlane = function(semantic) { return this.create('bpmndi:BPMNPlane', { bpmnElement: semantic }); -}; - -module.exports = BpmnFactory; +}; \ No newline at end of file diff --git a/lib/features/modeling/BpmnLayouter.js b/lib/features/modeling/BpmnLayouter.js index 5be9d207..f67ddfdc 100644 --- a/lib/features/modeling/BpmnLayouter.js +++ b/lib/features/modeling/BpmnLayouter.js @@ -1,30 +1,37 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var assign = require('min-dash').assign; +import { + assign +} from 'min-dash'; -var BaseLayouter = require('diagram-js/lib/layout/BaseLayouter'), - ManhattanLayout = require('diagram-js/lib/layout/ManhattanLayout'); +import BaseLayouter from 'diagram-js/lib/layout/BaseLayouter'; -var LayoutUtil = require('diagram-js/lib/layout/LayoutUtil'); +import { + repairConnection +} from 'diagram-js/lib/layout/ManhattanLayout'; -var pointsOnLine = require('diagram-js/lib/util/Geometry').pointsOnLine; +import { + getMid, + getOrientation +} from 'diagram-js/lib/layout/LayoutUtil'; -var isExpanded = require('../../util/DiUtil').isExpanded; +import { + pointsOnLine +} from 'diagram-js/lib/util/Geometry'; -var getMid = LayoutUtil.getMid, - getOrientation = LayoutUtil.getOrientation; +import { + isExpanded +} from '../../util/DiUtil'; -var is = require('../../util/ModelUtil').is; +import { is } from '../../util/ModelUtil'; -function BpmnLayouter() {} +export default function BpmnLayouter() {} inherits(BpmnLayouter, BaseLayouter); -module.exports = BpmnLayouter; - BpmnLayouter.prototype.layoutConnection = function(connection, hints) { @@ -154,7 +161,7 @@ BpmnLayouter.prototype.layoutConnection = function(connection, hints) { manhattanOptions = assign(manhattanOptions, hints); updatedWaypoints = - ManhattanLayout.repairConnection( + repairConnection( source, target, start, end, waypoints, diff --git a/lib/features/modeling/BpmnUpdater.js b/lib/features/modeling/BpmnUpdater.js index 341bd3f4..4ac25887 100644 --- a/lib/features/modeling/BpmnUpdater.js +++ b/lib/features/modeling/BpmnUpdater.js @@ -1,22 +1,35 @@ 'use strict'; -var assign = require('min-dash').assign, - forEach = require('min-dash').forEach, - inherits = require('inherits'); +import { + assign, + forEach +} from 'min-dash'; -var Collections = require('diagram-js/lib/util/Collections'), - Model = require('diagram-js/lib/model'); +import inherits from 'inherits'; -var getBusinessObject = require('../../util/ModelUtil').getBusinessObject, - is = require('../../util/ModelUtil').is; +import { + remove as collectionRemove, + add as collectionAdd +} from 'diagram-js/lib/util/Collections'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import { + Label +} from 'diagram-js/lib/model'; + +import { + getBusinessObject, + is +} from '../../util/ModelUtil'; + +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; /** * A handler responsible for updating the underlying BPMN 2.0 XML + DI * once changes on the diagram happen */ -function BpmnUpdater(eventBus, bpmnFactory, connectionDocking, translate) { +export default function BpmnUpdater( + eventBus, bpmnFactory, connectionDocking, + translate) { CommandInterceptor.call(this, eventBus); @@ -285,9 +298,12 @@ function BpmnUpdater(eventBus, bpmnFactory, connectionDocking, translate) { inherits(BpmnUpdater, CommandInterceptor); -module.exports = BpmnUpdater; - -BpmnUpdater.$inject = [ 'eventBus', 'bpmnFactory', 'connectionDocking', 'translate' ]; +BpmnUpdater.$inject = [ + 'eventBus', + 'bpmnFactory', + 'connectionDocking', + 'translate' +]; // implementation ////////////////////// @@ -303,7 +319,7 @@ BpmnUpdater.prototype.updateAttachment = function(context) { BpmnUpdater.prototype.updateParent = function(element, oldParent) { // do not update BPMN 2.0 label parent - if (element instanceof Model.Label) { + if (element instanceof Label) { return; } @@ -347,7 +363,7 @@ BpmnUpdater.prototype.updateBounds = function(shape) { var di = shape.businessObject.di; - var bounds = (shape instanceof Model.Label) ? this._getLabel(di).bounds : di.bounds; + var bounds = (shape instanceof Label) ? this._getLabel(di).bounds : di.bounds; assign(bounds, { x: shape.x, @@ -367,12 +383,12 @@ BpmnUpdater.prototype.updateFlowNodeRefs = function(businessObject, newContainme if (is (oldContainment, 'bpmn:Lane')) { oldRefs = oldContainment.get('flowNodeRef'); - Collections.remove(oldRefs, businessObject); + collectionRemove(oldRefs, businessObject); } if (is(newContainment, 'bpmn:Lane')) { newRefs = newContainment.get('flowNodeRef'); - Collections.add(newRefs, businessObject); + collectionAdd(newRefs, businessObject); } }; @@ -407,7 +423,7 @@ BpmnUpdater.prototype.updateDiParent = function(di, parentDi) { planeElements.push(di); di.$parent = parentDi; } else { - Collections.remove(planeElements, di); + collectionRemove(planeElements, di); di.$parent = null; } }; @@ -530,12 +546,12 @@ BpmnUpdater.prototype.updateSemanticParent = function(businessObject, newParent, definitions = getDefinitions(businessObject.$parent || newParent); if (businessObject.$parent) { - Collections.remove(definitions.get('rootElements'), process); + collectionRemove(definitions.get('rootElements'), process); process.$parent = null; } if (newParent) { - Collections.add(definitions.get('rootElements'), process); + collectionAdd(definitions.get('rootElements'), process); process.$parent = definitions; } } @@ -564,7 +580,7 @@ BpmnUpdater.prototype.updateSemanticParent = function(businessObject, newParent, if (businessObject.$parent) { // remove from old parent children = businessObject.$parent.get(containment); - Collections.remove(children, businessObject); + collectionRemove(children, businessObject); } if (!newParent) { @@ -579,7 +595,7 @@ BpmnUpdater.prototype.updateSemanticParent = function(businessObject, newParent, if (visualParent) { var diChildren = visualParent.get(containment); - Collections.remove(children, businessObject); + collectionRemove(children, businessObject); if (newParent) { @@ -613,7 +629,7 @@ BpmnUpdater.prototype.updateConnection = function(context) { if (businessObject.sourceRef !== newSource) { if (inverseSet) { - Collections.remove(businessObject.sourceRef && businessObject.sourceRef.get('outgoing'), businessObject); + collectionRemove(businessObject.sourceRef && businessObject.sourceRef.get('outgoing'), businessObject); if (newSource && newSource.get('outgoing')) { newSource.get('outgoing').push(businessObject); @@ -625,7 +641,7 @@ BpmnUpdater.prototype.updateConnection = function(context) { if (businessObject.targetRef !== newTarget) { if (inverseSet) { - Collections.remove(businessObject.targetRef && businessObject.targetRef.get('incoming'), businessObject); + collectionRemove(businessObject.targetRef && businessObject.targetRef.get('incoming'), businessObject); if (newTarget && newTarget.get('incoming')) { newTarget.get('incoming').push(businessObject); diff --git a/lib/features/modeling/ElementFactory.js b/lib/features/modeling/ElementFactory.js index 32903439..ad544e4c 100644 --- a/lib/features/modeling/ElementFactory.js +++ b/lib/features/modeling/ElementFactory.js @@ -1,20 +1,29 @@ 'use strict'; -var assign = require('min-dash').assign, - forEach = require('min-dash').forEach, - inherits = require('inherits'); +import { + assign, + forEach +} from 'min-dash'; -var is = require('../../util/ModelUtil').is; +import inherits from 'inherits'; -var isExpanded = require('../../util/DiUtil').isExpanded; +import { is } from '../../util/ModelUtil'; + +import { + isExpanded +} from '../../util/DiUtil'; + +import BaseElementFactory from 'diagram-js/lib/core/ElementFactory'; + +import { + DEFAULT_LABEL_SIZE +} from '../../util/LabelUtil'; -var BaseElementFactory = require('diagram-js/lib/core/ElementFactory'), - LabelUtil = require('../../util/LabelUtil'); /** * A bpmn-aware factory for diagram-js shapes */ -function ElementFactory(bpmnFactory, moddle, translate) { +export default function ElementFactory(bpmnFactory, moddle, translate) { BaseElementFactory.call(this); this._bpmnFactory = bpmnFactory; @@ -24,10 +33,11 @@ function ElementFactory(bpmnFactory, moddle, translate) { inherits(ElementFactory, BaseElementFactory); - -ElementFactory.$inject = [ 'bpmnFactory', 'moddle', 'translate' ]; - -module.exports = ElementFactory; +ElementFactory.$inject = [ + 'bpmnFactory', + 'moddle', + 'translate' +]; ElementFactory.prototype.baseCreate = BaseElementFactory.prototype.create; @@ -36,7 +46,7 @@ ElementFactory.prototype.create = function(elementType, attrs) { // we assume their businessObjects have already been created // and wired via attrs if (elementType === 'label') { - return this.baseCreate(elementType, assign({ type: 'label' }, LabelUtil.DEFAULT_LABEL_SIZE, attrs)); + return this.baseCreate(elementType, assign({ type: 'label' }, DEFAULT_LABEL_SIZE, attrs)); } return this.createBpmnElement(elementType, attrs); diff --git a/lib/features/modeling/Modeling.js b/lib/features/modeling/Modeling.js index e65757fd..39c1be54 100644 --- a/lib/features/modeling/Modeling.js +++ b/lib/features/modeling/Modeling.js @@ -1,19 +1,19 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var BaseModeling = require('diagram-js/lib/features/modeling/Modeling'); +import BaseModeling from 'diagram-js/lib/features/modeling/Modeling'; -var UpdatePropertiesHandler = require('./cmd/UpdatePropertiesHandler'), - UpdateCanvasRootHandler = require('./cmd/UpdateCanvasRootHandler'), - AddLaneHandler = require('./cmd/AddLaneHandler'), - SplitLaneHandler = require('./cmd/SplitLaneHandler'), - ResizeLaneHandler = require('./cmd/ResizeLaneHandler'), - UpdateFlowNodeRefsHandler = require('./cmd/UpdateFlowNodeRefsHandler'), - IdClaimHandler = require('./cmd/IdClaimHandler'), - SetColorHandler = require('./cmd/SetColorHandler'); +import UpdatePropertiesHandler from './cmd/UpdatePropertiesHandler'; +import UpdateCanvasRootHandler from './cmd/UpdateCanvasRootHandler'; +import AddLaneHandler from './cmd/AddLaneHandler'; +import SplitLaneHandler from './cmd/SplitLaneHandler'; +import ResizeLaneHandler from './cmd/ResizeLaneHandler'; +import UpdateFlowNodeRefsHandler from './cmd/UpdateFlowNodeRefsHandler'; +import IdClaimHandler from './cmd/IdClaimHandler'; +import SetColorHandler from './cmd/SetColorHandler'; -var UpdateLabelHandler = require('../label-editing/cmd/UpdateLabelHandler'); +import UpdateLabelHandler from '../label-editing/cmd/UpdateLabelHandler'; /** @@ -24,7 +24,10 @@ var UpdateLabelHandler = require('../label-editing/cmd/UpdateLabelHandler'); * @param {CommandStack} commandStack * @param {BpmnRules} bpmnRules */ -function Modeling(eventBus, elementFactory, commandStack, bpmnRules) { +export default function Modeling( + eventBus, elementFactory, commandStack, + bpmnRules) { + BaseModeling.call(this, eventBus, elementFactory, commandStack); this._bpmnRules = bpmnRules; @@ -32,9 +35,12 @@ function Modeling(eventBus, elementFactory, commandStack, bpmnRules) { inherits(Modeling, BaseModeling); -Modeling.$inject = [ 'eventBus', 'elementFactory', 'commandStack', 'bpmnRules' ]; - -module.exports = Modeling; +Modeling.$inject = [ + 'eventBus', + 'elementFactory', + 'commandStack', + 'bpmnRules' +]; Modeling.prototype.getHandlers = function() { diff --git a/lib/features/modeling/behavior/AdaptiveLabelPositioningBehavior.js b/lib/features/modeling/behavior/AdaptiveLabelPositioningBehavior.js index c5d4d3ff..16f285d3 100644 --- a/lib/features/modeling/behavior/AdaptiveLabelPositioningBehavior.js +++ b/lib/features/modeling/behavior/AdaptiveLabelPositioningBehavior.js @@ -1,17 +1,22 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var getOrientation = require('diagram-js/lib/layout/LayoutUtil').getOrientation, - getMid = require('diagram-js/lib/layout/LayoutUtil').getMid, - asTRBL = require('diagram-js/lib/layout/LayoutUtil').asTRBL, - substract = require('diagram-js/lib/util/Math').substract; +import { + getOrientation, + getMid, + asTRBL +} from 'diagram-js/lib/layout/LayoutUtil'; -var LabelUtil = require('../../../util/LabelUtil'); +import { + substract +} from 'diagram-js/lib/util/Math'; -var hasExternalLabel = LabelUtil.hasExternalLabel; +import { + hasExternalLabel +} from '../../../util/LabelUtil'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; /** @@ -22,7 +27,7 @@ var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); * @param {EventBus} eventBus * @param {Modeling} modeling */ -function AdaptiveLabelPositioningBehavior(eventBus, modeling) { +export default function AdaptiveLabelPositioningBehavior(eventBus, modeling) { CommandInterceptor.call(this, eventBus); @@ -119,7 +124,6 @@ function AdaptiveLabelPositioningBehavior(eventBus, modeling) { } - inherits(AdaptiveLabelPositioningBehavior, CommandInterceptor); AdaptiveLabelPositioningBehavior.$inject = [ @@ -127,7 +131,6 @@ AdaptiveLabelPositioningBehavior.$inject = [ 'modeling' ]; -module.exports = AdaptiveLabelPositioningBehavior; /** * Return the optimal label position around an element diff --git a/lib/features/modeling/behavior/AppendBehavior.js b/lib/features/modeling/behavior/AppendBehavior.js index 57ece101..edf661de 100644 --- a/lib/features/modeling/behavior/AppendBehavior.js +++ b/lib/features/modeling/behavior/AppendBehavior.js @@ -1,13 +1,13 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -function AppendBehavior(eventBus, elementFactory, bpmnRules) { +export default function AppendBehavior(eventBus, elementFactory, bpmnRules) { CommandInterceptor.call(this, eventBus); @@ -35,9 +35,10 @@ function AppendBehavior(eventBus, elementFactory, bpmnRules) { }, true); } - -AppendBehavior.$inject = [ 'eventBus', 'elementFactory', 'bpmnRules' ]; - inherits(AppendBehavior, CommandInterceptor); -module.exports = AppendBehavior; \ No newline at end of file +AppendBehavior.$inject = [ + 'eventBus', + 'elementFactory', + 'bpmnRules' +]; \ No newline at end of file diff --git a/lib/features/modeling/behavior/CopyPasteBehavior.js b/lib/features/modeling/behavior/CopyPasteBehavior.js index 09a4183d..5b8386d4 100644 --- a/lib/features/modeling/behavior/CopyPasteBehavior.js +++ b/lib/features/modeling/behavior/CopyPasteBehavior.js @@ -1,15 +1,17 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var forEach = require('min-dash').forEach; +import { + forEach +} from 'min-dash'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -function CopyPasteBehavior(eventBus, modeling, canvas) { +export default function CopyPasteBehavior(eventBus, modeling, canvas) { CommandInterceptor.call(this, eventBus); @@ -62,8 +64,10 @@ function CopyPasteBehavior(eventBus, modeling, canvas) { } -CopyPasteBehavior.$inject = [ 'eventBus', 'modeling', 'canvas' ]; +CopyPasteBehavior.$inject = [ + 'eventBus', + 'modeling', + 'canvas' +]; -inherits(CopyPasteBehavior, CommandInterceptor); - -module.exports = CopyPasteBehavior; +inherits(CopyPasteBehavior, CommandInterceptor); \ No newline at end of file diff --git a/lib/features/modeling/behavior/CreateBoundaryEventBehavior.js b/lib/features/modeling/behavior/CreateBoundaryEventBehavior.js index 7cffd121..3dc62987 100644 --- a/lib/features/modeling/behavior/CreateBoundaryEventBehavior.js +++ b/lib/features/modeling/behavior/CreateBoundaryEventBehavior.js @@ -1,16 +1,18 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; /** * BPMN specific create boundary event behavior */ -function CreateBoundaryEventBehavior(eventBus, modeling, elementFactory, bpmnFactory) { +export default function CreateBoundaryEventBehavior( + eventBus, modeling, elementFactory, + bpmnFactory) { CommandInterceptor.call(this, eventBus); @@ -44,8 +46,11 @@ function CreateBoundaryEventBehavior(eventBus, modeling, elementFactory, bpmnFac }, true); } -CreateBoundaryEventBehavior.$inject = [ 'eventBus', 'modeling', 'elementFactory', 'bpmnFactory' ]; +CreateBoundaryEventBehavior.$inject = [ + 'eventBus', + 'modeling', + 'elementFactory', + 'bpmnFactory' +]; inherits(CreateBoundaryEventBehavior, CommandInterceptor); - -module.exports = CreateBoundaryEventBehavior; diff --git a/lib/features/modeling/behavior/CreateDataObjectBehavior.js b/lib/features/modeling/behavior/CreateDataObjectBehavior.js index 3ecdc024..5c1d4051 100644 --- a/lib/features/modeling/behavior/CreateDataObjectBehavior.js +++ b/lib/features/modeling/behavior/CreateDataObjectBehavior.js @@ -1,15 +1,16 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; + +import { is } from '../../../util/ModelUtil'; -var is = require('../../../util/ModelUtil').is; /** * BPMN specific create data object behavior */ -function CreateDataObjectBehavior(eventBus, bpmnFactory, moddle) { +export default function CreateDataObjectBehavior(eventBus, bpmnFactory, moddle) { CommandInterceptor.call(this, eventBus); @@ -30,8 +31,10 @@ function CreateDataObjectBehavior(eventBus, bpmnFactory, moddle) { } -CreateDataObjectBehavior.$inject = [ 'eventBus', 'bpmnFactory', 'moddle' ]; +CreateDataObjectBehavior.$inject = [ + 'eventBus', + 'bpmnFactory', + 'moddle' +]; -inherits(CreateDataObjectBehavior, CommandInterceptor); - -module.exports = CreateDataObjectBehavior; +inherits(CreateDataObjectBehavior, CommandInterceptor); \ No newline at end of file diff --git a/lib/features/modeling/behavior/CreateParticipantBehavior.js b/lib/features/modeling/behavior/CreateParticipantBehavior.js index b268661e..70ece9a2 100644 --- a/lib/features/modeling/behavior/CreateParticipantBehavior.js +++ b/lib/features/modeling/behavior/CreateParticipantBehavior.js @@ -1,15 +1,18 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; + +import { is } from '../../../util/ModelUtil'; -var is = require('../../../util/ModelUtil').is; /** * BPMN specific create participant behavior */ -function CreateParticipantBehavior(eventBus, modeling, elementFactory, bpmnFactory, canvas) { +export default function CreateParticipantBehavior( + eventBus, modeling, elementFactory, + bpmnFactory, canvas) { CommandInterceptor.call(this, eventBus); @@ -26,7 +29,11 @@ function CreateParticipantBehavior(eventBus, modeling, elementFactory, bpmnFacto var rootElement = canvas.getRootElement(); - if (is(parent, 'bpmn:Process') && is(shape, 'bpmn:Participant') && !is(rootElement, 'bpmn:Collaboration')) { + if ( + is(parent, 'bpmn:Process') && + is(shape, 'bpmn:Participant') && + !is(rootElement, 'bpmn:Collaboration') + ) { // this is going to detach the process root // and set the returned collaboration element @@ -84,8 +91,12 @@ function CreateParticipantBehavior(eventBus, modeling, elementFactory, bpmnFacto } -CreateParticipantBehavior.$inject = [ 'eventBus', 'modeling', 'elementFactory', 'bpmnFactory', 'canvas' ]; +CreateParticipantBehavior.$inject = [ + 'eventBus', + 'modeling', + 'elementFactory', + 'bpmnFactory', + 'canvas' +]; -inherits(CreateParticipantBehavior, CommandInterceptor); - -module.exports = CreateParticipantBehavior; +inherits(CreateParticipantBehavior, CommandInterceptor); \ No newline at end of file diff --git a/lib/features/modeling/behavior/DataInputAssociationBehavior.js b/lib/features/modeling/behavior/DataInputAssociationBehavior.js index 85b1a011..0bf50984 100644 --- a/lib/features/modeling/behavior/DataInputAssociationBehavior.js +++ b/lib/features/modeling/behavior/DataInputAssociationBehavior.js @@ -1,14 +1,21 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var Collections = require('diagram-js/lib/util/Collections'); +import { + add as collectionAdd, + remove as collectionRemove +} from 'diagram-js/lib/util/Collections'; -var find = require('min-dash').find; +import { + find +} from 'min-dash'; -var is = require('../../../util/ModelUtil').is; +import { + is +} from '../../../util/ModelUtil'; var TARGET_REF_PLACEHOLDER_NAME = '__targetRef_placeholder'; @@ -25,7 +32,7 @@ var TARGET_REF_PLACEHOLDER_NAME = '__targetRef_placeholder'; * @param {EventBus} eventBus * @param {BpmnFactory} bpmnFactory */ -function DataInputAssociationBehavior(eventBus, bpmnFactory) { +export default function DataInputAssociationBehavior(eventBus, bpmnFactory) { CommandInterceptor.call(this, eventBus); @@ -68,7 +75,7 @@ function DataInputAssociationBehavior(eventBus, bpmnFactory) { name: TARGET_REF_PLACEHOLDER_NAME }); - Collections.add(properties, targetRefProp); + collectionAdd(properties, targetRefProp); } return targetRefProp; @@ -83,7 +90,7 @@ function DataInputAssociationBehavior(eventBus, bpmnFactory) { } if (!usesTargetRef(element, targetRefProp, connection)) { - Collections.remove(element.get('properties'), targetRefProp); + collectionRemove(element.get('properties'), targetRefProp); } } @@ -125,12 +132,13 @@ function DataInputAssociationBehavior(eventBus, bpmnFactory) { } } -DataInputAssociationBehavior.$inject = [ 'eventBus', 'bpmnFactory' ]; +DataInputAssociationBehavior.$inject = [ + 'eventBus', + 'bpmnFactory' +]; inherits(DataInputAssociationBehavior, CommandInterceptor); -module.exports = DataInputAssociationBehavior; - /** * Only call the given function when the event diff --git a/lib/features/modeling/behavior/DeleteLaneBehavior.js b/lib/features/modeling/behavior/DeleteLaneBehavior.js index a5b3dc2b..ace99c59 100644 --- a/lib/features/modeling/behavior/DeleteLaneBehavior.js +++ b/lib/features/modeling/behavior/DeleteLaneBehavior.js @@ -1,14 +1,18 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; -var getChildLanes = require('../util/LaneUtil').getChildLanes; +import { + getChildLanes +} from '../util/LaneUtil'; -var eachElement = require('diagram-js/lib/util/Elements').eachElement; +import { + eachElement +} from 'diagram-js/lib/util/Elements'; var LOW_PRIORITY = 500; @@ -17,7 +21,7 @@ var LOW_PRIORITY = 500; /** * BPMN specific delete lane behavior */ -function DeleteLaneBehavior(eventBus, modeling, spaceTool) { +export default function DeleteLaneBehavior(eventBus, modeling, spaceTool) { CommandInterceptor.call(this, eventBus); @@ -101,8 +105,10 @@ function DeleteLaneBehavior(eventBus, modeling, spaceTool) { }); } -DeleteLaneBehavior.$inject = [ 'eventBus', 'modeling', 'spaceTool' ]; +DeleteLaneBehavior.$inject = [ + 'eventBus', + 'modeling', + 'spaceTool' +]; -inherits(DeleteLaneBehavior, CommandInterceptor); - -module.exports = DeleteLaneBehavior; \ No newline at end of file +inherits(DeleteLaneBehavior, CommandInterceptor); \ No newline at end of file diff --git a/lib/features/modeling/behavior/DropOnFlowBehavior.js b/lib/features/modeling/behavior/DropOnFlowBehavior.js index 35c4b9ef..06b01468 100644 --- a/lib/features/modeling/behavior/DropOnFlowBehavior.js +++ b/lib/features/modeling/behavior/DropOnFlowBehavior.js @@ -1,37 +1,20 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var assign = require('min-dash').assign, - find = require('min-dash').find; +import { + assign, + find +} from 'min-dash'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var getApproxIntersection = require('diagram-js/lib/util/LineIntersection').getApproxIntersection; +import { + getApproxIntersection +} from 'diagram-js/lib/util/LineIntersection'; -function isPointInsideBBox(bbox, point) { - var x = point.x, - y = point.y; - return x >= bbox.x && - x <= bbox.x + bbox.width && - y >= bbox.y && - y <= bbox.y + bbox.height; -} - -function copy(obj) { - return assign({}, obj); -} - -function getMid(bounds) { - - return { - x: Math.round(bounds.x + bounds.width / 2), - y: Math.round(bounds.y + bounds.height / 2) - }; -} - -function DropOnFlow(eventBus, bpmnRules, modeling) { +export default function DropOnFlowBehavior(eventBus, bpmnRules, modeling) { CommandInterceptor.call(this, eventBus); @@ -162,8 +145,36 @@ function DropOnFlow(eventBus, bpmnRules, modeling) { }, true); } -inherits(DropOnFlow, CommandInterceptor); +inherits(DropOnFlowBehavior, CommandInterceptor); -DropOnFlow.$inject = [ 'eventBus', 'bpmnRules', 'modeling' ]; +DropOnFlowBehavior.$inject = [ + 'eventBus', + 'bpmnRules', + 'modeling' +]; + + +// helpers ///////////////////// + +function isPointInsideBBox(bbox, point) { + var x = point.x, + y = point.y; + + return x >= bbox.x && + x <= bbox.x + bbox.width && + y >= bbox.y && + y <= bbox.y + bbox.height; +} + +function copy(obj) { + return assign({}, obj); +} + +function getMid(bounds) { + + return { + x: Math.round(bounds.x + bounds.width / 2), + y: Math.round(bounds.y + bounds.height / 2) + }; +} -module.exports = DropOnFlow; \ No newline at end of file diff --git a/lib/features/modeling/behavior/ImportDockingFix.js b/lib/features/modeling/behavior/ImportDockingFix.js index 8024bac5..3fa8fcbb 100644 --- a/lib/features/modeling/behavior/ImportDockingFix.js +++ b/lib/features/modeling/behavior/ImportDockingFix.js @@ -1,8 +1,10 @@ 'use strict'; -var getMid = require('diagram-js/lib/layout/LayoutUtil').getMid; +import { + getMid +} from 'diagram-js/lib/layout/LayoutUtil'; -var lineIntersect = require('./util/LineIntersect'); +import lineIntersect from './util/LineIntersect'; /** @@ -10,7 +12,7 @@ var lineIntersect = require('./util/LineIntersect'); * * @param {EventBus} eventBus */ -function ImportDockingFix(eventBus) { +export default function ImportDockingFix(eventBus) { function adjustDocking(startPoint, nextPoint, elementMid) { @@ -69,9 +71,9 @@ function ImportDockingFix(eventBus) { }); } -ImportDockingFix.$inject = [ 'eventBus' ]; - -module.exports = ImportDockingFix; +ImportDockingFix.$inject = [ + 'eventBus' +]; // helpers ////////////////////// diff --git a/lib/features/modeling/behavior/LabelBehavior.js b/lib/features/modeling/behavior/LabelBehavior.js index 4bf30e77..7f3f5262 100644 --- a/lib/features/modeling/behavior/LabelBehavior.js +++ b/lib/features/modeling/behavior/LabelBehavior.js @@ -1,21 +1,28 @@ 'use strict'; -var assign = require('min-dash').assign, - inherits = require('inherits'); +import { + assign +} from 'min-dash'; -var LabelUtil = require('../../../util/LabelUtil'), - LabelLayoutUtil = require('./util/LabelLayoutUtil'), - ModelUtil = require('../../../util/ModelUtil'), - is = ModelUtil.is, - getBusinessObject = ModelUtil.getBusinessObject; +import inherits from 'inherits'; -var hasExternalLabel = LabelUtil.hasExternalLabel, - getExternalLabelMid = LabelUtil.getExternalLabelMid, - getLabelAdjustment = LabelLayoutUtil.getLabelAdjustment; +import { + is, + getBusinessObject +} from '../../../util/ModelUtil'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import { + hasExternalLabel, + getExternalLabelMid, +} from '../../../util/LabelUtil'; -var TextUtil = require('diagram-js/lib/util/Text'); +import { + getLabelAdjustment +} from './util/LabelLayoutUtil'; + +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; + +import TextUtil from 'diagram-js/lib/util/Text'; var DEFAULT_LABEL_DIMENSIONS = { width: 90, @@ -32,7 +39,7 @@ var DEFAULT_LABEL_DIMENSIONS = { * @param {Modeling} modeling * @param {BpmnFactory} bpmnFactory */ -function LabelSupport(eventBus, modeling, bpmnFactory) { +export default function LabelBehavior(eventBus, modeling, bpmnFactory) { CommandInterceptor.call(this, eventBus); @@ -186,11 +193,13 @@ function LabelSupport(eventBus, modeling, bpmnFactory) { } -inherits(LabelSupport, CommandInterceptor); +inherits(LabelBehavior, CommandInterceptor); -LabelSupport.$inject = [ 'eventBus', 'modeling', 'bpmnFactory' ]; - -module.exports = LabelSupport; +LabelBehavior.$inject = [ + 'eventBus', + 'modeling', + 'bpmnFactory' +]; // TODO(nikku): repeating code (search for ) diff --git a/lib/features/modeling/behavior/ModelingFeedback.js b/lib/features/modeling/behavior/ModelingFeedback.js index 130390a7..d851ce5c 100644 --- a/lib/features/modeling/behavior/ModelingFeedback.js +++ b/lib/features/modeling/behavior/ModelingFeedback.js @@ -1,11 +1,12 @@ 'use strict'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; var COLLAB_ERR_MSG = 'flow elements must be children of pools/participants', PROCESS_ERR_MSG = 'participants cannot be pasted onto a non-empty process diagram'; -function ModelingFeedback(eventBus, tooltips, translate) { + +export default function ModelingFeedback(eventBus, tooltips, translate) { function showError(position, message, timeout) { tooltips.add({ @@ -44,7 +45,8 @@ function ModelingFeedback(eventBus, tooltips, translate) { }); } - -ModelingFeedback.$inject = [ 'eventBus', 'tooltips', 'translate' ]; - -module.exports = ModelingFeedback; +ModelingFeedback.$inject = [ + 'eventBus', + 'tooltips', + 'translate' +]; diff --git a/lib/features/modeling/behavior/RemoveElementBehavior.js b/lib/features/modeling/behavior/RemoveElementBehavior.js index 8ead4804..6990664e 100644 --- a/lib/features/modeling/behavior/RemoveElementBehavior.js +++ b/lib/features/modeling/behavior/RemoveElementBehavior.js @@ -1,13 +1,13 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var lineIntersect = require('./util/LineIntersect'); +import lineIntersect from './util/LineIntersect'; -function RemoveElementBehavior(eventBus, bpmnRules, modeling) { +export default function RemoveElementBehavior(eventBus, bpmnRules, modeling) { CommandInterceptor.call(this, eventBus); @@ -40,9 +40,11 @@ function RemoveElementBehavior(eventBus, bpmnRules, modeling) { inherits(RemoveElementBehavior, CommandInterceptor); -RemoveElementBehavior.$inject = [ 'eventBus', 'bpmnRules', 'modeling' ]; - -module.exports = RemoveElementBehavior; +RemoveElementBehavior.$inject = [ + 'eventBus', + 'bpmnRules', + 'modeling' +]; // helpers ////////////////////// diff --git a/lib/features/modeling/behavior/RemoveParticipantBehavior.js b/lib/features/modeling/behavior/RemoveParticipantBehavior.js index 235db906..4c378f87 100644 --- a/lib/features/modeling/behavior/RemoveParticipantBehavior.js +++ b/lib/features/modeling/behavior/RemoveParticipantBehavior.js @@ -1,16 +1,16 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; /** * BPMN specific remove behavior */ -function RemoveParticipantBehavior(eventBus, modeling) { +export default function RemoveParticipantBehavior(eventBus, modeling) { CommandInterceptor.call(this, eventBus); @@ -46,6 +46,4 @@ function RemoveParticipantBehavior(eventBus, modeling) { RemoveParticipantBehavior.$inject = [ 'eventBus', 'modeling' ]; -inherits(RemoveParticipantBehavior, CommandInterceptor); - -module.exports = RemoveParticipantBehavior; \ No newline at end of file +inherits(RemoveParticipantBehavior, CommandInterceptor); \ No newline at end of file diff --git a/lib/features/modeling/behavior/ReplaceConnectionBehavior.js b/lib/features/modeling/behavior/ReplaceConnectionBehavior.js index bdc2fa6c..0ae44720 100644 --- a/lib/features/modeling/behavior/ReplaceConnectionBehavior.js +++ b/lib/features/modeling/behavior/ReplaceConnectionBehavior.js @@ -1,17 +1,19 @@ 'use strict'; -var forEach = require('min-dash').forEach, - find = require('min-dash').find, - matchPattern = require('min-dash').matchPattern; +import { + forEach, + find, + matchPattern +} from 'min-dash'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; -function ReplaceConnectionBehavior(eventBus, modeling, bpmnRules) { +export default function ReplaceConnectionBehavior(eventBus, modeling, bpmnRules) { CommandInterceptor.call(this, eventBus); @@ -129,6 +131,8 @@ function ReplaceConnectionBehavior(eventBus, modeling, bpmnRules) { inherits(ReplaceConnectionBehavior, CommandInterceptor); -ReplaceConnectionBehavior.$inject = [ 'eventBus', 'modeling', 'bpmnRules' ]; - -module.exports = ReplaceConnectionBehavior; +ReplaceConnectionBehavior.$inject = [ + 'eventBus', + 'modeling', + 'bpmnRules' +]; diff --git a/lib/features/modeling/behavior/ReplaceElementBehaviour.js b/lib/features/modeling/behavior/ReplaceElementBehaviour.js index 25e89e23..8147311a 100644 --- a/lib/features/modeling/behavior/ReplaceElementBehaviour.js +++ b/lib/features/modeling/behavior/ReplaceElementBehaviour.js @@ -1,22 +1,28 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var forEach = require('min-dash').forEach; +import { + forEach +} from 'min-dash'; + +import { + isEventSubProcess +} from '../../../util/DiUtil'; + +import { is } from '../../../util/ModelUtil'; -var isEventSubProcess = require('../../../util/DiUtil').isEventSubProcess; -var is = require('../../../util/ModelUtil').is; /** * Defines the behaviour of what happens to the elements inside a container * that morphs into another BPMN element */ -function ReplaceElementBehaviour( +export default function ReplaceElementBehaviour( eventBus, bpmnReplace, bpmnRules, - elementRegistry, selection, modeling -) { + elementRegistry, selection, modeling) { + CommandInterceptor.call(this, eventBus); this._bpmnReplace = bpmnReplace; @@ -114,8 +120,10 @@ ReplaceElementBehaviour.prototype.replaceElements = function(elements, newElemen }; ReplaceElementBehaviour.$inject = [ - 'eventBus', 'bpmnReplace', 'bpmnRules', - 'elementRegistry', 'selection', 'modeling' + 'eventBus', + 'bpmnReplace', + 'bpmnRules', + 'elementRegistry', + 'selection', + 'modeling' ]; - -module.exports = ReplaceElementBehaviour; diff --git a/lib/features/modeling/behavior/ResizeLaneBehavior.js b/lib/features/modeling/behavior/ResizeLaneBehavior.js index 92c5e533..978f99c2 100644 --- a/lib/features/modeling/behavior/ResizeLaneBehavior.js +++ b/lib/features/modeling/behavior/ResizeLaneBehavior.js @@ -1,10 +1,14 @@ 'use strict'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; -var roundBounds = require('diagram-js/lib/layout/LayoutUtil').roundBounds; +import { + roundBounds +} from 'diagram-js/lib/layout/LayoutUtil'; -var hasPrimaryModifier = require('diagram-js/lib/util/Mouse').hasPrimaryModifier; +import { + hasPrimaryModifier +} from 'diagram-js/lib/util/Mouse'; var SLIGHTLY_HIGHER_PRIORITY = 1001; @@ -14,7 +18,7 @@ var SLIGHTLY_HIGHER_PRIORITY = 1001; * {@link Modeling#resizeShape} when resizing a Lane * or Participant shape. */ -function ResizeLaneBehavior(eventBus, modeling) { +export default function ResizeLaneBehavior(eventBus, modeling) { eventBus.on('resize.start', SLIGHTLY_HIGHER_PRIORITY + 500, function(event) { var context = event.context, @@ -54,6 +58,7 @@ function ResizeLaneBehavior(eventBus, modeling) { }); } -ResizeLaneBehavior.$inject = [ 'eventBus', 'modeling' ]; - -module.exports = ResizeLaneBehavior; +ResizeLaneBehavior.$inject = [ + 'eventBus', + 'modeling' +]; diff --git a/lib/features/modeling/behavior/ToggleElementCollapseBehaviour.js b/lib/features/modeling/behavior/ToggleElementCollapseBehaviour.js index 9fdd637e..284cc684 100644 --- a/lib/features/modeling/behavior/ToggleElementCollapseBehaviour.js +++ b/lib/features/modeling/behavior/ToggleElementCollapseBehaviour.js @@ -1,17 +1,26 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'), - getBusinessObject = require('../../../util/ModelUtil').getBusinessObject, - is = require('../../../util/ModelUtil').is, - computeChildrenBBox = require('diagram-js/lib/features/resize/ResizeUtil').computeChildrenBBox; +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; + +import { + getBusinessObject, + is +} from '../../../util/ModelUtil'; + +import { + computeChildrenBBox +} from 'diagram-js/lib/features/resize/ResizeUtil'; var LOW_PRIORITY = 500; -function ToggleElementCollapseBehaviour(eventBus, elementFactory, modeling, resize) { +export default function ToggleElementCollapseBehaviour( + eventBus, elementFactory, modeling, + resize) { + CommandInterceptor.call(this, eventBus); @@ -126,9 +135,6 @@ ToggleElementCollapseBehaviour.$inject = [ 'modeling' ]; -module.exports = ToggleElementCollapseBehaviour; - - // helpers ////////////////////// diff --git a/lib/features/modeling/behavior/UnclaimIdBehavior.js b/lib/features/modeling/behavior/UnclaimIdBehavior.js index 0eb6c1e8..50ac59b0 100644 --- a/lib/features/modeling/behavior/UnclaimIdBehavior.js +++ b/lib/features/modeling/behavior/UnclaimIdBehavior.js @@ -1,12 +1,21 @@ 'use strict'; -var forEach = require('min-dash').forEach; +import { + forEach +} from 'min-dash'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -function UnclaimIdBehavior(eventBus, modeling) { + +/** + * Unclaims model IDs on element deletion. + * + * @param {EventBus} eventBus + * @param {Modeling} modeling + */ +export default function UnclaimIdBehavior(eventBus, modeling) { CommandInterceptor.call(this, eventBus); @@ -23,6 +32,4 @@ function UnclaimIdBehavior(eventBus, modeling) { inherits(UnclaimIdBehavior, CommandInterceptor); -UnclaimIdBehavior.$inject = [ 'eventBus', 'modeling' ]; - -module.exports = UnclaimIdBehavior; \ No newline at end of file +UnclaimIdBehavior.$inject = [ 'eventBus', 'modeling' ]; \ No newline at end of file diff --git a/lib/features/modeling/behavior/UnsetDefaultFlowBehavior.js b/lib/features/modeling/behavior/UnsetDefaultFlowBehavior.js index f7af60db..66140a19 100644 --- a/lib/features/modeling/behavior/UnsetDefaultFlowBehavior.js +++ b/lib/features/modeling/behavior/UnsetDefaultFlowBehavior.js @@ -1,11 +1,14 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; + +import { + getBusinessObject, + is +} from '../../../util/ModelUtil'; -var is = require('../../../util/ModelUtil').is, - getBusinessObject = require('../../../util/ModelUtil').getBusinessObject; /** * A behavior that unsets the Default property of @@ -15,7 +18,7 @@ var is = require('../../../util/ModelUtil').is, * @param {EventBus} eventBus * @param {Modeling} modeling */ -function DeleteSequenceFlowBehavior(eventBus, modeling) { +export default function DeleteSequenceFlowBehavior(eventBus, modeling) { CommandInterceptor.call(this, eventBus); @@ -35,9 +38,10 @@ function DeleteSequenceFlowBehavior(eventBus, modeling) { inherits(DeleteSequenceFlowBehavior, CommandInterceptor); -DeleteSequenceFlowBehavior.$inject = [ 'eventBus', 'modeling' ]; - -module.exports = DeleteSequenceFlowBehavior; +DeleteSequenceFlowBehavior.$inject = [ + 'eventBus', + 'modeling' +]; // helpers ////////////////////// diff --git a/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.js b/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.js index ca652411..78e91ef6 100644 --- a/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.js +++ b/lib/features/modeling/behavior/UpdateFlowNodeRefsBehavior.js @@ -1,11 +1,12 @@ 'use strict'; +import inherits from 'inherits'; -var inherits = require('inherits'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); - -var is = require('../../../util/ModelUtil').is; +import { + is +} from '../../../util/ModelUtil'; var LOW_PRIORITY = 500, HIGH_PRIORITY = 5000; @@ -14,7 +15,7 @@ var LOW_PRIORITY = 500, /** * BPMN specific delete lane behavior */ -function UpdateFlowNodeRefsBehavior(eventBus, modeling, translate) { +export default function UpdateFlowNodeRefsBehavior(eventBus, modeling, translate) { CommandInterceptor.call(this, eventBus); @@ -122,13 +123,14 @@ function UpdateFlowNodeRefsBehavior(eventBus, modeling, translate) { }); } -UpdateFlowNodeRefsBehavior.$inject = [ 'eventBus', 'modeling' , 'translate']; +UpdateFlowNodeRefsBehavior.$inject = [ + 'eventBus', + 'modeling' , + 'translate' +]; inherits(UpdateFlowNodeRefsBehavior, CommandInterceptor); -module.exports = UpdateFlowNodeRefsBehavior; - - function UpdateContext() { diff --git a/lib/features/modeling/behavior/index.js b/lib/features/modeling/behavior/index.js index c5c3f61f..63b1195a 100644 --- a/lib/features/modeling/behavior/index.js +++ b/lib/features/modeling/behavior/index.js @@ -1,4 +1,26 @@ -module.exports = { +import AdaptiveLabelPositioningBehavior from './AdaptiveLabelPositioningBehavior'; +import AppendBehavior from './AppendBehavior'; +import CopyPasteBehavior from './CopyPasteBehavior'; +import CreateBoundaryEventBehavior from './CreateBoundaryEventBehavior'; +import CreateDataObjectBehavior from './CreateDataObjectBehavior'; +import CreateParticipantBehavior from './CreateParticipantBehavior'; +import DataInputAssociationBehavior from './DataInputAssociationBehavior'; +import DeleteLaneBehavior from './DeleteLaneBehavior'; +import DropOnFlowBehavior from './DropOnFlowBehavior'; +import ImportDockingFix from './ImportDockingFix'; +import LabelBehavior from './LabelBehavior'; +import ModelingFeedback from './ModelingFeedback'; +import ReplaceConnectionBehavior from './ReplaceConnectionBehavior'; +import RemoveParticipantBehavior from './RemoveParticipantBehavior'; +import ReplaceElementBehaviour from './ReplaceElementBehaviour'; +import ResizeLaneBehavior from './ResizeLaneBehavior'; +import RemoveElementBehavior from './RemoveElementBehavior'; +import ToggleElementCollapseBehaviour from './ToggleElementCollapseBehaviour'; +import UnclaimIdBehavior from './UnclaimIdBehavior'; +import UpdateFlowNodeRefsBehavior from './UpdateFlowNodeRefsBehavior'; +import UnsetDefaultFlowBehavior from './UnsetDefaultFlowBehavior'; + +export default { __init__: [ 'adaptiveLabelPositioningBehavior', 'appendBehavior', @@ -22,25 +44,25 @@ module.exports = { 'unsetDefaultFlowBehavior', 'updateFlowNodeRefsBehavior' ], - adaptiveLabelPositioningBehavior: [ 'type', require('./AdaptiveLabelPositioningBehavior') ], - appendBehavior: [ 'type', require('./AppendBehavior') ], - copyPasteBehavior: [ 'type', require('./CopyPasteBehavior') ], - createBoundaryEventBehavior: [ 'type', require('./CreateBoundaryEventBehavior') ], - createDataObjectBehavior: [ 'type', require('./CreateDataObjectBehavior') ], - createParticipantBehavior: [ 'type', require('./CreateParticipantBehavior') ], - dataInputAssociationBehavior: [ 'type', require('./DataInputAssociationBehavior') ], - deleteLaneBehavior: [ 'type', require('./DeleteLaneBehavior') ], - dropOnFlowBehavior: [ 'type', require('./DropOnFlowBehavior') ], - importDockingFix: [ 'type', require('./ImportDockingFix') ], - labelBehavior: [ 'type', require('./LabelBehavior') ], - modelingFeedback: [ 'type', require('./ModelingFeedback') ], - replaceConnectionBehavior: [ 'type', require('./ReplaceConnectionBehavior') ], - removeParticipantBehavior: [ 'type', require('./RemoveParticipantBehavior') ], - replaceElementBehaviour: [ 'type', require('./ReplaceElementBehaviour') ], - resizeLaneBehavior: [ 'type', require('./ResizeLaneBehavior') ], - removeElementBehavior: [ 'type', require('./RemoveElementBehavior') ], - toggleElementCollapseBehaviour : [ 'type', require('./ToggleElementCollapseBehaviour') ], - unclaimIdBehavior: [ 'type', require('./UnclaimIdBehavior') ], - updateFlowNodeRefsBehavior: [ 'type', require('./UpdateFlowNodeRefsBehavior') ], - unsetDefaultFlowBehavior: [ 'type', require('./UnsetDefaultFlowBehavior') ] + adaptiveLabelPositioningBehavior: [ 'type', AdaptiveLabelPositioningBehavior ], + appendBehavior: [ 'type', AppendBehavior ], + copyPasteBehavior: [ 'type', CopyPasteBehavior ], + createBoundaryEventBehavior: [ 'type', CreateBoundaryEventBehavior ], + createDataObjectBehavior: [ 'type', CreateDataObjectBehavior ], + createParticipantBehavior: [ 'type', CreateParticipantBehavior ], + dataInputAssociationBehavior: [ 'type', DataInputAssociationBehavior ], + deleteLaneBehavior: [ 'type', DeleteLaneBehavior ], + dropOnFlowBehavior: [ 'type', DropOnFlowBehavior ], + importDockingFix: [ 'type', ImportDockingFix ], + labelBehavior: [ 'type', LabelBehavior ], + modelingFeedback: [ 'type', ModelingFeedback ], + replaceConnectionBehavior: [ 'type', ReplaceConnectionBehavior ], + removeParticipantBehavior: [ 'type', RemoveParticipantBehavior ], + replaceElementBehaviour: [ 'type', ReplaceElementBehaviour ], + resizeLaneBehavior: [ 'type', ResizeLaneBehavior ], + removeElementBehavior: [ 'type', RemoveElementBehavior ], + toggleElementCollapseBehaviour : [ 'type', ToggleElementCollapseBehaviour ], + unclaimIdBehavior: [ 'type', UnclaimIdBehavior ], + updateFlowNodeRefsBehavior: [ 'type', UpdateFlowNodeRefsBehavior ], + unsetDefaultFlowBehavior: [ 'type', UnsetDefaultFlowBehavior ] }; diff --git a/lib/features/modeling/behavior/util/GeometricUtil.js b/lib/features/modeling/behavior/util/GeometricUtil.js index f281c1e9..db1dd2dc 100644 --- a/lib/features/modeling/behavior/util/GeometricUtil.js +++ b/lib/features/modeling/behavior/util/GeometricUtil.js @@ -6,11 +6,10 @@ * @param {Vector} * @return {Float} */ -function vectorLength(v) { +export function vectorLength(v) { return Math.sqrt(Math.pow(v.x, 2) + Math.pow(v.y, 2)); } -module.exports.vectorLength = vectorLength; /** * Calculates the angle between a line a the yAxis @@ -18,13 +17,12 @@ module.exports.vectorLength = vectorLength; * @param {Array} * @return {Float} */ -function getAngle(line) { +export function getAngle(line) { // return value is between 0, 180 and -180, -0 // @janstuemmel: maybe replace return a/b with b/a return Math.atan((line[1].y - line[0].y) / (line[1].x - line[0].x)); } -module.exports.getAngle = getAngle; /** * Rotates a vector by a given angle @@ -33,14 +31,13 @@ module.exports.getAngle = getAngle; * @param {Float} Angle in radians * @return {Vector} */ -function rotateVector(vector, angle) { +export function rotateVector(vector, angle) { return (!angle) ? vector : { x: Math.cos(angle) * vector.x - Math.sin(angle) * vector.y, y: Math.sin(angle) * vector.x + Math.cos(angle) * vector.y }; } -module.exports.rotateVector = rotateVector; /** * Solves a 2D equation system @@ -66,6 +63,7 @@ function solveLambaSystem(a, b, c) { return -n/l; } + /** * Position of perpendicular foot * @@ -73,7 +71,7 @@ function solveLambaSystem(a, b, c) { * @param [ {Point}, {Point} ] line defined throug two points * @return {Point} the perpendicular foot position */ -function perpendicularFoot(point, line) { +export function perpendicularFoot(point, line) { var a = line[0], b = line[1]; @@ -84,10 +82,8 @@ function perpendicularFoot(point, line) { var r = solveLambaSystem([ a.x, a.y ], [ bd.x, bd.y ], [ point.x, point.y ]); return { x: a.x + r*bd.x, y: a.y + r*bd.y }; - } -module.exports.perpendicularFoot = perpendicularFoot; /** * Calculates the distance between a point and a line @@ -96,7 +92,7 @@ module.exports.perpendicularFoot = perpendicularFoot; * @param [ {Point}, {Point} ] line defined throug two points * @return {Float} distance */ -function getDistancePointLine(point, line) { +export function getDistancePointLine(point, line) { var pfPoint = perpendicularFoot(point, line); @@ -109,7 +105,6 @@ function getDistancePointLine(point, line) { return vectorLength(connectionVector); } -module.exports.getDistancePointLine = getDistancePointLine; /** * Calculates the distance between two points @@ -118,12 +113,10 @@ module.exports.getDistancePointLine = getDistancePointLine; * @param {Point} * @return {Float} distance */ -function getDistancePointPoint(point1, point2) { +export function getDistancePointPoint(point1, point2) { return vectorLength({ x: point1.x - point2.x, y: point1.y - point2.y }); -} - -module.exports.getDistancePointPoint = getDistancePointPoint; +} \ No newline at end of file diff --git a/lib/features/modeling/behavior/util/LabelLayoutUtil.js b/lib/features/modeling/behavior/util/LabelLayoutUtil.js index 98a61a22..459c44b1 100644 --- a/lib/features/modeling/behavior/util/LabelLayoutUtil.js +++ b/lib/features/modeling/behavior/util/LabelLayoutUtil.js @@ -1,15 +1,21 @@ 'use strict'; -var getDistancePointPoint = require('./GeometricUtil').getDistancePointPoint, - rotateVector = require('./GeometricUtil').rotateVector, - getAngle = require('./GeometricUtil').getAngle; +import { + getDistancePointPoint, + rotateVector, + getAngle +} from './GeometricUtil'; -var getAttachment = require('./LineAttachmentUtil').getAttachment; +import { + getAttachment +} from './LineAttachmentUtil'; -var roundPoint = require('diagram-js/lib/layout/LayoutUtil').roundPoint; +import { + roundPoint +} from 'diagram-js/lib/layout/LayoutUtil'; -function findNewLabelLineStartIndex(oldWaypoints, newWaypoints, attachment, hints) { +export function findNewLabelLineStartIndex(oldWaypoints, newWaypoints, attachment, hints) { var index = attachment.segmentIndex; @@ -88,8 +94,6 @@ function findNewLabelLineStartIndex(oldWaypoints, newWaypoints, attachment, hint return null; } -module.exports.findNewLabelLineStartIndex = findNewLabelLineStartIndex; - /** * Calculate the required adjustment (move delta) for the given label @@ -102,7 +106,7 @@ module.exports.findNewLabelLineStartIndex = findNewLabelLineStartIndex; * * @return {Point} delta */ -function getLabelAdjustment(label, newWaypoints, oldWaypoints, hints) { +export function getLabelAdjustment(label, newWaypoints, oldWaypoints, hints) { var x = 0, y = 0; @@ -181,8 +185,6 @@ function getLabelAdjustment(label, newWaypoints, oldWaypoints, hints) { }); } -module.exports.getLabelAdjustment = getLabelAdjustment; - // HELPERS ////////////////////// diff --git a/lib/features/modeling/behavior/util/LineAttachmentUtil.js b/lib/features/modeling/behavior/util/LineAttachmentUtil.js index 34d86d17..5a5dbab4 100644 --- a/lib/features/modeling/behavior/util/LineAttachmentUtil.js +++ b/lib/features/modeling/behavior/util/LineAttachmentUtil.js @@ -54,7 +54,7 @@ function getDistance(p1, p2) { * * @return {Object} attachment */ -function getAttachment(point, line) { +export function getAttachment(point, line) { var idx = 0, segmentStart, @@ -123,8 +123,6 @@ function getAttachment(point, line) { return closestAttachment; } -module.exports.getAttachment = getAttachment; - /** * Gets the intersection between a circle and a line segment. * diff --git a/lib/features/modeling/behavior/util/LineIntersect.js b/lib/features/modeling/behavior/util/LineIntersect.js index 47af27a9..b9bfbd12 100644 --- a/lib/features/modeling/behavior/util/LineIntersect.js +++ b/lib/features/modeling/behavior/util/LineIntersect.js @@ -10,7 +10,7 @@ * * @return {Point} */ -module.exports = function lineIntersect(l1s, l1e, l2s, l2e) { +export default function lineIntersect(l1s, l1e, l2s, l2e) { // if the lines intersect, the result contains the x and y of the // intersection (treating the lines as infinite) and booleans for // whether line segment 1 or line segment 2 contain the point @@ -34,4 +34,4 @@ module.exports = function lineIntersect(l1s, l1e, l2s, l2e) { x: Math.round(l1s.x + (c * (l1e.x - l1s.x))), y: Math.round(l1s.y + (c * (l1e.y - l1s.y))) }; -}; \ No newline at end of file +} \ No newline at end of file diff --git a/lib/features/modeling/cmd/AddLaneHandler.js b/lib/features/modeling/cmd/AddLaneHandler.js index 365a10a6..97c22fdd 100644 --- a/lib/features/modeling/cmd/AddLaneHandler.js +++ b/lib/features/modeling/cmd/AddLaneHandler.js @@ -1,12 +1,19 @@ 'use strict'; -var filter = require('min-dash').filter; +import { + filter +} from 'min-dash'; -var Elements = require('diagram-js/lib/util/Elements'); +import { + eachElement +} from 'diagram-js/lib/util/Elements'; + +import { + getLanesRoot, + getChildLanes, + LANE_INDENTATION +} from '../util/LaneUtil'; -var getLanesRoot = require('../util/LaneUtil').getLanesRoot, - getChildLanes = require('../util/LaneUtil').getChildLanes, - LANE_INDENTATION = require('../util/LaneUtil').LANE_INDENTATION; /** * A handler that allows us to add a new lane @@ -14,14 +21,15 @@ var getLanesRoot = require('../util/LaneUtil').getLanesRoot, * * @param {Modeling} modeling */ -function AddLaneHandler(modeling, spaceTool) { +export default function AddLaneHandler(modeling, spaceTool) { this._modeling = modeling; this._spaceTool = spaceTool; } -AddLaneHandler.$inject = [ 'modeling', 'spaceTool' ]; - -module.exports = AddLaneHandler; +AddLaneHandler.$inject = [ + 'modeling', + 'spaceTool' +]; AddLaneHandler.prototype.preExecute = function(context) { @@ -52,7 +60,7 @@ AddLaneHandler.prototype.preExecute = function(context) { // (1) collect affected elements to create necessary space var allAffected = []; - Elements.eachElement(lanesRoot, function(element) { + eachElement(lanesRoot, function(element) { allAffected.push(element); if (element === shape) { diff --git a/lib/features/modeling/cmd/IdClaimHandler.js b/lib/features/modeling/cmd/IdClaimHandler.js index 60a00df8..88748b00 100644 --- a/lib/features/modeling/cmd/IdClaimHandler.js +++ b/lib/features/modeling/cmd/IdClaimHandler.js @@ -1,14 +1,11 @@ 'use strict'; - -function IdClaimHandler(moddle) { +export default function IdClaimHandler(moddle) { this._moddle = moddle; } IdClaimHandler.$inject = [ 'moddle' ]; -module.exports = IdClaimHandler; - IdClaimHandler.prototype.execute = function(context) { var ids = this._moddle.ids, diff --git a/lib/features/modeling/cmd/ResizeLaneHandler.js b/lib/features/modeling/cmd/ResizeLaneHandler.js index 329954e1..f4f395a9 100644 --- a/lib/features/modeling/cmd/ResizeLaneHandler.js +++ b/lib/features/modeling/cmd/ResizeLaneHandler.js @@ -1,14 +1,23 @@ 'use strict'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; -var getLanesRoot = require('../util/LaneUtil').getLanesRoot, - computeLanesResize = require('../util/LaneUtil').computeLanesResize; +import { + getLanesRoot, + computeLanesResize +} from '../util/LaneUtil'; -var eachElement = require('diagram-js/lib/util/Elements').eachElement; +import { + eachElement +} from 'diagram-js/lib/util/Elements'; -var asTRBL = require('diagram-js/lib/layout/LayoutUtil').asTRBL, - substractTRBL = require('diagram-js/lib/features/resize/ResizeUtil').substractTRBL; +import { + asTRBL +} from 'diagram-js/lib/layout/LayoutUtil'; + +import { + substractTRBL +} from 'diagram-js/lib/features/resize/ResizeUtil'; /** @@ -16,14 +25,15 @@ var asTRBL = require('diagram-js/lib/layout/LayoutUtil').asTRBL, * * @param {Modeling} modeling */ -function ResizeLaneHandler(modeling, spaceTool) { +export default function ResizeLaneHandler(modeling, spaceTool) { this._modeling = modeling; this._spaceTool = spaceTool; } -ResizeLaneHandler.$inject = [ 'modeling', 'spaceTool' ]; - -module.exports = ResizeLaneHandler; +ResizeLaneHandler.$inject = [ + 'modeling', + 'spaceTool' +]; ResizeLaneHandler.prototype.preExecute = function(context) { diff --git a/lib/features/modeling/cmd/SetColorHandler.js b/lib/features/modeling/cmd/SetColorHandler.js index 02fce12a..641aa96c 100644 --- a/lib/features/modeling/cmd/SetColorHandler.js +++ b/lib/features/modeling/cmd/SetColorHandler.js @@ -1,7 +1,10 @@ 'use strict'; -var assign = require('min-dash').assign, - forEach = require('min-dash').forEach; +import { + assign, + forEach +} from 'min-dash'; + var DEFAULT_COLORS = { fill: undefined, @@ -9,7 +12,7 @@ var DEFAULT_COLORS = { }; -function SetColorHandler(commandStack) { +export default function SetColorHandler(commandStack) { this._commandStack = commandStack; } @@ -17,7 +20,6 @@ SetColorHandler.$inject = [ 'commandStack' ]; -module.exports = SetColorHandler; SetColorHandler.prototype.postExecute = function(context) { var elements = context.elements, diff --git a/lib/features/modeling/cmd/SplitLaneHandler.js b/lib/features/modeling/cmd/SplitLaneHandler.js index fa35ce33..98cf2fe9 100644 --- a/lib/features/modeling/cmd/SplitLaneHandler.js +++ b/lib/features/modeling/cmd/SplitLaneHandler.js @@ -1,8 +1,10 @@ 'use strict'; -var getChildLanes = require('../util/LaneUtil').getChildLanes; +import { + getChildLanes, + LANE_INDENTATION +} from '../util/LaneUtil'; -var LANE_INDENTATION = require('../util/LaneUtil').LANE_INDENTATION; /** * A handler that splits a lane into a number of sub-lanes, @@ -10,14 +12,15 @@ var LANE_INDENTATION = require('../util/LaneUtil').LANE_INDENTATION; * * @param {Modeling} modeling */ -function SplitLaneHandler(modeling, translate) { +export default function SplitLaneHandler(modeling, translate) { this._modeling = modeling; this._translate = translate; } -SplitLaneHandler.$inject = [ 'modeling', 'translate']; - -module.exports = SplitLaneHandler; +SplitLaneHandler.$inject = [ + 'modeling', + 'translate' +]; SplitLaneHandler.prototype.preExecute = function(context) { diff --git a/lib/features/modeling/cmd/UpdateCanvasRootHandler.js b/lib/features/modeling/cmd/UpdateCanvasRootHandler.js index f79240e4..8fb0f2b2 100644 --- a/lib/features/modeling/cmd/UpdateCanvasRootHandler.js +++ b/lib/features/modeling/cmd/UpdateCanvasRootHandler.js @@ -1,16 +1,20 @@ 'use strict'; -var Collections = require('diagram-js/lib/util/Collections'); +import { + add as collectionAdd, + remove as collectionRemove +} from 'diagram-js/lib/util/Collections'; -function UpdateCanvasRootHandler(canvas, modeling) { +export default function UpdateCanvasRootHandler(canvas, modeling) { this._canvas = canvas; this._modeling = modeling; } -UpdateCanvasRootHandler.$inject = [ 'canvas', 'modeling' ]; - -module.exports = UpdateCanvasRootHandler; +UpdateCanvasRootHandler.$inject = [ + 'canvas', + 'modeling' +]; UpdateCanvasRootHandler.prototype.execute = function(context) { @@ -28,10 +32,10 @@ UpdateCanvasRootHandler.prototype.execute = function(context) { canvas.setRootElement(newRoot, true); // (2) update root elements - Collections.add(bpmnDefinitions.rootElements, newRootBusinessObject); + collectionAdd(bpmnDefinitions.rootElements, newRootBusinessObject); newRootBusinessObject.$parent = bpmnDefinitions; - Collections.remove(bpmnDefinitions.rootElements, oldRootBusinessObject); + collectionRemove(bpmnDefinitions.rootElements, oldRootBusinessObject); oldRootBusinessObject.$parent = null; // (3) wire di @@ -62,10 +66,10 @@ UpdateCanvasRootHandler.prototype.revert = function(context) { canvas.setRootElement(oldRoot, true); // (2) update root elements - Collections.remove(bpmnDefinitions.rootElements, newRootBusinessObject); + collectionRemove(bpmnDefinitions.rootElements, newRootBusinessObject); newRootBusinessObject.$parent = null; - Collections.add(bpmnDefinitions.rootElements, oldRootBusinessObject); + collectionAdd(bpmnDefinitions.rootElements, oldRootBusinessObject); oldRootBusinessObject.$parent = bpmnDefinitions; // (3) wire di diff --git a/lib/features/modeling/cmd/UpdateFlowNodeRefsHandler.js b/lib/features/modeling/cmd/UpdateFlowNodeRefsHandler.js index 8859cb22..025f3a8f 100644 --- a/lib/features/modeling/cmd/UpdateFlowNodeRefsHandler.js +++ b/lib/features/modeling/cmd/UpdateFlowNodeRefsHandler.js @@ -1,28 +1,37 @@ 'use strict'; -var collectLanes = require('../util/LaneUtil').collectLanes; +import { + collectLanes, + getLanesRoot +} from '../util/LaneUtil'; -var getLanesRoot = require('../util/LaneUtil').getLanesRoot; +import { + is +} from '../../../util/ModelUtil'; -var is = require('../../../util/ModelUtil').is; +import { + add as collectionAdd, + remove as collectionRemove +} from 'diagram-js/lib/util/Collections'; -var Collections = require('diagram-js/lib/util/Collections'); - -var asTRBL = require('diagram-js/lib/layout/LayoutUtil').asTRBL; +import { + asTRBL +} from 'diagram-js/lib/layout/LayoutUtil'; var FLOW_NODE_REFS_ATTR = 'flowNodeRef', LANES_ATTR = 'lanes'; + /** * A handler that updates lane refs on changed elements */ -function UpdateFlowNodeRefsHandler(elementRegistry) { +export default function UpdateFlowNodeRefsHandler(elementRegistry) { this._elementRegistry = elementRegistry; } -UpdateFlowNodeRefsHandler.$inject = [ 'elementRegistry' ]; - -module.exports = UpdateFlowNodeRefsHandler; +UpdateFlowNodeRefsHandler.$inject = [ + 'elementRegistry' +]; UpdateFlowNodeRefsHandler.prototype.computeUpdates = function(flowNodeShapes, laneShapes) { @@ -143,14 +152,14 @@ UpdateFlowNodeRefsHandler.prototype.execute = function(context) { // unwire old update.remove.forEach(function(oldLane) { - Collections.remove(lanes, oldLane); - Collections.remove(oldLane.get(FLOW_NODE_REFS_ATTR), flowNode); + collectionRemove(lanes, oldLane); + collectionRemove(oldLane.get(FLOW_NODE_REFS_ATTR), flowNode); }); // wire new update.add.forEach(function(newLane) { - Collections.add(lanes, newLane); - Collections.add(newLane.get(FLOW_NODE_REFS_ATTR), flowNode); + collectionAdd(lanes, newLane); + collectionAdd(newLane.get(FLOW_NODE_REFS_ATTR), flowNode); }); }); @@ -170,14 +179,14 @@ UpdateFlowNodeRefsHandler.prototype.revert = function(context) { // unwire new update.add.forEach(function(newLane) { - Collections.remove(lanes, newLane); - Collections.remove(newLane.get(FLOW_NODE_REFS_ATTR), flowNode); + collectionRemove(lanes, newLane); + collectionRemove(newLane.get(FLOW_NODE_REFS_ATTR), flowNode); }); // wire old update.remove.forEach(function(oldLane) { - Collections.add(lanes, oldLane); - Collections.add(oldLane.get(FLOW_NODE_REFS_ATTR), flowNode); + collectionAdd(lanes, oldLane); + collectionAdd(oldLane.get(FLOW_NODE_REFS_ATTR), flowNode); }); }); diff --git a/lib/features/modeling/cmd/UpdatePropertiesHandler.js b/lib/features/modeling/cmd/UpdatePropertiesHandler.js index 7fac0edf..ac4d46bc 100644 --- a/lib/features/modeling/cmd/UpdatePropertiesHandler.js +++ b/lib/features/modeling/cmd/UpdatePropertiesHandler.js @@ -1,13 +1,17 @@ 'use strict'; -var reduce = require('min-dash').reduce, - keys = require('min-dash').keys, - forEach = require('min-dash').forEach, - assign = require('min-dash').assign; +import { + reduce, + keys, + forEach, + assign +} from 'min-dash'; -var getBusinessObject = require('../../../util/ModelUtil').getBusinessObject; +import { + getBusinessObject +} from '../../../util/ModelUtil'; -var TextUtil = require('diagram-js/lib/util/Text'); +import TextUtil from 'diagram-js/lib/util/Text'; var DEFAULT_FLOW = 'default', NAME = 'name', @@ -28,7 +32,7 @@ var NULL_DIMENSIONS = { * Use respective diagram-js provided handlers if you would * like to perform automated modeling. */ -function UpdatePropertiesHandler(elementRegistry, moddle, translate, modeling) { +export default function UpdatePropertiesHandler(elementRegistry, moddle, translate, modeling) { this._elementRegistry = elementRegistry; this._moddle = moddle; this._translate = translate; @@ -37,9 +41,12 @@ function UpdatePropertiesHandler(elementRegistry, moddle, translate, modeling) { this._textUtil = new TextUtil(); } -UpdatePropertiesHandler.$inject = [ 'elementRegistry', 'moddle', 'translate', 'modeling' ]; - -module.exports = UpdatePropertiesHandler; +UpdatePropertiesHandler.$inject = [ + 'elementRegistry', + 'moddle', + 'translate', + 'modeling' +]; // api ////////////////////// diff --git a/lib/features/modeling/index.js b/lib/features/modeling/index.js index 48c04662..6bd5d18d 100644 --- a/lib/features/modeling/index.js +++ b/lib/features/modeling/index.js @@ -1,22 +1,46 @@ -module.exports = { - __init__: [ 'modeling', 'bpmnUpdater' ], - __depends__: [ - require('./behavior'), - require('../rules'), - require('../ordering'), - require('../replace'), - require('diagram-js/lib/command'), - require('diagram-js/lib/features/tooltips'), - require('diagram-js/lib/features/label-support'), - require('diagram-js/lib/features/attach-support'), - require('diagram-js/lib/features/selection'), - require('diagram-js/lib/features/change-support'), - require('diagram-js/lib/features/space-tool') +import BehaviorModule from './behavior'; +import RulesModule from '../rules'; +import OrderingModule from '../ordering'; +import ReplaceModule from '../replace'; + +import CommandModule from 'diagram-js/lib/command'; +import TooltipsModule from 'diagram-js/lib/features/tooltips'; +import LabelSupportModule from 'diagram-js/lib/features/label-support'; +import AttachSupportModule from 'diagram-js/lib/features/attach-support'; +import SelectionModule from 'diagram-js/lib/features/selection'; +import ChangeSupportModule from 'diagram-js/lib/features/change-support'; +import SpaceToolModule from 'diagram-js/lib/features/space-tool'; + +import BpmnFactory from './BpmnFactory'; +import BpmnUpdater from './BpmnUpdater'; +import ElementFactory from './ElementFactory'; +import Modeling from './Modeling'; +import BpmnLayouter from './BpmnLayouter'; +import CroppingConnectionDocking from 'diagram-js/lib/layout/CroppingConnectionDocking'; + + +export default { + __init__: [ + 'modeling', + 'bpmnUpdater' ], - bpmnFactory: [ 'type', require('./BpmnFactory') ], - bpmnUpdater: [ 'type', require('./BpmnUpdater') ], - elementFactory: [ 'type', require('./ElementFactory') ], - modeling: [ 'type', require('./Modeling') ], - layouter: [ 'type', require('./BpmnLayouter') ], - connectionDocking: [ 'type', require('diagram-js/lib/layout/CroppingConnectionDocking') ] -}; + __depends__: [ + BehaviorModule, + RulesModule, + OrderingModule, + ReplaceModule, + CommandModule, + TooltipsModule, + LabelSupportModule, + AttachSupportModule, + SelectionModule, + ChangeSupportModule, + SpaceToolModule + ], + bpmnFactory: [ 'type', BpmnFactory ], + bpmnUpdater: [ 'type', BpmnUpdater ], + elementFactory: [ 'type', ElementFactory ], + modeling: [ 'type', Modeling ], + layouter: [ 'type', BpmnLayouter ], + connectionDocking: [ 'type', CroppingConnectionDocking ] +}; \ No newline at end of file diff --git a/lib/features/modeling/util/LaneUtil.js b/lib/features/modeling/util/LaneUtil.js index f8f555a2..25ba01e6 100644 --- a/lib/features/modeling/util/LaneUtil.js +++ b/lib/features/modeling/util/LaneUtil.js @@ -1,12 +1,19 @@ 'use strict'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; -var getParent = require('./ModelingUtil').getParent; +import { + getParent +} from './ModelingUtil'; -var asTRBL = require('diagram-js/lib/layout/LayoutUtil').asTRBL, - substractTRBL = require('diagram-js/lib/features/resize/ResizeUtil').substractTRBL, - resizeTRBL = require('diagram-js/lib/features/resize/ResizeUtil').resizeTRBL; +import { + asTRBL +} from 'diagram-js/lib/layout/LayoutUtil'; + +import { + substractTRBL, + resizeTRBL +} from 'diagram-js/lib/features/resize/ResizeUtil'; var abs = Math.abs; @@ -22,9 +29,7 @@ var LANE_PARENTS = [ 'bpmn:SubProcess' ]; -var LANE_INDENTATION = 30; - -module.exports.LANE_INDENTATION = LANE_INDENTATION; +export var LANE_INDENTATION = 30; /** @@ -35,7 +40,7 @@ module.exports.LANE_INDENTATION = LANE_INDENTATION; * * @return {Array} */ -function collectLanes(shape, collectedShapes) { +export function collectLanes(shape, collectedShapes) { collectedShapes = collectedShapes || []; @@ -50,7 +55,6 @@ function collectLanes(shape, collectedShapes) { return collectedShapes; } -module.exports.collectLanes = collectLanes; /** * Return the lane children of the given element. @@ -59,13 +63,12 @@ module.exports.collectLanes = collectLanes; * * @return {Array} */ -function getChildLanes(shape) { +export function getChildLanes(shape) { return shape.children.filter(function(c) { return is(c, 'bpmn:Lane'); }); } -module.exports.getChildLanes = getChildLanes; /** * Return the root element containing the given lane shape @@ -74,12 +77,10 @@ module.exports.getChildLanes = getChildLanes; * * @return {djs.model.Shape} */ -function getLanesRoot(shape) { +export function getLanesRoot(shape) { return getParent(shape, LANE_PARENTS) || shape; } -module.exports.getLanesRoot = getLanesRoot; - /** * Compute the required resize operations for lanes @@ -91,7 +92,7 @@ module.exports.getLanesRoot = getLanesRoot; * * @return {Array} */ -function computeLanesResize(shape, newBounds) { +export function computeLanesResize(shape, newBounds) { var rootElement = getLanesRoot(shape); @@ -152,6 +153,4 @@ function computeLanesResize(shape, newBounds) { }); return resizeNeeded; -} - -module.exports.computeLanesResize = computeLanesResize; +} \ No newline at end of file diff --git a/lib/features/modeling/util/ModelingUtil.js b/lib/features/modeling/util/ModelingUtil.js index 1d2706c7..a9d8b8af 100644 --- a/lib/features/modeling/util/ModelingUtil.js +++ b/lib/features/modeling/util/ModelingUtil.js @@ -1,8 +1,10 @@ 'use strict'; -var some = require('min-dash').some; +import { + some +} from 'min-dash'; -var is = require('../../../util/ModelUtil').is; +import { is } from '../../../util/ModelUtil'; /** @@ -13,14 +15,12 @@ var is = require('../../../util/ModelUtil').is; * * @return {Boolean} */ -function isAny(element, types) { +export function isAny(element, types) { return some(types, function(t) { return is(element, t); }); } -module.exports.isAny = isAny; - /** * Return the parent of the element with any of the given types. @@ -30,7 +30,7 @@ module.exports.isAny = isAny; * * @return {djs.model.Base} */ -function getParent(element, anyType) { +export function getParent(element, anyType) { if (typeof anyType === 'string') { anyType = [ anyType ]; @@ -43,6 +43,4 @@ function getParent(element, anyType) { } return null; -} - -module.exports.getParent = getParent; +} \ No newline at end of file diff --git a/lib/features/ordering/BpmnOrderingProvider.js b/lib/features/ordering/BpmnOrderingProvider.js index f745bd79..094f912c 100644 --- a/lib/features/ordering/BpmnOrderingProvider.js +++ b/lib/features/ordering/BpmnOrderingProvider.js @@ -1,14 +1,17 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var OrderingProvider = require('diagram-js/lib/features/ordering/OrderingProvider'); +import OrderingProvider from 'diagram-js/lib/features/ordering/OrderingProvider'; -var isAny = require('../modeling/util/ModelingUtil').isAny; +import { + isAny +} from '../modeling/util/ModelingUtil'; -var findIndex = require('min-dash').findIndex; - -var find = require('min-dash').find; +import { + findIndex, + find +} from 'min-dash'; /** @@ -17,7 +20,7 @@ var find = require('min-dash').find; * (1) elements are ordered by a {level} property * (2) elements with {alwaysOnTop} are always added to the root */ -function BpmnOrderingProvider(eventBus, translate) { +export default function BpmnOrderingProvider(eventBus, translate) { OrderingProvider.call(this, eventBus); @@ -157,6 +160,4 @@ function BpmnOrderingProvider(eventBus, translate) { BpmnOrderingProvider.$inject = [ 'eventBus', 'translate' ]; -inherits(BpmnOrderingProvider, OrderingProvider); - -module.exports = BpmnOrderingProvider; +inherits(BpmnOrderingProvider, OrderingProvider); \ No newline at end of file diff --git a/lib/features/ordering/index.js b/lib/features/ordering/index.js index f1c7a739..079c8f73 100644 --- a/lib/features/ordering/index.js +++ b/lib/features/ordering/index.js @@ -1,7 +1,11 @@ -module.exports = { - __init__: [ 'bpmnOrderingProvider' ], +import translate from 'diagram-js/lib/i18n/translate'; + +import BpmnOrderingProvider from './BpmnOrderingProvider'; + +export default { __depends__: [ - require('diagram-js/lib/i18n/translate') + translate ], - bpmnOrderingProvider: [ 'type', require('./BpmnOrderingProvider') ] + __init__: [ 'bpmnOrderingProvider' ], + bpmnOrderingProvider: [ 'type', BpmnOrderingProvider ] }; \ No newline at end of file diff --git a/lib/features/palette/PaletteProvider.js b/lib/features/palette/PaletteProvider.js index ccf1347c..089c746e 100644 --- a/lib/features/palette/PaletteProvider.js +++ b/lib/features/palette/PaletteProvider.js @@ -1,11 +1,14 @@ 'use strict'; -var assign = require('min-dash').assign; +import { + assign +} from 'min-dash'; + /** * A palette provider for BPMN 2.0 elements. */ -function PaletteProvider( +export default function PaletteProvider( palette, create, elementFactory, spaceTool, lassoTool, handTool, globalConnect, translate) { @@ -22,8 +25,6 @@ function PaletteProvider( palette.registerProvider(this); } -module.exports = PaletteProvider; - PaletteProvider.$inject = [ 'palette', 'create', diff --git a/lib/features/palette/index.js b/lib/features/palette/index.js index 4fdeeb8d..01e4271f 100644 --- a/lib/features/palette/index.js +++ b/lib/features/palette/index.js @@ -1,13 +1,24 @@ -module.exports = { +import PaletteModule from 'diagram-js/lib/features/palette'; +import CreateModule from 'diagram-js/lib/features/create'; +import SpaceToolModule from 'diagram-js/lib/features/space-tool'; +import LassoToolModule from 'diagram-js/lib/features/lasso-tool'; +import HandToolModule from 'diagram-js/lib/features/hand-tool'; +import translate from 'diagram-js/lib/i18n/translate'; + +import GlobalConnectModule from '../global-connect'; + +import PaletteProvider from './PaletteProvider'; + +export default { __depends__: [ - require('diagram-js/lib/features/palette'), - require('diagram-js/lib/features/create'), - require('diagram-js/lib/features/space-tool'), - require('diagram-js/lib/features/lasso-tool'), - require('diagram-js/lib/features/hand-tool'), - require('diagram-js/lib/i18n/translate'), - require('../global-connect') + PaletteModule, + CreateModule, + SpaceToolModule, + LassoToolModule, + HandToolModule, + translate, + GlobalConnectModule ], __init__: [ 'paletteProvider' ], - paletteProvider: [ 'type', require('./PaletteProvider') ] + paletteProvider: [ 'type', PaletteProvider ] }; diff --git a/lib/features/popup-menu/ReplaceMenuProvider.js b/lib/features/popup-menu/ReplaceMenuProvider.js index 019f8add..921d5c79 100644 --- a/lib/features/popup-menu/ReplaceMenuProvider.js +++ b/lib/features/popup-menu/ReplaceMenuProvider.js @@ -1,21 +1,31 @@ 'use strict'; -var is = require('../../util/ModelUtil').is, - isEventSubProcess = require('../../util/DiUtil').isEventSubProcess, - getBusinessObject = require('../../util/ModelUtil').getBusinessObject, - isExpanded = require('../../util/DiUtil').isExpanded, - isDifferentType = require('./util/TypeUtil').isDifferentType; +import { + getBusinessObject, + is +} from '../../util/ModelUtil'; -var forEach = require('min-dash').forEach, - filter = require('min-dash').filter; +import { + isEventSubProcess, + isExpanded +} from '../../util/DiUtil'; -var replaceOptions = require ('../replace/ReplaceOptions'); +import { + isDifferentType +} from './util/TypeUtil'; + +import { + forEach, + filter +} from 'min-dash'; + +import * as replaceOptions from '../replace/ReplaceOptions'; /** * This module is an element agnostic replace menu provider for the popup menu. */ -function ReplaceMenuProvider( +export default function ReplaceMenuProvider( popupMenu, modeling, moddle, bpmnReplace, rules, translate) { @@ -483,5 +493,3 @@ ReplaceMenuProvider.prototype._getAdHocEntry = function(element) { return adHocEntry; }; - -module.exports = ReplaceMenuProvider; diff --git a/lib/features/popup-menu/index.js b/lib/features/popup-menu/index.js index eaaa4bfa..decb9b5c 100644 --- a/lib/features/popup-menu/index.js +++ b/lib/features/popup-menu/index.js @@ -1,8 +1,14 @@ -module.exports = { +import PopupMenuModule from 'diagram-js/lib/features/popup-menu'; +import ReplaceModule from '../replace'; + +import ReplaceMenuProvider from './ReplaceMenuProvider'; + + +export default { __depends__: [ - require('diagram-js/lib/features/popup-menu'), - require('../replace') + PopupMenuModule, + ReplaceModule ], __init__: [ 'replaceMenuProvider' ], - replaceMenuProvider: [ 'type', require('./ReplaceMenuProvider') ] + replaceMenuProvider: [ 'type', ReplaceMenuProvider ] }; \ No newline at end of file diff --git a/lib/features/popup-menu/util/TypeUtil.js b/lib/features/popup-menu/util/TypeUtil.js index b6e257b5..865a964a 100644 --- a/lib/features/popup-menu/util/TypeUtil.js +++ b/lib/features/popup-menu/util/TypeUtil.js @@ -1,7 +1,13 @@ 'use strict'; -var getBusinessObject = require('../../../util/ModelUtil').getBusinessObject; -var isExpanded = require('../../../util/DiUtil').isExpanded; +import { + getBusinessObject +} from '../../../util/ModelUtil'; + +import { + isExpanded +} from '../../../util/DiUtil'; + /** * Returns true, if an element is from a different type @@ -12,7 +18,7 @@ var isExpanded = require('../../../util/DiUtil').isExpanded; * * @return {Boolean} */ -function isDifferentType(element) { +export function isDifferentType(element) { return function(entry) { var target = entry.target; @@ -37,6 +43,4 @@ function isDifferentType(element) { return !isTypeEqual || !isEventDefinitionEqual || !isTriggeredByEventEqual || !isExpandedEqual; }; -} - -module.exports.isDifferentType = isDifferentType; \ No newline at end of file +} \ No newline at end of file diff --git a/lib/features/replace-preview/BpmnReplacePreview.js b/lib/features/replace-preview/BpmnReplacePreview.js index 56f529b6..7a8e8d33 100644 --- a/lib/features/replace-preview/BpmnReplacePreview.js +++ b/lib/features/replace-preview/BpmnReplacePreview.js @@ -1,19 +1,28 @@ 'use strict'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var assign = require('min-dash').assign, - forEach = require('min-dash').forEach; +import { + assign, + forEach +} from 'min-dash'; -var domQuery = require('min-dom').query; +import { + query as domQuery +} from 'min-dom'; -var svgAttr = require('tiny-svg').attr; +import { + attr as svgAttr +} from 'tiny-svg'; var LOW_PRIORITY = 250; -function BpmnReplacePreview(eventBus, elementRegistry, elementFactory, canvas, previewSupport) { + +export default function BpmnReplacePreview( + eventBus, elementRegistry, elementFactory, + canvas, previewSupport) { CommandInterceptor.call(this, eventBus); @@ -106,8 +115,12 @@ function BpmnReplacePreview(eventBus, elementRegistry, elementFactory, canvas, p }); } -BpmnReplacePreview.$inject = [ 'eventBus', 'elementRegistry', 'elementFactory', 'canvas', 'previewSupport' ]; +BpmnReplacePreview.$inject = [ + 'eventBus', + 'elementRegistry', + 'elementFactory', + 'canvas', + 'previewSupport' +]; -inherits(BpmnReplacePreview, CommandInterceptor); - -module.exports = BpmnReplacePreview; +inherits(BpmnReplacePreview, CommandInterceptor); \ No newline at end of file diff --git a/lib/features/replace-preview/index.js b/lib/features/replace-preview/index.js index 492e19f0..02a75a15 100644 --- a/lib/features/replace-preview/index.js +++ b/lib/features/replace-preview/index.js @@ -1,5 +1,11 @@ -module.exports = { - __depends__: [ require('diagram-js/lib/features/preview-support') ], +import PreviewSupportModule from 'diagram-js/lib/features/preview-support'; + +import BpmnReplacePreview from './BpmnReplacePreview'; + +export default { + __depends__: [ + PreviewSupportModule + ], __init__: [ 'bpmnReplacePreview' ], - bpmnReplacePreview: [ 'type', require('./BpmnReplacePreview') ] + bpmnReplacePreview: [ 'type', BpmnReplacePreview ] }; diff --git a/lib/features/replace/BpmnReplace.js b/lib/features/replace/BpmnReplace.js index 3e47ad86..21c08675 100644 --- a/lib/features/replace/BpmnReplace.js +++ b/lib/features/replace/BpmnReplace.js @@ -1,22 +1,33 @@ 'use strict'; -var pick = require('min-dash').pick, - assign = require('min-dash').assign, - uniqueBy = require('min-dash').uniqueBy, - findIndex = require('min-dash').findIndex, - filter = require('min-dash').filter, - has = require('min-dash').has; +import { + pick, + assign, + uniqueBy, + findIndex, + filter, + has +} from 'min-dash'; -var is = require('../../util/ModelUtil').is, - isAny = require('../modeling/util/ModelingUtil').isAny, - isExpanded = require('../../util/DiUtil').isExpanded, - isEventSubProcess = require('../../util/DiUtil').isEventSubProcess, - ModelCloneUtils = require('../../util/model/ModelCloneUtils'), - getProperties = ModelCloneUtils.getProperties; +import { + is, +} from '../../util/ModelUtil'; -var IGNORED_PROPERTIES = ModelCloneUtils.IGNORED_PROPERTIES; +import { + isAny +} from '../modeling/util/ModelingUtil'; -var ModelCloneHelper = require('../../util/model/ModelCloneHelper'); +import { + isExpanded, + isEventSubProcess +} from '../../util/DiUtil'; + +import { + getProperties, + IGNORED_PROPERTIES +} from '../../util/model/ModelCloneUtils'; + +import ModelCloneHelper from '../../util/model/ModelCloneHelper'; var CUSTOM_PROPERTIES = [ 'cancelActivity', @@ -58,7 +69,9 @@ function toggeling(element, target) { /** * This module takes care of replacing BPMN elements */ -function BpmnReplace(bpmnFactory, replace, selection, modeling, eventBus) { +export default function BpmnReplace( + bpmnFactory, replace, selection, + modeling, eventBus) { var helper = new ModelCloneHelper(eventBus, bpmnFactory); @@ -218,8 +231,6 @@ BpmnReplace.$inject = [ 'eventBus' ]; -module.exports = BpmnReplace; - function isSubProcess(bo) { return is(bo, 'bpmn:SubProcess'); diff --git a/lib/features/replace/ReplaceOptions.js b/lib/features/replace/ReplaceOptions.js index 5d7c3ac5..e85cef40 100644 --- a/lib/features/replace/ReplaceOptions.js +++ b/lib/features/replace/ReplaceOptions.js @@ -1,6 +1,6 @@ 'use strict'; -module.exports.START_EVENT = [ +export var START_EVENT = [ { label: 'Start Event', actionName: 'replace-with-none-start', @@ -63,7 +63,7 @@ module.exports.START_EVENT = [ } ]; -module.exports.INTERMEDIATE_EVENT = [ +export var INTERMEDIATE_EVENT = [ { label: 'Start Event', actionName: 'replace-with-none-start', @@ -180,7 +180,7 @@ module.exports.INTERMEDIATE_EVENT = [ } ]; -module.exports.END_EVENT = [ +export var END_EVENT = [ { label: 'Start Event', actionName: 'replace-with-none-start', @@ -270,7 +270,7 @@ module.exports.END_EVENT = [ } ]; -module.exports.GATEWAY = [ +export var GATEWAY = [ { label: 'Exclusive Gateway', actionName: 'replace-with-exclusive-gateway', @@ -338,7 +338,7 @@ module.exports.GATEWAY = [ // } ]; -module.exports.SUBPROCESS_EXPANDED = [ +export var SUBPROCESS_EXPANDED = [ { label: 'Transaction', actionName: 'replace-with-transaction', @@ -369,7 +369,7 @@ module.exports.SUBPROCESS_EXPANDED = [ } ]; -module.exports.TRANSACTION = [ +export var TRANSACTION = [ { label: 'Sub Process', actionName: 'replace-with-subprocess', @@ -391,7 +391,7 @@ module.exports.TRANSACTION = [ } ]; -module.exports.EVENT_SUB_PROCESS = [ +export var EVENT_SUB_PROCESS = [ { label: 'Sub Process', actionName: 'replace-with-subprocess', @@ -412,7 +412,7 @@ module.exports.EVENT_SUB_PROCESS = [ } ]; -module.exports.TASK = [ +export var TASK = [ { label: 'Task', actionName: 'replace-with-task', @@ -505,7 +505,7 @@ module.exports.TASK = [ } ]; -module.exports.BOUNDARY_EVENT = [ +export var BOUNDARY_EVENT = [ { label: 'Message Boundary Event', actionName: 'replace-with-message-boundary', @@ -630,7 +630,7 @@ module.exports.BOUNDARY_EVENT = [ } ]; -module.exports.EVENT_SUB_PROCESS_START_EVENT = [ +export var EVENT_SUB_PROCESS_START_EVENT = [ { label: 'Message Start Event', actionName: 'replace-with-message-start', @@ -746,7 +746,7 @@ module.exports.EVENT_SUB_PROCESS_START_EVENT = [ } ]; -module.exports.SEQUENCE_FLOW = [ +export var SEQUENCE_FLOW = [ { label: 'Sequence Flow', actionName: 'replace-with-sequence-flow', @@ -764,7 +764,7 @@ module.exports.SEQUENCE_FLOW = [ } ]; -module.exports.PARTICIPANT = [ +export var PARTICIPANT = [ { label: 'Expanded Pool', actionName: 'replace-with-expanded-pool', diff --git a/lib/features/replace/index.js b/lib/features/replace/index.js index 8b488a27..b8cb5509 100644 --- a/lib/features/replace/index.js +++ b/lib/features/replace/index.js @@ -1,7 +1,12 @@ -module.exports = { +import SelectionModule from 'diagram-js/lib/features/selection'; +import ReplaceModule from 'diagram-js/lib/features/replace'; + +import BpmnReplace from './BpmnReplace'; + +export default { __depends__: [ - require('diagram-js/lib/features/replace'), - require('diagram-js/lib/features/selection') + SelectionModule, + ReplaceModule ], - bpmnReplace: [ 'type', require('./BpmnReplace') ] + bpmnReplace: [ 'type', BpmnReplace ] }; diff --git a/lib/features/rules/BpmnRules.js b/lib/features/rules/BpmnRules.js index 9da7856c..0095f477 100644 --- a/lib/features/rules/BpmnRules.js +++ b/lib/features/rules/BpmnRules.js @@ -1,32 +1,44 @@ 'use strict'; -var find = require('min-dash').find, - some = require('min-dash').some, - every = require('min-dash').every, - filter = require('min-dash').filter, - forEach = require('min-dash').forEach, - inherits = require('inherits'); +import { + find, + some, + every, + filter, + forEach +} from 'min-dash'; -var is = require('../../util/ModelUtil').is, - isAny = require('../modeling/util/ModelingUtil').isAny, - getBusinessObject = require('../../util/ModelUtil').getBusinessObject, - isExpanded = require('../../util/DiUtil').isExpanded, - isEventSubProcess = require('../../util/DiUtil').isEventSubProcess, - isInterrupting = require('../../util/DiUtil').isInterrupting, - hasErrorEventDefinition = require('../../util/DiUtil').hasErrorEventDefinition, - hasEscalationEventDefinition = require('../../util/DiUtil').hasEscalationEventDefinition, - hasCompensateEventDefinition = require('../../util/DiUtil').hasCompensateEventDefinition; +import inherits from 'inherits'; +import { + is, + getBusinessObject +} from '../../util/ModelUtil'; -var RuleProvider = require('diagram-js/lib/features/rules/RuleProvider'); +import { + isAny +} from '../modeling/util/ModelingUtil'; -var isBoundaryAttachment = require('../snapping/BpmnSnappingUtil').getBoundaryAttachment; +import { + isExpanded, + isEventSubProcess, + isInterrupting, + hasErrorEventDefinition, + hasEscalationEventDefinition, + hasCompensateEventDefinition +} from '../../util/DiUtil'; + +import RuleProvider from 'diagram-js/lib/features/rules/RuleProvider'; + +import { + getBoundaryAttachment as isBoundaryAttachment +} from '../snapping/BpmnSnappingUtil'; /** * BPMN specific modeling rule */ -function BpmnRules(eventBus) { +export default function BpmnRules(eventBus) { RuleProvider.call(this, eventBus); } @@ -34,8 +46,6 @@ inherits(BpmnRules, RuleProvider); BpmnRules.$inject = [ 'eventBus' ]; -module.exports = BpmnRules; - BpmnRules.prototype.init = function() { this.addRule('connection.create', function(context) { diff --git a/lib/features/rules/index.js b/lib/features/rules/index.js index 5f36355b..2a5eeefd 100644 --- a/lib/features/rules/index.js +++ b/lib/features/rules/index.js @@ -1,7 +1,11 @@ -module.exports = { +import RulesModule from 'diagram-js/lib/features/rules'; + +import BpmnRules from './BpmnRules'; + +export default { __depends__: [ - require('diagram-js/lib/features/rules') + RulesModule ], __init__: [ 'bpmnRules' ], - bpmnRules: [ 'type', require('./BpmnRules') ] + bpmnRules: [ 'type', BpmnRules ] }; diff --git a/lib/features/search/BpmnSearchProvider.js b/lib/features/search/BpmnSearchProvider.js index f440c121..da45ce59 100644 --- a/lib/features/search/BpmnSearchProvider.js +++ b/lib/features/search/BpmnSearchProvider.js @@ -1,16 +1,20 @@ 'use strict'; -var map = require('min-dash').map, - filter = require('min-dash').filter, - sortBy = require('min-dash').sortBy; +import { + map, + filter, + sortBy +} from 'min-dash'; -var labelUtil = require('../label-editing/LabelUtil'); +import { + getLabel +} from '../label-editing/LabelUtil'; /** * Provides ability to search through BPMN elements */ -function BpmnSearchProvider(elementRegistry, searchPad, canvas) { +export default function BpmnSearchProvider(elementRegistry, searchPad, canvas) { this._elementRegistry = elementRegistry; this._canvas = canvas; @@ -18,8 +22,6 @@ function BpmnSearchProvider(elementRegistry, searchPad, canvas) { searchPad.registerProvider(this); } -module.exports = BpmnSearchProvider; - BpmnSearchProvider.$inject = [ 'elementRegistry', 'searchPad', @@ -62,7 +64,7 @@ BpmnSearchProvider.prototype.find = function(pattern) { elements = map(elements, function(element) { return { - primaryTokens: matchAndSplit(labelUtil.getLabel(element), pattern), + primaryTokens: matchAndSplit(getLabel(element), pattern), secondaryTokens: matchAndSplit(element.id, pattern), element: element }; @@ -74,7 +76,7 @@ BpmnSearchProvider.prototype.find = function(pattern) { }); elements = sortBy(elements, function(element) { - return labelUtil.getLabel(element.element) + element.element.id; + return getLabel(element.element) + element.element.id; }); return elements; diff --git a/lib/features/search/index.js b/lib/features/search/index.js index 4e61c3b9..80eb32cd 100644 --- a/lib/features/search/index.js +++ b/lib/features/search/index.js @@ -1,7 +1,12 @@ -module.exports = { +import SearchPadModule from 'diagram-js/lib/features/search-pad'; + +import BpmnSearchProvider from './BpmnSearchProvider'; + + +export default { __depends__: [ - require('diagram-js/lib/features/search-pad') + SearchPadModule ], __init__: [ 'bpmnSearch'], - bpmnSearch: [ 'type', require('./BpmnSearchProvider') ] + bpmnSearch: [ 'type', BpmnSearchProvider ] }; diff --git a/lib/features/snapping/BpmnSnapping.js b/lib/features/snapping/BpmnSnapping.js index 090c35ee..437f0643 100644 --- a/lib/features/snapping/BpmnSnapping.js +++ b/lib/features/snapping/BpmnSnapping.js @@ -1,33 +1,50 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var forEach = require('min-dash').forEach, - assign = require('min-dash').assign; +import { + forEach, + assign +} from 'min-dash'; -var getBoundingBox = require('diagram-js/lib/util/Elements').getBBox; +import { + getBBox as getBoundingBox +} from 'diagram-js/lib/util/Elements'; -var is = require('../../util/ModelUtil').is, - isAny = require('../modeling/util/ModelingUtil').isAny, - isExpanded = require('../../util/DiUtil').isExpanded; +import { is } from '../../util/ModelUtil'; -var Snapping = require('diagram-js/lib/features/snapping/Snapping'), - SnapUtil = require('diagram-js/lib/features/snapping/SnapUtil'); +import { isAny } from '../modeling/util/ModelingUtil'; -var asTRBL = require('diagram-js/lib/layout/LayoutUtil').asTRBL; +import { + isExpanded +} from '../../util/DiUtil'; + +import Snapping from 'diagram-js/lib/features/snapping/Snapping'; + +import { + mid, + topLeft, + bottomRight, + isSnapped, + setSnapped +} from 'diagram-js/lib/features/snapping/SnapUtil'; + +import { + asTRBL +} from 'diagram-js/lib/layout/LayoutUtil'; + + +import { + getBoundaryAttachment, + getParticipantSizeConstraints +} from './BpmnSnappingUtil'; + +import { + getLanesRoot +} from '../modeling/util/LaneUtil'; var round = Math.round; -var mid = SnapUtil.mid, - topLeft = SnapUtil.topLeft, - bottomRight = SnapUtil.bottomRight, - isSnapped = SnapUtil.isSnapped, - setSnapped = SnapUtil.setSnapped; - -var getBoundaryAttachment = require('./BpmnSnappingUtil').getBoundaryAttachment, - getParticipantSizeConstraints = require('./BpmnSnappingUtil').getParticipantSizeConstraints, - getLanesRoot = require('../modeling/util/LaneUtil').getLanesRoot; - var HIGH_PRIORITY = 1500; @@ -40,7 +57,7 @@ var HIGH_PRIORITY = 1500; * @param {EventBus} eventBus * @param {Canvas} canvas */ -function BpmnSnapping(eventBus, canvas, bpmnRules, elementRegistry) { +export default function BpmnSnapping(eventBus, canvas, bpmnRules, elementRegistry) { // instantiate super Snapping.call(this, eventBus, canvas); @@ -204,8 +221,6 @@ BpmnSnapping.$inject = [ 'elementRegistry' ]; -module.exports = BpmnSnapping; - BpmnSnapping.prototype.initSnap = function(event) { diff --git a/lib/features/snapping/BpmnSnappingUtil.js b/lib/features/snapping/BpmnSnappingUtil.js index 25357fd2..b3d3e1d5 100644 --- a/lib/features/snapping/BpmnSnappingUtil.js +++ b/lib/features/snapping/BpmnSnappingUtil.js @@ -1,9 +1,11 @@ 'use strict'; -var getOrientation = require('diagram-js/lib/layout/LayoutUtil').getOrientation; +import { + getOrientation +} from 'diagram-js/lib/layout/LayoutUtil'; -function getBoundaryAttachment(position, targetBounds) { +export function getBoundaryAttachment(position, targetBounds) { var orientation = getOrientation(position, targetBounds, -15); @@ -14,18 +16,19 @@ function getBoundaryAttachment(position, targetBounds) { } } -module.exports.getBoundaryAttachment = getBoundaryAttachment; - - // participant snapping box implementation ////////////////////// -var is = require('../../util/ModelUtil').is; +import { is } from '../../util/ModelUtil'; -var asTRBL = require('diagram-js/lib/layout/LayoutUtil').asTRBL; +import { + asTRBL +} from 'diagram-js/lib/layout/LayoutUtil'; -var collectLanes = require('../modeling/util/LaneUtil').collectLanes, - getLanesRoot = require('../modeling/util/LaneUtil').getLanesRoot; +import { + collectLanes, + getLanesRoot +} from '../modeling/util/LaneUtil'; var abs = Math.abs, min = Math.min, @@ -59,7 +62,7 @@ var LANE_MIN_HEIGHT = 60, LANE_BOTTOM_PADDING = 20; -function getParticipantSizeConstraints(laneShape, resizeDirection, balanced) { +export function getParticipantSizeConstraints(laneShape, resizeDirection, balanced) { var lanesRoot = getLanesRoot(laneShape); @@ -154,7 +157,4 @@ function getParticipantSizeConstraints(laneShape, resizeDirection, balanced) { min: minTrbl, max: maxTrbl }; -} - - -module.exports.getParticipantSizeConstraints = getParticipantSizeConstraints; \ No newline at end of file +} \ No newline at end of file diff --git a/lib/features/snapping/index.js b/lib/features/snapping/index.js index cbe1b135..6d729a55 100644 --- a/lib/features/snapping/index.js +++ b/lib/features/snapping/index.js @@ -1,4 +1,6 @@ -module.exports = { +import BpmnSnapping from './BpmnSnapping'; + +export default { __init__: [ 'snapping' ], - snapping: [ 'type', require('./BpmnSnapping') ] + snapping: [ 'type', BpmnSnapping ] }; \ No newline at end of file diff --git a/lib/import/BpmnImporter.js b/lib/import/BpmnImporter.js index 735330cf..c4ea5b48 100644 --- a/lib/import/BpmnImporter.js +++ b/lib/import/BpmnImporter.js @@ -1,18 +1,26 @@ 'use strict'; -var assign = require('min-dash').assign, - map = require('min-dash').map; +import { + assign, + map +} from 'min-dash'; -var LabelUtil = require('../util/LabelUtil'); +import TextUtil from 'diagram-js/lib/util/Text'; -var TextUtil = require('diagram-js/lib/util/Text'); +import { is } from '../util/ModelUtil'; -var is = require('../util/ModelUtil').is; +import { + hasExternalLabel, + getExternalLabelBounds +} from '../util/LabelUtil'; -var hasExternalLabel = LabelUtil.hasExternalLabel, - getExternalLabelBounds = LabelUtil.getExternalLabelBounds, - isExpanded = require('../util/DiUtil').isExpanded, - elementToString = require('./Util').elementToString; +import { + isExpanded +} from '../util/DiUtil'; + +import { + elementToString +} from './Util'; function elementData(semantic, attrs) { @@ -45,8 +53,12 @@ function notYetDrawn(translate, semantic, refSemantic, property) { * @param {Canvas} canvas * @param {ElementFactory} elementFactory * @param {ElementRegistry} elementRegistry + * @param {Function} translate */ -function BpmnImporter(eventBus, canvas, elementFactory, elementRegistry, translate) { +export default function BpmnImporter( + eventBus, canvas, elementFactory, + elementRegistry, translate) { + this._eventBus = eventBus; this._canvas = canvas; @@ -57,9 +69,13 @@ function BpmnImporter(eventBus, canvas, elementFactory, elementRegistry, transla this._textUtil = new TextUtil(); } -BpmnImporter.$inject = [ 'eventBus', 'canvas', 'elementFactory', 'elementRegistry', 'translate' ]; - -module.exports = BpmnImporter; +BpmnImporter.$inject = [ + 'eventBus', + 'canvas', + 'elementFactory', + 'elementRegistry', + 'translate' +]; /** diff --git a/lib/import/BpmnTreeWalker.js b/lib/import/BpmnTreeWalker.js index 02b1bb1f..34fb51e3 100644 --- a/lib/import/BpmnTreeWalker.js +++ b/lib/import/BpmnTreeWalker.js @@ -1,12 +1,16 @@ 'use strict'; -var filter = require('min-dash').filter, - find = require('min-dash').find, - forEach = require('min-dash').forEach; +import { + filter, + find, + forEach +} from 'min-dash'; -var Refs = require('object-refs'); +import Refs from 'object-refs'; -var elementToString = require('./Util').elementToString; +import { + elementToString +} from './Util'; var diRefs = new Refs({ name: 'bpmnElement', enumerable: true }, { name: 'di' }); @@ -34,7 +38,7 @@ function findDisplayCandidate(definitions) { } -function BpmnTreeWalker(handler, translate) { +export default function BpmnTreeWalker(handler, translate) { // list of containers already walked var handledElements = {}; @@ -453,6 +457,4 @@ function BpmnTreeWalker(handler, translate) { return { handleDefinitions: handleDefinitions }; -} - -module.exports = BpmnTreeWalker; \ No newline at end of file +} \ No newline at end of file diff --git a/lib/import/Importer.js b/lib/import/Importer.js index 13daee7e..d3a461fc 100644 --- a/lib/import/Importer.js +++ b/lib/import/Importer.js @@ -1,6 +1,6 @@ 'use strict'; -var BpmnTreeWalker = require('./BpmnTreeWalker'); +import BpmnTreeWalker from './BpmnTreeWalker'; /** @@ -12,7 +12,7 @@ var BpmnTreeWalker = require('./BpmnTreeWalker'); * @param {ModdleElement} definitions * @param {Function} done the callback, invoked with (err, [ warning ]) once the import is done */ -function importBpmnDiagram(diagram, definitions, done) { +export function importBpmnDiagram(diagram, definitions, done) { var importer, eventBus, @@ -69,6 +69,4 @@ function importBpmnDiagram(diagram, definitions, done) { } done(error, warnings); -} - -module.exports.importBpmnDiagram = importBpmnDiagram; \ No newline at end of file +} \ No newline at end of file diff --git a/lib/import/Util.js b/lib/import/Util.js index ed57adc2..bda77d1d 100644 --- a/lib/import/Util.js +++ b/lib/import/Util.js @@ -1,9 +1,9 @@ 'use strict'; -module.exports.elementToString = function(e) { +export function elementToString(e) { if (!e) { return ''; } return '<' + e.$type + (e.id ? ' id="' + e.id : '') + '" />'; -}; \ No newline at end of file +} \ No newline at end of file diff --git a/lib/import/index.js b/lib/import/index.js index bcb07d2b..7739e3ef 100644 --- a/lib/import/index.js +++ b/lib/import/index.js @@ -1,6 +1,10 @@ -module.exports = { +import translate from 'diagram-js/lib/i18n/translate'; + +import BpmnImporter from './BpmnImporter'; + +export default { __depends__: [ - require('diagram-js/lib/i18n/translate') + translate ], - bpmnImporter: [ 'type', require('./BpmnImporter') ] + bpmnImporter: [ 'type', BpmnImporter ] }; \ No newline at end of file diff --git a/lib/util/DiUtil.js b/lib/util/DiUtil.js index 46143ad7..b22b7cb7 100644 --- a/lib/util/DiUtil.js +++ b/lib/util/DiUtil.js @@ -1,11 +1,16 @@ 'use strict'; -var is = require('./ModelUtil').is, - getBusinessObject = require('./ModelUtil').getBusinessObject; +import { + is, + getBusinessObject +} from './ModelUtil'; -var forEach = require('min-dash').forEach; +import { + forEach +} from 'min-dash'; -module.exports.isExpanded = function(element) { + +export function isExpanded(element) { if (is(element, 'bpmn:CallActivity')) { return false; @@ -20,17 +25,17 @@ module.exports.isExpanded = function(element) { } return true; -}; +} -module.exports.isInterrupting = function(element) { +export function isInterrupting(element) { return element && getBusinessObject(element).isInterrupting !== false; -}; +} -module.exports.isEventSubProcess = function(element) { +export function isEventSubProcess(element) { return element && !!getBusinessObject(element).triggeredByEvent; -}; +} -function hasEventDefinition(element, eventType) { +export function hasEventDefinition(element, eventType) { var bo = getBusinessObject(element), hasEventDefinition = false; @@ -45,16 +50,14 @@ function hasEventDefinition(element, eventType) { return hasEventDefinition; } -module.exports.hasEventDefinition = hasEventDefinition; - -module.exports.hasErrorEventDefinition = function(element) { +export function hasErrorEventDefinition(element) { return hasEventDefinition(element, 'bpmn:ErrorEventDefinition'); -}; +} -module.exports.hasEscalationEventDefinition = function(element) { +export function hasEscalationEventDefinition(element) { return hasEventDefinition(element, 'bpmn:EscalationEventDefinition'); -}; +} -module.exports.hasCompensateEventDefinition = function(element) { +export function hasCompensateEventDefinition(element) { return hasEventDefinition(element, 'bpmn:CompensateEventDefinition'); -}; +} diff --git a/lib/util/LabelUtil.js b/lib/util/LabelUtil.js index 137fee68..a2e56d43 100644 --- a/lib/util/LabelUtil.js +++ b/lib/util/LabelUtil.js @@ -1,15 +1,18 @@ 'use strict'; -var assign = require('min-dash').assign; +import { + assign +} from 'min-dash'; -var is = require('./ModelUtil').is; +import { is } from './ModelUtil'; -var DEFAULT_LABEL_SIZE = module.exports.DEFAULT_LABEL_SIZE = { + +export var DEFAULT_LABEL_SIZE = { width: 90, height: 20 }; -var FLOW_LABEL_INDENT = module.exports.FLOW_LABEL_INDENT = 15; +export var FLOW_LABEL_INDENT = 15; /** @@ -18,14 +21,14 @@ var FLOW_LABEL_INDENT = module.exports.FLOW_LABEL_INDENT = 15; * @param {BpmnElement} semantic * @return {Boolean} true if has label */ -module.exports.hasExternalLabel = function(semantic) { +export function hasExternalLabel(semantic) { return is(semantic, 'bpmn:Event') || is(semantic, 'bpmn:Gateway') || is(semantic, 'bpmn:DataStoreReference') || is(semantic, 'bpmn:DataObjectReference') || is(semantic, 'bpmn:SequenceFlow') || is(semantic, 'bpmn:MessageFlow'); -}; +} /** * Get the position for sequence flow labels @@ -33,7 +36,7 @@ module.exports.hasExternalLabel = function(semantic) { * @param {Array} waypoints * @return {Point} the label position */ -function getFlowLabelPosition(waypoints) { +export function getFlowLabelPosition(waypoints) { // get the waypoints mid var mid = waypoints.length / 2 - 1; @@ -59,7 +62,6 @@ function getFlowLabelPosition(waypoints) { return { x: x, y: y }; } -module.exports.getFlowLabelPosition = getFlowLabelPosition; /** * Get the middle of a number of waypoints @@ -67,7 +69,7 @@ module.exports.getFlowLabelPosition = getFlowLabelPosition; * @param {Array} waypoints * @return {Point} the mid point */ -function getWaypointsMid(waypoints) { +export function getWaypointsMid(waypoints) { var mid = waypoints.length / 2 - 1; @@ -80,10 +82,8 @@ function getWaypointsMid(waypoints) { }; } -module.exports.getWaypointsMid = getWaypointsMid; - -function getExternalLabelMid(element) { +export function getExternalLabelMid(element) { if (element.waypoints) { return getFlowLabelPosition(element.waypoints); @@ -95,8 +95,6 @@ function getExternalLabelMid(element) { } } -module.exports.getExternalLabelMid = getExternalLabelMid; - /** * Returns the bounds of an elements label, parsed from the elements DI or @@ -105,7 +103,7 @@ module.exports.getExternalLabelMid = getExternalLabelMid; * @param {BpmnElement} semantic * @param {djs.model.Base} element */ -module.exports.getExternalLabelBounds = function(semantic, element) { +export function getExternalLabelBounds(semantic, element) { var mid, size, @@ -136,4 +134,4 @@ module.exports.getExternalLabelBounds = function(semantic, element) { x: mid.x - size.width / 2, y: mid.y - size.height / 2 }, size); -}; +} diff --git a/lib/util/ModelUtil.js b/lib/util/ModelUtil.js index 1b4b814e..e81c2f31 100644 --- a/lib/util/ModelUtil.js +++ b/lib/util/ModelUtil.js @@ -8,14 +8,12 @@ * * @return {Boolean} */ -function is(element, type) { +export function is(element, type) { var bo = getBusinessObject(element); return bo && (typeof bo.$instanceOf === 'function') && bo.$instanceOf(type); } -module.exports.is = is; - /** * Return the business object for a given element. @@ -24,8 +22,6 @@ module.exports.is = is; * * @return {ModdleElement} */ -function getBusinessObject(element) { +export function getBusinessObject(element) { return (element && element.businessObject) || element; -} - -module.exports.getBusinessObject = getBusinessObject; +} \ No newline at end of file diff --git a/lib/util/PoweredByUtil.js b/lib/util/PoweredByUtil.js index 361339b3..b427cd5e 100644 --- a/lib/util/PoweredByUtil.js +++ b/lib/util/PoweredByUtil.js @@ -6,9 +6,10 @@ 'use strict'; -var domify = require('min-dom').domify; - -var domDelegate = require('min-dom').delegate; +import { + domify, + delegate as domDelegate +} from 'min-dom'; // inlined ../../resources/logo.svg @@ -16,7 +17,7 @@ var BPMNIO_LOGO_SVG = ''; +export var BPMNIO_IMG = ''; function css(attrs) { return attrs.join(';'); @@ -67,7 +68,7 @@ var LIGHTBOX_MARKUP = var lightbox; -function open() { +export function open() { if (!lightbox) { lightbox = domify(LIGHTBOX_MARKUP); @@ -78,8 +79,4 @@ function open() { } document.body.appendChild(lightbox); -} - -module.exports.open = open; - -module.exports.BPMNIO_IMG = BPMNIO_IMG; \ No newline at end of file +} \ No newline at end of file diff --git a/lib/util/model/ModelCloneHelper.js b/lib/util/model/ModelCloneHelper.js index 743e8a5b..0253e908 100644 --- a/lib/util/model/ModelCloneHelper.js +++ b/lib/util/model/ModelCloneHelper.js @@ -1,12 +1,17 @@ 'use strict'; -var forEach = require('min-dash').forEach, - filter = require('min-dash').filter, - some = require('min-dash').some, - sortBy = require('min-dash').sortBy, - isArray = require('min-dash').isArray; +import { + forEach, + filter, + some, + sortBy, + isArray +} from 'min-dash'; + +import { + IGNORED_PROPERTIES +} from './ModelCloneUtils'; -var IGNORED_PROPERTIES = require('./ModelCloneUtils').IGNORED_PROPERTIES; function isAllowedIn(extProp, type) { var allowedIn = extProp.meta.allowedIn; @@ -29,13 +34,11 @@ function isType(element, types) { * A bpmn properties cloning interface * */ -function ModelCloneHelper(eventBus, bpmnFactory) { +export default function ModelCloneHelper(eventBus, bpmnFactory) { this._eventBus = eventBus; this._bpmnFactory = bpmnFactory; } -module.exports = ModelCloneHelper; - ModelCloneHelper.prototype.clone = function(refElement, newElement, properties) { diff --git a/lib/util/model/ModelCloneUtils.js b/lib/util/model/ModelCloneUtils.js index 39be261c..857ae0a3 100644 --- a/lib/util/model/ModelCloneUtils.js +++ b/lib/util/model/ModelCloneUtils.js @@ -1,13 +1,16 @@ 'use strict'; -var forEach = require('min-dash').forEach; +import { + forEach +} from 'min-dash'; + /** * These are the properties that should be ignored when cloning elements. * * @type {Array} */ -module.exports.IGNORED_PROPERTIES = [ +export var IGNORED_PROPERTIES = [ 'lanes', 'incoming', 'outgoing', @@ -19,7 +22,7 @@ module.exports.IGNORED_PROPERTIES = [ ]; -function getProperties(descriptor, keepDefault) { +export function getProperties(descriptor, keepDefault) { var properties = []; forEach(descriptor.properties, function(property) { @@ -32,6 +35,4 @@ function getProperties(descriptor, keepDefault) { }); return properties; -} - -module.exports.getProperties = getProperties; +} \ No newline at end of file diff --git a/test/TestHelper.js b/test/TestHelper.js index 4fc1fda3..7a5d2257 100644 --- a/test/TestHelper.js +++ b/test/TestHelper.js @@ -1,19 +1,30 @@ 'use strict'; -var TestHelper = module.exports = require('./helper'); +export * from './helper'; -TestHelper.insertCSS('diagram-js.css', require('diagram-js/assets/diagram-js.css')); +import { + insertCSS +} from './helper'; -TestHelper.insertCSS('bpmn-embedded.css', require('bpmn-font/dist/css/bpmn-embedded.css')); +insertCSS('diagram-js.css', require('diagram-js/assets/diagram-js.css')); -TestHelper.insertCSS('diagram-js-testing.css', +insertCSS('bpmn-embedded.css', require('bpmn-font/dist/css/bpmn-embedded.css')); + +insertCSS('diagram-js-testing.css', 'body .test-container { height: auto }' + 'body .test-container .test-content-container { height: 90vmin; }' ); +import ChaiMatch from 'chai-match'; +import BoundsMatchers from './matchers/BoundsMatchers'; +import ConnectionMatchers from './matchers/ConnectionMatchers'; +import JSONMatcher from './matchers/JSONMatcher'; + +/* global chai */ + // add suite specific matchers -global.chai.use(require('chai-match')); -global.chai.use(require('./matchers/BoundsMatchers')); -global.chai.use(require('./matchers/ConnectionMatchers')); -global.chai.use(require('./matchers/JSONMatcher')); +chai.use(ChaiMatch); +chai.use(BoundsMatchers); +chai.use(ConnectionMatchers); +chai.use(JSONMatcher); diff --git a/test/config/karma.unit.js b/test/config/karma.unit.js index d9f18766..b4d0ca21 100644 --- a/test/config/karma.unit.js +++ b/test/config/karma.unit.js @@ -1,7 +1,5 @@ 'use strict'; -var bbl = require('babel-plugin-add-module-exports'); - var path = require('path'); var basePath = '../../'; @@ -77,10 +75,7 @@ module.exports = function(karma) { [ 'babelify', { global: true, babelrc: false, - presets: [ 'env' ], - plugins: [ - bbl - ] + presets: [ 'env' ] } ], [ 'stringify', { global: true, diff --git a/test/config/translation-reporter.js b/test/config/translation-reporter.js index 130a5dbf..d3efa8f3 100644 --- a/test/config/translation-reporter.js +++ b/test/config/translation-reporter.js @@ -3,8 +3,11 @@ var fs = require('fs'); var path = require('path'); -var uniqueBy = require('min-dash').uniqueBy; -var sortBy = require('min-dash').sortBy; +var { + uniqueBy, + sortBy +} = require('min-dash'); + function TranslationReporter() { process.env.TRANSLATIONS = 'enabled'; diff --git a/test/helper/TranslationCollector.js b/test/helper/TranslationCollector.js index 19e80eef..e6697c9b 100644 --- a/test/helper/TranslationCollector.js +++ b/test/helper/TranslationCollector.js @@ -1,6 +1,6 @@ 'use strict'; -var translate = require('diagram-js/lib/i18n/translate/translate'); +import translate from 'diagram-js/lib/i18n/translate/translate'; function collectTranslations(template, replacements) { var log = { @@ -13,6 +13,6 @@ function collectTranslations(template, replacements) { return translate(template, replacements); } -module.exports = { +export default { translate: [ 'value', collectTranslations ] }; \ No newline at end of file diff --git a/test/helper/index.js b/test/helper/index.js index c4d42495..e8d2388c 100644 --- a/test/helper/index.js +++ b/test/helper/index.js @@ -3,7 +3,7 @@ /** * A helper file that may be used in test cases for bpmn-js and extensions. * - * Publishes the globals + * Provides the globals * * * bootstrapModeler(): bootstrap a modeler instance * * bootstrapViewer(): bootstrap a viewer instance @@ -19,27 +19,33 @@ * and perform custom bootstrapping (CSS, ...) in that utility. * * ``` - * var TestHelper = module.exports = require('bpmn-js/test/helper'); + * export * from 'bpmn-js/test/helper'; + * + * import { + * insertCSS + * } from 'bpmn-js/test/helper'; * * var fs = require('fs'); * * // insert diagram.css - * TestHelper.insertCSS('diagram.css', fs.readFileSync('some-css.css', 'utf8')); + * insertCSS('diagram.css', fs.readFileSync('some-css.css', 'utf8')); * ``` */ -var isFunction = require('min-dash').isFunction, - forEach = require('min-dash').forEach, - merge = require('min-dash').merge; +import { + isFunction, + forEach, + merge +} from 'min-dash'; -var TestContainer = require('mocha-test-container-support'); +import TestContainer from 'mocha-test-container-support'; -var Modeler = require('../../lib/Modeler'), - Viewer = require('../../lib/Viewer'); +import Modeler from '../../lib/Modeler'; +import Viewer from '../../lib/Viewer'; var OPTIONS, BPMN_JS; -var translationModule = require('./TranslationCollector'); +import translationModule from './TranslationCollector'; function bootstrapBpmnJS(BpmnJS, diagram, options, locals) { @@ -143,7 +149,7 @@ function bootstrapBpmnJS(BpmnJS, diagram, options, locals) { * @param {Object|Function} locals the local overrides to be used by the diagram or a function that produces them * @return {Function} a function to be passed to beforeEach */ -function bootstrapModeler(diagram, options, locals) { +export function bootstrapModeler(diagram, options, locals) { return bootstrapBpmnJS(Modeler, diagram, options, locals); } @@ -171,7 +177,7 @@ function bootstrapModeler(diagram, options, locals) { * @param {Object|Function} locals the local overrides to be used by the diagram or a function that produces them * @return {Function} a function to be passed to beforeEach */ -function bootstrapViewer(diagram, options, locals) { +export function bootstrapViewer(diagram, options, locals) { return bootstrapBpmnJS(Viewer, diagram, options, locals); } @@ -198,11 +204,14 @@ function bootstrapViewer(diagram, options, locals) { * @param {Function} fn the function to inject to * @return {Function} a function that can be passed to it to carry out the injection */ -function inject(fn) { +export function inject(fn) { return function() { if (!BPMN_JS) { - throw new Error('no bootstraped bpmn-js instance, ensure you created it via #boostrap(Modeler|Viewer)'); + throw new Error( + 'no bootstraped bpmn-js instance, ' + + 'ensure you created it via #boostrap(Modeler|Viewer)' + ); } BPMN_JS.invoke(fn); @@ -210,23 +219,17 @@ function inject(fn) { } -module.exports.bootstrapBpmnJS = (window || global).bootstrapBpmnJS = bootstrapBpmnJS; -module.exports.bootstrapModeler = (window || global).bootstrapModeler = bootstrapModeler; -module.exports.bootstrapViewer = (window || global).bootstrapViewer = bootstrapViewer; -module.exports.inject = (window || global).inject = inject; - - /** * Returns the current active BpmnJS instance. * * @return {BpmnJS} */ -module.exports.getBpmnJS = function() { +export function getBpmnJS() { return BPMN_JS; -}; +} -function insertCSS(name, css) { +export function insertCSS(name, css) { if (document.querySelector('[data-css-file="' + name + '"]')) { return; } @@ -243,6 +246,4 @@ function insertCSS(name, css) { } head.appendChild(style); -} - -module.exports.insertCSS = insertCSS; +} \ No newline at end of file diff --git a/test/integration/CustomElementsSpec.js b/test/integration/CustomElementsSpec.js index 567b8d33..e8428005 100644 --- a/test/integration/CustomElementsSpec.js +++ b/test/integration/CustomElementsSpec.js @@ -1,14 +1,20 @@ 'use strict'; -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -var Modeler = require('lib/Modeler'); +import Modeler from 'lib/Modeler'; -var canvasEvent = require('../util/MockEvents').createCanvasEvent; +import { + createCanvasEvent as canvasEvent +} from '../util/MockEvents'; -var customElementsModules = require('./custom-elements'), - noTouchInteractionModule = { touchInteractionEvents: ['value', null ] }, +import customElementsModules from './custom-elements'; + +var noTouchInteractionModule = { touchInteractionEvents: ['value', null ] }, modelerModules = Modeler.prototype._modules, customModules = [ customElementsModules, noTouchInteractionModule ]; diff --git a/test/integration/ReimportSpec.js b/test/integration/ReimportSpec.js index cafbd831..ac748293 100644 --- a/test/integration/ReimportSpec.js +++ b/test/integration/ReimportSpec.js @@ -1,8 +1,8 @@ 'use strict'; -var Modeler = require('lib/Modeler'); +import Modeler from 'lib/Modeler'; -var TestContainer = require('mocha-test-container-support'); +import TestContainer from 'mocha-test-container-support'; function delay(fn) { setTimeout(fn, 10); diff --git a/test/integration/SimpleModelingSpec.js b/test/integration/SimpleModelingSpec.js index a2b23763..6453bdf7 100644 --- a/test/integration/SimpleModelingSpec.js +++ b/test/integration/SimpleModelingSpec.js @@ -1,8 +1,8 @@ 'use strict'; -var Modeler = require('lib/Modeler'); +import Modeler from 'lib/Modeler'; -var TestContainer = require('mocha-test-container-support'); +import TestContainer from 'mocha-test-container-support'; describe('scenario - simple modeling', function() { diff --git a/test/integration/custom-elements/CustomElementFactory.js b/test/integration/custom-elements/CustomElementFactory.js index 08df880a..60f9dabd 100644 --- a/test/integration/custom-elements/CustomElementFactory.js +++ b/test/integration/custom-elements/CustomElementFactory.js @@ -1,13 +1,19 @@ 'use strict'; -var assign = require('min-dash').assign, - inherits = require('inherits'); +import { + assign +} from 'min-dash'; -var BpmnElementFactory = require('lib/features/modeling/ElementFactory'), - LabelUtil = require('lib/util/LabelUtil'); +import inherits from 'inherits'; + +import BpmnElementFactory from 'lib/features/modeling/ElementFactory'; + +import { + DEFAULT_LABEL_SIZE +} from 'lib/util/LabelUtil'; -function CustomElementFactory(injector) { +export default function CustomElementFactory(injector) { injector.invoke(BpmnElementFactory, this); var self = this; @@ -18,7 +24,7 @@ function CustomElementFactory(injector) { size; if (elementType === 'label') { - return self.baseCreate(elementType, assign({ type: 'label' }, LabelUtil.DEFAULT_LABEL_SIZE, attrs)); + return self.baseCreate(elementType, assign({ type: 'label' }, DEFAULT_LABEL_SIZE, attrs)); } if (/^custom:/.test(type)) { @@ -38,8 +44,6 @@ function CustomElementFactory(injector) { inherits(CustomElementFactory, BpmnElementFactory); -module.exports = CustomElementFactory; - CustomElementFactory.$inject = [ 'injector' ]; diff --git a/test/integration/custom-elements/CustomRenderer.js b/test/integration/custom-elements/CustomRenderer.js index 96cde814..0523ae59 100644 --- a/test/integration/custom-elements/CustomRenderer.js +++ b/test/integration/custom-elements/CustomRenderer.js @@ -1,17 +1,21 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var BaseRenderer = require('diagram-js/lib/draw/BaseRenderer'); +import BaseRenderer from 'diagram-js/lib/draw/BaseRenderer'; -var componentsToPath = require('diagram-js/lib/util/RenderUtil').componentsToPath; +import { + componentsToPath +} from 'diagram-js/lib/util/RenderUtil'; -var svgAppend = require('tiny-svg').append, - svgAttr = require('tiny-svg').attr, - svgCreate = require('tiny-svg').create; +import { + append as svgAppend, + attr as svgAttr, + create as svgCreate +} from 'tiny-svg'; -function CustomRenderer(eventBus, styles) { +export default function CustomRenderer(eventBus, styles) { BaseRenderer.call(this, eventBus, 2000); @@ -114,8 +118,6 @@ function CustomRenderer(eventBus, styles) { inherits(CustomRenderer, BaseRenderer); -module.exports = CustomRenderer; - CustomRenderer.$inject = [ 'eventBus', 'styles' ]; diff --git a/test/integration/custom-elements/CustomRules.js b/test/integration/custom-elements/CustomRules.js index e530baaf..a8130678 100644 --- a/test/integration/custom-elements/CustomRules.js +++ b/test/integration/custom-elements/CustomRules.js @@ -1,27 +1,18 @@ 'use strict'; -var forEach = require('min-dash').forEach, - inherits = require('inherits'); +import { forEach } from 'min-dash'; -var RuleProvider = require('diagram-js/lib/features/rules/RuleProvider'); +import inherits from 'inherits'; + +import RuleProvider from 'diagram-js/lib/features/rules/RuleProvider'; var HIGH_PRIORITY = 1500; -function isType(element, type) { - var patt = new RegExp(type, 'i'); - - return element && patt.test(element.type); -} - -function isCustom(element) { - return element && /^custom:/.test(element.type); -} - /** * Specific rules for custom elements */ -function CustomRules(eventBus) { +export default function CustomRules(eventBus) { RuleProvider.call(this, eventBus); } @@ -29,8 +20,6 @@ inherits(CustomRules, RuleProvider); CustomRules.$inject = [ 'eventBus' ]; -module.exports = CustomRules; - CustomRules.prototype.init = function() { @@ -146,3 +135,13 @@ function canMove(shapes, target, position) { return result; } + +function isType(element, type) { + var patt = new RegExp(type, 'i'); + + return element && patt.test(element.type); +} + +function isCustom(element) { + return element && /^custom:/.test(element.type); +} diff --git a/test/integration/custom-elements/CustomUpdater.js b/test/integration/custom-elements/CustomUpdater.js index 6376d62b..037f8946 100644 --- a/test/integration/custom-elements/CustomUpdater.js +++ b/test/integration/custom-elements/CustomUpdater.js @@ -1,10 +1,12 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var isBpmn = require('lib/util/ModelUtil').is; +import { + is as isBpmn +} from 'lib/util/ModelUtil'; -var CommandInterceptor = require('diagram-js/lib/command/CommandInterceptor'); +import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor'; function isCustom(element, type) { @@ -31,7 +33,7 @@ function ifCustomElement(fn) { * A handler responsible for updating the custom element's businessObject * once changes on the diagram happen */ -function CustomUpdater(eventBus, modeling) { +export default function CustomUpdater(eventBus, modeling) { CommandInterceptor.call(this, eventBus); @@ -110,6 +112,4 @@ function CustomUpdater(eventBus, modeling) { inherits(CustomUpdater, CommandInterceptor); -module.exports = CustomUpdater; - CustomUpdater.$inject = [ 'eventBus', 'modeling' ]; diff --git a/test/integration/custom-elements/index.js b/test/integration/custom-elements/index.js index 94f9920f..afaf2eec 100644 --- a/test/integration/custom-elements/index.js +++ b/test/integration/custom-elements/index.js @@ -1,7 +1,16 @@ -module.exports = { - __init__: [ 'customRenderer', 'customRules', 'customUpdater' ], - elementFactory: [ 'type', require('./CustomElementFactory') ], - customRenderer: [ 'type', require('./CustomRenderer') ], - customRules: [ 'type', require('./CustomRules') ], - customUpdater: [ 'type', require('./CustomUpdater') ] +import CustomElementFactory from './CustomElementFactory'; +import CustomRenderer from './CustomRenderer'; +import CustomRules from './CustomRules'; +import CustomUpdater from './CustomUpdater'; + +export default { + __init__: [ + 'customRenderer', + 'customRules', + 'customUpdater' + ], + elementFactory: [ 'type', CustomElementFactory ], + customRenderer: [ 'type', CustomRenderer ], + customRules: [ 'type', CustomRules ], + customUpdater: [ 'type', CustomUpdater ] }; diff --git a/test/integration/model/BpmnModdleSpec.js b/test/integration/model/BpmnModdleSpec.js index 7097f3b8..39179b6a 100644 --- a/test/integration/model/BpmnModdleSpec.js +++ b/test/integration/model/BpmnModdleSpec.js @@ -1,6 +1,6 @@ 'use strict'; -var BpmnModdle = require('bpmn-moddle'); +import BpmnModdle from 'bpmn-moddle'; describe('bpmn-moddle', function() { diff --git a/test/matchers/BoundsMatchers.js b/test/matchers/BoundsMatchers.js index 07b2fa48..a8c54003 100644 --- a/test/matchers/BoundsMatchers.js +++ b/test/matchers/BoundsMatchers.js @@ -1,6 +1,8 @@ 'use strict'; -var pick = require('min-dash').pick; +import { + pick +} from 'min-dash'; var BOUNDS_ATTRS = [ 'x', 'y', 'width', 'height' ], POSITION_ATTRS = [ 'x', 'y' ], @@ -37,7 +39,7 @@ function getPosition(s) { } -module.exports = function(chai, utils) { +export default function(chai, utils) { var Assertion = chai.Assertion; @@ -163,4 +165,4 @@ module.exports = function(chai, utils) { ); }); -}; +} diff --git a/test/matchers/ConnectionMatchers.js b/test/matchers/ConnectionMatchers.js index 9ffe4a2f..a8411672 100644 --- a/test/matchers/ConnectionMatchers.js +++ b/test/matchers/ConnectionMatchers.js @@ -1,6 +1,8 @@ 'use strict'; -var pick = require('min-dash').pick; +import { + pick +} from 'min-dash'; var POSITION_ATTRS = [ 'x', 'y' ]; @@ -9,7 +11,7 @@ function extractPoints(point) { } -module.exports = function(chai, utils) { +export default function(chai, utils) { var Assertion = chai.Assertion; @@ -121,4 +123,4 @@ module.exports = function(chai, utils) { ); }); -}; +} diff --git a/test/matchers/JSONMatcher.js b/test/matchers/JSONMatcher.js index e71fc44e..547b0428 100644 --- a/test/matchers/JSONMatcher.js +++ b/test/matchers/JSONMatcher.js @@ -1,6 +1,6 @@ 'use strict'; -module.exports = function(chai, utils) { +export default function(chai, utils) { utils.addMethod(chai.Assertion.prototype, 'jsonEqual', function(comparison) { @@ -16,4 +16,4 @@ module.exports = function(chai, utils) { true // show diff ); }); -}; +} diff --git a/test/spec/ModelerSpec.js b/test/spec/ModelerSpec.js index edf21910..8dd95d4c 100644 --- a/test/spec/ModelerSpec.js +++ b/test/spec/ModelerSpec.js @@ -1,8 +1,14 @@ 'use strict'; -var Modeler = require('lib/Modeler'); +import Modeler from 'lib/Modeler'; +import Viewer from 'lib/Viewer'; +import NavigatedViewer from 'lib/NavigatedViewer'; -var TestContainer = require('mocha-test-container-support'); +import TestContainer from 'mocha-test-container-support'; + +import { + createEvent +} from '../util/MockEvents'; describe('Modeler', function() { @@ -178,9 +184,6 @@ describe('Modeler', function() { describe('bendpoint editing support', function() { - var createEvent = require('../util/MockEvents').createEvent; - - it('should allow to edit bendpoints', function(done) { var xml = require('../fixtures/bpmn/simple.bpmn'); @@ -432,12 +435,6 @@ describe('Modeler', function() { it('should expose Viewer and NavigatedViewer', function() { - - // given - var Viewer = require('lib/Viewer'); - var NavigatedViewer = require('lib/NavigatedViewer'); - - // then expect(Modeler.Viewer).to.equal(Viewer); expect(Modeler.NavigatedViewer).to.equal(NavigatedViewer); }); diff --git a/test/spec/NavigatedViewerSpec.js b/test/spec/NavigatedViewerSpec.js index 5544f3a8..7294cc9a 100644 --- a/test/spec/NavigatedViewerSpec.js +++ b/test/spec/NavigatedViewerSpec.js @@ -1,8 +1,6 @@ 'use strict'; -require('../TestHelper'); - -var NavigatedViewer = require('lib/NavigatedViewer'); +import NavigatedViewer from 'lib/NavigatedViewer'; describe('NavigatedViewer', function() { diff --git a/test/spec/ViewerSpec.js b/test/spec/ViewerSpec.js index 18994967..a9ab99cc 100644 --- a/test/spec/ViewerSpec.js +++ b/test/spec/ViewerSpec.js @@ -1,12 +1,12 @@ 'use strict'; -var TestContainer = require('mocha-test-container-support'); +import TestContainer from 'mocha-test-container-support'; -var Diagram = require('diagram-js/lib/Diagram'); +import Diagram from 'diagram-js/lib/Diagram'; -var Viewer = require('lib/Viewer'); +import Viewer from 'lib/Viewer'; -var inherits = require('inherits'); +import inherits from 'inherits'; describe('Viewer', function() { @@ -616,11 +616,13 @@ describe('Viewer', function() { it('should allow user to override default custom moddle extensions', function(done) { // given - var xml = require('../fixtures/bpmn/extension/custom-override.bpmn'), - additionalModdleDescriptors = { - custom: require('../fixtures/json/model/custom') - }, - customOverride = require('../fixtures/json/model/custom-override'); + var xml = require('../fixtures/bpmn/extension/custom-override.bpmn'); + + var additionalModdleDescriptors = { + custom: require('../fixtures/json/model/custom') + }; + + var customOverride = require('../fixtures/json/model/custom-override'); function CustomViewer(options) { Viewer.call(this, options); diff --git a/test/spec/draw/BpmnRenderUtilSpec.js b/test/spec/draw/BpmnRenderUtilSpec.js index 3db2905f..898eb040 100644 --- a/test/spec/draw/BpmnRenderUtilSpec.js +++ b/test/spec/draw/BpmnRenderUtilSpec.js @@ -1,77 +1,87 @@ 'use strict'; -require('../../TestHelper'); - -var BpmnRenderUtil = require('lib/draw/BpmnRenderUtil'); +import { + isTypedEvent, + isThrowEvent, + isCollection, + getDi, + getSemantic, + getCirclePath, + getRoundRectPath, + getDiamondPath, + getRectPath, + getFillColor, + getStrokeColor +} from 'lib/draw/BpmnRenderUtil'; describe('BpmnRenderUtil', function() { it('should expose isTypedEvent', function() { - expect(BpmnRenderUtil.isTypedEvent).to.be.a('function'); + expect(isTypedEvent).to.be.a('function'); }); it('should expose isThrowEvent', function() { - expect(BpmnRenderUtil.isThrowEvent).to.be.a('function'); + expect(isThrowEvent).to.be.a('function'); }); it('should expose isCollection', function() { - expect(BpmnRenderUtil.isCollection).to.be.a('function'); + expect(isCollection).to.be.a('function'); }); it('should expose getDi', function() { - expect(BpmnRenderUtil.getDi).to.be.a('function'); + expect(getDi).to.be.a('function'); }); it('should expose getSemantic', function() { - expect(BpmnRenderUtil.getSemantic).to.be.a('function'); + expect(getSemantic).to.be.a('function'); }); it('should expose getCirclePath', function() { - expect(BpmnRenderUtil.getCirclePath).to.be.a('function'); + expect(getCirclePath).to.be.a('function'); }); it('should expose getRoundRectPath', function() { - expect(BpmnRenderUtil.getRoundRectPath).to.be.a('function'); + expect(getRoundRectPath).to.be.a('function'); }); it('should expose getDiamondPath', function() { - expect(BpmnRenderUtil.getDiamondPath).to.be.a('function'); + expect(getDiamondPath).to.be.a('function'); }); it('should expose getRectPath', function() { - expect(BpmnRenderUtil.getRectPath).to.be.a('function'); + expect(getRectPath).to.be.a('function'); }); it('should expose getFillColor', function() { - expect(BpmnRenderUtil.getFillColor).to.be.a('function'); + expect(getFillColor).to.be.a('function'); }); it('should expose getStrokeColor', function() { - expect(BpmnRenderUtil.getStrokeColor).to.be.a('function'); + expect(getStrokeColor).to.be.a('function'); }); diff --git a/test/spec/draw/BpmnRendererSpec.js b/test/spec/draw/BpmnRendererSpec.js index 72e3a5f9..cadf23ff 100644 --- a/test/spec/draw/BpmnRendererSpec.js +++ b/test/spec/draw/BpmnRendererSpec.js @@ -1,16 +1,22 @@ 'use strict'; -require('../../TestHelper'); +import { + bootstrapModeler, + bootstrapViewer, + inject +} from 'test/TestHelper'; -var svgCreate = require('tiny-svg').create; +import { + create as svgCreate +} from 'tiny-svg'; -var coreModule = require('lib/core'), - rendererModule = require('lib/draw'), - modelingModule = require('lib/features/modeling'); +import coreModule from 'lib/core'; +import rendererModule from 'lib/draw'; +import modelingModule from 'lib/features/modeling'; -var domQuery = require('min-dom').query; - -/* global bootstrapViewer, bootstrapModeler, inject */ +import { + query as domQuery +} from 'min-dom'; function checkErrors(done) { return function(err, warnings) { @@ -20,6 +26,7 @@ function checkErrors(done) { }; } + describe('draw - bpmn renderer', function() { it('should render activity markers', function(done) { diff --git a/test/spec/environment/MockingSpec.js b/test/spec/environment/MockingSpec.js index 010c63d4..ce8f062a 100644 --- a/test/spec/environment/MockingSpec.js +++ b/test/spec/environment/MockingSpec.js @@ -1,12 +1,13 @@ 'use strict'; -require('../../TestHelper'); +import { + bootstrapViewer, + inject +} from 'test/TestHelper'; -/* global bootstrapViewer, inject */ +import Events from 'diagram-js/lib/core/EventBus'; -var Events = require('diagram-js/lib/core/EventBus'); - -var Viewer = require('lib/Viewer'); +import Viewer from 'lib/Viewer'; describe('environment - mocking', function() { diff --git a/test/spec/features/align-elements/BpmnAlignElementsSpec.js b/test/spec/features/align-elements/BpmnAlignElementsSpec.js index 44d0096b..9e88d0ec 100644 --- a/test/spec/features/align-elements/BpmnAlignElementsSpec.js +++ b/test/spec/features/align-elements/BpmnAlignElementsSpec.js @@ -1,12 +1,13 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - -var alignElementsModule = require('diagram-js/lib/features/align-elements'), - modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import alignElementsModule from 'diagram-js/lib/features/align-elements'; +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/align-elements', function() { diff --git a/test/spec/features/auto-place/AutoPlaceSpec.js b/test/spec/features/auto-place/AutoPlaceSpec.js index 225f4328..cff62923 100644 --- a/test/spec/features/auto-place/AutoPlaceSpec.js +++ b/test/spec/features/auto-place/AutoPlaceSpec.js @@ -1,14 +1,15 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - -var autoPlaceModule = require('lib/features/auto-place'), - modelingModule = require('lib/features/modeling'), - selectionModule = require('diagram-js/lib/features/selection'), - labelEditingModule = require('lib/features/label-editing'), - coreModule = require('lib/core'); +import autoPlaceModule from 'lib/features/auto-place'; +import modelingModule from 'lib/features/modeling'; +import selectionModule from 'diagram-js/lib/features/selection'; +import labelEditingModule from 'lib/features/label-editing'; +import coreModule from 'lib/core'; describe('features/auto-place', function() { diff --git a/test/spec/features/auto-resize/AutoResizeSpec.js b/test/spec/features/auto-resize/AutoResizeSpec.js index 9e8cbafa..b624af72 100644 --- a/test/spec/features/auto-resize/AutoResizeSpec.js +++ b/test/spec/features/auto-resize/AutoResizeSpec.js @@ -1,18 +1,24 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import { + pick, + assign +} from 'min-dash'; -var pick = require('min-dash').pick, - assign = require('min-dash').assign; +import autoResizeModule from 'lib/features/auto-resize'; +import modelingModule from 'lib/features/modeling'; +import createModule from 'diagram-js/lib/features/create'; +import coreModule from 'lib/core'; +import moveModule from 'diagram-js/lib/features/move'; -var autoResizeModule = require('lib/features/auto-resize'), - modelingModule = require('lib/features/modeling'), - createModule = require('diagram-js/lib/features/create'), - coreModule = require('lib/core'), - moveModule = require('diagram-js/lib/features/move'), - canvasEvent = require('../../../util/MockEvents').createCanvasEvent; +import { + createCanvasEvent as canvasEvent +} from '../../../util/MockEvents'; function getBounds(shape) { return pick(shape, [ 'x', 'y', 'width', 'height' ]); diff --git a/test/spec/features/context-pad/ContextPadProviderSpec.js b/test/spec/features/context-pad/ContextPadProviderSpec.js index 2eb15aa6..ed47dcd6 100644 --- a/test/spec/features/context-pad/ContextPadProviderSpec.js +++ b/test/spec/features/context-pad/ContextPadProviderSpec.js @@ -1,27 +1,33 @@ 'use strict'; -var getBpmnJS = require('../../../TestHelper').getBpmnJS; +import { + bootstrapModeler, + getBpmnJS, + inject +} from 'test/TestHelper'; -var TestContainer = require('mocha-test-container-support'); +import TestContainer from 'mocha-test-container-support'; -var domQuery = require('min-dom').query, - domQueryAll = require('min-dom').queryAll; +import { + query as domQuery, + queryAll as domQueryAll +} from 'min-dom'; -var is = require('lib/util/ModelUtil').is; +import { + is +} from 'lib/util/ModelUtil'; -var canvasEvent = require('../../../util/MockEvents').createCanvasEvent; +import { + createCanvasEvent as canvasEvent +} from '../../../util/MockEvents'; - -/* global bootstrapModeler, inject */ - - -var contextPadModule = require('lib/features/context-pad'), - coreModule = require('lib/core'), - modelingModule = require('lib/features/modeling'), - replaceMenuModule = require('lib/features/popup-menu'), - createModule = require('diagram-js/lib/features/create'), - customRulesModule = require('../../../util/custom-rules'), - autoPlaceModule = require('lib/features/auto-place'); +import contextPadModule from 'lib/features/context-pad'; +import coreModule from 'lib/core'; +import modelingModule from 'lib/features/modeling'; +import replaceMenuModule from 'lib/features/popup-menu'; +import createModule from 'diagram-js/lib/features/create'; +import customRulesModule from '../../../util/custom-rules'; +import autoPlaceModule from 'lib/features/auto-place'; describe('features - context-pad', function() { diff --git a/test/spec/features/copy-paste/BpmnCopyPasteSpec.js b/test/spec/features/copy-paste/BpmnCopyPasteSpec.js index 9a5f53f0..f102357b 100644 --- a/test/spec/features/copy-paste/BpmnCopyPasteSpec.js +++ b/test/spec/features/copy-paste/BpmnCopyPasteSpec.js @@ -1,27 +1,40 @@ 'use strict'; -var TestHelper = require('../../../TestHelper'); +/* global sinon */ -/* global bootstrapModeler, inject, sinon */ +import { + bootstrapModeler, + getBpmnJS, + inject +} from 'test/TestHelper'; -var bpmnCopyPasteModule = require('lib/features/copy-paste'), - copyPasteModule = require('diagram-js/lib/features/copy-paste'), - tooltipsModule = require('diagram-js/lib/features/tooltips'), - modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import bpmnCopyPasteModule from 'lib/features/copy-paste'; +import copyPasteModule from 'diagram-js/lib/features/copy-paste'; +import tooltipsModule from 'diagram-js/lib/features/tooltips'; +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; -var map = require('min-dash').map, - filter = require('min-dash').filter, - forEach = require('min-dash').forEach, - uniqueBy = require('min-dash').uniqueBy; +import { + map, + filter, + forEach, + uniqueBy +} from 'min-dash'; -var DescriptorTree = require('./DescriptorTree'); +import DescriptorTree from './DescriptorTree'; + +import { is } from 'lib/util/ModelUtil'; -var is = require('lib/util/ModelUtil').is; describe('features/copy-paste', function() { - var testModules = [ bpmnCopyPasteModule, copyPasteModule, tooltipsModule, modelingModule, coreModule ]; + var testModules = [ + bpmnCopyPasteModule, + copyPasteModule, + tooltipsModule, + modelingModule, + coreModule + ]; var basicXML = require('../../../fixtures/bpmn/features/copy-paste/basic.bpmn'), clonePropertiesXML = require('../../../fixtures/bpmn/features/replace/clone-properties.bpmn'), @@ -754,7 +767,7 @@ function integrationTest(ids) { */ function copy(ids) { - return TestHelper.getBpmnJS().invoke(function(copyPaste, elementRegistry) { + return getBpmnJS().invoke(function(copyPaste, elementRegistry) { var elements = ids.map(function(e) { var element = elementRegistry.get(e.id || e); diff --git a/test/spec/features/copy-paste/DescriptorTree.js b/test/spec/features/copy-paste/DescriptorTree.js index b77ca97a..4e6d6639 100644 --- a/test/spec/features/copy-paste/DescriptorTree.js +++ b/test/spec/features/copy-paste/DescriptorTree.js @@ -3,7 +3,7 @@ var forEach = require('min-dash').forEach; -function DescriptorTree(tree) { +export default function DescriptorTree(tree) { var self = this; @@ -25,8 +25,6 @@ function DescriptorTree(tree) { }); } -module.exports = DescriptorTree; - DescriptorTree.prototype.getLength = function() { return this._length; }; diff --git a/test/spec/features/distribute-elements/BpmnDistributeElementsSpec.js b/test/spec/features/distribute-elements/BpmnDistributeElementsSpec.js index 19e858f2..9a0f6148 100644 --- a/test/spec/features/distribute-elements/BpmnDistributeElementsSpec.js +++ b/test/spec/features/distribute-elements/BpmnDistributeElementsSpec.js @@ -1,12 +1,13 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - -var bpmnDistributeElements = require('lib/features/distribute-elements'), - modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import bpmnDistributeElements from 'lib/features/distribute-elements'; +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; function last(arr) { return arr[arr.length - 1]; diff --git a/test/spec/features/editor-actions/BpmnEditorActionsSpec.js b/test/spec/features/editor-actions/BpmnEditorActionsSpec.js index 8f4e640d..29256416 100644 --- a/test/spec/features/editor-actions/BpmnEditorActionsSpec.js +++ b/test/spec/features/editor-actions/BpmnEditorActionsSpec.js @@ -1,8 +1,9 @@ 'use strict'; -require('../../../TestHelper'); - -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; var pick = require('min-dash').pick; @@ -11,12 +12,12 @@ var getBBox = require('diagram-js/lib/util/Elements').getBBox; var getParent = require('lib/features/modeling/util/ModelingUtil').getParent; -var bpmnEditorActionsModule = require('lib/features/editor-actions'), - modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import bpmnEditorActionsModule from 'lib/features/editor-actions'; +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; -var basicXML = require('../../../fixtures/bpmn/nested-subprocesses.bpmn'), - collaborationXML = require('../../../fixtures/bpmn/collaboration.bpmn'); +var basicXML = require('../../../fixtures/bpmn/nested-subprocesses.bpmn'); +var collaborationXML = require('../../../fixtures/bpmn/collaboration.bpmn'); diff --git a/test/spec/features/global-connect/BpmnGlobalConnectSpec.js b/test/spec/features/global-connect/BpmnGlobalConnectSpec.js index 8d6272e0..81a7bd21 100644 --- a/test/spec/features/global-connect/BpmnGlobalConnectSpec.js +++ b/test/spec/features/global-connect/BpmnGlobalConnectSpec.js @@ -1,10 +1,13 @@ 'use strict'; -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -var modelingModule = require('lib/features/modeling'), - providerModule = require('lib/features/global-connect'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import providerModule from 'lib/features/global-connect'; +import coreModule from 'lib/core'; describe('features/bpmn-global-connect-provider', function() { diff --git a/test/spec/features/keyboard/BpmnKeyBindingsSpec.js b/test/spec/features/keyboard/BpmnKeyBindingsSpec.js index 121a6063..5766e0fb 100644 --- a/test/spec/features/keyboard/BpmnKeyBindingsSpec.js +++ b/test/spec/features/keyboard/BpmnKeyBindingsSpec.js @@ -1,16 +1,21 @@ 'use strict'; -var TestContainer = require('mocha-test-container-support'); +/* global sinon */ -var coreModule = require('lib/core'), - editorActionsModule = require('lib/features/editor-actions'), - keyboardModule = require('lib/features/keyboard'), - modelingModule = require('lib/features/modeling'); +import { + bootstrapViewer, + inject +} from 'test/TestHelper'; + +import TestContainer from 'mocha-test-container-support'; + +import coreModule from 'lib/core'; +import editorActionsModule from 'lib/features/editor-actions'; +import keyboardModule from 'lib/features/keyboard'; +import modelingModule from 'lib/features/modeling'; var createKeyEvent = require('../../../util/KeyEvents').createKeyEvent; -/* global bootstrapViewer, inject, sinon */ - describe('features - keyboard', function() { diff --git a/test/spec/features/label-editing/LabelEditingPreviewSpec.js b/test/spec/features/label-editing/LabelEditingPreviewSpec.js index d5740ffb..9acbebbd 100644 --- a/test/spec/features/label-editing/LabelEditingPreviewSpec.js +++ b/test/spec/features/label-editing/LabelEditingPreviewSpec.js @@ -1,13 +1,16 @@ 'use strict'; -/* global bootstrapViewer, inject */ +import { + bootstrapViewer, + inject +} from 'test/TestHelper'; var pick = require('min-dash').pick; -var labelEditingModule = require('lib/features/label-editing'), - coreModule = require('lib/core'), - draggingModule = require('diagram-js/lib/features/dragging'), - modelingModule = require('lib/features/modeling'); +import labelEditingModule from 'lib/features/label-editing'; +import coreModule from 'lib/core'; +import draggingModule from 'diagram-js/lib/features/dragging'; +import modelingModule from 'lib/features/modeling'; describe('features - label-editing preview', function() { diff --git a/test/spec/features/label-editing/LabelEditingProviderSpec.js b/test/spec/features/label-editing/LabelEditingProviderSpec.js index b81fc766..c83ce921 100644 --- a/test/spec/features/label-editing/LabelEditingProviderSpec.js +++ b/test/spec/features/label-editing/LabelEditingProviderSpec.js @@ -1,39 +1,24 @@ 'use strict'; -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; +import labelEditingModule from 'lib/features/label-editing'; +import coreModule from 'lib/core'; +import draggingModule from 'diagram-js/lib/features/dragging'; +import modelingModule from 'lib/features/modeling'; +import autoPlaceModule from 'lib/features/auto-place'; -var labelEditingModule = require('lib/features/label-editing'), - coreModule = require('lib/core'), - draggingModule = require('diagram-js/lib/features/dragging'), - modelingModule = require('lib/features/modeling'), - autoPlaceModule = require('lib/features/auto-place'); - -var LabelUtil = require('lib/features/label-editing/LabelUtil'); +import { + getLabel +} from 'lib/features/label-editing/LabelUtil'; var MEDIUM_LINE_HEIGHT = 14; var DELTA = 3; -function triggerKeyEvent(element, event, code) { - var e = document.createEvent('Events'); - - if (e.initEvent) { - e.initEvent(event, true, true); - } - - e.keyCode = code; - e.which = code; - - return element.dispatchEvent(e); -} - -function expectBounds(parent, bounds) { - expect(parent.offsetLeft).to.be.closeTo(bounds.x, DELTA); - expect(parent.offsetTop).to.be.closeTo(bounds.y, DELTA); - expect(parent.offsetWidth).to.be.closeTo(bounds.width, DELTA); - expect(parent.offsetHeight).to.be.closeTo(bounds.height, DELTA); -} describe('features - label-editing', function() { @@ -245,7 +230,7 @@ describe('features - label-editing', function() { // given var diagramElement = elementRegistry.get('Task_1'); - var oldLabel = LabelUtil.getLabel(diagramElement); + var oldLabel = getLabel(diagramElement); // when directEditActivate(diagramElement); @@ -254,7 +239,7 @@ describe('features - label-editing', function() { commandStack.undo(); // then - var label = LabelUtil.getLabel(diagramElement); + var label = getLabel(diagramElement); expect(label).to.eql(oldLabel); })); @@ -317,7 +302,7 @@ describe('features - label-editing', function() { var diagramElement = elementRegistry.get(elementId); - var label = LabelUtil.getLabel(diagramElement); + var label = getLabel(diagramElement); // when @@ -334,7 +319,7 @@ describe('features - label-editing', function() { // then // expect update to have happened - label = LabelUtil.getLabel(diagramElement); + label = getLabel(diagramElement); expect(label).to.equal('B'); @@ -343,7 +328,7 @@ describe('features - label-editing', function() { directEditCancel('C'); // expect no label update to have happened - label = LabelUtil.getLabel(diagramElement); + label = getLabel(diagramElement); expect(label).to.equal('B'); }); } @@ -704,3 +689,26 @@ describe('features - label-editing', function() { }); }); + + +// helpers ////////////////// + +function triggerKeyEvent(element, event, code) { + var e = document.createEvent('Events'); + + if (e.initEvent) { + e.initEvent(event, true, true); + } + + e.keyCode = code; + e.which = code; + + return element.dispatchEvent(e); +} + +function expectBounds(parent, bounds) { + expect(parent.offsetLeft).to.be.closeTo(bounds.x, DELTA); + expect(parent.offsetTop).to.be.closeTo(bounds.y, DELTA); + expect(parent.offsetWidth).to.be.closeTo(bounds.width, DELTA); + expect(parent.offsetHeight).to.be.closeTo(bounds.height, DELTA); +} \ No newline at end of file diff --git a/test/spec/features/label-editing/TouchIntegrationSpec.js b/test/spec/features/label-editing/TouchIntegrationSpec.js index 69a51d09..ab2b040b 100644 --- a/test/spec/features/label-editing/TouchIntegrationSpec.js +++ b/test/spec/features/label-editing/TouchIntegrationSpec.js @@ -1,11 +1,8 @@ 'use strict'; -require('../../../TestHelper'); +import TestContainer from 'mocha-test-container-support'; - -var TestContainer = require('mocha-test-container-support'); - -var Modeler = require('lib/Modeler'); +import Modeler from 'lib/Modeler'; describe('direct editing - touch integration', function() { diff --git a/test/spec/features/modeling/AppendShapeSpec.js b/test/spec/features/modeling/AppendShapeSpec.js index 40c28c42..ca28e0c9 100644 --- a/test/spec/features/modeling/AppendShapeSpec.js +++ b/test/spec/features/modeling/AppendShapeSpec.js @@ -1,12 +1,16 @@ 'use strict'; -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -var find = require('min-dash').find; +import { + find +} from 'min-dash'; - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - append shape', function() { diff --git a/test/spec/features/modeling/BendpointsSpec.js b/test/spec/features/modeling/BendpointsSpec.js index 22640928..76e71b04 100644 --- a/test/spec/features/modeling/BendpointsSpec.js +++ b/test/spec/features/modeling/BendpointsSpec.js @@ -1,13 +1,13 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - bendpointsModule = require('diagram-js/lib/features/bendpoints'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import bendpointsModule from 'diagram-js/lib/features/bendpoints'; +import coreModule from 'lib/core'; describe('features/bendpoints', function() { diff --git a/test/spec/features/modeling/BpmnFactorySpec.js b/test/spec/features/modeling/BpmnFactorySpec.js index 54626255..00a15ec2 100644 --- a/test/spec/features/modeling/BpmnFactorySpec.js +++ b/test/spec/features/modeling/BpmnFactorySpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features - bpmn-factory', function() { diff --git a/test/spec/features/modeling/BpmnUpdaterSpec.js b/test/spec/features/modeling/BpmnUpdaterSpec.js index 5b439b7c..52671c17 100644 --- a/test/spec/features/modeling/BpmnUpdaterSpec.js +++ b/test/spec/features/modeling/BpmnUpdaterSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features - bpmn-updater', function() { diff --git a/test/spec/features/modeling/CreateConnectionSpec.js b/test/spec/features/modeling/CreateConnectionSpec.js index e62f3484..9b3ff22a 100644 --- a/test/spec/features/modeling/CreateConnectionSpec.js +++ b/test/spec/features/modeling/CreateConnectionSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - create connection', function() { diff --git a/test/spec/features/modeling/DeleteConnectionSpec.js b/test/spec/features/modeling/DeleteConnectionSpec.js index d03e4ecb..26adff39 100644 --- a/test/spec/features/modeling/DeleteConnectionSpec.js +++ b/test/spec/features/modeling/DeleteConnectionSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - #removeConnection', function() { diff --git a/test/spec/features/modeling/DeleteParticipantSpec.js b/test/spec/features/modeling/DeleteParticipantSpec.js index 69c3ebeb..49a400ab 100644 --- a/test/spec/features/modeling/DeleteParticipantSpec.js +++ b/test/spec/features/modeling/DeleteParticipantSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - delete participant', function() { diff --git a/test/spec/features/modeling/DeleteShapeSpec.js b/test/spec/features/modeling/DeleteShapeSpec.js index e7454797..6d364294 100644 --- a/test/spec/features/modeling/DeleteShapeSpec.js +++ b/test/spec/features/modeling/DeleteShapeSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - #removeShape', function() { diff --git a/test/spec/features/modeling/DropSpec.js b/test/spec/features/modeling/DropSpec.js index 25670b41..6de03852 100644 --- a/test/spec/features/modeling/DropSpec.js +++ b/test/spec/features/modeling/DropSpec.js @@ -1,11 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/move - drop', function() { diff --git a/test/spec/features/modeling/IdClaimSpec.js b/test/spec/features/modeling/IdClaimSpec.js index eeeb424b..1690c397 100644 --- a/test/spec/features/modeling/IdClaimSpec.js +++ b/test/spec/features/modeling/IdClaimSpec.js @@ -1,9 +1,12 @@ 'use strict'; -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - id claim management', function() { diff --git a/test/spec/features/modeling/LabelBoundsSpec.js b/test/spec/features/modeling/LabelBoundsSpec.js index 1456c682..87234664 100644 --- a/test/spec/features/modeling/LabelBoundsSpec.js +++ b/test/spec/features/modeling/LabelBoundsSpec.js @@ -1,10 +1,15 @@ 'use strict'; -/* global bootstrapModeler, inject, sinon */ +/* global sinon */ -var Modeler = require('lib/Modeler'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -var TestContainer = require('mocha-test-container-support'); +import Modeler from 'lib/Modeler'; + +import TestContainer from 'mocha-test-container-support'; var DELTA = 2; diff --git a/test/spec/features/modeling/LabelLayoutingSpec.js b/test/spec/features/modeling/LabelLayoutingSpec.js index 3e154a99..99f5d9bd 100644 --- a/test/spec/features/modeling/LabelLayoutingSpec.js +++ b/test/spec/features/modeling/LabelLayoutingSpec.js @@ -1,17 +1,19 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import coreModule from 'lib/core'; +import bendpointsModule from 'diagram-js/lib/features/bendpoints'; +import modelingModule from 'lib/features/modeling'; +import labelEditingModule from 'lib/features/label-editing'; +import spaceTool from 'diagram-js/lib/features/space-tool'; - -var coreModule = require('lib/core'), - bendpointsModule = require('diagram-js/lib/features/bendpoints'), - modelingModule = require('lib/features/modeling'), - labelEditingModule = require('lib/features/label-editing'), - spaceTool = require('diagram-js/lib/features/space-tool'); - -var canvasEvent = require('../../../util/MockEvents').createCanvasEvent; +import { + createCanvasEvent as canvasEvent +} from '../../../util/MockEvents'; var testModules = [ coreModule, @@ -217,7 +219,6 @@ describe('modeling - label layouting', function() { )); - // TODO(@janstuemmel): solve by connectionSegmentMove refactoring it('up - remove two bendpoints - redundant waypoints', inject( function(elementRegistry, connectionSegmentMove, dragging, bendpointMove) { diff --git a/test/spec/features/modeling/LoggingCroppingConnectionDocking.js b/test/spec/features/modeling/LoggingCroppingConnectionDocking.js index 1c25b16c..e4becc7e 100644 --- a/test/spec/features/modeling/LoggingCroppingConnectionDocking.js +++ b/test/spec/features/modeling/LoggingCroppingConnectionDocking.js @@ -1,13 +1,15 @@ 'use strict'; -var CroppingConnectionDocking = require('diagram-js/lib/layout/CroppingConnectionDocking'); +import CroppingConnectionDocking from 'diagram-js/lib/layout/CroppingConnectionDocking'; -var getOrientation = require('diagram-js/lib/layout/LayoutUtil').getOrientation; +import { + getOrientation +} from 'diagram-js/lib/layout/LayoutUtil'; -var inherits = require('inherits'); +import inherits from 'inherits'; -function LoggingCroppingConnectionDocking(elementRegistry, graphicsFactory) { +export default function LoggingCroppingConnectionDocking(elementRegistry, graphicsFactory) { CroppingConnectionDocking.call(this, elementRegistry, graphicsFactory); } @@ -18,8 +20,6 @@ LoggingCroppingConnectionDocking.$inject = [ inherits(LoggingCroppingConnectionDocking, CroppingConnectionDocking); -module.exports = LoggingCroppingConnectionDocking; - window.noIntersectCount = 0; window.noIntersect = []; diff --git a/test/spec/features/modeling/MoveConnectionSpec.js b/test/spec/features/modeling/MoveConnectionSpec.js index e7446c3f..c2501338 100644 --- a/test/spec/features/modeling/MoveConnectionSpec.js +++ b/test/spec/features/modeling/MoveConnectionSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - move connection', function() { diff --git a/test/spec/features/modeling/MoveElementsSpec.js b/test/spec/features/modeling/MoveElementsSpec.js index b3a955a4..bca65b9b 100644 --- a/test/spec/features/modeling/MoveElementsSpec.js +++ b/test/spec/features/modeling/MoveElementsSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - move elements', function() { diff --git a/test/spec/features/modeling/MoveRulesSpec.js b/test/spec/features/modeling/MoveRulesSpec.js index 741f55b2..dda6e6e3 100644 --- a/test/spec/features/modeling/MoveRulesSpec.js +++ b/test/spec/features/modeling/MoveRulesSpec.js @@ -1,15 +1,18 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import coreModule from 'lib/core'; +import modelingModule from 'lib/features/modeling'; +import moveModule from 'diagram-js/lib/features/move'; +import snappingModule from 'lib/features/snapping'; -var coreModule = require('lib/core'), - modelingModule = require('lib/features/modeling'), - moveModule = require('diagram-js/lib/features/move'), - snappingModule = require('lib/features/snapping'); - -var canvasEvent = require('../../../util/MockEvents').createCanvasEvent; +import { + createCanvasEvent as canvasEvent +} from '../../../util/MockEvents'; describe('features/modeling - move', function() { diff --git a/test/spec/features/modeling/MoveShapeSpec.js b/test/spec/features/modeling/MoveShapeSpec.js index bd977578..22bc1ebd 100644 --- a/test/spec/features/modeling/MoveShapeSpec.js +++ b/test/spec/features/modeling/MoveShapeSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - move shape', function() { diff --git a/test/spec/features/modeling/MoveStressSpec.js b/test/spec/features/modeling/MoveStressSpec.js index 5864274c..a9dac0ca 100644 --- a/test/spec/features/modeling/MoveStressSpec.js +++ b/test/spec/features/modeling/MoveStressSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe.skip('modeling / MoveShape - connection cropping', function() { diff --git a/test/spec/features/modeling/ResizeShapeSpec.js b/test/spec/features/modeling/ResizeShapeSpec.js index 95dc69ce..7d27e71d 100644 --- a/test/spec/features/modeling/ResizeShapeSpec.js +++ b/test/spec/features/modeling/ResizeShapeSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - resize shape', function() { diff --git a/test/spec/features/modeling/SetColorSpec.js b/test/spec/features/modeling/SetColorSpec.js index 34b8cd6c..5e4b05d0 100644 --- a/test/spec/features/modeling/SetColorSpec.js +++ b/test/spec/features/modeling/SetColorSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - set color', function() { diff --git a/test/spec/features/modeling/SpaceToolSpec.js b/test/spec/features/modeling/SpaceToolSpec.js index 61ae0047..8f18ecba 100644 --- a/test/spec/features/modeling/SpaceToolSpec.js +++ b/test/spec/features/modeling/SpaceToolSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - create/remove space', function() { diff --git a/test/spec/features/modeling/UpdateAttachmentSpec.js b/test/spec/features/modeling/UpdateAttachmentSpec.js index 76ad61a5..431958a9 100644 --- a/test/spec/features/modeling/UpdateAttachmentSpec.js +++ b/test/spec/features/modeling/UpdateAttachmentSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - update attachment', function() { diff --git a/test/spec/features/modeling/UpdateLabelSpec.js b/test/spec/features/modeling/UpdateLabelSpec.js index dfef3864..ae734bf0 100644 --- a/test/spec/features/modeling/UpdateLabelSpec.js +++ b/test/spec/features/modeling/UpdateLabelSpec.js @@ -1,9 +1,12 @@ 'use strict'; -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - update label', function() { diff --git a/test/spec/features/modeling/UpdatePropertiesSpec.js b/test/spec/features/modeling/UpdatePropertiesSpec.js index b0d8e83d..1667b216 100644 --- a/test/spec/features/modeling/UpdatePropertiesSpec.js +++ b/test/spec/features/modeling/UpdatePropertiesSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - update properties', function() { diff --git a/test/spec/features/modeling/append/TextAnnotationSpec.js b/test/spec/features/modeling/append/TextAnnotationSpec.js index e43278c5..eae5909a 100644 --- a/test/spec/features/modeling/append/TextAnnotationSpec.js +++ b/test/spec/features/modeling/append/TextAnnotationSpec.js @@ -1,14 +1,16 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import { + find +} from 'min-dash'; - -var find = require('min-dash').find; - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - append text-annotation', function() { diff --git a/test/spec/features/modeling/behavior/AdaptiveLabelPositioningBehaviorSpec.js b/test/spec/features/modeling/behavior/AdaptiveLabelPositioningBehaviorSpec.js index ea54bb12..5078f15d 100644 --- a/test/spec/features/modeling/behavior/AdaptiveLabelPositioningBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/AdaptiveLabelPositioningBehaviorSpec.js @@ -1,13 +1,16 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import { + getOrientation +} from 'diagram-js/lib/layout/LayoutUtil'; -var getOrientation = require('diagram-js/lib/layout/LayoutUtil').getOrientation; - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('modeling/behavior - AdaptiveLabelPositioningBehavior', function() { diff --git a/test/spec/features/modeling/behavior/CompensationAssociationBehaviorSpec.js b/test/spec/features/modeling/behavior/CompensationAssociationBehaviorSpec.js index 2eb96ca4..6c5533c8 100644 --- a/test/spec/features/modeling/behavior/CompensationAssociationBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/CompensationAssociationBehaviorSpec.js @@ -1,10 +1,11 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global inject, bootstrapModeler */ - -var modelingModule = require('lib/features/modeling'); +import modelingModule from 'lib/features/modeling'; describe('modeling/behavior - CompensationAssociation', function() { diff --git a/test/spec/features/modeling/behavior/CreateBoundaryEventBehaviorSpec.js b/test/spec/features/modeling/behavior/CreateBoundaryEventBehaviorSpec.js index e58f2e42..6f8351d8 100644 --- a/test/spec/features/modeling/behavior/CreateBoundaryEventBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/CreateBoundaryEventBehaviorSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling/behavior - create boundary events', function() { diff --git a/test/spec/features/modeling/behavior/CreateParticipantBehaviorSpec.js b/test/spec/features/modeling/behavior/CreateParticipantBehaviorSpec.js index f413bc53..b11a5305 100644 --- a/test/spec/features/modeling/behavior/CreateParticipantBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/CreateParticipantBehaviorSpec.js @@ -1,12 +1,12 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - create participant', function() { diff --git a/test/spec/features/modeling/behavior/DataInputAssociationBehaviorSpec.js b/test/spec/features/modeling/behavior/DataInputAssociationBehaviorSpec.js index 90ee5008..c7358581 100644 --- a/test/spec/features/modeling/behavior/DataInputAssociationBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/DataInputAssociationBehaviorSpec.js @@ -1,12 +1,15 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global inject, bootstrapModeler */ +import { + find +} from 'min-dash'; -var find = require('min-dash').find; - -var modelingModule = require('lib/features/modeling'); +import modelingModule from 'lib/features/modeling'; describe('modeling/behavior - fix DataInputAssociation#targetRef', function() { diff --git a/test/spec/features/modeling/behavior/DataObjectBehaviorSpec.js b/test/spec/features/modeling/behavior/DataObjectBehaviorSpec.js index 0f640967..0a6938a1 100644 --- a/test/spec/features/modeling/behavior/DataObjectBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/DataObjectBehaviorSpec.js @@ -1,13 +1,14 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import { is } from 'lib/util/ModelUtil'; -var is = require('lib/util/ModelUtil').is; - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling/behavior - data object', function() { diff --git a/test/spec/features/modeling/behavior/DataStoreBehaviorSpec.js b/test/spec/features/modeling/behavior/DataStoreBehaviorSpec.js index d7c56cab..e886dad7 100644 --- a/test/spec/features/modeling/behavior/DataStoreBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/DataStoreBehaviorSpec.js @@ -1,11 +1,12 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling/behavior - data store', function() { diff --git a/test/spec/features/modeling/behavior/DropOnFlowBehaviorSpec.js b/test/spec/features/modeling/behavior/DropOnFlowBehaviorSpec.js index c03a1de3..21ef06b9 100644 --- a/test/spec/features/modeling/behavior/DropOnFlowBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/DropOnFlowBehaviorSpec.js @@ -1,17 +1,24 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global inject, bootstrapModeler */ +import { + flatten +} from 'min-dash'; -var flatten = require('min-dash').flatten; +import coreModule from 'lib/core'; +import moveModule from 'diagram-js/lib/features/move'; +import modelingModule from 'lib/features/modeling'; -var coreModule = require('lib/core'), - moveModule = require('diagram-js/lib/features/move'), - modelingModule = require('lib/features/modeling'), - noTouchInteractionModule = { touchInteractionEvents: ['value', null ] }; +var noTouchInteractionModule = { touchInteractionEvents: ['value', null ] }; + +import { + createCanvasEvent as canvasEvent +} from '../../../../util/MockEvents'; -var canvasEvent = require('../../../../util/MockEvents').createCanvasEvent; describe('modeling/behavior - drop on connection', function() { diff --git a/test/spec/features/modeling/behavior/ImportDockingFixSpec.js b/test/spec/features/modeling/behavior/ImportDockingFixSpec.js index e30eec6e..d3efb8c3 100644 --- a/test/spec/features/modeling/behavior/ImportDockingFixSpec.js +++ b/test/spec/features/modeling/behavior/ImportDockingFixSpec.js @@ -1,11 +1,12 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling/behavior - ImportDockingFix', function() { diff --git a/test/spec/features/modeling/behavior/LabelBehaviorSpec.js b/test/spec/features/modeling/behavior/LabelBehaviorSpec.js index ce98ade9..a07ba374 100644 --- a/test/spec/features/modeling/behavior/LabelBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/LabelBehaviorSpec.js @@ -1,13 +1,16 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); - -var LabelUtil = require('lib/util/LabelUtil'); +import { + getExternalLabelMid +} from 'lib/util/LabelUtil'; describe('behavior - LabelBehavior', function() { @@ -168,8 +171,8 @@ describe('behavior - LabelBehavior', function() { // then var expected = { - x: LabelUtil.getExternalLabelMid(sequenceFlowConnection).x - sequenceFlowConnection.label.width / 2, - y: LabelUtil.getExternalLabelMid(sequenceFlowConnection).y - sequenceFlowConnection.label.height / 2 + x: getExternalLabelMid(sequenceFlowConnection).x - sequenceFlowConnection.label.width / 2, + y: getExternalLabelMid(sequenceFlowConnection).y - sequenceFlowConnection.label.height / 2 }; expect({ @@ -194,8 +197,8 @@ describe('behavior - LabelBehavior', function() { // then var expected = { - x: LabelUtil.getExternalLabelMid(sequenceFlowConnection).x - sequenceFlowConnection.label.width / 2, - y: LabelUtil.getExternalLabelMid(sequenceFlowConnection).y - sequenceFlowConnection.label.height / 2 + x: getExternalLabelMid(sequenceFlowConnection).x - sequenceFlowConnection.label.width / 2, + y: getExternalLabelMid(sequenceFlowConnection).y - sequenceFlowConnection.label.height / 2 }; expect({ @@ -220,8 +223,8 @@ describe('behavior - LabelBehavior', function() { // then var expected = { - x: LabelUtil.getExternalLabelMid(sequenceFlowConnection).x - sequenceFlowConnection.label.width / 2, - y: LabelUtil.getExternalLabelMid(sequenceFlowConnection).y - sequenceFlowConnection.label.height / 2 + x: getExternalLabelMid(sequenceFlowConnection).x - sequenceFlowConnection.label.width / 2, + y: getExternalLabelMid(sequenceFlowConnection).y - sequenceFlowConnection.label.height / 2 }; expect({ diff --git a/test/spec/features/modeling/behavior/ReconnectConnectionSpec.js b/test/spec/features/modeling/behavior/ReconnectConnectionSpec.js index 50d2f483..2ce4546c 100644 --- a/test/spec/features/modeling/behavior/ReconnectConnectionSpec.js +++ b/test/spec/features/modeling/behavior/ReconnectConnectionSpec.js @@ -1,11 +1,12 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - reconnect connection', function() { diff --git a/test/spec/features/modeling/behavior/RemoveElementBehaviorSpec.js b/test/spec/features/modeling/behavior/RemoveElementBehaviorSpec.js index 3eb1aab1..076ac649 100644 --- a/test/spec/features/modeling/behavior/RemoveElementBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/RemoveElementBehaviorSpec.js @@ -1,9 +1,12 @@ 'use strict'; -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - remove element behavior', function() { diff --git a/test/spec/features/modeling/behavior/RemoveParticipantBehaviorSpec.js b/test/spec/features/modeling/behavior/RemoveParticipantBehaviorSpec.js index ae2ccda9..c512eb0a 100644 --- a/test/spec/features/modeling/behavior/RemoveParticipantBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/RemoveParticipantBehaviorSpec.js @@ -1,13 +1,14 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import { is } from 'lib/util/ModelUtil'; -var is = require('lib/util/ModelUtil').is; - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - remove participant behavior', function() { diff --git a/test/spec/features/modeling/behavior/ReplaceConnectionBehaviorSpec.js b/test/spec/features/modeling/behavior/ReplaceConnectionBehaviorSpec.js index 3f000852..7c90ca8e 100644 --- a/test/spec/features/modeling/behavior/ReplaceConnectionBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/ReplaceConnectionBehaviorSpec.js @@ -1,17 +1,25 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import { + is +} from 'lib/util/ModelUtil'; -var is = require('lib/util/ModelUtil').is, - find = require('min-dash').find; +import { + find +} from 'min-dash'; -var modelingModule = require('lib/features/modeling'), - moveModule = require('diagram-js/lib/features/move'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import moveModule from 'diagram-js/lib/features/move'; +import coreModule from 'lib/core'; -var canvasEvent = require('../../../../util/MockEvents').createCanvasEvent; +import { + createCanvasEvent as canvasEvent +} from '../../../../util/MockEvents'; function getConnection(source, target, connectionOrType) { diff --git a/test/spec/features/modeling/behavior/ReplaceElementBehaviourSpec.js b/test/spec/features/modeling/behavior/ReplaceElementBehaviourSpec.js index ccb0c41b..50088e9e 100644 --- a/test/spec/features/modeling/behavior/ReplaceElementBehaviourSpec.js +++ b/test/spec/features/modeling/behavior/ReplaceElementBehaviourSpec.js @@ -1,18 +1,24 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import replacePreviewModule from 'lib/features/replace-preview'; +import modelingModule from 'lib/features/modeling'; +import moveModule from 'diagram-js/lib/features/move'; +import coreModule from 'lib/core'; -var replacePreviewModule = require('lib/features/replace-preview'), - modelingModule = require('lib/features/modeling'), - moveModule = require('diagram-js/lib/features/move'), - coreModule = require('lib/core'); +import { is } from 'lib/util/ModelUtil'; -var is = require('lib/util/ModelUtil').is, - canvasEvent = require('../../../../util/MockEvents').createCanvasEvent; +import { + createCanvasEvent as canvasEvent +} from '../../../../util/MockEvents'; -var domQuery = require('min-dom').query; +import { + query as domQuery +} from 'min-dom'; var ATTACH = { attach: true }; diff --git a/test/spec/features/modeling/behavior/ToggleElementCollapseBehaviourSpec.js b/test/spec/features/modeling/behavior/ToggleElementCollapseBehaviourSpec.js index 5c4edd54..a89e0e47 100644 --- a/test/spec/features/modeling/behavior/ToggleElementCollapseBehaviourSpec.js +++ b/test/spec/features/modeling/behavior/ToggleElementCollapseBehaviourSpec.js @@ -1,19 +1,21 @@ 'use strict'; -require('../../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); - -var is = require('lib/util/ModelUtil').is; +import { is } from 'lib/util/ModelUtil'; var testModules = [ modelingModule, coreModule ]; + describe('features/modeling - collapse and expand elements', function() { var diagramXML = require('../../../../fixtures/bpmn/import/collapsed/processWithChildren.bpmn'); diff --git a/test/spec/features/modeling/behavior/UnsetDefaultFlowBehaviorSpec.js b/test/spec/features/modeling/behavior/UnsetDefaultFlowBehaviorSpec.js index 69b1511c..80afc937 100644 --- a/test/spec/features/modeling/behavior/UnsetDefaultFlowBehaviorSpec.js +++ b/test/spec/features/modeling/behavior/UnsetDefaultFlowBehaviorSpec.js @@ -1,9 +1,12 @@ 'use strict'; -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling - delete default connection', function() { diff --git a/test/spec/features/modeling/behavior/util/GeometricUtilSpec.js b/test/spec/features/modeling/behavior/util/GeometricUtilSpec.js index aba61f7a..bea1d85e 100644 --- a/test/spec/features/modeling/behavior/util/GeometricUtilSpec.js +++ b/test/spec/features/modeling/behavior/util/GeometricUtilSpec.js @@ -1,8 +1,12 @@ 'use strict'; -require('../../../../../TestHelper'); - -var GeometricUtil = require('lib/features/modeling/behavior/util/GeometricUtil'); +import { + getDistancePointLine, + getAngle, + getDistancePointPoint, + perpendicularFoot, + rotateVector +} from 'lib/features/modeling/behavior/util/GeometricUtil'; describe('modeling/behavior/util - GeometricUtil', function() { @@ -19,7 +23,7 @@ describe('modeling/behavior/util - GeometricUtil', function() { for (var i=0; i 0 ? 1 : -1; -}; +} -function move(elementIds, delta, targetId, isAttach) { + +export function move(elementIds, delta, targetId, isAttach) { if (typeof elementIds === 'string') { elementIds = [ elementIds ]; @@ -31,7 +35,7 @@ function move(elementIds, delta, targetId, isAttach) { targetId = null; } - return TestHelper.getBpmnJS().invoke(function(canvas, elementRegistry, modeling) { + return getBpmnJS().invoke(function(canvas, elementRegistry, modeling) { function getElement(id) { @@ -57,12 +61,10 @@ function move(elementIds, delta, targetId, isAttach) { }); } -module.exports.move = move; +export function add(attrs, position, target, isAttach) { -function add(attrs, position, target, isAttach) { - - return TestHelper.getBpmnJS().invoke(function(canvas, elementRegistry, modeling) { + return getBpmnJS().invoke(function(canvas, elementRegistry, modeling) { function getElement(id) { @@ -84,12 +86,10 @@ function add(attrs, position, target, isAttach) { }); } -module.exports.add = add; +export function connect(source, target) { -function connect(source, target) { - - return TestHelper.getBpmnJS().invoke(function(canvas, elementRegistry, modeling) { + return getBpmnJS().invoke(function(canvas, elementRegistry, modeling) { function getElement(id) { @@ -112,14 +112,11 @@ function connect(source, target) { }); } -module.exports.connect = connect; -function attach(attrs, position, target) { +export function attach(attrs, position, target) { return add(attrs, position, target, true); } -module.exports.attach = attach; - function getAncestors(element) { var ancestors = []; @@ -139,7 +136,7 @@ function compareZOrder(a, b) { var elementA, elementB; - TestHelper.getBpmnJS().invoke(function(elementRegistry) { + getBpmnJS().invoke(function(elementRegistry) { function getElement(id) { @@ -195,13 +192,11 @@ function compareZOrder(a, b) { var aIndex = sharedRoot.parent.children.indexOf(sharedRoot.a), bIndex = sharedRoot.parent.children.indexOf(sharedRoot.b); - return Math.sign(aIndex - bIndex); + return sign(aIndex - bIndex); } -var forEach = require('min-dash').forEach; - -function expectZOrder() { +export function expectZOrder() { var elements = Array.prototype.slice.call(arguments); @@ -217,6 +212,4 @@ function expectZOrder() { }); return true; -} - -module.exports.expectZOrder = expectZOrder; +} \ No newline at end of file diff --git a/test/spec/features/palette/PaletteProviderSpec.js b/test/spec/features/palette/PaletteProviderSpec.js index ae5a1e4d..0f9f26af 100644 --- a/test/spec/features/palette/PaletteProviderSpec.js +++ b/test/spec/features/palette/PaletteProviderSpec.js @@ -1,15 +1,18 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import modelingModule from 'lib/features/modeling'; +import paletteModule from 'lib/features/palette'; +import coreModule from 'lib/core'; -var modelingModule = require('lib/features/modeling'), - paletteModule = require('lib/features/palette'), - coreModule = require('lib/core'); - -var domQuery = require('min-dom').query, - domQueryAll = require('min-dom').queryAll; +import { + query as domQuery, + queryAll as domQueryAll +} from 'min-dom'; describe('features/palette', function() { diff --git a/test/spec/features/popup-menu/ReplaceMenuProviderSpec.js b/test/spec/features/popup-menu/ReplaceMenuProviderSpec.js index 23e52e58..fb1e0944 100644 --- a/test/spec/features/popup-menu/ReplaceMenuProviderSpec.js +++ b/test/spec/features/popup-menu/ReplaceMenuProviderSpec.js @@ -1,24 +1,33 @@ 'use strict'; -/* global bootstrapModeler, inject */ +import { + bootstrapModeler, + getBpmnJS, + inject +} from 'test/TestHelper'; -var TestHelper = require('../../../TestHelper'); +import { + createEvent as globalEvent +} from '../../../util/MockEvents'; -var globalEvent = require('../../../util/MockEvents').createEvent; +import coreModule from 'lib/core'; +import modelingModule from 'lib/features/modeling'; +import replaceMenuProviderModule from 'lib/features/popup-menu'; +import customRulesModule from '../../../util/custom-rules'; -var coreModule = require('lib/core'), - modelingModule = require('lib/features/modeling'), - replaceMenuProviderModule = require('lib/features/popup-menu'), - customRulesModule = require('../../../util/custom-rules'); +import { + query as domQuery, + classes as domClasses +} from 'min-dom'; -var domQuery = require('min-dom').query, - domClasses = require('min-dom').classes; +import { + find, + matchPattern +} from 'min-dash'; -var find = require('min-dash').find, - matchPattern = require('min-dash').matchPattern; +import { is } from 'lib/util/ModelUtil'; -var is = require('lib/util/ModelUtil').is, - isExpanded = require('lib/util/DiUtil').isExpanded; +import { isExpanded } from 'lib/util/DiUtil'; function queryEntry(popupMenu, id) { return queryPopup(popupMenu, '[data-id="' + id + '"]'); @@ -67,7 +76,7 @@ describe('features/popup-menu - replace menu provider', function() { var openPopup = function(element, offset) { offset = offset || 100; - TestHelper.getBpmnJS().invoke(function(popupMenu) { + getBpmnJS().invoke(function(popupMenu) { popupMenu.create('bpmn-replace', element); diff --git a/test/spec/features/replace-preview/BpmnReplacePreviewSpec.js b/test/spec/features/replace-preview/BpmnReplacePreviewSpec.js index 8d2e0c89..68a4104b 100644 --- a/test/spec/features/replace-preview/BpmnReplacePreviewSpec.js +++ b/test/spec/features/replace-preview/BpmnReplacePreviewSpec.js @@ -1,21 +1,28 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import replacePreviewModule from 'lib/features/replace-preview'; +import moveModule from 'diagram-js/lib/features/move'; +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; -var replacePreviewModule = require('lib/features/replace-preview'), - moveModule = require('diagram-js/lib/features/move'), - modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import { + createCanvasEvent as canvasEvent +} from '../../../util/MockEvents'; -var canvasEvent = require('../../../util/MockEvents').createCanvasEvent; +import { + assign +} from 'min-dash'; -var assign = require('min-dash').assign; - -var svgAttr = require('tiny-svg').attr, - svgClone = require('tiny-svg').clone, - innerSVG = require('tiny-svg').innerSVG; +import { + attr as svgAttr, + clone as svgClone, + innerSVG +} from 'tiny-svg'; describe('features/replace-preview', function() { diff --git a/test/spec/features/replace/BpmnReplaceSpec.js b/test/spec/features/replace/BpmnReplaceSpec.js index 31788703..437e524b 100644 --- a/test/spec/features/replace/BpmnReplaceSpec.js +++ b/test/spec/features/replace/BpmnReplaceSpec.js @@ -1,19 +1,25 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import modelingModule from 'lib/features/modeling'; +import replaceModule from 'lib/features/replace'; +import moveModule from 'diagram-js/lib/features/move'; +import coreModule from 'lib/core'; -var modelingModule = require('lib/features/modeling'), - replaceModule = require('lib/features/replace'), - moveModule = require('diagram-js/lib/features/move'), - coreModule = require('lib/core'); +import { + is +} from 'lib/util/ModelUtil'; -var is = require('lib/util/ModelUtil').is, - isExpanded = require('lib/util/DiUtil').isExpanded, - isInterrupting = require('lib/util/DiUtil').isInterrupting, - isEventSubProcess = require('lib/util/DiUtil').isEventSubProcess, - hasErrorEventDefinition = require('lib/util/DiUtil').hasErrorEventDefinition; +import { + isExpanded, + isInterrupting, + isEventSubProcess, + hasErrorEventDefinition +} from 'lib/util/DiUtil'; describe('features/replace - bpmn replace', function() { diff --git a/test/spec/features/replace/ReplaceRulesSpec.js b/test/spec/features/replace/ReplaceRulesSpec.js index a1584798..457c06ac 100644 --- a/test/spec/features/replace/ReplaceRulesSpec.js +++ b/test/spec/features/replace/ReplaceRulesSpec.js @@ -1,12 +1,13 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ - -var modelingModule = require('lib/features/modeling'), - replaceModule = require('lib/features/replace'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import replaceModule from 'lib/features/replace'; +import coreModule from 'lib/core'; diff --git a/test/spec/features/rules/BpmnRules.dataAssociation.bpmn b/test/spec/features/rules/BpmnRules.dataAssociation.bpmn index 097f6eeb..404aa2fc 100644 --- a/test/spec/features/rules/BpmnRules.dataAssociation.bpmn +++ b/test/spec/features/rules/BpmnRules.dataAssociation.bpmn @@ -24,10 +24,6 @@ - - - - diff --git a/test/spec/features/rules/BpmnRulesSpec.js b/test/spec/features/rules/BpmnRulesSpec.js index 1c05d88a..3ea1bf52 100644 --- a/test/spec/features/rules/BpmnRulesSpec.js +++ b/test/spec/features/rules/BpmnRulesSpec.js @@ -1,15 +1,18 @@ 'use strict'; -var Helper = require('./Helper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -var expectCanConnect = Helper.expectCanConnect, - expectCanDrop = Helper.expectCanDrop, - expectCanMove = Helper.expectCanMove; +import { + expectCanConnect, + expectCanDrop, + expectCanMove +} from './Helper'; -/* global bootstrapModeler, inject */ - -var modelingModule = require('lib/features/modeling'), - coreModule = require('lib/core'); +import modelingModule from 'lib/features/modeling'; +import coreModule from 'lib/core'; describe('features/modeling/rules - BpmnRules', function() { diff --git a/test/spec/features/rules/Helper.js b/test/spec/features/rules/Helper.js index cdbd1ae3..e231570b 100644 --- a/test/spec/features/rules/Helper.js +++ b/test/spec/features/rules/Helper.js @@ -1,13 +1,15 @@ 'use strict'; -var TestHelper = require('../../../TestHelper'); +import { + getBpmnJS +} from 'test/TestHelper'; -function expectCanConnect(source, target, rules) { +export function expectCanConnect(source, target, rules) { var results = {}; - TestHelper.getBpmnJS().invoke(function(elementRegistry, bpmnRules) { + getBpmnJS().invoke(function(elementRegistry, bpmnRules) { source = elementRegistry.get(source); target = elementRegistry.get(target); @@ -35,14 +37,12 @@ function expectCanConnect(source, target, rules) { expect(results).to.eql(rules); } -module.exports.expectCanConnect = expectCanConnect; - -function expectCanDrop(element, target, expectedResult) { +export function expectCanDrop(element, target, expectedResult) { var result; - TestHelper.getBpmnJS().invoke(function(elementRegistry, bpmnRules) { + getBpmnJS().invoke(function(elementRegistry, bpmnRules) { element = elementRegistry.get(element); target = elementRegistry.get(target); @@ -56,14 +56,12 @@ function expectCanDrop(element, target, expectedResult) { expect(result).to.eql(expectedResult); } -module.exports.expectCanDrop = expectCanDrop; - -function expectCanMove(elements, target, rules) { +export function expectCanMove(elements, target, rules) { var results = {}; - TestHelper.getBpmnJS().invoke(function(elementRegistry, bpmnRules) { + getBpmnJS().invoke(function(elementRegistry, bpmnRules) { target = elementRegistry.get(target); @@ -77,6 +75,4 @@ function expectCanMove(elements, target, rules) { }); expect(results).to.eql(rules); -} - -module.exports.expectCanMove = expectCanMove; +} \ No newline at end of file diff --git a/test/spec/features/search/BpmnSearchProviderSpec.js b/test/spec/features/search/BpmnSearchProviderSpec.js index c06eb5b0..52122c99 100644 --- a/test/spec/features/search/BpmnSearchProviderSpec.js +++ b/test/spec/features/search/BpmnSearchProviderSpec.js @@ -1,10 +1,14 @@ 'use strict'; -var coreModule = require('lib/core'), - modelingModule = require('lib/features/modeling'), - bpmnSearchModule = require('lib/features/search'); +import { + bootstrapViewer, + inject +} from 'test/TestHelper'; + +import coreModule from 'lib/core'; +import modelingModule from 'lib/features/modeling'; +import bpmnSearchModule from 'lib/features/search'; -/* global bootstrapViewer, inject */ describe('features - BPMN search provider', function() { diff --git a/test/spec/features/snapping/BpmnSnappingSpec.js b/test/spec/features/snapping/BpmnSnappingSpec.js index eb8a43e0..82b8bf56 100644 --- a/test/spec/features/snapping/BpmnSnappingSpec.js +++ b/test/spec/features/snapping/BpmnSnappingSpec.js @@ -1,19 +1,22 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import { + createCanvasEvent as canvasEvent +} from '../../../util/MockEvents'; -var canvasEvent = require('../../../util/MockEvents').createCanvasEvent; - -var coreModule = require('lib/core'), - snappingModule = require('lib/features/snapping'), - modelingModule = require('lib/features/modeling'), - createModule = require('diagram-js/lib/features/create'), - resizeModule = require('diagram-js/lib/features/resize'), - moveModule = require('diagram-js/lib/features/move'), - rulesModule = require('lib/features/rules'), - connectModule = require('diagram-js/lib/features/connect'); +import coreModule from 'lib/core'; +import snappingModule from 'lib/features/snapping'; +import modelingModule from 'lib/features/modeling'; +import createModule from 'diagram-js/lib/features/create'; +import resizeModule from 'diagram-js/lib/features/resize'; +import moveModule from 'diagram-js/lib/features/move'; +import rulesModule from 'lib/features/rules'; +import connectModule from 'diagram-js/lib/features/connect'; describe('features/snapping - BpmnSnapping', function() { diff --git a/test/spec/features/snapping/BpmnSnappingUtilSpec.js b/test/spec/features/snapping/BpmnSnappingUtilSpec.js index b2a61d90..8eaebdb2 100644 --- a/test/spec/features/snapping/BpmnSnappingUtilSpec.js +++ b/test/spec/features/snapping/BpmnSnappingUtilSpec.js @@ -1,13 +1,13 @@ 'use strict'; -require('test/TestHelper'); - -/* global bootstrapModeler, inject */ - +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; var getParticipantSizeConstraints = require('lib/features/snapping/BpmnSnappingUtil').getParticipantSizeConstraints; -var coreModule = require('lib/core'); +import coreModule from 'lib/core'; var LANE_MIN_HEIGHT = 60, LANE_RIGHT_PADDING = 20, diff --git a/test/spec/i18n/custom-translate/custom-translate.js b/test/spec/i18n/custom-translate/custom-translate.js index 9fcb9171..ab9e977b 100644 --- a/test/spec/i18n/custom-translate/custom-translate.js +++ b/test/spec/i18n/custom-translate/custom-translate.js @@ -1,8 +1,8 @@ 'use strict'; -var translate = require('diagram-js/lib/i18n/translate/translate'); +import translate from 'diagram-js/lib/i18n/translate/translate'; -module.exports = function customTranslate(template, replacements) { +export default function customTranslate(template, replacements) { if (template === 'Remove') { template = 'Eliminar'; } @@ -12,4 +12,4 @@ module.exports = function customTranslate(template, replacements) { } return translate(template, replacements); -}; \ No newline at end of file +} \ No newline at end of file diff --git a/test/spec/i18n/custom-translate/index.js b/test/spec/i18n/custom-translate/index.js index da7cc3bd..55503794 100644 --- a/test/spec/i18n/custom-translate/index.js +++ b/test/spec/i18n/custom-translate/index.js @@ -1,3 +1,5 @@ -module.exports = { - translate: [ 'value', require('./custom-translate') ] +import customTranslate from './custom-translate'; + +export default { + translate: [ 'value', customTranslate ] }; \ No newline at end of file diff --git a/test/spec/i18n/translateSpec.js b/test/spec/i18n/translateSpec.js index 7dc1a5a4..37434da0 100644 --- a/test/spec/i18n/translateSpec.js +++ b/test/spec/i18n/translateSpec.js @@ -1,18 +1,19 @@ 'use strict'; +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; + // skipping this file during translation extraction var skip = window.__env__ && window.__env__.TRANSLATIONS === 'enabled'; -require('test/TestHelper'); - -/* global bootstrapModeler, inject */ - -var coreModule = require('lib/core'), - translateModule = require('diagram-js/lib/i18n/translate'), - customTranslateModule = require('./custom-translate'), - modelingModule = require('lib/features/modeling'), - paletteModule = require('lib/features/palette'), - contextPadModule = require('lib/features/context-pad'); +import coreModule from 'lib/core'; +import translateModule from 'diagram-js/lib/i18n/translate'; +import customTranslateModule from './custom-translate'; +import modelingModule from 'lib/features/modeling'; +import paletteModule from 'lib/features/palette'; +import contextPadModule from 'lib/features/context-pad'; var diagramXML = require('test/fixtures/bpmn/simple.bpmn'); diff --git a/test/spec/import/ImporterSpec.js b/test/spec/import/ImporterSpec.js index ee2b5e1a..da6fd5b6 100644 --- a/test/spec/import/ImporterSpec.js +++ b/test/spec/import/ImporterSpec.js @@ -1,19 +1,29 @@ 'use strict'; -var TestContainer = require('mocha-test-container-support'); +import TestContainer from 'mocha-test-container-support'; -var Diagram = require('diagram-js/lib/Diagram'), - BpmnModdle = require('bpmn-moddle'), - importBpmnDiagram = require('lib/import/Importer').importBpmnDiagram, - Viewer = require('lib/Viewer'); +import Diagram from 'diagram-js/lib/Diagram'; +import BpmnModdle from 'bpmn-moddle'; -var domMatches = require('min-dom').matches; +import { + importBpmnDiagram +} from 'lib/import/Importer'; -var getChildrenGfx = require('diagram-js/lib/util/GraphicsUtil').getChildren; +import Viewer from 'lib/Viewer'; -var find = require('min-dash').find; +import { + matches as domMatches +} from 'min-dom'; -var is = require('lib/util/ModelUtil').is; +import { + getChildren as getChildrenGfx +} from 'diagram-js/lib/util/GraphicsUtil'; + +import { + find +} from 'min-dash'; + +import { is } from 'lib/util/ModelUtil'; describe('import - Importer', function() { diff --git a/test/spec/import/ModelWiringSpec.js b/test/spec/import/ModelWiringSpec.js index 5485d85d..c69e70f2 100644 --- a/test/spec/import/ModelWiringSpec.js +++ b/test/spec/import/ModelWiringSpec.js @@ -1,11 +1,11 @@ 'use strict'; -require('../../TestHelper'); +import { + bootstrapViewer, + inject +} from 'test/TestHelper'; -/* global bootstrapViewer, inject */ - - -var is = require('lib/util/ModelUtil').is; +import { is } from 'lib/util/ModelUtil'; describe('import - model wiring', function() { diff --git a/test/spec/import/elements/AssociationSpec.js b/test/spec/import/elements/AssociationSpec.js index 5eb4ad36..961b683c 100644 --- a/test/spec/import/elements/AssociationSpec.js +++ b/test/spec/import/elements/AssociationSpec.js @@ -1,8 +1,9 @@ 'use strict'; -require('../../../TestHelper'); - -/* global bootstrapViewer, inject */ +import { + bootstrapViewer, + inject +} from 'test/TestHelper'; describe('import - associations', function() { diff --git a/test/spec/import/elements/CollapsedSpec.js b/test/spec/import/elements/CollapsedSpec.js index 4a48d362..ae38c576 100644 --- a/test/spec/import/elements/CollapsedSpec.js +++ b/test/spec/import/elements/CollapsedSpec.js @@ -1,8 +1,9 @@ 'use strict'; -require('../../../TestHelper'); - -/* global bootstrapViewer, inject */ +import { + bootstrapViewer, + inject +} from 'test/TestHelper'; describe('import - collapsed container', function() { diff --git a/test/spec/import/elements/LabelSpec.js b/test/spec/import/elements/LabelSpec.js index ae631d3d..e0898e7f 100644 --- a/test/spec/import/elements/LabelSpec.js +++ b/test/spec/import/elements/LabelSpec.js @@ -1,16 +1,10 @@ 'use strict'; -require('../../../TestHelper'); +import { + bootstrapViewer, + inject +} from 'test/TestHelper'; -/* global bootstrapViewer, inject */ - - -function getCenter(element) { - return { - x: element.x + Math.ceil(element.width / 2), - y: element.y + Math.ceil(element.height / 2) - }; -} describe('import - labels', function() { @@ -79,3 +73,13 @@ describe('import - labels', function() { }); }); + + +// helper //////////////// + +function getCenter(element) { + return { + x: element.x + Math.ceil(element.width / 2), + y: element.y + Math.ceil(element.height / 2) + }; +} \ No newline at end of file diff --git a/test/spec/util/ModelCloneHelperSpec.js b/test/spec/util/ModelCloneHelperSpec.js index 6ac29f5b..573b4664 100644 --- a/test/spec/util/ModelCloneHelperSpec.js +++ b/test/spec/util/ModelCloneHelperSpec.js @@ -1,21 +1,19 @@ 'use strict'; -require('../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import coreModule from 'lib/core'; +import modelingModule from 'lib/features/modeling'; -var coreModule = require('lib/core'); -var modelingModule = require('lib/features/modeling'); +import ModelCloneHelper from 'lib/util/model/ModelCloneHelper'; -var ModelCloneHelper = require('lib/util/model/ModelCloneHelper'); +import camundaPackage from '../../fixtures/json/model/camunda'; -var camundaPackage = require('../../fixtures/json/model/camunda'); +import camundaModdleModule from './camunda-moddle'; -var camundaModdleModule = require('./camunda-moddle'); - -function getProp(element, property) { - return element && element.$model.properties.get(element, property); -} describe('util/clone/ModelCloneHelper', function() { @@ -385,3 +383,10 @@ describe('util/clone/ModelCloneHelper', function() { }); }); + + +// helpers //////////// + +function getProp(element, property) { + return element && element.$model.properties.get(element, property); +} \ No newline at end of file diff --git a/test/spec/util/ModelUtilSpec.js b/test/spec/util/ModelUtilSpec.js index 87f38a3e..6315be9a 100644 --- a/test/spec/util/ModelUtilSpec.js +++ b/test/spec/util/ModelUtilSpec.js @@ -1,20 +1,28 @@ 'use strict'; -require('../../TestHelper'); +import { + bootstrapModeler, + inject +} from 'test/TestHelper'; -/* global bootstrapModeler, inject */ +import coreModule from 'lib/core'; +import modelingModule from 'lib/features/modeling'; -var coreModule = require('lib/core'), - modelingModule = require('lib/features/modeling'); - -var ModelUtil = require('lib/util/ModelUtil'); +import { + is +} from 'lib/util/ModelUtil'; describe('util/ModelUtil', function() { var diagramXML = require('../../fixtures/bpmn/simple.bpmn'); - beforeEach(bootstrapModeler(diagramXML, { modules: [ coreModule, modelingModule ] })); + beforeEach(bootstrapModeler(diagramXML, { + modules: [ + coreModule, + modelingModule + ] + })); it('should work with diagram element', inject(function(elementFactory) { @@ -23,11 +31,11 @@ describe('util/ModelUtil', function() { var messageFlowConnection = elementFactory.createConnection({ type: 'bpmn:MessageFlow' }); // then - expect(ModelUtil.is(messageFlowConnection, 'bpmn:MessageFlow')).to.be.true; - expect(ModelUtil.is(messageFlowConnection, 'bpmn:BaseElement')).to.be.true; + expect(is(messageFlowConnection, 'bpmn:MessageFlow')).to.be.true; + expect(is(messageFlowConnection, 'bpmn:BaseElement')).to.be.true; - expect(ModelUtil.is(messageFlowConnection, 'bpmn:SequenceFlow')).to.be.false; - expect(ModelUtil.is(messageFlowConnection, 'bpmn:Task')).to.be.false; + expect(is(messageFlowConnection, 'bpmn:SequenceFlow')).to.be.false; + expect(is(messageFlowConnection, 'bpmn:Task')).to.be.false; })); @@ -37,10 +45,10 @@ describe('util/ModelUtil', function() { var gateway = bpmnFactory.create('bpmn:Gateway'); // then - expect(ModelUtil.is(gateway, 'bpmn:Gateway')).to.be.true; - expect(ModelUtil.is(gateway, 'bpmn:BaseElement')).to.be.true; + expect(is(gateway, 'bpmn:Gateway')).to.be.true; + expect(is(gateway, 'bpmn:BaseElement')).to.be.true; - expect(ModelUtil.is(gateway, 'bpmn:SequenceFlow')).to.be.false; + expect(is(gateway, 'bpmn:SequenceFlow')).to.be.false; })); @@ -50,7 +58,7 @@ describe('util/ModelUtil', function() { var foo = { businessObject: 'BAR' }; // then - expect(ModelUtil.is(foo, 'FOO')).to.be.false; + expect(is(foo, 'FOO')).to.be.false; })); @@ -60,7 +68,7 @@ describe('util/ModelUtil', function() { var foo = { }; // then - expect(ModelUtil.is(foo, 'FOO')).to.be.false; + expect(is(foo, 'FOO')).to.be.false; })); }); \ No newline at end of file diff --git a/test/spec/util/camunda-moddle.js b/test/spec/util/camunda-moddle.js index 43227445..68a65119 100644 --- a/test/spec/util/camunda-moddle.js +++ b/test/spec/util/camunda-moddle.js @@ -1,6 +1,8 @@ 'use strict'; -var some = require('min-dash').some; +import { + some +} from 'min-dash'; var ALLOWED_TYPES = { FailedJobRetryTimeCycle: [ @@ -55,7 +57,8 @@ function CamundaModdleExtension(eventBus) { CamundaModdleExtension.$inject = [ 'eventBus' ]; -CamundaModdleExtension.prototype.canCloneProperty = function(newElement, refTopLevelProperty, propDescriptor) { +CamundaModdleExtension.prototype.canCloneProperty = function( + newElement, refTopLevelProperty, propDescriptor) { if (isAllowed('camunda:FailedJobRetryTimeCycle', propDescriptor, newElement)) { return includesType(newElement.eventDefinitions, 'bpmn:TimerEventDefinition') || @@ -69,7 +72,8 @@ CamundaModdleExtension.prototype.canCloneProperty = function(newElement, refTopL } }; -module.exports = { + +export default { __init__: [ 'camundaModdleExtension' ], camundaModdleExtension: [ 'type', CamundaModdleExtension ] }; diff --git a/test/util/KeyEvents.js b/test/util/KeyEvents.js index 7bac39d6..9e823d96 100644 --- a/test/util/KeyEvents.js +++ b/test/util/KeyEvents.js @@ -1,6 +1,6 @@ 'use strict'; -function createKeyEvent(element, code, ctrlKey) { +export function createKeyEvent(element, code, ctrlKey) { var e = document.createEvent('Events') || new document.defaultView.CustomEvent('keyEvent'); e.keyCode = code; @@ -9,5 +9,3 @@ function createKeyEvent(element, code, ctrlKey) { return e; } - -module.exports.createKeyEvent = createKeyEvent; diff --git a/test/util/MockEvents.js b/test/util/MockEvents.js index cc35e462..a42dbed7 100644 --- a/test/util/MockEvents.js +++ b/test/util/MockEvents.js @@ -1,8 +1,12 @@ 'use strict'; -var assign = require('min-dash').assign; +import { + assign +} from 'min-dash'; -var TestHelper = require('../TestHelper'); +import { + getBpmnJS +} from 'test/TestHelper'; /** @@ -15,9 +19,9 @@ var TestHelper = require('../TestHelper'); * * @return {Event} event, scoped to the given canvas */ -function createCanvasEvent(position, data) { +export function createCanvasEvent(position, data) { - return TestHelper.getBpmnJS().invoke(function(canvas) { + return getBpmnJS().invoke(function(canvas) { var target = canvas._svg; @@ -32,12 +36,10 @@ function createCanvasEvent(position, data) { }); } -module.exports.createCanvasEvent = createCanvasEvent; +export function createEvent(target, position, data) { -function createEvent(target, position, data) { - - return TestHelper.getBpmnJS().invoke(function(eventBus) { + return getBpmnJS().invoke(function(eventBus) { data = assign({ target: target, x: position.x, @@ -50,6 +52,4 @@ function createEvent(target, position, data) { return eventBus.createEvent(data); }); -} - -module.exports.createEvent = createEvent; +} \ No newline at end of file diff --git a/test/util/custom-rules/CustomRules.js b/test/util/custom-rules/CustomRules.js index a45f1c0c..74e72485 100644 --- a/test/util/custom-rules/CustomRules.js +++ b/test/util/custom-rules/CustomRules.js @@ -1,10 +1,11 @@ 'use strict'; -var inherits = require('inherits'); +import inherits from 'inherits'; -var RuleProvider = require('diagram-js/lib/features/rules/RuleProvider'); +import RuleProvider from 'diagram-js/lib/features/rules/RuleProvider'; -function CustomRules(eventBus) { + +export default function CustomRules(eventBus) { RuleProvider.call(this, eventBus); } @@ -14,6 +15,4 @@ inherits(CustomRules, RuleProvider); CustomRules.prototype.init = function() { // placeholder -}; - -module.exports = CustomRules; \ No newline at end of file +}; \ No newline at end of file diff --git a/test/util/custom-rules/index.js b/test/util/custom-rules/index.js index 4548a717..69cbc264 100644 --- a/test/util/custom-rules/index.js +++ b/test/util/custom-rules/index.js @@ -1,4 +1,6 @@ -module.exports = { +import CustomRules from './CustomRules'; + +export default { __init__: [ 'customRules' ], - customRules: [ 'type', require('./CustomRules') ] + customRules: [ 'type', CustomRules ] };