bpmn-js/lib/util/model/ModelCloneUtils.js
Nico Rehwaldt cd24b27768 fix(copy-paste): ignore data associations during cloning
* use bpmnFactory for cloning to ensure all relevant
  elements have actual IDs
* don't copy dataAssociations, as they are visual elements
  that will be created during element re-connection

NOTE: This fixes data input association not properly being
wired during target replace, too.

Closes #694, #693
2017-12-11 15:14:31 +01:00

38 lines
661 B
JavaScript

'use strict';
var forEach = require('lodash/collection/forEach');
/**
* These are the properties that should be ignored when cloning elements.
*
* @type {Array}
*/
module.exports.IGNORED_PROPERTIES = [
'lanes',
'incoming',
'outgoing',
'artifacts',
'default',
'flowElements',
'dataInputAssociations',
'dataOutputAssociations'
];
function getProperties(descriptor, keepDefault) {
var properties = [];
forEach(descriptor.properties, function(property) {
if (keepDefault && property.default) {
return;
}
properties.push(property.ns.name);
});
return properties;
}
module.exports.getProperties = getProperties;