@antv/layout 0.2.0 → 0.2.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 (297) hide show
  1. package/dist/layout.min.js +1 -1
  2. package/dist/layout.min.js.LICENSE.txt +0 -9
  3. package/dist/layout.min.js.map +1 -1
  4. package/es/layout/circular.js.map +1 -1
  5. package/es/layout/comboCombined.js +3 -19
  6. package/es/layout/comboCombined.js.map +1 -1
  7. package/es/layout/concentric.js.map +1 -1
  8. package/es/layout/dagre/graph.d.ts +91 -0
  9. package/es/layout/dagre/graph.js +4 -0
  10. package/es/layout/dagre/graph.js.map +1 -0
  11. package/es/layout/dagre/index.d.ts +3 -4
  12. package/es/layout/dagre/index.js +0 -2
  13. package/es/layout/dagre/index.js.map +1 -1
  14. package/es/layout/dagre/src/acyclic.d.ts +1 -2
  15. package/es/layout/dagre/src/acyclic.js +7 -7
  16. package/es/layout/dagre/src/acyclic.js.map +1 -1
  17. package/es/layout/dagre/src/add-border-segments.d.ts +1 -2
  18. package/es/layout/dagre/src/add-border-segments.js +5 -5
  19. package/es/layout/dagre/src/add-border-segments.js.map +1 -1
  20. package/es/layout/dagre/src/coordinate-system.d.ts +1 -2
  21. package/es/layout/dagre/src/coordinate-system.js +15 -5
  22. package/es/layout/dagre/src/coordinate-system.js.map +1 -1
  23. package/es/layout/dagre/src/data/list.d.ts +9 -5
  24. package/es/layout/dagre/src/data/list.js +25 -27
  25. package/es/layout/dagre/src/data/list.js.map +1 -1
  26. package/es/layout/dagre/src/debug.d.ts +2 -3
  27. package/es/layout/dagre/src/debug.js +3 -5
  28. package/es/layout/dagre/src/debug.js.map +1 -1
  29. package/es/layout/dagre/src/greedy-fas.d.ts +2 -3
  30. package/es/layout/dagre/src/greedy-fas.js +16 -15
  31. package/es/layout/dagre/src/greedy-fas.js.map +1 -1
  32. package/es/layout/dagre/src/layout.d.ts +2 -3
  33. package/es/layout/dagre/src/layout.js +170 -91
  34. package/es/layout/dagre/src/layout.js.map +1 -1
  35. package/es/layout/dagre/src/nesting-graph.d.ts +1 -2
  36. package/es/layout/dagre/src/nesting-graph.js +15 -10
  37. package/es/layout/dagre/src/nesting-graph.js.map +1 -1
  38. package/es/layout/dagre/src/normalize.d.ts +1 -2
  39. package/es/layout/dagre/src/normalize.js +12 -11
  40. package/es/layout/dagre/src/normalize.js.map +1 -1
  41. package/es/layout/dagre/src/order/add-subgraph-constraints.d.ts +1 -2
  42. package/es/layout/dagre/src/order/add-subgraph-constraints.js.map +1 -1
  43. package/es/layout/dagre/src/order/barycenter.d.ts +1 -2
  44. package/es/layout/dagre/src/order/barycenter.js.map +1 -1
  45. package/es/layout/dagre/src/order/build-layer-graph.d.ts +2 -3
  46. package/es/layout/dagre/src/order/build-layer-graph.js +12 -8
  47. package/es/layout/dagre/src/order/build-layer-graph.js.map +1 -1
  48. package/es/layout/dagre/src/order/cross-count.d.ts +2 -3
  49. package/es/layout/dagre/src/order/cross-count.js +13 -12
  50. package/es/layout/dagre/src/order/cross-count.js.map +1 -1
  51. package/es/layout/dagre/src/order/index.d.ts +2 -3
  52. package/es/layout/dagre/src/order/index.js +17 -15
  53. package/es/layout/dagre/src/order/index.js.map +1 -1
  54. package/es/layout/dagre/src/order/init-data-order.d.ts +1 -2
  55. package/es/layout/dagre/src/order/init-data-order.js +3 -5
  56. package/es/layout/dagre/src/order/init-data-order.js.map +1 -1
  57. package/es/layout/dagre/src/order/init-order.d.ts +2 -3
  58. package/es/layout/dagre/src/order/init-order.js +1 -2
  59. package/es/layout/dagre/src/order/init-order.js.map +1 -1
  60. package/es/layout/dagre/src/order/resolve-conflicts.d.ts +18 -3
  61. package/es/layout/dagre/src/order/resolve-conflicts.js +9 -29
  62. package/es/layout/dagre/src/order/resolve-conflicts.js.map +1 -1
  63. package/es/layout/dagre/src/order/sort-subgraph.d.ts +6 -3
  64. package/es/layout/dagre/src/order/sort-subgraph.js +19 -14
  65. package/es/layout/dagre/src/order/sort-subgraph.js.map +1 -1
  66. package/es/layout/dagre/src/order/sort.d.ts +6 -1
  67. package/es/layout/dagre/src/order/sort.js +2 -2
  68. package/es/layout/dagre/src/order/sort.js.map +1 -1
  69. package/es/layout/dagre/src/parent-dummy-chains.d.ts +1 -2
  70. package/es/layout/dagre/src/parent-dummy-chains.js +47 -44
  71. package/es/layout/dagre/src/parent-dummy-chains.js.map +1 -1
  72. package/es/layout/dagre/src/position/bk.d.ts +22 -31
  73. package/es/layout/dagre/src/position/bk.js +49 -83
  74. package/es/layout/dagre/src/position/bk.js.map +1 -1
  75. package/es/layout/dagre/src/position/index.d.ts +1 -2
  76. package/es/layout/dagre/src/position/index.js +12 -14
  77. package/es/layout/dagre/src/position/index.js.map +1 -1
  78. package/es/layout/dagre/src/rank/feasible-tree.d.ts +5 -6
  79. package/es/layout/dagre/src/rank/feasible-tree.js +1 -2
  80. package/es/layout/dagre/src/rank/feasible-tree.js.map +1 -1
  81. package/es/layout/dagre/src/rank/index.d.ts +2 -3
  82. package/es/layout/dagre/src/rank/index.js.map +1 -1
  83. package/es/layout/dagre/src/rank/network-simplex.d.ts +8 -11
  84. package/es/layout/dagre/src/rank/network-simplex.js +18 -31
  85. package/es/layout/dagre/src/rank/network-simplex.js.map +1 -1
  86. package/es/layout/dagre/src/rank/util.d.ts +4 -5
  87. package/es/layout/dagre/src/rank/util.js +37 -20
  88. package/es/layout/dagre/src/rank/util.js.map +1 -1
  89. package/es/layout/dagre/src/util.d.ts +29 -48
  90. package/es/layout/dagre/src/util.js +91 -101
  91. package/es/layout/dagre/src/util.js.map +1 -1
  92. package/es/layout/dagre.d.ts +1 -1
  93. package/es/layout/dagre.js +28 -24
  94. package/es/layout/dagre.js.map +1 -1
  95. package/es/layout/fruchterman.js.map +1 -1
  96. package/es/layout/gForce.js +14 -6
  97. package/es/layout/gForce.js.map +1 -1
  98. package/lib/index.js +5 -1
  99. package/lib/index.js.map +1 -1
  100. package/lib/layout/circular.js.map +1 -1
  101. package/lib/layout/comboCombined.js +2 -18
  102. package/lib/layout/comboCombined.js.map +1 -1
  103. package/lib/layout/comboForce.js +5 -5
  104. package/lib/layout/comboForce.js.map +1 -1
  105. package/lib/layout/concentric.js.map +1 -1
  106. package/lib/layout/dagre/graph.d.ts +91 -0
  107. package/lib/layout/dagre/graph.js +28 -0
  108. package/lib/layout/dagre/graph.js.map +1 -0
  109. package/lib/layout/dagre/index.d.ts +3 -4
  110. package/lib/layout/dagre/index.js +0 -2
  111. package/lib/layout/dagre/index.js.map +1 -1
  112. package/lib/layout/dagre/src/acyclic.d.ts +1 -2
  113. package/lib/layout/dagre/src/acyclic.js +7 -7
  114. package/lib/layout/dagre/src/acyclic.js.map +1 -1
  115. package/lib/layout/dagre/src/add-border-segments.d.ts +1 -2
  116. package/lib/layout/dagre/src/add-border-segments.js +5 -8
  117. package/lib/layout/dagre/src/add-border-segments.js.map +1 -1
  118. package/lib/layout/dagre/src/coordinate-system.d.ts +1 -2
  119. package/lib/layout/dagre/src/coordinate-system.js +15 -5
  120. package/lib/layout/dagre/src/coordinate-system.js.map +1 -1
  121. package/lib/layout/dagre/src/data/list.d.ts +9 -5
  122. package/lib/layout/dagre/src/data/list.js +25 -26
  123. package/lib/layout/dagre/src/data/list.js.map +1 -1
  124. package/lib/layout/dagre/src/debug.d.ts +2 -3
  125. package/lib/layout/dagre/src/debug.js +6 -11
  126. package/lib/layout/dagre/src/debug.js.map +1 -1
  127. package/lib/layout/dagre/src/greedy-fas.d.ts +2 -3
  128. package/lib/layout/dagre/src/greedy-fas.js +41 -15
  129. package/lib/layout/dagre/src/greedy-fas.js.map +1 -1
  130. package/lib/layout/dagre/src/layout.d.ts +2 -3
  131. package/lib/layout/dagre/src/layout.js +171 -100
  132. package/lib/layout/dagre/src/layout.js.map +1 -1
  133. package/lib/layout/dagre/src/nesting-graph.d.ts +1 -2
  134. package/lib/layout/dagre/src/nesting-graph.js +15 -13
  135. package/lib/layout/dagre/src/nesting-graph.js.map +1 -1
  136. package/lib/layout/dagre/src/normalize.d.ts +1 -2
  137. package/lib/layout/dagre/src/normalize.js +12 -14
  138. package/lib/layout/dagre/src/normalize.js.map +1 -1
  139. package/lib/layout/dagre/src/order/add-subgraph-constraints.d.ts +1 -2
  140. package/lib/layout/dagre/src/order/add-subgraph-constraints.js.map +1 -1
  141. package/lib/layout/dagre/src/order/barycenter.d.ts +1 -2
  142. package/lib/layout/dagre/src/order/barycenter.js.map +1 -1
  143. package/lib/layout/dagre/src/order/build-layer-graph.d.ts +2 -3
  144. package/lib/layout/dagre/src/order/build-layer-graph.js +13 -12
  145. package/lib/layout/dagre/src/order/build-layer-graph.js.map +1 -1
  146. package/lib/layout/dagre/src/order/cross-count.d.ts +2 -3
  147. package/lib/layout/dagre/src/order/cross-count.js +14 -13
  148. package/lib/layout/dagre/src/order/cross-count.js.map +1 -1
  149. package/lib/layout/dagre/src/order/index.d.ts +2 -3
  150. package/lib/layout/dagre/src/order/index.js +15 -13
  151. package/lib/layout/dagre/src/order/index.js.map +1 -1
  152. package/lib/layout/dagre/src/order/init-data-order.d.ts +1 -2
  153. package/lib/layout/dagre/src/order/init-data-order.js +3 -5
  154. package/lib/layout/dagre/src/order/init-data-order.js.map +1 -1
  155. package/lib/layout/dagre/src/order/init-order.d.ts +2 -3
  156. package/lib/layout/dagre/src/order/init-order.js +1 -2
  157. package/lib/layout/dagre/src/order/init-order.js.map +1 -1
  158. package/lib/layout/dagre/src/order/resolve-conflicts.d.ts +18 -3
  159. package/lib/layout/dagre/src/order/resolve-conflicts.js +9 -29
  160. package/lib/layout/dagre/src/order/resolve-conflicts.js.map +1 -1
  161. package/lib/layout/dagre/src/order/sort-subgraph.d.ts +6 -3
  162. package/lib/layout/dagre/src/order/sort-subgraph.js +16 -11
  163. package/lib/layout/dagre/src/order/sort-subgraph.js.map +1 -1
  164. package/lib/layout/dagre/src/order/sort.d.ts +6 -1
  165. package/lib/layout/dagre/src/order/sort.js +2 -5
  166. package/lib/layout/dagre/src/order/sort.js.map +1 -1
  167. package/lib/layout/dagre/src/parent-dummy-chains.d.ts +1 -2
  168. package/lib/layout/dagre/src/parent-dummy-chains.js +47 -44
  169. package/lib/layout/dagre/src/parent-dummy-chains.js.map +1 -1
  170. package/lib/layout/dagre/src/position/bk.d.ts +22 -31
  171. package/lib/layout/dagre/src/position/bk.js +75 -85
  172. package/lib/layout/dagre/src/position/bk.js.map +1 -1
  173. package/lib/layout/dagre/src/position/index.d.ts +1 -2
  174. package/lib/layout/dagre/src/position/index.js +14 -17
  175. package/lib/layout/dagre/src/position/index.js.map +1 -1
  176. package/lib/layout/dagre/src/rank/feasible-tree.d.ts +5 -6
  177. package/lib/layout/dagre/src/rank/feasible-tree.js +3 -7
  178. package/lib/layout/dagre/src/rank/feasible-tree.js.map +1 -1
  179. package/lib/layout/dagre/src/rank/index.d.ts +2 -3
  180. package/lib/layout/dagre/src/rank/index.js.map +1 -1
  181. package/lib/layout/dagre/src/rank/network-simplex.d.ts +8 -11
  182. package/lib/layout/dagre/src/rank/network-simplex.js +27 -35
  183. package/lib/layout/dagre/src/rank/network-simplex.js.map +1 -1
  184. package/lib/layout/dagre/src/rank/util.d.ts +4 -5
  185. package/lib/layout/dagre/src/rank/util.js +36 -19
  186. package/lib/layout/dagre/src/rank/util.js.map +1 -1
  187. package/lib/layout/dagre/src/util.d.ts +29 -48
  188. package/lib/layout/dagre/src/util.js +80 -92
  189. package/lib/layout/dagre/src/util.js.map +1 -1
  190. package/lib/layout/dagre.d.ts +1 -1
  191. package/lib/layout/dagre.js +27 -23
  192. package/lib/layout/dagre.js.map +1 -1
  193. package/lib/layout/er/core.js +5 -1
  194. package/lib/layout/er/core.js.map +1 -1
  195. package/lib/layout/force/force-in-a-box.js +7 -3
  196. package/lib/layout/force/force-in-a-box.js.map +1 -1
  197. package/lib/layout/force/force.js +5 -1
  198. package/lib/layout/force/force.js.map +1 -1
  199. package/lib/layout/force/index.js +5 -1
  200. package/lib/layout/force/index.js.map +1 -1
  201. package/lib/layout/fruchterman.js.map +1 -1
  202. package/lib/layout/gForce.js +10 -2
  203. package/lib/layout/gForce.js.map +1 -1
  204. package/lib/layout/grid.js +2 -2
  205. package/lib/layout/grid.js.map +1 -1
  206. package/lib/layout/index.js +5 -1
  207. package/lib/layout/index.js.map +1 -1
  208. package/lib/layout/radial/index.js +5 -1
  209. package/lib/layout/radial/index.js.map +1 -1
  210. package/lib/registy/index.js +1 -1
  211. package/lib/registy/index.js.map +1 -1
  212. package/lib/util/index.js +5 -1
  213. package/lib/util/index.js.map +1 -1
  214. package/package.json +3 -2
  215. package/src/index.ts +7 -0
  216. package/src/layout/base.ts +54 -0
  217. package/src/layout/circular.ts +369 -0
  218. package/src/layout/comboCombined.ts +390 -0
  219. package/src/layout/comboForce.ts +873 -0
  220. package/src/layout/concentric.ts +289 -0
  221. package/src/layout/constants.ts +21 -0
  222. package/src/layout/dagre/graph.ts +104 -0
  223. package/src/layout/dagre/index.ts +31 -0
  224. package/src/layout/dagre/src/acyclic.ts +58 -0
  225. package/src/layout/dagre/src/add-border-segments.ts +47 -0
  226. package/src/layout/dagre/src/coordinate-system.ts +77 -0
  227. package/src/layout/dagre/src/data/list.ts +60 -0
  228. package/src/layout/dagre/src/debug.ts +30 -0
  229. package/src/layout/dagre/src/greedy-fas.ts +144 -0
  230. package/src/layout/dagre/src/layout.ts +580 -0
  231. package/src/layout/dagre/src/nesting-graph.ts +143 -0
  232. package/src/layout/dagre/src/normalize.ts +96 -0
  233. package/src/layout/dagre/src/order/add-subgraph-constraints.ts +29 -0
  234. package/src/layout/dagre/src/order/barycenter.ts +26 -0
  235. package/src/layout/dagre/src/order/build-layer-graph.ts +82 -0
  236. package/src/layout/dagre/src/order/cross-count.ts +77 -0
  237. package/src/layout/dagre/src/order/index.ts +105 -0
  238. package/src/layout/dagre/src/order/init-data-order.ts +27 -0
  239. package/src/layout/dagre/src/order/init-order.ts +56 -0
  240. package/src/layout/dagre/src/order/resolve-conflicts.ts +152 -0
  241. package/src/layout/dagre/src/order/sort-subgraph.ts +105 -0
  242. package/src/layout/dagre/src/order/sort.ts +76 -0
  243. package/src/layout/dagre/src/parent-dummy-chains.ts +102 -0
  244. package/src/layout/dagre/src/position/bk.ts +494 -0
  245. package/src/layout/dagre/src/position/index.ts +82 -0
  246. package/src/layout/dagre/src/rank/feasible-tree.ts +165 -0
  247. package/src/layout/dagre/src/rank/index.ts +54 -0
  248. package/src/layout/dagre/src/rank/network-simplex.ts +225 -0
  249. package/src/layout/dagre/src/rank/util.ts +157 -0
  250. package/src/layout/dagre/src/util.ts +308 -0
  251. package/src/layout/dagre.ts +423 -0
  252. package/src/layout/dagreCompound.ts +518 -0
  253. package/src/layout/er/core.ts +117 -0
  254. package/src/layout/er/forceGrid.ts +95 -0
  255. package/src/layout/er/grid.ts +185 -0
  256. package/src/layout/er/index.ts +68 -0
  257. package/src/layout/er/mysqlWorkbench.ts +345 -0
  258. package/src/layout/er/type.ts +39 -0
  259. package/src/layout/force/force-in-a-box.ts +400 -0
  260. package/src/layout/force/force.ts +391 -0
  261. package/src/layout/force/index.ts +1 -0
  262. package/src/layout/forceAtlas2/body.ts +115 -0
  263. package/src/layout/forceAtlas2/index.ts +556 -0
  264. package/src/layout/forceAtlas2/quad.ts +115 -0
  265. package/src/layout/forceAtlas2/quadTree.ts +107 -0
  266. package/src/layout/fruchterman.ts +361 -0
  267. package/src/layout/gForce.ts +487 -0
  268. package/src/layout/gpu/fruchterman.ts +314 -0
  269. package/src/layout/gpu/fruchtermanShader.ts +204 -0
  270. package/src/layout/gpu/gForce.ts +406 -0
  271. package/src/layout/gpu/gForceShader.ts +221 -0
  272. package/src/layout/grid.ts +391 -0
  273. package/src/layout/index.ts +45 -0
  274. package/src/layout/layout.ts +75 -0
  275. package/src/layout/mds.ts +140 -0
  276. package/src/layout/radial/index.ts +1 -0
  277. package/src/layout/radial/mds.ts +51 -0
  278. package/src/layout/radial/radial.ts +500 -0
  279. package/src/layout/radial/radialNonoverlapForce.ts +189 -0
  280. package/src/layout/random.ts +75 -0
  281. package/src/layout/types.ts +421 -0
  282. package/src/registy/index.ts +43 -0
  283. package/src/util/array.ts +1 -0
  284. package/src/util/function.ts +64 -0
  285. package/src/util/gpu.ts +254 -0
  286. package/src/util/index.ts +6 -0
  287. package/src/util/math.ts +158 -0
  288. package/src/util/number.ts +8 -0
  289. package/src/util/object.ts +28 -0
  290. package/src/util/string.ts +18 -0
  291. package/CHANGELOG.md +0 -78
  292. package/es/layout/dagre/src/graphlib.d.ts +0 -2
  293. package/es/layout/dagre/src/graphlib.js +0 -51
  294. package/es/layout/dagre/src/graphlib.js.map +0 -1
  295. package/lib/layout/dagre/src/graphlib.d.ts +0 -2
  296. package/lib/layout/dagre/src/graphlib.js +0 -56
  297. package/lib/layout/dagre/src/graphlib.js.map +0 -1
@@ -1,14 +1,11 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.exchangeEdges = exports.enterEdge = exports.leaveEdge = exports.initLowLimValues = exports.calcCutValue = exports.initCutValues = void 0;
6
4
  var feasible_tree_1 = require("./feasible-tree");
7
5
  var util_1 = require("./util");
8
6
  var util_2 = require("../util");
9
- var graphlib_1 = __importDefault(require("../graphlib"));
10
- var alg = graphlib_1.default.alg;
11
- var preorder = alg.preorder, postorder = alg.postorder;
7
+ var graphlib_1 = require("@antv/graphlib");
8
+ var preorder = graphlib_1.algorithm.preorder, postorder = graphlib_1.algorithm.postorder;
12
9
  /*
13
10
  * The network simplex algorithm assigns ranks to each node in the input graph
14
11
  * and iteratively improves the ranking to reduce the length of edges.
@@ -42,18 +39,17 @@ var preorder = alg.preorder, postorder = alg.postorder;
42
39
  * for Drawing Directed Graphs." The structure of the file roughly follows the
43
40
  * structure of the overall algorithm.
44
41
  */
45
- var networkSimplex = function (g) {
46
- // tslint:disable-next-line
47
- g = (0, util_2.simplify)(g);
42
+ var networkSimplex = function (og) {
43
+ var g = (0, util_2.simplify)(og);
48
44
  (0, util_1.longestPath)(g);
49
45
  var t = (0, feasible_tree_1.feasibleTree)(g);
50
- initLowLimValues(t);
51
- initCutValues(t, g);
46
+ (0, exports.initLowLimValues)(t);
47
+ (0, exports.initCutValues)(t, g);
52
48
  var e;
53
49
  var f;
54
- while ((e = leaveEdge(t))) {
55
- f = enterEdge(t, g, e);
56
- exchangeEdges(t, g, e, f);
50
+ while ((e = (0, exports.leaveEdge)(t))) {
51
+ f = (0, exports.enterEdge)(t, g, e);
52
+ (0, exports.exchangeEdges)(t, g, e, f);
57
53
  }
58
54
  };
59
55
  /*
@@ -66,10 +62,11 @@ var initCutValues = function (t, g) {
66
62
  assignCutValue(t, g, v);
67
63
  });
68
64
  };
65
+ exports.initCutValues = initCutValues;
69
66
  var assignCutValue = function (t, g, child) {
70
67
  var childLab = t.node(child);
71
68
  var parent = childLab.parent;
72
- t.edge(child, parent).cutvalue = calcCutValue(t, g, child);
69
+ t.edgeFromArgs(child, parent).cutvalue = (0, exports.calcCutValue)(t, g, child);
73
70
  };
74
71
  /*
75
72
  * Given the tight tree, its graph, and a child in the graph calculate and
@@ -82,12 +79,12 @@ var calcCutValue = function (t, g, child) {
82
79
  // True if the child is on the tail end of the edge in the directed graph
83
80
  var childIsTail = true;
84
81
  // The graph's view of the tree edge we're inspecting
85
- var graphEdge = g.edge(child, parent);
82
+ var graphEdge = g.edgeFromArgs(child, parent);
86
83
  // The accumulated cut value for the edge between this node and its parent
87
84
  var cutValue = 0;
88
85
  if (!graphEdge) {
89
86
  childIsTail = false;
90
- graphEdge = g.edge(parent, child);
87
+ graphEdge = g.edgeFromArgs(parent, child);
91
88
  }
92
89
  cutValue = graphEdge.weight;
93
90
  (_a = g.nodeEdges(child)) === null || _a === void 0 ? void 0 : _a.forEach(function (e) {
@@ -98,20 +95,19 @@ var calcCutValue = function (t, g, child) {
98
95
  var otherWeight = g.edge(e).weight;
99
96
  cutValue += pointsToHead ? otherWeight : -otherWeight;
100
97
  if (isTreeEdge(t, child, other)) {
101
- var otherCutValue = t.edge(child, other).cutvalue;
98
+ var otherCutValue = t.edgeFromArgs(child, other).cutvalue;
102
99
  cutValue += pointsToHead ? -otherCutValue : otherCutValue;
103
100
  }
104
101
  }
105
102
  });
106
103
  return cutValue;
107
104
  };
105
+ exports.calcCutValue = calcCutValue;
108
106
  var initLowLimValues = function (tree, root) {
109
- if (root !== undefined) {
110
- // tslint:disable-next-line
111
- root = tree.nodes()[0];
112
- }
107
+ if (root === void 0) { root = tree.nodes()[0]; }
113
108
  dfsAssignLowLim(tree, {}, 1, root);
114
109
  };
110
+ exports.initLowLimValues = initLowLimValues;
115
111
  var dfsAssignLowLim = function (tree, visited, nextLim, v, parent) {
116
112
  var _a;
117
113
  var low = nextLim;
@@ -119,7 +115,7 @@ var dfsAssignLowLim = function (tree, visited, nextLim, v, parent) {
119
115
  var label = tree.node(v);
120
116
  visited[v] = true;
121
117
  (_a = tree.neighbors(v)) === null || _a === void 0 ? void 0 : _a.forEach(function (w) {
122
- if (!visited.hasOwnProperty(w)) {
118
+ if (!visited[w]) {
123
119
  useNextLim = dfsAssignLowLim(tree, visited, useNextLim, w, v);
124
120
  }
125
121
  });
@@ -139,6 +135,7 @@ var leaveEdge = function (tree) {
139
135
  return tree.edge(e).cutvalue < 0;
140
136
  });
141
137
  };
138
+ exports.leaveEdge = leaveEdge;
142
139
  var enterEdge = function (t, g, edge) {
143
140
  var v = edge.v;
144
141
  var w = edge.w;
@@ -165,25 +162,27 @@ var enterEdge = function (t, g, edge) {
165
162
  });
166
163
  return (0, util_2.minBy)(candidates, function (edge) { return (0, util_1.slack)(g, edge); });
167
164
  };
165
+ exports.enterEdge = enterEdge;
168
166
  var exchangeEdges = function (t, g, e, f) {
169
167
  var v = e.v;
170
168
  var w = e.w;
171
169
  t.removeEdge(v, w);
172
170
  t.setEdge(f.v, f.w, {});
173
- initLowLimValues(t);
174
- initCutValues(t, g);
171
+ (0, exports.initLowLimValues)(t);
172
+ (0, exports.initCutValues)(t, g);
175
173
  updateRanks(t, g);
176
174
  };
175
+ exports.exchangeEdges = exchangeEdges;
177
176
  var updateRanks = function (t, g) {
178
- var root = t.nodes().find(function (v) { return !g.node(v).parent; });
177
+ var root = t.nodes().find(function (v) { var _a; return !((_a = g.node(v)) === null || _a === void 0 ? void 0 : _a.parent); });
179
178
  var vs = preorder(t, root);
180
179
  vs = vs === null || vs === void 0 ? void 0 : vs.slice(1);
181
180
  vs === null || vs === void 0 ? void 0 : vs.forEach(function (v) {
182
181
  var parent = t.node(v).parent;
183
- var edge = g.edge(v, parent);
182
+ var edge = g.edgeFromArgs(v, parent);
184
183
  var flipped = false;
185
184
  if (!edge) {
186
- edge = g.edge(parent, v);
185
+ edge = g.edgeFromArgs(parent, v);
187
186
  flipped = true;
188
187
  }
189
188
  g.node(v).rank = g.node(parent).rank + (flipped ? edge.minlen : -edge.minlen);
@@ -202,12 +201,5 @@ var isTreeEdge = function (tree, u, v) {
202
201
  var isDescendant = function (tree, vLabel, rootLabel) {
203
202
  return rootLabel.low <= vLabel.lim && vLabel.lim <= rootLabel.lim;
204
203
  };
205
- // Expose some internals for testing purposes
206
- networkSimplex.initLowLimValues = initLowLimValues;
207
- networkSimplex.initCutValues = initCutValues;
208
- networkSimplex.calcCutValue = calcCutValue;
209
- networkSimplex.leaveEdge = leaveEdge;
210
- networkSimplex.enterEdge = enterEdge;
211
- networkSimplex.exchangeEdges = exchangeEdges;
212
204
  exports.default = networkSimplex;
213
205
  //# sourceMappingURL=network-simplex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"network-simplex.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/rank/network-simplex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network-simplex.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/rank/network-simplex.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,11 @@
1
- import { graphlib } from "../../graphlib";
2
- declare type Graph = graphlib.Graph;
1
+ import { Edge, Graph } from "../../graph";
3
2
  declare const longestPath: (g: Graph) => void;
4
3
  declare const longestPathWithLayer: (g: Graph) => void;
5
- declare const slack: (g: Graph, e: any) => number;
6
- export { longestPath, longestPathWithLayer, slack, };
4
+ declare const slack: (g: Graph, e: Edge) => number;
5
+ export { longestPath, longestPathWithLayer, slack };
7
6
  declare const _default: {
8
7
  longestPath: (g: Graph) => void;
9
8
  longestPathWithLayer: (g: Graph) => void;
10
- slack: (g: Graph, e: any) => number;
9
+ slack: (g: Graph, e: Edge) => number;
11
10
  };
12
11
  export default _default;
@@ -28,17 +28,22 @@ var longestPath = function (g) {
28
28
  var dfs = function (v) {
29
29
  var _a;
30
30
  var label = g.node(v);
31
- if (visited.hasOwnProperty(v)) {
31
+ if (visited[v]) {
32
32
  return label.rank;
33
33
  }
34
34
  visited[v] = true;
35
- var lengths = (_a = g.outEdges(v)) === null || _a === void 0 ? void 0 : _a.map(function (e) {
36
- return (dfs(e.w) - g.edge(e).minlen) || Infinity;
35
+ var rank;
36
+ (_a = g.outEdges(v)) === null || _a === void 0 ? void 0 : _a.forEach(function (edgeObj) {
37
+ var wRank = dfs(edgeObj.w);
38
+ var minLen = g.edge(edgeObj).minlen;
39
+ var r = wRank - minLen;
40
+ if (r) {
41
+ if (rank === undefined || r < rank) {
42
+ rank = r;
43
+ }
44
+ }
37
45
  });
38
- var rank = Math.min.apply(Math, lengths);
39
- if (rank === Number.POSITIVE_INFINITY || // return value of _.map([]) for Lodash 3
40
- rank === undefined || // return value of _.map([]) for Lodash 4
41
- rank === null) { // return value of _.map([null])
46
+ if (!rank) {
42
47
  rank = 0;
43
48
  }
44
49
  label.rank = rank;
@@ -51,29 +56,39 @@ var longestPathWithLayer = function (g) {
51
56
  var _a;
52
57
  // 用longest path,找出最深的点
53
58
  var visited = {};
54
- var minRank = 0;
59
+ var minRank;
55
60
  var dfs = function (v) {
56
61
  var _a;
57
62
  var label = g.node(v);
58
- if (visited.hasOwnProperty(v)) {
63
+ if (visited[v]) {
59
64
  return label.rank;
60
65
  }
61
66
  visited[v] = true;
62
- var lengths = (_a = g.outEdges(v)) === null || _a === void 0 ? void 0 : _a.map(function (e) {
63
- return (dfs(e.w) - g.edge(e).minlen) || Infinity;
67
+ var rank;
68
+ (_a = g.outEdges(v)) === null || _a === void 0 ? void 0 : _a.forEach(function (edgeObj) {
69
+ var wRank = dfs(edgeObj.w);
70
+ var minLen = g.edge(edgeObj).minlen;
71
+ var r = wRank - minLen;
72
+ if (r) {
73
+ if (rank === undefined || r < rank) {
74
+ rank = r;
75
+ }
76
+ }
64
77
  });
65
- var rank = Math.min.apply(Math, lengths);
66
- if (rank === Number.POSITIVE_INFINITY || // return value of _.map([]) for Lodash 3
67
- rank === undefined || // return value of _.map([]) for Lodash 4
68
- rank === null) { // return value of _.map([null])
78
+ if (!rank) {
69
79
  rank = 0;
70
80
  }
81
+ if (minRank === undefined || rank < minRank) {
82
+ minRank = rank;
83
+ }
71
84
  label.rank = rank;
72
- minRank = Math.min(label.rank, minRank);
73
- return label.rank;
85
+ return rank;
74
86
  };
75
87
  (_a = g.sources()) === null || _a === void 0 ? void 0 : _a.forEach(function (source) { return dfs(source); });
76
- minRank += 1; // NOTE: 最小的层级是dummy root,+1
88
+ if (minRank === undefined) {
89
+ minRank = 0;
90
+ }
91
+ // minRank += 1; // NOTE: 最小的层级是dummy root,+1
77
92
  // forward一遍,赋值层级
78
93
  var dfsForward = function (v, nextRank) {
79
94
  var _a;
@@ -105,7 +120,9 @@ exports.longestPathWithLayer = longestPathWithLayer;
105
120
  * difference between the length of the edge and its minimum length.
106
121
  */
107
122
  var slack = function (g, e) {
108
- return g.node(e.w).rank - g.node(e.v).rank - g.edge(e).minlen;
123
+ return (g.node(e.w).rank -
124
+ g.node(e.v).rank -
125
+ g.edge(e).minlen);
109
126
  };
110
127
  exports.slack = slack;
111
128
  exports.default = {
@@ -1 +1 @@
1
- {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/rank/util.ts"],"names":[],"mappings":";;;AAIA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,IAAM,WAAW,GAAG,UAAC,CAAQ;;IAC3B,IAAM,OAAO,GAAQ,EAAE,CAAC;IAExB,IAAM,GAAG,GAAG,UAAC,CAAS;;QACpB,IAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;YAC7B,OAAO,KAAK,CAAC,IAAI,CAAC;SACnB;QACD,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QAElB,IAAM,OAAO,GAAG,MAAA,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,0CAAE,GAAG,CAAC,UAAC,CAAM;YACxC,OAAO,CAAE,GAAG,CAAC,CAAC,CAAC,CAAW,CAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;QACzE,CAAC,CAAa,CAAC;QACf,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,OAAR,IAAI,EAAQ,OAAO,CAAC,CAAC;QAEhC,IAAI,IAAI,KAAK,MAAM,CAAC,iBAAiB,IAAI,yCAAyC;YAC9E,IAAI,KAAK,SAAS,IAAI,yCAAyC;YAC/D,IAAI,KAAK,IAAI,EAAE,EAAE,gCAAgC;YACnD,IAAI,GAAG,CAAC,CAAC;SACV;QAED,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAA,CAAC,CAAC,OAAO,EAAE,0CAAE,OAAO,CAAC,UAAC,MAAM,IAAK,OAAA,GAAG,CAAC,MAAa,CAAC,EAAlB,CAAkB,CAAC,CAAC;AACvD,CAAC,CAAC;AAuEA,kCAAW;AArEb,IAAM,oBAAoB,GAAG,UAAC,CAAQ;;IACpC,uBAAuB;IACvB,IAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,IAAM,GAAG,GAAG,UAAC,CAAS;;QACpB,IAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;YAC7B,OAAO,KAAK,CAAC,IAAI,CAAC;SACnB;QACD,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QAElB,IAAM,OAAO,GAAG,MAAA,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,0CAAE,GAAG,CAAC,UAAC,CAAC;YACnC,OAAO,CAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC;QAC/D,CAAC,CAAa,CAAC;QACf,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,OAAR,IAAI,EAAQ,OAAO,CAAC,CAAC;QAEhC,IAAI,IAAI,KAAK,MAAM,CAAC,iBAAiB,IAAI,yCAAyC;YAC9E,IAAI,KAAK,SAAS,IAAI,yCAAyC;YAC/D,IAAI,KAAK,IAAI,EAAE,EAAE,gCAAgC;YACnD,IAAI,GAAG,CAAC,CAAC;SACV;QAED,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QAClB,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxC,OAAO,KAAK,CAAC,IAAI,CAAC;IACpB,CAAC,CAAC;IAEF,MAAA,CAAC,CAAC,OAAO,EAAE,0CAAE,OAAO,CAAC,UAAC,MAAW,IAAK,OAAA,GAAG,CAAC,MAAM,CAAC,EAAX,CAAW,CAAC,CAAC;IAEnD,OAAO,IAAI,CAAC,CAAC,CAAC,4BAA4B;IAE1C,iBAAiB;IACjB,IAAM,UAAU,GAAG,UAAC,CAAS,EAAE,QAAgB;;QAC7C,IAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAExB,IAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAe,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAW,CAAC;QAEpF,YAAY;QACZ,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,GAAG,QAAQ,EAAE;YACrD,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC;SACvB;QAED,WAAW;QACX,MAAA,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,0CAAE,GAAG,CAAC,UAAC,CAAC;YACnB,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,aAAa;IACb,CAAC,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,UAAC,CAAC;QAClB,IAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAe,CAAC,EAAE;YACjC,UAAU,CAAC,CAAC,EAAG,KAAK,CAAC,KAAgB,CAAC,CAAC,CAAC,2BAA2B;SACpE;aAAM;YACJ,KAAK,CAAC,IAAe,IAAI,OAAO,CAAC;SACnC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAYA,oDAAoB;AAVtB;;;GAGG;AACH,IAAM,KAAK,GAAG,UAAC,CAAQ,EAAE,CAAM;IAC7B,OAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAe,GAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAe,GAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAiB,CAAC;AACpG,CAAC,CAAC;AAKA,sBAAK;AAGP,kBAAe;IACb,WAAW,aAAA;IACX,oBAAoB,sBAAA;IACpB,KAAK,OAAA;CACN,CAAC"}
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/rank/util.ts"],"names":[],"mappings":"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"}
@@ -1,50 +1,31 @@
1
- import { graphlib as IGraphLib } from '../graphlib';
2
- declare type IGraph = IGraphLib.Graph;
3
- declare const addDummyNode: (g: IGraph, type: any, attrs: any, name: string) => string;
4
- declare const simplify: (g: IGraph) => any;
5
- declare const asNonCompoundGraph: (g: IGraph) => IGraph;
6
- declare const zipObject: (keys: string[], values: any) => any;
7
- declare const successorWeights: (g: IGraph) => any;
8
- declare const predecessorWeights: (g: IGraph) => any;
9
- declare const intersectRect: (rect: any, point: any) => {
10
- x: any;
11
- y: any;
1
+ import { Graph, Node } from "../graph";
2
+ export declare const addDummyNode: (g: Graph, type: string, attrs: Node<Record<string, any>>, name: string) => string;
3
+ export declare const simplify: (g: Graph) => Graph;
4
+ export declare const asNonCompoundGraph: (g: Graph) => Graph;
5
+ export declare const zipObject: <T = any>(keys: string[], values: T[]) => Record<string, T>;
6
+ export declare const successorWeights: (g: Graph) => Record<string, Record<string, number>>;
7
+ export declare const predecessorWeights: (g: Graph) => Record<string, Record<string, number>>;
8
+ export declare const intersectRect: (rect: {
9
+ x?: number | undefined;
10
+ y?: number | undefined;
11
+ width?: number | undefined;
12
+ height?: number | undefined;
13
+ }, point: {
14
+ x?: number | undefined;
15
+ y?: number | undefined;
16
+ }) => {
17
+ x: number;
18
+ y: number;
12
19
  };
13
- declare const buildLayerMatrix: (g: IGraph) => any;
14
- declare const normalizeRanks: (g: IGraph) => void;
15
- declare const removeEmptyRanks: (g: IGraph) => void;
16
- declare const addBorderNode: (g: IGraph, prefix: string, rank?: number | undefined, order?: number | undefined) => string;
17
- declare const maxRank: (g: IGraph) => number;
18
- declare const partition: (collection: any, fn: any) => {
19
- lhs: any;
20
- rhs: any;
20
+ export declare const buildLayerMatrix: (g: Graph) => string[][];
21
+ export declare const normalizeRanks: (g: Graph) => void;
22
+ export declare const removeEmptyRanks: (g: Graph) => void;
23
+ export declare const addBorderNode: (g: Graph, prefix: string, rank?: number | undefined, order?: number | undefined) => string;
24
+ export declare const maxRank: (g: Graph) => number;
25
+ export declare const partition: <T = any>(collection: T[], fn: (val: T) => boolean) => {
26
+ lhs: T[];
27
+ rhs: T[];
21
28
  };
22
- declare const time: (name: string, fn: () => unknown) => unknown;
23
- declare const notime: (name: string, fn: () => unknown) => unknown;
24
- declare const minBy: (array: any, func: (param: any) => number) => undefined;
25
- export { addDummyNode, simplify, asNonCompoundGraph, successorWeights, predecessorWeights, intersectRect, buildLayerMatrix, normalizeRanks, removeEmptyRanks, addBorderNode, maxRank, partition, time, notime, zipObject, minBy };
26
- declare const _default: {
27
- addDummyNode: (g: IGraph, type: any, attrs: any, name: string) => string;
28
- simplify: (g: IGraph) => any;
29
- asNonCompoundGraph: (g: IGraph) => IGraph;
30
- successorWeights: (g: IGraph) => any;
31
- predecessorWeights: (g: IGraph) => any;
32
- intersectRect: (rect: any, point: any) => {
33
- x: any;
34
- y: any;
35
- };
36
- buildLayerMatrix: (g: IGraph) => any;
37
- normalizeRanks: (g: IGraph) => void;
38
- removeEmptyRanks: (g: IGraph) => void;
39
- addBorderNode: (g: IGraph, prefix: string, rank?: number | undefined, order?: number | undefined) => string;
40
- maxRank: (g: IGraph) => number;
41
- partition: (collection: any, fn: any) => {
42
- lhs: any;
43
- rhs: any;
44
- };
45
- time: (name: string, fn: () => unknown) => unknown;
46
- notime: (name: string, fn: () => unknown) => unknown;
47
- zipObject: (keys: string[], values: any) => any;
48
- minBy: (array: any, func: (param: any) => number) => undefined;
49
- };
50
- export default _default;
29
+ export declare const time: (name: string, fn: () => void) => void;
30
+ export declare const notime: (name: string, fn: () => void) => void;
31
+ export declare const minBy: <T = any>(array: T[], func: (param: T) => number) => T;