@riil-frontend/component-topology 2.9.0 → 2.10.0-alpha-5

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 (39) 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 +31 -31
  5. package/es/components/LayoutDirectionSelect/Item.module.scss +1 -2
  6. package/es/components/LayoutDirectionSelect/LayoutDirectionSelect.js +1 -1
  7. package/es/components/LayoutDirectionSelect/LayoutDirectionSelect.module.scss +1 -0
  8. package/es/components/TagImageSelect/index.js +9 -12
  9. package/es/components/TemplateButton/Icon.js +2 -1
  10. package/es/components/TemplateButton/assets/index.js +1 -5
  11. package/es/components/TemplateButton/index.js +5 -12
  12. package/es/components/TemplateButton/index.module.scss +3 -3
  13. package/es/core/models/cache/CiTyeCache.js +1 -1
  14. package/es/core/models/utils/linkUtils.js +2 -2
  15. package/es/core/viewer/components/titlebar/ViewerTools.js +5 -1
  16. package/es/core/viewer/components/titlebar/useSetDefaultTopo.js +30 -0
  17. package/es/models/topoCreateMod.js +44 -18
  18. package/es/models/topoMod.js +3 -2
  19. package/es/utils/tree.js +5 -0
  20. package/lib/components/LayoutDirectionSelect/Item.module.scss +1 -2
  21. package/lib/components/LayoutDirectionSelect/LayoutDirectionSelect.js +1 -1
  22. package/lib/components/LayoutDirectionSelect/LayoutDirectionSelect.module.scss +1 -0
  23. package/lib/components/TagImageSelect/index.js +10 -12
  24. package/lib/components/TemplateButton/Icon.js +2 -1
  25. package/lib/components/TemplateButton/assets/index.js +0 -6
  26. package/lib/components/TemplateButton/index.js +5 -13
  27. package/lib/components/TemplateButton/index.module.scss +3 -3
  28. package/lib/core/models/cache/CiTyeCache.js +1 -1
  29. package/lib/core/models/utils/linkUtils.js +2 -2
  30. package/lib/core/viewer/components/titlebar/ViewerTools.js +6 -1
  31. package/lib/core/viewer/components/titlebar/useSetDefaultTopo.js +40 -0
  32. package/lib/models/topoCreateMod.js +44 -18
  33. package/lib/models/topoMod.js +3 -2
  34. package/lib/utils/tree.js +5 -0
  35. package/package.json +6 -5
  36. package/es/components/TemplateButton/assets/topo_tpl_blank.svg +0 -9
  37. package/es/components/TemplateButton/assets/topo_tpl_region.svg +0 -14
  38. package/lib/components/TemplateButton/assets/topo_tpl_blank.svg +0 -9
  39. package/lib/components/TemplateButton/assets/topo_tpl_region.svg +0 -14
@@ -4,6 +4,5 @@
4
4
 
5
5
  .text {
6
6
  font-size: 12px;
7
- margin-top: 15px;
8
- padding-bottom: 18px;
7
+ margin-top: 14px;
9
8
  }
@@ -35,7 +35,7 @@ export default function LayoutDirectionSelect(props) {
35
35
  });
36
36
  });
37
37
  return /*#__PURE__*/React.createElement(TagImageSelect, {
38
- data: layoutOptions,
38
+ dataSource: layoutOptions,
39
39
  boxProps: {
40
40
  spacing: 12
41
41
  },
@@ -1,4 +1,5 @@
1
1
  .layoutSelectItem {
2
2
  width: 120px;
3
3
  height: 136px !important;
4
+ padding-top: 16px;
4
5
  }
@@ -1,25 +1,22 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
3
+ var _excluded = ["dataSource", "size", "boxProps", "tagProps", "itemProps", "ItemComponent"];
2
4
  import React from 'react';
3
5
  import TemplateButton from "../TemplateButton";
4
6
  import TagSelect from "../TagSelect";
5
7
 
6
8
  var TagImageSelect = function TagImageSelect(props) {
7
- var _data$filter$;
8
-
9
- var _props$data = props.data,
10
- data = _props$data === void 0 ? [] : _props$data,
9
+ var dataSource = props.dataSource,
11
10
  size = props.size,
12
11
  boxProps = props.boxProps,
13
12
  tagProps = props.tagProps,
14
13
  itemProps = props.itemProps,
15
- ItemComponent = props.ItemComponent;
16
- var value = (_data$filter$ = data.filter(function (item) {
17
- return item.selected;
18
- })[0]) === null || _data$filter$ === void 0 ? void 0 : _data$filter$.id;
14
+ ItemComponent = props.ItemComponent,
15
+ otherProps = _objectWithoutPropertiesLoose(props, _excluded);
16
+
19
17
  var Item = ItemComponent || TemplateButton;
20
- return /*#__PURE__*/React.createElement(TagSelect, {
21
- defaultValue: value,
22
- dataSource: data.map(function (item) {
18
+ return /*#__PURE__*/React.createElement(TagSelect, _extends({}, otherProps, {
19
+ dataSource: dataSource.map(function (item) {
23
20
  return {
24
21
  key: item.id,
25
22
  content: /*#__PURE__*/React.createElement(Item, _extends({
@@ -31,7 +28,7 @@ var TagImageSelect = function TagImageSelect(props) {
31
28
  }),
32
29
  boxProps: boxProps,
33
30
  tagProps: tagProps
34
- });
31
+ }));
35
32
  };
36
33
 
37
34
  export default TagImageSelect;
@@ -4,13 +4,14 @@ import Icons from "./assets";
4
4
  var Icon = function Icon(props) {
5
5
  var _props$alt = props.alt,
6
6
  alt = _props$alt === void 0 ? '' : _props$alt,
7
+ img = props.img,
7
8
  type = props.type,
8
9
  className = props.className,
9
10
  rotate = props.rotate;
10
11
  var style = rotate ? {
11
12
  transform: "rotate(" + rotate + "deg)"
12
13
  } : null;
13
- var src = Icons[type];
14
+ var src = img || Icons[type];
14
15
  return /*#__PURE__*/React.createElement("img", {
15
16
  className: className,
16
17
  style: style,
@@ -1,12 +1,8 @@
1
- import IconTplBlank from "./topo_tpl_blank.svg";
2
- import IconTplRegion from "./topo_tpl_region.svg"; // import IconTplLayeredRing from './topo_tpl_layered_ring.svg';
3
-
1
+ // import IconTplLayeredRing from './topo_tpl_layered_ring.svg';
4
2
  import IconLayoutCircular from "./topo_layout_circular.svg";
5
3
  import IconLayoutHierarchical from "./topo_layout_hierarchical.svg";
6
4
  import IconLayoutToward from "./topo_layout_toward.svg";
7
5
  export default {
8
- 'tpl_blank': IconTplBlank,
9
- 'tpl_region': IconTplRegion,
10
6
  // 'tpl_layered_ring': IconTplLayeredRing,
11
7
  'layout_circular': IconLayoutCircular,
12
8
  'layout_hierarchical': IconLayoutHierarchical,
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
3
- var _excluded = ["className", "children", "icon", "id", "selected", "onSelect", "iconClassName", "textClassName"];
3
+ var _excluded = ["className", "children", "icon", "img", "iconClassName", "textClassName"];
4
4
  import React from 'react';
5
5
  import classnames from 'classnames';
6
6
  import Icon from "./Icon";
@@ -10,29 +10,22 @@ var TemplateButton = function TemplateButton(props) {
10
10
  var className = props.className,
11
11
  children = props.children,
12
12
  icon = props.icon,
13
- id = props.id,
14
- selected = props.selected,
15
- _props$onSelect = props.onSelect,
16
- onSelect = _props$onSelect === void 0 ? function () {} : _props$onSelect,
13
+ img = props.img,
17
14
  iconClassName = props.iconClassName,
18
15
  textClassName = props.textClassName,
19
16
  rest = _objectWithoutPropertiesLoose(props, _excluded);
20
17
 
21
- var handleClick = function handleClick() {
22
- return onSelect(id);
23
- };
24
-
25
18
  return /*#__PURE__*/React.createElement("div", {
26
- className: classnames(styles.card, className),
27
- onClick: handleClick
19
+ className: classnames(styles.card, className)
28
20
  }, /*#__PURE__*/React.createElement("div", {
29
21
  className: styles.iconWrapper
30
22
  }, /*#__PURE__*/React.createElement(Icon, _extends({
31
23
  className: classnames(styles.icon, iconClassName),
24
+ img: img,
32
25
  type: icon
33
26
  }, rest))), /*#__PURE__*/React.createElement("div", {
34
27
  className: classnames(styles.text, textClassName)
35
- }, children));
28
+ }, /*#__PURE__*/React.createElement("span", null, children)));
36
29
  };
37
30
 
38
31
  export default TemplateButton;
@@ -10,7 +10,6 @@
10
10
 
11
11
  .iconWrapper {
12
12
  display: flex;
13
- flex: 1;
14
13
  justify-content: center;
15
14
  align-items: center;
16
15
  }
@@ -20,9 +19,10 @@
20
19
  }
21
20
 
22
21
  .text {
22
+ height: 20px;
23
+ line-height: 20px;
23
24
  font-size: 18px;
24
- margin-top: 16px;
25
- padding-bottom: 24px;
25
+ margin-top: 14px;
26
26
  color: $color-text1-3;
27
27
  outline: none;
28
28
  }
@@ -30,7 +30,7 @@ var CiTyeCache = /*#__PURE__*/function () {
30
30
  case 5:
31
31
  _context.prev = 5;
32
32
  _context.t0 = _context["catch"](0);
33
- console.error('查询Ci模型异常');
33
+ console.error('查询Ci模型异常', _context.t0);
34
34
 
35
35
  case 8:
36
36
  return _context.abrupt("return", this.cache);
@@ -7,8 +7,8 @@ export function mergeLinksData(links, relationDetails) {
7
7
  return links.map(function (link) {
8
8
  var relation = findItem(relationDetails, 'id', link.id);
9
9
  return _extends({}, link, {
10
- ciType: relation.typeCode,
11
- name: relation.attributes.name,
10
+ ciType: relation === null || relation === void 0 ? void 0 : relation.typeCode,
11
+ name: relation === null || relation === void 0 ? void 0 : relation.attributes.name,
12
12
  detail: relation
13
13
  });
14
14
  });
@@ -6,10 +6,14 @@ import _extends from "@babel/runtime/helpers/extends";
6
6
  import React, { useState, useEffect, useRef, useCallback } from 'react';
7
7
  import styles from "../../../components/titlebar/TitleBar.module.scss";
8
8
  import EditButton from "./widgets/EditButton";
9
+ import useSetDefaultTopo from "./useSetDefaultTopo";
9
10
  export default function ViewerTools(props) {
10
11
  var topo = props.topo,
11
12
  _props$showEditButton = props.showEditButton,
12
13
  showEditButton = _props$showEditButton === void 0 ? true : _props$showEditButton;
14
+ var setDefaultTopo = useSetDefaultTopo({
15
+ topo: topo
16
+ });
13
17
  return /*#__PURE__*/React.createElement("div", null, showEditButton && /*#__PURE__*/React.createElement(EditButton, _extends({
14
18
  topo: topo
15
19
  }, props)), /*#__PURE__*/React.createElement(_Dropdown, {
@@ -19,7 +23,7 @@ export default function ViewerTools(props) {
19
23
  type: "ellipsis-vertical"
20
24
  })),
21
25
  triggerType: "click"
22
- }, /*#__PURE__*/React.createElement(_Menu, null, /*#__PURE__*/React.createElement(_Menu.Item, {
26
+ }, /*#__PURE__*/React.createElement(_Menu, null, setDefaultTopo.renderMenuItem(), /*#__PURE__*/React.createElement(_Menu.Item, {
23
27
  onClick: function onClick() {
24
28
  topo.exportImage();
25
29
  }
@@ -0,0 +1,30 @@
1
+ import _Menu from "@alifd/next/lib/menu";
2
+ import React from 'react';
3
+ import { findNodeById } from "../../../../utils/tree";
4
+ export default function useSetDefaultTopo(props) {
5
+ var _findNodeById;
6
+
7
+ var topo = props.topo;
8
+ var store = topo.store;
9
+ var functionAuthState = store.useModelState('functionAuth');
10
+ var topoModState = store.useModelState('topoMod');
11
+
12
+ var _store$useModel = store.useModel('topoTreeMod'),
13
+ topoTreeState = _store$useModel[0],
14
+ topoTreeDispatchers = _store$useModel[1];
15
+
16
+ var isDefault = (_findNodeById = findNodeById(topoTreeState.treeData, topoModState.topoId)) === null || _findNodeById === void 0 ? void 0 : _findNodeById.showDefault;
17
+ var showButton = !!functionAuthState.permissions.manageNavTree && !isDefault;
18
+
19
+ var setDefault = function setDefault() {
20
+ topoTreeDispatchers.setDefTopoOnTree(topoModState.topoId);
21
+ };
22
+
23
+ return {
24
+ renderMenuItem: function renderMenuItem() {
25
+ return showButton && /*#__PURE__*/React.createElement(_Menu.Item, {
26
+ onClick: setDefault
27
+ }, "\u8BBE\u4E3A\u9ED8\u8BA4\u62D3\u6251");
28
+ }
29
+ };
30
+ }
@@ -54,6 +54,7 @@ var regionTplState = {
54
54
  };
55
55
 
56
56
  var initialState = _extends({
57
+ viewGroup: undefined,
57
58
  topo: [],
58
59
  // 拓扑结构(点线)
59
60
  elements: {
@@ -268,7 +269,7 @@ export default function (topoApp) {
268
269
  var _this = this;
269
270
 
270
271
  return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
271
- var data, groupTopo, resources, groups;
272
+ var data, isViewGroup, parseGroup, viewGroup, resources, groups;
272
273
  return _regeneratorRuntime.wrap(function _callee$(_context) {
273
274
  while (1) {
274
275
  switch (_context.prev = _context.next) {
@@ -287,15 +288,13 @@ export default function (topoApp) {
287
288
  return _context.abrupt("return");
288
289
 
289
290
  case 5:
290
- // 视图
291
- groupTopo = data.findIndex(function (item) {
291
+ isViewGroup = function isViewGroup(item) {
292
292
  var _item$topoGroup;
293
293
 
294
294
  return ((_item$topoGroup = item.topoGroup) === null || _item$topoGroup === void 0 ? void 0 : _item$topoGroup.parentId) === TOPO_PARENT_ID;
295
- });
296
- resources = conditionToRes(groupTopo >= 0 ? data[groupTopo].condition : {}); // 容器
295
+ };
297
296
 
298
- groups = removeFromArray(data, groupTopo).map(function (item) {
297
+ parseGroup = function parseGroup(item) {
299
298
  var _item$topoGroup2 = item.topoGroup,
300
299
  topoGroup = _item$topoGroup2 === void 0 ? {} : _item$topoGroup2,
301
300
  condition = item.condition;
@@ -315,14 +314,23 @@ export default function (topoApp) {
315
314
  expanded: groupStyles.expanded || false,
316
315
  resources: conditionToRes(condition)
317
316
  };
318
- });
317
+ }; // 视图
318
+
319
+
320
+ viewGroup = data.filter(isViewGroup).map(parseGroup)[0];
321
+ resources = viewGroup ? viewGroup.resources : {}; // 容器
322
+
323
+ groups = data.filter(function (item) {
324
+ return !isViewGroup(item);
325
+ }).map(parseGroup);
319
326
 
320
327
  _this.update({
328
+ viewGroup: viewGroup,
321
329
  resources: resources,
322
330
  groups: groups
323
331
  });
324
332
 
325
- case 9:
333
+ case 11:
326
334
  case "end":
327
335
  return _context.stop();
328
336
  }
@@ -437,7 +445,8 @@ export default function (topoApp) {
437
445
  },
438
446
  saveTopo: function saveTopo(data, state) {
439
447
  return _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4() {
440
- var topoId, template, layout, global, resources, groups, serialize, layoutId, conditions, groupInfo;
448
+ var topoId, template, layout, global, resources, groups, serialize, layoutId, _state$topoCreateMod$, groupInfo, viewGroupId, conditions;
449
+
441
450
  return _regeneratorRuntime.wrap(function _callee4$(_context4) {
442
451
  while (1) {
443
452
  switch (_context4.prev = _context4.next) {
@@ -477,21 +486,38 @@ export default function (topoApp) {
477
486
 
478
487
  case 11:
479
488
  if (!(resources || groups)) {
480
- _context4.next = 16;
489
+ _context4.next = 19;
481
490
  break;
482
491
  }
483
492
 
493
+ groupInfo = [];
494
+
495
+ if (isAvailableArray(groups)) {
496
+ groupInfo = groups.map(function (group) {
497
+ return _extends({}, group, {
498
+ layout: getLayoutId(group.layout),
499
+ resources: resToConditions(group.resources, true)
500
+ });
501
+ });
502
+ } // 视图
503
+
504
+
505
+ viewGroupId = (_state$topoCreateMod$ = state.topoCreateMod.viewGroup) === null || _state$topoCreateMod$ === void 0 ? void 0 : _state$topoCreateMod$.id;
484
506
  conditions = resToConditions(resources, true);
485
- groupInfo = isAvailableArray(groups) && groups.map(function (group) {
486
- return _extends({}, group, {
487
- layout: getLayoutId(group.layout),
488
- resources: resToConditions(group.resources, true)
507
+
508
+ if (conditions) {
509
+ groupInfo.push({
510
+ id: viewGroupId,
511
+ parentId: TOPO_PARENT_ID,
512
+ order: 100,
513
+ resources: conditions
489
514
  });
490
- });
491
- _context4.next = 16;
492
- return topoService.bindResourceToTopo(topoId, conditions, groupInfo);
515
+ }
493
516
 
494
- case 16:
517
+ _context4.next = 19;
518
+ return topoService.bindResourceToTopo(topoId, null, groupInfo);
519
+
520
+ case 19:
495
521
  case "end":
496
522
  return _context4.stop();
497
523
  }
@@ -21,6 +21,7 @@ export default function (topoApp) {
21
21
  topoLoadError: false,
22
22
  viewState: 'view',
23
23
  // view, create, 2种模式
24
+ id: undefined,
24
25
  topoId: '',
25
26
  topoName: '',
26
27
  topoData: null,
@@ -35,9 +36,9 @@ export default function (topoApp) {
35
36
  topoAlarmIsOpen: false,
36
37
  // 拓扑通道是否打开
37
38
  alarmData: null,
38
- // 概览抽屉中告警列表相关数据
39
+ // 概览抽屉中告警列表相关数据 TODO 抽取
39
40
  currentCiInfo: null,
40
- // 概览抽屉当前CI元数据
41
+ // 概览抽屉当前CI元数据 TODO 抽取
41
42
  resAndMetrics: {
42
43
  res: [],
43
44
  metrics: [],
package/es/utils/tree.js CHANGED
@@ -93,6 +93,11 @@ export function findNodeById(tree, id) {
93
93
 
94
94
  export function findParentIdsById(tree, id) {
95
95
  var node = findNodeById(tree, id);
96
+
97
+ if (!node) {
98
+ return [];
99
+ }
100
+
96
101
  var parentId = "" + node.parentId;
97
102
 
98
103
  if (parentId === '-1') {
@@ -4,6 +4,5 @@
4
4
 
5
5
  .text {
6
6
  font-size: 12px;
7
- margin-top: 15px;
8
- padding-bottom: 18px;
7
+ margin-top: 14px;
9
8
  }
@@ -50,7 +50,7 @@ function LayoutDirectionSelect(props) {
50
50
  });
51
51
  });
52
52
  return /*#__PURE__*/_react["default"].createElement(_TagImageSelect["default"], {
53
- data: layoutOptions,
53
+ dataSource: layoutOptions,
54
54
  boxProps: {
55
55
  spacing: 12
56
56
  },
@@ -1,4 +1,5 @@
1
1
  .layoutSelectItem {
2
2
  width: 120px;
3
3
  height: 136px !important;
4
+ padding-top: 16px;
4
5
  }
@@ -7,29 +7,27 @@ exports["default"] = void 0;
7
7
 
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
 
10
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
+
10
12
  var _react = _interopRequireDefault(require("react"));
11
13
 
12
14
  var _TemplateButton = _interopRequireDefault(require("../TemplateButton"));
13
15
 
14
16
  var _TagSelect = _interopRequireDefault(require("../TagSelect"));
15
17
 
16
- var TagImageSelect = function TagImageSelect(props) {
17
- var _data$filter$;
18
+ var _excluded = ["dataSource", "size", "boxProps", "tagProps", "itemProps", "ItemComponent"];
18
19
 
19
- var _props$data = props.data,
20
- data = _props$data === void 0 ? [] : _props$data,
20
+ var TagImageSelect = function TagImageSelect(props) {
21
+ var dataSource = props.dataSource,
21
22
  size = props.size,
22
23
  boxProps = props.boxProps,
23
24
  tagProps = props.tagProps,
24
25
  itemProps = props.itemProps,
25
- ItemComponent = props.ItemComponent;
26
- var value = (_data$filter$ = data.filter(function (item) {
27
- return item.selected;
28
- })[0]) === null || _data$filter$ === void 0 ? void 0 : _data$filter$.id;
26
+ ItemComponent = props.ItemComponent,
27
+ otherProps = (0, _objectWithoutPropertiesLoose2["default"])(props, _excluded);
29
28
  var Item = ItemComponent || _TemplateButton["default"];
30
- return /*#__PURE__*/_react["default"].createElement(_TagSelect["default"], {
31
- defaultValue: value,
32
- dataSource: data.map(function (item) {
29
+ return /*#__PURE__*/_react["default"].createElement(_TagSelect["default"], (0, _extends2["default"])({}, otherProps, {
30
+ dataSource: dataSource.map(function (item) {
33
31
  return {
34
32
  key: item.id,
35
33
  content: /*#__PURE__*/_react["default"].createElement(Item, (0, _extends2["default"])({
@@ -41,7 +39,7 @@ var TagImageSelect = function TagImageSelect(props) {
41
39
  }),
42
40
  boxProps: boxProps,
43
41
  tagProps: tagProps
44
- });
42
+ }));
45
43
  };
46
44
 
47
45
  var _default = TagImageSelect;
@@ -12,13 +12,14 @@ var _assets = _interopRequireDefault(require("./assets"));
12
12
  var Icon = function Icon(props) {
13
13
  var _props$alt = props.alt,
14
14
  alt = _props$alt === void 0 ? '' : _props$alt,
15
+ img = props.img,
15
16
  type = props.type,
16
17
  className = props.className,
17
18
  rotate = props.rotate;
18
19
  var style = rotate ? {
19
20
  transform: "rotate(" + rotate + "deg)"
20
21
  } : null;
21
- var src = _assets["default"][type];
22
+ var src = img || _assets["default"][type];
22
23
  return /*#__PURE__*/_react["default"].createElement("img", {
23
24
  className: className,
24
25
  style: style,
@@ -5,10 +5,6 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  exports.__esModule = true;
6
6
  exports["default"] = void 0;
7
7
 
8
- var _topo_tpl_blank = _interopRequireDefault(require("./topo_tpl_blank.svg"));
9
-
10
- var _topo_tpl_region = _interopRequireDefault(require("./topo_tpl_region.svg"));
11
-
12
8
  var _topo_layout_circular = _interopRequireDefault(require("./topo_layout_circular.svg"));
13
9
 
14
10
  var _topo_layout_hierarchical = _interopRequireDefault(require("./topo_layout_hierarchical.svg"));
@@ -17,8 +13,6 @@ var _topo_layout_toward = _interopRequireDefault(require("./topo_layout_toward.s
17
13
 
18
14
  // import IconTplLayeredRing from './topo_tpl_layered_ring.svg';
19
15
  var _default = {
20
- 'tpl_blank': _topo_tpl_blank["default"],
21
- 'tpl_region': _topo_tpl_region["default"],
22
16
  // 'tpl_layered_ring': IconTplLayeredRing,
23
17
  'layout_circular': _topo_layout_circular["default"],
24
18
  'layout_hierarchical': _topo_layout_hierarchical["default"],
@@ -17,35 +17,27 @@ var _Icon = _interopRequireDefault(require("./Icon"));
17
17
 
18
18
  var _indexModule = _interopRequireDefault(require("./index.module.scss"));
19
19
 
20
- var _excluded = ["className", "children", "icon", "id", "selected", "onSelect", "iconClassName", "textClassName"];
20
+ var _excluded = ["className", "children", "icon", "img", "iconClassName", "textClassName"];
21
21
 
22
22
  var TemplateButton = function TemplateButton(props) {
23
23
  var className = props.className,
24
24
  children = props.children,
25
25
  icon = props.icon,
26
- id = props.id,
27
- selected = props.selected,
28
- _props$onSelect = props.onSelect,
29
- onSelect = _props$onSelect === void 0 ? function () {} : _props$onSelect,
26
+ img = props.img,
30
27
  iconClassName = props.iconClassName,
31
28
  textClassName = props.textClassName,
32
29
  rest = (0, _objectWithoutPropertiesLoose2["default"])(props, _excluded);
33
-
34
- var handleClick = function handleClick() {
35
- return onSelect(id);
36
- };
37
-
38
30
  return /*#__PURE__*/_react["default"].createElement("div", {
39
- className: (0, _classnames["default"])(_indexModule["default"].card, className),
40
- onClick: handleClick
31
+ className: (0, _classnames["default"])(_indexModule["default"].card, className)
41
32
  }, /*#__PURE__*/_react["default"].createElement("div", {
42
33
  className: _indexModule["default"].iconWrapper
43
34
  }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], (0, _extends2["default"])({
44
35
  className: (0, _classnames["default"])(_indexModule["default"].icon, iconClassName),
36
+ img: img,
45
37
  type: icon
46
38
  }, rest))), /*#__PURE__*/_react["default"].createElement("div", {
47
39
  className: (0, _classnames["default"])(_indexModule["default"].text, textClassName)
48
- }, children));
40
+ }, /*#__PURE__*/_react["default"].createElement("span", null, children)));
49
41
  };
50
42
 
51
43
  var _default = TemplateButton;
@@ -10,7 +10,6 @@
10
10
 
11
11
  .iconWrapper {
12
12
  display: flex;
13
- flex: 1;
14
13
  justify-content: center;
15
14
  align-items: center;
16
15
  }
@@ -20,9 +19,10 @@
20
19
  }
21
20
 
22
21
  .text {
22
+ height: 20px;
23
+ line-height: 20px;
23
24
  font-size: 18px;
24
- margin-top: 16px;
25
- padding-bottom: 24px;
25
+ margin-top: 14px;
26
26
  color: $color-text1-3;
27
27
  outline: none;
28
28
  }
@@ -40,7 +40,7 @@ var CiTyeCache = /*#__PURE__*/function () {
40
40
  case 5:
41
41
  _context.prev = 5;
42
42
  _context.t0 = _context["catch"](0);
43
- console.error('查询Ci模型异常');
43
+ console.error('查询Ci模型异常', _context.t0);
44
44
 
45
45
  case 8:
46
46
  return _context.abrupt("return", this.cache);
@@ -21,8 +21,8 @@ function mergeLinksData(links, relationDetails) {
21
21
  return links.map(function (link) {
22
22
  var relation = (0, _topoData.findItem)(relationDetails, 'id', link.id);
23
23
  return (0, _extends2["default"])({}, link, {
24
- ciType: relation.typeCode,
25
- name: relation.attributes.name,
24
+ ciType: relation === null || relation === void 0 ? void 0 : relation.typeCode,
25
+ name: relation === null || relation === void 0 ? void 0 : relation.attributes.name,
26
26
  detail: relation
27
27
  });
28
28
  });
@@ -23,10 +23,15 @@ var _TitleBarModule = _interopRequireDefault(require("../../../components/titleb
23
23
 
24
24
  var _EditButton = _interopRequireDefault(require("./widgets/EditButton"));
25
25
 
26
+ var _useSetDefaultTopo = _interopRequireDefault(require("./useSetDefaultTopo"));
27
+
26
28
  function ViewerTools(props) {
27
29
  var topo = props.topo,
28
30
  _props$showEditButton = props.showEditButton,
29
31
  showEditButton = _props$showEditButton === void 0 ? true : _props$showEditButton;
32
+ var setDefaultTopo = (0, _useSetDefaultTopo["default"])({
33
+ topo: topo
34
+ });
30
35
  return /*#__PURE__*/_react["default"].createElement("div", null, showEditButton && /*#__PURE__*/_react["default"].createElement(_EditButton["default"], (0, _extends2["default"])({
31
36
  topo: topo
32
37
  }, props)), /*#__PURE__*/_react["default"].createElement(_dropdown["default"], {
@@ -36,7 +41,7 @@ function ViewerTools(props) {
36
41
  type: "ellipsis-vertical"
37
42
  })),
38
43
  triggerType: "click"
39
- }, /*#__PURE__*/_react["default"].createElement(_menu["default"], null, /*#__PURE__*/_react["default"].createElement(_menu["default"].Item, {
44
+ }, /*#__PURE__*/_react["default"].createElement(_menu["default"], null, setDefaultTopo.renderMenuItem(), /*#__PURE__*/_react["default"].createElement(_menu["default"].Item, {
40
45
  onClick: function onClick() {
41
46
  topo.exportImage();
42
47
  }