@riil-frontend/component-topology 4.0.0-beta.9 → 4.0.2
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/1.js +2 -2
- package/build/2.js +1 -1
- package/build/index.css +1 -1
- package/build/index.js +32 -32
- package/es/components/BatchAttrMetric/setting.js +47 -7
- package/es/components/Drawer/Drawer.js +60 -0
- package/es/components/Drawer/index.js +1 -59
- package/es/constants/ResourceInfoDisplay.js +1 -4
- package/es/core/components/AlarmListPanel/components/AlarmListItem.js +31 -1
- package/es/core/components/AlarmListPanel/hooks/useAlarmList.js +34 -0
- package/es/core/components/AlarmListPanel/index.js +27 -24
- package/es/core/components/AlarmListPanel/index.module.scss +46 -16
- package/es/core/components/DisplaySettingDrawer/EdgeFlow.js +4 -6
- package/es/core/components/DisplaySettingDrawer/EdgeFlowDirection.js +4 -6
- package/es/core/components/DisplaySettingDrawer/NodeTag.js +3 -5
- package/es/core/components/DisplaySettingDrawer/NodeTip.js +4 -5
- package/es/core/components/DisplaySettingDrawer/ResourceDisplay/BasicConfig.js +3 -1
- package/es/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSetting.js +25 -0
- package/es/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSettingDrawer.js +8 -0
- package/es/core/components/TopoView/topoView.js +25 -1
- package/es/core/editor/components/settings/propertyViews/group/DataTab/GroupNodeList.js +4 -2
- package/es/core/editor/components/settings/propertyViews/group/DataTab/RelateData.js +0 -7
- package/es/core/editor/components/settings/propertyViews/group/DataTab/hoooks/useGroupRelateResource.js +13 -12
- package/es/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +4 -1
- package/es/core/editor/components/settings/propertyViews/group/{DataTab/ClusterGroupRelateData → cluster}/ClusterGroupRelateData.js +22 -9
- package/es/core/editor/components/settings/propertyViews/layer/DataTab/NodeList.js +2 -5
- package/es/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeIcon.js +21 -0
- package/es/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +5 -0
- package/es/core/editor/components/settings/propertyViews/node/NodePropertyView.js +3 -1
- package/es/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +36 -0
- package/es/core/editor/components/settings/propertyViews/node/Setting/Setting.js +2 -2
- package/es/core/editor/components/settings/propertyViews/node/data/Data.js +3 -5
- package/es/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +4 -2
- package/es/core/hooks/ht/useHtDataPropertyChangeListener.js +28 -0
- package/es/core/models/AttributeMetricDisplay.js +28 -10
- package/es/core/models/TopoApp.js +12 -7
- package/es/core/models/TopoGraphView.js +3 -1
- package/es/core/models/attributeFormatter/index.js +2 -26
- package/es/core/models/cache/{CiTyeCache.js → CiTypeCache.js} +3 -1
- package/es/core/models/tagstips/ElementTagTipConfig.js +132 -0
- package/es/core/models/tagstips/utils.js +44 -0
- package/es/core/models/utils/linkUtils.js +3 -1
- package/es/core/services/topo.js +30 -0
- package/es/core/utils/edgeUtil.js +8 -0
- package/es/core/utils/graphLinkUtil.js +22 -0
- package/es/core/viewer/components/plugins/ResourceDetail/ResourceDetail.js +1 -1
- package/es/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.js +24 -2
- package/es/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.module.scss +1 -1
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfo.js +7 -101
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfoBlock.js +13 -3
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +166 -89
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +7 -14
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/Configurator/index.js +38 -13
- package/es/core/viewer/components/titlebar/BasicTools.js +5 -2
- package/es/core/viewer/components/titlebar/widgets/NodesDragSwitch.js +4 -2
- package/es/hooks/useAlarm.js +59 -0
- package/es/hooks/useEventData.js +20 -0
- package/es/hooks/useGraphAlarmDisplay.js +68 -18
- package/es/hooks/useManageStatus.js +0 -34
- package/es/hooks/useResourceConfig.js +6 -13
- package/es/hooks/useSelection.js +2 -4
- package/es/hooks/useTopoEdit.js +90 -37
- package/es/models/topoAlarm.js +8 -9
- package/es/models/topoMod.js +16 -8
- package/es/style.js +1 -0
- package/es/topoCenter/components/TopoView.js +6 -1
- package/es/topoCenter/components/Topology.js +7 -1
- package/es/topoCenter/components/editor/propertyViews/LayerRelatedResourceList.js +2 -2
- package/es/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/AddLinkDrawer.js +35 -15
- package/es/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/components/editLinkInfo.js +11 -2
- package/es/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.js +24 -0
- package/es/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.module.scss +23 -0
- package/es/topoCenter/components/viewer/displaySetting/LinkTagV2.js +87 -0
- package/es/topoCenter/getTopoData.js +18 -6
- package/es/topoCenter/hooks/editor/useGroupSortResources.js +16 -0
- package/es/topoCenter/hooks/useEdgeExpand.js +25 -0
- package/es/topoCenter/hooks/useLinkDynamicStyle.js +1 -1
- package/es/topoCenter/hooks/useTopoEdit.js +3 -0
- package/es/topoCenter/models/LinkDynamicStyleExecutor.js +38 -10
- package/es/topoCenter/models/TopoCenter.js +3 -11
- package/es/topoCenter/store/functionAuth.js +2 -0
- package/es/topoCenter/utils/SortResourcesUtil.js +3 -3
- package/es/topoCenter/utils/exportData.js +13 -7
- package/es/topoCenter/utils/linkUtil.js +8 -0
- package/es/utils/ResourceConfigUtil.js +4 -5
- package/es/utils/clusterUtil.js +27 -2
- package/es/utils/htElementDataUtil.js +22 -1
- package/es/utils/htElementUtils.js +22 -9
- package/es/utils/showGraphManageStatusUtil.js +67 -0
- package/es/utils/topoData.js +57 -32
- package/lib/components/BatchAttrMetric/setting.js +47 -6
- package/lib/components/Drawer/Drawer.js +73 -0
- package/lib/components/Drawer/index.js +2 -64
- package/lib/constants/ResourceInfoDisplay.js +1 -4
- package/lib/core/components/AlarmListPanel/components/AlarmListItem.js +31 -1
- package/lib/core/components/AlarmListPanel/hooks/useAlarmList.js +40 -0
- package/lib/core/components/AlarmListPanel/index.js +30 -24
- package/lib/core/components/AlarmListPanel/index.module.scss +46 -16
- package/lib/core/components/DisplaySettingDrawer/EdgeFlow.js +4 -6
- package/lib/core/components/DisplaySettingDrawer/EdgeFlowDirection.js +4 -6
- package/lib/core/components/DisplaySettingDrawer/NodeTag.js +3 -6
- package/lib/core/components/DisplaySettingDrawer/NodeTip.js +4 -6
- package/lib/core/components/DisplaySettingDrawer/ResourceDisplay/BasicConfig.js +3 -1
- package/lib/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSetting.js +39 -0
- package/lib/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSettingDrawer.js +17 -0
- package/lib/core/components/TopoView/topoView.js +28 -1
- package/lib/core/editor/components/settings/propertyViews/group/DataTab/GroupNodeList.js +4 -2
- package/lib/core/editor/components/settings/propertyViews/group/DataTab/RelateData.js +0 -8
- package/lib/core/editor/components/settings/propertyViews/group/DataTab/hoooks/useGroupRelateResource.js +13 -13
- package/lib/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +5 -1
- package/lib/core/editor/components/settings/propertyViews/group/{DataTab/ClusterGroupRelateData → cluster}/ClusterGroupRelateData.js +23 -9
- package/lib/core/editor/components/settings/propertyViews/layer/DataTab/NodeList.js +2 -5
- package/lib/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeIcon.js +31 -0
- package/lib/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +6 -0
- package/lib/core/editor/components/settings/propertyViews/node/NodePropertyView.js +3 -1
- package/lib/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +52 -0
- package/lib/core/editor/components/settings/propertyViews/node/Setting/Setting.js +3 -3
- package/lib/core/editor/components/settings/propertyViews/node/data/Data.js +3 -5
- package/lib/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +5 -2
- package/lib/core/hooks/ht/useHtDataPropertyChangeListener.js +37 -0
- package/lib/core/models/AttributeMetricDisplay.js +28 -10
- package/lib/core/models/TopoApp.js +10 -5
- package/lib/core/models/TopoGraphView.js +3 -1
- package/lib/core/models/attributeFormatter/index.js +2 -26
- package/lib/core/models/cache/{CiTyeCache.js → CiTypeCache.js} +3 -1
- package/lib/core/models/tagstips/ElementTagTipConfig.js +142 -0
- package/lib/core/models/tagstips/utils.js +59 -0
- package/lib/core/models/utils/linkUtils.js +3 -1
- package/lib/core/services/topo.js +40 -0
- package/lib/core/utils/edgeUtil.js +12 -0
- package/lib/core/utils/graphLinkUtil.js +27 -0
- package/lib/core/viewer/components/plugins/ResourceDetail/ResourceDetail.js +1 -1
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.js +25 -2
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.module.scss +1 -1
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfo.js +7 -101
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfoBlock.js +13 -3
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +166 -89
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +7 -14
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/Configurator/index.js +38 -13
- package/lib/core/viewer/components/titlebar/BasicTools.js +6 -2
- package/lib/core/viewer/components/titlebar/widgets/NodesDragSwitch.js +4 -2
- package/lib/hooks/useAlarm.js +61 -0
- package/lib/hooks/useEventData.js +28 -0
- package/lib/hooks/useGraphAlarmDisplay.js +69 -18
- package/lib/hooks/useManageStatus.js +0 -34
- package/lib/hooks/useResourceConfig.js +6 -12
- package/lib/hooks/useSelection.js +1 -5
- package/lib/hooks/useTopoEdit.js +94 -36
- package/lib/models/topoAlarm.js +8 -9
- package/lib/models/topoMod.js +15 -8
- package/lib/style.js +1 -0
- package/lib/topoCenter/components/TopoView.js +8 -1
- package/lib/topoCenter/components/Topology.js +8 -1
- package/lib/topoCenter/components/editor/propertyViews/LayerRelatedResourceList.js +1 -1
- package/lib/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/AddLinkDrawer.js +35 -14
- package/lib/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/components/editLinkInfo.js +11 -2
- package/lib/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.js +35 -0
- package/lib/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.module.scss +23 -0
- package/lib/topoCenter/components/viewer/displaySetting/LinkTagV2.js +102 -0
- package/lib/topoCenter/getTopoData.js +19 -6
- package/lib/topoCenter/hooks/editor/useGroupSortResources.js +21 -0
- package/lib/topoCenter/hooks/useEdgeExpand.js +33 -0
- package/lib/topoCenter/hooks/useLinkDynamicStyle.js +1 -1
- package/lib/topoCenter/hooks/useTopoEdit.js +3 -0
- package/lib/topoCenter/models/LinkDynamicStyleExecutor.js +38 -9
- package/lib/topoCenter/models/TopoCenter.js +3 -12
- package/lib/topoCenter/store/functionAuth.js +2 -0
- package/lib/topoCenter/utils/SortResourcesUtil.js +3 -3
- package/lib/topoCenter/utils/exportData.js +14 -7
- package/lib/topoCenter/utils/linkUtil.js +15 -0
- package/lib/utils/ResourceConfigUtil.js +4 -4
- package/lib/utils/clusterUtil.js +34 -2
- package/lib/utils/htElementDataUtil.js +38 -1
- package/lib/utils/htElementUtils.js +24 -9
- package/lib/utils/showGraphManageStatusUtil.js +78 -0
- package/lib/utils/topoData.js +59 -32
- package/package.json +5 -5
package/lib/models/topoMod.js
CHANGED
|
@@ -13,8 +13,6 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
|
|
|
13
13
|
|
|
14
14
|
var _topo = _interopRequireDefault(require("@riil-frontend/component-topology-common/es/services/topo"));
|
|
15
15
|
|
|
16
|
-
var _model = require("@riil-frontend/component-topology-common/es/services/model");
|
|
17
|
-
|
|
18
16
|
var _moment = _interopRequireDefault(require("moment"));
|
|
19
17
|
|
|
20
18
|
var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-utils/es/rlog"));
|
|
@@ -33,6 +31,8 @@ function _default(topoApp) {
|
|
|
33
31
|
viewState: "view",
|
|
34
32
|
// view, create, 2种模式
|
|
35
33
|
graphLoaded: false,
|
|
34
|
+
graphLoaded2: false,
|
|
35
|
+
// 支持编辑模式完全load完
|
|
36
36
|
// 额外参数
|
|
37
37
|
urlParams: {},
|
|
38
38
|
topoLoadError: false,
|
|
@@ -98,6 +98,7 @@ function _default(topoApp) {
|
|
|
98
98
|
} : null,
|
|
99
99
|
topoId: id,
|
|
100
100
|
graphLoaded: false,
|
|
101
|
+
graphLoaded2: false,
|
|
101
102
|
urlParams: urlParams
|
|
102
103
|
});
|
|
103
104
|
|
|
@@ -138,7 +139,8 @@ function _default(topoApp) {
|
|
|
138
139
|
},
|
|
139
140
|
reset: function reset() {
|
|
140
141
|
this.update({
|
|
141
|
-
graphLoaded: false
|
|
142
|
+
graphLoaded: false,
|
|
143
|
+
graphLoaded2: false
|
|
142
144
|
});
|
|
143
145
|
topoApp.close();
|
|
144
146
|
},
|
|
@@ -169,6 +171,7 @@ function _default(topoApp) {
|
|
|
169
171
|
currentTopo: playload,
|
|
170
172
|
topoId: topoId,
|
|
171
173
|
graphLoaded: false,
|
|
174
|
+
graphLoaded2: false,
|
|
172
175
|
topoPermission: undefined
|
|
173
176
|
});
|
|
174
177
|
|
|
@@ -206,6 +209,7 @@ function _default(topoApp) {
|
|
|
206
209
|
clearData: function clearData() {
|
|
207
210
|
this.update({
|
|
208
211
|
graphLoaded: false,
|
|
212
|
+
graphLoaded2: false,
|
|
209
213
|
topoId: "",
|
|
210
214
|
topoData: null,
|
|
211
215
|
currentTopo: undefined,
|
|
@@ -317,7 +321,7 @@ function _default(topoApp) {
|
|
|
317
321
|
return (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
|
|
318
322
|
var _result$config;
|
|
319
323
|
|
|
320
|
-
var startTime, topoId, data, linkToData, refresh, clear, linkTo, startState, permission, result, topoConfig, _yield$Promise$all, ciTypeMap, customIcons, extraConfig, _combTopoData, topoData, resAndMetrics, endTime;
|
|
324
|
+
var startTime, topoId, data, linkToData, refresh, clear, linkTo, startState, permission, result, topoConfig, _yield$Promise$all, ciTypeMap, customIcons, xxx, extraConfig, _combTopoData, topoData, resAndMetrics, endTime;
|
|
321
325
|
|
|
322
326
|
return _regenerator["default"].wrap(function _callee6$(_context6) {
|
|
323
327
|
while (1) {
|
|
@@ -334,6 +338,7 @@ function _default(topoApp) {
|
|
|
334
338
|
startState = {
|
|
335
339
|
loading: true,
|
|
336
340
|
graphLoaded: false,
|
|
341
|
+
graphLoaded2: false,
|
|
337
342
|
topoLoadError: false,
|
|
338
343
|
linkTo: linkTo
|
|
339
344
|
};
|
|
@@ -444,20 +449,22 @@ function _default(topoApp) {
|
|
|
444
449
|
_rlog["default"].debug("topoMod.initTopoData 查询数据完成", topoId, linkTo, result);
|
|
445
450
|
|
|
446
451
|
_context6.next = 41;
|
|
447
|
-
return Promise.all([topoApp.ciTyeCache.getCiTypeMap((0, _topoData.getCiTypes)(result)), dispatch.customIcon.loadCustomIcons()
|
|
452
|
+
return Promise.all([topoApp.ciTyeCache.getCiTypeMap((0, _topoData.getCiTypes)(result)), dispatch.customIcon.loadCustomIcons() // topoApp.elementTagTipConfig.init(result), // 暂停新配置开发
|
|
453
|
+
]);
|
|
448
454
|
|
|
449
455
|
case 41:
|
|
450
456
|
_yield$Promise$all = _context6.sent;
|
|
451
457
|
ciTypeMap = _yield$Promise$all[0];
|
|
452
458
|
customIcons = _yield$Promise$all[1];
|
|
459
|
+
xxx = _yield$Promise$all[2];
|
|
453
460
|
|
|
454
461
|
_rlog["default"].debug("topoMod.initTopoData Ci属性指标元数据", ciTypeMap);
|
|
455
462
|
|
|
456
463
|
extraConfig = result.global.extraConfig;
|
|
457
|
-
_context6.next =
|
|
464
|
+
_context6.next = 49;
|
|
458
465
|
return dispatch.displayConfig.setConfig(extraConfig);
|
|
459
466
|
|
|
460
|
-
case
|
|
467
|
+
case 49:
|
|
461
468
|
_combTopoData = (0, _topoData.combTopoData)({
|
|
462
469
|
engine: topoApp,
|
|
463
470
|
data: result,
|
|
@@ -488,7 +495,7 @@ function _default(topoApp) {
|
|
|
488
495
|
|
|
489
496
|
topoApp.options.onLoad();
|
|
490
497
|
|
|
491
|
-
case
|
|
498
|
+
case 58:
|
|
492
499
|
case "end":
|
|
493
500
|
return _context6.stop();
|
|
494
501
|
}
|
package/lib/style.js
CHANGED
|
@@ -26,6 +26,7 @@ require('@alifd/next/lib/overlay/style');
|
|
|
26
26
|
require('@alifd/next/lib/checkbox/style');
|
|
27
27
|
require('@alifd/next/lib/box/style');
|
|
28
28
|
require('@alifd/next/lib/list/style');
|
|
29
|
+
require('@alifd/next/lib/card/style');
|
|
29
30
|
require('@alifd/next/lib/radio/style');
|
|
30
31
|
require('@alifd/next/lib/grid/style');
|
|
31
32
|
require('@riil-frontend/component-action-tree/lib/style');
|
|
@@ -41,6 +41,10 @@ var _ViewerTools = _interopRequireDefault(require("./viewer/titlebar/ViewerTools
|
|
|
41
41
|
|
|
42
42
|
var _useEdgeFlow = _interopRequireDefault(require("../hooks/viewer/useEdgeFlow"));
|
|
43
43
|
|
|
44
|
+
var _LinkTagV = _interopRequireDefault(require("./viewer/displaySetting/LinkTagV2"));
|
|
45
|
+
|
|
46
|
+
var _useEdgeExpand = _interopRequireDefault(require("../hooks/useEdgeExpand"));
|
|
47
|
+
|
|
44
48
|
var _excluded = ["topo", "titleBar", "onEnterEdit", "nodataPage", "notfoundPageProps", "noPermissionPageProps"];
|
|
45
49
|
|
|
46
50
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
@@ -69,6 +73,9 @@ function NetworkTopologyCore(props) {
|
|
|
69
73
|
(0, _useEdgeFlow["default"])({
|
|
70
74
|
topo: topo
|
|
71
75
|
});
|
|
76
|
+
(0, _useEdgeExpand["default"])({
|
|
77
|
+
topo: topo
|
|
78
|
+
});
|
|
72
79
|
var relateTopo = (0, _useRelateTopo["default"])({
|
|
73
80
|
topo: topo
|
|
74
81
|
});
|
|
@@ -139,7 +146,7 @@ function NetworkTopologyCore(props) {
|
|
|
139
146
|
showLinkConfig: true,
|
|
140
147
|
// 是否显示链路流动效果配置
|
|
141
148
|
linkTagConfig: function linkTagConfig(params) {
|
|
142
|
-
return /*#__PURE__*/_react["default"].createElement(
|
|
149
|
+
return /*#__PURE__*/_react["default"].createElement(_LinkTagV["default"], params);
|
|
143
150
|
},
|
|
144
151
|
linkTipConfig: function linkTipConfig(params) {
|
|
145
152
|
return /*#__PURE__*/_react["default"].createElement(_LinkTip["default"], params);
|
|
@@ -25,6 +25,8 @@ var _useTopoEdit = _interopRequireDefault(require("../hooks/useTopoEdit"));
|
|
|
25
25
|
|
|
26
26
|
var _EdgePropertyView = _interopRequireDefault(require("./editor/propertyViews/edge/EdgePropertyView"));
|
|
27
27
|
|
|
28
|
+
var _useGroupSortResources2 = _interopRequireDefault(require("../hooks/editor/useGroupSortResources"));
|
|
29
|
+
|
|
28
30
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
29
31
|
|
|
30
32
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -37,6 +39,9 @@ function NetworkTopologyFull(props) {
|
|
|
37
39
|
topo: topo
|
|
38
40
|
});
|
|
39
41
|
var editorProps = (0, _extends2["default"])({
|
|
42
|
+
useGroupSortResources: function useGroupSortResources(nodes) {
|
|
43
|
+
return (0, _useGroupSortResources2["default"])(topo.store, nodes);
|
|
44
|
+
},
|
|
40
45
|
layerRelatedResourceList: _LayerRelatedResourceList["default"],
|
|
41
46
|
multipleElementPropertyViewProps: {
|
|
42
47
|
showElementAlign: true
|
|
@@ -63,7 +68,9 @@ function NetworkTopologyFull(props) {
|
|
|
63
68
|
showTools: showTools,
|
|
64
69
|
elementChangeLayerByDrag: true,
|
|
65
70
|
editor: {
|
|
66
|
-
useNewElementsDeleteEvent: true
|
|
71
|
+
useNewElementsDeleteEvent: true,
|
|
72
|
+
// 通过数仓【添加资源】权限控制 是否启用新建链路功能,
|
|
73
|
+
enableRelateResource: topoEdit.canAddLink
|
|
67
74
|
}
|
|
68
75
|
}
|
|
69
76
|
})
|
|
@@ -44,7 +44,7 @@ function getResourceNodes(store, htNodes) {
|
|
|
44
44
|
function LayerResourceList(props) {
|
|
45
45
|
var topo = props.topo,
|
|
46
46
|
layer = props.layer;
|
|
47
|
-
var nodes = (0, _htElementUtils.
|
|
47
|
+
var nodes = (0, _htElementUtils.getLayerChildren)(layer);
|
|
48
48
|
var resourceNodes = getResourceNodes(topo.store, nodes);
|
|
49
49
|
var data = resourceNodes.map(function (_ref) {
|
|
50
50
|
var node = _ref.node,
|
|
@@ -41,6 +41,8 @@ var _linkUtils = require("../../../../../../core/models/utils/linkUtils");
|
|
|
41
41
|
|
|
42
42
|
var _htElementUtils = require("../../../../../../utils/htElementUtils");
|
|
43
43
|
|
|
44
|
+
var _topoData = require("../../../../../../utils/topoData");
|
|
45
|
+
|
|
44
46
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
45
47
|
|
|
46
48
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -180,7 +182,7 @@ function AddLinkDrawer(props) {
|
|
|
180
182
|
|
|
181
183
|
var handleEvent = /*#__PURE__*/function () {
|
|
182
184
|
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(e) {
|
|
183
|
-
var sourcePorts, targetPorts, source, target, connect_type;
|
|
185
|
+
var sourcePorts, targetPorts, source, target, targetDisableCreatePhyAggLink, connect_type;
|
|
184
186
|
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
185
187
|
while (1) {
|
|
186
188
|
switch (_context2.prev = _context2.next) {
|
|
@@ -206,11 +208,12 @@ function AddLinkDrawer(props) {
|
|
|
206
208
|
setTargetIFDoc(targetPorts.portsDoc);
|
|
207
209
|
source = translationNode(e.source, sourcePorts);
|
|
208
210
|
target = translationNode(e.target, targetPorts);
|
|
211
|
+
targetDisableCreatePhyAggLink = !target.ciData || !(target.ciData.permission.writeable || target.ciData.permission.deleteable);
|
|
209
212
|
editDispatchers.update({
|
|
210
213
|
addLinkIsOpen: true,
|
|
211
214
|
currentLink: null
|
|
212
215
|
});
|
|
213
|
-
connect_type = target.ciType !== "customNode" && target.ipAddress && targetPorts.ports.length > 0 ? "phy" : "exit";
|
|
216
|
+
connect_type = target.ciType !== "customNode" && target.ipAddress && targetPorts.ports.length > 0 && !targetDisableCreatePhyAggLink ? "phy" : "exit";
|
|
214
217
|
setLink({
|
|
215
218
|
source: source,
|
|
216
219
|
target: target,
|
|
@@ -229,21 +232,21 @@ function AddLinkDrawer(props) {
|
|
|
229
232
|
connect_type: connect_type
|
|
230
233
|
}
|
|
231
234
|
});
|
|
232
|
-
_context2.next =
|
|
235
|
+
_context2.next = 23;
|
|
233
236
|
break;
|
|
234
237
|
|
|
235
|
-
case
|
|
236
|
-
_context2.prev =
|
|
238
|
+
case 20:
|
|
239
|
+
_context2.prev = 20;
|
|
237
240
|
_context2.t0 = _context2["catch"](3);
|
|
238
241
|
|
|
239
242
|
_rlog["default"].error("出现异常", _context2.t0);
|
|
240
243
|
|
|
241
|
-
case
|
|
244
|
+
case 23:
|
|
242
245
|
case "end":
|
|
243
246
|
return _context2.stop();
|
|
244
247
|
}
|
|
245
248
|
}
|
|
246
|
-
}, _callee2, null, [[3,
|
|
249
|
+
}, _callee2, null, [[3, 20]]);
|
|
247
250
|
}));
|
|
248
251
|
|
|
249
252
|
return function handleEvent(_x3) {
|
|
@@ -255,7 +258,9 @@ function AddLinkDrawer(props) {
|
|
|
255
258
|
// rlog.debug("设置了起始节点", e);
|
|
256
259
|
//const allData = topo.getData();
|
|
257
260
|
var enableNodes = (0, _htElementUtils.getNodes)(topo.getDataModel());
|
|
258
|
-
topo.view.topoClient.emitEvent("topo_link_set_connectable_nodes", enableNodes)
|
|
261
|
+
topo.view.topoClient.emitEvent("topo_link_set_connectable_nodes", enableNodes.filter(function (ele) {
|
|
262
|
+
return !((0, _htElementUtils.isGroup)(ele) && !ele.a('ciType'));
|
|
263
|
+
}));
|
|
259
264
|
};
|
|
260
265
|
|
|
261
266
|
var initEditLineData = /*#__PURE__*/function () {
|
|
@@ -282,6 +287,7 @@ function AddLinkDrawer(props) {
|
|
|
282
287
|
connect_type = currentLink.attributes["network_link.connect_type"] === "exit" ? "exit" : "phy";
|
|
283
288
|
setLink({
|
|
284
289
|
source: {
|
|
290
|
+
ciData: topo.dataModel.getDataById(currentLink.source),
|
|
285
291
|
id: currentLink.source,
|
|
286
292
|
name: currentLink.attributes["network_link.source_device_id_object"].displayName,
|
|
287
293
|
ciId: currentLink.attributes["network_link.source_device_id"],
|
|
@@ -293,6 +299,7 @@ function AddLinkDrawer(props) {
|
|
|
293
299
|
portsDoc: sourcePorts.portsDoc
|
|
294
300
|
},
|
|
295
301
|
target: {
|
|
302
|
+
ciData: topo.dataModel.getDataById(currentLink.target),
|
|
296
303
|
id: currentLink.target,
|
|
297
304
|
name: currentLink.attributes["network_link.destination_device_id_object"].displayName,
|
|
298
305
|
ciId: currentLink.attributes["network_link.destination_device_id"],
|
|
@@ -329,25 +336,38 @@ function AddLinkDrawer(props) {
|
|
|
329
336
|
initEditLineData();
|
|
330
337
|
}
|
|
331
338
|
}, [addLinkIsOpen]);
|
|
339
|
+
(0, _react.useEffect)(function () {
|
|
340
|
+
if (!addLinkIsOpen) {
|
|
341
|
+
setLink(null);
|
|
342
|
+
}
|
|
343
|
+
}, [addLinkIsOpen]);
|
|
332
344
|
|
|
333
345
|
var getCiTypesConnectable = /*#__PURE__*/function () {
|
|
334
346
|
var _ref4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
|
|
335
|
-
var ciTypesConnectable, nodes, ciIds, ciNodes;
|
|
347
|
+
var ciTypes, ciTypesConnectable, nodes, ciIds, ciNodes, isWriteable;
|
|
336
348
|
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
337
349
|
while (1) {
|
|
338
350
|
switch (_context4.prev = _context4.next) {
|
|
339
351
|
case 0:
|
|
340
|
-
|
|
341
|
-
|
|
352
|
+
ciTypes = (0, _topoData.getCiTypes)(topo.dataModel.getData());
|
|
353
|
+
_context4.next = 3;
|
|
354
|
+
return _topo["default"].networkLink.getCiTypesConnectable(ciTypes);
|
|
342
355
|
|
|
343
|
-
case
|
|
356
|
+
case 3:
|
|
344
357
|
ciTypesConnectable = _context4.sent;
|
|
345
358
|
nodes = (0, _htElementUtils.getNodes)(topo.getDataModel());
|
|
346
359
|
ciIds = [];
|
|
347
360
|
ciNodes = [];
|
|
361
|
+
|
|
362
|
+
isWriteable = function isWriteable(node) {
|
|
363
|
+
var _node$a;
|
|
364
|
+
|
|
365
|
+
return ["delete", "write"].indexOf(node.a("operation")) >= 0 || ((_node$a = node.a('permission')) === null || _node$a === void 0 ? void 0 : _node$a.writeable);
|
|
366
|
+
};
|
|
367
|
+
|
|
348
368
|
nodes.map(function (node) {
|
|
349
369
|
// rlog.debug("过滤属性", node.a("operation"));
|
|
350
|
-
if (ciTypesConnectable[node.a("ciType")] &&
|
|
370
|
+
if (ciTypesConnectable[node.a("ciType")] && isWriteable(node)) {
|
|
351
371
|
ciIds.push(node.id);
|
|
352
372
|
ciNodes.push(node);
|
|
353
373
|
}
|
|
@@ -358,7 +378,7 @@ function AddLinkDrawer(props) {
|
|
|
358
378
|
setCiIdsConnectable(ciIds);
|
|
359
379
|
return _context4.abrupt("return", ciNodes);
|
|
360
380
|
|
|
361
|
-
case
|
|
381
|
+
case 12:
|
|
362
382
|
case "end":
|
|
363
383
|
return _context4.stop();
|
|
364
384
|
}
|
|
@@ -399,6 +419,7 @@ function AddLinkDrawer(props) {
|
|
|
399
419
|
|
|
400
420
|
var attrObject = node._attrObject;
|
|
401
421
|
return {
|
|
422
|
+
ciData: topo.dataModel.getDataById(attrObject.id),
|
|
402
423
|
id: attrObject.id,
|
|
403
424
|
name: attrObject.name,
|
|
404
425
|
ciId: attrObject.id,
|
package/lib/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/components/editLinkInfo.js
CHANGED
|
@@ -49,6 +49,13 @@ var Row = _grid["default"].Row,
|
|
|
49
49
|
function parseValues(values) {
|
|
50
50
|
return (0, _extends2["default"])({}, values);
|
|
51
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* 两端都有编辑/删除权限才能创建物理和聚合链路。
|
|
54
|
+
* 目的没编辑/删除权限时,在添加链路抽屉中链接方式默认出口,物理/聚合置灰不可选
|
|
55
|
+
* @param {*} props
|
|
56
|
+
* @returns
|
|
57
|
+
*/
|
|
58
|
+
|
|
52
59
|
|
|
53
60
|
function EditLinkInfo(props) {
|
|
54
61
|
var _sourceValue$ipAddres2, _sourceValue$portsDoc5, _sourceValue$portsDoc6, _targetValue$portsDoc5, _targetValue$portsDoc6;
|
|
@@ -285,8 +292,10 @@ function EditLinkInfo(props) {
|
|
|
285
292
|
name: "network_link.destination_ipv4",
|
|
286
293
|
maxLength: 128
|
|
287
294
|
});
|
|
288
|
-
};
|
|
295
|
+
}; // 目的没编辑/删除权限时,在添加链路抽屉中链接方式默认出口,物理/聚合置灰不可选
|
|
296
|
+
|
|
289
297
|
|
|
298
|
+
var disableCreatePhyAggLink = target.ciType === "customNode" || !targetValue.ipAddress || targetValue.ports.length === 0 || !lineData.target || isAdd && !(lineData.target.ciData.permission.writeable || lineData.target.ciData.permission.deleteable);
|
|
290
299
|
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
291
300
|
className: _indexModule["default"].editForm
|
|
292
301
|
}, /*#__PURE__*/_react["default"].createElement(_form["default"], {
|
|
@@ -406,7 +415,7 @@ function EditLinkInfo(props) {
|
|
|
406
415
|
}, /*#__PURE__*/_react["default"].createElement(_radio["default"], {
|
|
407
416
|
id: "phy",
|
|
408
417
|
value: "phy",
|
|
409
|
-
disabled:
|
|
418
|
+
disabled: disableCreatePhyAggLink
|
|
410
419
|
}, "\u7269\u7406/\u805A\u5408"), /*#__PURE__*/_react["default"].createElement(_radio["default"], {
|
|
411
420
|
id: "exit",
|
|
412
421
|
value: "exit"
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports["default"] = LinkTagCommonRidioGroup;
|
|
7
|
+
|
|
8
|
+
var _radio = _interopRequireDefault(require("@alifd/next/lib/radio"));
|
|
9
|
+
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var _LinkTagCommonRidioGroupModule = _interopRequireDefault(require("./LinkTagCommonRidioGroup.module.scss"));
|
|
13
|
+
|
|
14
|
+
function LinkTagCommonRidioGroup(props) {
|
|
15
|
+
var value = props.value,
|
|
16
|
+
dataSource = props.dataSource,
|
|
17
|
+
limit = props.limit,
|
|
18
|
+
onChange = props.onChange;
|
|
19
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
|
20
|
+
className: _LinkTagCommonRidioGroupModule["default"].contaienr
|
|
21
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
22
|
+
className: _LinkTagCommonRidioGroupModule["default"].checkboxGroupWrapper
|
|
23
|
+
}, /*#__PURE__*/_react["default"].createElement(_radio["default"].Group, {
|
|
24
|
+
value: typeof value === 'string' ? value : '0',
|
|
25
|
+
itemDirection: "ver",
|
|
26
|
+
onChange: onChange
|
|
27
|
+
}, dataSource.map(function (item) {
|
|
28
|
+
return /*#__PURE__*/_react["default"].createElement(_radio["default"], {
|
|
29
|
+
key: item.value,
|
|
30
|
+
value: item.value
|
|
31
|
+
}, item.label);
|
|
32
|
+
}))));
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
@import "@alifd/next/variables";
|
|
2
|
+
|
|
3
|
+
.contaienr {
|
|
4
|
+
padding: 16px 12px;
|
|
5
|
+
background: #F2F7FD;
|
|
6
|
+
border-radius: 4px;
|
|
7
|
+
|
|
8
|
+
.checkboxGroupWrapper {
|
|
9
|
+
margin: -8px -8px -8px 0;
|
|
10
|
+
|
|
11
|
+
:global {
|
|
12
|
+
.#{$css-prefix}checkbox-group.next-checkbox-group-hoz {
|
|
13
|
+
display: flex;
|
|
14
|
+
flex-flow: row wrap;
|
|
15
|
+
|
|
16
|
+
.#{$css-prefix}checkbox-wrapper {
|
|
17
|
+
margin-left: 8px;
|
|
18
|
+
margin-right: 8px;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
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 _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
12
|
+
var _ResourceInfoDisplay = require("../../../../constants/ResourceInfoDisplay");
|
|
13
|
+
|
|
14
|
+
var _BasicConfig = _interopRequireDefault(require("../../../../core/components/DisplaySettingDrawer/ResourceDisplay/BasicConfig"));
|
|
15
|
+
|
|
16
|
+
var _Setting = _interopRequireDefault(require("../../../../core/components/ResourceViewAttributeSetting/Setting"));
|
|
17
|
+
|
|
18
|
+
var _LinkTagCommonRidioGroup = _interopRequireDefault(require("./LinkTagCommonRidioGroup"));
|
|
19
|
+
|
|
20
|
+
// 默认中可配置内容包括总速率、带宽利用率、发送速率、发送带宽利用率、接收速率、接收带宽利用率
|
|
21
|
+
var CommonOptions = [{
|
|
22
|
+
value: '0',
|
|
23
|
+
label: '无'
|
|
24
|
+
}, {
|
|
25
|
+
value: '1',
|
|
26
|
+
label: '总流速、带宽利用率',
|
|
27
|
+
options: {
|
|
28
|
+
data: ['metric:interface_totalbps', 'metric:bandwidth_utilization']
|
|
29
|
+
}
|
|
30
|
+
}, {
|
|
31
|
+
value: '2',
|
|
32
|
+
label: '发送速率、发送带宽利用率',
|
|
33
|
+
options: {
|
|
34
|
+
data: ['metric:out_rate', 'metric:out_bandwidth_utilization']
|
|
35
|
+
}
|
|
36
|
+
}, {
|
|
37
|
+
value: '3',
|
|
38
|
+
label: '接收速率、接收带宽利用率',
|
|
39
|
+
options: {
|
|
40
|
+
data: ['metric:in_rate', 'metric:in_bandwidth_utilization']
|
|
41
|
+
}
|
|
42
|
+
}];
|
|
43
|
+
|
|
44
|
+
var buildConfig = function buildConfig(item) {
|
|
45
|
+
return {
|
|
46
|
+
type: item.split(':')[0],
|
|
47
|
+
code: item.split(':')[1]
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* 资源标注配置
|
|
52
|
+
* @param {*} props
|
|
53
|
+
* @returns
|
|
54
|
+
*/
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
function LinkTagV2(props, ref) {
|
|
58
|
+
var value = props.value,
|
|
59
|
+
onChange = props.onChange;
|
|
60
|
+
|
|
61
|
+
var handleChange = function handleChange(newValue) {
|
|
62
|
+
// console.error(111, newValue)
|
|
63
|
+
if (!newValue.isCustom) {
|
|
64
|
+
var _CommonOptions$find;
|
|
65
|
+
|
|
66
|
+
var type = newValue.data;
|
|
67
|
+
var config = ((_CommonOptions$find = CommonOptions.find(function (item) {
|
|
68
|
+
return item.value === type;
|
|
69
|
+
})) === null || _CommonOptions$find === void 0 ? void 0 : _CommonOptions$find.options) || {
|
|
70
|
+
data: []
|
|
71
|
+
};
|
|
72
|
+
onChange((0, _extends2["default"])({}, newValue, config, {
|
|
73
|
+
data: config.data.map(buildConfig),
|
|
74
|
+
type: type
|
|
75
|
+
}));
|
|
76
|
+
} else {
|
|
77
|
+
onChange(newValue);
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
return /*#__PURE__*/_react["default"].createElement(_BasicConfig["default"], (0, _extends2["default"])({
|
|
82
|
+
ref: ref
|
|
83
|
+
}, props, {
|
|
84
|
+
value: value ? (0, _extends2["default"])({}, value, {
|
|
85
|
+
data: value.type
|
|
86
|
+
}) : value,
|
|
87
|
+
limit: 2,
|
|
88
|
+
elementType: "link",
|
|
89
|
+
showType: "tag",
|
|
90
|
+
commonOptions: CommonOptions,
|
|
91
|
+
defaultCommonConfig: _ResourceInfoDisplay.DEFAULT_LINK_TAG_COMMON_CONFIG,
|
|
92
|
+
commonSelectWidget: _LinkTagCommonRidioGroup["default"],
|
|
93
|
+
customSettingDrawer: function customSettingDrawer(params) {
|
|
94
|
+
return /*#__PURE__*/_react["default"].createElement(_Setting["default"], params);
|
|
95
|
+
},
|
|
96
|
+
onChange: handleChange
|
|
97
|
+
}));
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
var _default = /*#__PURE__*/_react["default"].forwardRef(LinkTagV2);
|
|
101
|
+
|
|
102
|
+
exports["default"] = _default;
|
|
@@ -23,7 +23,8 @@ var _resourcePermissionUtil = require("./utils/resourcePermissionUtil");
|
|
|
23
23
|
|
|
24
24
|
function addLinkData(_x, _x2) {
|
|
25
25
|
return _addLinkData.apply(this, arguments);
|
|
26
|
-
}
|
|
26
|
+
} // FIXME 业务拓扑不需要链路相关逻辑
|
|
27
|
+
|
|
27
28
|
|
|
28
29
|
function _addLinkData() {
|
|
29
30
|
_addLinkData = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(oldLinks, nodes) {
|
|
@@ -32,10 +33,22 @@ function _addLinkData() {
|
|
|
32
33
|
while (1) {
|
|
33
34
|
switch (_context.prev = _context.next) {
|
|
34
35
|
case 0:
|
|
35
|
-
|
|
36
|
-
|
|
36
|
+
// 过滤掉无两端节点数据的链路
|
|
37
|
+
links = oldLinks.filter(function (link) {
|
|
38
|
+
var sourceNode = nodes.find(function (node) {
|
|
39
|
+
return node.id === link.source;
|
|
40
|
+
});
|
|
37
41
|
|
|
38
|
-
|
|
42
|
+
if (link.source && !sourceNode) {
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
return true;
|
|
47
|
+
});
|
|
48
|
+
_context.next = 3;
|
|
49
|
+
return (0, _linkUtils.getLinksDetail)(links, nodes);
|
|
50
|
+
|
|
51
|
+
case 3:
|
|
39
52
|
links = _context.sent;
|
|
40
53
|
return _context.abrupt("return", {
|
|
41
54
|
links: links.filter(function (link) {
|
|
@@ -46,7 +59,7 @@ function _addLinkData() {
|
|
|
46
59
|
})
|
|
47
60
|
});
|
|
48
61
|
|
|
49
|
-
case
|
|
62
|
+
case 5:
|
|
50
63
|
case "end":
|
|
51
64
|
return _context.stop();
|
|
52
65
|
}
|
|
@@ -82,7 +95,7 @@ function _buildData() {
|
|
|
82
95
|
return Promise.all([// 查询节点属性
|
|
83
96
|
(0, _services.queryCisByIds)(nodes.map(function (node) {
|
|
84
97
|
return node.id;
|
|
85
|
-
})), addLinkData(data.links, nodes)]);
|
|
98
|
+
})), addLinkData(data.links || [], nodes)]);
|
|
86
99
|
|
|
87
100
|
case 4:
|
|
88
101
|
_yield$Promise$all = _context2.sent;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports["default"] = useGroupSortResources;
|
|
5
|
+
|
|
6
|
+
function useGroupSortResources(store, nodes) {
|
|
7
|
+
var _store$useModelState = store.useModelState('topoMod'),
|
|
8
|
+
data = _store$useModelState.data;
|
|
9
|
+
|
|
10
|
+
var resources = [];
|
|
11
|
+
((data === null || data === void 0 ? void 0 : data.nodes) || []).forEach(function (res) {
|
|
12
|
+
var node = nodes.find(function (item) {
|
|
13
|
+
return item.id === res.id;
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
if (node) {
|
|
17
|
+
resources.push(node);
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
return resources;
|
|
21
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports["default"] = useEdgeExpand;
|
|
7
|
+
|
|
8
|
+
var _useHtDataPropertyChangeListener = _interopRequireDefault(require("../../core/hooks/ht/useHtDataPropertyChangeListener"));
|
|
9
|
+
|
|
10
|
+
var _edgeUtil = require("../../core/utils/edgeUtil");
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* 默认情况下,拓扑图不存在链路的动态效果
|
|
14
|
+
* 未监控的链路,不展示动态效果
|
|
15
|
+
* @param {*} props
|
|
16
|
+
*/
|
|
17
|
+
function useEdgeExpand(props) {
|
|
18
|
+
var topo = props.topo;
|
|
19
|
+
(0, _useHtDataPropertyChangeListener["default"])({
|
|
20
|
+
topo: topo,
|
|
21
|
+
onChange: function onChange(e) {
|
|
22
|
+
var property = e.property,
|
|
23
|
+
data = e.data;
|
|
24
|
+
|
|
25
|
+
if (data instanceof ht.Group && property === 'expanded') {
|
|
26
|
+
(0, _edgeUtil.updateEdgeExpanded)(topo);
|
|
27
|
+
setTimeout(function () {
|
|
28
|
+
(0, _edgeUtil.updateEdgeExpanded)(topo);
|
|
29
|
+
}, 100);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
}
|
|
@@ -25,7 +25,7 @@ function _default(props) {
|
|
|
25
25
|
var graphLoaded = topoModState.graphLoaded,
|
|
26
26
|
topoData = topoModState.data;
|
|
27
27
|
(0, _react.useEffect)(function () {
|
|
28
|
-
//
|
|
28
|
+
// 拓扑图加载完成时刷新
|
|
29
29
|
if (graphLoaded && topoData) {
|
|
30
30
|
topo.linkDynamicStyleExecutor.execute();
|
|
31
31
|
}
|
|
@@ -13,6 +13,8 @@ var _useDeleteEdges = _interopRequireDefault(require("./editor/useDeleteEdges"))
|
|
|
13
13
|
|
|
14
14
|
var _default = function _default(props) {
|
|
15
15
|
var topo = props.topo;
|
|
16
|
+
var functionAuthState = topo.store.useModelState('functionAuth');
|
|
17
|
+
var canAddLink = !!functionAuthState.permissions.addResource;
|
|
16
18
|
var deleteEdges = (0, _useDeleteEdges["default"])({
|
|
17
19
|
topo: topo
|
|
18
20
|
});
|
|
@@ -30,6 +32,7 @@ var _default = function _default(props) {
|
|
|
30
32
|
};
|
|
31
33
|
|
|
32
34
|
return {
|
|
35
|
+
canAddLink: canAddLink,
|
|
33
36
|
onElementsDelete: onElementsDelete
|
|
34
37
|
};
|
|
35
38
|
};
|