@riil-frontend/component-topology 7.0.0-dev.1 → 7.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 (62) hide show
  1. package/build/1.js +1 -1
  2. package/build/index.css +1 -1
  3. package/build/index.js +13 -13
  4. package/es/core/components/TopoView/topoView.js +15 -20
  5. package/es/core/components/titlebar/index.js +2 -1
  6. package/es/core/editor/components/EditorPlugin.js +1 -2
  7. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +2 -1
  8. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +6 -1
  9. package/es/core/editor/components/settings/propertyViews/node/data/Data.js +2 -1
  10. package/es/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +4 -2
  11. package/es/core/editor/hooks/useKeyboardShortcut.js +1 -1
  12. package/es/core/hooks/useTopoEdit.js +131 -169
  13. package/es/core/models/TopoApp.js +1 -1
  14. package/es/core/models/topoData.js +3 -3
  15. package/es/core/store/coreModels.js +2 -0
  16. package/es/core/store/models/selection.js +3 -1
  17. package/es/core/store/models/topoConfig.js +7 -5
  18. package/es/core/store/models/topoMod.js +1 -1
  19. package/es/core/store/models/viewer/resourceDetail.js +31 -0
  20. package/es/core/utils/saveSerialize.js +2 -3
  21. package/es/core/viewer/components/plugins/ResourceDetail/ResourceDetail.js +2 -5
  22. package/es/core/viewer/components/plugins/ResourceDetail/ResourceDetailDrawer.js +72 -43
  23. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +136 -0
  24. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +9 -16
  25. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +1 -1
  26. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/index.module.scss +119 -117
  27. package/es/core/viewer/components/titlebar/BasicTools.js +3 -16
  28. package/es/core/viewer/components/titlebar/widgets/AlarmButton.js +25 -0
  29. package/es/networkTopo/getTopoData.js +2 -3
  30. package/es/networkTopo/store/topoCenter.js +27 -4
  31. package/es/style.js +22 -22
  32. package/lib/core/components/TopoView/topoView.js +15 -21
  33. package/lib/core/components/titlebar/index.js +5 -1
  34. package/lib/core/editor/components/EditorPlugin.js +1 -3
  35. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +2 -1
  36. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +6 -1
  37. package/lib/core/editor/components/settings/propertyViews/node/data/Data.js +2 -1
  38. package/lib/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +4 -2
  39. package/lib/core/editor/hooks/useKeyboardShortcut.js +1 -1
  40. package/lib/core/hooks/useTopoEdit.js +131 -169
  41. package/lib/core/models/TopoApp.js +1 -1
  42. package/lib/core/models/topoData.js +7 -11
  43. package/lib/core/store/coreModels.js +3 -0
  44. package/lib/core/store/models/selection.js +3 -1
  45. package/lib/core/store/models/topoConfig.js +7 -5
  46. package/lib/core/store/models/topoMod.js +1 -1
  47. package/lib/core/store/models/viewer/resourceDetail.js +40 -0
  48. package/lib/core/utils/saveSerialize.js +1 -3
  49. package/lib/core/viewer/components/plugins/ResourceDetail/ResourceDetail.js +2 -5
  50. package/lib/core/viewer/components/plugins/ResourceDetail/ResourceDetailDrawer.js +71 -46
  51. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +156 -0
  52. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +9 -16
  53. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +1 -1
  54. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/index.module.scss +119 -117
  55. package/lib/core/viewer/components/titlebar/BasicTools.js +3 -17
  56. package/lib/core/viewer/components/titlebar/widgets/AlarmButton.js +36 -0
  57. package/lib/networkTopo/getTopoData.js +3 -5
  58. package/lib/networkTopo/store/topoCenter.js +27 -4
  59. package/lib/style.js +22 -22
  60. package/package.json +2 -2
  61. package/es/core/editor/components/plugins/MultipleResourceSelectPlugin.js +0 -15
  62. package/lib/core/editor/components/plugins/MultipleResourceSelectPlugin.js +0 -25
@@ -54,7 +54,7 @@ var _ElementTagTipConfig = _interopRequireDefault(require("./tagstips/ElementTag
54
54
  var _SelectionModel = _interopRequireDefault(require("./SelectionModel"));
55
55
 
56
56
  // eslint-disable-next-line no-undef
57
- var version = typeof "7.0.0-dev.1" === 'string' ? "7.0.0-dev.1" : null;
57
+ var version = typeof "7.0.0-dev.10" === 'string' ? "7.0.0-dev.10" : null;
58
58
  console.info("\u62D3\u6251\u7248\u672C: " + version);
59
59
  /**
60
60
  * 拓扑显示和编辑
@@ -13,14 +13,10 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
13
13
 
14
14
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
15
 
16
- var _topo = _interopRequireWildcard(require("@riil-frontend/component-topology-common/es/services/topo"));
16
+ var _topo = require("@riil-frontend/component-topology-common/es/services/topo");
17
17
 
18
18
  var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-utils/es/rlog"));
19
19
 
20
- 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); }
21
-
22
- 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; }
23
-
24
20
  function getLayoutId(layout) {
25
21
  if (!layout || typeof layout === "string") {
26
22
  return layout;
@@ -53,12 +49,12 @@ function saveTopo(_x) {
53
49
 
54
50
  function _saveTopo() {
55
51
  _saveTopo = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(data) {
56
- var topoId, template, layout, backgroundId, globalConfig, serialize, resources, groups, exportLinkIdList, relateTopoIdList, viewGroupId, groupInfo, viewResources;
52
+ var topoService, topoId, template, layout, backgroundId, globalConfig, serialize, resources, groups, exportLinkIdList, relateTopoIdList, viewGroupId, groupInfo, viewResources;
57
53
  return _regenerator["default"].wrap(function _callee$(_context) {
58
54
  while (1) {
59
55
  switch (_context.prev = _context.next) {
60
56
  case 0:
61
- topoId = data.id, template = data.template, layout = data.layout, backgroundId = data.backgroundId, globalConfig = data.globalConfig, serialize = data.serialize, resources = data.resources, groups = data.groups, exportLinkIdList = data.exportLinkIdList, relateTopoIdList = data.relateTopoIdList, viewGroupId = data.viewGroupId;
57
+ topoService = data.topoService, topoId = data.id, template = data.template, layout = data.layout, backgroundId = data.backgroundId, globalConfig = data.globalConfig, serialize = data.serialize, resources = data.resources, groups = data.groups, exportLinkIdList = data.exportLinkIdList, relateTopoIdList = data.relateTopoIdList, viewGroupId = data.viewGroupId;
62
58
 
63
59
  _rlog["default"].debug("saveTopo", data); // 保存布局
64
60
 
@@ -69,7 +65,7 @@ function _saveTopo() {
69
65
  }
70
66
 
71
67
  _context.next = 5;
72
- return _topo["default"].changeLayout({
68
+ return topoService.changeLayout({
73
69
  id: topoId,
74
70
  template: template,
75
71
  layout: getLayoutId(layout),
@@ -83,7 +79,7 @@ function _saveTopo() {
83
79
  }
84
80
 
85
81
  _context.next = 8;
86
- return _topo["default"].saveTopoSettings(topoId, globalConfig);
82
+ return topoService.saveTopoSettings(topoId, globalConfig);
87
83
 
88
84
  case 8:
89
85
  if (!(resources || groups)) {
@@ -112,7 +108,7 @@ function _saveTopo() {
112
108
  _rlog["default"].debug("saveTopo-groupInfo", groupInfo);
113
109
 
114
110
  _context.next = 15;
115
- return _topo["default"].bindResourceToTopo(topoId, {
111
+ return topoService.bindResourceToTopo(topoId, {
116
112
  groups: groupInfo,
117
113
  exportLinkIdList: exportLinkIdList,
118
114
  relateTopoIdList: relateTopoIdList
@@ -125,7 +121,7 @@ function _saveTopo() {
125
121
  }
126
122
 
127
123
  _context.next = 18;
128
- return _topo["default"].saveSerializeData(topoId, serialize);
124
+ return topoService.saveSerializeData(topoId, serialize);
129
125
 
130
126
  case 18:
131
127
  case "end":
@@ -27,6 +27,8 @@ var _topoAlarm = _interopRequireDefault(require("./models/topoAlarm"));
27
27
 
28
28
  var _displayConfig = _interopRequireDefault(require("./models/displayConfig"));
29
29
 
30
+ var _resourceDetail = _interopRequireDefault(require("./models/viewer/resourceDetail"));
31
+
30
32
  var _topoBaseInfoOverview = _interopRequireDefault(require("./models/topoBaseInfoOverview"));
31
33
 
32
34
  var _lock = _interopRequireDefault(require("./models/viewer/lock"));
@@ -46,6 +48,7 @@ var _default = {
46
48
  // 显示模式
47
49
  topoAlarm: _topoAlarm["default"],
48
50
  displayConfig: _displayConfig["default"],
51
+ resourceDetail: _resourceDetail["default"],
49
52
  topoBaseInfoOverview: _topoBaseInfoOverview["default"],
50
53
  lock: _lock["default"]
51
54
  };
@@ -20,7 +20,9 @@ var _default = {
20
20
  // 定义 model 的初始 state
21
21
  state: {
22
22
  selection: [],
23
- selectionIds: []
23
+ selectionIds: [],
24
+ initSelectionId: null // 初始化选中元素
25
+
24
26
  },
25
27
  // 定义改变该模型状态的纯函数
26
28
  reducers: {
@@ -197,7 +197,7 @@ function _default(topoApp) {
197
197
  switch (_context.prev = _context.next) {
198
198
  case 0:
199
199
  _context.next = 2;
200
- return _topo["default"].getConditions(topoApp.id);
200
+ return topoApp.serverApi.getConditions(topoApp.id);
201
201
 
202
202
  case 2:
203
203
  data = _context.sent;
@@ -347,7 +347,7 @@ function _default(topoApp) {
347
347
  }); // rlog.debug("getTopoByConditions--------", viewConditions, groupInfo);
348
348
 
349
349
  _context4.next = 5;
350
- return _topo["default"].getTopoDataByResource(topoId, viewConditions, groupInfo, exportLinkIdList);
350
+ return topoApp.serverApi.getTopoDataByResource(topoId, viewConditions, groupInfo, exportLinkIdList);
351
351
 
352
352
  case 5:
353
353
  data = _context4.sent;
@@ -415,7 +415,7 @@ function _default(topoApp) {
415
415
  _rlog["default"].debug('saveGlobalConfig', config);
416
416
 
417
417
  _context5.next = 5;
418
- return _topo["default"].saveTopoSettings(topoApp.id, config);
418
+ return topoApp.serverApi.saveTopoSettings(topoApp.id, config);
419
419
 
420
420
  case 5:
421
421
  case "end":
@@ -438,7 +438,9 @@ function _default(topoApp) {
438
438
  case 0:
439
439
  currentBackground = topoApp.store.getModelState("background").current;
440
440
  _context6.next = 3;
441
- return (0, _topoData2.saveTopo)((0, _extends2["default"])({}, data, {
441
+ return (0, _topoData2.saveTopo)((0, _extends2["default"])({
442
+ topoService: topoApp.serverApi
443
+ }, data, {
442
444
  viewGroupId: (_state$topoConfig$vie = state.topoConfig.viewGroup) === null || _state$topoConfig$vie === void 0 ? void 0 : _state$topoConfig$vie.id,
443
445
  template: state.topoMod.type,
444
446
  // 背景图
@@ -466,7 +468,7 @@ function _default(topoApp) {
466
468
  case 0:
467
469
  topoId = data.id, ciIdList = data.ciIdList;
468
470
  _context7.next = 3;
469
- return _topo["default"].addToBlocklist(topoId, ciIdList);
471
+ return topoApp.serverApi.addToBlocklist(topoId, ciIdList);
470
472
 
471
473
  case 3:
472
474
  case "end":
@@ -417,7 +417,7 @@ function _default(topoApp) {
417
417
 
418
418
  case 29:
419
419
  _context6.next = 31;
420
- return topoApp.options.loadData(topoId);
420
+ return topoApp.options.loadData(topoId, topoApp.serverApi);
421
421
 
422
422
  case 31:
423
423
  result = _context6.sent;
@@ -0,0 +1,40 @@
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 _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-utils/es/rlog"));
11
+
12
+ /**
13
+ * 资源概览
14
+ */
15
+ var _default = {
16
+ // 定义 model 的初始 state
17
+ state: {
18
+ visible: false,
19
+ id: null // 资源id
20
+
21
+ },
22
+ // 定义改变该模型状态的纯函数
23
+ reducers: {
24
+ update: function update(prevState, payload) {
25
+ return (0, _extends2["default"])({}, prevState, payload);
26
+ },
27
+ reset: function reset(prevState, payload) {
28
+ return {
29
+ visible: false,
30
+ id: null // 资源id
31
+
32
+ };
33
+ }
34
+ },
35
+ // 定义处理该模型副作用的函数
36
+ effects: function effects(dispatch) {
37
+ return {};
38
+ }
39
+ };
40
+ exports["default"] = _default;
@@ -9,8 +9,6 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
9
9
 
10
10
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
11
11
 
12
- var _topo = _interopRequireDefault(require("@riil-frontend/component-topology-common/es/services/topo"));
13
-
14
12
  /**
15
13
  * 增加保存拓扑序列化数据方法,以便于拓扑中心和业务拓扑使用
16
14
  *
@@ -30,7 +28,7 @@ function _saveSerialize() {
30
28
  topoId = topo.getId();
31
29
  serialize = topo.getHtTopo().serialize();
32
30
  _context.next = 4;
33
- return _topo["default"].saveSerializeData(topoId, serialize);
31
+ return topo.serverApi.saveSerializeData(topoId, serialize);
34
32
 
35
33
  case 4:
36
34
  case "end":
@@ -25,10 +25,7 @@ function ResourceDetail(props) {
25
25
  var topo = props.topo,
26
26
  userId = props.userId,
27
27
  activeData = props.activeData,
28
- resourceData = props.resourceData; // {/* <Tab.Item title="操作" key="2">操作</Tab.Item>
29
- // <Tab.Item title="网络信息表" key="3">网络信息表</Tab.Item>
30
- // <Tab.Item title="Web工作台" key="4">Web工作台</Tab.Item> */}
31
-
28
+ resourceData = props.resourceData;
32
29
  var tabBodys = [{
33
30
  title: '资源概览',
34
31
  content: /*#__PURE__*/_react["default"].createElement(_ResourceOverview["default"], (0, _extends2["default"])({}, props, activeData, {
@@ -47,7 +44,7 @@ function ResourceDetail(props) {
47
44
  data: resourceData,
48
45
  topo: topo
49
46
  }),
50
- visible: activeData.type === 'node' && !!((_topo$viewProps = topo.viewProps) !== null && _topo$viewProps !== void 0 && (_topo$viewProps$topoC = _topo$viewProps.topoContext) !== null && _topo$viewProps$topoC !== void 0 && _topo$viewProps$topoC.isNetworkTopo)
47
+ visible: resourceData.type === 'node' && !!((_topo$viewProps = topo.viewProps) !== null && _topo$viewProps !== void 0 && (_topo$viewProps$topoC = _topo$viewProps.topoContext) !== null && _topo$viewProps$topoC !== void 0 && _topo$viewProps$topoC.isNetworkTopo)
51
48
  }].filter(function (item) {
52
49
  return item.visible !== false;
53
50
  });
@@ -19,18 +19,10 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
19
19
 
20
20
  var _react = _interopRequireWildcard(require("react"));
21
21
 
22
- var _FullheightTab = _interopRequireDefault(require("../../../../../components/FullheightTab"));
23
-
24
22
  var _overview = _interopRequireDefault(require("../../../../services/overview"));
25
23
 
26
- var _ClusterMemberTable = _interopRequireDefault(require("./components/ClusterMemberTable"));
27
-
28
24
  var _DrawerTitle = _interopRequireDefault(require("./components/DrawerTitle"));
29
25
 
30
- var _ResourceOverview = _interopRequireDefault(require("./components/ResourceOverview"));
31
-
32
- var _WebConsoleContainer = _interopRequireDefault(require("./components/WebConsole/WebConsoleContainer"));
33
-
34
26
  var _indexModule = _interopRequireDefault(require("./index.module.scss"));
35
27
 
36
28
  var _ResourceDetail = _interopRequireDefault(require("./ResourceDetail"));
@@ -42,7 +34,8 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
42
34
  // 基本信息
43
35
  function ResourceDetailDrawer(props) {
44
36
  var topo = props.topo,
45
- canShow = props.canShow;
37
+ canShow = props.canShow,
38
+ viewerProps = props.viewerProps;
46
39
 
47
40
  var _topo$store$useModel = topo.store.useModel('topoBaseInfoOverview'),
48
41
  topoState = _topo$store$useModel[0],
@@ -55,26 +48,35 @@ function ResourceDetailDrawer(props) {
55
48
  var _topo$store$useModelS2 = topo.store.useModelState("lock"),
56
49
  lock = _topo$store$useModelS2.lock;
57
50
 
58
- var _useState = (0, _react.useState)(false),
59
- visible = _useState[0],
60
- setVisible = _useState[1];
61
-
62
- var _useState2 = (0, _react.useState)({
63
- id: '',
64
- name: '',
65
- type: '',
66
- // 类型: node、link
67
- ciType: '',
68
- ciName: ''
69
- }),
70
- activeData = _useState2[0],
71
- setActiveData = _useState2[1];
72
-
73
- var _useState3 = (0, _react.useState)(''),
74
- userId = _useState3[0],
75
- setUserId = _useState3[1];
76
-
77
- var resourceData = topo.dataModel.useDataById(activeData.id);
51
+ var _topo$store$useModel2 = topo.store.useModel('resourceDetail'),
52
+ resourceDetailState = _topo$store$useModel2[0],
53
+ resourceDetailDispatchers = _topo$store$useModel2[1];
54
+
55
+ var visible = resourceDetailState.visible,
56
+ id = resourceDetailState.id;
57
+ var resourceData = topo.dataModel.useDataById(id);
58
+ var activeData = (0, _react.useMemo)(function () {
59
+ return resourceData ? {
60
+ id: resourceData.id,
61
+ name: resourceData.name,
62
+ type: resourceData.type === 'node' ? 'node' : 'link',
63
+ // 类型: node、link
64
+ ciType: resourceData.ciType,
65
+ ciName: resourceData.ciName
66
+ } : {
67
+ id: '',
68
+ name: '',
69
+ type: '',
70
+ // 类型: node、link
71
+ ciType: '',
72
+ ciName: ''
73
+ };
74
+ }, [resourceData]);
75
+
76
+ var _useState = (0, _react.useState)(''),
77
+ userId = _useState[0],
78
+ setUserId = _useState[1];
79
+
78
80
  (0, _react.useEffect)(function () {
79
81
  var notifier = topo.view.topoClient.notifier;
80
82
  notifier.on(_componentTopologyGraph.TopoEvent.EVENT_DOUBLE_CLICK, openOverview);
@@ -88,10 +90,17 @@ function ResourceDetailDrawer(props) {
88
90
  metricCodes: []
89
91
  });
90
92
  };
91
- }, [lock]); // 解决切换拓扑图隐藏概览
93
+ }, [lock]);
94
+ (0, _react.useEffect)(function () {
95
+ return function () {
96
+ resourceDetailDispatchers.reset();
97
+ };
98
+ }, []); // 解决切换拓扑图隐藏概览
92
99
 
93
100
  (0, _react.useEffect)(function () {
94
- setVisible(false); // TODO 其他数据重置
101
+ resourceDetailDispatchers.update({
102
+ visible: false
103
+ }); // TODO 其他数据重置
95
104
  }, [topoId]);
96
105
 
97
106
  function getUser() {
@@ -190,28 +199,42 @@ function ResourceDetailDrawer(props) {
190
199
 
191
200
  if (!canShow(htElement)) {
192
201
  return;
193
- }
202
+ } // 显示隐藏
194
203
 
195
- setActiveData({
196
- id: id,
197
- name: name,
198
- type: {
199
- linkGroup: 'link',
200
- group: 'node'
201
- }[type] || type,
202
- ciType: ciType,
203
- ciName: ciName
204
- }); // 显示隐藏
205
204
 
206
- targetType === 'doubleClick' && setVisible(true); // userId
205
+ if (targetType === 'doubleClick') {
206
+ resourceDetailDispatchers.update({
207
+ visible: true,
208
+ id: id
209
+ });
210
+ } else {
211
+ resourceDetailDispatchers.update({
212
+ id: id
213
+ });
214
+ } // userId
215
+
207
216
 
208
217
  getUser();
209
218
  }
210
219
 
211
220
  var renderContent = function renderContent() {
212
- return /*#__PURE__*/_react["default"].createElement(_ResourceDetail["default"], (0, _extends2["default"])({}, props, {
221
+ // 支持自定义概览
222
+ var _ref = (viewerProps === null || viewerProps === void 0 ? void 0 : viewerProps.resourceDetailProps) || {},
223
+ getResourceDetail = _ref.getResourceDetail;
224
+
225
+ var ResourceDetailWidget;
226
+
227
+ if (getResourceDetail) {
228
+ ResourceDetailWidget = getResourceDetail(resourceData);
229
+ }
230
+
231
+ if (!ResourceDetailWidget) {
232
+ ResourceDetailWidget = _ResourceDetail["default"];
233
+ }
234
+
235
+ return /*#__PURE__*/_react["default"].createElement(ResourceDetailWidget, (0, _extends2["default"])({}, props, {
213
236
  topo: topo,
214
- userId: _react.useId,
237
+ userId: userId,
215
238
  activeData: activeData,
216
239
  resourceData: resourceData
217
240
  }));
@@ -228,7 +251,9 @@ function ResourceDetailDrawer(props) {
228
251
  width: 580,
229
252
  hasMask: false,
230
253
  onClose: function onClose() {
231
- return setVisible(false);
254
+ return resourceDetailDispatchers.update({
255
+ visible: false
256
+ });
232
257
  }
233
258
  }, visible && resourceData && renderContent()));
234
259
  }
@@ -0,0 +1,156 @@
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 _message = _interopRequireDefault(require("@alifd/next/lib/message"));
11
+
12
+ var _table = _interopRequireDefault(require("@alifd/next/lib/table"));
13
+
14
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
+
16
+ var _button = _interopRequireDefault(require("@alifd/next/lib/button"));
17
+
18
+ var _icon = _interopRequireDefault(require("@alifd/next/lib/icon"));
19
+
20
+ var _react = _interopRequireDefault(require("react"));
21
+
22
+ var _moment = _interopRequireDefault(require("moment"));
23
+
24
+ var _BlockBox = _interopRequireDefault(require("./BlockBox"));
25
+
26
+ var _Link = _interopRequireDefault(require("../../../../../../../components/Link"));
27
+
28
+ var _overview = _interopRequireDefault(require("../../../../../../services/overview"));
29
+
30
+ var _indexModule = _interopRequireDefault(require("./index.module.scss"));
31
+
32
+ // url 处理,UICBB 的地址需截取前缀
33
+ function formatUrl(url) {
34
+ var _window, _window$location;
35
+
36
+ var prefix = '/default/pagecenter';
37
+
38
+ if (((_window = window) === null || _window === void 0 ? void 0 : (_window$location = _window.location) === null || _window$location === void 0 ? void 0 : _window$location.pathname.indexOf(prefix)) === 0 && (url === null || url === void 0 ? void 0 : url.indexOf(prefix)) === 0) {
39
+ return url.split(prefix)[1];
40
+ } else {
41
+ return url;
42
+ }
43
+ }
44
+
45
+ function EventsCard(props) {
46
+ var alarmRiskList = props.alarmRiskList,
47
+ closeDetailDrawer = props.closeDetailDrawer,
48
+ onHandleAlarm = props.onHandleAlarm; // 告警table列配置
49
+
50
+ var columns = [{
51
+ title: '描述',
52
+ dataIndex: 'title',
53
+ key: 'title',
54
+ cell: function cell(value, index, record) {
55
+ return /*#__PURE__*/_react["default"].createElement("div", {
56
+ className: _indexModule["default"]['alarm-title'],
57
+ title: value,
58
+ onClick: closeDetailDrawer
59
+ }, /*#__PURE__*/_react["default"].createElement(_icon["default"], {
60
+ type: record.icon,
61
+ size: "xs",
62
+ className: _indexModule["default"]['alarm-color-icon'] + " " + record.className
63
+ }), /*#__PURE__*/_react["default"].createElement(_Link["default"], {
64
+ className: _indexModule["default"].link,
65
+ to: formatUrl(record.link)
66
+ }, value));
67
+ }
68
+ }, {
69
+ title: '时间',
70
+ dataIndex: 'time',
71
+ key: 'time',
72
+ width: 144,
73
+ cell: function cell(value, index, record) {
74
+ return /*#__PURE__*/_react["default"].createElement("div", {
75
+ title: (0, _moment["default"])(value).format('YYYY-MM-DD HH:mm:ss')
76
+ }, (0, _moment["default"])(value).format('YYYY-MM-DD HH:mm:ss'));
77
+ }
78
+ }, {
79
+ title: '操作',
80
+ dataIndex: 'status',
81
+ key: 'status',
82
+ width: 64,
83
+ cell: function cell(status, index, record) {
84
+ if (record.type === 'alarm') {
85
+ return status === 'toDeal' ? /*#__PURE__*/_react["default"].createElement(_button["default"], {
86
+ text: true,
87
+ type: "primary",
88
+ onClick: function onClick() {
89
+ return alarmRiskOperation(record.type, record.params);
90
+ }
91
+ }, "\u53D7\u7406") : /*#__PURE__*/_react["default"].createElement(_button["default"], {
92
+ disabled: true,
93
+ text: true,
94
+ type: "primary"
95
+ }, "\u5DF2\u53D7\u7406");
96
+ } else {
97
+ // return <Button text type="primary" onClick={() => alarmRiskOperation(record.type, record)}>受理</Button>
98
+ return '';
99
+ }
100
+ }
101
+ }]; // 告警/风险 操作 (受理)
102
+
103
+ function alarmRiskOperation(_x, _x2) {
104
+ return _alarmRiskOperation.apply(this, arguments);
105
+ }
106
+
107
+ function _alarmRiskOperation() {
108
+ _alarmRiskOperation = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(type, params) {
109
+ var res;
110
+ return _regenerator["default"].wrap(function _callee$(_context) {
111
+ while (1) {
112
+ switch (_context.prev = _context.next) {
113
+ case 0:
114
+ if (!(type === 'alarm')) {
115
+ _context.next = 6;
116
+ break;
117
+ }
118
+
119
+ _context.next = 3;
120
+ return _overview["default"].handleAlarm(params);
121
+
122
+ case 3:
123
+ res = _context.sent;
124
+
125
+ _message["default"].success('受理成功');
126
+
127
+ onHandleAlarm();
128
+
129
+ case 6:
130
+ case "end":
131
+ return _context.stop();
132
+ }
133
+ }
134
+ }, _callee);
135
+ }));
136
+ return _alarmRiskOperation.apply(this, arguments);
137
+ }
138
+
139
+ return /*#__PURE__*/_react["default"].createElement(_BlockBox["default"], {
140
+ headerTitle: "\u6700\u8FD1\u7684\u544A\u8B66\u548C\u98CE\u9669"
141
+ }, /*#__PURE__*/_react["default"].createElement("div", {
142
+ className: _indexModule["default"].alarm
143
+ }, /*#__PURE__*/_react["default"].createElement(_table["default"], {
144
+ hasBorder: false,
145
+ fixedHeader: true,
146
+ columns: columns,
147
+ maxBodyHeight: "auto",
148
+ dataSource: alarmRiskList,
149
+ emptyContent: /*#__PURE__*/_react["default"].createElement("div", {
150
+ className: _indexModule["default"]['no-data']
151
+ }, "\u6682\u65E0\u6570\u636E")
152
+ })));
153
+ }
154
+
155
+ var _default = EventsCard;
156
+ exports["default"] = _default;
@@ -9,8 +9,6 @@ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"))
9
9
 
10
10
  var _message = _interopRequireDefault(require("@alifd/next/lib/message"));
11
11
 
12
- var _table = _interopRequireDefault(require("@alifd/next/lib/table"));
13
-
14
12
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
13
 
16
14
  var _button = _interopRequireDefault(require("@alifd/next/lib/button"));
@@ -51,6 +49,8 @@ var _LinkTopoCard = _interopRequireDefault(require("./components/LinkTopo/LinkTo
51
49
 
52
50
  var _rlog = require("@riil-frontend/component-topology-utils/lib/rlog");
53
51
 
52
+ var _EventsCard = _interopRequireDefault(require("./EventsCard"));
53
+
54
54
  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); }
55
55
 
56
56
  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; }
@@ -978,18 +978,11 @@ function ResourceOverview(props) {
978
978
  },
979
979
  data: metric,
980
980
  loading: metricInitLoading
981
- })), /*#__PURE__*/_react["default"].createElement(_BlockBox["default"], {
982
- headerTitle: "\u6700\u8FD1\u7684\u544A\u8B66\u548C\u98CE\u9669"
983
- }, /*#__PURE__*/_react["default"].createElement("div", {
984
- className: _indexModule["default"].alarm
985
- }, /*#__PURE__*/_react["default"].createElement(_table["default"], {
986
- hasBorder: false,
987
- fixedHeader: true,
988
- columns: columns,
989
- maxBodyHeight: "auto",
990
- dataSource: alarmRiskList,
991
- emptyContent: /*#__PURE__*/_react["default"].createElement("div", {
992
- className: _indexModule["default"]['no-data']
993
- }, "\u6682\u65E0\u6570\u636E")
994
- }))));
981
+ })), /*#__PURE__*/_react["default"].createElement(_EventsCard["default"], {
982
+ alarmRiskList: alarmRiskList,
983
+ closeDetailDrawer: onClose,
984
+ onHandleAlarm: function onHandleAlarm() {
985
+ getAlarmRiskData(id);
986
+ }
987
+ }));
995
988
  }
@@ -138,7 +138,7 @@ function ResourceOverviewMetric(props) {
138
138
  padding: 0,
139
139
  appendPadding: [2, 0],
140
140
  smooth: true,
141
- tooltip: false,
141
+ tooltip: true,
142
142
  line: {
143
143
  color: "l(0) 0:" + hexToRgb(rgbToHex(color).hex, 0.05).rgba + " 0.5:" + color + " 1:" + color,
144
144
  size: 2