@antv/layout 1.2.14-beta.0 → 1.2.14-beta.1
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.
- package/lib/antv-dagre/acyclic.js +3 -7
- package/lib/antv-dagre/acyclic.js.map +1 -1
- package/lib/antv-dagre/add-border-segments.js +3 -7
- package/lib/antv-dagre/add-border-segments.js.map +1 -1
- package/lib/antv-dagre/coordinate-system.js +1 -5
- package/lib/antv-dagre/coordinate-system.js.map +1 -1
- package/lib/antv-dagre/data/list.js +1 -4
- package/lib/antv-dagre/data/list.js.map +1 -1
- package/lib/antv-dagre/greedy-fas.js +5 -10
- package/lib/antv-dagre/greedy-fas.js.map +1 -1
- package/lib/antv-dagre/layout.js +37 -41
- package/lib/antv-dagre/layout.js.map +1 -1
- package/lib/antv-dagre/nesting-graph.js +5 -9
- package/lib/antv-dagre/nesting-graph.js.map +1 -1
- package/lib/antv-dagre/normalize.js +3 -7
- package/lib/antv-dagre/normalize.js.map +1 -1
- package/lib/antv-dagre/order/add-subgraph-constraints.js +1 -5
- package/lib/antv-dagre/order/add-subgraph-constraints.js.map +1 -1
- package/lib/antv-dagre/order/barycenter.js +1 -5
- package/lib/antv-dagre/order/barycenter.js.map +1 -1
- package/lib/antv-dagre/order/build-layer-graph.js +3 -7
- package/lib/antv-dagre/order/build-layer-graph.js.map +1 -1
- package/lib/antv-dagre/order/cross-count.js +3 -7
- package/lib/antv-dagre/order/cross-count.js.map +1 -1
- package/lib/antv-dagre/order/index.js +22 -26
- package/lib/antv-dagre/order/index.js.map +1 -1
- package/lib/antv-dagre/order/init-data-order.js +1 -5
- package/lib/antv-dagre/order/init-data-order.js.map +1 -1
- package/lib/antv-dagre/order/init-order.js +1 -5
- package/lib/antv-dagre/order/init-order.js.map +1 -1
- package/lib/antv-dagre/order/resolve-conflicts.js +1 -3
- package/lib/antv-dagre/order/resolve-conflicts.js.map +1 -1
- package/lib/antv-dagre/order/sort-subgraph.js +8 -13
- package/lib/antv-dagre/order/sort-subgraph.js.map +1 -1
- package/lib/antv-dagre/order/sort.js +3 -7
- package/lib/antv-dagre/order/sort.js.map +1 -1
- package/lib/antv-dagre/parent-dummy-chains.js +1 -5
- package/lib/antv-dagre/parent-dummy-chains.js.map +1 -1
- package/lib/antv-dagre/position/bk.js +31 -48
- package/lib/antv-dagre/position/bk.js.map +1 -1
- package/lib/antv-dagre/position/index.js +12 -16
- package/lib/antv-dagre/position/index.js.map +1 -1
- package/lib/antv-dagre/rank/feasible-tree.js +12 -16
- package/lib/antv-dagre/rank/feasible-tree.js.map +1 -1
- package/lib/antv-dagre/rank/index.js +8 -12
- package/lib/antv-dagre/rank/index.js.map +1 -1
- package/lib/antv-dagre/rank/network-simplex.js +25 -35
- package/lib/antv-dagre/rank/network-simplex.js.map +1 -1
- package/lib/antv-dagre/rank/util.js +1 -6
- package/lib/antv-dagre/rank/util.js.map +1 -1
- package/lib/antv-dagre/types.js +1 -2
- package/lib/antv-dagre/util.js +23 -41
- package/lib/antv-dagre/util.js.map +1 -1
- package/lib/antv-dagre.js +17 -21
- package/lib/antv-dagre.js.map +1 -1
- package/lib/bundle-entry.js +2 -5
- package/lib/bundle-entry.js.map +1 -1
- package/lib/bundle-supervisor.js +7 -11
- package/lib/bundle-supervisor.js.map +1 -1
- package/lib/bundle-worker.js +10 -15
- package/lib/bundle-worker.js.map +1 -1
- package/lib/circular.js +16 -20
- package/lib/circular.js.map +1 -1
- package/lib/comboCombined.js +35 -39
- package/lib/comboCombined.js.map +1 -1
- package/lib/concentric.js +19 -23
- package/lib/concentric.js.map +1 -1
- package/lib/d3Force/forceInBox.js +2 -6
- package/lib/d3Force/forceInBox.js.map +1 -1
- package/lib/d3Force/index.js +22 -26
- package/lib/d3Force/index.js.map +1 -1
- package/lib/dagre.js +13 -17
- package/lib/dagre.js.map +1 -1
- package/lib/exports.js +16 -19
- package/lib/exports.js.map +1 -1
- package/lib/force/forceNBody.js +5 -9
- package/lib/force/forceNBody.js.map +1 -1
- package/lib/force/index.js +23 -27
- package/lib/force/index.js.map +1 -1
- package/lib/force/types.js +1 -2
- package/lib/forceAtlas2/body.js +1 -4
- package/lib/forceAtlas2/body.js.map +1 -1
- package/lib/forceAtlas2/index.js +26 -30
- package/lib/forceAtlas2/index.js.map +1 -1
- package/lib/forceAtlas2/quad.js +1 -4
- package/lib/forceAtlas2/quad.js.map +1 -1
- package/lib/forceAtlas2/quadTree.js +1 -4
- package/lib/forceAtlas2/quadTree.js.map +1 -1
- package/lib/fruchterman.js +24 -28
- package/lib/fruchterman.js.map +1 -1
- package/lib/grid.js +15 -19
- package/lib/grid.js.map +1 -1
- package/lib/index.js +2 -5
- package/lib/index.js.map +1 -1
- package/lib/mds.js +17 -21
- package/lib/mds.js.map +1 -1
- package/lib/radial/index.js +22 -26
- package/lib/radial/index.js.map +1 -1
- package/lib/radial/mds.js +6 -10
- package/lib/radial/mds.js.map +1 -1
- package/lib/radial/radial-nonoverlap-force.js +1 -5
- package/lib/radial/radial-nonoverlap-force.js.map +1 -1
- package/lib/random.js +5 -9
- package/lib/random.js.map +1 -1
- package/lib/registry.js +27 -30
- package/lib/registry.js.map +1 -1
- package/lib/supervisor.js +8 -12
- package/lib/supervisor.js.map +1 -1
- package/lib/types.js +1 -5
- package/lib/types.js.map +1 -1
- package/lib/util/array.js +1 -4
- package/lib/util/array.js.map +1 -1
- package/lib/util/common.js +1 -5
- package/lib/util/common.js.map +1 -1
- package/lib/util/function.js +14 -20
- package/lib/util/function.js.map +1 -1
- package/lib/util/index.js +4 -7
- package/lib/util/index.js.map +1 -1
- package/lib/util/math.js +11 -20
- package/lib/util/math.js.map +1 -1
- package/lib/util/object.js +8 -13
- package/lib/util/object.js.map +1 -1
- package/lib/util/size.js +3 -7
- package/lib/util/size.js.map +1 -1
- package/lib/worker.js +9 -11
- package/lib/worker.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const util_1 = require("../util");
|
|
5
|
-
const feasible_tree_1 = require("./feasible-tree");
|
|
6
|
-
const util_2 = require("./util");
|
|
1
|
+
import { dfs, minBy, simplify } from '../util';
|
|
2
|
+
import { feasibleTree } from './feasible-tree';
|
|
3
|
+
import { longestPath as initRank, slack } from './util';
|
|
7
4
|
/*
|
|
8
5
|
* The network simplex algorithm assigns ranks to each node in the input graph
|
|
9
6
|
* and iteratively improves the ranking to reduce the length of edges.
|
|
@@ -37,31 +34,29 @@ const util_2 = require("./util");
|
|
|
37
34
|
* for Drawing Directed Graphs." The structure of the file roughly follows the
|
|
38
35
|
* structure of the overall algorithm.
|
|
39
36
|
*/
|
|
40
|
-
const networkSimplex = (og) => {
|
|
41
|
-
const g =
|
|
42
|
-
(
|
|
43
|
-
const t =
|
|
44
|
-
|
|
45
|
-
|
|
37
|
+
export const networkSimplex = (og) => {
|
|
38
|
+
const g = simplify(og);
|
|
39
|
+
initRank(g);
|
|
40
|
+
const t = feasibleTree(g);
|
|
41
|
+
initLowLimValues(t);
|
|
42
|
+
initCutValues(t, g);
|
|
46
43
|
let e;
|
|
47
44
|
let f;
|
|
48
|
-
while ((e =
|
|
49
|
-
f =
|
|
50
|
-
|
|
45
|
+
while ((e = leaveEdge(t))) {
|
|
46
|
+
f = enterEdge(t, g, e);
|
|
47
|
+
exchangeEdges(t, g, e, f);
|
|
51
48
|
}
|
|
52
49
|
};
|
|
53
|
-
exports.networkSimplex = networkSimplex;
|
|
54
50
|
/*
|
|
55
51
|
* Initializes cut values for all edges in the tree.
|
|
56
52
|
*/
|
|
57
|
-
const initCutValues = (t, g) => {
|
|
58
|
-
let vs =
|
|
53
|
+
export const initCutValues = (t, g) => {
|
|
54
|
+
let vs = dfs(t, t.getAllNodes(), 'post', false);
|
|
59
55
|
vs = vs.slice(0, (vs === null || vs === void 0 ? void 0 : vs.length) - 1);
|
|
60
56
|
vs.forEach((v) => {
|
|
61
57
|
assignCutValue(t, g, v);
|
|
62
58
|
});
|
|
63
59
|
};
|
|
64
|
-
exports.initCutValues = initCutValues;
|
|
65
60
|
const assignCutValue = (t, g, child) => {
|
|
66
61
|
const childLab = t.getNode(child);
|
|
67
62
|
const parent = childLab.data.parent;
|
|
@@ -69,13 +64,13 @@ const assignCutValue = (t, g, child) => {
|
|
|
69
64
|
const edge = t
|
|
70
65
|
.getRelatedEdges(child, 'both')
|
|
71
66
|
.find((e) => e.target === parent || e.source === parent);
|
|
72
|
-
edge.data.cutvalue =
|
|
67
|
+
edge.data.cutvalue = calcCutValue(t, g, child);
|
|
73
68
|
};
|
|
74
69
|
/*
|
|
75
70
|
* Given the tight tree, its graph, and a child in the graph calculate and
|
|
76
71
|
* return the cut value for the edge between the child and its parent.
|
|
77
72
|
*/
|
|
78
|
-
const calcCutValue = (t, g, child) => {
|
|
73
|
+
export const calcCutValue = (t, g, child) => {
|
|
79
74
|
const childLab = t.getNode(child);
|
|
80
75
|
const parent = childLab.data.parent;
|
|
81
76
|
// True if the child is on the tail end of the edge in the directed graph
|
|
@@ -112,11 +107,9 @@ const calcCutValue = (t, g, child) => {
|
|
|
112
107
|
});
|
|
113
108
|
return cutValue;
|
|
114
109
|
};
|
|
115
|
-
|
|
116
|
-
const initLowLimValues = (tree, root = tree.getAllNodes()[0].id) => {
|
|
110
|
+
export const initLowLimValues = (tree, root = tree.getAllNodes()[0].id) => {
|
|
117
111
|
dfsAssignLowLim(tree, {}, 1, root);
|
|
118
112
|
};
|
|
119
|
-
exports.initLowLimValues = initLowLimValues;
|
|
120
113
|
const dfsAssignLowLim = (tree, visited, nextLim, v, parent) => {
|
|
121
114
|
var _a;
|
|
122
115
|
const low = nextLim;
|
|
@@ -139,13 +132,12 @@ const dfsAssignLowLim = (tree, visited, nextLim, v, parent) => {
|
|
|
139
132
|
}
|
|
140
133
|
return useNextLim;
|
|
141
134
|
};
|
|
142
|
-
const leaveEdge = (tree) => {
|
|
135
|
+
export const leaveEdge = (tree) => {
|
|
143
136
|
return tree.getAllEdges().find((e) => {
|
|
144
137
|
return e.data.cutvalue < 0;
|
|
145
138
|
});
|
|
146
139
|
};
|
|
147
|
-
|
|
148
|
-
const enterEdge = (t, g, edge) => {
|
|
140
|
+
export const enterEdge = (t, g, edge) => {
|
|
149
141
|
let v = edge.source;
|
|
150
142
|
let w = edge.target;
|
|
151
143
|
// For the rest of this function we assume that v is the tail and w is the
|
|
@@ -169,11 +161,10 @@ const enterEdge = (t, g, edge) => {
|
|
|
169
161
|
return (flip === isDescendant(t.getNode(edge.source), tailLabel) &&
|
|
170
162
|
flip !== isDescendant(t.getNode(edge.target), tailLabel));
|
|
171
163
|
});
|
|
172
|
-
return
|
|
173
|
-
return
|
|
164
|
+
return minBy(candidates, (edge) => {
|
|
165
|
+
return slack(g, edge);
|
|
174
166
|
});
|
|
175
167
|
};
|
|
176
|
-
exports.enterEdge = enterEdge;
|
|
177
168
|
/**
|
|
178
169
|
*
|
|
179
170
|
* @param t
|
|
@@ -181,7 +172,7 @@ exports.enterEdge = enterEdge;
|
|
|
181
172
|
* @param e edge to remove
|
|
182
173
|
* @param f edge to add
|
|
183
174
|
*/
|
|
184
|
-
const exchangeEdges = (t, g, e, f) => {
|
|
175
|
+
export const exchangeEdges = (t, g, e, f) => {
|
|
185
176
|
// FIXME: use undirected edge?
|
|
186
177
|
const existed = t
|
|
187
178
|
.getRelatedEdges(e.source, 'both')
|
|
@@ -195,16 +186,15 @@ const exchangeEdges = (t, g, e, f) => {
|
|
|
195
186
|
target: f.target,
|
|
196
187
|
data: {},
|
|
197
188
|
});
|
|
198
|
-
|
|
199
|
-
|
|
189
|
+
initLowLimValues(t);
|
|
190
|
+
initCutValues(t, g);
|
|
200
191
|
updateRanks(t, g);
|
|
201
192
|
};
|
|
202
|
-
exports.exchangeEdges = exchangeEdges;
|
|
203
193
|
const updateRanks = (t, g) => {
|
|
204
194
|
const root = t.getAllNodes().find((v) => {
|
|
205
195
|
return !v.data.parent;
|
|
206
196
|
});
|
|
207
|
-
let vs =
|
|
197
|
+
let vs = dfs(t, root, 'pre', false);
|
|
208
198
|
vs = vs.slice(1);
|
|
209
199
|
vs.forEach((v) => {
|
|
210
200
|
const parent = t.getNode(v).data.parent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"network-simplex.js","sourceRoot":"","sources":["../../../src/antv-dagre/rank/network-simplex.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"network-simplex.js","sourceRoot":"","sources":["../../../src/antv-dagre/rank/network-simplex.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.slack = exports.longestPathWithLayer = exports.longestPath = void 0;
|
|
4
1
|
/*
|
|
5
2
|
* Initializes ranks for the input graph using the longest path algorithm. This
|
|
6
3
|
* algorithm scales well and is fast in practice, it yields rather poor
|
|
@@ -54,7 +51,6 @@ const longestPath = (g) => {
|
|
|
54
51
|
.filter((n) => g.getRelatedEdges(n.id, 'in').length === 0)
|
|
55
52
|
.forEach((source) => dfs(source.id));
|
|
56
53
|
};
|
|
57
|
-
exports.longestPath = longestPath;
|
|
58
54
|
const longestPathWithLayer = (g) => {
|
|
59
55
|
// 用longest path,找出最深的点
|
|
60
56
|
const visited = {};
|
|
@@ -129,7 +125,6 @@ const longestPathWithLayer = (g) => {
|
|
|
129
125
|
}
|
|
130
126
|
});
|
|
131
127
|
};
|
|
132
|
-
exports.longestPathWithLayer = longestPathWithLayer;
|
|
133
128
|
/*
|
|
134
129
|
* Returns the amount of slack for the given edge. The slack is defined as the
|
|
135
130
|
* difference between the length of the edge and its minimum length.
|
|
@@ -139,5 +134,5 @@ const slack = (g, e) => {
|
|
|
139
134
|
g.getNode(e.source).data.rank -
|
|
140
135
|
e.data.minlen);
|
|
141
136
|
};
|
|
142
|
-
|
|
137
|
+
export { longestPath, longestPathWithLayer, slack };
|
|
143
138
|
//# sourceMappingURL=util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/antv-dagre/rank/util.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../../src/antv-dagre/rank/util.ts"],"names":[],"mappings":"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"}
|
package/lib/antv-dagre/types.js
CHANGED
package/lib/antv-dagre/util.js
CHANGED
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.dfs = exports.minBy = exports.partition = exports.maxRank = exports.addBorderNode = exports.removeEmptyRanks = exports.normalizeRanks = exports.buildLayerMatrix = exports.intersectRect = exports.predecessorWeights = exports.successorWeights = exports.zipObject = exports.asNonCompoundGraph = exports.simplify = exports.addDummyNode = void 0;
|
|
4
|
-
const graphlib_1 = require("@antv/graphlib");
|
|
5
|
-
const util_1 = require("@antv/util");
|
|
1
|
+
import { Graph } from '@antv/graphlib';
|
|
2
|
+
import { isNumber } from '@antv/util';
|
|
6
3
|
const safeSort = (valueA, valueB) => {
|
|
7
4
|
return Number(valueA) - Number(valueB);
|
|
8
5
|
};
|
|
9
6
|
/*
|
|
10
7
|
* Adds a dummy node to the graph and return v.
|
|
11
8
|
*/
|
|
12
|
-
const addDummyNode = (g, type, data, name) => {
|
|
9
|
+
export const addDummyNode = (g, type, data, name) => {
|
|
13
10
|
let v;
|
|
14
11
|
do {
|
|
15
12
|
v = `${name}${Math.random()}`;
|
|
@@ -21,13 +18,12 @@ const addDummyNode = (g, type, data, name) => {
|
|
|
21
18
|
});
|
|
22
19
|
return v;
|
|
23
20
|
};
|
|
24
|
-
exports.addDummyNode = addDummyNode;
|
|
25
21
|
/*
|
|
26
22
|
* Returns a new graph with only simple edges. Handles aggregation of data
|
|
27
23
|
* associated with multi-edges.
|
|
28
24
|
*/
|
|
29
|
-
const simplify = (g) => {
|
|
30
|
-
const simplified = new
|
|
25
|
+
export const simplify = (g) => {
|
|
26
|
+
const simplified = new Graph();
|
|
31
27
|
g.getAllNodes().forEach((v) => {
|
|
32
28
|
simplified.addNode(Object.assign({}, v));
|
|
33
29
|
});
|
|
@@ -52,9 +48,8 @@ const simplify = (g) => {
|
|
|
52
48
|
});
|
|
53
49
|
return simplified;
|
|
54
50
|
};
|
|
55
|
-
|
|
56
|
-
const
|
|
57
|
-
const simplified = new graphlib_1.Graph();
|
|
51
|
+
export const asNonCompoundGraph = (g) => {
|
|
52
|
+
const simplified = new Graph();
|
|
58
53
|
g.getAllNodes().forEach((node) => {
|
|
59
54
|
if (!g.getChildren(node.id).length) {
|
|
60
55
|
simplified.addNode(Object.assign({}, node));
|
|
@@ -65,15 +60,13 @@ const asNonCompoundGraph = (g) => {
|
|
|
65
60
|
});
|
|
66
61
|
return simplified;
|
|
67
62
|
};
|
|
68
|
-
|
|
69
|
-
const zipObject = (keys, values) => {
|
|
63
|
+
export const zipObject = (keys, values) => {
|
|
70
64
|
return keys === null || keys === void 0 ? void 0 : keys.reduce((obj, key, i) => {
|
|
71
65
|
obj[key] = values[i];
|
|
72
66
|
return obj;
|
|
73
67
|
}, {});
|
|
74
68
|
};
|
|
75
|
-
|
|
76
|
-
const successorWeights = (g) => {
|
|
69
|
+
export const successorWeights = (g) => {
|
|
77
70
|
const weightsMap = {};
|
|
78
71
|
g.getAllNodes().forEach((node) => {
|
|
79
72
|
const sucs = {};
|
|
@@ -84,8 +77,7 @@ const successorWeights = (g) => {
|
|
|
84
77
|
});
|
|
85
78
|
return weightsMap;
|
|
86
79
|
};
|
|
87
|
-
|
|
88
|
-
const predecessorWeights = (g) => {
|
|
80
|
+
export const predecessorWeights = (g) => {
|
|
89
81
|
const nodes = g.getAllNodes();
|
|
90
82
|
const weightMap = nodes.map((v) => {
|
|
91
83
|
const preds = {};
|
|
@@ -94,14 +86,13 @@ const predecessorWeights = (g) => {
|
|
|
94
86
|
});
|
|
95
87
|
return preds;
|
|
96
88
|
});
|
|
97
|
-
return
|
|
89
|
+
return zipObject(nodes.map((n) => n.id), weightMap);
|
|
98
90
|
};
|
|
99
|
-
exports.predecessorWeights = predecessorWeights;
|
|
100
91
|
/*
|
|
101
92
|
* Finds where a line starting at point ({x, y}) would intersect a rectangle
|
|
102
93
|
* ({x, y, width, height}) if it were pointing at the rectangle's center.
|
|
103
94
|
*/
|
|
104
|
-
const intersectRect = (rect, point) => {
|
|
95
|
+
export const intersectRect = (rect, point) => {
|
|
105
96
|
const x = Number(rect.x);
|
|
106
97
|
const y = Number(rect.y);
|
|
107
98
|
// Rectangle intersection algorithm from:
|
|
@@ -134,14 +125,13 @@ const intersectRect = (rect, point) => {
|
|
|
134
125
|
}
|
|
135
126
|
return { x: x + sx, y: y + sy };
|
|
136
127
|
};
|
|
137
|
-
exports.intersectRect = intersectRect;
|
|
138
128
|
/*
|
|
139
129
|
* Given a DAG with each node assigned "rank" and "order" properties, this
|
|
140
130
|
* const will produce a matrix with the ids of each node.
|
|
141
131
|
*/
|
|
142
|
-
const buildLayerMatrix = (g) => {
|
|
132
|
+
export const buildLayerMatrix = (g) => {
|
|
143
133
|
const layeringNodes = [];
|
|
144
|
-
const rankMax =
|
|
134
|
+
const rankMax = maxRank(g) + 1;
|
|
145
135
|
for (let i = 0; i < rankMax; i++) {
|
|
146
136
|
layeringNodes.push([]);
|
|
147
137
|
}
|
|
@@ -157,12 +147,11 @@ const buildLayerMatrix = (g) => {
|
|
|
157
147
|
}
|
|
158
148
|
return layeringNodes;
|
|
159
149
|
};
|
|
160
|
-
exports.buildLayerMatrix = buildLayerMatrix;
|
|
161
150
|
/*
|
|
162
151
|
* Adjusts the ranks for all nodes in the graph such that all nodes v have
|
|
163
152
|
* rank(v) >= 0 and at least one node w has rank(w) = 0.
|
|
164
153
|
*/
|
|
165
|
-
const normalizeRanks = (g) => {
|
|
154
|
+
export const normalizeRanks = (g) => {
|
|
166
155
|
const nodeRanks = g
|
|
167
156
|
.getAllNodes()
|
|
168
157
|
.filter((v) => v.data.rank !== undefined)
|
|
@@ -174,8 +163,7 @@ const normalizeRanks = (g) => {
|
|
|
174
163
|
}
|
|
175
164
|
});
|
|
176
165
|
};
|
|
177
|
-
|
|
178
|
-
const removeEmptyRanks = (g, nodeRankFactor = 0) => {
|
|
166
|
+
export const removeEmptyRanks = (g, nodeRankFactor = 0) => {
|
|
179
167
|
// Ranks may not start at 0, so we need to offset them
|
|
180
168
|
const nodes = g.getAllNodes();
|
|
181
169
|
const nodeRanks = nodes
|
|
@@ -209,20 +197,18 @@ const removeEmptyRanks = (g, nodeRankFactor = 0) => {
|
|
|
209
197
|
}
|
|
210
198
|
}
|
|
211
199
|
};
|
|
212
|
-
|
|
213
|
-
const addBorderNode = (g, prefix, rank, order) => {
|
|
200
|
+
export const addBorderNode = (g, prefix, rank, order) => {
|
|
214
201
|
const node = {
|
|
215
202
|
width: 0,
|
|
216
203
|
height: 0,
|
|
217
204
|
};
|
|
218
|
-
if (
|
|
205
|
+
if (isNumber(rank) && isNumber(order)) {
|
|
219
206
|
node.rank = rank;
|
|
220
207
|
node.order = order;
|
|
221
208
|
}
|
|
222
|
-
return
|
|
209
|
+
return addDummyNode(g, 'border', node, prefix);
|
|
223
210
|
};
|
|
224
|
-
|
|
225
|
-
const maxRank = (g) => {
|
|
211
|
+
export const maxRank = (g) => {
|
|
226
212
|
let maxRank;
|
|
227
213
|
g.getAllNodes().forEach((v) => {
|
|
228
214
|
const rank = v.data.rank;
|
|
@@ -237,13 +223,12 @@ const maxRank = (g) => {
|
|
|
237
223
|
}
|
|
238
224
|
return maxRank;
|
|
239
225
|
};
|
|
240
|
-
exports.maxRank = maxRank;
|
|
241
226
|
/*
|
|
242
227
|
* Partition a collection into two groups: `lhs` and `rhs`. If the supplied
|
|
243
228
|
* const returns true for an entry it goes into `lhs`. Otherwise it goes
|
|
244
229
|
* into `rhs.
|
|
245
230
|
*/
|
|
246
|
-
const partition = (collection, fn) => {
|
|
231
|
+
export const partition = (collection, fn) => {
|
|
247
232
|
const result = { lhs: [], rhs: [] };
|
|
248
233
|
collection === null || collection === void 0 ? void 0 : collection.forEach((value) => {
|
|
249
234
|
if (fn(value)) {
|
|
@@ -255,15 +240,13 @@ const partition = (collection, fn) => {
|
|
|
255
240
|
});
|
|
256
241
|
return result;
|
|
257
242
|
};
|
|
258
|
-
|
|
259
|
-
const minBy = (array, func) => {
|
|
243
|
+
export const minBy = (array, func) => {
|
|
260
244
|
return array.reduce((a, b) => {
|
|
261
245
|
const valA = func(a);
|
|
262
246
|
const valB = func(b);
|
|
263
247
|
return valA > valB ? b : a;
|
|
264
248
|
});
|
|
265
249
|
};
|
|
266
|
-
exports.minBy = minBy;
|
|
267
250
|
const doDFS = (graph, node, postorder, visited, navigator, result) => {
|
|
268
251
|
if (!visited.includes(node.id)) {
|
|
269
252
|
visited.push(node.id);
|
|
@@ -280,7 +263,7 @@ const doDFS = (graph, node, postorder, visited, navigator, result) => {
|
|
|
280
263
|
* @description DFS traversal.
|
|
281
264
|
* @description.zh-CN DFS 遍历。
|
|
282
265
|
*/
|
|
283
|
-
const dfs = (graph, node, order, isDirected) => {
|
|
266
|
+
export const dfs = (graph, node, order, isDirected) => {
|
|
284
267
|
const nodes = Array.isArray(node) ? node : [node];
|
|
285
268
|
const navigator = (n) => (isDirected ? graph.getSuccessors(n) : graph.getNeighbors(n));
|
|
286
269
|
const results = [];
|
|
@@ -295,5 +278,4 @@ const dfs = (graph, node, order, isDirected) => {
|
|
|
295
278
|
});
|
|
296
279
|
return results;
|
|
297
280
|
};
|
|
298
|
-
exports.dfs = dfs;
|
|
299
281
|
//# sourceMappingURL=util.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/antv-dagre/util.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/antv-dagre/util.ts"],"names":[],"mappings":"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"}
|
package/lib/antv-dagre.js
CHANGED
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const util_1 = require("@antv/util");
|
|
7
|
-
const layout_1 = require("./antv-dagre/layout");
|
|
8
|
-
const util_2 = require("./util");
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { Graph } from '@antv/graphlib';
|
|
3
|
+
import { isNumber } from '@antv/util';
|
|
4
|
+
import { layout } from './antv-dagre/layout';
|
|
5
|
+
import { cloneFormatData, formatNodeSize, formatNumberFn } from './util';
|
|
9
6
|
const DEFAULTS_LAYOUT_OPTIONS = {
|
|
10
7
|
rankdir: 'TB',
|
|
11
8
|
nodesep: 50,
|
|
@@ -31,7 +28,7 @@ const DEFAULTS_LAYOUT_OPTIONS = {
|
|
|
31
28
|
* // If you want to assign the positions directly to the nodes, use assign method.
|
|
32
29
|
* await layout.assign(graph, { radius: 20 });
|
|
33
30
|
*/
|
|
34
|
-
class AntVDagreLayout {
|
|
31
|
+
export class AntVDagreLayout {
|
|
35
32
|
constructor(options = {}) {
|
|
36
33
|
this.options = options;
|
|
37
34
|
this.id = 'antv-dagre';
|
|
@@ -41,7 +38,7 @@ class AntVDagreLayout {
|
|
|
41
38
|
* Return the positions of nodes and edges(if needed).
|
|
42
39
|
*/
|
|
43
40
|
execute(graph, options) {
|
|
44
|
-
return
|
|
41
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
45
42
|
return this.genericDagreLayout(false, graph, options);
|
|
46
43
|
});
|
|
47
44
|
}
|
|
@@ -49,28 +46,28 @@ class AntVDagreLayout {
|
|
|
49
46
|
* To directly assign the positions to the nodes.
|
|
50
47
|
*/
|
|
51
48
|
assign(graph, options) {
|
|
52
|
-
return
|
|
49
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
50
|
yield this.genericDagreLayout(true, graph, options);
|
|
54
51
|
});
|
|
55
52
|
}
|
|
56
53
|
genericDagreLayout(assign, graph, options) {
|
|
57
|
-
return
|
|
54
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
58
55
|
const mergedOptions = Object.assign(Object.assign({}, this.options), options);
|
|
59
56
|
const { nodeSize, align, rankdir = 'TB', ranksep, nodesep, ranksepFunc, nodesepFunc, edgeLabelSpace, ranker, nodeOrder, begin, controlPoints, radial, sortByCombo,
|
|
60
57
|
// focusNode,
|
|
61
58
|
preset, } = mergedOptions;
|
|
62
|
-
const g = new
|
|
59
|
+
const g = new Graph({
|
|
63
60
|
tree: [],
|
|
64
61
|
});
|
|
65
|
-
const ranksepfunc =
|
|
66
|
-
const nodesepfunc =
|
|
62
|
+
const ranksepfunc = formatNumberFn(ranksep || 50, ranksepFunc);
|
|
63
|
+
const nodesepfunc = formatNumberFn(nodesep || 50, nodesepFunc);
|
|
67
64
|
let horisep = nodesepfunc;
|
|
68
65
|
let vertisep = ranksepfunc;
|
|
69
66
|
if (rankdir === 'LR' || rankdir === 'RL') {
|
|
70
67
|
horisep = ranksepfunc;
|
|
71
68
|
vertisep = nodesepfunc;
|
|
72
69
|
}
|
|
73
|
-
const nodeSizeFunc =
|
|
70
|
+
const nodeSizeFunc = formatNodeSize(nodeSize, undefined);
|
|
74
71
|
// copy graph to g
|
|
75
72
|
const nodes = graph.getAllNodes();
|
|
76
73
|
const edges = graph.getAllEdges();
|
|
@@ -84,7 +81,7 @@ class AntVDagreLayout {
|
|
|
84
81
|
const width = size + 2 * hori;
|
|
85
82
|
const height = size + 2 * verti;
|
|
86
83
|
const layer = node.data.layer;
|
|
87
|
-
if (
|
|
84
|
+
if (isNumber(layer)) {
|
|
88
85
|
// 如果有layer属性,加入到node的label中
|
|
89
86
|
g.addNode({
|
|
90
87
|
id: node.id,
|
|
@@ -122,11 +119,11 @@ class AntVDagreLayout {
|
|
|
122
119
|
});
|
|
123
120
|
let prevGraph = undefined;
|
|
124
121
|
if (preset === null || preset === void 0 ? void 0 : preset.length) {
|
|
125
|
-
prevGraph = new
|
|
122
|
+
prevGraph = new Graph({
|
|
126
123
|
nodes: preset,
|
|
127
124
|
});
|
|
128
125
|
}
|
|
129
|
-
|
|
126
|
+
layout(g, {
|
|
130
127
|
prevGraph,
|
|
131
128
|
edgeLabelSpace,
|
|
132
129
|
keepNodeOrder: !!nodeOrder,
|
|
@@ -428,7 +425,7 @@ class AntVDagreLayout {
|
|
|
428
425
|
// layout according to the original order in the data.nodes
|
|
429
426
|
layoutNodes = g
|
|
430
427
|
.getAllNodes()
|
|
431
|
-
.map((node) =>
|
|
428
|
+
.map((node) => cloneFormatData(node));
|
|
432
429
|
const layoutEdges = g.getAllEdges();
|
|
433
430
|
if (assign) {
|
|
434
431
|
layoutNodes.forEach((node) => {
|
|
@@ -451,7 +448,6 @@ class AntVDagreLayout {
|
|
|
451
448
|
});
|
|
452
449
|
}
|
|
453
450
|
}
|
|
454
|
-
exports.AntVDagreLayout = AntVDagreLayout;
|
|
455
451
|
/**
|
|
456
452
|
* Format controlPoints to avoid polylines crossing nodes
|
|
457
453
|
* @param points
|