@riil-frontend/component-topology 12.0.0-dev.8 → 12.1.0-dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/build/1.js +1 -1
  2. package/build/index.css +1 -1
  3. package/build/index.js +14 -14
  4. package/es/components/TemplateButton/index.module.scss +1 -1
  5. package/es/core/components/AlarmListPanel/components/AlarmListItem.js +58 -3
  6. package/es/core/components/TopoView/topoView.js +5 -1
  7. package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +5 -12
  8. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +27 -10
  9. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.module.scss +21 -1
  10. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +9 -0
  11. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +2 -2
  12. package/es/core/editor/components/Toolbar/widgets/Layout/index.js +16 -2
  13. package/es/core/editor/hooks/useKeyboardShortcut.js +3 -1
  14. package/es/core/editor/utils/copyElementUtil.js +12 -0
  15. package/es/core/editor/utils/edgeTypeStyleUtil.js +8 -30
  16. package/es/core/hooks/useAlarm.js +131 -81
  17. package/es/core/hooks/useCmpLinkAlarm.js +153 -0
  18. package/es/core/hooks/useEventData.js +1 -2
  19. package/es/core/hooks/useGraphAlarmDisplay.js +91 -56
  20. package/es/core/hooks/useResourceConfig.js +1 -3
  21. package/es/core/hooks/useTopoEdit.js +51 -58
  22. package/es/core/models/Alarm.js +69 -142
  23. package/es/core/models/AttributeMetricDisplay.js +14 -5
  24. package/es/core/models/TopoApp.js +1 -1
  25. package/es/core/models/cache/CiCache.d.ts +1 -1
  26. package/es/core/models/cache/CiCache.js +3 -3
  27. package/es/core/models/cache/CiTypeCache.js +4 -0
  28. package/es/core/models/topoData.js +0 -1
  29. package/es/core/models/utils/linkUtils.js +20 -13
  30. package/es/core/services/index.js +1 -1
  31. package/es/core/services/topo/basic.js +2 -2
  32. package/es/core/store/models/topoConfig.js +7 -10
  33. package/es/core/store/models/topoMod.js +81 -134
  34. package/es/core/utils/edgeUtil.js +8 -0
  35. package/es/core/utils/metricUtil.js +8 -4
  36. package/es/core/utils/showGraphManageStatusUtil.js +3 -2
  37. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +12 -13
  38. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/LinkTopoCard.js +2 -2
  39. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useAlarmAndRiskData.js +20 -18
  40. package/es/core/viewer/components/plugins/ViewerPlugin.js +3 -1
  41. package/es/core/viewer/components/titlebar/widgets/AlarmButton.js +1 -5
  42. package/es/networkTopo/components/TopoView.js +6 -11
  43. package/es/networkTopo/hooks/useEdgeExpand.js +2 -3
  44. package/es/networkTopo/services/topo/basic.js +3 -3
  45. package/es/networkTopo/store/topoCenter.js +260 -223
  46. package/es/style.js +1 -1
  47. package/es/utils/ResourceConfigUtil.js +3 -36
  48. package/es/utils/ciRefAttributeTranslateUtil.d.ts +19 -0
  49. package/es/utils/ciRefAttributeTranslateUtil.js +155 -0
  50. package/es/utils/topoData.js +4 -2
  51. package/lib/components/TemplateButton/index.module.scss +1 -1
  52. package/lib/core/components/AlarmListPanel/components/AlarmListItem.js +60 -3
  53. package/lib/core/components/TopoView/topoView.js +5 -1
  54. package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +6 -12
  55. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +27 -9
  56. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.module.scss +21 -1
  57. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +8 -0
  58. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +1 -1
  59. package/lib/core/editor/components/Toolbar/widgets/Layout/index.js +16 -2
  60. package/lib/core/editor/hooks/useKeyboardShortcut.js +2 -0
  61. package/lib/core/editor/utils/copyElementUtil.js +15 -0
  62. package/lib/core/editor/utils/edgeTypeStyleUtil.js +8 -31
  63. package/lib/core/hooks/useAlarm.js +130 -79
  64. package/lib/core/hooks/useCmpLinkAlarm.js +166 -0
  65. package/lib/core/hooks/useEventData.js +1 -2
  66. package/lib/core/hooks/useGraphAlarmDisplay.js +91 -55
  67. package/lib/core/hooks/useResourceConfig.js +1 -3
  68. package/lib/core/hooks/useTopoEdit.js +50 -57
  69. package/lib/core/models/Alarm.js +69 -144
  70. package/lib/core/models/AttributeMetricDisplay.js +16 -4
  71. package/lib/core/models/TopoApp.js +1 -1
  72. package/lib/core/models/cache/CiCache.d.ts +1 -1
  73. package/lib/core/models/cache/CiCache.js +3 -3
  74. package/lib/core/models/cache/CiTypeCache.js +4 -0
  75. package/lib/core/models/topoData.js +0 -1
  76. package/lib/core/models/utils/linkUtils.js +21 -13
  77. package/lib/core/services/index.js +1 -1
  78. package/lib/core/services/topo/basic.js +2 -2
  79. package/lib/core/store/models/topoConfig.js +7 -10
  80. package/lib/core/store/models/topoMod.js +81 -134
  81. package/lib/core/utils/edgeUtil.js +10 -0
  82. package/lib/core/utils/metricUtil.js +8 -4
  83. package/lib/core/utils/showGraphManageStatusUtil.js +3 -2
  84. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +12 -13
  85. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/LinkTopoCard.js +2 -2
  86. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/hooks/useAlarmAndRiskData.js +20 -18
  87. package/lib/core/viewer/components/plugins/ViewerPlugin.js +3 -1
  88. package/lib/core/viewer/components/titlebar/widgets/AlarmButton.js +1 -5
  89. package/lib/networkTopo/components/TopoView.js +5 -14
  90. package/lib/networkTopo/hooks/useEdgeExpand.js +2 -3
  91. package/lib/networkTopo/services/topo/basic.js +3 -3
  92. package/lib/networkTopo/store/topoCenter.js +262 -225
  93. package/lib/style.js +1 -1
  94. package/lib/utils/ResourceConfigUtil.js +3 -38
  95. package/lib/utils/ciRefAttributeTranslateUtil.d.ts +19 -0
  96. package/lib/utils/ciRefAttributeTranslateUtil.js +168 -0
  97. package/lib/utils/topoData.js +4 -2
  98. package/package.json +3 -3
@@ -0,0 +1,168 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports.translateCiRefAttributeName = translateCiRefAttributeName;
7
+ exports.translateCisRefAttributeName = translateCisRefAttributeName;
8
+
9
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
10
+
11
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
+
13
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
+
15
+ var _componentTopologyUtils = require("@riil-frontend/component-topology-utils");
16
+
17
+ var _CiTypeCache = _interopRequireDefault(require("../core/models/cache/CiTypeCache"));
18
+
19
+ var _CiCache = _interopRequireDefault(require("../core/models/cache/CiCache"));
20
+
21
+ var _topoData = require("./topoData");
22
+
23
+ /**
24
+ * 获取ci列表的引用字段列表
25
+ */
26
+ function getCiRefAttributesMap(ciDatas, ciTypeMap) {
27
+ // ci引用字段列表
28
+ var ciRefAttributeMap = {};
29
+ ciDatas.forEach(function (ciData) {
30
+ var id = ciData.id;
31
+ var attributeMap = ciData.attributeMap || ciData.attributes;
32
+ ciRefAttributeMap[id] = [];
33
+ var typeCode = ciData.ciType || ciData.typeCode;
34
+ var ciTypeMeta = ciTypeMap[typeCode];
35
+
36
+ if (ciTypeMeta) {
37
+ ciTypeMeta.attributes.filter(function (attributeMeta) {
38
+ return !!attributeMeta.refCi;
39
+ }).forEach(function (attributeMeta) {
40
+ var refId = attributeMap[attributeMeta.code];
41
+
42
+ if (refId) {
43
+ var ciRefAttributeData = {
44
+ attrCode: attributeMeta.code,
45
+ id: refId
46
+ };
47
+ ciRefAttributeMap[ciData.id].push(ciRefAttributeData);
48
+ }
49
+ });
50
+ } else {
51
+ _componentTopologyUtils.rlog.warn("\u7FFB\u8BD1\u5F15\u7528\u5B57\u6BB5\u540D\u79F0\uFF1A\u672A\u67E5\u8BE2\u5230ciType " + typeCode, ciData);
52
+ }
53
+ });
54
+ return ciRefAttributeMap;
55
+ }
56
+
57
+ function getRefIds(ciRefAttributesMap) {
58
+ var refIds = [];
59
+ Object.keys(ciRefAttributesMap).forEach(function (ciId) {
60
+ var ciRefAttributeDatas = ciRefAttributesMap[ciId];
61
+ ciRefAttributeDatas.forEach(function (ciRefAttributeData) {
62
+ var refId = ciRefAttributeData.id;
63
+
64
+ if (!refIds.includes(refId)) {
65
+ refIds.push(refId);
66
+ }
67
+ });
68
+ });
69
+ return refIds;
70
+ }
71
+
72
+ function addRefCiNameToCiDatas(ciDatas, ciRefAttributesMap, refCiMap) {
73
+ return ciDatas.map(function (ciData) {
74
+ var id = ciData.id;
75
+ var attributeMap = (0, _extends2["default"])({}, ciData.attributeMap || ciData.attributes);
76
+ ciRefAttributesMap[id].forEach(function (refAttrs) {
77
+ var refCi = refCiMap[refAttrs.id];
78
+
79
+ if (refCi) {
80
+ // 引用ci名称获取规则:如果ci是树形结构(例如区域),取 tree_name_path;非树形,取display_name
81
+ var displayName = refCi.attributes.tree_name_path || refCi.attributes.display_name;
82
+ attributeMap[refAttrs.attrCode + "_object"] = {
83
+ displayName: displayName
84
+ };
85
+ }
86
+ });
87
+ return (0, _extends2["default"])({}, ciData, {
88
+ attributeMap: attributeMap
89
+ });
90
+ });
91
+ }
92
+
93
+ /**
94
+ * 翻译ci列表引用属性名称
95
+ * @param ciDatas
96
+ * @returns
97
+ */
98
+ function translateCisRefAttributeName(_x, _x2) {
99
+ return _translateCisRefAttributeName.apply(this, arguments);
100
+ }
101
+ /**
102
+ * 翻译ci引用属性名称
103
+ * @param ciData
104
+ * @returns
105
+ */
106
+
107
+
108
+ function _translateCisRefAttributeName() {
109
+ _translateCisRefAttributeName = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(ciDatas, options) {
110
+ var ciTypeMap, ciRefAttributesMap, refIds, refCiMap;
111
+ return _regenerator["default"].wrap(function _callee$(_context) {
112
+ while (1) switch (_context.prev = _context.next) {
113
+ case 0:
114
+ _context.next = 2;
115
+ return _CiTypeCache["default"].load((0, _topoData.getCiTypesFromCiElements)(ciDatas));
116
+
117
+ case 2:
118
+ ciTypeMap = _context.sent;
119
+ // 2. 查找引用字段及值
120
+ ciRefAttributesMap = getCiRefAttributesMap(ciDatas, ciTypeMap); // 3. 引用id列表
121
+
122
+ refIds = getRefIds(ciRefAttributesMap);
123
+
124
+ if (refIds.length) {
125
+ _context.next = 7;
126
+ break;
127
+ }
128
+
129
+ return _context.abrupt("return", ciDatas);
130
+
131
+ case 7:
132
+ _context.next = 9;
133
+ return _CiCache["default"].load(refIds, options === null || options === void 0 ? void 0 : options.refreshCiCache);
134
+
135
+ case 9:
136
+ refCiMap = _context.sent;
137
+ return _context.abrupt("return", addRefCiNameToCiDatas(ciDatas, ciRefAttributesMap, refCiMap));
138
+
139
+ case 11:
140
+ case "end":
141
+ return _context.stop();
142
+ }
143
+ }, _callee);
144
+ }));
145
+ return _translateCisRefAttributeName.apply(this, arguments);
146
+ }
147
+
148
+ function translateCiRefAttributeName(_x3, _x4) {
149
+ return _translateCiRefAttributeName.apply(this, arguments);
150
+ }
151
+
152
+ function _translateCiRefAttributeName() {
153
+ _translateCiRefAttributeName = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(ciData, options) {
154
+ var result;
155
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
156
+ while (1) switch (_context2.prev = _context2.next) {
157
+ case 0:
158
+ result = translateCisRefAttributeName([ciData], options);
159
+ return _context2.abrupt("return", result[0]);
160
+
161
+ case 2:
162
+ case "end":
163
+ return _context2.stop();
164
+ }
165
+ }, _callee2);
166
+ }));
167
+ return _translateCiRefAttributeName.apply(this, arguments);
168
+ }
@@ -135,8 +135,10 @@ var tfLink = function tfLink(engine, link) {
135
135
  function getCiTypesFromCiElements(allCi) {
136
136
  var ciTypes = [];
137
137
  allCi.forEach(function (element) {
138
- if (element.ciType && ciTypes.indexOf(element.ciType) < 0) {
139
- ciTypes.push(element.ciType);
138
+ var typeCode = element.ciType || element.typeCode;
139
+
140
+ if (typeCode && ciTypes.indexOf(typeCode) < 0) {
141
+ ciTypes.push(typeCode);
140
142
  }
141
143
  });
142
144
  return ciTypes;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@riil-frontend/component-topology",
3
- "version": "12.0.0-dev.8",
3
+ "version": "12.1.0-dev.1",
4
4
  "description": "拓扑",
5
5
  "scripts": {
6
6
  "start": "build-scripts start",
@@ -80,7 +80,7 @@
80
80
  "@riil-frontend/css": "^2.0.2",
81
81
  "@riil-frontend/hooks": "latest",
82
82
  "@riil-frontend/next-collapse": "^1.0.1-a.0",
83
- "@riil-frontend/utils": "^1.0.44",
83
+ "@riil-frontend/utils": "^1.0.45",
84
84
  "@types/jest": "^29.5.4",
85
85
  "axios": "^0.21.1",
86
86
  "build-plugin-component": "^1.12.1",
@@ -123,6 +123,6 @@
123
123
  "access": "public"
124
124
  },
125
125
  "license": "MIT",
126
- "homepage": "https://unpkg.com/@riil-frontend/component-topology@12.0.0-dev.8/build/index.html",
126
+ "homepage": "https://unpkg.com/@riil-frontend/component-topology@12.1.0-dev.1/build/index.html",
127
127
  "gitHead": "2da19ffccbb7ca60a8acf396e39f542c68bb33f5"
128
128
  }