@riil-frontend/component-topology 2.12.3 → 2.12.5-alpha.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 (46) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/build/1.js +2 -2
  3. package/build/2.js +1 -1
  4. package/build/index.css +1 -1
  5. package/build/index.js +23 -23
  6. package/es/components/Link/index.js +1 -1
  7. package/es/components/Link/index.module.scss +2 -2
  8. package/es/components/ResourceSelectDrawer/ResourceSelectList.js +4 -1
  9. package/es/components/SingleResourceDrawer/SingleResourceDrawer.js +52 -0
  10. package/es/components/SingleResourceDrawer/index.js +2 -52
  11. package/es/core/components/TopoView/topoView.js +2 -1
  12. package/es/core/editor/components/LinkDynamicStyleSettingDrawer/rule/ColorPicker.module.scss +1 -1
  13. package/es/core/editor/components/ResourceViewAttributeSetting/ResourceViewAttributeSettingPlugin.js +1 -1
  14. package/es/core/editor/components/ResourceViewAttributeSetting/Setting.js +1 -1
  15. package/es/core/editor/components/settings/common/GroupNodeList/ResourceList.js +1 -1
  16. package/es/core/editor/components/settings/common/text/FontStyleCheckbox.module.scss +1 -1
  17. package/es/core/editor/components/settings/node/BindResourceDrawer.js +54 -0
  18. package/es/core/editor/components/settings/node/NodeRelateResourceButton.js +4 -3
  19. package/es/core/models/TopoApp.js +28 -16
  20. package/es/hooks/useContainerLinkTopo.js +1 -1
  21. package/es/hooks/usePolling.js +1 -1
  22. package/es/hooks/useTopoEdit.js +1 -1
  23. package/es/style.js +0 -30
  24. package/es/topoCenter/models/TopoCenter.js +40 -12
  25. package/es/utils/htElementUtils.js +21 -1
  26. package/lib/components/Link/index.js +6 -6
  27. package/lib/components/Link/index.module.scss +2 -2
  28. package/lib/components/ResourceSelectDrawer/ResourceSelectList.js +4 -1
  29. package/lib/components/SingleResourceDrawer/SingleResourceDrawer.js +66 -0
  30. package/lib/components/SingleResourceDrawer/index.js +2 -57
  31. package/lib/core/components/TopoView/topoView.js +14 -12
  32. package/lib/core/editor/components/LinkDynamicStyleSettingDrawer/rule/ColorPicker.module.scss +1 -1
  33. package/lib/core/editor/components/ResourceViewAttributeSetting/ResourceViewAttributeSettingPlugin.js +3 -3
  34. package/lib/core/editor/components/ResourceViewAttributeSetting/Setting.js +2 -2
  35. package/lib/core/editor/components/settings/common/GroupNodeList/ResourceList.js +1 -3
  36. package/lib/core/editor/components/settings/common/text/FontStyleCheckbox.module.scss +1 -1
  37. package/lib/core/editor/components/settings/node/BindResourceDrawer.js +68 -0
  38. package/lib/core/editor/components/settings/node/NodeRelateResourceButton.js +6 -2
  39. package/lib/core/models/TopoApp.js +29 -17
  40. package/lib/hooks/useContainerLinkTopo.js +2 -2
  41. package/lib/hooks/usePolling.js +3 -3
  42. package/lib/hooks/useTopoEdit.js +10 -10
  43. package/lib/style.js +3 -4
  44. package/lib/topoCenter/models/TopoCenter.js +40 -12
  45. package/lib/utils/htElementUtils.js +23 -1
  46. package/package.json +4 -4
@@ -5,7 +5,7 @@ import _regeneratorRuntime from "@babel/runtime/regenerator";
5
5
  import React, { forwardRef, useCallback, useEffect, useImperativeHandle, useState } from 'react';
6
6
  import { useBoolean } from 'ahooks';
7
7
  import rlog from '@riil-frontend/component-topology-utils/es/rlog';
8
- import { TopoEvent } from '@riil-frontend/component-topology-graph';
8
+ import TopoEvent from '@riil-frontend/component-topology-graph/es/event';
9
9
  import styles from "./index.module.scss";
10
10
  import LinkSetting from "./setting";
11
11
  /**
@@ -1,5 +1,5 @@
1
- @import '@riil-frontend/css/lib/index.scss';
2
- @import "@alifd/next/variables";
1
+ //@import '@riil-frontend/css/lib/index.scss';
2
+ @import "~@alifd/next/variables";
3
3
 
4
4
  .layout {
5
5
  height: 100%;
@@ -15,7 +15,10 @@ function ResourceSelectList(props, ref) {
15
15
  rowSelection: {
16
16
  mode: selectionMode
17
17
  }
18
- } : undefined
18
+ } : undefined,
19
+ onCheckedChange: function onCheckedChange(val) {
20
+ return console.error(val);
21
+ }
19
22
  });
20
23
  }
21
24
 
@@ -0,0 +1,52 @@
1
+ import _Message from "@alifd/next/lib/message";
2
+ import React, { useRef } from 'react';
3
+ import { isAvailableArray } from '@riil-frontend/utils';
4
+ import Drawer from "../Drawer";
5
+ import ResourceList from "../ResourceList";
6
+
7
+ var SingleResourceDrawer = function SingleResourceDrawer(props) {
8
+ var store = props.store,
9
+ visible = props.visible,
10
+ loading = props.loading,
11
+ selectedKey = props.selectedKey,
12
+ totalSelection = props.totalSelection,
13
+ onSave = props.onSave,
14
+ onClose = props.onClose;
15
+ var ref = useRef();
16
+
17
+ var onDrawerSave = function onDrawerSave() {
18
+ var data = ref.current.getSelectedData();
19
+
20
+ if (!isAvailableArray(data)) {
21
+ _Message.error('请选择一项资源。');
22
+
23
+ return;
24
+ }
25
+
26
+ var intercept = onSave(data[0]);
27
+
28
+ if (!intercept) {
29
+ onClose();
30
+ }
31
+ };
32
+
33
+ var initialData = {
34
+ selected: [selectedKey],
35
+ total: totalSelection
36
+ };
37
+ return /*#__PURE__*/React.createElement(Drawer, {
38
+ title: "\u9009\u62E9\u8D44\u6E90",
39
+ visible: visible,
40
+ loading: loading,
41
+ onSave: onDrawerSave,
42
+ onClose: onClose,
43
+ buttons: ['确定', '取消']
44
+ }, /*#__PURE__*/React.createElement(ResourceList, {
45
+ ref: ref,
46
+ store: store,
47
+ initialData: initialData,
48
+ selectionMode: "single"
49
+ }));
50
+ };
51
+
52
+ export default SingleResourceDrawer;
@@ -1,52 +1,2 @@
1
- import _Message from "@alifd/next/lib/message";
2
- import React, { useRef } from 'react';
3
- import { isAvailableArray } from '@riil-frontend/utils';
4
- import Drawer from "../Drawer";
5
- import ResourceList from "../ResourceList";
6
-
7
- var SingleResourceDrawer = function SingleResourceDrawer(props) {
8
- var store = props.store,
9
- visible = props.visible,
10
- loading = props.loading,
11
- selectedKey = props.selectedKey,
12
- totalSelection = props.totalSelection,
13
- onSave = props.onSave,
14
- onClose = props.onClose;
15
- var ref = useRef();
16
-
17
- var onDrawerSave = function onDrawerSave() {
18
- var data = ref.current.getSelectedData();
19
-
20
- if (!isAvailableArray(data)) {
21
- _Message.error('请选择一项资源。');
22
-
23
- return;
24
- }
25
-
26
- var intercept = onSave(data[0]);
27
-
28
- if (!intercept) {
29
- onClose();
30
- }
31
- };
32
-
33
- var initialData = {
34
- selected: [selectedKey],
35
- total: totalSelection
36
- };
37
- return /*#__PURE__*/React.createElement(Drawer, {
38
- title: "\u9009\u62E9\u8D44\u6E90",
39
- visible: visible,
40
- loading: loading,
41
- onSave: onDrawerSave,
42
- onClose: onClose,
43
- buttons: ['确定', '取消']
44
- }, /*#__PURE__*/React.createElement(ResourceList, {
45
- ref: ref,
46
- store: store,
47
- initialData: initialData,
48
- selectionMode: "single"
49
- }));
50
- };
51
-
52
- export default SingleResourceDrawer;
1
+ import Drawer from "./SelectDrawer";
2
+ export default Drawer;
@@ -1,7 +1,8 @@
1
1
  import React, { useState, useEffect, useRef, useCallback } from 'react';
2
2
  import PropTypes from 'prop-types';
3
3
  import classnames from 'classnames';
4
- import TopoContainer, { TopoEvent } from '@riil-frontend/component-topology-graph';
4
+ import TopoContainer from '@riil-frontend/component-topology-graph/es/components/TopoGraph';
5
+ import TopoEvent from '@riil-frontend/component-topology-graph/es/event';
5
6
  import rlog from '@riil-frontend/component-topology-utils/es/rlog';
6
7
  import useTopoEdit from "../../../hooks/useTopoEdit";
7
8
  import usePolling from "../../../hooks/usePolling";
@@ -1,4 +1,4 @@
1
- @import "@alifd/theme-19926/variables";
1
+ @import "~@alifd/theme-19926/variables.scss";
2
2
 
3
3
  .swatch {
4
4
  background: #fff;
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import React, { useState, useEffect, useRef, useCallback } from 'react';
3
- import { TopoEvent } from '@riil-frontend/component-topology-graph';
3
+ import TopoEvent from '@riil-frontend/component-topology-graph/es/event';
4
4
  import Setting from "./Setting";
5
5
  import '@riil-frontend/css/lib/index.scss';
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import React, { useState, useEffect, useRef, useCallback, useImperativeHandle, forwardRef } from 'react';
3
- import { TopoEvent } from '@riil-frontend/component-topology-graph';
3
+ import TopoEvent from '@riil-frontend/component-topology-graph/es/event';
4
4
  import rlog from '@riil-frontend/component-topology-utils/es/rlog';
5
5
  import BatchAttrMetricDrawer from "../../../../components/BatchAttrMetric";
6
6
  import { updateAllCiDoc, updateCiDoc } from "../../../../utils/topoData";
@@ -1,5 +1,5 @@
1
1
  import _List from "@alifd/next/lib/list";
2
- import React, { useState, useEffect, useRef, useCallback } from 'react';
2
+ import React from 'react';
3
3
  import styles from "./ResourceList.module.scss";
4
4
 
5
5
  function ResourceList(props) {
@@ -1,4 +1,4 @@
1
- @import "@alifd/theme-19926/variables";
1
+ @import "~@alifd/theme-19926/variables.scss";
2
2
 
3
3
  .buttonGroup {
4
4
  display: flex;
@@ -0,0 +1,54 @@
1
+ import _Message from "@alifd/next/lib/message";
2
+ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
3
+ import _regeneratorRuntime from "@babel/runtime/regenerator";
4
+ import React, { useRef } from 'react';
5
+ import ResourceSelectDrawer from "../../../../../components/ResourceSelectDrawer";
6
+
7
+ var BindResourceDrawer = function BindResourceDrawer(props) {
8
+ var topoEditApi = props.topoEditApi,
9
+ node = props.node,
10
+ onSave = props.onSave,
11
+ onClose = props.onClose;
12
+
13
+ var onDrawerSave = /*#__PURE__*/function () {
14
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(selected) {
15
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
16
+ while (1) {
17
+ switch (_context.prev = _context.next) {
18
+ case 0:
19
+ if (selected.length) {
20
+ _context.next = 3;
21
+ break;
22
+ }
23
+
24
+ _Message.error('请选择一项资源。');
25
+
26
+ return _context.abrupt("return", false);
27
+
28
+ case 3:
29
+ _context.next = 5;
30
+ return onSave(selected[0]);
31
+
32
+ case 5:
33
+ case "end":
34
+ return _context.stop();
35
+ }
36
+ }
37
+ }, _callee);
38
+ }));
39
+
40
+ return function onDrawerSave(_x) {
41
+ return _ref.apply(this, arguments);
42
+ };
43
+ }();
44
+
45
+ return /*#__PURE__*/React.createElement(ResourceSelectDrawer, {
46
+ visible: topoEditApi.showSingleResDrawer,
47
+ excludeIds: [node.tag],
48
+ selectionMode: "single",
49
+ onOk: onDrawerSave,
50
+ onClose: onClose
51
+ });
52
+ };
53
+
54
+ export default BindResourceDrawer;
@@ -1,9 +1,10 @@
1
1
  import _Button from "@alifd/next/lib/button";
2
- import React from 'react';
3
-
2
+ import React, { useState } from 'react';
3
+ import BindResourceDrawer from "./BindResourceDrawer";
4
4
  /**
5
5
  * @return {React.ReactNode | null}
6
6
  */
7
+
7
8
  export default function NodeRelateResourceButton(props) {
8
9
  var _node$attr$data;
9
10
 
@@ -17,6 +18,6 @@ export default function NodeRelateResourceButton(props) {
17
18
  onClick: function onClick() {
18
19
  topoEditApi.bindNodeResource({});
19
20
  }
20
- }, "\u9009\u62E9\u8D44\u6E90") : null;
21
+ }, "\u9009\u62E9\u8D44\u6E90", /*#__PURE__*/React.createElement(BindResourceDrawer, props)) : null;
21
22
  }
22
23
  ;
@@ -2,7 +2,7 @@ import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
2
  import _extends from "@babel/runtime/helpers/extends";
3
3
  import _regeneratorRuntime from "@babel/runtime/regenerator";
4
4
  import topoService from '@riil-frontend/component-topology-common/es/services/topo';
5
- import { setRequest } from '@riil-frontend/component-topology-common';
5
+ import { setRequest } from '@riil-frontend/component-topology-common/es/index';
6
6
  import rlog from '@riil-frontend/component-topology-utils/es/rlog';
7
7
  import CiTyeCache from "./cache/CiTyeCache";
8
8
  import Alarm from "./common/Alarm";
@@ -478,42 +478,54 @@ var TopoApp = /*#__PURE__*/function () {
478
478
  /*#__PURE__*/
479
479
  function () {
480
480
  var _enterEditMode = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee11() {
481
- var topoDispatchers, editDispatchers, ciSetDoc, linkDynamicStyleDispatcher, iconManageDispatchers, topoTreeData;
481
+ var topoDispatchers, editDispatchers, iconManageDispatchers, ciSetDoc, linkDynamicStyleDispatcher;
482
482
  return _regeneratorRuntime.wrap(function _callee11$(_context11) {
483
483
  while (1) {
484
484
  switch (_context11.prev = _context11.next) {
485
485
  case 0:
486
- _context11.next = 2;
487
- return this.view.switchToEditMode();
488
-
489
- case 2:
490
486
  topoDispatchers = this.store.getModelDispatchers('topoMod');
491
487
  topoDispatchers.update({
492
488
  viewState: 'edit'
493
489
  });
490
+
491
+ if (!this.options.beforeSwitchToEditMode) {
492
+ _context11.next = 5;
493
+ break;
494
+ }
495
+
496
+ _context11.next = 5;
497
+ return this.options.beforeSwitchToEditMode();
498
+
499
+ case 5:
500
+ _context11.next = 7;
501
+ return this.view.switchToEditMode();
502
+
503
+ case 7:
494
504
  editDispatchers = this.store.getModelDispatchers('topoCreateMod');
495
505
  editDispatchers.switchToEditMode();
496
506
 
497
507
  if (this.options.onSwitchToEditMode) {
498
508
  this.options.onSwitchToEditMode();
499
- } // 每个节点的属性指标显示配置 TODO 每个节点都传了属性指标列表,待优化
509
+ } // 加载自定义图标
500
510
 
501
511
 
512
+ iconManageDispatchers = this.store.getModelDispatchers('iconManage');
513
+ iconManageDispatchers.loadIcons(); // 每个节点的属性指标显示配置 TODO 每个节点都传了属性指标列表,待优化
514
+
502
515
  ciSetDoc = this.store.getModelState('topoBizMod').ciSetDoc;
503
516
  this.view.topoClient.saveMarkSetting({
504
517
  tagAndTipSet: ciSetDoc
505
518
  }); // 刷新链路动态样式
506
519
 
507
520
  linkDynamicStyleDispatcher = this.store.getModelDispatchers('linkDynamicStyle');
508
- linkDynamicStyleDispatcher.execute(); // 加载自定义图标
509
-
510
- iconManageDispatchers = this.store.getModelDispatchers('iconManage');
511
- iconManageDispatchers.loadIcons(); // 加载关联拓扑图数据 FIXME 关联拓扑图时动态获取
512
-
513
- topoTreeData = formatTreeDataSelect(this.store.getModelState('topoTreeMod').treeData, this.id);
514
- this.view.topoClient.setTopoTreeData(topoTreeData);
515
-
516
- case 15:
521
+ linkDynamicStyleDispatcher.execute(); // 加载关联拓扑图数据 FIXME 关联拓扑图时动态获取
522
+ // const topoTreeData = formatTreeDataSelect(
523
+ // this.store.getModelState('topoTreeMod').treeData,
524
+ // this.id
525
+ // );
526
+ // this.view.topoClient.setTopoTreeData(topoTreeData);
527
+
528
+ case 16:
517
529
  case "end":
518
530
  return _context11.stop();
519
531
  }
@@ -1,4 +1,4 @@
1
- import { TopoEvent } from '@riil-frontend/component-topology-graph';
1
+ import TopoEvent from '@riil-frontend/component-topology-graph/es/event';
2
2
  import rlog from '@riil-frontend/component-topology-utils/es/rlog';
3
3
  import { loopTreeFun } from "../utils/tree";
4
4
  /**
@@ -4,7 +4,7 @@ import { useState, useEffect, useMemo } from 'react';
4
4
  import { useRequest } from 'ahooks';
5
5
  import _ from 'lodash';
6
6
  import rlog from '@riil-frontend/component-topology-utils/es/rlog';
7
- import { TopoEvent } from '@riil-frontend/component-topology-graph';
7
+ import TopoEvent from '@riil-frontend/component-topology-graph/es/event';
8
8
  import { metricValueFormat } from '@riil-frontend/utils';
9
9
  import { findItem } from "../utils/topoData";
10
10
  import DictCache from "../core/models/cache/DictCache";
@@ -8,7 +8,7 @@ import { useUpdateEffect, useDynamicList } from 'ahooks';
8
8
  import { isAvailableArray, isNull } from '@riil-frontend/utils';
9
9
  import rlog from '@riil-frontend/component-topology-utils/es/rlog';
10
10
  import * as cmdbService from '@riil-frontend/component-topology-common/es/services/cmdb';
11
- import { TopoEvent } from '@riil-frontend/component-topology-graph';
11
+ import TopoEvent from '@riil-frontend/component-topology-graph/es/event';
12
12
  import { filterNode, filterGroupById, filterGroupByTag, formatTreeDataSelect } from "../utils/format";
13
13
  import { DEFAULT_GROUP } from "../utils/template";
14
14
  import topoPermissonUtil from "../utils/topoPermissionUtil";
package/es/style.js CHANGED
@@ -1,30 +0,0 @@
1
-
2
- import '@alifd/next/lib/message/style';
3
- import '@alifd/next/lib/dialog/style';
4
- import '@alifd/next/lib/drawer/style';
5
- import '@alifd/next/lib/button/style';
6
- import '@alifd/next/lib/table/style';
7
- import '@alifd/next/lib/search/style';
8
-
9
- import '@alifd/next/lib/loading/style';
10
- import '@alifd/next/lib/upload/style';
11
- import '@alifd/next/lib/icon/style';
12
- import '@alifd/next/lib/input/style';
13
- import '@alifd/next/lib/field/style';
14
- import '@alifd/next/lib/form/style';
15
- import '@alifd/next/lib/number-picker/style';
16
- import '@alifd/next/lib/select/style';
17
- import '@alifd/next/lib/balloon/style';
18
- import '@alifd/next/lib/grid/style';
19
- import '@alifd/next/lib/box/style';
20
- import '@alifd/next/lib/dropdown/style';
21
- import '@alifd/next/lib/menu/style';
22
- import '@alifd/next/lib/tab/style';
23
- import '@alifd/next/lib/collapse/style';
24
- import '@alifd/next/lib/tree-select/style';
25
-
26
- import '@alifd/next/lib/radio/style';
27
- import '@alifd/next/lib/list/style';
28
- import '@alifd/next/lib/tag/style';
29
-
30
- import './index.scss';
@@ -17,6 +17,34 @@ var TopoCenter = /*#__PURE__*/function (_TopoApp) {
17
17
  loadData: getTopoData
18
18
  }, options, {
19
19
  usePermission: true,
20
+ beforeSwitchToEditMode: function () {
21
+ var _beforeSwitchToEditMode = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
22
+ var topoDispatchers;
23
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
24
+ while (1) {
25
+ switch (_context.prev = _context.next) {
26
+ case 0:
27
+ topoDispatchers = _this.store.getModelDispatchers('topoMod');
28
+ topoDispatchers.update({
29
+ topoData: null
30
+ });
31
+ _context.next = 4;
32
+ return topoDispatchers.refreshTopo();
33
+
34
+ case 4:
35
+ case "end":
36
+ return _context.stop();
37
+ }
38
+ }
39
+ }, _callee);
40
+ }));
41
+
42
+ function beforeSwitchToEditMode() {
43
+ return _beforeSwitchToEditMode.apply(this, arguments);
44
+ }
45
+
46
+ return beforeSwitchToEditMode;
47
+ }(),
20
48
  onSwitchToEditMode: function onSwitchToEditMode() {
21
49
  var editDispatchers = _this.store.getModelDispatchers('topoCreateMod');
22
50
 
@@ -49,22 +77,22 @@ var TopoCenter = /*#__PURE__*/function (_TopoApp) {
49
77
  _proto.initData =
50
78
  /*#__PURE__*/
51
79
  function () {
52
- var _initData = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(params) {
80
+ var _initData = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(params) {
53
81
  var topoDispatchers;
54
- return _regeneratorRuntime.wrap(function _callee$(_context) {
82
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
55
83
  while (1) {
56
- switch (_context.prev = _context.next) {
84
+ switch (_context2.prev = _context2.next) {
57
85
  case 0:
58
86
  topoDispatchers = this.store.getModelDispatchers('topoCenter');
59
- _context.next = 3;
87
+ _context2.next = 3;
60
88
  return topoDispatchers.initData(params);
61
89
 
62
90
  case 3:
63
91
  case "end":
64
- return _context.stop();
92
+ return _context2.stop();
65
93
  }
66
94
  }
67
- }, _callee, this);
95
+ }, _callee2, this);
68
96
  }));
69
97
 
70
98
  function initData(_x) {
@@ -86,22 +114,22 @@ var TopoCenter = /*#__PURE__*/function (_TopoApp) {
86
114
  _proto.exit =
87
115
  /*#__PURE__*/
88
116
  function () {
89
- var _exit = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
117
+ var _exit = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
90
118
  var topoDispatchers;
91
- return _regeneratorRuntime.wrap(function _callee2$(_context2) {
119
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
92
120
  while (1) {
93
- switch (_context2.prev = _context2.next) {
121
+ switch (_context3.prev = _context3.next) {
94
122
  case 0:
95
123
  topoDispatchers = this.store.getModelDispatchers('topoCenter');
96
- _context2.next = 3;
124
+ _context3.next = 3;
97
125
  return topoDispatchers.exit();
98
126
 
99
127
  case 3:
100
128
  case "end":
101
- return _context2.stop();
129
+ return _context3.stop();
102
130
  }
103
131
  }
104
- }, _callee2, this);
132
+ }, _callee3, this);
105
133
  }));
106
134
 
107
135
  function exit() {
@@ -91,6 +91,26 @@ export function getGroupNodes(dataModel, groupIdOrTag) {
91
91
  return element.groupId === groupIdOrTag || element.groupTag === groupIdOrTag;
92
92
  });
93
93
  }
94
+ /**
95
+ * 获取容器里的节点列表
96
+ *
97
+ * @param group
98
+ * @return {*}
99
+ */
100
+
101
+ export function getGroupChildren(group) {
102
+ // HT为了支持区域内无节点可展开增加了站位节点,因此 节点的layer等于container_blank的过滤掉就可以了
103
+ return group.getChildren().getArray().filter(function (node) {
104
+ return node._layer !== 'container_blank';
105
+ });
106
+ }
107
+ /**
108
+ * 获取容器里的节点数据列表
109
+ *
110
+ * @param group
111
+ * @return {*}
112
+ */
113
+
94
114
  export function getGroupChildrenData(group) {
95
- return group.getChildren().getArray().map(getNodeData);
115
+ return getGroupChildren(group).map(getNodeData);
96
116
  }
@@ -21,7 +21,7 @@ var _ahooks = require("ahooks");
21
21
 
22
22
  var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-utils/es/rlog"));
23
23
 
24
- var _componentTopologyGraph = require("@riil-frontend/component-topology-graph");
24
+ var _event = _interopRequireDefault(require("@riil-frontend/component-topology-graph/es/event"));
25
25
 
26
26
  var _indexModule = _interopRequireDefault(require("./index.module.scss"));
27
27
 
@@ -79,15 +79,15 @@ var LinkDrawer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
79
79
  var type = e.type,
80
80
  data = e.data;
81
81
 
82
- if (type === _componentTopologyGraph.TopoEvent.DATA_TYPE_RESOURCE_LINK) {
82
+ if (type === _event["default"].DATA_TYPE_RESOURCE_LINK) {
83
83
  api.show(data);
84
84
  }
85
85
  };
86
86
 
87
- notifier.on(_componentTopologyGraph.TopoEvent.EVENT_DATA_PICK, handleEvent);
87
+ notifier.on(_event["default"].EVENT_DATA_PICK, handleEvent);
88
88
  return function () {
89
89
  // 取消注册事件
90
- notifier.off(_componentTopologyGraph.TopoEvent.EVENT_DATA_PICK, handleEvent);
90
+ notifier.off(_event["default"].EVENT_DATA_PICK, handleEvent);
91
91
  };
92
92
  }, []); // 从url打开
93
93
 
@@ -113,8 +113,8 @@ var LinkDrawer = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
113
113
 
114
114
  case 3:
115
115
  data = _context.sent;
116
- topoApp.view.topoClient.emitEvent(_componentTopologyGraph.TopoEvent.EVENT_DATA_RESULT, {
117
- type: _componentTopologyGraph.TopoEvent.DATA_TYPE_RESOURCE_COMBO,
116
+ topoApp.view.topoClient.emitEvent(_event["default"].EVENT_DATA_RESULT, {
117
+ type: _event["default"].DATA_TYPE_RESOURCE_COMBO,
118
118
  data: data
119
119
  });
120
120
 
@@ -1,5 +1,5 @@
1
- @import '@riil-frontend/css/lib/index.scss';
2
- @import "@alifd/next/variables";
1
+ //@import '@riil-frontend/css/lib/index.scss';
2
+ @import "~@alifd/next/variables";
3
3
 
4
4
  .layout {
5
5
  height: 100%;
@@ -27,7 +27,10 @@ function ResourceSelectList(props, ref) {
27
27
  rowSelection: {
28
28
  mode: selectionMode
29
29
  }
30
- } : undefined
30
+ } : undefined,
31
+ onCheckedChange: function onCheckedChange(val) {
32
+ return console.error(val);
33
+ }
31
34
  });
32
35
  }
33
36
 
@@ -0,0 +1,66 @@
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 _message = _interopRequireDefault(require("@alifd/next/lib/message"));
11
+
12
+ var _react = _interopRequireWildcard(require("react"));
13
+
14
+ var _utils = require("@riil-frontend/utils");
15
+
16
+ var _Drawer = _interopRequireDefault(require("../Drawer"));
17
+
18
+ var _ResourceList = _interopRequireDefault(require("../ResourceList"));
19
+
20
+ var SingleResourceDrawer = function SingleResourceDrawer(props) {
21
+ var store = props.store,
22
+ visible = props.visible,
23
+ loading = props.loading,
24
+ selectedKey = props.selectedKey,
25
+ totalSelection = props.totalSelection,
26
+ onSave = props.onSave,
27
+ onClose = props.onClose;
28
+ var ref = (0, _react.useRef)();
29
+
30
+ var onDrawerSave = function onDrawerSave() {
31
+ var data = ref.current.getSelectedData();
32
+
33
+ if (!(0, _utils.isAvailableArray)(data)) {
34
+ _message["default"].error('请选择一项资源。');
35
+
36
+ return;
37
+ }
38
+
39
+ var intercept = onSave(data[0]);
40
+
41
+ if (!intercept) {
42
+ onClose();
43
+ }
44
+ };
45
+
46
+ var initialData = {
47
+ selected: [selectedKey],
48
+ total: totalSelection
49
+ };
50
+ return /*#__PURE__*/_react["default"].createElement(_Drawer["default"], {
51
+ title: "\u9009\u62E9\u8D44\u6E90",
52
+ visible: visible,
53
+ loading: loading,
54
+ onSave: onDrawerSave,
55
+ onClose: onClose,
56
+ buttons: ['确定', '取消']
57
+ }, /*#__PURE__*/_react["default"].createElement(_ResourceList["default"], {
58
+ ref: ref,
59
+ store: store,
60
+ initialData: initialData,
61
+ selectionMode: "single"
62
+ }));
63
+ };
64
+
65
+ var _default = SingleResourceDrawer;
66
+ exports["default"] = _default;