@riil-frontend/component-topology 2.11.0 → 2.12.3

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 (75) 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 +22 -22
  5. package/demo/5/345/205/266/344/273/226/347/273/204/344/273/266//346/240/221/345/270/203/345/261/200/346/226/271/345/220/221.md +12 -0
  6. package/es/components/LayoutDirectionSelect/LayoutDirectionSelect.js +2 -2
  7. package/es/components/MultiResourceDrawer/index.js +3 -2
  8. package/es/components/ResourceSelectDrawer/ResourceSelectDrawer.js +1 -0
  9. package/es/components/ResourceSelectDrawer/ResourceSelectList.js +6 -1
  10. package/es/components/SingleResourceDrawer/SelectDrawer.js +54 -0
  11. package/es/components/SingleResourceDrawer/index.js +3 -3
  12. package/es/core/common/icons/defaultIcons.js +9 -2
  13. package/es/core/components/TopoView/topoView.js +18 -11
  14. package/es/core/editor/components/settings/Settings.js +5 -29
  15. package/es/core/editor/components/settings/{group → common}/GroupNodeList/ResourceList.js +0 -0
  16. package/es/core/editor/components/settings/{group → common}/GroupNodeList/ResourceList.module.scss +0 -0
  17. package/es/core/editor/components/settings/{group → common}/GroupNodeList/ResourceSelectButton.js +12 -14
  18. package/es/core/editor/components/settings/{group → common}/GroupNodeList/icon.js +0 -0
  19. package/es/core/editor/components/settings/group/DataTab/GroupNodeList.js +19 -0
  20. package/es/core/editor/components/settings/group/DataTab/RelateData.js +45 -0
  21. package/es/core/editor/components/settings/group/GroupPropertyView.js +44 -0
  22. package/es/core/editor/components/settings/group/GroupPropertyView.module.scss +3 -0
  23. package/es/core/editor/components/settings/group/SettingTab/GroupExpandSetting.js +27 -0
  24. package/es/core/editor/components/settings/group/SettingTab/NodeIconSelect.js +32 -0
  25. package/es/core/editor/components/settings/group/SettingTab/Setting.js +86 -0
  26. package/es/core/editor/components/settings/group/hooks/useGroup.js +9 -0
  27. package/es/core/editor/components/settings/group/hooks/useGroupExpand.js +20 -0
  28. package/es/core/editor/components/settings/layer/LayerSettingsForm.js +2 -2
  29. package/es/core/editor/components/settings/{group/GroupNodeList/GroupNodeList.js → layer/NodeList.js} +3 -3
  30. package/es/core/editor/components/settings/link/LinkPropertyView.js +3 -3
  31. package/es/core/editor/components/settings/node/NodeIconSelect.js +1 -1
  32. package/es/core/editor/components/settings/propertyViews.js +23 -0
  33. package/es/hooks/useRelateTopo.js +1 -0
  34. package/es/hooks/useRelateTopoConfig.js +0 -0
  35. package/es/hooks/useTopoEdit.js +137 -100
  36. package/es/style.js +2 -2
  37. package/es/topoCenter/components/TopoTreeSelect.js +5 -0
  38. package/es/topoCenter/viewer/createTopoViewer.js +0 -1
  39. package/es/utils/htElementUtils.js +16 -7
  40. package/lib/components/LayoutDirectionSelect/LayoutDirectionSelect.js +2 -2
  41. package/lib/components/MultiResourceDrawer/index.js +3 -2
  42. package/lib/components/ResourceSelectDrawer/ResourceSelectDrawer.js +1 -0
  43. package/lib/components/ResourceSelectDrawer/ResourceSelectList.js +6 -1
  44. package/lib/components/SingleResourceDrawer/SelectDrawer.js +68 -0
  45. package/lib/components/SingleResourceDrawer/index.js +3 -3
  46. package/lib/core/common/icons/defaultIcons.js +11 -2
  47. package/lib/core/components/TopoView/topoView.js +18 -11
  48. package/lib/core/editor/components/settings/Settings.js +5 -34
  49. package/lib/core/editor/components/settings/{group → common}/GroupNodeList/ResourceList.js +0 -0
  50. package/lib/core/editor/components/settings/{group → common}/GroupNodeList/ResourceList.module.scss +0 -0
  51. package/lib/core/editor/components/settings/{group → common}/GroupNodeList/ResourceSelectButton.js +13 -14
  52. package/lib/core/editor/components/settings/{group → common}/GroupNodeList/icon.js +0 -0
  53. package/lib/core/editor/components/settings/group/DataTab/GroupNodeList.js +33 -0
  54. package/lib/core/editor/components/settings/group/DataTab/RelateData.js +57 -0
  55. package/lib/core/editor/components/settings/group/GroupPropertyView.js +58 -0
  56. package/lib/core/editor/components/settings/group/GroupPropertyView.module.scss +3 -0
  57. package/lib/core/editor/components/settings/group/SettingTab/GroupExpandSetting.js +37 -0
  58. package/lib/core/editor/components/settings/group/SettingTab/NodeIconSelect.js +45 -0
  59. package/lib/core/editor/components/settings/group/SettingTab/Setting.js +106 -0
  60. package/lib/core/editor/components/settings/group/hooks/useGroup.js +15 -0
  61. package/lib/core/editor/components/settings/group/hooks/useGroupExpand.js +26 -0
  62. package/lib/core/editor/components/settings/layer/LayerSettingsForm.js +3 -3
  63. package/lib/core/editor/components/settings/{group/GroupNodeList/GroupNodeList.js → layer/NodeList.js} +3 -3
  64. package/lib/core/editor/components/settings/link/LinkPropertyView.js +3 -3
  65. package/lib/core/editor/components/settings/node/NodeIconSelect.js +1 -1
  66. package/lib/core/editor/components/settings/propertyViews.js +38 -0
  67. package/lib/hooks/useRelateTopo.js +6 -0
  68. package/lib/hooks/useRelateTopoConfig.js +1 -0
  69. package/lib/hooks/useTopoEdit.js +138 -100
  70. package/lib/style.js +2 -2
  71. package/lib/topoCenter/components/TopoTreeSelect.js +14 -0
  72. package/lib/topoCenter/viewer/createTopoViewer.js +0 -2
  73. package/lib/utils/htElementUtils.js +22 -7
  74. package/package.json +9 -9
  75. package/CHANGELOG.md +0 -26
@@ -39,6 +39,11 @@ export function getGroups(dataModel) {
39
39
  return getGroupData(element);
40
40
  });
41
41
  }
42
+ export function getGroupElementByTag(dataModel, tag) {
43
+ return dataModel.getDataByTag(tag) || dataModel.getDatas().toArray().filter(function (item) {
44
+ return item.a('tag') === tag;
45
+ })[0];
46
+ }
42
47
  export function getGroupData(element) {
43
48
  if (!element) {
44
49
  return null;
@@ -58,13 +63,14 @@ export function getGroupData(element) {
58
63
  export function getNodes(dataModel) {
59
64
  return getElements(dataModel).filter(function (element) {
60
65
  return element.getClassName() === 'ht.Node';
61
- }).map(function (element) {
62
- var parentGroup = getGroupData(element.getParent());
63
- return _extends({}, element.getAttrObject(), {
64
- tag: element.getId(),
65
- image: element.getImage(),
66
- groupTag: parentGroup ? parentGroup.id : undefined
67
- });
66
+ }).map(getNodeData);
67
+ }
68
+ export function getNodeData(element) {
69
+ var parentGroup = getGroupData(element.getParent());
70
+ return _extends({}, element.getAttrObject(), {
71
+ tag: element.getId(),
72
+ image: element.getImage(),
73
+ groupTag: parentGroup ? parentGroup.id : undefined
68
74
  });
69
75
  }
70
76
  export function getEdges(dataModel) {
@@ -84,4 +90,7 @@ export function getGroupNodes(dataModel, groupIdOrTag) {
84
90
  return getNodes(dataModel).filter(function (element) {
85
91
  return element.groupId === groupIdOrTag || element.groupTag === groupIdOrTag;
86
92
  });
93
+ }
94
+ export function getGroupChildrenData(group) {
95
+ return group.getChildren().getArray().map(getNodeData);
87
96
  }
@@ -49,7 +49,7 @@ function LayoutDirectionSelect(props) {
49
49
  onSelect: onSelect
50
50
  });
51
51
  });
52
- return /*#__PURE__*/_react["default"].createElement(_TagImageSelect["default"], {
52
+ return /*#__PURE__*/_react["default"].createElement(_TagImageSelect["default"], (0, _extends2["default"])({
53
53
  dataSource: layoutOptions,
54
54
  boxProps: {
55
55
  spacing: 12
@@ -58,7 +58,7 @@ function LayoutDirectionSelect(props) {
58
58
  className: _LayoutDirectionSelectModule["default"].layoutSelectItem
59
59
  },
60
60
  ItemComponent: _Item["default"]
61
- });
61
+ }, props));
62
62
  }
63
63
 
64
64
  ;
@@ -46,9 +46,10 @@ var MultiResourceDrawer = function MultiResourceDrawer(props) {
46
46
  };
47
47
  }
48
48
 
49
- onSave(result);
49
+ _context.next = 4;
50
+ return onSave(result);
50
51
 
51
- case 3:
52
+ case 4:
52
53
  case "end":
53
54
  return _context.stop();
54
55
  }
@@ -86,6 +86,7 @@ function ResourceSelectDrawer(props) {
86
86
  buttons: ['确定', '取消']
87
87
  }, visible && /*#__PURE__*/_react["default"].createElement(_ResourceSelectList["default"], {
88
88
  ref: resourceSelectRef,
89
+ selectionMode: selectionMode,
89
90
  excludeIds: excludeIds
90
91
  }));
91
92
  }
@@ -22,7 +22,12 @@ function ResourceSelectList(props, ref) {
22
22
  ref: ref,
23
23
  limitTypes: _ResourceTypeLimit.RESOURCE_LIMIT_TYPES,
24
24
  defaultCondition: excludeIds.length ? "!id('" + excludeIds.join("','") + "')" : undefined,
25
- request: (0, _componentTopologyCommon.getRequest)()
25
+ request: (0, _componentTopologyCommon.getRequest)(),
26
+ tableProps: selectionMode ? {
27
+ rowSelection: {
28
+ mode: selectionMode
29
+ }
30
+ } : undefined
26
31
  });
27
32
  }
28
33
 
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+
7
+ exports.__esModule = true;
8
+ exports["default"] = void 0;
9
+
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+
12
+ var _message = _interopRequireDefault(require("@alifd/next/lib/message"));
13
+
14
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
+
16
+ var _react = _interopRequireWildcard(require("react"));
17
+
18
+ var _ResourceSelectDrawer = _interopRequireDefault(require("../ResourceSelectDrawer"));
19
+
20
+ var SingleSelectDrawer = function SingleSelectDrawer(props) {
21
+ var visible = props.visible,
22
+ totalSelection = props.totalSelection,
23
+ onSave = props.onSave,
24
+ onClose = props.onClose;
25
+
26
+ var onDrawerSave = /*#__PURE__*/function () {
27
+ var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(selected) {
28
+ return _regenerator["default"].wrap(function _callee$(_context) {
29
+ while (1) {
30
+ switch (_context.prev = _context.next) {
31
+ case 0:
32
+ if (selected.length) {
33
+ _context.next = 3;
34
+ break;
35
+ }
36
+
37
+ _message["default"].error('请选择一项资源。');
38
+
39
+ return _context.abrupt("return", false);
40
+
41
+ case 3:
42
+ _context.next = 5;
43
+ return onSave(selected[0]);
44
+
45
+ case 5:
46
+ case "end":
47
+ return _context.stop();
48
+ }
49
+ }
50
+ }, _callee);
51
+ }));
52
+
53
+ return function onDrawerSave(_x) {
54
+ return _ref.apply(this, arguments);
55
+ };
56
+ }();
57
+
58
+ return /*#__PURE__*/_react["default"].createElement(_ResourceSelectDrawer["default"], {
59
+ visible: visible,
60
+ excludeIds: totalSelection,
61
+ selectionMode: "single",
62
+ onOk: onDrawerSave,
63
+ onClose: onClose
64
+ });
65
+ };
66
+
67
+ var _default = SingleSelectDrawer;
68
+ exports["default"] = _default;
@@ -21,7 +21,7 @@ var SingleResourceDrawer = function SingleResourceDrawer(props) {
21
21
  var store = props.store,
22
22
  visible = props.visible,
23
23
  loading = props.loading,
24
- selectedKeys = props.selectedKeys,
24
+ selectedKey = props.selectedKey,
25
25
  totalSelection = props.totalSelection,
26
26
  onSave = props.onSave,
27
27
  onClose = props.onClose;
@@ -36,7 +36,7 @@ var SingleResourceDrawer = function SingleResourceDrawer(props) {
36
36
  return;
37
37
  }
38
38
 
39
- var intercept = onSave(data);
39
+ var intercept = onSave(data[0]);
40
40
 
41
41
  if (!intercept) {
42
42
  onClose();
@@ -44,7 +44,7 @@ var SingleResourceDrawer = function SingleResourceDrawer(props) {
44
44
  };
45
45
 
46
46
  var initialData = {
47
- selected: selectedKeys,
47
+ selected: [selectedKey],
48
48
  total: totalSelection
49
49
  };
50
50
  return /*#__PURE__*/_react["default"].createElement(_Drawer["default"], {
@@ -7,6 +7,13 @@ exports["default"] = exports.DEFAULT_NODE_ICONS = void 0;
7
7
 
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
 
10
+ var _ciTypeIcons = require("@riil-frontend/component-topology-graph/es/icons/ciTypeIcons");
11
+
12
+ /**
13
+ * 默认节点图标
14
+ *
15
+ * @type {(*|{url: *})[]}
16
+ */
10
17
  var DEFAULT_NODE_ICONS = [{
11
18
  id: 'ciType/network.switch',
12
19
  name: '交换机',
@@ -69,7 +76,8 @@ exports.DEFAULT_NODE_ICONS = DEFAULT_NODE_ICONS;
69
76
  DEFAULT_NODE_ICONS.forEach(function (icon) {
70
77
  ht.Default.setImage(icon.id, icon.jsonUrl || icon.url);
71
78
  });
72
- var _default = {
79
+
80
+ var _default = (0, _extends2["default"])({}, (0, _ciTypeIcons.getIconMap)(), {
73
81
  'editor.icon.cloud.small': {
74
82
  url: '/ht/image/topo/s/云_64.png',
75
83
  json: '/ht/image/topo/s/云_64.json'
@@ -136,5 +144,6 @@ var _default = {
136
144
  'editor.icon.library.small': '/ht/image/topo/s/库_48.json',
137
145
  'editor.icon.balanc.small': '/ht/image/topo/s/负载均衡_48.json',
138
146
  'editor.icon.calendar.small': '/ht/image/topo/s/日历_48.json'
139
- };
147
+ });
148
+
140
149
  exports["default"] = _default;
@@ -56,7 +56,10 @@ var TopoView = function TopoView(props) {
56
56
  nodeDeleteable = props.nodeDeleteable,
57
57
  onNodeDelete = props.onNodeDelete,
58
58
  onLineDelete = props.onLineDelete,
59
- onLoaded = props.onLoaded;
59
+ onReady = props.onReady,
60
+ onDestroy = props.onDestroy,
61
+ onLoaded = props.onLoaded,
62
+ buildLoadOptions = props.buildLoadOptions;
60
63
  var topoApp = engine || topo;
61
64
  var store = topoApp.store;
62
65
 
@@ -80,7 +83,12 @@ var TopoView = function TopoView(props) {
80
83
  topoData = topoState.topoData,
81
84
  urlParams = topoState.urlParams;
82
85
  var isEditMode = viewState === 'edit';
83
- var topoShowType = topoData === null || topoData === void 0 ? void 0 : (_topoData$config = topoData.config) === null || _topoData$config === void 0 ? void 0 : _topoData$config.showType; // rlog.debug('TopoView---income', topoId, viewState);
86
+ var topoShowType = topoData === null || topoData === void 0 ? void 0 : (_topoData$config = topoData.config) === null || _topoData$config === void 0 ? void 0 : _topoData$config.showType;
87
+
88
+ var _useState = (0, _react.useState)(buildLoadOptions ? buildLoadOptions(topoData) : topoData),
89
+ tData = _useState[0],
90
+ setTData = _useState[1]; // rlog.debug('TopoView---income', topoId, viewState);
91
+
84
92
 
85
93
  var resAndMetrics = bizState.resAndMetrics;
86
94
  var topoEditApi = (0, _useTopoEdit["default"])({
@@ -108,11 +116,6 @@ var TopoView = function TopoView(props) {
108
116
  onDeleteElement = topoEditApi.onDeleteElement,
109
117
  onSaveTopo = topoEditApi.onSaveTopo,
110
118
  onTopoRelatedImage = topoEditApi.onTopoRelatedImage;
111
-
112
- var _useState = (0, _react.useState)(topoData),
113
- tData = _useState[0],
114
- setTData = _useState[1];
115
-
116
119
  var containerLinkTopo = (0, _useContainerLinkTopo["default"])({
117
120
  topoApp: topoApp
118
121
  });
@@ -135,7 +138,7 @@ var TopoView = function TopoView(props) {
135
138
  (0, _react.useEffect)(function () {
136
139
  _rlog["default"].debug('TopoView.useEffect topoData', topoData);
137
140
 
138
- setTData(topoData);
141
+ setTData(buildLoadOptions ? buildLoadOptions(topoData) : topoData);
139
142
 
140
143
  if (topoData) {
141
144
  // TODO 移到模型中
@@ -143,13 +146,17 @@ var TopoView = function TopoView(props) {
143
146
  currentTopo: topoData.config
144
147
  });
145
148
  }
146
- }, [topoData, resAndMetrics]);
149
+ }, [topoData]);
147
150
  var onCreatedTopo = (0, _react.useCallback)(function (topoClient) {
148
151
  topoApp.view.onCreatedView(topoClient);
149
152
 
150
153
  _rlog["default"].info('TopoView.onCreatedTopo');
151
154
 
152
155
  initSelection();
156
+
157
+ if (onReady) {
158
+ onReady();
159
+ }
153
160
  }, []);
154
161
  var handleLoaded = (0, _react.useCallback)(function () {
155
162
  if (topoApp.alarms) {
@@ -255,7 +262,7 @@ var TopoView = function TopoView(props) {
255
262
  enableRelateResource: ((_topoApp$options$edit = topoApp.options.editor) === null || _topoApp$options$edit === void 0 ? void 0 : _topoApp$options$edit.enableRelateResource) !== false,
256
263
  onCreate: onCreatedTopo,
257
264
  onLoaded: handleLoaded,
258
- onDestroy: function onDestroy() {},
265
+ onDestroy: onDestroy,
259
266
  onEvent: onEvent,
260
267
  style: {
261
268
  width: '100%',
@@ -272,7 +279,7 @@ var TopoView = function TopoView(props) {
272
279
  visible: showSingleResDrawer,
273
280
  loading: topoLoading,
274
281
  store: store,
275
- selectedKeys: initialSingleRes,
282
+ selectedKey: initialSingleRes,
276
283
  totalSelection: resSelections,
277
284
  onSave: onSaveSingleRes,
278
285
  onClose: onCloseSigleResDrawer
@@ -11,21 +11,11 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
11
11
 
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
 
14
- var _SettingsForm = _interopRequireDefault(require("./SettingsForm"));
15
-
16
- var _LayerSettingsForm = _interopRequireDefault(require("./layer/LayerSettingsForm"));
17
-
18
14
  var _SettingsModule = _interopRequireDefault(require("./Settings.module.scss"));
19
15
 
20
16
  var _htElementDataUtil = require("../../../../utils/htElementDataUtil");
21
17
 
22
- var _TextPropertyView = _interopRequireDefault(require("./text/TextPropertyView"));
23
-
24
- var _NodePropertyView = _interopRequireDefault(require("./node/NodePropertyView"));
25
-
26
- var _ViewPropertyView = _interopRequireDefault(require("./view/ViewPropertyView"));
27
-
28
- var _LinkPropertyView = _interopRequireDefault(require("./link/LinkPropertyView"));
18
+ var _propertyViews = _interopRequireDefault(require("./propertyViews"));
29
19
 
30
20
  var _useSettingRuntimeState = _interopRequireDefault(require("./useSettingRuntimeState"));
31
21
 
@@ -64,26 +54,7 @@ function Settings(props) {
64
54
  }).join(',');
65
55
  (0, _react.useEffect)(function () {// const selectionModel = topo.getSelectionModel();
66
56
  // console.info('selection change', selection)
67
- }, [selection]);
68
- var propertyPanelMap = {
69
- view: _SettingsForm["default"],
70
- node: _NodePropertyView["default"],
71
- layer: _LayerSettingsForm["default"],
72
- text: _TextPropertyView["default"]
73
- };
74
-
75
- if (localStorage.getItem('topo.debug') === 'true') {
76
- Object.assign(propertyPanelMap, {
77
- line: _LinkPropertyView["default"],
78
- view: _ViewPropertyView["default"]
79
- });
80
- } else {
81
- if (!selectionSize) {
82
- // 未选择元素
83
- return null;
84
- }
85
- } // TODO 待优化
86
-
57
+ }, [selection]); // TODO 待优化
87
58
 
88
59
  var updateElementProperty = function updateElementProperty(name, value) {
89
60
  // const element = topo.getDataModel().getDataById(selection[0].id);
@@ -107,9 +78,9 @@ function Settings(props) {
107
78
  };
108
79
 
109
80
  var elementType = getElementType(selection);
110
- var Component = propertyPanelMap[elementType];
81
+ var PropertyView = _propertyViews["default"][elementType];
111
82
 
112
- if (!Component) {
83
+ if (!PropertyView) {
113
84
  return null;
114
85
  }
115
86
 
@@ -124,7 +95,7 @@ function Settings(props) {
124
95
  className: _SettingsModule["default"].settingsPanel
125
96
  }, /*#__PURE__*/_react["default"].createElement("div", {
126
97
  className: _SettingsModule["default"].settings
127
- }, /*#__PURE__*/_react["default"].createElement(Component, {
98
+ }, /*#__PURE__*/_react["default"].createElement(PropertyView, {
128
99
  type: elementType,
129
100
  topo: topo,
130
101
  topoEditApi: topoEditApi,
@@ -13,19 +13,17 @@ var _react = _interopRequireWildcard(require("react"));
13
13
 
14
14
  var _ResourceSelectDrawer = _interopRequireDefault(require("../../../../../../components/ResourceSelect/ResourceSelectDrawer"));
15
15
 
16
+ var _componentTopologyGraph = require("@riil-frontend/component-topology-graph");
17
+
16
18
  function ResourceSelectButton(props) {
17
19
  var topo = props.topo,
18
- layer = props.layer,
19
- resourceSelectComponent = props.resourceSelectComponent,
20
- onAdd = props.onAdd;
20
+ group = props.group,
21
+ topoEditApi = props.topoEditApi;
21
22
 
22
23
  var _useState = (0, _react.useState)(false),
23
24
  isSelectResource = _useState[0],
24
25
  setIsSelectResource = _useState[1];
25
26
 
26
- var ResourceSelectComponent = resourceSelectComponent || _ResourceSelectDrawer["default"]; // const ResourceSelectComponent = ResourceSelectDrawer;
27
- // TODO
28
-
29
27
  return /*#__PURE__*/_react["default"].createElement("div", {
30
28
  onClick: function onClick(e) {
31
29
  return e.stopPropagation();
@@ -35,15 +33,16 @@ function ResourceSelectButton(props) {
35
33
  type: "primary",
36
34
  onClick: function onClick(e) {
37
35
  e.stopPropagation();
38
- setIsSelectResource(true);
36
+ topoEditApi.onBindData({
37
+ type: _componentTopologyGraph.TopoEvent.DATA_TYPE_RESOURCE_COMBO,
38
+ data: {
39
+ dtype: 'container',
40
+ id: group.tag,
41
+ tag: group.attr.tag
42
+ }
43
+ });
39
44
  }
40
- }, "\u9009\u62E9"), /*#__PURE__*/_react["default"].createElement(ResourceSelectComponent, {
41
- layer: layer,
42
- visible: isSelectResource,
43
- setVisible: setIsSelectResource,
44
- topo: topo,
45
- existedIds: []
46
- }));
45
+ }, "\u6DFB\u52A0\u8D44\u6E90"));
47
46
  }
48
47
 
49
48
  ;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
+
7
+ exports.__esModule = true;
8
+ exports["default"] = GroupNodeList;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _ResourceList = _interopRequireDefault(require("../../common/GroupNodeList/ResourceList"));
13
+
14
+ var _htElementUtils = require("../../../../../../utils/htElementUtils");
15
+
16
+ var _icon = require("../../common/GroupNodeList/icon");
17
+
18
+ function GroupNodeList(props) {
19
+ var topo = props.topo,
20
+ group = props.group;
21
+ var nodes = (0, _htElementUtils.getGroupChildrenData)(topo.getDataModel().getDataById(group.id));
22
+ var data = nodes.map(function (node) {
23
+ return {
24
+ title: node.name,
25
+ img: (0, _icon.getIconById)(node.image, topo)
26
+ };
27
+ });
28
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_ResourceList["default"], {
29
+ data: data
30
+ }));
31
+ }
32
+
33
+ ;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports["default"] = GroupRelateData;
7
+
8
+ var _collapse = _interopRequireDefault(require("@alifd/next/lib/collapse"));
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _ResourceSelectButton = _interopRequireDefault(require("../../common/GroupNodeList/ResourceSelectButton"));
13
+
14
+ var _GroupNodeList = _interopRequireDefault(require("./GroupNodeList"));
15
+
16
+ var CollapsePanel = _collapse["default"].Panel;
17
+
18
+ function GroupRelateData(props) {
19
+ var topo = props.topo,
20
+ topoEditApi = props.topoEditApi,
21
+ values = props.values,
22
+ editorProps = props.editorProps;
23
+
24
+ var createResourcePanel = function createResourcePanel() {
25
+ return /*#__PURE__*/_react["default"].createElement(CollapsePanel, {
26
+ key: "\u5173\u8054\u8D44\u6E90",
27
+ title: /*#__PURE__*/_react["default"].createElement("div", {
28
+ style: {
29
+ display: 'flex',
30
+ paddingRight: 12
31
+ }
32
+ }, /*#__PURE__*/_react["default"].createElement("div", {
33
+ style: {
34
+ flex: 1
35
+ }
36
+ }, "\u5173\u8054\u8D44\u6E90"), /*#__PURE__*/_react["default"].createElement(_ResourceSelectButton["default"], {
37
+ topo: topo,
38
+ topoEditApi: topoEditApi,
39
+ group: values,
40
+ onAdd: function onAdd() {
41
+ /*TODO 刷新列表 refreshList*/
42
+ },
43
+ resourceSelectComponent: editorProps === null || editorProps === void 0 ? void 0 : editorProps.groupResourceSelectComponent
44
+ }))
45
+ }, /*#__PURE__*/_react["default"].createElement(_GroupNodeList["default"], {
46
+ topo: topo,
47
+ group: values
48
+ }));
49
+ };
50
+
51
+ return /*#__PURE__*/_react["default"].createElement(_collapse["default"], {
52
+ defaultExpandedKeys: ['关联资源'],
53
+ style: {
54
+ border: 'none'
55
+ }
56
+ }, createResourcePanel());
57
+ }
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports["default"] = GroupPropertyView;
7
+
8
+ var _tab = _interopRequireDefault(require("@alifd/next/lib/tab"));
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var _TabView = _interopRequireDefault(require("../common/tab/TabView"));
13
+
14
+ var _GroupPropertyViewModule = _interopRequireDefault(require("./GroupPropertyView.module.scss"));
15
+
16
+ var _useGroup = _interopRequireDefault(require("./hooks/useGroup"));
17
+
18
+ var _Setting = _interopRequireDefault(require("./SettingTab/Setting"));
19
+
20
+ var _RelateData = _interopRequireDefault(require("./DataTab/RelateData"));
21
+
22
+ function GroupPropertyView(props) {
23
+ var topo = props.topo,
24
+ topoEditApi = props.topoEditApi,
25
+ values = props.values,
26
+ onChange = props.onChange,
27
+ settingRuntimeState = props.settingRuntimeState,
28
+ editorProps = props.editorProps;
29
+ var group = (0, _useGroup["default"])({
30
+ topo: topo,
31
+ id: values.id
32
+ });
33
+ return /*#__PURE__*/_react["default"].createElement("div", {
34
+ className: _GroupPropertyViewModule["default"].GroupPropertyView
35
+ }, /*#__PURE__*/_react["default"].createElement(_TabView["default"], null, /*#__PURE__*/_react["default"].createElement(_tab["default"].Item, {
36
+ title: "\u6570\u636E",
37
+ key: "1"
38
+ }, /*#__PURE__*/_react["default"].createElement(_RelateData["default"], {
39
+ group: group,
40
+ topo: topo,
41
+ topoEditApi: topoEditApi,
42
+ values: values,
43
+ onChange: onChange,
44
+ settingRuntimeState: settingRuntimeState,
45
+ editorProps: editorProps
46
+ })), /*#__PURE__*/_react["default"].createElement(_tab["default"].Item, {
47
+ title: "\u8BBE\u7F6E",
48
+ key: "2"
49
+ }, /*#__PURE__*/_react["default"].createElement(_Setting["default"], {
50
+ group: group,
51
+ topo: topo,
52
+ topoEditApi: topoEditApi,
53
+ values: values,
54
+ onChange: onChange,
55
+ settingRuntimeState: settingRuntimeState,
56
+ editorProps: editorProps
57
+ }))));
58
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports["default"] = GroupExpandSetting;
7
+
8
+ var _radio = _interopRequireDefault(require("@alifd/next/lib/radio"));
9
+
10
+ var _react = _interopRequireDefault(require("react"));
11
+
12
+ var list = [{
13
+ value: true,
14
+ label: '展开'
15
+ }, {
16
+ value: false,
17
+ label: '收起'
18
+ }];
19
+ /**
20
+ * 区域展开折叠
21
+ *
22
+ * @param props
23
+ * @return {*}
24
+ * @constructor
25
+ */
26
+
27
+ function GroupExpandSetting(props) {
28
+ var expanded = props.expanded,
29
+ setExpanded = props.setExpanded;
30
+ return /*#__PURE__*/_react["default"].createElement(_radio["default"].Group, {
31
+ dataSource: list,
32
+ value: expanded,
33
+ onChange: setExpanded
34
+ });
35
+ }
36
+
37
+ ;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
6
+
7
+ exports.__esModule = true;
8
+ exports["default"] = void 0;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _icon = require("../../common/GroupNodeList/icon");
13
+
14
+ var _componentTopoIconSelect = _interopRequireDefault(require("@riil-frontend/component-topo-icon-select"));
15
+
16
+ function NodeIconSelect(props, ref) {
17
+ var value = props.value,
18
+ onChange = props.onChange,
19
+ topo = props.topo;
20
+ var iconGroups = (0, _icon.getIconGroups)(topo, 'node');
21
+ var newId = value;
22
+ var a = iconGroups[0].icons.filter(function (item) {
23
+ return newId.indexOf(item.oldId) !== -1;
24
+ });
25
+
26
+ if (a.length) {
27
+ newId = a[0].id;
28
+ }
29
+
30
+ (0, _react.useImperativeHandle)(ref, function () {
31
+ return {};
32
+ });
33
+ return /*#__PURE__*/_react["default"].createElement(_componentTopoIconSelect["default"], {
34
+ value: newId,
35
+ iconList: iconGroups,
36
+ onChange: onChange,
37
+ style: {
38
+ width: '100%'
39
+ }
40
+ });
41
+ }
42
+
43
+ var _default = /*#__PURE__*/(0, _react.forwardRef)(NodeIconSelect);
44
+
45
+ exports["default"] = _default;