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

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 (68) 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/core/components/AlarmListPanel/components/AlarmListItem.js +2 -2
  5. package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +2 -2
  6. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +5 -15
  7. package/es/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +2 -27
  8. package/es/core/editor/components/Toolbar/widgets/FontSizeWidget.js +3 -28
  9. package/es/core/editor/components/Toolbar/widgets/FontStyleButton.js +6 -52
  10. package/es/core/editor/components/Toolbar/widgets/Layout/index.js +2 -2
  11. package/es/core/editor/components/Toolbar/widgets/components/FontFamilySelect.js +29 -0
  12. package/es/core/editor/components/Toolbar/widgets/components/FontSizeSelect.js +29 -0
  13. package/es/core/editor/components/Toolbar/widgets/components/FontStyleSelect.js +71 -0
  14. package/es/core/editor/components/settings/propertyViews/view/GlobalEdgeToggle.js +2 -2
  15. package/es/core/editor/hooks/useNewElementTheme.js +20 -16
  16. package/es/core/editor/utils/edgeTypeStyleUtil.js +11 -9
  17. package/es/core/hooks/usePolling.js +2 -1
  18. package/es/core/hooks/useTopoEdit.js +169 -231
  19. package/es/core/models/Alarm.js +14 -15
  20. package/es/core/models/AttributeMetricDisplay.js +2 -1
  21. package/es/core/models/HistoryManager.js +11 -9
  22. package/es/core/models/TopoApp.js +23 -31
  23. package/es/core/models/utils/linkUtils.js +20 -19
  24. package/es/core/store/models/topoConfig.js +2 -1
  25. package/es/core/utils/edgeUtil.js +7 -10
  26. package/es/core/viewer/components/plugins/ElementDetailDrawer/hooks/useElementDetailManager.js +2 -2
  27. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +51 -13
  28. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/LinkTopo.module.scss +1 -1
  29. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/index.module.scss +8 -0
  30. package/es/networkTopo/models/EdgeGroupTagTipBuilder.js +7 -7
  31. package/es/networkTopo/models/LinkDynamicStyleExecutor.js +7 -63
  32. package/es/networkTopo/utils/edgeGroupTagUtil.js +2 -2
  33. package/es/utils/clusterUtil.js +3 -3
  34. package/es/utils/htElementUtils.js +16 -84
  35. package/lib/core/components/AlarmListPanel/components/AlarmListItem.js +2 -2
  36. package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +2 -2
  37. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +5 -14
  38. package/lib/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +3 -28
  39. package/lib/core/editor/components/Toolbar/widgets/FontSizeWidget.js +3 -28
  40. package/lib/core/editor/components/Toolbar/widgets/FontStyleButton.js +6 -56
  41. package/lib/core/editor/components/Toolbar/widgets/Layout/index.js +1 -1
  42. package/lib/core/editor/components/Toolbar/widgets/components/FontFamilySelect.js +38 -0
  43. package/lib/core/editor/components/Toolbar/widgets/components/FontSizeSelect.js +38 -0
  44. package/lib/core/editor/components/Toolbar/widgets/components/FontStyleSelect.js +83 -0
  45. package/lib/core/editor/components/settings/propertyViews/view/GlobalEdgeToggle.js +2 -2
  46. package/lib/core/editor/hooks/useNewElementTheme.js +20 -16
  47. package/lib/core/editor/utils/edgeTypeStyleUtil.js +10 -8
  48. package/lib/core/hooks/usePolling.js +6 -5
  49. package/lib/core/hooks/useTopoEdit.js +177 -257
  50. package/lib/core/models/Alarm.js +14 -15
  51. package/lib/core/models/AttributeMetricDisplay.js +6 -6
  52. package/lib/core/models/HistoryManager.js +13 -17
  53. package/lib/core/models/TopoApp.js +22 -29
  54. package/lib/core/models/utils/linkUtils.js +19 -18
  55. package/lib/core/store/models/topoConfig.js +9 -16
  56. package/lib/core/utils/edgeUtil.js +8 -10
  57. package/lib/core/viewer/components/plugins/ElementDetailDrawer/hooks/useElementDetailManager.js +3 -2
  58. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/EventsCard.js +52 -13
  59. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/LinkTopo.module.scss +1 -1
  60. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/index.module.scss +8 -0
  61. package/lib/networkTopo/models/EdgeGroupTagTipBuilder.js +6 -6
  62. package/lib/networkTopo/models/LinkDynamicStyleExecutor.js +6 -64
  63. package/lib/networkTopo/utils/edgeGroupTagUtil.js +2 -2
  64. package/lib/utils/clusterUtil.js +2 -2
  65. package/lib/utils/htElementUtils.js +19 -93
  66. package/package.json +2 -2
  67. package/es/networkTopo/models/LinkTagsTipsBuilder.js +0 -235
  68. package/lib/networkTopo/models/LinkTagsTipsBuilder.js +0 -245
@@ -55,8 +55,8 @@ export function getEdgeGroupLinkIdConfig(edgeGroup, topo) {
55
55
  });
56
56
  }
57
57
  export function getEdgeGroupConfigId(edgeGroup) {
58
- var sourceNode = edgeGroup.getSourceAgent();
59
- var targetNode = edgeGroup.getTargetAgent();
58
+ var sourceNode = edgeGroup.getSource();
59
+ var targetNode = edgeGroup.getTarget();
60
60
  var sourceId = sourceNode.a('uuid');
61
61
  var targetId = targetNode.a('uuid');
62
62
  return [sourceId, targetId].sort().join(',');
@@ -5,7 +5,7 @@ import _extends from "@babel/runtime/helpers/extends";
5
5
  */
6
6
  import { transformTopoElements } from "@riil-frontend/component-topology-graph/es/utils";
7
7
  import rlog from "@riil-frontend/component-topology-utils/es/rlog";
8
- import { getGroups, isExistedElement } from "./htElementUtils";
8
+ import { getGroups, containsElement } from "./htElementUtils";
9
9
  import { findGroupChildren } from "./topoData";
10
10
  export function isCluster(node) {
11
11
  return !!node.cluster;
@@ -76,7 +76,7 @@ export function isClusterHtElement(element) {
76
76
  return !!element.a('cluster');
77
77
  }
78
78
  export function isClusterMemberHtElement(element) {
79
- return element && element.getParent() && isClusterHtElement(element.getParent());
79
+ return (element === null || element === void 0 ? void 0 : element.getParent()) && isClusterHtElement(element.getParent());
80
80
  }
81
81
  /**
82
82
  * 集群无权限时收起
@@ -111,7 +111,7 @@ export function upgradeV103GraphClusterNode(topo, topoData) {
111
111
  var topoDataTrans = transformTopoElements(topoData);
112
112
  var dm = topo.getDataModel();
113
113
  var unExistedList = topoDataTrans.filter(function (data) {
114
- return !isExistedElement(topo.getHtTopo(), dm, data);
114
+ return !containsElement(dm, data);
115
115
  });
116
116
 
117
117
  if (!unExistedList.length) {
@@ -115,9 +115,6 @@ export function getNodeData(element) {
115
115
  export function getEdges(dataModel) {
116
116
  return getElements(dataModel).filter(isValidEdge);
117
117
  }
118
- export function isEdgeGroupExpanded(edge) {
119
- return isEdge(edge) && edge.getEdgeGroup() && !!edge.s("edge.expanded");
120
- }
121
118
  /**
122
119
  * 是否连线组代理
123
120
  * @param {*} edge
@@ -125,7 +122,10 @@ export function isEdgeGroupExpanded(edge) {
125
122
  */
126
123
 
127
124
  export function isEdgeGroupAgent(edge) {
128
- return isEdge(edge) && edge.getEdgeGroup() && edge.isEdgeGroupAgent();
125
+ return isEdge(edge) && edge.a('x.edgegroup.isEdgeGroup');
126
+ }
127
+ export function isEdgeVisible(edge) {
128
+ return edge.s('2d.visible') || edge.s('2d.visible') === undefined;
129
129
  }
130
130
  /**
131
131
  * 获得两个节点间的连线列表
@@ -152,61 +152,18 @@ export function getEdgesBetweenNodes(node1, node2) {
152
152
  return edges;
153
153
  }
154
154
  /**
155
- * 获得节点间的连线组,连线<=1时返回null
156
- * @returns
155
+ * 获得连线组连线列表
156
+ * @param {*} dataModel
157
+ * @returns
157
158
  */
158
159
 
159
- export function getEdgeGroupByNodes(node1, node2) {
160
- var htEdgeGroup = null;
161
- getEdgesBetweenNodes(node1, node2).forEach(function (edge) {
162
- if (!htEdgeGroup) {
163
- htEdgeGroup = edge.getEdgeGroup();
164
- }
165
- });
166
-
167
- if (!htEdgeGroup) {
168
- return null;
169
- }
170
-
171
- return new EdgeGroup(htEdgeGroup);
172
- }
173
- /**
174
- * 获得节点间的连线组,连线<=1时返回null
175
- * @returns
176
- */
177
-
178
- export function getEdgeGroupByNodeTags(dataModel, nodeTag1, nodeTag2) {
179
- var node1 = dataModel.getDataByTag(nodeTag1);
180
- var node2 = dataModel.getDataByTag(nodeTag2);
181
-
182
- if (!node1 || !node2) {
183
- console.warn("getEdgeGroupByNodes 未找到节点", {
184
- node1: node1,
185
- node2: node2,
186
- nodeTag1: nodeTag1,
187
- nodeTag2: nodeTag2
188
- });
189
- return null;
190
- }
191
-
192
- return getEdgeGroupByNodes(node1, node2);
193
- }
194
- export function getEdgeGroups(dataModel) {
195
- var edgeGroups = [];
196
- getEdges(dataModel).forEach(function (edge) {
197
- var group = edge.getEdgeGroup();
198
-
199
- if (group && !edgeGroups.includes(group)) {
200
- edgeGroups.push(group);
201
- }
202
- });
203
- return edgeGroups;
204
- }
205
160
  export function getEdgeGroupAgents(dataModel) {
206
161
  return getEdges(dataModel).filter(isEdgeGroupAgent);
207
162
  }
208
163
  export function getEdgeDatas(dataModel) {
209
- return getEdges(dataModel).map(function (element) {
164
+ return getEdges(dataModel).filter(function (edge) {
165
+ return !isEdgeGroupAgent(edge);
166
+ }).map(function (element) {
210
167
  var _element$getSource, _element$getTarget;
211
168
 
212
169
  return _extends({}, element.getAttrObject(), {
@@ -309,9 +266,13 @@ export function setElementRuntimeStyle(element, name, value) {
309
266
  }
310
267
  /**
311
268
  * 判断拓扑图是否存在元素
269
+ *
270
+ * @param {*} dataModel
271
+ * @param {{id?: string, tag?: string}} data
272
+ * @returns
312
273
  */
313
274
 
314
- export function isExistedElement(htTopo, dataModel, data) {
275
+ export function containsElement(dataModel, data) {
315
276
  if (dataModel.getDataByTag(data.id)) {
316
277
  return true;
317
278
  } // 识别区域
@@ -320,34 +281,5 @@ export function isExistedElement(htTopo, dataModel, data) {
320
281
  var element = getElements(dataModel).find(function (item) {
321
282
  return data.tag && item.a("tag") === data.tag;
322
283
  });
323
-
324
- if (element) {
325
- return true;
326
- } // 连线/连线组
327
-
328
-
329
- var edges = getEdges(dataModel);
330
-
331
- for (var i = 0; i < edges.length; i++) {
332
- var edge = edges[i]; // 如果连线组折叠,判断子连线
333
-
334
- var edgeData = htTopo.getEdgeData(edge);
335
-
336
- if (edgeData) {
337
- // eslint-disable-next-line no-underscore-dangle
338
- var id = edgeData._attrObject.id;
339
-
340
- if (id === data.id) {
341
- return true;
342
- }
343
- } // 如果连线组展开,判断连线组
344
- // eslint-disable-next-line no-underscore-dangle
345
-
346
-
347
- if (edge.__edgeGroup && edge.__edgeGroup._tag === data.id) {
348
- return true;
349
- }
350
- }
351
-
352
- return false;
284
+ return !!element;
353
285
  }
@@ -50,8 +50,8 @@ function AlarmListItem(props) {
50
50
  // 传入参数
51
51
  var topo = props.topo,
52
52
  alarmInfo = props.alarmInfo,
53
- onClick = props.onClick;
54
- console.log("AlarmListPanel", topo, alarmInfo);
53
+ onClick = props.onClick; // console.log("AlarmListPanel", topo, alarmInfo);
54
+
55
55
  return /*#__PURE__*/_react["default"].createElement(_list["default"].Item, {
56
56
  className: _indexModule["default"].AlarmListItem,
57
57
  media: /*#__PURE__*/_react["default"].createElement(_icon["default"], {
@@ -53,14 +53,14 @@ function EdgeColorButton(props) {
53
53
  });
54
54
  };
55
55
 
56
- var getLines = function getLines(list) {
56
+ var getCustomLines = function getCustomLines(list) {
57
57
  return list.filter(_edgeUtil.isCustomEdge);
58
58
  };
59
59
 
60
60
  (0, _react.useEffect)(function () {
61
61
  if (graphLoaded) {
62
62
  var edges = (0, _edgeTypeStyleUtil.getEdgesBySelection)(topo);
63
- var list = getLines(edges);
63
+ var list = getCustomLines(edges);
64
64
  setLineWidth(1); // eslint-disable-next-line eqeqeq
65
65
 
66
66
  if (selection.length == 1 && list.length === 1) {
@@ -48,20 +48,11 @@ var LINE_TYPE_OPTIONS = [{
48
48
  value: 'doublearc',
49
49
  label: '双弧线',
50
50
  icon: 'topo_linear_icon_arcline'
51
- } // {
52
- // value: 'points',
53
- // label: '自由线形',
54
- // icon: 'topo_linear_icon_pointsline',
55
- // },
56
- ];
57
-
58
- if (localStorage.getItem('topo.test.edge.customType') === 'true') {
59
- LINE_TYPE_OPTIONS.push({
60
- value: 'points',
61
- label: '自由线形',
62
- icon: 'topo_linear_icon_pointsline'
63
- });
64
- }
51
+ }, {
52
+ value: 'points',
53
+ label: '自由线形',
54
+ icon: 'topo_linear_icon_pointsline'
55
+ }];
65
56
 
66
57
  var LineType = /*#__PURE__*/_react["default"].forwardRef(function (props, ref) {
67
58
  var value = props.value,
@@ -7,9 +7,9 @@ exports["default"] = void 0;
7
7
 
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
 
10
- var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
10
+ var _FontFamilySelect = _interopRequireDefault(require("./components/FontFamilySelect"));
11
11
 
12
- var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
12
+ var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter"));
13
13
 
14
14
  var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
15
15
 
@@ -17,31 +17,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
17
17
 
18
18
  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; }
19
19
 
20
- function FontFamilySelect(props) {
21
- var value = props.value,
22
- onChange = props.onChange;
23
- var items = ['宋体', '微软雅黑', '黑体', 'Arial'];
24
- return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
25
- value: (items.includes(value) ? value : null) || '',
26
- valueRender: function valueRender(val) {
27
- return /*#__PURE__*/_react["default"].createElement("div", {
28
- style: {
29
- width: 48
30
- }
31
- }, val || '微软雅黑');
32
- },
33
- onSelect: onChange
34
- }, items.map(function (item) {
35
- return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
36
- key: item
37
- }, /*#__PURE__*/_react["default"].createElement("div", {
38
- style: {
39
- fontFamily: item
40
- }
41
- }, item));
42
- }));
43
- }
44
-
45
20
  function FontFamilyWidget(props) {
46
21
  var topo = props.topo,
47
22
  showLabel = props.showLabel,
@@ -51,7 +26,7 @@ function FontFamilyWidget(props) {
51
26
  label: "\u5B57\u4F53",
52
27
  tooltip: "\u5B57\u4F53",
53
28
  showLabel: showLabel
54
- }, /*#__PURE__*/_react["default"].createElement(FontFamilySelect, {
29
+ }, /*#__PURE__*/_react["default"].createElement(_FontFamilySelect["default"], {
55
30
  value: style.fontFamily,
56
31
  onChange: function onChange(val) {
57
32
  topo.historyManager.beginTransaction();
@@ -7,9 +7,9 @@ exports["default"] = void 0;
7
7
 
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
 
10
- var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
10
+ var _FontSizeSelect = _interopRequireDefault(require("./components/FontSizeSelect"));
11
11
 
12
- var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
12
+ var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter"));
13
13
 
14
14
  var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
15
15
 
@@ -17,31 +17,6 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
17
17
 
18
18
  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; }
19
19
 
20
- function FontSizeSelect(props) {
21
- var value = props.value,
22
- disabled = props.disabled,
23
- onChange = props.onChange;
24
- var items = [12, 14, 16, 18, 20, 24, 30, 36, 48, 60, 80];
25
- return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
26
- value: "" + (value || ''),
27
- valueRender: function valueRender(val) {
28
- return /*#__PURE__*/_react["default"].createElement("div", {
29
- style: {
30
- width: 18
31
- }
32
- }, val || 20);
33
- },
34
- disabled: disabled,
35
- onSelect: function onSelect(val) {
36
- return onChange(parseInt(val, 10));
37
- }
38
- }, items.map(function (item) {
39
- return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
40
- key: item
41
- }, item);
42
- }));
43
- }
44
-
45
20
  function FontSizeWidget(props) {
46
21
  var topo = props.topo,
47
22
  showLabel = props.showLabel,
@@ -57,7 +32,7 @@ function FontSizeWidget(props) {
57
32
  tooltip: "\u5B57\u53F7",
58
33
  showLabel: showLabel,
59
34
  disabled: disabled
60
- }, /*#__PURE__*/_react["default"].createElement(FontSizeSelect, {
35
+ }, /*#__PURE__*/_react["default"].createElement(_FontSizeSelect["default"], {
61
36
  value: style.fontSize,
62
37
  disabled: disabled,
63
38
  onChange: function onChange(val) {
@@ -7,39 +7,16 @@ exports["default"] = void 0;
7
7
 
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
 
10
- var _variables = _interopRequireDefault(require("@alifd/theme-19926/variables.js"));
10
+ var _FontStyleSelect = _interopRequireDefault(require("./components/FontStyleSelect"));
11
11
 
12
- var _htElementUtils = require("../../../../../utils/htElementUtils");
13
-
14
- var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
15
-
16
- var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
12
+ var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter"));
17
13
 
18
14
  var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
19
15
 
20
- var _Tooltip = _interopRequireDefault(require("../components/Tooltip"));
21
-
22
16
  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
17
 
24
18
  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; }
25
19
 
26
- var items = [{
27
- key: 'bold',
28
- label: '加粗',
29
- icon: 'bold',
30
- tooltip: '加粗'
31
- }, {
32
- key: 'italic',
33
- label: '斜体',
34
- icon: 'Italics',
35
- tooltip: '斜体'
36
- }, {
37
- key: 'underline',
38
- label: '下划线',
39
- icon: 'Underline',
40
- tooltip: '下划线'
41
- }];
42
-
43
20
  function buildValue(obj) {
44
21
  return Object.keys(obj).filter(function (key) {
45
22
  return !!obj[key];
@@ -107,39 +84,12 @@ function FontStyleButton(props) {
107
84
  tooltip: "\u6587\u5B57\u6837\u5F0F\uFF08\u52A0\u7C97\u3001\u659C\u4F53\u3001\u4E0B\u5212\u7EBF\uFF09",
108
85
  disabled: disabled,
109
86
  showLabel: showLabel
110
- }, /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
87
+ }, /*#__PURE__*/_react["default"].createElement(_FontStyleSelect["default"], {
111
88
  value: value,
112
- valueRender: function valueRender() {
113
- return /*#__PURE__*/_react["default"].createElement("img", {
114
- src: "/img/topo/editor/toolbar/bold/" + (disabled ? 'Disable' : 'Normal') + ".svg",
115
- alt: ""
116
- });
117
- },
118
- multiple: true,
119
89
  disabled: disabled,
120
- onSelect: handleSelect
121
- }, items.map(function (item) {
122
- return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
123
- key: item.key,
124
- disabled: fieldDisabled[item.key]
125
- }, /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], {
126
- trigger: /*#__PURE__*/_react["default"].createElement("div", {
127
- style: {
128
- display: 'flex',
129
- alignItems: 'center'
130
- }
131
- }, /*#__PURE__*/_react["default"].createElement("img", {
132
- src: "/img/topo/editor/toolbar/" + item.icon + "/" + (fieldDisabled[item.key] ? 'Disable' : 'Normal') + ".svg",
133
- alt: ""
134
- }), /*#__PURE__*/_react["default"].createElement("span", {
135
- style: fieldDisabled[item.key] ? {} : {
136
- color: _variables["default"]['$color-text1-4']
137
- }
138
- }, item.label)),
139
- align: "r",
140
- popupStyle: {}
141
- }, item.tooltip));
142
- })));
90
+ fieldDisabled: fieldDisabled,
91
+ onChange: handleSelect
92
+ }));
143
93
  }
144
94
 
145
95
  var _default = (0, _textStyleSettingRouter["default"])(FontStyleButton, {
@@ -162,7 +162,7 @@ function isLayoutEnabled(props) {
162
162
  } //中心节点布局,选中一个节点不是分层的情况下,按钮亮起
163
163
 
164
164
 
165
- if (topoShowType !== 'layers' && selection.length === 1) {
165
+ if (topoShowType !== 'layers' && selection.length === 1 && ((0, _htElementDataUtil.isNode)(selection[0]) || (0, _htElementDataUtil.isGroup)(selection[0]))) {
166
166
  return true;
167
167
  }
168
168
 
@@ -0,0 +1,38 @@
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 = _interopRequireDefault(require("react"));
9
+
10
+ var _DropdownMenu = _interopRequireDefault(require("./DropdownMenu"));
11
+
12
+ function FontFamilySelect(props) {
13
+ var value = props.value,
14
+ onChange = props.onChange;
15
+ var items = ['宋体', '微软雅黑', '黑体', 'Arial'];
16
+ return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
17
+ value: (items.includes(value) ? value : null) || '',
18
+ valueRender: function valueRender(val) {
19
+ return /*#__PURE__*/_react["default"].createElement("div", {
20
+ style: {
21
+ width: 48
22
+ }
23
+ }, val || '微软雅黑');
24
+ },
25
+ onSelect: onChange
26
+ }, items.map(function (item) {
27
+ return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
28
+ key: item
29
+ }, /*#__PURE__*/_react["default"].createElement("div", {
30
+ style: {
31
+ fontFamily: item
32
+ }
33
+ }, item));
34
+ }));
35
+ }
36
+
37
+ var _default = FontFamilySelect;
38
+ exports["default"] = _default;
@@ -0,0 +1,38 @@
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 = _interopRequireDefault(require("react"));
9
+
10
+ var _DropdownMenu = _interopRequireDefault(require("./DropdownMenu"));
11
+
12
+ function FontSizeSelect(props) {
13
+ var value = props.value,
14
+ disabled = props.disabled,
15
+ onChange = props.onChange;
16
+ var items = [12, 14, 16, 18, 20, 24, 30, 36, 48, 60, 80];
17
+ return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
18
+ value: "" + (value || ''),
19
+ valueRender: function valueRender(val) {
20
+ return /*#__PURE__*/_react["default"].createElement("div", {
21
+ style: {
22
+ width: 18
23
+ }
24
+ }, val || 20);
25
+ },
26
+ disabled: disabled,
27
+ onSelect: function onSelect(val) {
28
+ return onChange(parseInt(val, 10));
29
+ }
30
+ }, items.map(function (item) {
31
+ return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
32
+ key: item
33
+ }, item);
34
+ }));
35
+ }
36
+
37
+ var _default = FontSizeSelect;
38
+ exports["default"] = _default;
@@ -0,0 +1,83 @@
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 = _interopRequireDefault(require("react"));
9
+
10
+ var _variables = _interopRequireDefault(require("@alifd/theme-19926/variables.js"));
11
+
12
+ var _DropdownMenu = _interopRequireDefault(require("./DropdownMenu"));
13
+
14
+ var _Tooltip = _interopRequireDefault(require("../../components/Tooltip"));
15
+
16
+ var items = [{
17
+ key: 'bold',
18
+ label: '加粗',
19
+ icon: 'bold',
20
+ tooltip: '加粗'
21
+ }, {
22
+ key: 'italic',
23
+ label: '斜体',
24
+ icon: 'Italics',
25
+ tooltip: '斜体'
26
+ }, {
27
+ key: 'underline',
28
+ label: '下划线',
29
+ icon: 'Underline',
30
+ tooltip: '下划线'
31
+ }];
32
+
33
+ function buildValue(obj) {
34
+ return Object.keys(obj).filter(function (key) {
35
+ return !!obj[key];
36
+ });
37
+ }
38
+
39
+ var fields = ['bold', 'italic', 'underline'];
40
+
41
+ function FontStyleSelect(props) {
42
+ var value = props.value,
43
+ disabled = props.disabled,
44
+ onChange = props.onChange,
45
+ _props$fieldDisabled = props.fieldDisabled,
46
+ fieldDisabled = _props$fieldDisabled === void 0 ? {} : _props$fieldDisabled;
47
+ return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
48
+ value: value,
49
+ valueRender: function valueRender() {
50
+ return /*#__PURE__*/_react["default"].createElement("img", {
51
+ src: "/img/topo/editor/toolbar/bold/" + (disabled ? 'Disable' : 'Normal') + ".svg",
52
+ alt: ""
53
+ });
54
+ },
55
+ multiple: true,
56
+ disabled: disabled,
57
+ onSelect: onChange
58
+ }, items.map(function (item) {
59
+ return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
60
+ key: item.key,
61
+ disabled: !!fieldDisabled[item.key]
62
+ }, /*#__PURE__*/_react["default"].createElement(_Tooltip["default"], {
63
+ trigger: /*#__PURE__*/_react["default"].createElement("div", {
64
+ style: {
65
+ display: 'flex',
66
+ alignItems: 'center'
67
+ }
68
+ }, /*#__PURE__*/_react["default"].createElement("img", {
69
+ src: "/img/topo/editor/toolbar/" + item.icon + "/" + (fieldDisabled[item.key] ? 'Disable' : 'Normal') + ".svg",
70
+ alt: ""
71
+ }), /*#__PURE__*/_react["default"].createElement("span", {
72
+ style: fieldDisabled[item.key] ? {} : {
73
+ color: _variables["default"]['$color-text1-4']
74
+ }
75
+ }, item.label)),
76
+ align: "r",
77
+ popupStyle: {}
78
+ }, item.tooltip));
79
+ }));
80
+ }
81
+
82
+ var _default = FontStyleSelect;
83
+ exports["default"] = _default;
@@ -32,13 +32,13 @@ function GlobalEdgeToggle(props) {
32
32
  topo: topo,
33
33
  showType: 4
34
34
  });
35
- topo.getHtTopo().expandAllEdgeGroups();
35
+ topo.getHtTopo().toggleAllEdgeGroups(true);
36
36
  } else {
37
37
  (0, _linkUtils.showLinkByConfig)({
38
38
  topo: topo,
39
39
  showType: 1
40
40
  });
41
- topo.getHtTopo().collapseAllEdgeGroups();
41
+ topo.getHtTopo().toggleAllEdgeGroups(false);
42
42
  }
43
43
 
44
44
  displayConfigDispatchers.update({
@@ -26,27 +26,31 @@ function useNewElementTheme(props) {
26
26
  inited = true;
27
27
  }
28
28
 
29
- function handleDataModelChangeListener(e) {
30
- var kind = e.kind,
31
- data = e.data;
29
+ function handleAddElement(e) {
30
+ var data = e.data; // 设置主题样式
32
31
 
33
- if (kind === 'add') {
34
- // 设置主题样式
35
- var displayConfig = topo.store.getModelState('displayConfig');
36
- var theme = displayConfig.canvasTheme || 'white';
32
+ var displayConfig = topo.store.getModelState('displayConfig');
33
+ var theme = displayConfig.canvasTheme || 'white';
37
34
 
38
- var themeConfig = _themes["default"].find(function (item) {
39
- return item.name === theme;
40
- });
35
+ var themeConfig = _themes["default"].find(function (item) {
36
+ return item.name === theme;
37
+ });
41
38
 
42
- var _ThemeUtil2 = (0, _themeUtil["default"])({
43
- topo: topo
44
- }),
45
- setElementTheme = _ThemeUtil2.setElementTheme;
39
+ var _ThemeUtil = (0, _themeUtil["default"])({
40
+ topo: topo
41
+ }),
42
+ setElementTheme = _ThemeUtil.setElementTheme;
46
43
 
47
- setElementTheme(data, themeConfig); // 临时放这里,新加入节点按配置显示隐藏名称
44
+ setElementTheme(data, themeConfig); // 临时放这里,新加入节点按配置显示隐藏名称
45
+
46
+ (0, _nodeNameVisibleUtil.setNewNodeNameVisible)(topo, data);
47
+ }
48
48
 
49
- (0, _nodeNameVisibleUtil.setNewNodeNameVisible)(topo, data);
49
+ function handleDataModelChangeListener(e) {
50
+ var kind = e.kind;
51
+
52
+ if (kind === 'add') {
53
+ handleAddElement(e);
50
54
  }
51
55
  }
52
56