@riil-frontend/component-topology 11.0.10 → 11.0.12
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.
- package/build/1.js +2 -2
- package/build/2.js +1 -1
- package/build/index.css +1 -1
- package/build/index.js +30 -30
- package/es/components/ModelAttrSelectDrawer/components/MultipleTypeAttributeSelectDrawer.js +82 -0
- package/es/components/ModelAttrSelectDrawer/index.js +2 -2
- package/es/components/VerticalIconTab/VerticalIconTab.js +1 -1
- package/es/core/components/DisplaySettingDrawer/NodeTag.js +6 -3
- package/es/core/components/DisplaySettingDrawer/NodeTip.js +7 -4
- package/es/core/components/DisplaySettingDrawer/components/NodeAttrSettingDrawer.js +40 -0
- package/es/core/components/ResourceViewAttributeSetting/nodeCiTypeAttrUtil.js +96 -10
- package/es/core/components/TopoView/topoView.js +3 -0
- package/es/core/editor/components/BottomFloatTool/HelpIcon.js +92 -3
- package/es/core/editor/components/BottomFloatTool/HelpIcon.module.scss +77 -0
- package/es/core/editor/hooks/useNewElementTheme.js +5 -1
- package/es/core/hooks/useCanvasThemeConfig.js +16 -4
- package/es/core/hooks/useTopoEdit.js +12 -8
- package/es/core/models/AttributeMetricDisplay.js +11 -63
- package/es/core/models/TopoApp.js +1 -1
- package/es/core/models/cache/CiTypeCache.js +50 -39
- package/es/core/models/tagstips/ElementTagTipConfig.js +234 -95
- package/es/core/models/utils/nodeNameVisibleUtil.js +116 -0
- package/es/utils/topoData.js +10 -2
- package/lib/components/ModelAttrSelectDrawer/components/MultipleTypeAttributeSelectDrawer.js +97 -0
- package/lib/components/ModelAttrSelectDrawer/index.js +2 -2
- package/lib/components/VerticalIconTab/VerticalIconTab.js +2 -2
- package/lib/core/components/DisplaySettingDrawer/NodeTag.js +7 -3
- package/lib/core/components/DisplaySettingDrawer/NodeTip.js +8 -4
- package/lib/core/components/DisplaySettingDrawer/components/NodeAttrSettingDrawer.js +60 -0
- package/lib/core/components/ResourceViewAttributeSetting/nodeCiTypeAttrUtil.js +97 -10
- package/lib/core/components/TopoView/topoView.js +4 -0
- package/lib/core/editor/components/BottomFloatTool/HelpIcon.js +100 -3
- package/lib/core/editor/components/BottomFloatTool/HelpIcon.module.scss +77 -0
- package/lib/core/editor/hooks/useNewElementTheme.js +6 -1
- package/lib/core/hooks/useCanvasThemeConfig.js +16 -4
- package/lib/core/hooks/useTopoEdit.js +12 -8
- package/lib/core/models/AttributeMetricDisplay.js +12 -66
- package/lib/core/models/TopoApp.js +1 -1
- package/lib/core/models/cache/CiTypeCache.js +49 -39
- package/lib/core/models/tagstips/ElementTagTipConfig.js +235 -95
- package/lib/core/models/utils/nodeNameVisibleUtil.js +128 -0
- package/lib/utils/topoData.js +11 -2
- package/package.json +2 -2
@@ -0,0 +1,116 @@
|
|
1
|
+
import { getNodes, isNode } from "../../../utils/htElementUtils";
|
2
|
+
/**
|
3
|
+
* 根据配置执行节点名称显示隐藏
|
4
|
+
* 1. 资源根据标注配置显示隐藏
|
5
|
+
* 2. 默认标注配置不勾选图片名称,图片节点名称不显示
|
6
|
+
* 3. 自定义标注配置,图片名称显示
|
7
|
+
*/
|
8
|
+
|
9
|
+
export function updateNodesNameVisible(topo) {
|
10
|
+
getNodesNameVisible(topo).forEach(function (_ref) {
|
11
|
+
var htNode = _ref.htNode,
|
12
|
+
visible = _ref.visible;
|
13
|
+
var prevVisible = htNode.a('isShowName');
|
14
|
+
|
15
|
+
if (prevVisible !== visible) {
|
16
|
+
htNode.a('isShowName', visible);
|
17
|
+
}
|
18
|
+
});
|
19
|
+
}
|
20
|
+
/**
|
21
|
+
* 新加入节点按配置显示隐藏名称
|
22
|
+
* @param {*} topo
|
23
|
+
*/
|
24
|
+
|
25
|
+
export function setNewNodeNameVisible(topo, element) {
|
26
|
+
if (isNode(element)) {
|
27
|
+
var _topo$store$getModelS = topo.store.getModelState('displayConfig'),
|
28
|
+
nodeTag = _topo$store$getModelS.nodeTag;
|
29
|
+
|
30
|
+
var nameVisible = getNodeNameVisible({
|
31
|
+
node: element,
|
32
|
+
topo: topo,
|
33
|
+
nodeTag: nodeTag
|
34
|
+
});
|
35
|
+
element.a('isShowName', nameVisible);
|
36
|
+
}
|
37
|
+
}
|
38
|
+
export function getNodesNameVisible(topo) {
|
39
|
+
var _topo$store$getModelS2 = topo.store.getModelState('displayConfig'),
|
40
|
+
nodeTag = _topo$store$getModelS2.nodeTag;
|
41
|
+
|
42
|
+
var dm = topo.getDataModel();
|
43
|
+
var htNodes = getNodes(dm);
|
44
|
+
return htNodes.map(function (htNode) {
|
45
|
+
var node = topo.dataModel.getDataById(htNode.getTag());
|
46
|
+
return {
|
47
|
+
htNode: htNode,
|
48
|
+
node: node,
|
49
|
+
visible: getNodeNameVisible({
|
50
|
+
node: node,
|
51
|
+
topo: topo,
|
52
|
+
nodeTag: nodeTag
|
53
|
+
})
|
54
|
+
};
|
55
|
+
});
|
56
|
+
}
|
57
|
+
/**
|
58
|
+
* 从配置获得资源节点名称是否显示
|
59
|
+
* @param {*} node
|
60
|
+
* @returns
|
61
|
+
*/
|
62
|
+
|
63
|
+
export function getNodeNameVisible(_ref2) {
|
64
|
+
var node = _ref2.node,
|
65
|
+
topo = _ref2.topo,
|
66
|
+
nodeTag = _ref2.nodeTag;
|
67
|
+
|
68
|
+
if (node !== null && node !== void 0 && node.ciType) {
|
69
|
+
return getCiNodeNameVisible({
|
70
|
+
node: node,
|
71
|
+
nodeTag: nodeTag
|
72
|
+
});
|
73
|
+
} else {
|
74
|
+
return getCommonNodeNameVisible({
|
75
|
+
node: node,
|
76
|
+
nodeTag: nodeTag
|
77
|
+
});
|
78
|
+
}
|
79
|
+
} // 非CI节点
|
80
|
+
|
81
|
+
function getCommonNodeNameVisible(_ref3) {
|
82
|
+
var node = _ref3.node,
|
83
|
+
nodeTag = _ref3.nodeTag;
|
84
|
+
var visible = true;
|
85
|
+
|
86
|
+
if (nodeTag) {
|
87
|
+
var isCustom = nodeTag.isCustom,
|
88
|
+
data = nodeTag.data;
|
89
|
+
|
90
|
+
if (!isCustom) {
|
91
|
+
var items = data || [];
|
92
|
+
visible = !!items.filter(function (item) {
|
93
|
+
return item.type === 'graph';
|
94
|
+
}).length;
|
95
|
+
}
|
96
|
+
}
|
97
|
+
|
98
|
+
return visible;
|
99
|
+
}
|
100
|
+
|
101
|
+
function getCiNodeNameVisible(_ref4) {
|
102
|
+
var node = _ref4.node,
|
103
|
+
nodeTag = _ref4.nodeTag;
|
104
|
+
var visible = true;
|
105
|
+
|
106
|
+
if (nodeTag) {
|
107
|
+
var isCustom = nodeTag.isCustom,
|
108
|
+
data = nodeTag.data;
|
109
|
+
var items = (isCustom ? data[node.ciType] : data) || [];
|
110
|
+
visible = !!items.filter(function (item) {
|
111
|
+
return item.type === 'graph';
|
112
|
+
}).length;
|
113
|
+
}
|
114
|
+
|
115
|
+
return visible;
|
116
|
+
}
|
package/es/utils/topoData.js
CHANGED
@@ -11,6 +11,7 @@ import { getBackgroundImageUrl } from "../core/utils/backgroundUtil";
|
|
11
11
|
import { isClusterHtElement, processCluster } from "./clusterUtil";
|
12
12
|
import { isGroup } from "./htElementUtils";
|
13
13
|
import v140UpgradeSerializeNodeImageSize from "../core/upgrade/v140UpgradeSerializeNodeImageSize";
|
14
|
+
import { getNodeNameVisible } from "../core/models/utils/nodeNameVisibleUtil";
|
14
15
|
/**
|
15
16
|
* 查找数组中对应key的值为value的元素并返回,只查找第一个符合的元素
|
16
17
|
* @param {Array} arr 数组
|
@@ -63,13 +64,20 @@ var tfNode = function tfNode(topoEngine, node) {
|
|
63
64
|
*/
|
64
65
|
|
65
66
|
|
66
|
-
function updateNodeInfo(
|
67
|
+
function updateNodeInfo(topo, topoData) {
|
68
|
+
var _topo$store$getModelS = topo.store.getModelState('displayConfig'),
|
69
|
+
nodeTag = _topo$store$getModelS.nodeTag;
|
70
|
+
|
67
71
|
return _extends({}, topoData, {
|
68
72
|
nodes: topoData.nodes.map(function (node) {
|
69
73
|
var attributes = node.attributes;
|
70
74
|
return _extends({}, node, {
|
71
75
|
ipAddress: node.ipAddress || (attributes === null || attributes === void 0 ? void 0 : attributes.ipv4_address) || null,
|
72
|
-
isShowName:
|
76
|
+
isShowName: getNodeNameVisible({
|
77
|
+
node: node,
|
78
|
+
topo: topo,
|
79
|
+
nodeTag: nodeTag
|
80
|
+
})
|
73
81
|
});
|
74
82
|
})
|
75
83
|
});
|
@@ -0,0 +1,97 @@
|
|
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 _react = _interopRequireWildcard(require("react"));
|
9
|
+
|
10
|
+
var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-utils/es/rlog"));
|
11
|
+
|
12
|
+
var _ModelAttrSelectDrawer = _interopRequireDefault(require("./ModelAttrSelectDrawer"));
|
13
|
+
|
14
|
+
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); }
|
15
|
+
|
16
|
+
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; }
|
17
|
+
|
18
|
+
function parseValue(value) {
|
19
|
+
var selected = {};
|
20
|
+
Object.keys(value).forEach(function (ciType) {
|
21
|
+
selected[ciType] = value[ciType].map(function (_ref) {
|
22
|
+
var type = _ref.type,
|
23
|
+
code = _ref.code;
|
24
|
+
return type + ":" + code;
|
25
|
+
});
|
26
|
+
});
|
27
|
+
return selected;
|
28
|
+
}
|
29
|
+
/**
|
30
|
+
* 资源显示属性、指标配置
|
31
|
+
*/
|
32
|
+
|
33
|
+
|
34
|
+
var MultipleTypeAttributeSelectDrawer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
35
|
+
var value = props.value,
|
36
|
+
data = props.data,
|
37
|
+
showType = props.showType,
|
38
|
+
limit = props.limit,
|
39
|
+
onChange = props.onChange,
|
40
|
+
queryData = props.queryData;
|
41
|
+
var batchAttrMetric = (0, _react.useRef)();
|
42
|
+
|
43
|
+
var _useState = (0, _react.useState)(parseValue((value === null || value === void 0 ? void 0 : value.data) || {})),
|
44
|
+
selected = _useState[0],
|
45
|
+
setSelected = _useState[1];
|
46
|
+
|
47
|
+
(0, _react.useEffect)(function () {
|
48
|
+
setSelected(parseValue((value === null || value === void 0 ? void 0 : value.data) || {}));
|
49
|
+
}, [value]); // 点击选择数据,显示抽屉
|
50
|
+
|
51
|
+
var show = function show() {
|
52
|
+
queryData();
|
53
|
+
batchAttrMetric.current.show({
|
54
|
+
showType: showType
|
55
|
+
});
|
56
|
+
};
|
57
|
+
|
58
|
+
(0, _react.useImperativeHandle)(ref, function () {
|
59
|
+
return {
|
60
|
+
show: show
|
61
|
+
};
|
62
|
+
}); // 保存指标设置
|
63
|
+
|
64
|
+
var save = function save(showType, parm) {
|
65
|
+
_rlog["default"].debug('saveMarkSetting', showType, parm);
|
66
|
+
|
67
|
+
var newSelected = {};
|
68
|
+
Object.keys(parm).forEach(function (ciType) {
|
69
|
+
newSelected[ciType] = parm[ciType].map(function (id) {
|
70
|
+
var _id$split = id.split(':'),
|
71
|
+
type = _id$split[0],
|
72
|
+
code = _id$split[1];
|
73
|
+
|
74
|
+
return {
|
75
|
+
code: code,
|
76
|
+
type: type
|
77
|
+
};
|
78
|
+
});
|
79
|
+
});
|
80
|
+
onChange({
|
81
|
+
isCustom: true,
|
82
|
+
data: newSelected
|
83
|
+
});
|
84
|
+
};
|
85
|
+
|
86
|
+
return /*#__PURE__*/_react["default"].createElement(_ModelAttrSelectDrawer["default"], {
|
87
|
+
ref: batchAttrMetric,
|
88
|
+
value: selected,
|
89
|
+
dataSource: data,
|
90
|
+
limit: limit,
|
91
|
+
showType: showType,
|
92
|
+
onOk: save
|
93
|
+
});
|
94
|
+
});
|
95
|
+
MultipleTypeAttributeSelectDrawer.displayName = 'MultipleTypeAttributeSelectDrawer';
|
96
|
+
var _default = MultipleTypeAttributeSelectDrawer;
|
97
|
+
exports["default"] = _default;
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
5
5
|
exports.__esModule = true;
|
6
6
|
exports["default"] = void 0;
|
7
7
|
|
8
|
-
var
|
8
|
+
var _MultipleTypeAttributeSelectDrawer = _interopRequireDefault(require("./components/MultipleTypeAttributeSelectDrawer"));
|
9
9
|
|
10
|
-
var _default =
|
10
|
+
var _default = _MultipleTypeAttributeSelectDrawer["default"];
|
11
11
|
exports["default"] = _default;
|
@@ -15,10 +15,10 @@ var _react = _interopRequireWildcard(require("react"));
|
|
15
15
|
|
16
16
|
var _classnames = _interopRequireDefault(require("classnames"));
|
17
17
|
|
18
|
-
var _VerticalIconTabModule = _interopRequireDefault(require("./VerticalIconTab.module.scss"));
|
19
|
-
|
20
18
|
var _variables = _interopRequireDefault(require("@alifd/theme-19926/variables.js"));
|
21
19
|
|
20
|
+
var _VerticalIconTabModule = _interopRequireDefault(require("./VerticalIconTab.module.scss"));
|
21
|
+
|
22
22
|
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); }
|
23
23
|
|
24
24
|
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; }
|
@@ -15,6 +15,8 @@ var _ResourceInfoDisplay = require("../../../constants/ResourceInfoDisplay");
|
|
15
15
|
|
16
16
|
var _BasicConfig = _interopRequireDefault(require("./ResourceDisplay/BasicConfig"));
|
17
17
|
|
18
|
+
var _NodeAttrSettingDrawer = _interopRequireDefault(require("./components/NodeAttrSettingDrawer"));
|
19
|
+
|
18
20
|
var defaultCommonOptions = [{
|
19
21
|
value: 'graph:name',
|
20
22
|
label: '图片名称'
|
@@ -31,15 +33,17 @@ var defaultCommonOptions = [{
|
|
31
33
|
var NodeTag = /*#__PURE__*/_react["default"].forwardRef(function (props, ref) {
|
32
34
|
var commonOptions = props.commonOptions;
|
33
35
|
return /*#__PURE__*/_react["default"].createElement(_BasicConfig["default"], (0, _extends2["default"])({
|
34
|
-
ref: ref
|
35
|
-
}, props, {
|
36
|
+
ref: ref,
|
36
37
|
limit: 3,
|
37
38
|
elementType: "node",
|
38
39
|
showType: "tag",
|
39
40
|
commonOptions: commonOptions || defaultCommonOptions,
|
40
41
|
defaultCommonConfig: _ResourceInfoDisplay.DEFAULT_NODE_TAG_COMMON_CONFIG,
|
42
|
+
customSettingDrawer: function customSettingDrawer(params) {
|
43
|
+
return /*#__PURE__*/_react["default"].createElement(_NodeAttrSettingDrawer["default"], params);
|
44
|
+
},
|
41
45
|
type: "node"
|
42
|
-
}));
|
46
|
+
}, props));
|
43
47
|
});
|
44
48
|
|
45
49
|
NodeTag.displayName = 'NodeTag';
|
@@ -15,6 +15,8 @@ var _ResourceInfoDisplay = require("../../../constants/ResourceInfoDisplay");
|
|
15
15
|
|
16
16
|
var _BasicConfig = _interopRequireDefault(require("./ResourceDisplay/BasicConfig"));
|
17
17
|
|
18
|
+
var _NodeAttrSettingDrawer = _interopRequireDefault(require("./components/NodeAttrSettingDrawer"));
|
19
|
+
|
18
20
|
var defaultCommonOptions = [{
|
19
21
|
value: 'attribute:display_name',
|
20
22
|
label: '显示名称'
|
@@ -31,14 +33,16 @@ var defaultCommonOptions = [{
|
|
31
33
|
var NodeTip = /*#__PURE__*/_react["default"].forwardRef(function (props, ref) {
|
32
34
|
var commonOptions = props.commonOptions;
|
33
35
|
return /*#__PURE__*/_react["default"].createElement(_BasicConfig["default"], (0, _extends2["default"])({
|
34
|
-
ref: ref
|
35
|
-
}, props, {
|
36
|
+
ref: ref,
|
36
37
|
limit: 4,
|
37
38
|
elementType: "node",
|
38
39
|
showType: "tip",
|
39
40
|
commonOptions: commonOptions || defaultCommonOptions,
|
40
|
-
defaultCommonConfig: _ResourceInfoDisplay.DEFAULT_TIP_COMMON_CONFIG
|
41
|
-
|
41
|
+
defaultCommonConfig: _ResourceInfoDisplay.DEFAULT_TIP_COMMON_CONFIG,
|
42
|
+
customSettingDrawer: function customSettingDrawer(params) {
|
43
|
+
return /*#__PURE__*/_react["default"].createElement(_NodeAttrSettingDrawer["default"], params);
|
44
|
+
}
|
45
|
+
}, props));
|
42
46
|
});
|
43
47
|
|
44
48
|
NodeTip.propTypes = {
|
@@ -0,0 +1,60 @@
|
|
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 _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
11
|
+
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
13
|
+
|
14
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
15
|
+
|
16
|
+
var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-utils/lib/rlog"));
|
17
|
+
|
18
|
+
var _ModelAttrSelectDrawer = _interopRequireDefault(require("../../../../components/ModelAttrSelectDrawer"));
|
19
|
+
|
20
|
+
var _nodeCiTypeAttrUtil = require("../../ResourceViewAttributeSetting/nodeCiTypeAttrUtil");
|
21
|
+
|
22
|
+
var _excluded = ["topo", "showType", "value"];
|
23
|
+
|
24
|
+
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); }
|
25
|
+
|
26
|
+
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; }
|
27
|
+
|
28
|
+
/**
|
29
|
+
* 节点标注、悬浮框设置
|
30
|
+
*/
|
31
|
+
var NodeAttrSettingDrawer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
|
32
|
+
var topo = props.topo,
|
33
|
+
showType = props.showType,
|
34
|
+
value = props.value,
|
35
|
+
otherProps = (0, _objectWithoutPropertiesLoose2["default"])(props, _excluded);
|
36
|
+
|
37
|
+
var _useState = (0, _react.useState)([]),
|
38
|
+
data = _useState[0],
|
39
|
+
setData = _useState[1];
|
40
|
+
|
41
|
+
var queryData = function queryData() {
|
42
|
+
_rlog["default"].info('属性配置:加载数据');
|
43
|
+
|
44
|
+
var items = (0, _nodeCiTypeAttrUtil.getNodeModels)(topo);
|
45
|
+
setData(items);
|
46
|
+
};
|
47
|
+
|
48
|
+
return /*#__PURE__*/_react["default"].createElement(_ModelAttrSelectDrawer["default"], (0, _extends2["default"])({
|
49
|
+
ref: ref
|
50
|
+
}, otherProps, {
|
51
|
+
value: value,
|
52
|
+
data: data,
|
53
|
+
showType: showType,
|
54
|
+
queryData: queryData
|
55
|
+
}));
|
56
|
+
});
|
57
|
+
NodeAttrSettingDrawer.displayName = 'NodeAttrSettingDrawer';
|
58
|
+
NodeAttrSettingDrawer.propTypes = {};
|
59
|
+
var _default = NodeAttrSettingDrawer;
|
60
|
+
exports["default"] = _default;
|
@@ -2,10 +2,104 @@
|
|
2
2
|
|
3
3
|
exports.__esModule = true;
|
4
4
|
exports.getNodeCiModSet = getNodeCiModSet;
|
5
|
+
exports.getNodeModels = getNodeModels;
|
5
6
|
|
6
7
|
var _topoData = require("../../../utils/topoData");
|
7
8
|
|
8
|
-
|
9
|
+
/**
|
10
|
+
* 获取节点标注、悬浮框配置
|
11
|
+
* @param {*} topo
|
12
|
+
* @returns
|
13
|
+
*/
|
14
|
+
function getNodeModels(topo) {
|
15
|
+
return getNodeModSet();
|
16
|
+
|
17
|
+
function getNodeModSet() {
|
18
|
+
var data = topo.store.getModelState('topoMod').data;
|
19
|
+
var ciTypes = (0, _topoData.getCiTypesFromCiElements)(data.nodes);
|
20
|
+
return getMods(ciTypes);
|
21
|
+
}
|
22
|
+
/**
|
23
|
+
*
|
24
|
+
* @param {array} ciTypeCodes
|
25
|
+
* @returns
|
26
|
+
*/
|
27
|
+
|
28
|
+
|
29
|
+
function getMods(ciTypeCodes) {
|
30
|
+
var ciTypeMap = topo.ciTyeCache.ciTypes;
|
31
|
+
return Object.keys(ciTypeMap).filter(function (item) {
|
32
|
+
return ciTypeCodes.includes(item);
|
33
|
+
}).map(function (key) {
|
34
|
+
var ciTypeObj = ciTypeMap[key];
|
35
|
+
return {
|
36
|
+
id: ciTypeObj.code,
|
37
|
+
label: ciTypeObj.displayName,
|
38
|
+
icon: "/img/model/" + ciTypeObj.icon + ".svg",
|
39
|
+
list: buildModelFields(ciTypeObj, 'node')
|
40
|
+
};
|
41
|
+
});
|
42
|
+
}
|
43
|
+
|
44
|
+
function buildModels(ciTypeObj) {
|
45
|
+
return {
|
46
|
+
id: ciTypeObj.code,
|
47
|
+
label: ciTypeObj.displayName,
|
48
|
+
icon: "/img/model/" + ciTypeObj.icon + ".svg",
|
49
|
+
list: buildModelFields(ciTypeObj, 'node')
|
50
|
+
};
|
51
|
+
}
|
52
|
+
/**
|
53
|
+
* 过滤ci元数据中的属性和指标,用于属性和指标显示设置
|
54
|
+
* @param {} ciTypeObj
|
55
|
+
* @returns
|
56
|
+
*/
|
57
|
+
|
58
|
+
|
59
|
+
function buildModelFields(ciTypeObj, type) {
|
60
|
+
var custom = [];
|
61
|
+
|
62
|
+
if (type === 'node') {
|
63
|
+
custom.push.apply(custom, [{
|
64
|
+
id: 'graph:name',
|
65
|
+
code: 'name',
|
66
|
+
name: '图片名称',
|
67
|
+
type: 'custom'
|
68
|
+
}, {
|
69
|
+
id: 'ciType:display_name',
|
70
|
+
code: 'ciType',
|
71
|
+
name: '资源类型',
|
72
|
+
type: 'custom'
|
73
|
+
}]);
|
74
|
+
}
|
75
|
+
|
76
|
+
var attributes = ciTypeObj.attributes.filter(function (attr) {
|
77
|
+
return !!attr.userVisible;
|
78
|
+
}).map(function (item) {
|
79
|
+
return {
|
80
|
+
type: 'attribute',
|
81
|
+
id: "attribute:" + item.code,
|
82
|
+
code: "attribute:" + item.code,
|
83
|
+
name: item.name,
|
84
|
+
typeName: '属性'
|
85
|
+
};
|
86
|
+
});
|
87
|
+
var metrics = ciTypeObj.metrics.map(function (item) {
|
88
|
+
return {
|
89
|
+
type: 'metric',
|
90
|
+
id: "metric:" + item.code,
|
91
|
+
code: "metric:" + item.code,
|
92
|
+
name: item.name,
|
93
|
+
typeName: '指标'
|
94
|
+
};
|
95
|
+
});
|
96
|
+
return [].concat(custom, attributes, metrics);
|
97
|
+
}
|
98
|
+
|
99
|
+
;
|
100
|
+
} // 资源类型含有属性和指标集合
|
101
|
+
|
102
|
+
|
9
103
|
function getNodeCiModSet(params) {
|
10
104
|
var topo = params.topo;
|
11
105
|
var data = topo.store.getModelState('topoMod').data;
|
@@ -35,8 +129,7 @@ function getNodeCiModSet(params) {
|
|
35
129
|
icon: ciTypeObj.icon,
|
36
130
|
list: ciModfilter(ciTypeObj, globalConfig, 'node', ciTypeObj.code)
|
37
131
|
};
|
38
|
-
});
|
39
|
-
|
132
|
+
});
|
40
133
|
return modSet;
|
41
134
|
}
|
42
135
|
/**
|
@@ -66,13 +159,7 @@ function getNodeCiModSet(params) {
|
|
66
159
|
(_tags$data$code = tags.data[code]) === null || _tags$data$code === void 0 ? void 0 : _tags$data$code.map(function (item) {
|
67
160
|
tagArr.push(item.code + "-" + item.type);
|
68
161
|
});
|
69
|
-
}
|
70
|
-
// "过滤ci元数据中的属性和指标,用于属性和指标显示设置",
|
71
|
-
// globalSetting,
|
72
|
-
// tipArr,
|
73
|
-
// tagArr
|
74
|
-
// );
|
75
|
-
|
162
|
+
}
|
76
163
|
|
77
164
|
var custom = [];
|
78
165
|
|
@@ -57,6 +57,8 @@ var _basicIcons = _interopRequireDefault(require("../../common/icons/basicIcons"
|
|
57
57
|
|
58
58
|
var _HelpIcon = _interopRequireDefault(require("../../editor/components/BottomFloatTool/HelpIcon"));
|
59
59
|
|
60
|
+
var _nodeNameVisibleUtil = require("../../models/utils/nodeNameVisibleUtil");
|
61
|
+
|
60
62
|
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); }
|
61
63
|
|
62
64
|
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; }
|
@@ -159,6 +161,7 @@ var Topology = function Topology(props) {
|
|
159
161
|
htElements: topo.getDataModel().getDatas().toArray()
|
160
162
|
});
|
161
163
|
|
164
|
+
(0, _nodeNameVisibleUtil.updateNodesNameVisible)(topo);
|
162
165
|
(0, _clusterUtil.upgradeV103GraphClusterNode)(topo, topoData);
|
163
166
|
(0, _graphLinkUtil.fixLink)(topo);
|
164
167
|
(0, _clusterUtil.handleClusterNoPermission)(topo);
|
@@ -185,6 +188,7 @@ var Topology = function Topology(props) {
|
|
185
188
|
htElements: topo.getDataModel().getDatas().toArray()
|
186
189
|
});
|
187
190
|
|
191
|
+
(0, _nodeNameVisibleUtil.updateNodesNameVisible)(topo);
|
188
192
|
(0, _clusterUtil.upgradeV103GraphClusterNode)(topo, topoData);
|
189
193
|
(0, _graphLinkUtil.fixLink)(topo);
|
190
194
|
(0, _clusterUtil.handleClusterNoPermission)(topo);
|
@@ -5,11 +5,108 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
5
5
|
exports.__esModule = true;
|
6
6
|
exports["default"] = void 0;
|
7
7
|
|
8
|
-
var
|
8
|
+
var _balloon = _interopRequireDefault(require("@alifd/next/lib/balloon"));
|
9
|
+
|
10
|
+
var _grid = _interopRequireDefault(require("@alifd/next/lib/grid"));
|
11
|
+
|
12
|
+
var _react = _interopRequireWildcard(require("react"));
|
13
|
+
|
14
|
+
var _HelpIconModule = _interopRequireDefault(require("./HelpIcon.module.scss"));
|
15
|
+
|
16
|
+
var _useCanvasThemeConfig2 = _interopRequireDefault(require("../../../hooks/useCanvasThemeConfig"));
|
17
|
+
|
18
|
+
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); }
|
19
|
+
|
20
|
+
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; }
|
9
21
|
|
10
22
|
function HelpIcon(props) {
|
11
|
-
var topo = props.topo
|
12
|
-
|
23
|
+
var topo = props.topo,
|
24
|
+
topoType = props.topoType;
|
25
|
+
var localStorageVal = localStorage.getItem(topoType + 'helpBoxHidden');
|
26
|
+
|
27
|
+
var _useState = (0, _react.useState)(),
|
28
|
+
helpBoxIsShow = _useState[0],
|
29
|
+
setHelpBoxIsShow = _useState[1]; //TODO:在主得style里面需要增加color与background属性,根据外部传值进行改变,默认值为$color-text1-4,#fff
|
30
|
+
|
31
|
+
|
32
|
+
var Row = _grid["default"].Row,
|
33
|
+
Col = _grid["default"].Col;
|
34
|
+
|
35
|
+
var _useCanvasThemeConfig = (0, _useCanvasThemeConfig2["default"])({
|
36
|
+
topo: topo
|
37
|
+
}),
|
38
|
+
themeConfig = _useCanvasThemeConfig.themeConfig;
|
39
|
+
|
40
|
+
var helpIconNames = themeConfig.editor.helpIcon;
|
41
|
+
|
42
|
+
var onChange = function onChange(visible, type) {
|
43
|
+
if (type != 'docClick') {
|
44
|
+
setHelpBoxIsShow(visible);
|
45
|
+
localStorage.setItem(topoType + 'helpBoxHidden', !visible);
|
46
|
+
}
|
47
|
+
};
|
48
|
+
|
49
|
+
var topoModState = topo.store.useModelState('topoMod');
|
50
|
+
var graphLoaded = topoModState.graphLoaded;
|
51
|
+
(0, _react.useEffect)(function () {
|
52
|
+
if (graphLoaded) {
|
53
|
+
setHelpBoxIsShow(localStorageVal == 'true' ? false : true);
|
54
|
+
}
|
55
|
+
}, [topo, graphLoaded]);
|
56
|
+
return /*#__PURE__*/_react["default"].createElement(_balloon["default"], {
|
57
|
+
triggerType: "click",
|
58
|
+
align: "t",
|
59
|
+
trigger: /*#__PURE__*/_react["default"].createElement("div", {
|
60
|
+
className: _HelpIconModule["default"].topoHelpIconBtn,
|
61
|
+
onClick: function onClick() {
|
62
|
+
open;
|
63
|
+
}
|
64
|
+
}, /*#__PURE__*/_react["default"].createElement("img", {
|
65
|
+
src: "/img/topo/editor/bottomFloatTool/default.svg",
|
66
|
+
alt: ""
|
67
|
+
})),
|
68
|
+
closable: true,
|
69
|
+
visible: helpBoxIsShow,
|
70
|
+
onVisibleChange: onChange,
|
71
|
+
shouldUpdatePosition: true,
|
72
|
+
id: helpIconNames
|
73
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
74
|
+
className: _HelpIconModule["default"].topoHelpIcon
|
75
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
76
|
+
className: _HelpIconModule["default"][helpIconNames + 'Box']
|
77
|
+
}, /*#__PURE__*/_react["default"].createElement("span", {
|
78
|
+
className: _HelpIconModule["default"].title
|
79
|
+
}, "\u5FEB\u6377\u952E"), /*#__PURE__*/_react["default"].createElement("div", {
|
80
|
+
className: _HelpIconModule["default"].conten
|
81
|
+
}, /*#__PURE__*/_react["default"].createElement(Row, null, /*#__PURE__*/_react["default"].createElement(Col, {
|
82
|
+
span: "16"
|
83
|
+
}, "\u590D\u5236"), /*#__PURE__*/_react["default"].createElement(Col, {
|
84
|
+
span: "8"
|
85
|
+
}, "ctrl/\u2318+c")), /*#__PURE__*/_react["default"].createElement(Row, null, /*#__PURE__*/_react["default"].createElement(Col, {
|
86
|
+
span: "16"
|
87
|
+
}, "\u7C98\u8D34"), /*#__PURE__*/_react["default"].createElement(Col, {
|
88
|
+
span: "8"
|
89
|
+
}, "ctrl/\u2318+v")), /*#__PURE__*/_react["default"].createElement(Row, null, /*#__PURE__*/_react["default"].createElement(Col, {
|
90
|
+
span: "16"
|
91
|
+
}, "\u64A4\u9500"), /*#__PURE__*/_react["default"].createElement(Col, {
|
92
|
+
span: "8"
|
93
|
+
}, "ctrl/\u2318+z")), /*#__PURE__*/_react["default"].createElement(Row, null, /*#__PURE__*/_react["default"].createElement(Col, {
|
94
|
+
span: "16"
|
95
|
+
}, "\u6062\u590D"), /*#__PURE__*/_react["default"].createElement(Col, {
|
96
|
+
span: "8"
|
97
|
+
}, "ctrl/\u2318+y")), /*#__PURE__*/_react["default"].createElement(Row, null, /*#__PURE__*/_react["default"].createElement(Col, {
|
98
|
+
span: "16"
|
99
|
+
}, "\u6587\u5B57\u52A0\u7C97"), /*#__PURE__*/_react["default"].createElement(Col, {
|
100
|
+
span: "8"
|
101
|
+
}, "ctrl/\u2318+b")), /*#__PURE__*/_react["default"].createElement(Row, null, /*#__PURE__*/_react["default"].createElement(Col, {
|
102
|
+
span: "16"
|
103
|
+
}, "\u9009\u62E9-\u62D6\u52A8"), /*#__PURE__*/_react["default"].createElement(Col, {
|
104
|
+
span: "8"
|
105
|
+
}, "\u7A7A\u683C")), /*#__PURE__*/_react["default"].createElement(Row, null, /*#__PURE__*/_react["default"].createElement(Col, {
|
106
|
+
span: "16"
|
107
|
+
}, "\u9000\u51FA\u94FE\u8DEF/\u7EBF\u7ED8\u5236"), /*#__PURE__*/_react["default"].createElement(Col, {
|
108
|
+
span: "8"
|
109
|
+
}, "\u9F20\u6807\u53F3\u952E"))))));
|
13
110
|
}
|
14
111
|
|
15
112
|
var _default = HelpIcon;
|