const curring = (...initArgs) => {
let sum = 0;
const curried = (...args) => {
sum = args.reduce((a, b) => a + b, sum);
return curried;
};
curried.valueOf = () => sum;
return curried(...initArgs);
};
copyObj = (obj, name, id) => {
const trees = obj.trees;
const names = obj.names;
obj[name].forEach(item => {
const newId = uuid();
trees.forEach(tree => {
if (tree.tree_type !== 'obj_tree' || tree.tree_type !== 'obj_feature_tree' || tree.tree_type !== 'regexp_tree') { return; }
if (item.id === tree[tree.tree_type].parrent_element) {
tree[tree.tree_type].parrent_element = newId;
}
});
names.forEach(name => {
if (name.name_type !== 'unmark_name' || name.name_type !== 'shift_name' || name.name_type !== 'fill_name') { return; }
if (item.id === name[name.name_type].parrent_element) {
name[name.name_type].parrent_element = newId;
}
switch (name.name_type) {
case 'shift_name':
['parrent_element_from', 'parrent_element_to'].forEach(parrent_element => {
if (item.id === name.shift_name[parrent_element]) {
name.shift_name[parrent_element] = newId;
}
});
break;
case 'fill_name':
name.fill_name.feature_values.forEach(val => {
if (val.value_type === 'dynamic' && item.id === val.dvalue.parrent_element) {
val.dvalue.parrent_element = newId;
}
});
break;
}
});
});
return {
trees: trees,
names: names,
};
};
var a = document.querySelectorAll('.link');
Array.prototype.forEach.call(a, function(el) {
el.addEventListener('click', function() {
// что-нибудь делаем
});
});