@riil-frontend/component-topology 7.0.0-dev.9 → 7.0.1

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.
Files changed (162) hide show
  1. package/build/1.js +2 -2
  2. package/build/2.js +1 -1
  3. package/build/index.css +1 -1
  4. package/build/index.js +31 -31
  5. package/es/core/components/DisplaySettingDrawer/DisplaySetting.js +2 -23
  6. package/es/core/components/DisplaySettingDrawer/DisplaySettingDrawer.js +3 -2
  7. package/es/core/components/DisplaySettingDrawer/LineExpandAllRadioGroup.js +1 -2
  8. package/es/core/components/TopoView/GraphViewPanel.js +18 -2
  9. package/es/core/editor/components/Toolbar/buttons.js +2 -2
  10. package/es/core/editor/components/Toolbar/widgets/FontColorButton.js +10 -3
  11. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +9 -2
  12. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +7 -1
  13. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +21 -6
  14. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +5 -0
  15. package/es/core/editor/components/settings/PropertyView.js +11 -10
  16. package/es/core/editor/components/settings/Settings.js +8 -1
  17. package/es/core/editor/components/settings/core/PropertyViewManager.js +4 -3
  18. package/es/core/editor/components/settings/core/edgePropertyViewAdapter.js +1 -7
  19. package/es/core/editor/components/settings/propertyViews/node/data/Data.js +4 -2
  20. package/es/core/editor/components/settings/propertyViews/node/data/PlatformDisplay.js +15 -0
  21. package/es/core/hooks/usePolling.js +1 -6
  22. package/es/core/hooks/useTopoEdit.js +3 -1
  23. package/es/core/models/Alarm.js +12 -24
  24. package/es/core/models/TopoApp.js +5 -3
  25. package/es/core/models/utils/linkUtils.js +0 -3
  26. package/es/core/store/models/topoMod.js +7 -6
  27. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +28 -25
  28. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +4 -0
  29. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/Configurator/index.js +17 -17
  30. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/index.module.scss +1 -0
  31. package/es/core/viewer/components/titlebar/widgets/SettingButton.js +3 -11
  32. package/es/core/viewer/components/titlebar/widgets/SettingButtonWidget.js +5 -3
  33. package/es/networkTopo/getTopoData.js +16 -27
  34. package/es/networkTopo/index.js +2 -2
  35. package/es/networkTopo/services/alert.js +55 -0
  36. package/es/networkTopo/services/authorization.js +135 -0
  37. package/es/networkTopo/services/cmdb.js +897 -0
  38. package/es/networkTopo/services/index.js +2 -26
  39. package/es/networkTopo/services/mdc.js +74 -0
  40. package/es/networkTopo/services/metric.js +68 -0
  41. package/es/networkTopo/services/model.js +1283 -0
  42. package/es/networkTopo/services/risk.js +29 -0
  43. package/es/networkTopo/services/topo/auth.js +67 -0
  44. package/es/networkTopo/services/topo/basic.js +727 -0
  45. package/es/networkTopo/services/topo/blacklist.js +60 -0
  46. package/es/networkTopo/services/topo/ciInfo.js +69 -0
  47. package/es/networkTopo/services/topo/constants.js +1 -0
  48. package/es/networkTopo/services/topo/icon.js +131 -0
  49. package/es/networkTopo/services/topo/index.js +18 -0
  50. package/es/networkTopo/services/topo/networkLink.js +33 -0
  51. package/es/networkTopo/services/topo/relation.js +27 -0
  52. package/es/networkTopo/services/topo/resourceWebUrl.js +84 -0
  53. package/es/networkTopo/store/topoTreeMod.js +5 -1
  54. package/es/networkTopo/utils/storage.js +38 -0
  55. package/es/utils/tree.js +1 -0
  56. package/lib/core/components/DisplaySettingDrawer/DisplaySetting.js +3 -24
  57. package/lib/core/components/DisplaySettingDrawer/DisplaySettingDrawer.js +3 -3
  58. package/lib/core/components/DisplaySettingDrawer/LineExpandAllRadioGroup.js +1 -2
  59. package/lib/core/components/TopoView/GraphViewPanel.js +22 -2
  60. package/lib/core/editor/components/Toolbar/buttons.js +2 -2
  61. package/lib/core/editor/components/Toolbar/widgets/FontColorButton.js +10 -3
  62. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +9 -3
  63. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +8 -1
  64. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +21 -7
  65. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +5 -0
  66. package/lib/core/editor/components/settings/PropertyView.js +10 -10
  67. package/lib/core/editor/components/settings/Settings.js +9 -1
  68. package/lib/core/editor/components/settings/core/PropertyViewManager.js +4 -3
  69. package/lib/core/editor/components/settings/core/edgePropertyViewAdapter.js +1 -10
  70. package/lib/core/editor/components/settings/propertyViews/node/data/Data.js +5 -3
  71. package/lib/core/editor/components/settings/propertyViews/node/data/PlatformDisplay.js +23 -0
  72. package/lib/core/hooks/usePolling.js +1 -6
  73. package/lib/core/hooks/useTopoEdit.js +3 -1
  74. package/lib/core/models/Alarm.js +12 -24
  75. package/lib/core/models/TopoApp.js +5 -3
  76. package/lib/core/models/utils/linkUtils.js +0 -5
  77. package/lib/core/store/models/topoMod.js +9 -6
  78. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +28 -26
  79. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +4 -0
  80. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/Configurator/index.js +17 -17
  81. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/index.module.scss +1 -0
  82. package/lib/core/viewer/components/titlebar/widgets/SettingButton.js +3 -11
  83. package/lib/core/viewer/components/titlebar/widgets/SettingButtonWidget.js +5 -3
  84. package/lib/networkTopo/getTopoData.js +16 -28
  85. package/lib/networkTopo/index.js +4 -4
  86. package/lib/networkTopo/services/alert.js +66 -0
  87. package/lib/networkTopo/services/authorization.js +145 -0
  88. package/lib/networkTopo/services/cmdb.js +977 -0
  89. package/lib/networkTopo/services/index.js +3 -29
  90. package/lib/networkTopo/services/mdc.js +91 -0
  91. package/lib/networkTopo/services/metric.js +82 -0
  92. package/lib/networkTopo/services/model.js +1387 -0
  93. package/lib/networkTopo/services/risk.js +40 -0
  94. package/lib/networkTopo/services/topo/auth.js +79 -0
  95. package/lib/networkTopo/services/topo/basic.js +753 -0
  96. package/lib/networkTopo/services/topo/blacklist.js +72 -0
  97. package/lib/networkTopo/services/topo/ciInfo.js +82 -0
  98. package/lib/networkTopo/services/topo/constants.js +6 -0
  99. package/lib/networkTopo/services/topo/icon.js +144 -0
  100. package/lib/networkTopo/{components/editor/plugins/LayerConfigPlugin.js → services/topo/index.js} +33 -23
  101. package/lib/networkTopo/services/topo/networkLink.js +45 -0
  102. package/lib/networkTopo/services/topo/relation.js +39 -0
  103. package/lib/networkTopo/services/topo/resourceWebUrl.js +95 -0
  104. package/lib/networkTopo/store/topoTreeMod.js +5 -1
  105. package/lib/networkTopo/utils/storage.js +46 -0
  106. package/lib/utils/tree.js +1 -0
  107. package/package.json +3 -3
  108. package/es/core/components/DisplaySettingDrawer/EditorDisplaySetting.js +0 -122
  109. package/es/core/editor/components/settings/propertyViews/edge/addEdgeProps.js +0 -10
  110. package/es/networkTopo/components/Topology.js +0 -28
  111. package/es/networkTopo/components/editor/plugins/LayerConfigPlugin.js +0 -22
  112. package/es/networkTopo/components/editor/propertyViews/LayerRelatedResourceList.js +0 -48
  113. package/es/networkTopo/components/editor/propertyViews/edge/EdgeGroupPropertyView.js +0 -35
  114. package/es/networkTopo/components/editor/propertyViews/edge/EdgePropertyView.js +0 -43
  115. package/es/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/Data/index.js +0 -39
  116. package/es/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyView.js +0 -31
  117. package/es/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyViewV1.js +0 -37
  118. package/es/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/Setting/index.js +0 -49
  119. package/es/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/index.js +0 -2
  120. package/es/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/AddLinkDrawer.js +0 -630
  121. package/es/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/components/NetworkLinkForm.js +0 -4
  122. package/es/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/components/editLinkInfo.js +0 -458
  123. package/es/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/components/index.module.scss +0 -34
  124. package/es/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/hooks/useAddLink.js +0 -104
  125. package/es/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/index.module.scss +0 -12
  126. package/es/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/mock.js +0 -55
  127. package/es/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/server.js +0 -187
  128. package/es/networkTopo/components/editor/propertyViews/edge/link/BindExitLinkSelect.js +0 -178
  129. package/es/networkTopo/components/editor/propertyViews/edge/link/LinkInfoPreview.js +0 -103
  130. package/es/networkTopo/components/editor/propertyViews/edge/link/LinkInfoPreview.module.scss +0 -65
  131. package/es/networkTopo/components/editor/useEditorProps.js +0 -32
  132. package/es/networkTopo/event/index.js +0 -6
  133. package/es/networkTopo/hooks/editor/useDeleteEdges.js +0 -200
  134. package/es/networkTopo/hooks/editor/useGroupSortResources.js +0 -16
  135. package/es/networkTopo/hooks/useTopoEdit.js +0 -26
  136. package/lib/core/components/DisplaySettingDrawer/EditorDisplaySetting.js +0 -147
  137. package/lib/core/editor/components/settings/propertyViews/edge/addEdgeProps.js +0 -19
  138. package/lib/networkTopo/components/Topology.js +0 -40
  139. package/lib/networkTopo/components/editor/propertyViews/LayerRelatedResourceList.js +0 -63
  140. package/lib/networkTopo/components/editor/propertyViews/edge/EdgeGroupPropertyView.js +0 -51
  141. package/lib/networkTopo/components/editor/propertyViews/edge/EdgePropertyView.js +0 -60
  142. package/lib/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/Data/index.js +0 -54
  143. package/lib/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyView.js +0 -42
  144. package/lib/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyViewV1.js +0 -50
  145. package/lib/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/Setting/index.js +0 -66
  146. package/lib/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/index.js +0 -11
  147. package/lib/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/AddLinkDrawer.js +0 -661
  148. package/lib/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/components/NetworkLinkForm.js +0 -12
  149. package/lib/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/components/editLinkInfo.js +0 -486
  150. package/lib/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/components/index.module.scss +0 -34
  151. package/lib/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/hooks/useAddLink.js +0 -120
  152. package/lib/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/index.module.scss +0 -12
  153. package/lib/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/mock.js +0 -60
  154. package/lib/networkTopo/components/editor/propertyViews/edge/addLinkDrawer/server.js +0 -207
  155. package/lib/networkTopo/components/editor/propertyViews/edge/link/BindExitLinkSelect.js +0 -205
  156. package/lib/networkTopo/components/editor/propertyViews/edge/link/LinkInfoPreview.js +0 -121
  157. package/lib/networkTopo/components/editor/propertyViews/edge/link/LinkInfoPreview.module.scss +0 -65
  158. package/lib/networkTopo/components/editor/useEditorProps.js +0 -46
  159. package/lib/networkTopo/event/index.js +0 -11
  160. package/lib/networkTopo/hooks/editor/useDeleteEdges.js +0 -218
  161. package/lib/networkTopo/hooks/editor/useGroupSortResources.js +0 -21
  162. package/lib/networkTopo/hooks/useTopoEdit.js +0 -40
@@ -1,661 +0,0 @@
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 _drawer = _interopRequireDefault(require("@alifd/next/lib/drawer"));
11
-
12
- var _loading = _interopRequireDefault(require("@alifd/next/lib/loading"));
13
-
14
- var _message = _interopRequireDefault(require("@alifd/next/lib/message"));
15
-
16
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
17
-
18
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
19
-
20
- var _react = _interopRequireWildcard(require("react"));
21
-
22
- var _lodash = _interopRequireDefault(require("lodash"));
23
-
24
- var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-utils/es/rlog"));
25
-
26
- var _event = _interopRequireDefault(require("../../../../../event"));
27
-
28
- var _editLinkInfo = _interopRequireDefault(require("./components/editLinkInfo"));
29
-
30
- var _indexModule = _interopRequireDefault(require("./index.module.scss"));
31
-
32
- var _server = _interopRequireDefault(require("./server"));
33
-
34
- var _copyUtil = require("../../../../../../utils/copyUtil");
35
-
36
- var _linkUtils = require("../../../../../../core/models/utils/linkUtils");
37
-
38
- var _htElementUtils = require("../../../../../../utils/htElementUtils");
39
-
40
- var _useAddLink2 = _interopRequireDefault(require("./hooks/useAddLink"));
41
-
42
- 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); }
43
-
44
- 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; }
45
-
46
- function AddLinkDrawer(props) {
47
- var topo = props.topo,
48
- lineData = props.lineData;
49
- var store = topo.store;
50
-
51
- var _topo$store$useModel = topo.store.useModel('topoMod'),
52
- topoState = _topo$store$useModel[0],
53
- topoDispatchers = _topo$store$useModel[1];
54
-
55
- var _store$useModel = store.useModel('topoConfig'),
56
- editState = _store$useModel[0],
57
- editDispatchers = _store$useModel[1];
58
-
59
- var addLinkIsOpen = editState.addLinkIsOpen,
60
- currentLink = editState.currentLink;
61
-
62
- var _useState = (0, _react.useState)(),
63
- link = _useState[0],
64
- setLink = _useState[1];
65
-
66
- var _useState2 = (0, _react.useState)(true),
67
- isAddMode = _useState2[0],
68
- setIsAddMode = _useState2[1];
69
-
70
- var _useState3 = (0, _react.useState)(false),
71
- loading = _useState3[0],
72
- setLoading = _useState3[1];
73
-
74
- var _useState4 = (0, _react.useState)(false),
75
- loadingFormData = _useState4[0],
76
- setLoadingFormData = _useState4[1];
77
-
78
- var _useState5 = (0, _react.useState)(),
79
- sourceIFDoc = _useState5[0],
80
- setSourceIFDoc = _useState5[1];
81
-
82
- var _useState6 = (0, _react.useState)(),
83
- targetIFDoc = _useState6[0],
84
- setTargetIFDoc = _useState6[1]; // 保存后更新拓扑图状态
85
-
86
-
87
- var linkNodesRef = (0, _react.useRef)();
88
-
89
- var _useAddLink = (0, _useAddLink2["default"])({
90
- topo: topo
91
- }),
92
- enterAddLinkMode = _useAddLink.enterAddLinkMode,
93
- resetConnectableNodes = _useAddLink.resetConnectableNodes,
94
- loadingConnectableNodes = _useAddLink.loadingConnectableNodes;
95
-
96
- var getPortsById = /*#__PURE__*/function () {
97
- var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(id, currentLink) {
98
- var result, links, ifTypes, ifDoc, usedPorts, portsDoc, ports;
99
- return _regenerator["default"].wrap(function _callee$(_context) {
100
- while (1) {
101
- switch (_context.prev = _context.next) {
102
- case 0:
103
- if (id) {
104
- _context.next = 2;
105
- break;
106
- }
107
-
108
- return _context.abrupt("return", {
109
- ports: [],
110
- portsDoc: {}
111
- });
112
-
113
- case 2:
114
- _context.next = 4;
115
- return _server["default"].getPortsById(id);
116
-
117
- case 4:
118
- result = _context.sent;
119
- _context.next = 7;
120
- return _server["default"].queryLinksByNodeId(id);
121
-
122
- case 7:
123
- links = _context.sent;
124
- ifTypes = result.map(function (item) {
125
- return item.type;
126
- }); // console.log("端口类型列表", ifTypes);
127
-
128
- _context.next = 11;
129
- return (0, _linkUtils.getInterfaceObject)(ifTypes);
130
-
131
- case 11:
132
- ifDoc = _context.sent;
133
- // console.log("端口类型字典", ifDoc);
134
- usedPorts = [];
135
- links.data.map(function (link) {
136
- // console.log("getPortsById-去重", links, id);
137
- if (link.id !== (currentLink === null || currentLink === void 0 ? void 0 : currentLink.id)) {
138
- usedPorts.push(link.attributes.destination_id);
139
- usedPorts.push(link.attributes.source_id);
140
- }
141
- });
142
- usedPorts = _lodash["default"].uniq(usedPorts); // rlog.debug("端口列表", result, links);
143
- //const list = result[id];
144
-
145
- portsDoc = {};
146
- ports = result.map(function (item) {
147
- var _ifDoc$item$type$disp, _ifDoc$item$type;
148
-
149
- var obj = {
150
- value: item.id,
151
- label: item.name,
152
- type: item.type,
153
- typeName: (_ifDoc$item$type$disp = (_ifDoc$item$type = ifDoc[item.type]) === null || _ifDoc$item$type === void 0 ? void 0 : _ifDoc$item$type.displayName) !== null && _ifDoc$item$type$disp !== void 0 ? _ifDoc$item$type$disp : '',
154
- disabled: usedPorts.indexOf(item.id) >= 0,
155
- ratedBandwidth: parseInt(item.ratedBandwidth, 10)
156
- };
157
- portsDoc[item.id] = obj;
158
- return obj;
159
- }).filter(function (item) {
160
- return !item.disabled;
161
- });
162
- return _context.abrupt("return", {
163
- ports: ports,
164
- portsDoc: portsDoc
165
- });
166
-
167
- case 18:
168
- case "end":
169
- return _context.stop();
170
- }
171
- }
172
- }, _callee);
173
- }));
174
-
175
- return function getPortsById(_x, _x2) {
176
- return _ref.apply(this, arguments);
177
- };
178
- }();
179
- /**
180
- * 连线第二个节点时的处理
181
- * @param {*} e
182
- */
183
-
184
-
185
- var handleSelectTargetNodeEvent = /*#__PURE__*/function () {
186
- var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(e) {
187
- var sourcePorts, targetPorts, source, target;
188
- return _regenerator["default"].wrap(function _callee2$(_context2) {
189
- while (1) {
190
- switch (_context2.prev = _context2.next) {
191
- case 0:
192
- resetConnectableNodes();
193
- linkNodesRef.current = e;
194
-
195
- _rlog["default"].debug('接到打开创建链路抽屉信息', e);
196
-
197
- setIsAddMode(true);
198
- setLoadingFormData(true);
199
- _context2.prev = 5;
200
- _context2.next = 8;
201
- return getPortsById(e.source._attrObject.id);
202
-
203
- case 8:
204
- sourcePorts = _context2.sent;
205
- _context2.next = 11;
206
- return getPortsById(e.target._attrObject.id);
207
-
208
- case 11:
209
- targetPorts = _context2.sent;
210
- setSourceIFDoc(sourcePorts.portsDoc);
211
- setTargetIFDoc(targetPorts.portsDoc);
212
- source = translationNode(e.source, sourcePorts);
213
- target = translationNode(e.target, targetPorts);
214
- editDispatchers.update({
215
- addLinkIsOpen: true,
216
- currentLink: null
217
- });
218
- setLink({
219
- source: source,
220
- target: target,
221
- attributes: {
222
- display_name: '',
223
- name: '',
224
- source_id: '',
225
- source_type: '',
226
- 'network_link.source_device_id': source.id,
227
- 'network_link.source_device_ipv4': source.ipAddress,
228
- destination_id: '',
229
- destination_type: '',
230
- 'network_link.destination_device_id': target.id,
231
- 'network_link.destination_device_ipv4': target.ipAddress,
232
- 'network_link.actual_bandwidth': null
233
- }
234
- });
235
- _context2.next = 23;
236
- break;
237
-
238
- case 20:
239
- _context2.prev = 20;
240
- _context2.t0 = _context2["catch"](5);
241
-
242
- _rlog["default"].error('出现异常', _context2.t0);
243
-
244
- case 23:
245
- setLoadingFormData(false);
246
-
247
- case 24:
248
- case "end":
249
- return _context2.stop();
250
- }
251
- }
252
- }, _callee2, null, [[5, 20]]);
253
- }));
254
-
255
- return function handleSelectTargetNodeEvent(_x3) {
256
- return _ref2.apply(this, arguments);
257
- };
258
- }();
259
-
260
- var handleSelectSourceNodeEvent = function handleSelectSourceNodeEvent(e) {
261
- // rlog.debug("设置了起始节点", e);
262
- topo.historyManager.setDisabled(true);
263
- var enableNodes = (0, _htElementUtils.getNodes)(topo.getDataModel());
264
- topo.view.topoClient.emitEvent('topo_link_set_connectable_nodes', enableNodes.filter(function (ele) {
265
- return !((0, _htElementUtils.isGroup)(ele) && !ele.a('ciType'));
266
- }));
267
- topo.historyManager.setDisabled(false);
268
- };
269
-
270
- var initEditLineData = /*#__PURE__*/function () {
271
- var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
272
- var _currentLink$attribut, _sourcePorts$ports, _currentLink$attribut2, _targetPorts$ports;
273
-
274
- var sourcePorts, targetPorts;
275
- return _regenerator["default"].wrap(function _callee3$(_context3) {
276
- while (1) {
277
- switch (_context3.prev = _context3.next) {
278
- case 0:
279
- _context3.next = 2;
280
- return getPortsById(currentLink.source, currentLink);
281
-
282
- case 2:
283
- sourcePorts = _context3.sent;
284
- _context3.next = 5;
285
- return getPortsById(currentLink.target, currentLink);
286
-
287
- case 5:
288
- targetPorts = _context3.sent;
289
- setSourceIFDoc(sourcePorts.portsDoc);
290
- setTargetIFDoc(targetPorts.portsDoc);
291
- setLink({
292
- source: {
293
- ciData: topo.dataModel.getDataById(currentLink.source),
294
- id: currentLink.source,
295
- name: currentLink.attributes['network_link.source_device_id_object'].displayName,
296
- ciId: currentLink.attributes['network_link.source_device_id'],
297
- ciName: (_currentLink$attribut = currentLink.attributes.source_type_object) === null || _currentLink$attribut === void 0 ? void 0 : _currentLink$attribut.displayName,
298
- ciType: currentLink.attributes.source_type,
299
- interfaceSource: currentLink.interfaceSource,
300
- ports: (_sourcePorts$ports = sourcePorts.ports) !== null && _sourcePorts$ports !== void 0 ? _sourcePorts$ports : [],
301
- portsDoc: sourcePorts.portsDoc
302
- },
303
- target: {
304
- ciData: topo.dataModel.getDataById(currentLink.target),
305
- id: currentLink.target,
306
- name: currentLink.attributes['network_link.destination_device_id_object'].displayName,
307
- ciId: currentLink.attributes['network_link.destination_device_id'],
308
- ciName: (_currentLink$attribut2 = currentLink.attributes.destination_type_object) === null || _currentLink$attribut2 === void 0 ? void 0 : _currentLink$attribut2.displayName,
309
- ciType: currentLink.target !== '' ? currentLink.attributes.destination_type : 'customNode',
310
- interfaceTarget: currentLink.interfaceTarget,
311
- ports: (_targetPorts$ports = targetPorts.ports) !== null && _targetPorts$ports !== void 0 ? _targetPorts$ports : [],
312
- portsDoc: targetPorts.portsDoc
313
- },
314
- attributes: (0, _extends2["default"])({}, currentLink.attributes, {
315
- linkId: currentLink.id
316
- })
317
- });
318
-
319
- case 9:
320
- case "end":
321
- return _context3.stop();
322
- }
323
- }
324
- }, _callee3);
325
- }));
326
-
327
- return function initEditLineData() {
328
- return _ref3.apply(this, arguments);
329
- };
330
- }();
331
-
332
- (0, _react.useEffect)(function () {
333
- // rlog.debug("useEffect-----currentLink", currentLink);
334
- if (currentLink) {
335
- setIsAddMode(false);
336
- initEditLineData();
337
- }
338
- }, [addLinkIsOpen]);
339
- (0, _react.useEffect)(function () {
340
- if (!addLinkIsOpen) {
341
- setLink(null);
342
- }
343
- }, [addLinkIsOpen]); // 注册事件
344
-
345
- (0, _react.useEffect)(function () {
346
- var notifier = topo.view.topoClient.notifier; // rlog.debug("注册事件");
347
- // 进入链路模式
348
-
349
- notifier.on(_event["default"].TOPO_LINK_ENTER_CREATE_MODE, enterAddLinkMode); // 选择第一个节点
350
-
351
- notifier.on(_event["default"].TOPO_LINK_SELECT_SOURCE_NODE, handleSelectSourceNodeEvent); // 选择第二个节点
352
-
353
- notifier.on(_event["default"].TOPO_LINK_CREATED, handleSelectTargetNodeEvent);
354
- return function () {
355
- // 取消注册事件
356
- // rlog.debug("取消注册事件");
357
- notifier.off(_event["default"].TOPO_LINK_ENTER_CREATE_MODE, enterAddLinkMode);
358
- notifier.off(_event["default"].TOPO_LINK_CREATED, handleSelectTargetNodeEvent);
359
- };
360
- }, []);
361
-
362
- var translationNode = function translationNode(node, Ports) {
363
- var _topo$ciTyeCache$getC, _topo$ciTyeCache$getC2, _attrObject$ciType, _Ports$ports;
364
-
365
- var attrObject = node._attrObject;
366
- return {
367
- ciData: topo.dataModel.getDataById(attrObject.id),
368
- id: attrObject.id,
369
- name: attrObject.name,
370
- ciId: attrObject.id,
371
- ipAddress: attrObject.ipAddress,
372
- ciName: (_topo$ciTyeCache$getC = (_topo$ciTyeCache$getC2 = topo.ciTyeCache.getCiType(attrObject.ciType)) === null || _topo$ciTyeCache$getC2 === void 0 ? void 0 : _topo$ciTyeCache$getC2.displayName) !== null && _topo$ciTyeCache$getC !== void 0 ? _topo$ciTyeCache$getC : attrObject.customName,
373
- ciType: (_attrObject$ciType = attrObject.ciType) !== null && _attrObject$ciType !== void 0 ? _attrObject$ciType : 'customNode',
374
- ports: (_Ports$ports = Ports.ports) !== null && _Ports$ports !== void 0 ? _Ports$ports : [],
375
- portsDoc: Ports.portsDoc
376
- };
377
- };
378
-
379
- var closeDrawer = function closeDrawer() {
380
- //editDispatchers.update({ addLinkIsOpen: false });
381
- // rlog.debug("关闭");
382
- editDispatchers.update({
383
- addLinkIsOpen: false,
384
- currentLink: null
385
- });
386
- };
387
-
388
- var addLinkToGraph = function addLinkToGraph(_ref4) {
389
- var linkData = _ref4.linkData,
390
- isExportLink = _ref4.isExportLink,
391
- targetName = _ref4.targetName;
392
- var htTopo = topo.getHtTopo();
393
- var _linkNodesRef$current = linkNodesRef.current,
394
- source = _linkNodesRef$current.source,
395
- target = _linkNodesRef$current.target;
396
-
397
- try {
398
- // 获取两个节点间的连线数据列表
399
- var edgesInNodes = (0, _htElementUtils.getEdgesBetweenNodes)(source, target);
400
- var _isGroup = false; // linkType === "agg"
401
-
402
- if (_isGroup) {
403
- // 聚合链路
404
- if (edgesInNodes.length === 0) {
405
- htTopo.createEdge(source, target, linkData);
406
- } else {
407
- htTopo.setEdgeGroupData(source, target, linkData);
408
- } // 切换到连线组状态
409
-
410
-
411
- htTopo.toggleEdgeGroup(source, target, false);
412
- } else {
413
- // 有连线组无子连线时,设置连线数据,切换到连线并选中
414
- var edge = htTopo.createEdge(source, target, linkData);
415
-
416
- if (isExportLink && target.getTag() === undefined) {
417
- // rlog.debug("addLinkToGraph-export-target", target, target.getTag());
418
- target.a('name', targetName);
419
- }
420
-
421
- htTopo.toggleEdgeGroup(source, target, true);
422
- }
423
-
424
- topo.getGraphView().dm().sm().ss(topo.getDataModel().getDataByTag(linkData.id));
425
- } catch (error) {
426
- _rlog["default"].error('addLinkToGraph', error);
427
- }
428
- };
429
-
430
- var mergeExportLinkData = function mergeExportLinkData(data, attributes, linkFormAttributes) {
431
- var _sourceIFDoc$data$sou, _targetIFDoc$data$des;
432
-
433
- // console.log("mergeExportLinkData", data, attributes);
434
- return (0, _extends2["default"])({}, attributes, {
435
- id: data.id,
436
- name: data.name,
437
- source: data['network_link.source_device_id'],
438
- target: data['network_link.destination_device_id'],
439
- operation: data.operation,
440
- interfaceSource: data['source_id'],
441
- interfaceTarget: data['destination_id'],
442
- ciType: data.ciType,
443
- attributes: (0, _extends2["default"])({}, attributes.attributes, linkFormAttributes, {
444
- display_name: data.display_name,
445
- name: data.name,
446
- 'network_link.actual_bandwidth': data['network_link.actual_bandwidth'],
447
- 'network_link.connect_type': data['network_link.connect_type'],
448
- 'network_link.destination_ipv4': data['network_link.destination_ipv4'],
449
- 'network_link.source_device_id': data['network_link.source_device_id'],
450
- source_id: data.source_id,
451
- support_templates: data.support_templates,
452
- use: data.use,
453
- source_id_object: {
454
- displayName: (_sourceIFDoc$data$sou = sourceIFDoc[data.source_id]) === null || _sourceIFDoc$data$sou === void 0 ? void 0 : _sourceIFDoc$data$sou.label
455
- },
456
- destination_id_object: {
457
- displayName: (_targetIFDoc$data$des = targetIFDoc[data.destination_id]) === null || _targetIFDoc$data$des === void 0 ? void 0 : _targetIFDoc$data$des.label
458
- }
459
- })
460
- });
461
- };
462
-
463
- var onSave = /*#__PURE__*/function () {
464
- var _ref5 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(data) {
465
- var parm, result, config, isExportLink, exportLinkIdList, _yield$editDispatcher, elements, linkData, edge, aobj, target, links, linkAttrKey, newLinkData, newLinks, newData, _config, _yield$editDispatcher2, _elements;
466
-
467
- return _regenerator["default"].wrap(function _callee4$(_context4) {
468
- while (1) {
469
- switch (_context4.prev = _context4.next) {
470
- case 0:
471
- //editDispatchers.update({ addLinkIsOpen: false });
472
- // console.log("保存链路信息", isAddMode, data);
473
- setLoading(true);
474
- parm = {
475
- attributes: data
476
- };
477
- result = null;
478
-
479
- if (!isAddMode) {
480
- _context4.next = 9;
481
- break;
482
- }
483
-
484
- _context4.next = 6;
485
- return _server["default"].addLink(parm);
486
-
487
- case 6:
488
- result = _context4.sent;
489
- _context4.next = 13;
490
- break;
491
-
492
- case 9:
493
- parm.id = currentLink.id;
494
- _context4.next = 12;
495
- return _server["default"].editLink(parm);
496
-
497
- case 12:
498
- result = _context4.sent;
499
-
500
- case 13:
501
- topo.historyManager.setDisabled(true, '保存链路');
502
- _context4.prev = 14;
503
-
504
- if (!result) {
505
- _context4.next = 59;
506
- break;
507
- }
508
-
509
- config = topo.resourceConfig.getConfigFromHt();
510
- isExportLink = !data['network_link.destination_device_id']; // 新建后显示到图上
511
-
512
- if (!isAddMode) {
513
- _context4.next = 33;
514
- break;
515
- }
516
-
517
- exportLinkIdList = config.exportLinkIdList;
518
-
519
- if (isExportLink) {
520
- exportLinkIdList.push(result);
521
- }
522
-
523
- _context4.next = 23;
524
- return topo.resourceConfig.updateConfig((0, _extends2["default"])({}, config, {
525
- exportLinkIdList: exportLinkIdList
526
- }));
527
-
528
- case 23:
529
- _context4.next = 25;
530
- return editDispatchers.fetchDataByConfig();
531
-
532
- case 25:
533
- _yield$editDispatcher = _context4.sent;
534
- elements = _yield$editDispatcher.elements;
535
- linkData = elements.find(function (element) {
536
- return element.id === result;
537
- }); // console.log("创建成功-parm,linkData", parm, linkData);
538
-
539
- topo.historyManager.setDisabled(true, '保存链路');
540
- addLinkToGraph({
541
- linkData: (0, _copyUtil.clone)(linkData),
542
- isExportLink: isExportLink,
543
- targetName: data['network_link.destination_ipv4']
544
- });
545
-
546
- _message["default"].success('创建成功');
547
-
548
- _context4.next = 56;
549
- break;
550
-
551
- case 33:
552
- if (!isExportLink) {
553
- _context4.next = 49;
554
- break;
555
- }
556
-
557
- edge = topo.getGraphView().dm().sm().ld();
558
- aobj = edge.getAttrObject();
559
- edge.setAttrObject((0, _extends2["default"])({}, aobj, data));
560
- target = edge.getTarget();
561
-
562
- if (target.getTag() === undefined) {
563
- target.a('name', data['network_link.destination_ipv4']);
564
- }
565
-
566
- links = topoState.data.links;
567
- linkAttrKey = links.findIndex(function (item) {
568
- return item.id === aobj.id;
569
- });
570
- newLinkData = mergeExportLinkData(edge.getAttrObject(), links[linkAttrKey], data);
571
- newLinks = (0, _copyUtil.clone)(links);
572
- newLinks.splice(linkAttrKey, 1, newLinkData);
573
- newData = (0, _extends2["default"])({}, topoState.data, {
574
- links: newLinks
575
- });
576
- _context4.next = 47;
577
- return topoDispatchers.update({
578
- data: newData
579
- });
580
-
581
- case 47:
582
- _context4.next = 55;
583
- break;
584
-
585
- case 49:
586
- _config = topo.resourceConfig.getConfigFromHt();
587
- topo.resourceConfig.updateConfig(_config);
588
- _context4.next = 53;
589
- return editDispatchers.fetchDataByConfig();
590
-
591
- case 53:
592
- _yield$editDispatcher2 = _context4.sent;
593
- _elements = _yield$editDispatcher2.elements;
594
-
595
- case 55:
596
- _message["default"].success('保存成功');
597
-
598
- case 56:
599
- _context4.next = 58;
600
- return editDispatchers.update({
601
- addLinkIsOpen: false,
602
- currentLink: null
603
- });
604
-
605
- case 58:
606
- topo.linkDynamicStyleExecutor.execute();
607
-
608
- case 59:
609
- _context4.next = 65;
610
- break;
611
-
612
- case 61:
613
- _context4.prev = 61;
614
- _context4.t0 = _context4["catch"](14);
615
-
616
- _message["default"].error('保存失败');
617
-
618
- _rlog["default"].error('保存链路信息异常', _context4.t0);
619
-
620
- case 65:
621
- setLoading(false);
622
- topo.historyManager.setDisabled(false, '保存链路');
623
-
624
- case 67:
625
- case "end":
626
- return _context4.stop();
627
- }
628
- }
629
- }, _callee4, null, [[14, 61]]);
630
- }));
631
-
632
- return function onSave(_x4) {
633
- return _ref5.apply(this, arguments);
634
- };
635
- }();
636
-
637
- return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(_loading["default"], {
638
- visible: loadingConnectableNodes,
639
- fullScreen: true
640
- }), /*#__PURE__*/_react["default"].createElement(_loading["default"], {
641
- visible: loadingFormData,
642
- fullScreen: true
643
- }), /*#__PURE__*/_react["default"].createElement(_drawer["default"], {
644
- closeMode: ['close', 'esc'],
645
- visible: addLinkIsOpen,
646
- onClose: closeDrawer,
647
- title: isAddMode ? '添加链路' : '编辑链路',
648
- className: _indexModule["default"].drawer
649
- }, addLinkIsOpen && link && /*#__PURE__*/_react["default"].createElement(_editLinkInfo["default"], {
650
- lineData: link,
651
- topo: topo,
652
- onClose: closeDrawer,
653
- addLinkIsOpen: addLinkIsOpen,
654
- onSave: onSave,
655
- loading: loading,
656
- isAdd: isAddMode
657
- })));
658
- }
659
-
660
- var _default = AddLinkDrawer;
661
- exports["default"] = _default;
@@ -1,12 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- exports.__esModule = true;
6
- exports["default"] = NetworkLinkForm;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- function NetworkLinkForm(props) {
11
- return /*#__PURE__*/_react["default"].createElement("div", null, "LinkForm");
12
- }