UNPKG

acud

Version:

acg react 组件库

129 lines • 3.24 kB
import update from 'immutability-helper'; import guid from "rc-util/es/guid"; var _getParentKey = function getParentKey(key, tree) { var parentKey; for (var i = 0; i < tree.length; i++) { var node = tree[i]; if (node.children) { if (node.children.some(function (item) { return item.key === key; })) { parentKey = node.key; } else if (_getParentKey(key, node.children)) { parentKey = _getParentKey(key, node.children); } } } return parentKey; }; export { _getParentKey as getParentKey }; var _editNode = function editNode(node, data) { return data === null || data === void 0 ? void 0 : data.map(function (item) { if (item.key === node.key) { return update(item, { $merge: { isEditable: true, title: item.title } }); } var _children = item.children; if (_children) { return update(item, { children: function children() { return _editNode(node, _children); } }); } return item; }); }; export { _editNode as editNode }; var _saveNode = function saveNode(node, data) { return data.map(function (item) { if (item.key === node.key) { return update(item, { $merge: { title: item.title, isEditable: false, disabled: false } }); } var _children2 = item.children; if (_children2) { return update(item, { children: function children() { return _saveNode(node, _children2); } }); } return item; }); }; export { _saveNode as saveNode }; var _deleteNode = function deleteNode(node, data) { return data.map(function (item) { if (item.key === node.key) { return null; } var _children3 = item.children; if (_children3) { return update(item, { children: function children() { return _deleteNode(node, _children3).filter(function (x) { return x !== null; }); } }); } return item; }); }; export { _deleteNode as deleteNode }; var _changeNode = function changeNode(node, newNodeObj, data) { return data.map(function (item) { if (item.key === node.key) { return update(item, { $merge: newNodeObj }); } var _children4 = item.children; if (_children4) { return update(item, { children: function children() { return _changeNode(node, newNodeObj, _children4); } }); } return item; }); }; export { _changeNode as changeNode }; var _addNode = function addNode(node, data) { return data.map(function (item) { if (item.key === node.key) { var dataNode = { key: "".concat(node.key).concat(guid()), title: '', isEditable: true }; return update(item, { children: function children(_children5) { return update(_children5 || [], { $push: [dataNode] }); } }); } if (item.children) { return update(item, { children: function children() { return _addNode(node, item.children); } }); } return item; }); }; export { _addNode as addNode };