@riil-frontend/component-topology 12.1.0-dev.12 → 12.1.0-dev.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/index.js +6 -6
- package/es/core/editor/components/settings/core/updateElementProperty.js +3 -2
- package/es/core/hooks/useTopoEdit.js +14 -16
- package/es/core/models/TopoApp.js +1 -1
- package/es/networkTopo/utils/exitLinkUtil.js +23 -11
- package/lib/core/editor/components/settings/core/updateElementProperty.js +7 -2
- package/lib/core/hooks/useTopoEdit.js +14 -16
- package/lib/core/models/TopoApp.js +1 -1
- package/lib/networkTopo/utils/exitLinkUtil.js +23 -11
- package/package.json +2 -2
@@ -1,7 +1,8 @@
|
|
1
|
+
import Logger from 'loglevel';
|
2
|
+
var rlog = Logger.getLogger('topo');
|
1
3
|
export default function updateElementProperty(topo, name, value) {
|
2
|
-
// const element = topo.getDataModel().getDataById(selection[0].id);
|
3
4
|
var element = topo.getSelectionModel().getFirstData();
|
4
|
-
|
5
|
+
rlog.debug("updateElementProperty. ", {
|
5
6
|
element: element,
|
6
7
|
name: name,
|
7
8
|
value: value
|
@@ -417,8 +417,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
417
417
|
});
|
418
418
|
needDeleteHtDatas.forEach(function (htData) {
|
419
419
|
return dm.remove(htData);
|
420
|
-
}); //
|
421
|
-
// 区域里的所有节点
|
420
|
+
}); // 区域里的所有子节点子区域、新增的链路
|
422
421
|
|
423
422
|
nodeElements = findGroupChildren(elements, group);
|
424
423
|
newLinkElements = findUNExistedLinkElements(elements);
|
@@ -430,17 +429,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
430
429
|
if (topo.linkDynamicStyleExecutor) {
|
431
430
|
topo.linkDynamicStyleExecutor.execute();
|
432
431
|
}
|
433
|
-
}
|
434
|
-
// const createElementsData = {
|
435
|
-
// groups: unExistedElements.filter((item) => item.type === "group"),
|
436
|
-
// nodes: unExistedElements.filter((item) => item.type === "node"),
|
437
|
-
// links: unExistedElements.filter((item) => item.type === "link"),
|
438
|
-
// linkGroups: unExistedElements.filter((item) => item.type === "linkGroup"),
|
439
|
-
// };
|
440
|
-
// const htTopo = topo.getHtTopo()
|
441
|
-
// htTopo.createElements(createElementsData);
|
442
|
-
// rlog.debug('==> ht: createElements ', createElementsData)
|
443
|
-
|
432
|
+
}
|
444
433
|
|
445
434
|
topo.historyManager.endTransaction();
|
446
435
|
|
@@ -773,13 +762,22 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
773
762
|
|
774
763
|
_doBind = function _doBind3() {
|
775
764
|
_doBind = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee7() {
|
776
|
-
var dm, newLinkElements, createElementsData, groupChildren, newGroupChildren, existedGroupChildren, groupElement, newElement, sm;
|
765
|
+
var dm, needDeleteHtDatas, newLinkElements, createElementsData, groupChildren, newGroupChildren, existedGroupChildren, groupElement, newElement, sm;
|
777
766
|
return _regeneratorRuntime.wrap(function _callee7$(_context7) {
|
778
767
|
while (1) switch (_context7.prev = _context7.next) {
|
779
768
|
case 0:
|
780
769
|
dm = htTopo.getGraphView().dm(); // 移除旧节点。先删除后创建,解决ip节点替换ping资源后链路丢失问题
|
781
770
|
|
782
|
-
dm.remove(node); //
|
771
|
+
dm.remove(node); // 先删除多余的元素。解决 区域子节点关联ping,未更新显示链路及删除ip节点
|
772
|
+
|
773
|
+
needDeleteHtDatas = getElements(dm).filter(function (htData) {
|
774
|
+
return htData.a('id') && !elements.find(function (ele) {
|
775
|
+
return ele.id === htData.a('id');
|
776
|
+
});
|
777
|
+
});
|
778
|
+
needDeleteHtDatas.forEach(function (htData) {
|
779
|
+
return dm.remove(htData);
|
780
|
+
}); // 创建
|
783
781
|
|
784
782
|
newLinkElements = findUNExistedLinkElements(elements);
|
785
783
|
createElementsData = null;
|
@@ -843,7 +841,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
843
841
|
sm = htTopo.getGraphView().sm();
|
844
842
|
sm.setSelection([newElement]);
|
845
843
|
|
846
|
-
case
|
844
|
+
case 12:
|
847
845
|
case "end":
|
848
846
|
return _context7.stop();
|
849
847
|
}
|
@@ -24,7 +24,7 @@ import ElementTagTipConfig from "./tagstips/ElementTagTipConfig";
|
|
24
24
|
import SelectionModel from "./SelectionModel";
|
25
25
|
import CiCache from "./cache/CiCache"; // eslint-disable-next-line no-undef
|
26
26
|
|
27
|
-
var version = typeof "12.1.0-dev.
|
27
|
+
var version = typeof "12.1.0-dev.13" === 'string' ? "12.1.0-dev.13" : null;
|
28
28
|
console.info("\u62D3\u6251\u7248\u672C: " + version);
|
29
29
|
/**
|
30
30
|
* 拓扑显示和编辑
|
@@ -239,9 +239,10 @@ function updateLinkTarget(links, nodes) {
|
|
239
239
|
|
240
240
|
|
241
241
|
export function processByConditionResult(topoData, groupConfigs) {
|
242
|
-
var
|
242
|
+
var groups = topoData.groups,
|
243
|
+
nodes = topoData.nodes,
|
243
244
|
links = topoData.links;
|
244
|
-
var ipNodes = getIpNodes(groupConfigs,
|
245
|
+
var ipNodes = getIpNodes(groupConfigs, topoData); // 出口链路目的端设置为IP节点或者ping资源节点id
|
245
246
|
|
246
247
|
var newLinks = updateLinkTarget(links, nodes);
|
247
248
|
return _extends({}, topoData, {
|
@@ -249,15 +250,26 @@ export function processByConditionResult(topoData, groupConfigs) {
|
|
249
250
|
links: newLinks
|
250
251
|
});
|
251
252
|
|
252
|
-
function getIpNodes(groupConfigs,
|
253
|
-
var
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
253
|
+
function getIpNodes(groupConfigs, _ref) {
|
254
|
+
var groups = _ref.groups,
|
255
|
+
nodes = _ref.nodes;
|
256
|
+
var ipNodes = [];
|
257
|
+
groupConfigs.forEach(function (g) {
|
258
|
+
g.condition.linkIps // 过滤ping资源对应的ip节点
|
259
|
+
.filter(function (ip) {
|
260
|
+
return !findPingNode(nodes, ip);
|
261
|
+
}).map(function (ip) {
|
262
|
+
var topoGroup = g.topoGroup;
|
263
|
+
var group = groups.find(function (item) {
|
264
|
+
return item.id === topoGroup.id || item.tag === topoGroup.tag;
|
265
|
+
});
|
266
|
+
ipNodes.push(_extends({}, buildIpNode(ip), {
|
267
|
+
// 解决区域里有ip添加资源ip消失的问题
|
268
|
+
'groupId': group === null || group === void 0 ? void 0 : group.id,
|
269
|
+
'groupTag': group === null || group === void 0 ? void 0 : group.tag
|
270
|
+
}));
|
271
|
+
});
|
260
272
|
});
|
261
|
-
return
|
273
|
+
return ipNodes;
|
262
274
|
}
|
263
275
|
}
|
@@ -1,12 +1,17 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
3
5
|
exports.__esModule = true;
|
4
6
|
exports["default"] = updateElementProperty;
|
5
7
|
|
8
|
+
var _loglevel = _interopRequireDefault(require("loglevel"));
|
9
|
+
|
10
|
+
var rlog = _loglevel["default"].getLogger('topo');
|
11
|
+
|
6
12
|
function updateElementProperty(topo, name, value) {
|
7
|
-
// const element = topo.getDataModel().getDataById(selection[0].id);
|
8
13
|
var element = topo.getSelectionModel().getFirstData();
|
9
|
-
|
14
|
+
rlog.debug("updateElementProperty. ", {
|
10
15
|
element: element,
|
11
16
|
name: name,
|
12
17
|
value: value
|
@@ -446,8 +446,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
446
446
|
});
|
447
447
|
needDeleteHtDatas.forEach(function (htData) {
|
448
448
|
return dm.remove(htData);
|
449
|
-
}); //
|
450
|
-
// 区域里的所有节点
|
449
|
+
}); // 区域里的所有子节点子区域、新增的链路
|
451
450
|
|
452
451
|
nodeElements = (0, _topoData.findGroupChildren)(elements, group);
|
453
452
|
newLinkElements = findUNExistedLinkElements(elements);
|
@@ -459,17 +458,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
459
458
|
if (topo.linkDynamicStyleExecutor) {
|
460
459
|
topo.linkDynamicStyleExecutor.execute();
|
461
460
|
}
|
462
|
-
}
|
463
|
-
// const createElementsData = {
|
464
|
-
// groups: unExistedElements.filter((item) => item.type === "group"),
|
465
|
-
// nodes: unExistedElements.filter((item) => item.type === "node"),
|
466
|
-
// links: unExistedElements.filter((item) => item.type === "link"),
|
467
|
-
// linkGroups: unExistedElements.filter((item) => item.type === "linkGroup"),
|
468
|
-
// };
|
469
|
-
// const htTopo = topo.getHtTopo()
|
470
|
-
// htTopo.createElements(createElementsData);
|
471
|
-
// rlog.debug('==> ht: createElements ', createElementsData)
|
472
|
-
|
461
|
+
}
|
473
462
|
|
474
463
|
topo.historyManager.endTransaction();
|
475
464
|
|
@@ -802,13 +791,22 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
802
791
|
|
803
792
|
_doBind = function _doBind3() {
|
804
793
|
_doBind = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
|
805
|
-
var dm, newLinkElements, createElementsData, groupChildren, newGroupChildren, existedGroupChildren, groupElement, newElement, sm;
|
794
|
+
var dm, needDeleteHtDatas, newLinkElements, createElementsData, groupChildren, newGroupChildren, existedGroupChildren, groupElement, newElement, sm;
|
806
795
|
return _regenerator["default"].wrap(function _callee7$(_context7) {
|
807
796
|
while (1) switch (_context7.prev = _context7.next) {
|
808
797
|
case 0:
|
809
798
|
dm = htTopo.getGraphView().dm(); // 移除旧节点。先删除后创建,解决ip节点替换ping资源后链路丢失问题
|
810
799
|
|
811
|
-
dm.remove(node); //
|
800
|
+
dm.remove(node); // 先删除多余的元素。解决 区域子节点关联ping,未更新显示链路及删除ip节点
|
801
|
+
|
802
|
+
needDeleteHtDatas = (0, _htElementUtils.getElements)(dm).filter(function (htData) {
|
803
|
+
return htData.a('id') && !elements.find(function (ele) {
|
804
|
+
return ele.id === htData.a('id');
|
805
|
+
});
|
806
|
+
});
|
807
|
+
needDeleteHtDatas.forEach(function (htData) {
|
808
|
+
return dm.remove(htData);
|
809
|
+
}); // 创建
|
812
810
|
|
813
811
|
newLinkElements = findUNExistedLinkElements(elements);
|
814
812
|
createElementsData = null;
|
@@ -872,7 +870,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
872
870
|
sm = htTopo.getGraphView().sm();
|
873
871
|
sm.setSelection([newElement]);
|
874
872
|
|
875
|
-
case
|
873
|
+
case 12:
|
876
874
|
case "end":
|
877
875
|
return _context7.stop();
|
878
876
|
}
|
@@ -54,7 +54,7 @@ var _SelectionModel = _interopRequireDefault(require("./SelectionModel"));
|
|
54
54
|
var _CiCache = _interopRequireDefault(require("./cache/CiCache"));
|
55
55
|
|
56
56
|
// eslint-disable-next-line no-undef
|
57
|
-
var version = typeof "12.1.0-dev.
|
57
|
+
var version = typeof "12.1.0-dev.13" === 'string' ? "12.1.0-dev.13" : null;
|
58
58
|
console.info("\u62D3\u6251\u7248\u672C: " + version);
|
59
59
|
/**
|
60
60
|
* 拓扑显示和编辑
|
@@ -251,9 +251,10 @@ function updateLinkTarget(links, nodes) {
|
|
251
251
|
|
252
252
|
|
253
253
|
function processByConditionResult(topoData, groupConfigs) {
|
254
|
-
var
|
254
|
+
var groups = topoData.groups,
|
255
|
+
nodes = topoData.nodes,
|
255
256
|
links = topoData.links;
|
256
|
-
var ipNodes = getIpNodes(groupConfigs,
|
257
|
+
var ipNodes = getIpNodes(groupConfigs, topoData); // 出口链路目的端设置为IP节点或者ping资源节点id
|
257
258
|
|
258
259
|
var newLinks = updateLinkTarget(links, nodes);
|
259
260
|
return (0, _extends2["default"])({}, topoData, {
|
@@ -261,15 +262,26 @@ function processByConditionResult(topoData, groupConfigs) {
|
|
261
262
|
links: newLinks
|
262
263
|
});
|
263
264
|
|
264
|
-
function getIpNodes(groupConfigs,
|
265
|
-
var
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
265
|
+
function getIpNodes(groupConfigs, _ref) {
|
266
|
+
var groups = _ref.groups,
|
267
|
+
nodes = _ref.nodes;
|
268
|
+
var ipNodes = [];
|
269
|
+
groupConfigs.forEach(function (g) {
|
270
|
+
g.condition.linkIps // 过滤ping资源对应的ip节点
|
271
|
+
.filter(function (ip) {
|
272
|
+
return !findPingNode(nodes, ip);
|
273
|
+
}).map(function (ip) {
|
274
|
+
var topoGroup = g.topoGroup;
|
275
|
+
var group = groups.find(function (item) {
|
276
|
+
return item.id === topoGroup.id || item.tag === topoGroup.tag;
|
277
|
+
});
|
278
|
+
ipNodes.push((0, _extends2["default"])({}, buildIpNode(ip), {
|
279
|
+
// 解决区域里有ip添加资源ip消失的问题
|
280
|
+
'groupId': group === null || group === void 0 ? void 0 : group.id,
|
281
|
+
'groupTag': group === null || group === void 0 ? void 0 : group.tag
|
282
|
+
}));
|
283
|
+
});
|
272
284
|
});
|
273
|
-
return
|
285
|
+
return ipNodes;
|
274
286
|
}
|
275
287
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@riil-frontend/component-topology",
|
3
|
-
"version": "12.1.0-dev.
|
3
|
+
"version": "12.1.0-dev.13",
|
4
4
|
"description": "拓扑",
|
5
5
|
"scripts": {
|
6
6
|
"start": "build-scripts start",
|
@@ -123,6 +123,6 @@
|
|
123
123
|
"access": "public"
|
124
124
|
},
|
125
125
|
"license": "MIT",
|
126
|
-
"homepage": "https://unpkg.com/@riil-frontend/component-topology@12.1.0-dev.
|
126
|
+
"homepage": "https://unpkg.com/@riil-frontend/component-topology@12.1.0-dev.13/build/index.html",
|
127
127
|
"gitHead": "2da19ffccbb7ca60a8acf396e39f542c68bb33f5"
|
128
128
|
}
|