chore(group-behavior): move category creation to util

This commit is contained in:
Niklas Kiefer 2019-05-22 08:39:05 +02:00 committed by merge-me[bot]
parent bc4b6cbfd8
commit 57f516ef32
2 changed files with 35 additions and 11 deletions

View File

@ -12,6 +12,9 @@ import {
is
} from '../../../util/ModelUtil';
import {
createCategoryValue
} from './util/CategoryUtil';
/**
* BPMN specific Group behavior
@ -146,17 +149,8 @@ export default function GroupBehavior(eventBus, bpmnFactory, canvas, elementRegi
if (is(businessObject, 'bpmn:Group') && !businessObject.categoryValueRef) {
var definitions = getDefinitions();
var categoryValue = bpmnFactory.create('bpmn:CategoryValue'),
category = bpmnFactory.create('bpmn:Category', {
categoryValue: [ categoryValue ]
});
// add to correct place
collectionAdd(definitions.get('rootElements'), category);
getBusinessObject(category).$parent = definitions;
getBusinessObject(categoryValue).$parent = category;
var definitions = getDefinitions(),
categoryValue = createCategoryValue(definitions, bpmnFactory);
// link the reference to the Group
businessObject.categoryValueRef = categoryValue;

View File

@ -0,0 +1,30 @@
import {
add as collectionAdd
} from 'diagram-js/lib/util/Collections';
import {
getBusinessObject
} from '../../../../util/ModelUtil';
/**
* Creates a new bpmn:CategoryValue inside a new bpmn:Category
*
* @param {ModdleElement} definitions
* @param {BpmnFactory} bpmnFactory
*
* @return {ModdleElement} categoryValue.
*/
export function createCategoryValue(definitions, bpmnFactory) {
var categoryValue = bpmnFactory.create('bpmn:CategoryValue'),
category = bpmnFactory.create('bpmn:Category', {
categoryValue: [ categoryValue ]
});
// add to correct place
collectionAdd(definitions.get('rootElements'), category);
getBusinessObject(category).$parent = definitions;
getBusinessObject(categoryValue).$parent = category;
return categoryValue;
}