@riil-frontend/component-topology 12.1.0-dev.1 → 12.1.0-dev.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.
@@ -36,14 +36,14 @@ function EdgeColorButton(props) {
36
36
  });
37
37
  };
38
38
 
39
- var getLines = function getLines(list) {
39
+ var getCustomLines = function getCustomLines(list) {
40
40
  return list.filter(isCustomEdge);
41
41
  };
42
42
 
43
43
  useEffect(function () {
44
44
  if (graphLoaded) {
45
45
  var edges = getEdgesBySelection(topo);
46
- var list = getLines(edges);
46
+ var list = getCustomLines(edges);
47
47
  setLineWidth(1); // eslint-disable-next-line eqeqeq
48
48
 
49
49
  if (selection.length == 1 && list.length === 1) {
@@ -32,21 +32,11 @@ var LINE_TYPE_OPTIONS = [{
32
32
  value: 'doublearc',
33
33
  label: '双弧线',
34
34
  icon: 'topo_linear_icon_arcline'
35
- } // {
36
- // value: 'points',
37
- // label: '自由线形',
38
- // icon: 'topo_linear_icon_pointsline',
39
- // },
40
- ];
41
-
42
- if (localStorage.getItem('topo.test.edge.customType') === 'true') {
43
- LINE_TYPE_OPTIONS.push({
44
- value: 'points',
45
- label: '自由线形',
46
- icon: 'topo_linear_icon_pointsline'
47
- });
48
- }
49
-
35
+ }, {
36
+ value: 'points',
37
+ label: '自由线形',
38
+ icon: 'topo_linear_icon_pointsline'
39
+ }];
50
40
  var LineType = /*#__PURE__*/React.forwardRef(function (props, ref) {
51
41
  var value = props.value,
52
42
  onChange = props.onChange,
@@ -1,4 +1,4 @@
1
- import { getEdges, getEdgesBetweenNodes } from "../../../utils/htElementUtils";
1
+ import { getEdges, getEdgesBetweenNodes, isEdgeVisible } from "../../../utils/htElementUtils";
2
2
  var ht = window.ht;
3
3
  export function getEdgesBySelection(topo) {
4
4
  var getChildrenNodeIds = function getChildrenNodeIds(nodes) {
@@ -14,6 +14,14 @@ export function getEdgesBySelection(topo) {
14
14
  return nodeIds;
15
15
  };
16
16
 
17
+ function getVisibleEdgesInNodes(gv, nodes) {
18
+ var nodeIds = getChildrenNodeIds(nodes);
19
+ var dm = gv.getDataModel();
20
+ return getEdges(dm).filter(function (edge) {
21
+ return nodeIds.includes(edge.getSource().getId()) && nodeIds.includes(edge.getTarget().getId());
22
+ }).filter(isEdgeVisible);
23
+ }
24
+
17
25
  var getSelectedEdges = function getSelectedEdges(gv) {
18
26
  var selection = gv.getSelectionModel().getSelection().toArray(); // 选中的连线
19
27
 
@@ -24,14 +32,8 @@ export function getEdgesBySelection(topo) {
24
32
  var nodes = selection.filter(function (element) {
25
33
  return element instanceof ht.Node;
26
34
  });
27
- var nodeIds = getChildrenNodeIds(nodes);
28
- var dm = gv.getDataModel();
29
- getEdges(dm).forEach(function (edge) {
30
- if (nodeIds.find(function (nodeId) {
31
- return nodeId === edge.getSource().getId();
32
- }) && nodeIds.find(function (nodeId) {
33
- return nodeId === edge.getTarget().getId();
34
- }) && !edges.find(function (item) {
35
+ getVisibleEdgesInNodes(gv, nodes).forEach(function (edge) {
36
+ if (!edges.find(function (item) {
35
37
  return item === edge;
36
38
  })) {
37
39
  edges.push(edge);
@@ -24,7 +24,7 @@ import ElementTagTipConfig from "./tagstips/ElementTagTipConfig";
24
24
  import SelectionModel from "./SelectionModel";
25
25
  import CiCache from "./cache/CiCache"; // eslint-disable-next-line no-undef
26
26
 
27
- var version = typeof "12.1.0-dev.1" === 'string' ? "12.1.0-dev.1" : null;
27
+ var version = typeof "12.1.0-dev.3" === 'string' ? "12.1.0-dev.3" : null;
28
28
  console.info("\u62D3\u6251\u7248\u672C: " + version);
29
29
  /**
30
30
  * 拓扑显示和编辑
@@ -4,7 +4,7 @@ import _regeneratorRuntime from "@babel/runtime/regenerator";
4
4
  import keyBy from "lodash/keyBy";
5
5
  import _ from "lodash"; // 查询所有连线
6
6
 
7
- import { getEdges } from "../../../utils/htElementUtils";
7
+ import { getEdges, isEdgeGroup } from "../../../utils/htElementUtils";
8
8
  import CiTypeCache from "../cache/CiTypeCache";
9
9
  import CiCache from "../cache/CiCache"; // const interfaceTypeMap = {
10
10
  // "network.interface": {
@@ -158,7 +158,8 @@ export var plurals = {
158
158
  2: ["phy"],
159
159
  3: ["agg"],
160
160
  4: ["phy", "agg"]
161
- };
161
+ }; // 待办:移到网络拓扑组件
162
+
162
163
  export var showLinkByConfig = function showLinkByConfig(props) {
163
164
  var _plurals$compatibleWi;
164
165
 
@@ -170,29 +171,29 @@ export var showLinkByConfig = function showLinkByConfig(props) {
170
171
 
171
172
  var gv = topo.getGraphView();
172
173
  var dm = gv.getDataModel();
173
- var edges = getEdges(dm); // console.log("edges", edges);
174
+ var edges = getEdges(dm).filter(function (edge) {
175
+ return !isEdgeGroup(edge);
176
+ }); // console.log("edges", edges);
174
177
 
175
178
  var showPhy = types.indexOf("phy") >= 0;
176
179
  var showAgg = types.indexOf("agg") >= 0; // console.log("edges----types",showType, types,showPhy, showAgg);
177
180
 
178
- if (Array.isArray(edges) && edges.length > 0) {
179
- edges.forEach(function (edge) {
180
- if (showType === 1 || showType === true) {
181
- // 单链路全部显示
182
- // console.log("单链路全部显示", edge);
183
- edge.s("x.visible", true);
184
- } else {
185
- var d = topo.dataModel.getDataById(edge.getTag()); // 判断是否聚合链路
181
+ edges.forEach(function (edge) {
182
+ if (showType === 1 || showType === true) {
183
+ // 单链路全部显示
184
+ // console.log("单链路全部显示", edge);
185
+ edge.s("x.visible", true);
186
+ } else {
187
+ var d = topo.dataModel.getDataById(edge.getTag()); // 判断是否聚合链路
186
188
 
187
- if (isAggLink(d)) {
188
- edge.s("x.visible", showAgg);
189
- } else {
190
- // console.log("edge", edge, d, showAgg);
191
- edge.s("x.visible", showPhy);
192
- }
189
+ if (isAggLink(d)) {
190
+ edge.s("x.visible", showAgg);
191
+ } else {
192
+ // console.log("edge", edge, d, showAgg);
193
+ edge.s("x.visible", showPhy);
193
194
  }
194
- });
195
- }
195
+ }
196
+ });
196
197
  };
197
198
  export var mergeExportLinkData = function mergeExportLinkData(props) {
198
199
  var source = props.source,
@@ -1,12 +1,13 @@
1
1
  import rlog from "@riil-frontend/component-topology-utils/es/rlog";
2
2
  import { showLinkByConfig } from "../models/utils/linkUtils";
3
+ import { isEdgeGroup } from "../../utils/htElementUtils";
3
4
  /**
4
5
  * 是否手工连线
5
6
  * @param {*} edge
6
7
  */
7
8
 
8
9
  export function isCustomEdge(edge) {
9
- return !edge.isEdgeGroupAgent() && (edge.a('type') == 'line' || !edge.a('type'));
10
+ return !isEdgeGroup(edge) && (edge.a('type') == 'line' || !edge.a('type'));
10
11
  }
11
12
  /**
12
13
  * 根据配置更新连线展开折叠状态
@@ -115,8 +115,14 @@ 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");
118
+ /**
119
+ * 是否连线组
120
+ * @param {ht.Edge} edge
121
+ * @returns
122
+ */
123
+
124
+ export function isEdgeGroup(edge) {
125
+ return isEdge(edge) && edge.a('edgegroup.isEdgeGroup');
120
126
  }
121
127
  /**
122
128
  * 是否连线组代理
@@ -125,7 +131,13 @@ export function isEdgeGroupExpanded(edge) {
125
131
  */
126
132
 
127
133
  export function isEdgeGroupAgent(edge) {
128
- return isEdge(edge) && edge.getEdgeGroup() && edge.isEdgeGroupAgent();
134
+ return isEdgeGroup(edge) && isEdgeVisible(edge);
135
+ }
136
+ export function isEdgeGroupExpanded(edge) {
137
+ return isEdge(edge) && edge.getEdgeGroup() && !!edge.s("edge.expanded");
138
+ }
139
+ export function isEdgeVisible(edge) {
140
+ return edge.s('2d.visible') || edge.s('2d.visible') === undefined;
129
141
  }
130
142
  /**
131
143
  * 获得两个节点间的连线列表
@@ -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,
@@ -24,6 +24,14 @@ function getEdgesBySelection(topo) {
24
24
  return nodeIds;
25
25
  };
26
26
 
27
+ function getVisibleEdgesInNodes(gv, nodes) {
28
+ var nodeIds = getChildrenNodeIds(nodes);
29
+ var dm = gv.getDataModel();
30
+ return (0, _htElementUtils.getEdges)(dm).filter(function (edge) {
31
+ return nodeIds.includes(edge.getSource().getId()) && nodeIds.includes(edge.getTarget().getId());
32
+ }).filter(_htElementUtils.isEdgeVisible);
33
+ }
34
+
27
35
  var getSelectedEdges = function getSelectedEdges(gv) {
28
36
  var selection = gv.getSelectionModel().getSelection().toArray(); // 选中的连线
29
37
 
@@ -34,14 +42,8 @@ function getEdgesBySelection(topo) {
34
42
  var nodes = selection.filter(function (element) {
35
43
  return element instanceof ht.Node;
36
44
  });
37
- var nodeIds = getChildrenNodeIds(nodes);
38
- var dm = gv.getDataModel();
39
- (0, _htElementUtils.getEdges)(dm).forEach(function (edge) {
40
- if (nodeIds.find(function (nodeId) {
41
- return nodeId === edge.getSource().getId();
42
- }) && nodeIds.find(function (nodeId) {
43
- return nodeId === edge.getTarget().getId();
44
- }) && !edges.find(function (item) {
45
+ getVisibleEdgesInNodes(gv, nodes).forEach(function (edge) {
46
+ if (!edges.find(function (item) {
45
47
  return item === edge;
46
48
  })) {
47
49
  edges.push(edge);
@@ -54,7 +54,7 @@ var _SelectionModel = _interopRequireDefault(require("./SelectionModel"));
54
54
  var _CiCache = _interopRequireDefault(require("./cache/CiCache"));
55
55
 
56
56
  // eslint-disable-next-line no-undef
57
- var version = typeof "12.1.0-dev.1" === 'string' ? "12.1.0-dev.1" : null;
57
+ var version = typeof "12.1.0-dev.3" === 'string' ? "12.1.0-dev.3" : null;
58
58
  console.info("\u62D3\u6251\u7248\u672C: " + version);
59
59
  /**
60
60
  * 拓扑显示和编辑
@@ -186,7 +186,8 @@ var plurals = {
186
186
  2: ["phy"],
187
187
  3: ["agg"],
188
188
  4: ["phy", "agg"]
189
- };
189
+ }; // 待办:移到网络拓扑组件
190
+
190
191
  exports.plurals = plurals;
191
192
 
192
193
  var showLinkByConfig = function showLinkByConfig(props) {
@@ -200,29 +201,29 @@ var showLinkByConfig = function showLinkByConfig(props) {
200
201
 
201
202
  var gv = topo.getGraphView();
202
203
  var dm = gv.getDataModel();
203
- var edges = (0, _htElementUtils.getEdges)(dm); // console.log("edges", edges);
204
+ var edges = (0, _htElementUtils.getEdges)(dm).filter(function (edge) {
205
+ return !(0, _htElementUtils.isEdgeGroup)(edge);
206
+ }); // console.log("edges", edges);
204
207
 
205
208
  var showPhy = types.indexOf("phy") >= 0;
206
209
  var showAgg = types.indexOf("agg") >= 0; // console.log("edges----types",showType, types,showPhy, showAgg);
207
210
 
208
- if (Array.isArray(edges) && edges.length > 0) {
209
- edges.forEach(function (edge) {
210
- if (showType === 1 || showType === true) {
211
- // 单链路全部显示
212
- // console.log("单链路全部显示", edge);
213
- edge.s("x.visible", true);
214
- } else {
215
- var d = topo.dataModel.getDataById(edge.getTag()); // 判断是否聚合链路
211
+ edges.forEach(function (edge) {
212
+ if (showType === 1 || showType === true) {
213
+ // 单链路全部显示
214
+ // console.log("单链路全部显示", edge);
215
+ edge.s("x.visible", true);
216
+ } else {
217
+ var d = topo.dataModel.getDataById(edge.getTag()); // 判断是否聚合链路
216
218
 
217
- if (isAggLink(d)) {
218
- edge.s("x.visible", showAgg);
219
- } else {
220
- // console.log("edge", edge, d, showAgg);
221
- edge.s("x.visible", showPhy);
222
- }
219
+ if (isAggLink(d)) {
220
+ edge.s("x.visible", showAgg);
221
+ } else {
222
+ // console.log("edge", edge, d, showAgg);
223
+ edge.s("x.visible", showPhy);
223
224
  }
224
- });
225
- }
225
+ }
226
+ });
226
227
  };
227
228
 
228
229
  exports.showLinkByConfig = showLinkByConfig;
@@ -10,12 +10,14 @@ var _rlog = _interopRequireDefault(require("@riil-frontend/component-topology-ut
10
10
 
11
11
  var _linkUtils = require("../models/utils/linkUtils");
12
12
 
13
+ var _htElementUtils = require("../../utils/htElementUtils");
14
+
13
15
  /**
14
16
  * 是否手工连线
15
17
  * @param {*} edge
16
18
  */
17
19
  function isCustomEdge(edge) {
18
- return !edge.isEdgeGroupAgent() && (edge.a('type') == 'line' || !edge.a('type'));
20
+ return !(0, _htElementUtils.isEdgeGroup)(edge) && (edge.a('type') == 'line' || !edge.a('type'));
19
21
  }
20
22
  /**
21
23
  * 根据配置更新连线展开折叠状态
@@ -26,8 +26,10 @@ exports.getNodeDatas = getNodeDatas;
26
26
  exports.getNodes = getNodes;
27
27
  exports.getNodesByGroupIdOrTag = getNodesByGroupIdOrTag;
28
28
  exports.isEdge = isEdge;
29
+ exports.isEdgeGroup = isEdgeGroup;
29
30
  exports.isEdgeGroupAgent = isEdgeGroupAgent;
30
31
  exports.isEdgeGroupExpanded = isEdgeGroupExpanded;
32
+ exports.isEdgeVisible = isEdgeVisible;
31
33
  exports.isExistedElement = isExistedElement;
32
34
  exports.isGroup = isGroup;
33
35
  exports.isLayer = isLayer;
@@ -172,9 +174,15 @@ function getNodeData(element) {
172
174
  function getEdges(dataModel) {
173
175
  return getElements(dataModel).filter(isValidEdge);
174
176
  }
177
+ /**
178
+ * 是否连线组
179
+ * @param {ht.Edge} edge
180
+ * @returns
181
+ */
175
182
 
176
- function isEdgeGroupExpanded(edge) {
177
- return isEdge(edge) && edge.getEdgeGroup() && !!edge.s("edge.expanded");
183
+
184
+ function isEdgeGroup(edge) {
185
+ return isEdge(edge) && edge.a('edgegroup.isEdgeGroup');
178
186
  }
179
187
  /**
180
188
  * 是否连线组代理
@@ -184,7 +192,15 @@ function isEdgeGroupExpanded(edge) {
184
192
 
185
193
 
186
194
  function isEdgeGroupAgent(edge) {
187
- return isEdge(edge) && edge.getEdgeGroup() && edge.isEdgeGroupAgent();
195
+ return isEdgeGroup(edge) && isEdgeVisible(edge);
196
+ }
197
+
198
+ function isEdgeGroupExpanded(edge) {
199
+ return isEdge(edge) && edge.getEdgeGroup() && !!edge.s("edge.expanded");
200
+ }
201
+
202
+ function isEdgeVisible(edge) {
203
+ return edge.s('2d.visible') || edge.s('2d.visible') === undefined;
188
204
  }
189
205
  /**
190
206
  * 获得两个节点间的连线列表
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@riil-frontend/component-topology",
3
- "version": "12.1.0-dev.1",
3
+ "version": "12.1.0-dev.3",
4
4
  "description": "拓扑",
5
5
  "scripts": {
6
6
  "start": "build-scripts start",
@@ -123,6 +123,6 @@
123
123
  "access": "public"
124
124
  },
125
125
  "license": "MIT",
126
- "homepage": "https://unpkg.com/@riil-frontend/component-topology@12.1.0-dev.1/build/index.html",
126
+ "homepage": "https://unpkg.com/@riil-frontend/component-topology@12.1.0-dev.3/build/index.html",
127
127
  "gitHead": "2da19ffccbb7ca60a8acf396e39f542c68bb33f5"
128
128
  }