@riil-frontend/component-topology 8.0.0-a.1 → 8.0.0-a.11
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.css +1 -1
- package/build/index.js +13 -13
- package/es/core/common/icons/basicIcons.js +1 -1
- package/es/core/common/icons/icon.js +6 -2
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +42 -24
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +7 -2
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.module.scss +4 -0
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +1 -0
- package/es/core/editor/utils/edgeTypeStyleUtil.js +2 -3
- package/es/core/hooks/usePolling.js +3 -3
- package/es/core/models/TopoApp.js +2 -2
- package/es/core/models/tagstips/ElementTagTipConfig.js +1 -1
- package/es/core/models/topoData.js +9 -1
- package/es/core/models/utils/linkUtils.js +31 -63
- package/es/core/services/overview.js +33 -9
- package/es/core/services/topo/basic.js +34 -0
- package/es/core/services/topo/constants.js +1 -0
- package/es/core/services/topo/index.js +4 -0
- package/es/core/store/models/topoConfig.js +6 -1
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +124 -251
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +4 -2
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +2 -2
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useAlarmAndRiskData.js +171 -0
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useMetricModels.js +3 -3
- package/es/core/viewer/components/titlebar/widgets/SearchWidget.js +4 -0
- package/es/networkTopo/services/topo/basic.js +4 -2
- package/es/networkTopo/store/linkManager.js +0 -1
- package/es/networkTopo/store/topoCenter.js +0 -1
- package/es/networkTopo/store/topoLinkMod.js +0 -1
- package/lib/core/common/icons/basicIcons.js +1 -1
- package/lib/core/common/icons/icon.js +6 -2
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +43 -24
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +8 -2
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.module.scss +4 -0
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +1 -0
- package/lib/core/editor/utils/edgeTypeStyleUtil.js +2 -3
- package/lib/core/hooks/usePolling.js +3 -3
- package/lib/core/models/TopoApp.js +3 -3
- package/lib/core/models/tagstips/ElementTagTipConfig.js +2 -2
- package/lib/core/models/topoData.js +9 -1
- package/lib/core/models/utils/linkUtils.js +32 -67
- package/lib/core/services/overview.js +32 -8
- package/lib/core/services/topo/basic.js +46 -0
- package/lib/core/services/topo/constants.js +6 -0
- package/lib/core/services/topo/index.js +16 -0
- package/lib/core/store/models/topoConfig.js +6 -1
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +125 -251
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +4 -2
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +2 -2
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useAlarmAndRiskData.js +184 -0
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useMetricModels.js +3 -3
- package/lib/core/viewer/components/titlebar/widgets/SearchWidget.js +4 -0
- package/lib/networkTopo/services/topo/basic.js +4 -2
- package/lib/networkTopo/store/linkManager.js +0 -2
- package/lib/networkTopo/store/topoCenter.js +0 -2
- package/lib/networkTopo/store/topoLinkMod.js +0 -2
- package/package.json +2 -2
- /package/es/core/services/{topo.js → topo/tagtip.js} +0 -0
- /package/lib/core/services/{topo.js → topo/tagtip.js} +0 -0
@@ -4,7 +4,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
4
4
|
|
5
5
|
exports.__esModule = true;
|
6
6
|
exports.buildTopoLinkData = buildTopoLinkData;
|
7
|
-
exports.
|
7
|
+
exports.compatibleWith = void 0;
|
8
8
|
exports.getLinksDetail = getLinksDetail;
|
9
9
|
exports.isCrucialLink = isCrucialLink;
|
10
10
|
exports.isExitLink = isExitLink;
|
@@ -13,11 +13,9 @@ exports.showLinkByConfig = exports.plurals = void 0;
|
|
13
13
|
|
14
14
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
15
15
|
|
16
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
17
|
-
|
18
16
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
19
17
|
|
20
|
-
var
|
18
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
21
19
|
|
22
20
|
var _keyBy = _interopRequireDefault(require("lodash/keyBy"));
|
23
21
|
|
@@ -27,6 +25,8 @@ var _services = require("../../services");
|
|
27
25
|
|
28
26
|
var _htElementUtils = require("../../../utils/htElementUtils");
|
29
27
|
|
28
|
+
var _CiTypeCache = _interopRequireDefault(require("../cache/CiTypeCache"));
|
29
|
+
|
30
30
|
// 查询所有连线
|
31
31
|
// const interfaceTypeMap = {
|
32
32
|
// "network.interface": {
|
@@ -56,43 +56,6 @@ function isExitLink(link) {
|
|
56
56
|
return (link === null || link === void 0 ? void 0 : link.attributes) && !(link !== null && link !== void 0 && link.attributes['destination_id']);
|
57
57
|
}
|
58
58
|
|
59
|
-
var getInterfaceObject = /*#__PURE__*/function () {
|
60
|
-
var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(codes) {
|
61
|
-
var query, promises, result, ifDoc;
|
62
|
-
return _regenerator["default"].wrap(function _callee$(_context) {
|
63
|
-
while (1) {
|
64
|
-
switch (_context.prev = _context.next) {
|
65
|
-
case 0:
|
66
|
-
query = _lodash["default"].compact(_lodash["default"].uniq(codes));
|
67
|
-
promises = query.map(_services.queryModelAsset);
|
68
|
-
_context.next = 4;
|
69
|
-
return Promise.all(promises);
|
70
|
-
|
71
|
-
case 4:
|
72
|
-
result = _context.sent;
|
73
|
-
ifDoc = {};
|
74
|
-
result.map(function (ifItem) {
|
75
|
-
ifDoc[ifItem.code] = {
|
76
|
-
displayName: ifItem.displayName
|
77
|
-
};
|
78
|
-
});
|
79
|
-
return _context.abrupt("return", ifDoc);
|
80
|
-
|
81
|
-
case 8:
|
82
|
-
case "end":
|
83
|
-
return _context.stop();
|
84
|
-
}
|
85
|
-
}
|
86
|
-
}, _callee);
|
87
|
-
}));
|
88
|
-
|
89
|
-
return function getInterfaceObject(_x) {
|
90
|
-
return _ref.apply(this, arguments);
|
91
|
-
};
|
92
|
-
}();
|
93
|
-
|
94
|
-
exports.getInterfaceObject = getInterfaceObject;
|
95
|
-
|
96
59
|
function mergeLinksData(links, linkCis, nodes, interfaceCis, interfaceDoc) {
|
97
60
|
var linkCiMap = (0, _keyBy["default"])(links, 'id');
|
98
61
|
return links.map(function (link) {
|
@@ -135,57 +98,59 @@ function mergeLinksData(links, linkCis, nodes, interfaceCis, interfaceDoc) {
|
|
135
98
|
});
|
136
99
|
}
|
137
100
|
|
138
|
-
function getLinksDetail(
|
101
|
+
function getLinksDetail(_x, _x2) {
|
139
102
|
return _getLinksDetail.apply(this, arguments);
|
140
103
|
}
|
141
104
|
|
142
105
|
function _getLinksDetail() {
|
143
|
-
_getLinksDetail = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
106
|
+
_getLinksDetail = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(links, nodes) {
|
144
107
|
var linkCis, interfaceIds, interfaceTypes, interfaceCis, interfaceDoc;
|
145
|
-
return _regenerator["default"].wrap(function
|
108
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
146
109
|
while (1) {
|
147
|
-
switch (
|
110
|
+
switch (_context.prev = _context.next) {
|
148
111
|
case 0:
|
149
112
|
if (!(!links || !links.length)) {
|
150
|
-
|
113
|
+
_context.next = 2;
|
151
114
|
break;
|
152
115
|
}
|
153
116
|
|
154
|
-
return
|
117
|
+
return _context.abrupt("return", []);
|
155
118
|
|
156
119
|
case 2:
|
157
120
|
// const linkCis = await topoService.relation.batchQueryRelation(
|
158
121
|
// links.map((link) => link.id)
|
159
122
|
// );
|
160
123
|
linkCis = links;
|
161
|
-
interfaceIds = []
|
162
|
-
|
163
|
-
linkCis.
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
124
|
+
interfaceIds = [].concat(linkCis.map(function (item) {
|
125
|
+
return item.attributes.source_id;
|
126
|
+
}), linkCis.map(function (item) {
|
127
|
+
return item.attributes.destination_id;
|
128
|
+
}));
|
129
|
+
interfaceTypes = _lodash["default"].compact(_lodash["default"].uniq([].concat(linkCis.map(function (item) {
|
130
|
+
return item.attributes.source_type;
|
131
|
+
}), linkCis.map(function (item) {
|
132
|
+
return item.attributes.destination_type;
|
133
|
+
})))).filter(function (item) {
|
134
|
+
return item !== 'ip';
|
168
135
|
});
|
169
|
-
|
136
|
+
_context.next = 7;
|
170
137
|
return (0, _services.queryCisByIds)(interfaceIds);
|
171
138
|
|
172
|
-
case
|
173
|
-
interfaceCis =
|
174
|
-
|
175
|
-
return
|
176
|
-
return item !== 'ip';
|
177
|
-
}));
|
139
|
+
case 7:
|
140
|
+
interfaceCis = _context.sent;
|
141
|
+
_context.next = 10;
|
142
|
+
return _CiTypeCache["default"].getCiTypeMap(interfaceTypes);
|
178
143
|
|
179
|
-
case
|
180
|
-
interfaceDoc =
|
181
|
-
return
|
144
|
+
case 10:
|
145
|
+
interfaceDoc = _context.sent;
|
146
|
+
return _context.abrupt("return", mergeLinksData(links, linkCis, nodes, interfaceCis, interfaceDoc));
|
182
147
|
|
183
|
-
case
|
148
|
+
case 12:
|
184
149
|
case "end":
|
185
|
-
return
|
150
|
+
return _context.stop();
|
186
151
|
}
|
187
152
|
}
|
188
|
-
},
|
153
|
+
}, _callee);
|
189
154
|
}));
|
190
155
|
return _getLinksDetail.apply(this, arguments);
|
191
156
|
}
|
@@ -13,6 +13,10 @@ var _componentTopologyUtils = require("@riil-frontend/component-topology-utils")
|
|
13
13
|
|
14
14
|
var _cmdb = require("./cmdb");
|
15
15
|
|
16
|
+
// 机房可上架设备类型缓存数据
|
17
|
+
var roomDeviceTypeList = null; // 资源子组件缓存
|
18
|
+
|
19
|
+
var ciComponentsMap = {};
|
16
20
|
var _default = {
|
17
21
|
/**
|
18
22
|
* 根据资源id获取风险
|
@@ -46,19 +50,31 @@ var _default = {
|
|
46
50
|
*/
|
47
51
|
queryAllComponentsByCiId: function queryAllComponentsByCiId(id) {
|
48
52
|
return (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
|
53
|
+
var components;
|
49
54
|
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
50
55
|
while (1) {
|
51
56
|
switch (_context2.prev = _context2.next) {
|
52
57
|
case 0:
|
53
|
-
|
58
|
+
components = ciComponentsMap[id];
|
59
|
+
|
60
|
+
if (components) {
|
61
|
+
_context2.next = 6;
|
62
|
+
break;
|
63
|
+
}
|
64
|
+
|
65
|
+
_context2.next = 4;
|
54
66
|
return _componentTopologyUtils.request.post('/mdc/v1/api/cmdb/queryAllComponentsByCiId', {
|
55
67
|
id: id
|
56
68
|
});
|
57
69
|
|
58
|
-
case
|
59
|
-
|
70
|
+
case 4:
|
71
|
+
components = _context2.sent;
|
72
|
+
ciComponentsMap[id] = components;
|
60
73
|
|
61
|
-
case
|
74
|
+
case 6:
|
75
|
+
return _context2.abrupt("return", components);
|
76
|
+
|
77
|
+
case 7:
|
62
78
|
case "end":
|
63
79
|
return _context2.stop();
|
64
80
|
}
|
@@ -197,13 +213,21 @@ var _default = {
|
|
197
213
|
while (1) {
|
198
214
|
switch (_context8.prev = _context8.next) {
|
199
215
|
case 0:
|
200
|
-
|
201
|
-
|
216
|
+
if (roomDeviceTypeList) {
|
217
|
+
_context8.next = 4;
|
218
|
+
break;
|
219
|
+
}
|
202
220
|
|
203
|
-
|
204
|
-
return
|
221
|
+
_context8.next = 3;
|
222
|
+
return _componentTopologyUtils.request.post("/room/v1/api/device/type/list", {});
|
205
223
|
|
206
224
|
case 3:
|
225
|
+
roomDeviceTypeList = _context8.sent;
|
226
|
+
|
227
|
+
case 4:
|
228
|
+
return _context8.abrupt("return", roomDeviceTypeList);
|
229
|
+
|
230
|
+
case 5:
|
207
231
|
case "end":
|
208
232
|
return _context8.stop();
|
209
233
|
}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
exports.__esModule = true;
|
6
|
+
exports["default"] = void 0;
|
7
|
+
|
8
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
9
|
+
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
11
|
+
|
12
|
+
var _componentTopologyUtils = require("@riil-frontend/component-topology-utils");
|
13
|
+
|
14
|
+
var _constants = require("./constants");
|
15
|
+
|
16
|
+
var _default = {
|
17
|
+
/**
|
18
|
+
* 保存拓扑绘制数据(第三方库内部结构,无需关心含义)
|
19
|
+
* @param {Number} id Topo ID
|
20
|
+
* @param {String} data ht拓扑序列化数据
|
21
|
+
* @returns
|
22
|
+
*/
|
23
|
+
saveSerializeData: function saveSerializeData(id, data) {
|
24
|
+
return (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
25
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
26
|
+
while (1) {
|
27
|
+
switch (_context.prev = _context.next) {
|
28
|
+
case 0:
|
29
|
+
_context.next = 2;
|
30
|
+
return _componentTopologyUtils.request.post(_constants.TOPO_API_ROOT + "/structure/" + id, {
|
31
|
+
data: data
|
32
|
+
});
|
33
|
+
|
34
|
+
case 2:
|
35
|
+
return _context.abrupt("return", _context.sent);
|
36
|
+
|
37
|
+
case 3:
|
38
|
+
case "end":
|
39
|
+
return _context.stop();
|
40
|
+
}
|
41
|
+
}
|
42
|
+
}, _callee);
|
43
|
+
}))();
|
44
|
+
}
|
45
|
+
};
|
46
|
+
exports["default"] = _default;
|
@@ -0,0 +1,16 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
exports.__esModule = true;
|
6
|
+
exports["default"] = void 0;
|
7
|
+
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
9
|
+
|
10
|
+
var _topo = _interopRequireDefault(require("@riil-frontend/component-topology-common/es/services/topo"));
|
11
|
+
|
12
|
+
var _basic = _interopRequireDefault(require("./basic"));
|
13
|
+
|
14
|
+
var _default = (0, _extends2["default"])({}, _topo["default"], _basic["default"]);
|
15
|
+
|
16
|
+
exports["default"] = _default;
|
@@ -407,7 +407,12 @@ function _default(topoApp) {
|
|
407
407
|
alarmListDefaultOpen: displayConfig.alarmListDefaultOpen,
|
408
408
|
extraConfig: JSON.stringify((0, _extends2["default"])({}, displayConfig, {
|
409
409
|
// 背景图,便于加载拓扑直接显示背景图
|
410
|
-
background: topoApp.store.getModelState("background").current
|
410
|
+
background: topoApp.store.getModelState("background").current,
|
411
|
+
// 增加保存日志,便于排查链路重复问题 2023-4-12 19:27:18
|
412
|
+
saveHistories: [{
|
413
|
+
date: new Date().toLocaleString(),
|
414
|
+
version: topoApp.version
|
415
|
+
}].concat(displayConfig.saveHistories || [])
|
411
416
|
}))
|
412
417
|
};
|
413
418
|
|