@riil-frontend/component-topology 13.0.0-dev.1 → 13.0.0-dev.10

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 (92) hide show
  1. package/build/1.js +1 -1
  2. package/build/index.css +1 -1
  3. package/build/index.js +29 -29
  4. package/es/components/ColorPanel/index.js +68 -58
  5. package/es/components/ResourceSelectDrawer/ResourceSelectDrawer.js +1 -1
  6. package/es/core/components/TopoView/topoView.js +7 -4
  7. package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +2 -2
  8. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +5 -15
  9. package/es/core/editor/components/Toolbar/widgets/FontColorButton.js +10 -91
  10. package/es/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +2 -27
  11. package/es/core/editor/components/Toolbar/widgets/FontSizeWidget.js +3 -28
  12. package/es/core/editor/components/Toolbar/widgets/FontStyleButton.js +6 -52
  13. package/es/core/editor/components/Toolbar/widgets/components/FontColorDropdown.js +120 -0
  14. package/es/core/editor/components/Toolbar/widgets/components/FontFamilySelect.js +29 -0
  15. package/es/core/editor/components/Toolbar/widgets/components/FontSizeSelect.js +29 -0
  16. package/es/core/editor/components/Toolbar/widgets/components/FontStyleSelect.js +77 -0
  17. package/es/core/editor/components/settings/core/updateElementProperty.js +3 -2
  18. package/es/core/editor/components/settings/propertyViews/view/GlobalEdgeToggle.js +2 -2
  19. package/es/core/editor/hooks/useKeyboardShortcut.js +4 -0
  20. package/es/core/editor/hooks/useNewElementTheme.js +20 -16
  21. package/es/core/editor/utils/edgeTypeStyleUtil.js +11 -32
  22. package/es/core/hooks/useGraphAlarmDisplay.js +4 -0
  23. package/es/core/hooks/usePolling.js +2 -1
  24. package/es/core/hooks/useResourceConfig.js +1 -2
  25. package/es/core/hooks/useTopoEdit.js +210 -248
  26. package/es/core/models/AttributeMetricDisplay.js +4 -3
  27. package/es/core/models/HistoryManager.js +11 -9
  28. package/es/core/models/TopoApp.js +39 -45
  29. package/es/core/models/topoData.js +9 -17
  30. package/es/core/models/utils/linkUtils.js +65 -52
  31. package/es/core/store/models/topoConfig.js +7 -11
  32. package/es/core/utils/edgeUtil.js +7 -10
  33. package/es/core/viewer/components/plugins/ElementDetailDrawer/hooks/useElementDetailManager.js +2 -2
  34. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +4 -2
  35. package/es/networkTopo/models/EdgeGroupTagTipBuilder.js +7 -7
  36. package/es/networkTopo/models/LinkDynamicStyleExecutor.js +7 -63
  37. package/es/networkTopo/services/topo/basic.js +27 -17
  38. package/es/networkTopo/utils/__tests__/relateTopoData.js +205 -0
  39. package/es/networkTopo/utils/edgeGroupTagUtil.js +2 -2
  40. package/es/networkTopo/utils/exitLinkUtil.js +25 -13
  41. package/es/networkTopo/utils/relateTopoDataUtil.js +149 -0
  42. package/es/style.js +1 -1
  43. package/es/utils/ResourceConfigUtil.js +1 -16
  44. package/es/utils/clusterUtil.js +3 -3
  45. package/es/utils/htElementUtils.js +19 -85
  46. package/lib/components/ColorPanel/index.js +71 -59
  47. package/lib/components/ResourceSelectDrawer/ResourceSelectDrawer.js +1 -1
  48. package/lib/core/components/TopoView/topoView.js +15 -19
  49. package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +2 -2
  50. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +5 -14
  51. package/lib/core/editor/components/Toolbar/widgets/FontColorButton.js +11 -95
  52. package/lib/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +3 -28
  53. package/lib/core/editor/components/Toolbar/widgets/FontSizeWidget.js +3 -28
  54. package/lib/core/editor/components/Toolbar/widgets/FontStyleButton.js +6 -56
  55. package/lib/core/editor/components/Toolbar/widgets/components/FontColorDropdown.js +136 -0
  56. package/lib/core/editor/components/Toolbar/widgets/components/FontFamilySelect.js +38 -0
  57. package/lib/core/editor/components/Toolbar/widgets/components/FontSizeSelect.js +38 -0
  58. package/lib/core/editor/components/Toolbar/widgets/components/FontStyleSelect.js +89 -0
  59. package/lib/core/editor/components/settings/core/updateElementProperty.js +7 -2
  60. package/lib/core/editor/components/settings/propertyViews/view/GlobalEdgeToggle.js +2 -2
  61. package/lib/core/editor/hooks/useKeyboardShortcut.js +4 -0
  62. package/lib/core/editor/hooks/useNewElementTheme.js +20 -16
  63. package/lib/core/editor/utils/edgeTypeStyleUtil.js +10 -33
  64. package/lib/core/hooks/useGraphAlarmDisplay.js +4 -0
  65. package/lib/core/hooks/usePolling.js +6 -5
  66. package/lib/core/hooks/useResourceConfig.js +1 -2
  67. package/lib/core/hooks/useTopoEdit.js +216 -272
  68. package/lib/core/models/AttributeMetricDisplay.js +6 -6
  69. package/lib/core/models/HistoryManager.js +13 -17
  70. package/lib/core/models/TopoApp.js +39 -43
  71. package/lib/core/models/topoData.js +9 -17
  72. package/lib/core/models/utils/linkUtils.js +65 -51
  73. package/lib/core/store/models/topoConfig.js +13 -25
  74. package/lib/core/utils/edgeUtil.js +8 -10
  75. package/lib/core/viewer/components/plugins/ElementDetailDrawer/hooks/useElementDetailManager.js +3 -2
  76. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +6 -2
  77. package/lib/networkTopo/models/EdgeGroupTagTipBuilder.js +6 -6
  78. package/lib/networkTopo/models/LinkDynamicStyleExecutor.js +6 -64
  79. package/lib/networkTopo/services/topo/basic.js +32 -18
  80. package/lib/networkTopo/utils/__tests__/relateTopoData.js +210 -0
  81. package/lib/networkTopo/utils/edgeGroupTagUtil.js +2 -2
  82. package/lib/networkTopo/utils/exitLinkUtil.js +25 -13
  83. package/lib/networkTopo/utils/relateTopoDataUtil.js +164 -0
  84. package/lib/style.js +1 -1
  85. package/lib/utils/ResourceConfigUtil.js +1 -16
  86. package/lib/utils/clusterUtil.js +2 -2
  87. package/lib/utils/htElementUtils.js +22 -94
  88. package/package.json +2 -2
  89. package/es/networkTopo/models/LinkTagsTipsBuilder.js +0 -235
  90. package/lib/networkTopo/models/LinkTagsTipsBuilder.js +0 -245
  91. /package/es/core/editor/components/Toolbar/widgets/{FontColorButton.module.scss → components/FontColorDropdown.module.scss} +0 -0
  92. /package/lib/core/editor/components/Toolbar/widgets/{FontColorButton.module.scss → components/FontColorDropdown.module.scss} +0 -0
@@ -1,12 +1,17 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
3
5
  exports.__esModule = true;
4
6
  exports["default"] = updateElementProperty;
5
7
 
8
+ var _loglevel = _interopRequireDefault(require("loglevel"));
9
+
10
+ var rlog = _loglevel["default"].getLogger('topo');
11
+
6
12
  function updateElementProperty(topo, name, value) {
7
- // const element = topo.getDataModel().getDataById(selection[0].id);
8
13
  var element = topo.getSelectionModel().getFirstData();
9
- console.info("updateElementProperty", topo.getSelectionModel().getSelection(), {
14
+ rlog.debug("updateElementProperty. ", {
10
15
  element: element,
11
16
  name: name,
12
17
  value: value
@@ -32,13 +32,13 @@ function GlobalEdgeToggle(props) {
32
32
  topo: topo,
33
33
  showType: 4
34
34
  });
35
- topo.getHtTopo().expandAllEdgeGroups();
35
+ topo.getHtTopo().toggleAllEdgeGroups(true);
36
36
  } else {
37
37
  (0, _linkUtils.showLinkByConfig)({
38
38
  topo: topo,
39
39
  showType: 1
40
40
  });
41
- topo.getHtTopo().collapseAllEdgeGroups();
41
+ topo.getHtTopo().toggleAllEdgeGroups(false);
42
42
  }
43
43
 
44
44
  displayConfigDispatchers.update({
@@ -34,6 +34,10 @@ function initKeyboardShortcuts(props) {
34
34
 
35
35
  (0, _hotkeysJs["default"])('ctrl+v, command+v', function (event) {
36
36
  return (0, _copyElementUtil.handlePasteHotkey)(event, props);
37
+ }); // 删除
38
+
39
+ (0, _hotkeysJs["default"])('delete', function (event) {
40
+ topoEdit.batchDeleteSelectedElement();
37
41
  });
38
42
  }
39
43
 
@@ -26,27 +26,31 @@ function useNewElementTheme(props) {
26
26
  inited = true;
27
27
  }
28
28
 
29
- function handleDataModelChangeListener(e) {
30
- var kind = e.kind,
31
- data = e.data;
29
+ function handleAddElement(e) {
30
+ var data = e.data; // 设置主题样式
32
31
 
33
- if (kind === 'add') {
34
- // 设置主题样式
35
- var displayConfig = topo.store.getModelState('displayConfig');
36
- var theme = displayConfig.canvasTheme || 'white';
32
+ var displayConfig = topo.store.getModelState('displayConfig');
33
+ var theme = displayConfig.canvasTheme || 'white';
37
34
 
38
- var themeConfig = _themes["default"].find(function (item) {
39
- return item.name === theme;
40
- });
35
+ var themeConfig = _themes["default"].find(function (item) {
36
+ return item.name === theme;
37
+ });
41
38
 
42
- var _ThemeUtil2 = (0, _themeUtil["default"])({
43
- topo: topo
44
- }),
45
- setElementTheme = _ThemeUtil2.setElementTheme;
39
+ var _ThemeUtil = (0, _themeUtil["default"])({
40
+ topo: topo
41
+ }),
42
+ setElementTheme = _ThemeUtil.setElementTheme;
46
43
 
47
- setElementTheme(data, themeConfig); // 临时放这里,新加入节点按配置显示隐藏名称
44
+ setElementTheme(data, themeConfig); // 临时放这里,新加入节点按配置显示隐藏名称
45
+
46
+ (0, _nodeNameVisibleUtil.setNewNodeNameVisible)(topo, data);
47
+ }
48
48
 
49
- (0, _nodeNameVisibleUtil.setNewNodeNameVisible)(topo, data);
49
+ function handleDataModelChangeListener(e) {
50
+ var kind = e.kind;
51
+
52
+ if (kind === 'add') {
53
+ handleAddElement(e);
50
54
  }
51
55
  }
52
56
 
@@ -3,7 +3,6 @@
3
3
  exports.__esModule = true;
4
4
  exports.getEdgesBySelection = getEdgesBySelection;
5
5
  exports.isNodeAllEdges = isNodeAllEdges;
6
- exports.loopEdgesAndChildren = loopEdgesAndChildren;
7
6
  exports.setEdgesType = setEdgesType;
8
7
  exports.updateEdgesData = updateEdgesData;
9
8
 
@@ -25,6 +24,14 @@ function getEdgesBySelection(topo) {
25
24
  return nodeIds;
26
25
  };
27
26
 
27
+ function getVisibleEdgesInNodes(gv, nodes) {
28
+ var nodeIds = getChildrenNodeIds(nodes);
29
+ var dm = gv.getDataModel();
30
+ return (0, _htElementUtils.getEdges)(dm).filter(function (edge) {
31
+ return nodeIds.includes(edge.getSource().getId()) && nodeIds.includes(edge.getTarget().getId());
32
+ }).filter(_htElementUtils.isEdgeVisible);
33
+ }
34
+
28
35
  var getSelectedEdges = function getSelectedEdges(gv) {
29
36
  var selection = gv.getSelectionModel().getSelection().toArray(); // 选中的连线
30
37
 
@@ -35,14 +42,8 @@ function getEdgesBySelection(topo) {
35
42
  var nodes = selection.filter(function (element) {
36
43
  return element instanceof ht.Node;
37
44
  });
38
- var nodeIds = getChildrenNodeIds(nodes);
39
- var dm = gv.getDataModel();
40
- (0, _htElementUtils.getEdges)(dm).forEach(function (edge) {
41
- if (nodeIds.find(function (nodeId) {
42
- return nodeId === edge.getSource().getId();
43
- }) && nodeIds.find(function (nodeId) {
44
- return nodeId === edge.getTarget().getId();
45
- }) && !edges.find(function (item) {
45
+ getVisibleEdgesInNodes(gv, nodes).forEach(function (edge) {
46
+ if (!edges.find(function (item) {
46
47
  return item === edge;
47
48
  })) {
48
49
  edges.push(edge);
@@ -89,30 +90,6 @@ function isNodeAllEdges(topo) {
89
90
  });
90
91
  return inEdges;
91
92
  }
92
- /**
93
- * 遍历连线及子连线
94
- * @param {*} topo
95
- * @param {*} edges
96
- * @param {*} operateEdgeFn
97
- */
98
-
99
-
100
- function loopEdgesAndChildren(topo, edges, operateEdgeFn) {
101
- var htTopo = topo.getHtTopo();
102
- edges.forEach(function (edge) {
103
- operateEdgeFn(edge);
104
-
105
- if (edge.isEdgeGroupAgent()) {
106
- // 连线组折叠时同时设置子连线
107
- var edgeChildren = edge.getEdgeGroup().getEdges().toArray();
108
- htTopo.toggleEdgeGroup(edge.getSource(), edge.getTarget(), true);
109
- edgeChildren.forEach(function (edgeChild) {
110
- operateEdgeFn(edgeChild);
111
- });
112
- htTopo.toggleEdgeGroup(edge.getSource(), edge.getTarget(), false);
113
- }
114
- });
115
- }
116
93
  /**
117
94
  * 设置连线及子连线。带回退事务控制
118
95
  * @param {*} topo
@@ -137,6 +137,8 @@ function useGraphAlarmDisplay(options) {
137
137
  });
138
138
 
139
139
  function showAlarm() {
140
+ var _topo$historyManager, _topo$historyManager2;
141
+
140
142
  if (!graphLoaded) {
141
143
  return;
142
144
  }
@@ -169,7 +171,9 @@ function useGraphAlarmDisplay(options) {
169
171
  }); // 更新到ht拓扑
170
172
 
171
173
 
174
+ (_topo$historyManager = topo.historyManager) === null || _topo$historyManager === void 0 ? void 0 : _topo$historyManager.setDisabled(true, '推送告警');
172
175
  topo.view.loadAlarm(elementsAlarmLevels);
176
+ (_topo$historyManager2 = topo.historyManager) === null || _topo$historyManager2 === void 0 ? void 0 : _topo$historyManager2.setDisabled(false, '推送告警');
173
177
  }
174
178
 
175
179
  return function () {
@@ -17,7 +17,7 @@ var _ahooks = require("ahooks");
17
17
 
18
18
  var _lodash = _interopRequireDefault(require("lodash"));
19
19
 
20
- var _componentTopologyUtils = require("@riil-frontend/component-topology-utils");
20
+ var _loglevel = _interopRequireDefault(require("loglevel"));
21
21
 
22
22
  var _componentRiilEventEmitter = require("@riil-frontend/component-riil-event-emitter");
23
23
 
@@ -27,10 +27,13 @@ var _useCiAttributeChange = _interopRequireDefault(require("./useCiAttributeChan
27
27
 
28
28
  var _useHtDataPropertyChangeListener = _interopRequireDefault(require("./ht/useHtDataPropertyChangeListener"));
29
29
 
30
+ var rlog = _loglevel["default"].getLogger('topo');
30
31
  /**
31
32
  * 轮询获取指标hooks
32
33
  * @param {*} props
33
34
  */
35
+
36
+
34
37
  var usePolling = function usePolling(props) {
35
38
  var topo = props.topo;
36
39
  var store = topo.store;
@@ -227,20 +230,18 @@ var usePolling = function usePolling(props) {
227
230
 
228
231
  (0, _react.useEffect)(function () {
229
232
  if (topo.options.enableDefaultMetricLoader) {
230
- _componentTopologyUtils.rlog.debug('usePolling.useEffect: 开始轮询', {
233
+ rlog.debug('usePolling.useEffect: 开始轮询', {
231
234
  pollingSwitch: pollingSwitch,
232
235
  resIdsList: resIdsList,
233
236
  resourceOverviewState: resourceOverviewState,
234
237
  resAndMetrics: resAndMetrics
235
238
  });
236
-
237
239
  startPoll();
238
240
  }
239
241
 
240
242
  return function () {
241
243
  if (loading) {
242
- _componentTopologyUtils.rlog.debug('usePolling.useEffect: 结束轮询', resAndMetrics);
243
-
244
+ rlog.debug('usePolling.useEffect: 结束轮询', resAndMetrics);
244
245
  stopPoll();
245
246
  }
246
247
  };
@@ -55,8 +55,7 @@ function _default(props) {
55
55
  var config = getConfigFromHt();
56
56
  return {
57
57
  resources: config.resources,
58
- groups: config.groups,
59
- relateTopoIdList: config.relateTopoIdList
58
+ groups: config.groups
60
59
  };
61
60
  };
62
61