@riil-frontend/component-topology 13.0.5 → 13.0.8

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.
@@ -1,17 +1,17 @@
1
- import { useEffect } from 'react';
1
+ import { useEffect } from "react";
2
2
  /**
3
3
  * 默认情况下,拓扑图不存在链路的动态效果
4
4
  * 未监控的链路,不展示动态效果
5
- * @param {*} props
5
+ * @param {*} props
6
6
  */
7
7
 
8
8
  export default function useEdgeFlow(props) {
9
9
  var topo = props.topo;
10
- var topoState = topo.store.useModelState('topoMod');
11
- var displayConfig = topo.store.useModelState('displayConfig');
10
+ var topoState = topo.store.useModelState("topoMod");
11
+ var displayConfig = topo.store.useModelState("displayConfig");
12
12
  var graphLoaded = topoState.graphLoaded,
13
13
  viewState = topoState.viewState;
14
- var isViewer = viewState !== 'edit';
14
+ var isViewer = viewState !== "edit";
15
15
  var edgeFlow = displayConfig.edgeFlow,
16
16
  edgeFlowDirection = displayConfig.edgeFlowDirection;
17
17
  var resources = topo.dataModel.useCis();
@@ -21,7 +21,7 @@ export default function useEdgeFlow(props) {
21
21
  var edgeFlowConfig = edgeFlow ? {
22
22
  type: edgeFlow,
23
23
  // 必填,支持传送带drip、光点point、箭头arrow
24
- direction: !edgeFlowDirection || edgeFlowDirection === 'from' ? 'to' : 'from' // 流动方向,可为空. 默认上行目的到源
24
+ direction: !edgeFlowDirection || edgeFlowDirection === "from" ? "to" : "from" // 流动方向,可为空. 默认上行目的到源
25
25
 
26
26
  } : null;
27
27
  topo.getHtTopo().setGlobalEdgeFlow(edgeFlowConfig); // 未监控的链路,不展示动态效果
@@ -34,8 +34,12 @@ export default function useEdgeFlow(props) {
34
34
  var element = topo.getDataModel().getDataByTag(id);
35
35
  if (!element) return;
36
36
 
37
- if (element instanceof ht.Edge && isNotMonite) {
38
- element.s('flow', false);
37
+ if (element instanceof ht.Edge) {
38
+ var isBreak = element.a("linkbreak");
39
+
40
+ if (isNotMonite || isBreak) {
41
+ element.s("flow", false);
42
+ }
39
43
  }
40
44
  });
41
45
  }
package/es/style.js CHANGED
@@ -11,14 +11,14 @@ import '@alifd/next/es/tab/style';
11
11
  import '@alifd/next/es/table/style';
12
12
  import '@riil-frontend/component-table-layout/es/style';
13
13
  import '@riil-frontend/component-pager/es/style';
14
- import '@alifd/next/es/button/style';
15
- import '@alifd/next/es/icon/style';
16
14
  import '@alifd/next/es/loading/style';
17
15
  import '@alifd/next/es/divider/style';
18
16
  import '@riil-frontend/component-no-data-page/es/style';
19
17
 
20
18
  import '@alifd/next/es/overlay/style';
21
19
  import '@alifd/next/es/checkbox/style';
20
+ import '@alifd/next/es/button/style';
21
+ import '@alifd/next/es/icon/style';
22
22
  import '@riil-frontend/component-crucial-link-topo/es/style';
23
23
  import '@alifd/next/es/switch/style';
24
24
  import '@alifd/next/es/input/style';
@@ -15,17 +15,7 @@ var _useGraphAlarmDisplay = _interopRequireDefault(require("./useGraphAlarmDispl
15
15
 
16
16
  var _useTopoEventListener = _interopRequireDefault(require("./useTopoEventListener"));
17
17
 
18
- // 告警在活状态
19
- var showAlarmStatus = ["toDeal", "dealing", "change", "woDealing"];
20
- /**
21
- * 告警是否在活
22
- * @param {*} alarm
23
- * @returns
24
- */
25
-
26
- var isAlarmAlive = function isAlarmAlive(alarm) {
27
- return showAlarmStatus.indexOf(alarm.status) >= 0;
28
- };
18
+ var _alarmUtil = require("../utils/alarmUtil");
29
19
 
30
20
  var handleRiskData = function handleRiskData(topo, receivedData) {
31
21
  var _risks, _topo$viewProps, _topo$viewProps2;
@@ -35,7 +25,7 @@ var handleRiskData = function handleRiskData(topo, receivedData) {
35
25
  // 已关闭 closed
36
26
  var prevRisks = topo.store.getModelState('topoAlarm').risks;
37
27
 
38
- var isLiveRisk = function isLiveRisk(data) {
28
+ var isRiskAlive = function isRiskAlive(data) {
39
29
  return ['recovered', 'closed'].indexOf(data.status) === -1;
40
30
  };
41
31
 
@@ -64,7 +54,7 @@ var handleRiskData = function handleRiskData(topo, receivedData) {
64
54
  (_risks = risks).push.apply(_risks, addRisks); // 过滤掉无权限、非在活的
65
55
 
66
56
 
67
- risks = risks.filter(isLiveRisk).filter(hasCiPermission).sort(function (a, b) {
57
+ risks = risks.filter(isRiskAlive).filter(hasCiPermission).sort(function (a, b) {
68
58
  return a.executeTime - b.executeTime;
69
59
  });
70
60
 
@@ -149,7 +139,7 @@ function convertAlarmData(alarms) {
149
139
  // 数据id
150
140
  resourceId: resourceId,
151
141
  // 是否在活
152
- alive: isAlarmAlive(alarm)
142
+ alive: (0, _alarmUtil.isAlarmAlive)(alarm)
153
143
  });
154
144
  });
155
145
  }
@@ -7,7 +7,7 @@ exports["default"] = useGraphAlarmDisplay;
7
7
 
8
8
  var _react = require("react");
9
9
 
10
- var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-utils/es/rlog"));
10
+ var _loglevel = _interopRequireDefault(require("loglevel"));
11
11
 
12
12
  var _htElementUtils = require("../../utils/htElementUtils");
13
13
 
@@ -15,14 +15,17 @@ var _showGraphManageStatusUtil = require("../utils/showGraphManageStatusUtil");
15
15
 
16
16
  var _useCmpLinkAlarm2 = _interopRequireDefault(require("./useCmpLinkAlarm"));
17
17
 
18
- // import useLinkAlarmDisplay from "./useLinkAlarmDisplay";
18
+ var _useLinkAlarmDisplay2 = _interopRequireDefault(require("./useLinkAlarmDisplay"));
19
19
 
20
+ var rlog = _loglevel["default"].getLogger('topo');
20
21
  /**
21
22
  * 获取ci的最高告警级别
22
23
  * @param {Array} alarmList
23
24
  * @param {*} risks
24
25
  * @returns
25
26
  */
27
+
28
+
26
29
  function getCiAlarmLevelMap(alarmList) {
27
30
  var ciIdLevelMap = {};
28
31
  alarmList.forEach(function (item) {
@@ -114,23 +117,27 @@ function useGraphAlarmDisplay(options) {
114
117
 
115
118
  var cmpRes = (0, _react.useMemo)(function () {
116
119
  return addCmpLinkOfflineStatusForDisplayLineColor(oldResources, cmpLinkRunStatus);
117
- }, [oldResources, cmpLinkRunStatus]);
118
- var resources = [].concat(cmpRes); // 拓扑链路特殊处理 暂时屏蔽这部分处理
119
- // const {
120
- // // linkAlarmLevels,
121
- // linkRunStatus,
122
- // getlinkAlarmLevels,
123
- // } = useLinkAlarmDisplay({ topo, resources: cmpRes, graphLoaded, alarmList });
124
- // const linkAlarmLevels = getlinkAlarmLevels(alarmList, cmpRes);
125
- // 排除掉处于断开状态的链路
126
- // const resources = cmpRes.filter((item) => {
127
- // return !item.breakState;
128
- // });
129
- /// 屏蔽------------
120
+ }, [oldResources, cmpLinkRunStatus]); // const resources=[...cmpRes];
121
+ // 拓扑链路特殊处理 暂时屏蔽这部分处理
122
+
123
+ var _useLinkAlarmDisplay = (0, _useLinkAlarmDisplay2["default"])({
124
+ topo: topo,
125
+ resources: cmpRes,
126
+ graphLoaded: graphLoaded,
127
+ alarmList: alarmList
128
+ }),
129
+ linkRunStatus = _useLinkAlarmDisplay.linkRunStatus,
130
+ getlinkAlarmLevels = _useLinkAlarmDisplay.getlinkAlarmLevels;
131
+
132
+ var linkAlarmLevels = getlinkAlarmLevels(alarmList, cmpRes); // 排除掉处于断开状态的链路
133
+
134
+ var resources = cmpRes.filter(function (item) {
135
+ return !item.breakState;
136
+ }); /// 屏蔽------------
130
137
  // ci告警级别
131
138
 
132
139
  var cisEventLevel = (0, _react.useMemo)(function () {
133
- var levels = [].concat(alarmList || [], cmpLinkAlarmLevels, risks.map(function (item) {
140
+ var levels = [].concat(alarmList || [], cmpLinkAlarmLevels, linkAlarmLevels, risks.map(function (item) {
134
141
  var _item$resourceId;
135
142
 
136
143
  return {
@@ -188,14 +195,12 @@ function useGraphAlarmDisplay(options) {
188
195
  })) === null || _elementsAlarmLevels$ === void 0 ? void 0 : _elementsAlarmLevels$.level;
189
196
  element.a("alarmLevel", alarmLevel);
190
197
  });
191
-
192
- _rlog["default"].debug("推送告警 => ht", {
198
+ rlog.debug("推送告警 => ht", {
193
199
  alarms: elementsAlarmLevels,
194
200
  relateTopoAlarmMap: relateTopoAlarm,
195
201
  relateTopoAlarms: relateTopoAlarms
196
202
  }); // 更新到ht拓扑
197
203
 
198
-
199
204
  (_topo$historyManager = topo.historyManager) === null || _topo$historyManager === void 0 ? void 0 : _topo$historyManager.setDisabled(true, "推送告警");
200
205
  topo.view.loadAlarm(elementsAlarmLevels);
201
206
  (_topo$historyManager2 = topo.historyManager) === null || _topo$historyManager2 === void 0 ? void 0 : _topo$historyManager2.setDisabled(false, "推送告警");
@@ -143,6 +143,7 @@ var usePolling = function usePolling(props) {
143
143
  position: 17,
144
144
  icon: "resource.link.linkbreak"
145
145
  });
146
+ element === null || element === void 0 ? void 0 : element.a('linkbreak', true);
146
147
  topo.dataModel.updateData([(0, _extends2["default"])({}, link, {
147
148
  breakState: true
148
149
  })]);
@@ -11,12 +11,12 @@ var _dialog = _interopRequireDefault(require("@alifd/next/lib/dialog"));
11
11
 
12
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
13
13
 
14
- var _topo = _interopRequireDefault(require("@riil-frontend/component-topology-common/es/services/topo"));
15
-
16
- var _componentTopologyUtils = require("@riil-frontend/component-topology-utils");
14
+ var _loglevel = _interopRequireDefault(require("loglevel"));
17
15
 
18
16
  var _utils = require("@riil-frontend/utils");
19
17
 
18
+ var rlog = _loglevel["default"].getLogger('topo');
19
+
20
20
  var Alarm = /*#__PURE__*/function () {
21
21
  function Alarm() {
22
22
  this.topo = void 0;
@@ -94,8 +94,7 @@ var Alarm = /*#__PURE__*/function () {
94
94
  return;
95
95
  }
96
96
 
97
- _componentTopologyUtils.rlog.info('Alarm.open 打开告警通道', id);
98
-
97
+ rlog.info('Alarm.open 打开告警通道', id);
99
98
  this.openTopoAlarm(id);
100
99
  this.hmGetTopoAlarmByDoc(id);
101
100
  }
@@ -115,10 +114,9 @@ var Alarm = /*#__PURE__*/function () {
115
114
  return;
116
115
  }
117
116
 
118
- _componentTopologyUtils.rlog.info('关闭告警通道', currentTopoId); // 取消订阅告警推送
117
+ rlog.info('关闭告警通道', currentTopoId); // 取消订阅告警推送
119
118
  // 关闭告警推送通道
120
119
 
121
-
122
120
  this.closeTopoAlarm(currentTopoId);
123
121
  };
124
122
 
@@ -197,9 +195,7 @@ var Alarm = /*#__PURE__*/function () {
197
195
  while (1) switch (_context2.prev = _context2.next) {
198
196
  case 0:
199
197
  result = this.getAlarms();
200
-
201
- _componentTopologyUtils.rlog.debug('hmGetTopoAlarmByDoc', result);
202
-
198
+ rlog.debug('hmGetTopoAlarmByDoc', result);
203
199
  alarms = result.map(function (item) {
204
200
  return item.obj;
205
201
  });
@@ -333,9 +329,7 @@ var Alarm = /*#__PURE__*/function () {
333
329
 
334
330
  case 11:
335
331
  this.secretKey = _context5.sent;
336
-
337
- _componentTopologyUtils.rlog.info('openTopoAlarm 打开拓扑告警推送-------------------开始');
338
-
332
+ rlog.info('openTopoAlarm 打开拓扑告警推送-------------------开始');
339
333
  this.updateState({
340
334
  alarmOpening: false,
341
335
  alarmIsOpened: true
@@ -346,9 +340,7 @@ var Alarm = /*#__PURE__*/function () {
346
340
  case 16:
347
341
  _context5.prev = 16;
348
342
  _context5.t0 = _context5["catch"](8);
349
-
350
- _componentTopologyUtils.rlog.error('打开拓扑告警推送 失败');
351
-
343
+ rlog.error('打开拓扑告警推送 失败');
352
344
  this.updateState({
353
345
  alarmOpening: false
354
346
  });
@@ -394,9 +386,7 @@ var Alarm = /*#__PURE__*/function () {
394
386
 
395
387
  case 3:
396
388
  this.currentTopoId = null;
397
-
398
- _componentTopologyUtils.rlog.debug('useAlarm.useEffect 告警WebSocket 结束');
399
-
389
+ rlog.debug('useAlarm.useEffect 告警WebSocket 结束');
400
390
  this.updateState({
401
391
  topoAlarmIsOpen: false,
402
392
  alarmOpening: false,
@@ -478,7 +468,7 @@ var Alarm = /*#__PURE__*/function () {
478
468
  resIdsList = resAndMetrics.resIdsList, nodeIdsList = resAndMetrics.nodeIdsList, linkIdsList = resAndMetrics.linkIdsList;
479
469
  alarmDispatchers = this.topo.store.getModelDispatchers('topoAlarm'); // 添加事件
480
470
 
481
- console.log("handleAlarmEvent-接收到推送的原始告警信息", alertData);
471
+ rlog.debug("handleAlarmEvent-接收到推送的原始告警信息", alertData);
482
472
 
483
473
  if (!((0, _utils.isAvailableArray)(alertData) && (0, _utils.isAvailableArray)(resIdsList))) {
484
474
  _context8.next = 25;
@@ -521,8 +511,7 @@ var Alarm = /*#__PURE__*/function () {
521
511
  break;
522
512
  }
523
513
 
524
- _componentTopologyUtils.rlog.debug('过滤掉非本拓扑的告警信息 告警开关-推送告警到ht-alarmIsOpened-sendAl', alarmIsOpened, sendAl);
525
-
514
+ rlog.debug('过滤掉非本拓扑的告警信息 告警开关-推送告警到ht-alarmIsOpened-sendAl', alarmIsOpened, sendAl);
526
515
  _context8.prev = 13;
527
516
  _context8.next = 16;
528
517
  return alarmDispatchers.combAlarmData({
@@ -556,8 +545,7 @@ var Alarm = /*#__PURE__*/function () {
556
545
  case 22:
557
546
  _context8.prev = 22;
558
547
  _context8.t0 = _context8["catch"](13);
559
-
560
- _componentTopologyUtils.rlog.error('告警发送异常', _context8.t0);
548
+ rlog.error('告警发送异常', _context8.t0);
561
549
 
562
550
  case 25:
563
551
  case "end":
@@ -54,7 +54,7 @@ var _SelectionModel = _interopRequireDefault(require("./SelectionModel"));
54
54
  var _CiCache = _interopRequireDefault(require("./cache/CiCache"));
55
55
 
56
56
  // eslint-disable-next-line no-undef
57
- var version = typeof "13.0.5" === 'string' ? "13.0.5" : null;
57
+ var version = typeof "13.0.8" === 'string' ? "13.0.8" : null;
58
58
  console.info("\u62D3\u6251\u7248\u672C: " + version);
59
59
  /**
60
60
  * 拓扑显示和编辑
@@ -11,14 +11,17 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
11
11
 
12
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
13
 
14
- var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-utils/es/rlog"));
14
+ var _loglevel = _interopRequireDefault(require("loglevel"));
15
15
 
16
16
  var _lodash = _interopRequireDefault(require("lodash"));
17
17
 
18
18
  /**
19
19
  * 告警
20
20
  */
21
- var showAlarmStatus = ["toDeal", "dealing", "change", "woDealing"];
21
+ var rlog = _loglevel["default"].getLogger('topo'); // 在活告警状态
22
+
23
+
24
+ var aliveAlarmStatus = ["toDeal", "dealing", "change", "woDealing"];
22
25
 
23
26
  var sortList = function sortList(a, b) {
24
27
  if (a.level === b.level) {
@@ -122,7 +125,7 @@ function _default(topo) {
122
125
 
123
126
  if ((resIdsList || []).indexOf(rid) >= 0) {
124
127
  if (record.indexOf(item.alertId) < 0) {
125
- if (showAlarmStatus.indexOf(item.status) >= 0) {
128
+ if (aliveAlarmStatus.indexOf(item.status) >= 0) {
126
129
  // rlog.debug("这是一条新告警", item);
127
130
  record.push(item.alertId);
128
131
 
@@ -138,7 +141,7 @@ function _default(topo) {
138
141
  doc[rid] = [item];
139
142
  }
140
143
  } else {
141
- _rlog["default"].warn("接收到异常或已关闭的告警", item);
144
+ rlog.warn("接收到异常或已关闭的告警", item);
142
145
  }
143
146
  } else {
144
147
  sliceTag = doc[rid].findIndex(function (x) {
@@ -152,7 +155,7 @@ function _default(topo) {
152
155
  // item
153
156
  // );
154
157
 
155
- if (showAlarmStatus.indexOf(item.status) >= 0) {
158
+ if (aliveAlarmStatus.indexOf(item.status) >= 0) {
156
159
  if (item.status === "change") {
157
160
  old = doc[rid][sliceTag];
158
161
 
@@ -164,10 +167,9 @@ function _default(topo) {
164
167
  }));
165
168
 
166
169
  doc[rid] = _newArr.sort(sortList);
167
-
168
- _rlog["default"].debug("告警级别变更", doc[rid], item);
170
+ rlog.debug("告警级别变更", doc[rid], item);
169
171
  } else {
170
- _rlog["default"].debug("接收到异常的重复告警", item);
172
+ rlog.debug("接收到异常的重复告警", item);
171
173
  }
172
174
  } else {// rlog.debug("重复告警", item);
173
175
  }
@@ -180,7 +182,7 @@ function _default(topo) {
180
182
  doc[rid] = _newArr2;
181
183
  }
182
184
 
183
- _rlog["default"].debug("该告警移除状态-status", item.status, doc[rid], doc);
185
+ rlog.debug("该告警移除状态-status", item.status, doc[rid], doc);
184
186
 
185
187
  if (doc[rid].length === 0) {
186
188
  delete doc[rid];
@@ -221,14 +223,13 @@ function _default(topo) {
221
223
  }); // 传递给HT时,链路要用r开头的id
222
224
  // rlog.debug('xxxxxxxxxxxxxxxxxxxx', doc[id][0], alarmObj.status);
223
225
 
224
- return showAlarmStatus.indexOf(alarmObj.status) >= 0 ? alarmObj : null;
226
+ return aliveAlarmStatus.indexOf(alarmObj.status) >= 0 ? alarmObj : null;
225
227
  } else {
226
228
  return null;
227
229
  }
228
230
  }));
229
231
  eqFlag = _lodash["default"].isEqual(_lodash["default"].sortBy(alarmlist), _lodash["default"].sortBy(currentAlarmList));
230
-
231
- _rlog["default"].debug("告警归档结束", eqFlag, currentAlarmList, alarmlist, doc, record);
232
+ rlog.debug("告警归档结束", eqFlag, currentAlarmList, alarmlist, doc, record);
232
233
 
233
234
  _this2.update({
234
235
  alarmDoc: doc,
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.isAlarmAlive = void 0;
5
+ // 告警在活状态
6
+ var Alarm_alive_Status = ["toDeal", "dealing", "change", "woDealing"];
7
+ /**
8
+ * 告警是否在活
9
+ * @param {*} alarm
10
+ * @returns
11
+ */
12
+
13
+ var isAlarmAlive = function isAlarmAlive(alarm) {
14
+ return Alarm_alive_Status.includes(alarm.status);
15
+ };
16
+
17
+ exports.isAlarmAlive = isAlarmAlive;
@@ -19,6 +19,8 @@ var _react = _interopRequireDefault(require("react"));
19
19
 
20
20
  var _moment = _interopRequireDefault(require("moment"));
21
21
 
22
+ var _createAppShared = require("create-app-shared");
23
+
22
24
  var _BlockBox = _interopRequireDefault(require("./BlockBox"));
23
25
 
24
26
  var _Link = _interopRequireDefault(require("../../../../../../../components/Link"));
@@ -57,7 +59,7 @@ function EventsCard(props) {
57
59
  log.debug('formatUrl(url)', url);
58
60
  topo.viewProps.jumpto(url);
59
61
  } else {
60
- (0, _componentTopologyUtils.getHistory)().push(formatUrl(url));
62
+ ((0, _componentTopologyUtils.getHistory)() || _createAppShared.history).push(formatUrl(url));
61
63
  }
62
64
  }; // 告警table列配置
63
65
 
@@ -67,34 +69,19 @@ function EventsCard(props) {
67
69
  dataIndex: "title",
68
70
  key: "title",
69
71
  cell: function cell(value, index, record) {
70
- return (
71
- /*#__PURE__*/
72
- // <div
73
- // className={styles["alarm-title"]}
74
- // title={value}
75
- // onClick={closeDetailDrawer}
76
- // >
77
- // <Icon
78
- // type={record.icon}
79
- // size="xs"
80
- // className={`${styles["alarm-color-icon"]} ${record.className}`}
81
- // />
82
- // <Link to={formatUrl(record.link)}>{value}</Link>
83
- // </div>
84
- _react["default"].createElement("div", {
85
- className: _indexModule["default"]['alarm-title'],
86
- title: value,
87
- onClick: function onClick() {
88
- jumpTo(record.link);
89
- }
90
- }, /*#__PURE__*/_react["default"].createElement(_icon["default"], {
91
- type: record.icon,
92
- size: "xs",
93
- className: _indexModule["default"]['alarm-color-icon'] + " " + record.className
94
- }), /*#__PURE__*/_react["default"].createElement("span", {
95
- className: _indexModule["default"].link
96
- }, value))
97
- );
72
+ return /*#__PURE__*/_react["default"].createElement("div", {
73
+ className: _indexModule["default"]['alarm-title'],
74
+ title: value,
75
+ onClick: function onClick() {
76
+ jumpTo(record.link);
77
+ }
78
+ }, /*#__PURE__*/_react["default"].createElement(_icon["default"], {
79
+ type: record.icon,
80
+ size: "xs",
81
+ className: _indexModule["default"]['alarm-color-icon'] + " " + record.className
82
+ }), /*#__PURE__*/_react["default"].createElement("span", {
83
+ className: _indexModule["default"].link
84
+ }, value));
98
85
  }
99
86
  }, {
100
87
  title: "时间",