@antv/layout 1.2.13 → 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.
Files changed (232) hide show
  1. package/dist/85db61ddc757dae66e04.worker.js +2 -0
  2. package/dist/85db61ddc757dae66e04.worker.js.map +1 -0
  3. package/dist/index.min.js +1 -1
  4. package/dist/index.min.js.map +1 -1
  5. package/lib/{dagre → antv-dagre}/acyclic.d.ts +1 -1
  6. package/lib/antv-dagre/acyclic.js +61 -0
  7. package/lib/antv-dagre/acyclic.js.map +1 -0
  8. package/lib/{dagre → antv-dagre}/add-border-segments.js +12 -12
  9. package/lib/antv-dagre/add-border-segments.js.map +1 -0
  10. package/lib/{dagre → antv-dagre}/coordinate-system.d.ts +2 -1
  11. package/lib/antv-dagre/coordinate-system.js +65 -0
  12. package/lib/antv-dagre/coordinate-system.js.map +1 -0
  13. package/lib/{dagre → antv-dagre}/data/list.d.ts +1 -1
  14. package/lib/{dagre → antv-dagre}/data/list.js +20 -22
  15. package/lib/antv-dagre/data/list.js.map +1 -0
  16. package/lib/{dagre → antv-dagre}/greedy-fas.d.ts +2 -2
  17. package/lib/antv-dagre/greedy-fas.js +136 -0
  18. package/lib/antv-dagre/greedy-fas.js.map +1 -0
  19. package/lib/{dagre → antv-dagre}/layout.d.ts +2 -1
  20. package/lib/{dagre → antv-dagre}/layout.js +125 -127
  21. package/lib/antv-dagre/layout.js.map +1 -0
  22. package/lib/{dagre → antv-dagre}/nesting-graph.js +36 -37
  23. package/lib/antv-dagre/nesting-graph.js.map +1 -0
  24. package/lib/{dagre → antv-dagre}/normalize.d.ts +2 -2
  25. package/lib/{dagre → antv-dagre}/normalize.js +24 -24
  26. package/lib/antv-dagre/normalize.js.map +1 -0
  27. package/lib/{dagre → antv-dagre}/order/add-subgraph-constraints.js +9 -9
  28. package/lib/antv-dagre/order/add-subgraph-constraints.js.map +1 -0
  29. package/lib/{dagre → antv-dagre}/order/barycenter.d.ts +2 -2
  30. package/lib/{dagre → antv-dagre}/order/barycenter.js +8 -8
  31. package/lib/antv-dagre/order/barycenter.js.map +1 -0
  32. package/lib/{dagre → antv-dagre}/order/build-layer-graph.js +18 -22
  33. package/lib/antv-dagre/order/build-layer-graph.js.map +1 -0
  34. package/lib/antv-dagre/order/cross-count.d.ts +3 -0
  35. package/lib/{dagre → antv-dagre}/order/cross-count.js +17 -17
  36. package/lib/antv-dagre/order/cross-count.js.map +1 -0
  37. package/lib/{dagre → antv-dagre}/order/index.d.ts +1 -1
  38. package/lib/{dagre → antv-dagre}/order/index.js +35 -35
  39. package/lib/antv-dagre/order/index.js.map +1 -0
  40. package/lib/{dagre → antv-dagre}/order/init-data-order.js +8 -9
  41. package/lib/antv-dagre/order/init-data-order.js.map +1 -0
  42. package/lib/antv-dagre/order/init-order.js +47 -0
  43. package/lib/antv-dagre/order/init-order.js.map +1 -0
  44. package/lib/{dagre → antv-dagre}/order/resolve-conflicts.d.ts +3 -3
  45. package/lib/{dagre → antv-dagre}/order/resolve-conflicts.js +32 -35
  46. package/lib/antv-dagre/order/resolve-conflicts.js.map +1 -0
  47. package/lib/{dagre → antv-dagre}/order/sort-subgraph.js +20 -20
  48. package/lib/antv-dagre/order/sort-subgraph.js.map +1 -0
  49. package/lib/{dagre → antv-dagre}/order/sort.d.ts +2 -2
  50. package/lib/{dagre → antv-dagre}/order/sort.js +19 -19
  51. package/lib/antv-dagre/order/sort.js.map +1 -0
  52. package/lib/{dagre → antv-dagre}/parent-dummy-chains.js +28 -28
  53. package/lib/antv-dagre/parent-dummy-chains.js.map +1 -0
  54. package/lib/{dagre → antv-dagre}/position/bk.d.ts +5 -4
  55. package/lib/{dagre → antv-dagre}/position/bk.js +140 -143
  56. package/lib/antv-dagre/position/bk.js.map +1 -0
  57. package/lib/{dagre → antv-dagre}/position/index.d.ts +2 -1
  58. package/lib/antv-dagre/position/index.js +51 -0
  59. package/lib/antv-dagre/position/index.js.map +1 -0
  60. package/lib/{dagre → antv-dagre}/rank/feasible-tree.d.ts +2 -2
  61. package/lib/{dagre → antv-dagre}/rank/feasible-tree.js +32 -32
  62. package/lib/antv-dagre/rank/feasible-tree.js.map +1 -0
  63. package/lib/antv-dagre/rank/index.d.ts +2 -0
  64. package/lib/{dagre → antv-dagre}/rank/index.js +10 -10
  65. package/lib/antv-dagre/rank/index.js.map +1 -0
  66. package/lib/{dagre → antv-dagre}/rank/network-simplex.d.ts +2 -2
  67. package/lib/{dagre → antv-dagre}/rank/network-simplex.js +70 -71
  68. package/lib/antv-dagre/rank/network-simplex.js.map +1 -0
  69. package/lib/{dagre → antv-dagre}/rank/util.d.ts +2 -2
  70. package/lib/{dagre → antv-dagre}/rank/util.js +31 -31
  71. package/lib/antv-dagre/rank/util.js.map +1 -0
  72. package/lib/antv-dagre/types.d.ts +2 -0
  73. package/lib/antv-dagre/types.js +2 -0
  74. package/lib/antv-dagre/types.js.map +1 -0
  75. package/lib/{dagre → antv-dagre}/util.d.ts +1 -1
  76. package/lib/{dagre → antv-dagre}/util.js +90 -98
  77. package/lib/antv-dagre/util.js.map +1 -0
  78. package/lib/antv-dagre.d.ts +50 -0
  79. package/lib/antv-dagre.js +538 -0
  80. package/lib/antv-dagre.js.map +1 -0
  81. package/lib/bundle-entry.d.ts +2 -18
  82. package/lib/bundle-entry.js +2 -18
  83. package/lib/bundle-entry.js.map +1 -1
  84. package/lib/bundle-supervisor.d.ts +4 -22
  85. package/lib/bundle-supervisor.js +54 -53
  86. package/lib/bundle-supervisor.js.map +1 -1
  87. package/lib/bundle-worker.d.ts +1 -1
  88. package/lib/bundle-worker.js +31 -33
  89. package/lib/bundle-worker.js.map +1 -1
  90. package/lib/circular.d.ts +1 -1
  91. package/lib/circular.js +124 -140
  92. package/lib/circular.js.map +1 -1
  93. package/lib/comboCombined.d.ts +1 -1
  94. package/lib/comboCombined.js +254 -284
  95. package/lib/comboCombined.js.map +1 -1
  96. package/lib/concentric.d.ts +1 -1
  97. package/lib/concentric.js +166 -176
  98. package/lib/concentric.js.map +1 -1
  99. package/lib/d3Force/forceInBox.js +75 -77
  100. package/lib/d3Force/forceInBox.js.map +1 -1
  101. package/lib/d3Force/index.d.ts +2 -2
  102. package/lib/d3Force/index.js +196 -222
  103. package/lib/d3Force/index.js.map +1 -1
  104. package/lib/dagre.d.ts +13 -24
  105. package/lib/dagre.js +57 -542
  106. package/lib/dagre.js.map +1 -1
  107. package/lib/exports.d.ts +17 -0
  108. package/lib/exports.js +17 -0
  109. package/lib/exports.js.map +1 -0
  110. package/lib/force/forceNBody.js +42 -45
  111. package/lib/force/forceNBody.js.map +1 -1
  112. package/lib/force/index.d.ts +1 -1
  113. package/lib/force/index.js +282 -309
  114. package/lib/force/index.js.map +1 -1
  115. package/lib/force/types.d.ts +5 -5
  116. package/lib/forceAtlas2/body.d.ts +1 -1
  117. package/lib/forceAtlas2/body.js +29 -31
  118. package/lib/forceAtlas2/body.js.map +1 -1
  119. package/lib/forceAtlas2/index.d.ts +1 -1
  120. package/lib/forceAtlas2/index.js +206 -218
  121. package/lib/forceAtlas2/index.js.map +1 -1
  122. package/lib/forceAtlas2/quad.d.ts +2 -2
  123. package/lib/forceAtlas2/quad.js +40 -42
  124. package/lib/forceAtlas2/quad.js.map +1 -1
  125. package/lib/forceAtlas2/quadTree.js +16 -17
  126. package/lib/forceAtlas2/quadTree.js.map +1 -1
  127. package/lib/fruchterman.d.ts +1 -1
  128. package/lib/fruchterman.js +185 -205
  129. package/lib/fruchterman.js.map +1 -1
  130. package/lib/grid.d.ts +1 -1
  131. package/lib/grid.js +197 -207
  132. package/lib/grid.js.map +1 -1
  133. package/lib/index.d.ts +1 -15
  134. package/lib/index.js +1 -15
  135. package/lib/index.js.map +1 -1
  136. package/lib/mds.d.ts +1 -1
  137. package/lib/mds.js +68 -78
  138. package/lib/mds.js.map +1 -1
  139. package/lib/radial/index.d.ts +1 -1
  140. package/lib/radial/index.js +177 -184
  141. package/lib/radial/index.js.map +1 -1
  142. package/lib/radial/mds.d.ts +1 -1
  143. package/lib/radial/mds.js +15 -13
  144. package/lib/radial/mds.js.map +1 -1
  145. package/lib/radial/radial-nonoverlap-force.d.ts +2 -2
  146. package/lib/radial/radial-nonoverlap-force.js +36 -37
  147. package/lib/radial/radial-nonoverlap-force.js.map +1 -1
  148. package/lib/random.d.ts +1 -1
  149. package/lib/random.js +53 -66
  150. package/lib/random.js.map +1 -1
  151. package/lib/registry.d.ts +2 -2
  152. package/lib/registry.js +3 -1
  153. package/lib/registry.js.map +1 -1
  154. package/lib/supervisor.d.ts +2 -3
  155. package/lib/supervisor.js +57 -56
  156. package/lib/supervisor.js.map +1 -1
  157. package/lib/types.d.ts +20 -75
  158. package/lib/types.js.map +1 -1
  159. package/lib/util/array.js +1 -1
  160. package/lib/util/array.js.map +1 -1
  161. package/lib/util/common.d.ts +1 -1
  162. package/lib/util/common.js +7 -8
  163. package/lib/util/common.js.map +1 -1
  164. package/lib/util/function.js +23 -25
  165. package/lib/util/function.js.map +1 -1
  166. package/lib/util/index.d.ts +0 -2
  167. package/lib/util/index.js +0 -2
  168. package/lib/util/index.js.map +1 -1
  169. package/lib/util/math.d.ts +1 -26
  170. package/lib/util/math.js +41 -149
  171. package/lib/util/math.js.map +1 -1
  172. package/lib/util/object.d.ts +1 -1
  173. package/lib/util/object.js +13 -13
  174. package/lib/util/object.js.map +1 -1
  175. package/lib/util/size.d.ts +3 -0
  176. package/lib/util/size.js +12 -0
  177. package/lib/util/size.js.map +1 -0
  178. package/lib/worker.js +30 -31
  179. package/lib/worker.js.map +1 -1
  180. package/package.json +9 -5
  181. package/dist/aa1bb0ccc06b11cf79c1.worker.js +0 -2
  182. package/dist/aa1bb0ccc06b11cf79c1.worker.js.map +0 -1
  183. package/lib/dagre/acyclic.js +0 -62
  184. package/lib/dagre/acyclic.js.map +0 -1
  185. package/lib/dagre/add-border-segments.js.map +0 -1
  186. package/lib/dagre/coordinate-system.js +0 -65
  187. package/lib/dagre/coordinate-system.js.map +0 -1
  188. package/lib/dagre/data/list.js.map +0 -1
  189. package/lib/dagre/greedy-fas.js +0 -147
  190. package/lib/dagre/greedy-fas.js.map +0 -1
  191. package/lib/dagre/layout.js.map +0 -1
  192. package/lib/dagre/nesting-graph.js.map +0 -1
  193. package/lib/dagre/normalize.js.map +0 -1
  194. package/lib/dagre/order/add-subgraph-constraints.js.map +0 -1
  195. package/lib/dagre/order/barycenter.js.map +0 -1
  196. package/lib/dagre/order/build-layer-graph.js.map +0 -1
  197. package/lib/dagre/order/cross-count.d.ts +0 -3
  198. package/lib/dagre/order/cross-count.js.map +0 -1
  199. package/lib/dagre/order/index.js.map +0 -1
  200. package/lib/dagre/order/init-data-order.js.map +0 -1
  201. package/lib/dagre/order/init-order.js +0 -50
  202. package/lib/dagre/order/init-order.js.map +0 -1
  203. package/lib/dagre/order/resolve-conflicts.js.map +0 -1
  204. package/lib/dagre/order/sort-subgraph.js.map +0 -1
  205. package/lib/dagre/order/sort.js.map +0 -1
  206. package/lib/dagre/parent-dummy-chains.js.map +0 -1
  207. package/lib/dagre/position/bk.js.map +0 -1
  208. package/lib/dagre/position/index.js +0 -54
  209. package/lib/dagre/position/index.js.map +0 -1
  210. package/lib/dagre/rank/feasible-tree.js.map +0 -1
  211. package/lib/dagre/rank/index.d.ts +0 -2
  212. package/lib/dagre/rank/index.js.map +0 -1
  213. package/lib/dagre/rank/network-simplex.js.map +0 -1
  214. package/lib/dagre/rank/util.js.map +0 -1
  215. package/lib/dagre/util.js.map +0 -1
  216. package/lib/util/gpu.d.ts +0 -45
  217. package/lib/util/gpu.js +0 -214
  218. package/lib/util/gpu.js.map +0 -1
  219. package/lib/util/number.d.ts +0 -1
  220. package/lib/util/number.js +0 -5
  221. package/lib/util/number.js.map +0 -1
  222. package/lib/util/string.d.ts +0 -1
  223. package/lib/util/string.js +0 -15
  224. package/lib/util/string.js.map +0 -1
  225. /package/lib/{dagre → antv-dagre}/add-border-segments.d.ts +0 -0
  226. /package/lib/{dagre → antv-dagre}/nesting-graph.d.ts +0 -0
  227. /package/lib/{dagre → antv-dagre}/order/add-subgraph-constraints.d.ts +0 -0
  228. /package/lib/{dagre → antv-dagre}/order/build-layer-graph.d.ts +0 -0
  229. /package/lib/{dagre → antv-dagre}/order/init-data-order.d.ts +0 -0
  230. /package/lib/{dagre → antv-dagre}/order/init-order.d.ts +0 -0
  231. /package/lib/{dagre → antv-dagre}/order/sort-subgraph.d.ts +0 -0
  232. /package/lib/{dagre → antv-dagre}/parent-dummy-chains.d.ts +0 -0
@@ -1,11 +1,11 @@
1
- import { initOrder } from "./init-order";
2
- import { crossCount } from "./cross-count";
3
- import { buildLayerGraph } from "./build-layer-graph";
4
- import { addSubgraphConstraints } from "./add-subgraph-constraints";
5
- import { sortSubgraph } from "./sort-subgraph";
6
- import { buildLayerMatrix, maxRank } from "../util";
7
- import { Graph } from "@antv/graphlib";
8
- import { clone } from "@antv/util";
1
+ import { Graph } from '@antv/graphlib';
2
+ import { clone } from '@antv/util';
3
+ import { buildLayerMatrix, maxRank } from '../util';
4
+ import { addSubgraphConstraints } from './add-subgraph-constraints';
5
+ import { buildLayerGraph } from './build-layer-graph';
6
+ import { crossCount } from './cross-count';
7
+ import { initOrder } from './init-order';
8
+ import { sortSubgraph } from './sort-subgraph';
9
9
  /*
10
10
  * Applies heuristics to minimize edge crossings in the graph and sets the best
11
11
  * order solution as an order attribute on each node.
@@ -21,24 +21,24 @@ import { clone } from "@antv/util";
21
21
  * 1. Graph nodes will have an "order" attribute based on the results of the
22
22
  * algorithm.
23
23
  */
24
- export var order = function (g, keepNodeOrder) {
25
- var mxRank = maxRank(g);
26
- var range1 = [];
27
- var range2 = [];
28
- for (var i = 1; i < mxRank + 1; i++)
24
+ export const order = (g, keepNodeOrder) => {
25
+ const mxRank = maxRank(g);
26
+ const range1 = [];
27
+ const range2 = [];
28
+ for (let i = 1; i < mxRank + 1; i++)
29
29
  range1.push(i);
30
- for (var i = mxRank - 1; i > -1; i--)
30
+ for (let i = mxRank - 1; i > -1; i--)
31
31
  range2.push(i);
32
- var downLayerGraphs = buildLayerGraphs(g, range1, "in");
33
- var upLayerGraphs = buildLayerGraphs(g, range2, "out");
34
- var layering = initOrder(g);
32
+ const downLayerGraphs = buildLayerGraphs(g, range1, 'in');
33
+ const upLayerGraphs = buildLayerGraphs(g, range2, 'out');
34
+ let layering = initOrder(g);
35
35
  assignOrder(g, layering);
36
- var bestCC = Number.POSITIVE_INFINITY;
37
- var best;
38
- for (var i = 0, lastBest = 0; lastBest < 4; ++i, ++lastBest) {
36
+ let bestCC = Number.POSITIVE_INFINITY;
37
+ let best;
38
+ for (let i = 0, lastBest = 0; lastBest < 4; ++i, ++lastBest) {
39
39
  sweepLayerGraphs(i % 2 ? downLayerGraphs : upLayerGraphs, i % 4 >= 2, false, keepNodeOrder);
40
40
  layering = buildLayerMatrix(g);
41
- var cc = crossCount(g, layering);
41
+ const cc = crossCount(g, layering);
42
42
  if (cc < bestCC) {
43
43
  lastBest = 0;
44
44
  best = clone(layering);
@@ -48,10 +48,10 @@ export var order = function (g, keepNodeOrder) {
48
48
  // consider use previous result, maybe somewhat reduendant
49
49
  layering = initOrder(g);
50
50
  assignOrder(g, layering);
51
- for (var i = 0, lastBest = 0; lastBest < 4; ++i, ++lastBest) {
51
+ for (let i = 0, lastBest = 0; lastBest < 4; ++i, ++lastBest) {
52
52
  sweepLayerGraphs(i % 2 ? downLayerGraphs : upLayerGraphs, i % 4 >= 2, true, keepNodeOrder);
53
53
  layering = buildLayerMatrix(g);
54
- var cc = crossCount(g, layering);
54
+ const cc = crossCount(g, layering);
55
55
  if (cc < bestCC) {
56
56
  lastBest = 0;
57
57
  best = clone(layering);
@@ -60,20 +60,20 @@ export var order = function (g, keepNodeOrder) {
60
60
  }
61
61
  assignOrder(g, best);
62
62
  };
63
- var buildLayerGraphs = function (g, ranks, direction) {
64
- return ranks.map(function (rank) {
63
+ const buildLayerGraphs = (g, ranks, direction) => {
64
+ return ranks.map((rank) => {
65
65
  return buildLayerGraph(g, rank, direction);
66
66
  });
67
67
  };
68
- var sweepLayerGraphs = function (layerGraphs, biasRight, usePrev, keepNodeOrder) {
69
- var cg = new Graph();
70
- layerGraphs === null || layerGraphs === void 0 ? void 0 : layerGraphs.forEach(function (lg) {
68
+ const sweepLayerGraphs = (layerGraphs, biasRight, usePrev, keepNodeOrder) => {
69
+ const cg = new Graph();
70
+ layerGraphs === null || layerGraphs === void 0 ? void 0 : layerGraphs.forEach((lg) => {
71
71
  var _a;
72
72
  // const root = lg.graph().root as string;
73
- var root = lg.getRoots()[0].id;
74
- var sorted = sortSubgraph(lg, root, cg, biasRight, usePrev, keepNodeOrder);
75
- for (var i = 0; i < ((_a = sorted.vs) === null || _a === void 0 ? void 0 : _a.length) || 0; i++) {
76
- var lnode = lg.getNode(sorted.vs[i]);
73
+ const root = lg.getRoots()[0].id;
74
+ const sorted = sortSubgraph(lg, root, cg, biasRight, usePrev, keepNodeOrder);
75
+ for (let i = 0; i < ((_a = sorted.vs) === null || _a === void 0 ? void 0 : _a.length) || 0; i++) {
76
+ const lnode = lg.getNode(sorted.vs[i]);
77
77
  if (lnode) {
78
78
  lnode.data.order = i;
79
79
  }
@@ -81,9 +81,9 @@ var sweepLayerGraphs = function (layerGraphs, biasRight, usePrev, keepNodeOrder)
81
81
  addSubgraphConstraints(lg, cg, sorted.vs);
82
82
  });
83
83
  };
84
- var assignOrder = function (g, layering) {
85
- layering === null || layering === void 0 ? void 0 : layering.forEach(function (layer) {
86
- layer === null || layer === void 0 ? void 0 : layer.forEach(function (v, i) {
84
+ const assignOrder = (g, layering) => {
85
+ layering === null || layering === void 0 ? void 0 : layering.forEach((layer) => {
86
+ layer === null || layer === void 0 ? void 0 : layer.forEach((v, i) => {
87
87
  g.getNode(v).data.order = i;
88
88
  });
89
89
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/antv-dagre/order/index.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,19 @@
1
- import { __read, __spreadArray } from "tslib";
2
1
  /**
3
2
  * 按照数据中的结果设置fixorder
4
3
  */
5
- export var initDataOrder = function (g, nodeOrder) {
6
- var simpleNodes = g.getAllNodes().filter(function (v) {
4
+ export const initDataOrder = (g, nodeOrder) => {
5
+ const simpleNodes = g.getAllNodes().filter((v) => {
7
6
  var _a;
8
7
  return !((_a = g.getChildren(v.id)) === null || _a === void 0 ? void 0 : _a.length);
9
8
  });
10
- var ranks = simpleNodes.map(function (v) { return v.data.rank; });
11
- var maxRank = Math.max.apply(Math, __spreadArray([], __read(ranks)));
12
- var layers = [];
13
- for (var i = 0; i < maxRank + 1; i++) {
9
+ const ranks = simpleNodes.map((v) => v.data.rank);
10
+ const maxRank = Math.max(...ranks);
11
+ const layers = [];
12
+ for (let i = 0; i < maxRank + 1; i++) {
14
13
  layers[i] = [];
15
14
  }
16
- nodeOrder === null || nodeOrder === void 0 ? void 0 : nodeOrder.forEach(function (n) {
17
- var node = g.getNode(n);
15
+ nodeOrder === null || nodeOrder === void 0 ? void 0 : nodeOrder.forEach((n) => {
16
+ const node = g.getNode(n);
18
17
  // 只考虑原有节点,dummy节点需要按照后续算法排出
19
18
  if (!node || node.data.dummy) {
20
19
  return;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init-data-order.js","sourceRoot":"","sources":["../../../src/antv-dagre/order/init-data-order.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAQ,EAAE,SAAgB,EAAE,EAAE;IAC1D,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;;QAC/C,OAAO,CAAC,CAAA,MAAA,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,0CAAE,MAAM,CAAA,CAAC;IACtC,CAAC,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACnC,MAAM,MAAM,GAAW,EAAE,CAAC;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACpC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;KAChB;IAED,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACvB,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1B,4BAA4B;QAC5B,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YAC5B,OAAO;SACR;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,EAAE;YAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC,MAAM,CAAC,CAAC,mBAAmB;YACxE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACjC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -0,0 +1,47 @@
1
+ /*
2
+ * Assigns an initial order value for each node by performing a DFS search
3
+ * starting from nodes in the first rank. Nodes are assigned an order in their
4
+ * rank as they are first visited.
5
+ *
6
+ * This approach comes from Gansner, et al., "A Technique for Drawing Directed
7
+ * Graphs."
8
+ *
9
+ * Returns a layering matrix with an array per layer and each layer sorted by
10
+ * the order of its nodes.
11
+ */
12
+ export const initOrder = (g) => {
13
+ const visited = {};
14
+ // const simpleNodes = g.getAllNodes().filter((v) => {
15
+ // return !g.getChildren(v.id)?.length;
16
+ // });
17
+ const simpleNodes = g.getAllNodes();
18
+ const nodeRanks = simpleNodes.map((v) => { var _a; return (_a = v.data.rank) !== null && _a !== void 0 ? _a : -Infinity; });
19
+ const maxRank = Math.max(...nodeRanks);
20
+ const layers = [];
21
+ for (let i = 0; i < maxRank + 1; i++) {
22
+ layers.push([]);
23
+ }
24
+ const orderedVs = simpleNodes.sort((a, b) => g.getNode(a.id).data.rank - g.getNode(b.id).data.rank);
25
+ // const orderedVs = _.sortBy(simpleNodes, function(v) { return g.node(v)!.rank; });
26
+ // 有fixOrder的,直接排序好放进去
27
+ const beforeSort = orderedVs.filter((n) => {
28
+ return g.getNode(n.id).data.fixorder !== undefined;
29
+ });
30
+ const fixOrderNodes = beforeSort.sort((a, b) => g.getNode(a.id).data.fixorder - g.getNode(b.id).data.fixorder);
31
+ fixOrderNodes === null || fixOrderNodes === void 0 ? void 0 : fixOrderNodes.forEach((n) => {
32
+ if (!isNaN(g.getNode(n.id).data.rank)) {
33
+ layers[g.getNode(n.id).data.rank].push(n.id);
34
+ }
35
+ visited[n.id] = true;
36
+ });
37
+ orderedVs === null || orderedVs === void 0 ? void 0 : orderedVs.forEach((n) => g.dfsTree(n.id, (node) => {
38
+ if (visited.hasOwnProperty(node.id))
39
+ return true;
40
+ visited[node.id] = true;
41
+ if (!isNaN(node.data.rank)) {
42
+ layers[node.data.rank].push(node.id);
43
+ }
44
+ }));
45
+ return layers;
46
+ };
47
+ //# sourceMappingURL=init-order.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init-order.js","sourceRoot":"","sources":["../../../src/antv-dagre/order/init-order.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,CAAQ,EAAE,EAAE;IACpC,MAAM,OAAO,GAA4B,EAAE,CAAC;IAC5C,sDAAsD;IACtD,yCAAyC;IACzC,MAAM;IACN,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IACpC,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,IAAI,CAAC,IAAK,mCAAI,CAAC,QAAQ,CAAA,EAAA,CAAC,CAAC;IAEpE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IACvC,MAAM,MAAM,GAAW,EAAE,CAAC;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACpC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KACjB;IAED,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAChC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAK,CAClE,CAAC;IACF,oFAAoF;IAEpF,sBAAsB;IACtB,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACxC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC;IACrD,CAAC,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CACnC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAS,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAS,CAC1E,CAAC;IACF,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAC3B,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,EAAE;YACtC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAC/C;QACD,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CACvB,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE;QACvB,IAAI,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;QACjD,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,EAAE;YAC3B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACvC;IACH,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
- import { ID } from "@antv/graphlib";
2
- import { Graph } from "../../types";
3
- export declare type ConflictEntry = {
1
+ import { ID } from '@antv/graphlib';
2
+ import { Graph } from '../../types';
3
+ export type ConflictEntry = {
4
4
  i: number;
5
5
  indegree?: number;
6
6
  in?: ConflictEntry[];
@@ -23,39 +23,39 @@
23
23
  * graph. The property `i` is the lowest original index of any of the
24
24
  * elements in `vs`.
25
25
  */
26
- var resolveConflicts = function (entries, cg) {
26
+ const resolveConflicts = (entries, cg) => {
27
27
  var _a, _b, _c;
28
- var mappedEntries = {};
29
- entries === null || entries === void 0 ? void 0 : entries.forEach(function (entry, i) {
28
+ const mappedEntries = {};
29
+ entries === null || entries === void 0 ? void 0 : entries.forEach((entry, i) => {
30
30
  mappedEntries[entry.v] = {
31
- i: i,
31
+ i,
32
32
  indegree: 0,
33
33
  in: [],
34
34
  out: [],
35
35
  vs: [entry.v],
36
36
  };
37
- var tmp = mappedEntries[entry.v];
37
+ const tmp = mappedEntries[entry.v];
38
38
  if (entry.barycenter !== undefined) {
39
39
  tmp.barycenter = entry.barycenter;
40
40
  tmp.weight = entry.weight;
41
41
  }
42
42
  });
43
- (_a = cg.getAllEdges()) === null || _a === void 0 ? void 0 : _a.forEach(function (e) {
44
- var entryV = mappedEntries[e.source];
45
- var entryW = mappedEntries[e.target];
43
+ (_a = cg.getAllEdges()) === null || _a === void 0 ? void 0 : _a.forEach((e) => {
44
+ const entryV = mappedEntries[e.source];
45
+ const entryW = mappedEntries[e.target];
46
46
  if (entryV !== undefined && entryW !== undefined) {
47
47
  entryW.indegree++;
48
48
  entryV.out.push(mappedEntries[e.target]);
49
49
  }
50
50
  });
51
- var sourceSet = (_c = (_b = Object.values(mappedEntries)).filter) === null || _c === void 0 ? void 0 : _c.call(_b, function (entry) { return !entry.indegree; });
51
+ const sourceSet = (_c = (_b = Object.values(mappedEntries)).filter) === null || _c === void 0 ? void 0 : _c.call(_b, (entry) => !entry.indegree);
52
52
  return doResolveConflicts(sourceSet);
53
53
  };
54
- var doResolveConflicts = function (sourceSet) {
54
+ const doResolveConflicts = (sourceSet) => {
55
55
  var _a, _b;
56
- var entries = [];
57
- var handleIn = function (vEntry) {
58
- return function (uEntry) {
56
+ const entries = [];
57
+ const handleIn = (vEntry) => {
58
+ return (uEntry) => {
59
59
  if (uEntry.merged)
60
60
  return;
61
61
  if (uEntry.barycenter === undefined ||
@@ -65,33 +65,30 @@ var doResolveConflicts = function (sourceSet) {
65
65
  }
66
66
  };
67
67
  };
68
- var handleOut = function (vEntry) {
69
- return function (wEntry) {
70
- wEntry["in"].push(vEntry);
68
+ const handleOut = (vEntry) => {
69
+ return (wEntry) => {
70
+ wEntry['in'].push(vEntry);
71
71
  if (--wEntry.indegree === 0) {
72
72
  sourceSet.push(wEntry);
73
73
  }
74
74
  };
75
75
  };
76
- var _loop_1 = function () {
77
- var entry = sourceSet.pop();
78
- entries.push(entry);
79
- (_a = entry["in"].reverse()) === null || _a === void 0 ? void 0 : _a.forEach(function (e) { return handleIn(entry)(e); });
80
- (_b = entry.out) === null || _b === void 0 ? void 0 : _b.forEach(function (e) { return handleOut(entry)(e); });
81
- };
82
76
  while (sourceSet === null || sourceSet === void 0 ? void 0 : sourceSet.length) {
83
- _loop_1();
77
+ const entry = sourceSet.pop();
78
+ entries.push(entry);
79
+ (_a = entry['in'].reverse()) === null || _a === void 0 ? void 0 : _a.forEach((e) => handleIn(entry)(e));
80
+ (_b = entry.out) === null || _b === void 0 ? void 0 : _b.forEach((e) => handleOut(entry)(e));
84
81
  }
85
- var filtered = entries.filter(function (entry) { return !entry.merged; });
86
- var keys = [
87
- "vs",
88
- "i",
89
- "barycenter",
90
- "weight",
82
+ const filtered = entries.filter((entry) => !entry.merged);
83
+ const keys = [
84
+ 'vs',
85
+ 'i',
86
+ 'barycenter',
87
+ 'weight',
91
88
  ];
92
- return filtered.map(function (entry) {
93
- var picked = {};
94
- keys === null || keys === void 0 ? void 0 : keys.forEach(function (key) {
89
+ return filtered.map((entry) => {
90
+ const picked = {};
91
+ keys === null || keys === void 0 ? void 0 : keys.forEach((key) => {
95
92
  if (entry[key] === undefined)
96
93
  return;
97
94
  picked[key] = entry[key];
@@ -99,10 +96,10 @@ var doResolveConflicts = function (sourceSet) {
99
96
  return picked;
100
97
  });
101
98
  };
102
- var mergeEntries = function (target, source) {
99
+ const mergeEntries = (target, source) => {
103
100
  var _a;
104
- var sum = 0;
105
- var weight = 0;
101
+ let sum = 0;
102
+ let weight = 0;
106
103
  if (target.weight) {
107
104
  sum += target.barycenter * target.weight;
108
105
  weight += target.weight;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-conflicts.js","sourceRoot":"","sources":["../../../src/antv-dagre/order/resolve-conflicts.ts"],"names":[],"mappings":"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"}
@@ -1,48 +1,48 @@
1
1
  import { barycenter } from './barycenter';
2
2
  import resolveConflicts from './resolve-conflicts';
3
3
  import { sort } from './sort';
4
- export var sortSubgraph = function (g, v, cg, biasRight, usePrev, keepNodeOrder) {
4
+ export const sortSubgraph = (g, v, cg, biasRight, usePrev, keepNodeOrder) => {
5
5
  var _a, _b, _c, _d;
6
- var movable = g.getChildren(v).map(function (n) { return n.id; });
6
+ let movable = g.getChildren(v).map((n) => n.id);
7
7
  // fixorder的点不参与排序(这个方案不合适,只排了新增节点,和原来的分离)
8
- var node = g.getNode(v);
9
- var bl = node ? node.data.borderLeft : undefined;
10
- var br = node ? node.data.borderRight : undefined;
11
- var subgraphs = {};
8
+ const node = g.getNode(v);
9
+ const bl = node ? node.data.borderLeft : undefined;
10
+ const br = node ? node.data.borderRight : undefined;
11
+ const subgraphs = {};
12
12
  if (bl) {
13
- movable = movable === null || movable === void 0 ? void 0 : movable.filter(function (w) {
13
+ movable = movable === null || movable === void 0 ? void 0 : movable.filter((w) => {
14
14
  return w !== bl && w !== br;
15
15
  });
16
16
  }
17
- var barycenters = barycenter(g, movable || []);
18
- barycenters === null || barycenters === void 0 ? void 0 : barycenters.forEach(function (entry) {
17
+ const barycenters = barycenter(g, movable || []);
18
+ barycenters === null || barycenters === void 0 ? void 0 : barycenters.forEach((entry) => {
19
19
  var _a;
20
20
  if ((_a = g.getChildren(entry.v)) === null || _a === void 0 ? void 0 : _a.length) {
21
- var subgraphResult = sortSubgraph(g, entry.v, cg, biasRight, keepNodeOrder);
21
+ const subgraphResult = sortSubgraph(g, entry.v, cg, biasRight, keepNodeOrder);
22
22
  subgraphs[entry.v] = subgraphResult;
23
23
  if (subgraphResult.hasOwnProperty('barycenter')) {
24
24
  mergeBarycenters(entry, subgraphResult);
25
25
  }
26
26
  }
27
27
  });
28
- var entries = resolveConflicts(barycenters, cg);
28
+ const entries = resolveConflicts(barycenters, cg);
29
29
  expandSubgraphs(entries, subgraphs);
30
30
  // 添加fixorder信息到entries里边
31
31
  // TODO: 不考虑复合情况,只用第一个点的fixorder信息,后续考虑更完备的实现
32
32
  (_a = entries
33
- .filter(function (e) { return e.vs.length > 0; })) === null || _a === void 0 ? void 0 : _a.forEach(function (e) {
34
- var node = g.getNode(e.vs[0]);
33
+ .filter((e) => e.vs.length > 0)) === null || _a === void 0 ? void 0 : _a.forEach((e) => {
34
+ const node = g.getNode(e.vs[0]);
35
35
  if (node) {
36
36
  e.fixorder = node.data.fixorder;
37
37
  e.order = node.data.order;
38
38
  }
39
39
  });
40
- var result = sort(entries, biasRight, usePrev, keepNodeOrder);
40
+ const result = sort(entries, biasRight, usePrev, keepNodeOrder);
41
41
  if (bl) {
42
42
  result.vs = [bl, result.vs, br].flat();
43
43
  if ((_b = g.getPredecessors(bl)) === null || _b === void 0 ? void 0 : _b.length) {
44
- var blPred = g.getNode(((_c = g.getPredecessors(bl)) === null || _c === void 0 ? void 0 : _c[0].id) || '');
45
- var brPred = g.getNode(((_d = g.getPredecessors(br)) === null || _d === void 0 ? void 0 : _d[0].id) || '');
44
+ const blPred = g.getNode(((_c = g.getPredecessors(bl)) === null || _c === void 0 ? void 0 : _c[0].id) || '');
45
+ const brPred = g.getNode(((_d = g.getPredecessors(br)) === null || _d === void 0 ? void 0 : _d[0].id) || '');
46
46
  if (!result.hasOwnProperty('barycenter')) {
47
47
  result.barycenter = 0;
48
48
  result.weight = 0;
@@ -57,10 +57,10 @@ export var sortSubgraph = function (g, v, cg, biasRight, usePrev, keepNodeOrder)
57
57
  }
58
58
  return result;
59
59
  };
60
- var expandSubgraphs = function (entries, subgraphs) {
61
- entries === null || entries === void 0 ? void 0 : entries.forEach(function (entry) {
60
+ const expandSubgraphs = (entries, subgraphs) => {
61
+ entries === null || entries === void 0 ? void 0 : entries.forEach((entry) => {
62
62
  var _a;
63
- var vss = (_a = entry.vs) === null || _a === void 0 ? void 0 : _a.map(function (v) {
63
+ const vss = (_a = entry.vs) === null || _a === void 0 ? void 0 : _a.map((v) => {
64
64
  if (subgraphs[v]) {
65
65
  return subgraphs[v].vs;
66
66
  }
@@ -69,7 +69,7 @@ var expandSubgraphs = function (entries, subgraphs) {
69
69
  entry.vs = vss.flat();
70
70
  });
71
71
  };
72
- var mergeBarycenters = function (target, other) {
72
+ const mergeBarycenters = (target, other) => {
73
73
  if (target.barycenter !== undefined) {
74
74
  target.barycenter =
75
75
  (target.barycenter * target.weight + other.barycenter * other.weight) /
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort-subgraph.js","sourceRoot":"","sources":["../../../src/antv-dagre/order/sort-subgraph.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { ID } from "@antv/graphlib";
2
- import { ConflictEntry } from "./resolve-conflicts";
1
+ import { ID } from '@antv/graphlib';
2
+ import { ConflictEntry } from './resolve-conflicts';
3
3
  export declare const sort: (entries: ConflictEntry[], biasRight?: boolean, usePrev?: boolean, keepNodeOrder?: boolean) => {
4
4
  vs: ID[];
5
5
  barycenter?: number;
@@ -1,22 +1,22 @@
1
- import { partition } from "../util";
2
- export var sort = function (entries, biasRight, usePrev, keepNodeOrder) {
3
- var parts = partition(entries, function (entry) {
4
- var hasFixOrder = entry.hasOwnProperty("fixorder") && !isNaN(entry.fixorder);
1
+ import { partition } from '../util';
2
+ export const sort = (entries, biasRight, usePrev, keepNodeOrder) => {
3
+ const parts = partition(entries, (entry) => {
4
+ const hasFixOrder = entry.hasOwnProperty('fixorder') && !isNaN(entry.fixorder);
5
5
  if (keepNodeOrder) {
6
- return !hasFixOrder && entry.hasOwnProperty("barycenter");
6
+ return !hasFixOrder && entry.hasOwnProperty('barycenter');
7
7
  }
8
8
  // NOTE: 有fixorder的也可以排
9
- return hasFixOrder || entry.hasOwnProperty("barycenter");
9
+ return hasFixOrder || entry.hasOwnProperty('barycenter');
10
10
  });
11
- var sortable = parts.lhs;
12
- var unsortable = parts.rhs.sort(function (a, b) { return -a.i - -b.i; });
13
- var vs = [];
14
- var sum = 0;
15
- var weight = 0;
16
- var vsIndex = 0;
11
+ const sortable = parts.lhs;
12
+ const unsortable = parts.rhs.sort((a, b) => -a.i - -b.i);
13
+ const vs = [];
14
+ let sum = 0;
15
+ let weight = 0;
16
+ let vsIndex = 0;
17
17
  sortable === null || sortable === void 0 ? void 0 : sortable.sort(compareWithBias(!!biasRight, !!usePrev));
18
18
  vsIndex = consumeUnsortable(vs, unsortable, vsIndex);
19
- sortable === null || sortable === void 0 ? void 0 : sortable.forEach(function (entry) {
19
+ sortable === null || sortable === void 0 ? void 0 : sortable.forEach((entry) => {
20
20
  var _a;
21
21
  vsIndex += (_a = entry.vs) === null || _a === void 0 ? void 0 : _a.length;
22
22
  vs.push(entry.vs);
@@ -24,7 +24,7 @@ export var sort = function (entries, biasRight, usePrev, keepNodeOrder) {
24
24
  weight += entry.weight;
25
25
  vsIndex = consumeUnsortable(vs, unsortable, vsIndex);
26
26
  });
27
- var result = {
27
+ const result = {
28
28
  vs: vs.flat(),
29
29
  };
30
30
  if (weight) {
@@ -33,9 +33,9 @@ export var sort = function (entries, biasRight, usePrev, keepNodeOrder) {
33
33
  }
34
34
  return result;
35
35
  };
36
- var consumeUnsortable = function (vs, unsortable, index) {
37
- var iindex = index;
38
- var last;
36
+ const consumeUnsortable = (vs, unsortable, index) => {
37
+ let iindex = index;
38
+ let last;
39
39
  while (unsortable.length &&
40
40
  (last = unsortable[unsortable.length - 1]).i <= iindex) {
41
41
  unsortable.pop();
@@ -47,8 +47,8 @@ var consumeUnsortable = function (vs, unsortable, index) {
47
47
  /**
48
48
  * 配置是否考虑使用之前的布局结果
49
49
  */
50
- var compareWithBias = function (bias, usePrev) {
51
- return function (entryV, entryW) {
50
+ const compareWithBias = (bias, usePrev) => {
51
+ return (entryV, entryW) => {
52
52
  // 排序的时候先判断fixorder,不行再判断重心
53
53
  if (entryV.fixorder !== undefined && entryW.fixorder !== undefined) {
54
54
  return entryV.fixorder - entryW.fixorder;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sort.js","sourceRoot":"","sources":["../../../src/antv-dagre/order/sort.ts"],"names":[],"mappings":"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"}
@@ -1,25 +1,25 @@
1
1
  // deep first search with both order low for pre, lim for post
2
- var dfsBothOrder = function (g) {
3
- var result = {};
4
- var lim = 0;
5
- var dfs = function (v) {
6
- var low = lim;
7
- g.getChildren(v).forEach(function (n) { return dfs(n.id); });
8
- result[v] = { low: low, lim: lim++ };
2
+ const dfsBothOrder = (g) => {
3
+ const result = {};
4
+ let lim = 0;
5
+ const dfs = (v) => {
6
+ const low = lim;
7
+ g.getChildren(v).forEach((n) => dfs(n.id));
8
+ result[v] = { low, lim: lim++ };
9
9
  };
10
- g.getRoots().forEach(function (n) { return dfs(n.id); });
10
+ g.getRoots().forEach((n) => dfs(n.id));
11
11
  return result;
12
12
  };
13
13
  // Find a path from v to w through the lowest common ancestor (LCA). Return the
14
14
  // full path and the LCA.
15
- var findPath = function (g, postorderNums, v, w) {
15
+ const findPath = (g, postorderNums, v, w) => {
16
16
  var _a, _b;
17
- var vPath = [];
18
- var wPath = [];
19
- var low = Math.min(postorderNums[v].low, postorderNums[w].low);
20
- var lim = Math.max(postorderNums[v].lim, postorderNums[w].lim);
21
- var parent;
22
- var lca;
17
+ const vPath = [];
18
+ const wPath = [];
19
+ const low = Math.min(postorderNums[v].low, postorderNums[w].low);
20
+ const lim = Math.max(postorderNums[v].lim, postorderNums[w].lim);
21
+ let parent;
22
+ let lca;
23
23
  // Traverse up from v to find the LCA
24
24
  parent = v;
25
25
  do {
@@ -34,23 +34,23 @@ var findPath = function (g, postorderNums, v, w) {
34
34
  wPath.push(parent);
35
35
  parent = (_b = g.getParent(parent)) === null || _b === void 0 ? void 0 : _b.id;
36
36
  }
37
- return { lca: lca, path: vPath.concat(wPath.reverse()) };
37
+ return { lca, path: vPath.concat(wPath.reverse()) };
38
38
  };
39
- export var parentDummyChains = function (g, dummyChains) {
40
- var postorderNums = dfsBothOrder(g);
41
- dummyChains.forEach(function (startV) {
39
+ export const parentDummyChains = (g, dummyChains) => {
40
+ const postorderNums = dfsBothOrder(g);
41
+ dummyChains.forEach((startV) => {
42
42
  var _a, _b;
43
- var v = startV;
44
- var node = g.getNode(v);
45
- var originalEdge = node.data.originalEdge;
43
+ let v = startV;
44
+ let node = g.getNode(v);
45
+ const originalEdge = node.data.originalEdge;
46
46
  if (!originalEdge)
47
47
  return;
48
- var pathData = findPath(g, postorderNums, originalEdge.source, originalEdge.target);
49
- var path = pathData.path;
50
- var lca = pathData.lca;
51
- var pathIdx = 0;
52
- var pathV = path[pathIdx];
53
- var ascending = true;
48
+ const pathData = findPath(g, postorderNums, originalEdge.source, originalEdge.target);
49
+ const path = pathData.path;
50
+ const lca = pathData.lca;
51
+ let pathIdx = 0;
52
+ let pathV = path[pathIdx];
53
+ let ascending = true;
54
54
  while (v !== originalEdge.target) {
55
55
  node = g.getNode(v);
56
56
  if (ascending) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parent-dummy-chains.js","sourceRoot":"","sources":["../../src/antv-dagre/parent-dummy-chains.ts"],"names":[],"mappings":"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"}