@riil-frontend/component-topology 4.0.0-beta.9 → 4.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (177) 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 +32 -32
  5. package/es/components/BatchAttrMetric/setting.js +47 -7
  6. package/es/components/Drawer/Drawer.js +60 -0
  7. package/es/components/Drawer/index.js +1 -59
  8. package/es/constants/ResourceInfoDisplay.js +1 -4
  9. package/es/core/components/AlarmListPanel/components/AlarmListItem.js +31 -1
  10. package/es/core/components/AlarmListPanel/hooks/useAlarmList.js +34 -0
  11. package/es/core/components/AlarmListPanel/index.js +27 -24
  12. package/es/core/components/AlarmListPanel/index.module.scss +46 -16
  13. package/es/core/components/DisplaySettingDrawer/EdgeFlow.js +4 -6
  14. package/es/core/components/DisplaySettingDrawer/EdgeFlowDirection.js +4 -6
  15. package/es/core/components/DisplaySettingDrawer/NodeTag.js +3 -5
  16. package/es/core/components/DisplaySettingDrawer/NodeTip.js +4 -5
  17. package/es/core/components/DisplaySettingDrawer/ResourceDisplay/BasicConfig.js +3 -1
  18. package/es/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSetting.js +25 -0
  19. package/es/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSettingDrawer.js +8 -0
  20. package/es/core/components/TopoView/topoView.js +25 -1
  21. package/es/core/editor/components/settings/propertyViews/group/DataTab/GroupNodeList.js +4 -2
  22. package/es/core/editor/components/settings/propertyViews/group/DataTab/RelateData.js +0 -7
  23. package/es/core/editor/components/settings/propertyViews/group/DataTab/hoooks/useGroupRelateResource.js +13 -12
  24. package/es/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +4 -1
  25. package/es/core/editor/components/settings/propertyViews/group/{DataTab/ClusterGroupRelateData → cluster}/ClusterGroupRelateData.js +22 -9
  26. package/es/core/editor/components/settings/propertyViews/layer/DataTab/NodeList.js +2 -5
  27. package/es/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeIcon.js +21 -0
  28. package/es/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +5 -0
  29. package/es/core/editor/components/settings/propertyViews/node/NodePropertyView.js +3 -1
  30. package/es/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +36 -0
  31. package/es/core/editor/components/settings/propertyViews/node/Setting/Setting.js +2 -2
  32. package/es/core/editor/components/settings/propertyViews/node/data/Data.js +3 -5
  33. package/es/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +4 -2
  34. package/es/core/hooks/ht/useHtDataPropertyChangeListener.js +28 -0
  35. package/es/core/models/AttributeMetricDisplay.js +28 -10
  36. package/es/core/models/TopoApp.js +12 -7
  37. package/es/core/models/TopoGraphView.js +3 -1
  38. package/es/core/models/attributeFormatter/index.js +2 -26
  39. package/es/core/models/cache/{CiTyeCache.js → CiTypeCache.js} +3 -1
  40. package/es/core/models/tagstips/ElementTagTipConfig.js +132 -0
  41. package/es/core/models/tagstips/utils.js +44 -0
  42. package/es/core/models/utils/linkUtils.js +3 -1
  43. package/es/core/services/topo.js +30 -0
  44. package/es/core/utils/edgeUtil.js +8 -0
  45. package/es/core/utils/graphLinkUtil.js +22 -0
  46. package/es/core/viewer/components/plugins/ResourceDetail/ResourceDetail.js +1 -1
  47. package/es/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.js +24 -2
  48. package/es/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.module.scss +1 -1
  49. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfo.js +7 -101
  50. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfoBlock.js +13 -3
  51. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +166 -89
  52. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +7 -14
  53. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/Configurator/index.js +38 -13
  54. package/es/core/viewer/components/titlebar/BasicTools.js +5 -2
  55. package/es/core/viewer/components/titlebar/widgets/NodesDragSwitch.js +4 -2
  56. package/es/hooks/useAlarm.js +59 -0
  57. package/es/hooks/useEventData.js +20 -0
  58. package/es/hooks/useGraphAlarmDisplay.js +68 -18
  59. package/es/hooks/useManageStatus.js +0 -34
  60. package/es/hooks/useResourceConfig.js +6 -13
  61. package/es/hooks/useSelection.js +2 -4
  62. package/es/hooks/useTopoEdit.js +90 -37
  63. package/es/models/topoAlarm.js +8 -9
  64. package/es/models/topoMod.js +16 -8
  65. package/es/style.js +1 -0
  66. package/es/topoCenter/components/TopoView.js +6 -1
  67. package/es/topoCenter/components/Topology.js +7 -1
  68. package/es/topoCenter/components/editor/propertyViews/LayerRelatedResourceList.js +2 -2
  69. package/es/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/AddLinkDrawer.js +35 -15
  70. package/es/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/components/editLinkInfo.js +11 -2
  71. package/es/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.js +24 -0
  72. package/es/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.module.scss +23 -0
  73. package/es/topoCenter/components/viewer/displaySetting/LinkTagV2.js +87 -0
  74. package/es/topoCenter/getTopoData.js +18 -6
  75. package/es/topoCenter/hooks/editor/useGroupSortResources.js +16 -0
  76. package/es/topoCenter/hooks/useEdgeExpand.js +25 -0
  77. package/es/topoCenter/hooks/useLinkDynamicStyle.js +1 -1
  78. package/es/topoCenter/hooks/useTopoEdit.js +3 -0
  79. package/es/topoCenter/models/LinkDynamicStyleExecutor.js +38 -10
  80. package/es/topoCenter/models/TopoCenter.js +3 -11
  81. package/es/topoCenter/store/functionAuth.js +2 -0
  82. package/es/topoCenter/utils/SortResourcesUtil.js +3 -3
  83. package/es/topoCenter/utils/exportData.js +13 -7
  84. package/es/topoCenter/utils/linkUtil.js +8 -0
  85. package/es/utils/ResourceConfigUtil.js +4 -5
  86. package/es/utils/clusterUtil.js +27 -2
  87. package/es/utils/htElementDataUtil.js +22 -1
  88. package/es/utils/htElementUtils.js +22 -9
  89. package/es/utils/showGraphManageStatusUtil.js +67 -0
  90. package/es/utils/topoData.js +57 -32
  91. package/lib/components/BatchAttrMetric/setting.js +47 -6
  92. package/lib/components/Drawer/Drawer.js +73 -0
  93. package/lib/components/Drawer/index.js +2 -64
  94. package/lib/constants/ResourceInfoDisplay.js +1 -4
  95. package/lib/core/components/AlarmListPanel/components/AlarmListItem.js +31 -1
  96. package/lib/core/components/AlarmListPanel/hooks/useAlarmList.js +40 -0
  97. package/lib/core/components/AlarmListPanel/index.js +30 -24
  98. package/lib/core/components/AlarmListPanel/index.module.scss +46 -16
  99. package/lib/core/components/DisplaySettingDrawer/EdgeFlow.js +4 -6
  100. package/lib/core/components/DisplaySettingDrawer/EdgeFlowDirection.js +4 -6
  101. package/lib/core/components/DisplaySettingDrawer/NodeTag.js +3 -6
  102. package/lib/core/components/DisplaySettingDrawer/NodeTip.js +4 -6
  103. package/lib/core/components/DisplaySettingDrawer/ResourceDisplay/BasicConfig.js +3 -1
  104. package/lib/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSetting.js +39 -0
  105. package/lib/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSettingDrawer.js +17 -0
  106. package/lib/core/components/TopoView/topoView.js +28 -1
  107. package/lib/core/editor/components/settings/propertyViews/group/DataTab/GroupNodeList.js +4 -2
  108. package/lib/core/editor/components/settings/propertyViews/group/DataTab/RelateData.js +0 -8
  109. package/lib/core/editor/components/settings/propertyViews/group/DataTab/hoooks/useGroupRelateResource.js +13 -13
  110. package/lib/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +5 -1
  111. package/lib/core/editor/components/settings/propertyViews/group/{DataTab/ClusterGroupRelateData → cluster}/ClusterGroupRelateData.js +23 -9
  112. package/lib/core/editor/components/settings/propertyViews/layer/DataTab/NodeList.js +2 -5
  113. package/lib/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeIcon.js +31 -0
  114. package/lib/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +6 -0
  115. package/lib/core/editor/components/settings/propertyViews/node/NodePropertyView.js +3 -1
  116. package/lib/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +52 -0
  117. package/lib/core/editor/components/settings/propertyViews/node/Setting/Setting.js +3 -3
  118. package/lib/core/editor/components/settings/propertyViews/node/data/Data.js +3 -5
  119. package/lib/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +5 -2
  120. package/lib/core/hooks/ht/useHtDataPropertyChangeListener.js +37 -0
  121. package/lib/core/models/AttributeMetricDisplay.js +28 -10
  122. package/lib/core/models/TopoApp.js +10 -5
  123. package/lib/core/models/TopoGraphView.js +3 -1
  124. package/lib/core/models/attributeFormatter/index.js +2 -26
  125. package/lib/core/models/cache/{CiTyeCache.js → CiTypeCache.js} +3 -1
  126. package/lib/core/models/tagstips/ElementTagTipConfig.js +142 -0
  127. package/lib/core/models/tagstips/utils.js +59 -0
  128. package/lib/core/models/utils/linkUtils.js +3 -1
  129. package/lib/core/services/topo.js +40 -0
  130. package/lib/core/utils/edgeUtil.js +12 -0
  131. package/lib/core/utils/graphLinkUtil.js +27 -0
  132. package/lib/core/viewer/components/plugins/ResourceDetail/ResourceDetail.js +1 -1
  133. package/lib/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.js +25 -2
  134. package/lib/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.module.scss +1 -1
  135. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfo.js +7 -101
  136. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfoBlock.js +13 -3
  137. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +166 -89
  138. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +7 -14
  139. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/Configurator/index.js +38 -13
  140. package/lib/core/viewer/components/titlebar/BasicTools.js +6 -2
  141. package/lib/core/viewer/components/titlebar/widgets/NodesDragSwitch.js +4 -2
  142. package/lib/hooks/useAlarm.js +61 -0
  143. package/lib/hooks/useEventData.js +28 -0
  144. package/lib/hooks/useGraphAlarmDisplay.js +69 -18
  145. package/lib/hooks/useManageStatus.js +0 -34
  146. package/lib/hooks/useResourceConfig.js +6 -12
  147. package/lib/hooks/useSelection.js +1 -5
  148. package/lib/hooks/useTopoEdit.js +94 -36
  149. package/lib/models/topoAlarm.js +8 -9
  150. package/lib/models/topoMod.js +15 -8
  151. package/lib/style.js +1 -0
  152. package/lib/topoCenter/components/TopoView.js +8 -1
  153. package/lib/topoCenter/components/Topology.js +8 -1
  154. package/lib/topoCenter/components/editor/propertyViews/LayerRelatedResourceList.js +1 -1
  155. package/lib/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/AddLinkDrawer.js +35 -14
  156. package/lib/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/components/editLinkInfo.js +11 -2
  157. package/lib/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.js +35 -0
  158. package/lib/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.module.scss +23 -0
  159. package/lib/topoCenter/components/viewer/displaySetting/LinkTagV2.js +102 -0
  160. package/lib/topoCenter/getTopoData.js +19 -6
  161. package/lib/topoCenter/hooks/editor/useGroupSortResources.js +21 -0
  162. package/lib/topoCenter/hooks/useEdgeExpand.js +33 -0
  163. package/lib/topoCenter/hooks/useLinkDynamicStyle.js +1 -1
  164. package/lib/topoCenter/hooks/useTopoEdit.js +3 -0
  165. package/lib/topoCenter/models/LinkDynamicStyleExecutor.js +38 -9
  166. package/lib/topoCenter/models/TopoCenter.js +3 -12
  167. package/lib/topoCenter/store/functionAuth.js +2 -0
  168. package/lib/topoCenter/utils/SortResourcesUtil.js +3 -3
  169. package/lib/topoCenter/utils/exportData.js +14 -7
  170. package/lib/topoCenter/utils/linkUtil.js +15 -0
  171. package/lib/utils/ResourceConfigUtil.js +4 -4
  172. package/lib/utils/clusterUtil.js +34 -2
  173. package/lib/utils/htElementDataUtil.js +38 -1
  174. package/lib/utils/htElementUtils.js +24 -9
  175. package/lib/utils/showGraphManageStatusUtil.js +78 -0
  176. package/lib/utils/topoData.js +59 -32
  177. package/package.json +5 -5
@@ -1,11 +1,12 @@
1
1
  import _Button from "@alifd/next/es/button";
2
2
  import _Table from "@alifd/next/es/table";
3
+ import _Search from "@alifd/next/es/search";
3
4
  import _Grid from "@alifd/next/es/grid";
4
5
  import _Message from "@alifd/next/es/message";
5
6
  import _extends from "@babel/runtime/helpers/extends";
6
7
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
7
8
  var _excluded = ["defaultSet", "showType"];
8
- import React, { useState } from "react";
9
+ import React, { useState, useMemo } from "react";
9
10
  import rlog from "@riil-frontend/component-topology-utils/es/rlog";
10
11
  import ActionTree from "@riil-frontend/component-action-tree";
11
12
  import NoDataPage from "@riil-frontend/component-topology-common/es/components/NoDataPage";
@@ -15,8 +16,6 @@ import * as utils from "./utils";
15
16
  import styles from "./index.module.scss";
16
17
 
17
18
  var Setting = function Setting(_ref) {
18
- var _allCiSet$ciType;
19
-
20
19
  var defaultSet = _ref.defaultSet,
21
20
  showType = _ref.showType,
22
21
  props = _objectWithoutPropertiesLoose(_ref, _excluded);
@@ -42,9 +41,13 @@ var Setting = function Setting(_ref) {
42
41
  ciType = _useState[0],
43
42
  setCiType = _useState[1];
44
43
 
45
- var _useState2 = useState(utils.initSelected(allCiSet, showType)),
46
- selected = _useState2[0],
47
- setSelected = _useState2[1];
44
+ var _useState2 = useState(''),
45
+ search = _useState2[0],
46
+ setSearch = _useState2[1];
47
+
48
+ var _useState3 = useState(utils.initSelected(allCiSet, showType)),
49
+ selected = _useState3[0],
50
+ setSelected = _useState3[1];
48
51
 
49
52
  var selectedRowKeys = selected[ciType];
50
53
 
@@ -88,6 +91,28 @@ var Setting = function Setting(_ref) {
88
91
  setSelected(values);
89
92
  };
90
93
 
94
+ var tableData = useMemo(function () {
95
+ var _allCiSet$ciType;
96
+
97
+ console.log('allCiSet,ciType,search', allCiSet, ciType, search);
98
+ var list = ((_allCiSet$ciType = allCiSet[ciType]) === null || _allCiSet$ciType === void 0 ? void 0 : _allCiSet$ciType.list) || [];
99
+
100
+ if (search) {
101
+ list = list.filter(function (item) {
102
+ var _item$name;
103
+
104
+ return ((_item$name = item.name) === null || _item$name === void 0 ? void 0 : _item$name.toUpperCase().indexOf(search.toUpperCase())) !== -1;
105
+ });
106
+ }
107
+
108
+ return list;
109
+ }, [allCiSet, ciType, search]);
110
+
111
+ function onSearch(value) {
112
+ console.log('search', search);
113
+ setSearch(value);
114
+ }
115
+
91
116
  return /*#__PURE__*/React.createElement("div", {
92
117
  className: styles.layout
93
118
  }, /*#__PURE__*/React.createElement("div", {
@@ -109,10 +134,25 @@ var Setting = function Setting(_ref) {
109
134
  })), /*#__PURE__*/React.createElement(_Grid.Col, {
110
135
  className: styles["table-wrap"]
111
136
  }, /*#__PURE__*/React.createElement(TableLayout, {
137
+ filterItems: /*#__PURE__*/React.createElement("div", {
138
+ className: styles.filter
139
+ }, /*#__PURE__*/React.createElement(_Search, {
140
+ // className={styles.search}
141
+ style: {
142
+ width: 200
143
+ },
144
+ shape: "simple",
145
+ placeholder: "\u8BF7\u8F93\u5165\u5173\u952E\u5B57",
146
+ onSearch: onSearch,
147
+ onChange: function onChange(val) {
148
+ return !val && onSearch('');
149
+ },
150
+ hasClear: true
151
+ })),
112
152
  table: /*#__PURE__*/React.createElement(_Table, {
113
153
  fixedHeader: true,
114
154
  hasBorder: false,
115
- dataSource: ((_allCiSet$ciType = allCiSet[ciType]) === null || _allCiSet$ciType === void 0 ? void 0 : _allCiSet$ciType.list) || [],
155
+ dataSource: tableData,
116
156
  emptyContent: /*#__PURE__*/React.createElement(NoDataPage, {
117
157
  type: "table"
118
158
  }),
@@ -0,0 +1,60 @@
1
+ import _Drawer from "@alifd/next/es/drawer";
2
+ import _extends from "@babel/runtime/helpers/extends";
3
+ import _Button from "@alifd/next/es/button";
4
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
5
+ var _excluded = ["bodyClassName"];
6
+ import React from 'react';
7
+ import classnames from 'classnames';
8
+ import styles from "./index.module.scss";
9
+ var headerStyle = {
10
+ zIndex: 1000
11
+ };
12
+ var bodyStyle = {};
13
+
14
+ var Drawer = function Drawer(props) {
15
+ var visible = props.visible,
16
+ disabled = props.disabled,
17
+ loading = props.loading,
18
+ title = props.title,
19
+ _props$footer = props.footer,
20
+ footer = _props$footer === void 0 ? true : _props$footer,
21
+ _props$buttons = props.buttons,
22
+ buttons = _props$buttons === void 0 ? props.buttons || ['保存', '取消'] : _props$buttons,
23
+ _props$footerActions = props.footerActions,
24
+ footerActions = _props$footerActions === void 0 ? ['确定', '取消'] : _props$footerActions,
25
+ onClose = props.onClose,
26
+ onSave = props.onSave,
27
+ drawerProps = props.drawerProps,
28
+ children = props.children;
29
+
30
+ var bodyClassName = drawerProps.bodyClassName,
31
+ otherDrawerProps = _objectWithoutPropertiesLoose(drawerProps, _excluded);
32
+
33
+ return /*#__PURE__*/React.createElement(_Drawer, _extends({
34
+ title: title,
35
+ placement: "right",
36
+ width: "40%",
37
+ headerStyle: headerStyle,
38
+ bodyStyle: bodyStyle,
39
+ closeMode: ['close', 'esc']
40
+ }, otherDrawerProps, {
41
+ className: classnames(styles.drawer, drawerProps.className),
42
+ visible: visible,
43
+ onClose: onClose
44
+ }), /*#__PURE__*/React.createElement("div", {
45
+ className: classnames(styles.content, bodyClassName)
46
+ }, children), footer && /*#__PURE__*/React.createElement("div", {
47
+ className: styles.footer
48
+ }, /*#__PURE__*/React.createElement(_Button, {
49
+ className: styles.button,
50
+ type: "primary",
51
+ disabled: disabled,
52
+ loading: loading,
53
+ onClick: onSave
54
+ }, buttons[0]), /*#__PURE__*/React.createElement(_Button, {
55
+ className: styles.button,
56
+ onClick: onClose
57
+ }, buttons[1])));
58
+ };
59
+
60
+ export default Drawer;
@@ -1,60 +1,2 @@
1
- import _Drawer from "@alifd/next/es/drawer";
2
- import _extends from "@babel/runtime/helpers/extends";
3
- import _Button from "@alifd/next/es/button";
4
- import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
5
- var _excluded = ["bodyClassName"];
6
- import React from 'react';
7
- import classnames from 'classnames';
8
- import styles from "./index.module.scss";
9
- var headerStyle = {
10
- zIndex: 1000
11
- };
12
- var bodyStyle = {};
13
-
14
- var Drawer = function Drawer(props) {
15
- var visible = props.visible,
16
- disabled = props.disabled,
17
- loading = props.loading,
18
- title = props.title,
19
- _props$footer = props.footer,
20
- footer = _props$footer === void 0 ? true : _props$footer,
21
- _props$buttons = props.buttons,
22
- buttons = _props$buttons === void 0 ? props.buttons || ['保存', '取消'] : _props$buttons,
23
- _props$footerActions = props.footerActions,
24
- footerActions = _props$footerActions === void 0 ? ['确定', '取消'] : _props$footerActions,
25
- onClose = props.onClose,
26
- onSave = props.onSave,
27
- drawerProps = props.drawerProps,
28
- children = props.children;
29
-
30
- var bodyClassName = drawerProps.bodyClassName,
31
- otherDrawerProps = _objectWithoutPropertiesLoose(drawerProps, _excluded);
32
-
33
- return /*#__PURE__*/React.createElement(_Drawer, _extends({
34
- title: title,
35
- placement: "right",
36
- width: "40%",
37
- headerStyle: headerStyle,
38
- bodyStyle: bodyStyle,
39
- closeMode: ['close', 'esc']
40
- }, otherDrawerProps, {
41
- className: classnames(styles.drawer, drawerProps.className),
42
- visible: visible,
43
- onClose: onClose
44
- }), /*#__PURE__*/React.createElement("div", {
45
- className: classnames(styles.content, bodyClassName)
46
- }, children), footer && /*#__PURE__*/React.createElement("div", {
47
- className: styles.footer
48
- }, /*#__PURE__*/React.createElement(_Button, {
49
- className: styles.button,
50
- type: "primary",
51
- disabled: disabled,
52
- loading: loading,
53
- onClick: onSave
54
- }, buttons[0]), /*#__PURE__*/React.createElement(_Button, {
55
- className: styles.button,
56
- onClick: onClose
57
- }, buttons[1])));
58
- };
59
-
1
+ import Drawer from "./Drawer";
60
2
  export default Drawer;
@@ -53,8 +53,5 @@ export var NODE_TIP_DEFAULT_CONFIG = {
53
53
 
54
54
  export var DEFAULT_LINK_TAG_COMMON_CONFIG = {
55
55
  isCustom: false,
56
- data: [{
57
- type: 'metric',
58
- code: 'interface_totalbps'
59
- }]
56
+ data: []
60
57
  };
@@ -29,4 +29,34 @@ function AlarmListItem(props) {
29
29
  }, "" + alarmInfo.alertObject + alarmInfo.alertTitle)));
30
30
  }
31
31
 
32
- export default AlarmListItem;
32
+ function RiskListItem(props) {
33
+ // 传入参数
34
+ var topo = props.topo,
35
+ alarmInfo = props.alarmInfo,
36
+ onClick = props.onClick;
37
+
38
+ var riskLink = function riskLink(item) {
39
+ return "/default/inspectionTaskList/inspectionReport?title=" + item.ciName + "&reportId=" + item.executeId + "&reportTime=" + item.executeTime + "&reportType=" + item.viewType + "&reportName=" + item.reportName;
40
+ };
41
+
42
+ return /*#__PURE__*/React.createElement(_List.Item, {
43
+ className: styles.AlarmListItem,
44
+ media: /*#__PURE__*/React.createElement(_Icon, {
45
+ type: "Overall_risk_full",
46
+ size: "xs",
47
+ className: styles["alarm-color-icon"] + " alarm-color-icon-lv2"
48
+ })
49
+ }, /*#__PURE__*/React.createElement("span", {
50
+ onClick: onClick
51
+ }, /*#__PURE__*/React.createElement(Link, {
52
+ to: riskLink(alarmInfo)
53
+ }, "" + alarmInfo.ciName + alarmInfo.itemName)));
54
+ }
55
+
56
+ function ListItem(props) {
57
+ var alarmInfo = props.alarmInfo;
58
+ var ListItemWidget = alarmInfo.eventType === 'risk' ? RiskListItem : AlarmListItem;
59
+ return /*#__PURE__*/React.createElement(ListItemWidget, props);
60
+ }
61
+
62
+ export default ListItem;
@@ -0,0 +1,34 @@
1
+ import { useState, useEffect, useMemo } from "react";
2
+ export default function useAlarmList(props) {
3
+ var alarmData = props.alarmData;
4
+
5
+ var _useState = useState(1),
6
+ pageIndex = _useState[0],
7
+ setPageIndex = _useState[1];
8
+
9
+ var total = (alarmData || []).length;
10
+ var totalPage = Math.ceil(total / 10);
11
+ var alarmList = useMemo(function () {
12
+ var _slice;
13
+
14
+ return (_slice = (alarmData || []).slice(0, 10 * pageIndex)) !== null && _slice !== void 0 ? _slice : [];
15
+ }, [alarmData, pageIndex]);
16
+ useEffect(function () {
17
+ if (totalPage < pageIndex) {
18
+ setPageIndex(totalPage || 1);
19
+ }
20
+ }, [alarmData]);
21
+
22
+ var loadMore = function loadMore() {
23
+ setPageIndex(pageIndex + 1);
24
+ };
25
+
26
+ return {
27
+ alarmList: alarmList,
28
+ total: total,
29
+ totalPage: totalPage,
30
+ pageIndex: pageIndex,
31
+ hasMore: pageIndex < totalPage,
32
+ loadMore: loadMore
33
+ };
34
+ }
@@ -1,4 +1,6 @@
1
1
  import _List from "@alifd/next/es/list";
2
+ import _Button from "@alifd/next/es/button";
3
+ import _Card from "@alifd/next/es/card";
2
4
  import React, { useState, useEffect } from "react";
3
5
  import AlarmListItem from "./components/AlarmListItem";
4
6
  import NoDataPage from "@riil-frontend/component-no-data-page";
@@ -6,35 +8,24 @@ import styles from "./index.module.scss";
6
8
  import { alarmListDemo } from "./mocks";
7
9
  import rlog from "@riil-frontend/component-topology-utils/es/rlog";
8
10
  import Link from "../../../components/Link";
11
+ import useAlarmList from "./hooks/useAlarmList";
9
12
 
10
13
  function AlarmListPanel(props, ref) {
11
14
  // 传入参数
12
15
  var topo = props.topo,
13
16
  alarmData = props.alarmData,
14
17
  onClose = props.onClose;
15
-
16
- var _useState = useState([]),
17
- alarmList = _useState[0],
18
- setAlarmList = _useState[1]; //const { alarmData } = alarmState;
19
- // const onClose = () => {/* */
20
- // topo.alarm.switchAlarmPopPanel(false);
21
- // };
22
-
23
-
24
- useEffect(function () {
25
- if (alarmData) {
26
- var _alarmData$slice;
27
-
28
- setAlarmList((_alarmData$slice = alarmData === null || alarmData === void 0 ? void 0 : alarmData.slice(0, 10)) !== null && _alarmData$slice !== void 0 ? _alarmData$slice : []);
29
- } else {
30
- setAlarmList([]);
31
- }
32
- }, [alarmData]);
18
+ var alarmListProps = useAlarmList({
19
+ alarmData: alarmData
20
+ });
33
21
  return /*#__PURE__*/React.createElement("div", {
34
22
  className: styles.AlarmListPanel,
35
23
  id: "AlarmListPanel"
36
- }, /*#__PURE__*/React.createElement(_List, {
37
- header: /*#__PURE__*/React.createElement("div", {
24
+ }, /*#__PURE__*/React.createElement(_Card, {
25
+ free: true,
26
+ className: styles.card
27
+ }, /*#__PURE__*/React.createElement(_Card.Header, {
28
+ title: /*#__PURE__*/React.createElement("div", {
38
29
  style: {
39
30
  height: 24
40
31
  }
@@ -45,15 +36,27 @@ function AlarmListPanel(props, ref) {
45
36
  }, /*#__PURE__*/React.createElement(Link, {
46
37
  className: styles.listTitleLink,
47
38
  to: "/default/alarmCenter/alarmList"
48
- }, "\u67E5\u770B\u6240\u6709\u544A\u8B66")), /*#__PURE__*/React.createElement("a", {
39
+ }, "\u67E5\u770B\u6240\u6709\u544A\u8B66"))),
40
+ extra: /*#__PURE__*/React.createElement("a", {
49
41
  role: "button",
50
42
  "aria-label": "\u5173\u95ED",
51
43
  className: "next-dialog-close",
52
44
  onClick: onClose
53
45
  }, /*#__PURE__*/React.createElement("i", {
54
46
  className: "next-icon next-icon-close next-medium next-dialog-close-icon"
55
- }))),
56
- dataSource: alarmList,
47
+ })),
48
+ className: styles.header
49
+ }), /*#__PURE__*/React.createElement(_Card.Divider, null), /*#__PURE__*/React.createElement(_Card.Content, {
50
+ className: styles.content
51
+ }, /*#__PURE__*/React.createElement(_List, {
52
+ dataSource: alarmListProps.alarmList,
53
+ footer: alarmListProps.hasMore && /*#__PURE__*/React.createElement("div", {
54
+ className: styles.footer
55
+ }, /*#__PURE__*/React.createElement(_Button, {
56
+ type: "primary",
57
+ text: true,
58
+ onClick: alarmListProps.loadMore
59
+ }, "\u52A0\u8F7D\u66F4\u591A")),
57
60
  emptyContent: /*#__PURE__*/React.createElement(NoDataPage, {
58
61
  className: styles.emptyContent,
59
62
  statusCode: "\u6682\u65E0\u544A\u8B66"
@@ -66,7 +69,7 @@ function AlarmListPanel(props, ref) {
66
69
  onClick: onClose
67
70
  });
68
71
  }
69
- }));
72
+ }))));
70
73
  }
71
74
 
72
75
  export default AlarmListPanel;
@@ -9,23 +9,47 @@
9
9
  background-color: #FFF;
10
10
  border: 1px solid #DCDEE3;
11
11
 
12
- .listTitle {
13
- color: #4D6277;
14
- font-size: 16px;
15
- font-weight: 500;
16
- line-height: 24px;
12
+
13
+ .card {
14
+ border: none;
15
+ }
16
+
17
+ .header {
18
+ margin-top: 12px;
19
+ margin-bottom: 12px;
20
+
21
+
22
+ .listTitle {
23
+ color: #4D6277;
24
+ font-size: 16px;
25
+ font-weight: 500;
26
+ line-height: 20px;
27
+ }
28
+
29
+ .listTitleLink {
30
+ font-size: 12px;
31
+ color: #4C89FF;
32
+ margin-left: 12px;
33
+ font-weight: 400;
34
+ line-height: 20px;
35
+ }
36
+
37
+ .listTitleLink:hover {
38
+ color: #75A8FF;
39
+ }
17
40
  }
18
41
 
19
- .listTitleLink {
20
- font-size: 12px;
21
- color: #4C89FF;
22
- margin-left: 12px;
23
- font-weight: 400;
24
- line-height: 24px;
42
+ .content {
43
+ max-height: 230px;
44
+ overflow-y: auto;
45
+ padding: 0;
46
+ margin-top: 0;
25
47
  }
26
48
 
27
- .listTitleLink:hover {
28
- color: #75A8FF;
49
+ .footer {
50
+ display: flex;
51
+ align-items: center;
52
+ justify-content: center;
29
53
  }
30
54
 
31
55
  :global {
@@ -33,6 +57,12 @@
33
57
  padding: 0px;
34
58
  }
35
59
 
60
+ .#{$css-prefix}list-header {
61
+ padding: 8px 16px 12px 16px !important;
62
+ border-bottom: none;
63
+ height: 44px;
64
+ box-shadow: 0px 1px 0px 0px #E4E9EE;
65
+ }
36
66
 
37
67
  .#{$css-prefix}list-header {
38
68
  padding: 8px 16px 12px 16px !important;
@@ -47,8 +77,8 @@
47
77
  }
48
78
 
49
79
  .#{$css-prefix}list-items {
50
- max-height: 230px;
51
- overflow-y: auto;
80
+ // max-height: 230px;
81
+ // overflow-y: auto;
52
82
  }
53
83
 
54
84
  .#{$css-prefix}list-item {
@@ -109,4 +139,4 @@
109
139
  color: #fd2626;
110
140
  }
111
141
  }
112
- }
142
+ }
@@ -1,7 +1,6 @@
1
1
  import _Radio from "@alifd/next/es/radio";
2
2
  import React from 'react';
3
-
4
- function EdgeFlow(props) {
3
+ var EdgeFlow = /*#__PURE__*/React.forwardRef(function (props, ref) {
5
4
  var value = props.value,
6
5
  onChange = props.onChange;
7
6
 
@@ -10,6 +9,7 @@ function EdgeFlow(props) {
10
9
  };
11
10
 
12
11
  return /*#__PURE__*/React.createElement(_Radio.Group, {
12
+ ref: ref,
13
13
  value: value || 'none',
14
14
  onChange: handleTypeChange
15
15
  }, /*#__PURE__*/React.createElement(_Radio, {
@@ -19,7 +19,5 @@ function EdgeFlow(props) {
19
19
  }, "\u5149\u70B9"), /*#__PURE__*/React.createElement(_Radio, {
20
20
  value: "arrow"
21
21
  }, "\u7BAD\u5934"));
22
- }
23
-
24
- ;
25
- export default /*#__PURE__*/React.forwardRef(EdgeFlow);
22
+ });
23
+ export default EdgeFlow;
@@ -1,7 +1,6 @@
1
1
  import _Radio from "@alifd/next/es/radio";
2
2
  import React from 'react';
3
-
4
- function EdgeFlowDirection(props) {
3
+ var EdgeFlowDirection = /*#__PURE__*/React.forwardRef(function (props, ref) {
5
4
  var value = props.value,
6
5
  onChange = props.onChange;
7
6
 
@@ -10,6 +9,7 @@ function EdgeFlowDirection(props) {
10
9
  };
11
10
 
12
11
  return /*#__PURE__*/React.createElement(_Radio.Group, {
12
+ ref: ref,
13
13
  value: value || 'from',
14
14
  onChange: handleTypeChange
15
15
  }, /*#__PURE__*/React.createElement(_Radio, {
@@ -17,7 +17,5 @@ function EdgeFlowDirection(props) {
17
17
  }, "\u4E0A\u884C"), /*#__PURE__*/React.createElement(_Radio, {
18
18
  value: "to"
19
19
  }, "\u4E0B\u884C"));
20
- }
21
-
22
- ;
23
- export default /*#__PURE__*/React.forwardRef(EdgeFlowDirection);
20
+ });
21
+ export default EdgeFlowDirection;
@@ -16,7 +16,7 @@ var defaultCommonOptions = [{
16
16
  * @returns
17
17
  */
18
18
 
19
- function NodeTag(props, ref) {
19
+ var NodeTag = /*#__PURE__*/React.forwardRef(function (props, ref) {
20
20
  var commonOptions = props.commonOptions;
21
21
  return /*#__PURE__*/React.createElement(BasicConfig, _extends({
22
22
  ref: ref
@@ -28,13 +28,11 @@ function NodeTag(props, ref) {
28
28
  defaultCommonConfig: DEFAULT_NODE_TAG_COMMON_CONFIG,
29
29
  type: "node"
30
30
  }));
31
- }
32
-
33
- ;
31
+ });
34
32
  NodeTag.propTypes = {
35
33
  commonOptions: PropTypes.array
36
34
  };
37
35
  NodeTag.defaultProps = {
38
36
  commonOptions: defaultCommonOptions
39
37
  };
40
- export default /*#__PURE__*/React.forwardRef(NodeTag);
38
+ export default NodeTag;
@@ -13,10 +13,10 @@ var defaultCommonOptions = [{
13
13
  /**
14
14
  * 资源标注配置
15
15
  * @param {*} props
16
- * @returns
16
+ * @returns
17
17
  */
18
18
 
19
- function NodeTip(props, ref) {
19
+ var NodeTip = /*#__PURE__*/React.forwardRef(function (props, ref) {
20
20
  var commonOptions = props.commonOptions;
21
21
  return /*#__PURE__*/React.createElement(BasicConfig, _extends({
22
22
  ref: ref
@@ -27,12 +27,11 @@ function NodeTip(props, ref) {
27
27
  commonOptions: commonOptions || defaultCommonOptions,
28
28
  defaultCommonConfig: DEFAULT_TIP_COMMON_CONFIG
29
29
  }));
30
- }
31
-
30
+ });
32
31
  NodeTip.propTypes = {
33
32
  commonOptions: PropTypes.array
34
33
  };
35
34
  NodeTip.defaultProps = {
36
35
  commonOptions: defaultCommonOptions
37
36
  };
38
- export default /*#__PURE__*/React.forwardRef(NodeTip);
37
+ export default NodeTip;
@@ -21,6 +21,7 @@ function BasicConfig(props, ref) {
21
21
  value = props.value,
22
22
  commonOptions = props.commonOptions,
23
23
  defaultCommonConfig = props.defaultCommonConfig,
24
+ commonSelectWidget = props.commonSelectWidget,
24
25
  limit = props.limit,
25
26
  elementType = props.elementType,
26
27
  showType = props.showType,
@@ -78,6 +79,7 @@ function BasicConfig(props, ref) {
78
79
  });
79
80
  };
80
81
 
82
+ var CommonSelectWidget = commonSelectWidget || CommonCheckboxGroup;
81
83
  return /*#__PURE__*/React.createElement(_Box, {
82
84
  spacing: 8,
83
85
  direction: "column"
@@ -96,7 +98,7 @@ function BasicConfig(props, ref) {
96
98
  type: "primary",
97
99
  text: true,
98
100
  onClick: openSetting
99
- }, showType === 'tag' ? '选择图数据' : '选择Tooltip数据'), renderCustomSettingDrawer())), !isCustom && /*#__PURE__*/React.createElement(CommonCheckboxGroup, {
101
+ }, showType === 'tag' ? '选择图数据' : '选择Tooltip数据'), renderCustomSettingDrawer())), !isCustom && /*#__PURE__*/React.createElement(CommonSelectWidget, {
100
102
  value: data,
101
103
  dataSource: commonOptions,
102
104
  limit: limit,
@@ -0,0 +1,25 @@
1
+ import React, { forwardRef, useImperativeHandle, useState } from 'react';
2
+ import CustomSettingDrawer from "./CustomSettingDrawer";
3
+ var CustomSetting = /*#__PURE__*/forwardRef(function (props, ref) {
4
+ var topo = props.topo,
5
+ value = props.value;
6
+
7
+ var _useState = useState(false),
8
+ visible = _useState[0],
9
+ setVisible = _useState[1];
10
+
11
+ useImperativeHandle(ref, function () {
12
+ return {
13
+ show: function show() {
14
+ setVisible(true);
15
+ }
16
+ };
17
+ });
18
+ return /*#__PURE__*/React.createElement(CustomSettingDrawer, {
19
+ visible: visible,
20
+ value: value,
21
+ dataSource: topo.elementTagTipConfig.getNodeFiedldMap()
22
+ });
23
+ });
24
+ CustomSetting.displayName = 'CustomSetting';
25
+ export default CustomSetting;
@@ -0,0 +1,8 @@
1
+ import _Drawer from "@alifd/next/es/drawer";
2
+ import React from 'react';
3
+
4
+ function CustomSettingDrawer(props) {
5
+ return /*#__PURE__*/React.createElement(_Drawer, props, "aaa");
6
+ }
7
+
8
+ export default CustomSettingDrawer;