@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,41 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- /*
4
- * Given a list of entries of the form {v, barycenter, weight} and a
5
- * constraint graph this function will resolve any conflicts between the
6
- * constraint graph and the barycenters for the entries. If the barycenters for
7
- * an entry would violate a constraint in the constraint graph then we coalesce
8
- * the nodes in the conflict into a new node that respects the contraint and
9
- * aggregates barycenter and weight information.
10
- *
11
- * This implementation is based on the description in Forster, "A Fast and
12
- * Simple Hueristic for Constrained Two-Level Crossing Reduction," thought it
13
- * differs in some specific details.
14
- *
15
- * Pre-conditions:
16
- *
17
- * 1. Each entry has the form {v, barycenter, weight}, or if the node has
18
- * no barycenter, then {v}.
19
- *
20
- * Returns:
21
- *
22
- * A new list of entries of the form {vs, i, barycenter, weight}. The list
23
- * `vs` may either be a singleton or it may be an aggregation of nodes
24
- * ordered such that they do not violate constraints from the constraint
25
- * graph. The property `i` is the lowest original index of any of the
26
- * elements in `vs`.
27
- */
28
3
  var resolveConflicts = function (entries, cg) {
29
4
  var _a, _b, _c;
30
5
  var mappedEntries = {};
31
6
  entries === null || entries === void 0 ? void 0 : entries.forEach(function (entry, i) {
32
- var tmp = mappedEntries[entry.v] = {
7
+ mappedEntries[entry.v] = {
33
8
  i: i,
34
9
  indegree: 0,
35
- "in": [],
10
+ in: [],
36
11
  out: [],
37
12
  vs: [entry.v],
38
13
  };
14
+ var tmp = mappedEntries[entry.v];
39
15
  if (entry.barycenter !== undefined) {
40
16
  tmp.barycenter = entry.barycenter;
41
17
  tmp.weight = entry.weight;
@@ -49,7 +25,6 @@ var resolveConflicts = function (entries, cg) {
49
25
  entryV.out.push(mappedEntries[e.w]);
50
26
  }
51
27
  });
52
- // @ts-ignore
53
28
  var sourceSet = (_c = (_b = Object.values(mappedEntries)).filter) === null || _c === void 0 ? void 0 : _c.call(_b, function (entry) { return !entry.indegree; });
54
29
  return doResolveConflicts(sourceSet);
55
30
  };
@@ -85,7 +60,12 @@ var doResolveConflicts = function (sourceSet) {
85
60
  _loop_1();
86
61
  }
87
62
  var filtered = entries.filter(function (entry) { return !entry.merged; });
88
- var keys = ["vs", "i", "barycenter", "weight"];
63
+ var keys = [
64
+ "vs",
65
+ "i",
66
+ "barycenter",
67
+ "weight",
68
+ ];
89
69
  return filtered.map(function (entry) {
90
70
  var picked = {};
91
71
  keys === null || keys === void 0 ? void 0 : keys.forEach(function (key) {
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-conflicts.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/order/resolve-conflicts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve-conflicts.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/order/resolve-conflicts.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,7 @@
1
- import { graphlib as IGraphLib } from '../../graphlib';
2
- declare type Graph = IGraphLib.Graph;
3
- declare const sortSubgraph: (g: Graph, v: string, cg: Graph, biasRight: any, usePrev?: any) => any;
1
+ import { Graph } from "../../graph";
2
+ declare const sortSubgraph: (g: Graph, v: string, cg: Graph, biasRight?: boolean | undefined, usePrev?: boolean | undefined) => {
3
+ vs: string[];
4
+ barycenter?: number | undefined;
5
+ weight?: number | undefined;
6
+ };
4
7
  export default sortSubgraph;
@@ -34,24 +34,29 @@ var sortSubgraph = function (g, v, cg, biasRight, usePrev) {
34
34
  expandSubgraphs(entries, subgraphs);
35
35
  // 添加fixorder信息到entries里边
36
36
  // TODO: 不考虑复合情况,只用第一个点的fixorder信息,后续考虑更完备的实现
37
- (_a = entries.filter(function (e) { var _a; return !!e.vs || ((_a = e.vs) === null || _a === void 0 ? void 0 : _a.length) > 0; })) === null || _a === void 0 ? void 0 : _a.forEach(function (e) {
37
+ (_a = entries
38
+ .filter(function (e) { return e.vs.length > 0; })) === null || _a === void 0 ? void 0 : _a.forEach(function (e) {
38
39
  var node = g.node(e.vs[0]);
39
- e.fixorder = node.fixorder;
40
- e.order = node.order;
40
+ if (node) {
41
+ e.fixorder = node.fixorder;
42
+ e.order = node.order;
43
+ }
41
44
  });
42
45
  var result = (0, sort_1.default)(entries, biasRight, usePrev);
43
46
  if (bl) {
44
- // @ts-ignore
45
47
  result.vs = [bl, result.vs, br].flat();
46
48
  if ((_b = g.predecessors(bl)) === null || _b === void 0 ? void 0 : _b.length) {
47
- var blPred = g.node(((_c = g.predecessors(bl)) === null || _c === void 0 ? void 0 : _c[0]) || {});
48
- var brPred = g.node(((_d = g.predecessors(br)) === null || _d === void 0 ? void 0 : _d[0]) || {});
49
+ var blPred = g.node(((_c = g.predecessors(bl)) === null || _c === void 0 ? void 0 : _c[0]) || "");
50
+ var brPred = g.node(((_d = g.predecessors(br)) === null || _d === void 0 ? void 0 : _d[0]) || "");
49
51
  if (!result.hasOwnProperty("barycenter")) {
50
52
  result.barycenter = 0;
51
53
  result.weight = 0;
52
54
  }
53
- result.barycenter = (result.barycenter * result.weight +
54
- blPred.order + brPred.order) / (result.weight + 2);
55
+ result.barycenter =
56
+ (result.barycenter * result.weight +
57
+ blPred.order +
58
+ brPred.order) /
59
+ (result.weight + 2);
55
60
  result.weight += 2;
56
61
  }
57
62
  }
@@ -71,9 +76,9 @@ var expandSubgraphs = function (entries, subgraphs) {
71
76
  };
72
77
  var mergeBarycenters = function (target, other) {
73
78
  if (target.barycenter !== undefined) {
74
- target.barycenter = (target.barycenter * target.weight +
75
- other.barycenter * other.weight) /
76
- (target.weight + other.weight);
79
+ target.barycenter =
80
+ (target.barycenter * target.weight + other.barycenter * other.weight) /
81
+ (target.weight + other.weight);
77
82
  target.weight += other.weight;
78
83
  }
79
84
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"sort-subgraph.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/order/sort-subgraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sort-subgraph.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/order/sort-subgraph.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,7 @@
1
- declare const sort: (entries: any, biasRight: any, usePrev: any) => any;
1
+ import { ConflictEntry } from "./resolve-conflicts";
2
+ declare const sort: (entries: ConflictEntry[], biasRight?: boolean | undefined, usePrev?: boolean | undefined) => {
3
+ vs: string[];
4
+ barycenter?: number | undefined;
5
+ weight?: number | undefined;
6
+ };
2
7
  export default sort;
@@ -1,11 +1,8 @@
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 });
6
- var util_1 = __importDefault(require("../util"));
3
+ var util_1 = require("../util");
7
4
  var sort = function (entries, biasRight, usePrev) {
8
- var parts = util_1.default.partition(entries, function (entry) {
5
+ var parts = (0, util_1.partition)(entries, function (entry) {
9
6
  // NOTE: 有fixorder的也可以排
10
7
  return (entry.hasOwnProperty("fixorder") && !isNaN(entry.fixorder)) || entry.hasOwnProperty("barycenter");
11
8
  });
@@ -1 +1 @@
1
- {"version":3,"file":"sort.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/order/sort.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sort.js","sourceRoot":"","sources":["../../../../../src/layout/dagre/src/order/sort.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- import { graphlib } from '../graphlib';
2
- declare type Graph = graphlib.Graph;
1
+ import { Graph } from "../graph";
3
2
  declare const parentDummyChains: (g: Graph) => void;
4
3
  export default parentDummyChains;
@@ -1,10 +1,50 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ // deep first search with both order low for pre, lim for post
4
+ var dfsBothOrder = function (g) {
5
+ var _a;
6
+ var result = {};
7
+ var lim = 0;
8
+ var dfs = function (v) {
9
+ var _a;
10
+ var low = lim;
11
+ (_a = g.children(v)) === null || _a === void 0 ? void 0 : _a.forEach(dfs);
12
+ result[v] = { low: low, lim: lim++ };
13
+ };
14
+ (_a = g.children()) === null || _a === void 0 ? void 0 : _a.forEach(dfs);
15
+ return result;
16
+ };
17
+ // Find a path from v to w through the lowest common ancestor (LCA). Return the
18
+ // full path and the LCA.
19
+ var findPath = function (g, postorderNums, v, w) {
20
+ var vPath = [];
21
+ var wPath = [];
22
+ var low = Math.min(postorderNums[v].low, postorderNums[w].low);
23
+ var lim = Math.max(postorderNums[v].lim, postorderNums[w].lim);
24
+ var parent;
25
+ var lca;
26
+ // Traverse up from v to find the LCA
27
+ parent = v;
28
+ do {
29
+ parent = g.parent(parent);
30
+ vPath.push(parent);
31
+ } while (parent &&
32
+ (postorderNums[parent].low > low || lim > postorderNums[parent].lim));
33
+ lca = parent;
34
+ // Traverse from w to LCA
35
+ parent = w;
36
+ while (parent && parent !== lca) {
37
+ wPath.push(parent);
38
+ parent = g.parent(parent);
39
+ }
40
+ return { lca: lca, path: vPath.concat(wPath.reverse()) };
41
+ };
3
42
  var parentDummyChains = function (g) {
4
43
  var _a;
5
- var postorderNums = postorder(g);
6
- (_a = g.graph().dummyChains) === null || _a === void 0 ? void 0 : _a.forEach(function (v) {
44
+ var postorderNums = dfsBothOrder(g);
45
+ (_a = g.graph().dummyChains) === null || _a === void 0 ? void 0 : _a.forEach(function (startV) {
7
46
  var _a, _b;
47
+ var v = startV;
8
48
  var node = g.node(v);
9
49
  var edgeObj = node.edgeObj;
10
50
  if (!edgeObj)
@@ -18,9 +58,9 @@ var parentDummyChains = function (g) {
18
58
  while (v !== edgeObj.w) {
19
59
  node = g.node(v);
20
60
  if (ascending) {
21
- while ((pathV = path[pathIdx]) !== lca &&
22
- g.node(pathV).maxRank < node.rank) {
61
+ while (pathV !== lca && ((_a = g.node(pathV)) === null || _a === void 0 ? void 0 : _a.maxRank) < node.rank) {
23
62
  pathIdx++;
63
+ pathV = path[pathIdx];
24
64
  }
25
65
  if (pathV === lca) {
26
66
  ascending = false;
@@ -28,53 +68,16 @@ var parentDummyChains = function (g) {
28
68
  }
29
69
  if (!ascending) {
30
70
  while (pathIdx < path.length - 1 &&
31
- ((_a = g.node(pathV = path[pathIdx + 1])) === null || _a === void 0 ? void 0 : _a.minRank) <= node.rank) {
71
+ ((_b = g.node(path[pathIdx + 1])) === null || _b === void 0 ? void 0 : _b.minRank) <=
72
+ node.rank) {
32
73
  pathIdx++;
33
74
  }
34
75
  pathV = path[pathIdx];
35
76
  }
36
77
  g.setParent(v, pathV);
37
- // tslint:disable-next-line
38
- v = (_b = g.successors(v)) === null || _b === void 0 ? void 0 : _b[0];
78
+ v = g.successors(v)[0];
39
79
  }
40
80
  });
41
81
  };
42
- // Find a path from v to w through the lowest common ancestor (LCA). Return the
43
- // full path and the LCA.
44
- var findPath = function (g, postorderNums, v, w) {
45
- var vPath = [];
46
- var wPath = [];
47
- var low = Math.min(postorderNums[v].low, postorderNums[w].low);
48
- var lim = Math.max(postorderNums[v].lim, postorderNums[w].lim);
49
- var parent;
50
- var lca;
51
- // Traverse up from v to find the LCA
52
- parent = v;
53
- do {
54
- parent = g.parent(parent);
55
- vPath.push(parent);
56
- } while (parent &&
57
- (postorderNums[parent].low > low || lim > postorderNums[parent].lim));
58
- lca = parent;
59
- // Traverse from w to LCA
60
- parent = w;
61
- while ((parent = g.parent(parent)) !== lca) {
62
- wPath.push(parent);
63
- }
64
- return { lca: lca, path: vPath.concat(wPath.reverse()) };
65
- };
66
- var postorder = function (g) {
67
- var _a;
68
- var result = {};
69
- var lim = 0;
70
- var dfs = function (v) {
71
- var _a;
72
- var low = lim;
73
- (_a = g.children(v)) === null || _a === void 0 ? void 0 : _a.forEach(dfs);
74
- result[v] = { low: low, lim: lim++ };
75
- };
76
- (_a = g.children()) === null || _a === void 0 ? void 0 : _a.forEach(dfs);
77
- return result;
78
- };
79
82
  exports.default = parentDummyChains;
80
83
  //# sourceMappingURL=parent-dummy-chains.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parent-dummy-chains.js","sourceRoot":"","sources":["../../../../src/layout/dagre/src/parent-dummy-chains.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parent-dummy-chains.js","sourceRoot":"","sources":["../../../../src/layout/dagre/src/parent-dummy-chains.ts"],"names":[],"mappings":";;AAIA,8DAA8D;AAC9D,IAAM,YAAY,GAAG,UAAC,CAAQ;;IAC5B,IAAM,MAAM,GAA8B,EAAE,CAAC;IAC7C,IAAI,GAAG,GAAG,CAAC,CAAC;IAEZ,IAAM,GAAG,GAAG,UAAC,CAAS;;QACpB,IAAM,GAAG,GAAG,GAAG,CAAC;QAChB,MAAA,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,0CAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,KAAA,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC;IAClC,CAAC,CAAC;IACF,MAAA,CAAC,CAAC,QAAQ,EAAE,0CAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IAE3B,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,+EAA+E;AAC/E,yBAAyB;AACzB,IAAM,QAAQ,GAAG,UACf,CAAQ,EACR,aAAwC,EACxC,CAAS,EACT,CAAS;IAET,IAAM,KAAK,GAAG,EAAE,CAAC;IACjB,IAAM,KAAK,GAAG,EAAE,CAAC;IACjB,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACjE,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACjE,IAAI,MAA0B,CAAC;IAC/B,IAAI,GAAuB,CAAC;IAE5B,qCAAqC;IACrC,MAAM,GAAG,CAAC,CAAC;IACX,GAAG;QACD,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACpB,QACC,MAAM;QACN,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EACpE;IACF,GAAG,GAAG,MAAM,CAAC;IAEb,yBAAyB;IACzB,MAAM,GAAG,CAAC,CAAC;IACX,OAAO,MAAM,IAAI,MAAM,KAAK,GAAG,EAAE;QAC/B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;KAC3B;IAED,OAAO,EAAE,GAAG,KAAA,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;AACtD,CAAC,CAAC;AAEF,IAAM,iBAAiB,GAAG,UAAC,CAAQ;;IACjC,IAAM,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;IAEtC,MAAA,CAAC,CAAC,KAAK,EAAE,CAAC,WAAW,0CAAE,OAAO,CAAC,UAAC,MAAM;;QACpC,IAAI,CAAC,GAAG,MAAM,CAAC;QACf,IAAI,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC;QACtB,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,IAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAClE,IAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC3B,IAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC;QACzB,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAE,CAAC;QAC3B,IAAI,SAAS,GAAG,IAAI,CAAC;QAErB,OAAO,CAAC,KAAK,OAAO,CAAC,CAAC,EAAE;YACtB,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC;YAElB,IAAI,SAAS,EAAE;gBACb,OAAO,KAAK,KAAK,GAAG,IAAI,CAAA,MAAA,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,0CAAE,OAAQ,IAAG,IAAI,CAAC,IAAK,EAAE;oBAC5D,OAAO,EAAE,CAAC;oBACV,KAAK,GAAG,IAAI,CAAC,OAAO,CAAE,CAAC;iBACxB;gBAED,IAAI,KAAK,KAAK,GAAG,EAAE;oBACjB,SAAS,GAAG,KAAK,CAAC;iBACnB;aACF;YAED,IAAI,CAAC,SAAS,EAAE;gBACd,OACE,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;oBACzB,CAAC,MAAA,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAE,CAAC,0CAAE,OAAkB;wBAC5C,IAAI,CAAC,IAAe,EACvB;oBACA,OAAO,EAAE,CAAC;iBACX;gBACD,KAAK,GAAG,IAAI,CAAC,OAAO,CAAE,CAAC;aACxB;YAED,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACtB,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC;SACzB;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
@@ -1,32 +1,23 @@
1
- import { graphlib as IGraphLib } from '../../graphlib';
2
- declare type IGraph = IGraphLib.Graph;
3
- declare const findType1Conflicts: (g: IGraph, layering?: any) => {};
4
- declare const findType2Conflicts: (g: IGraph, layering?: any) => {};
5
- declare const addConflict: (conflicts: any, v: number, w: number) => void;
6
- declare const hasConflict: (conflicts: any, v: number, w: number) => any;
7
- declare const verticalAlignment: (g: IGraph, layering: any, conflicts: any, neighborFn: (v: string) => unknown) => {
8
- root: any;
9
- align: any;
1
+ import { Graph as RawGraph } from "@antv/graphlib";
2
+ import { Graph } from "../../graph";
3
+ declare class BlockGraph extends RawGraph<string, string, number> {
4
+ }
5
+ declare type Conflicts = Record<string, Record<string, boolean>>;
6
+ export declare const findType1Conflicts: (g: Graph, layering?: string[][] | undefined) => {};
7
+ export declare const findType2Conflicts: (g: Graph, layering?: string[][] | undefined) => {};
8
+ export declare const findOtherInnerSegmentNode: (g: Graph, v: string) => string | undefined;
9
+ export declare const addConflict: (conflicts: Conflicts, v: string, w: string) => void;
10
+ export declare const hasConflict: (conflicts: Conflicts, v: string, w: string) => boolean;
11
+ export declare const verticalAlignment: (g: Graph, layering: string[][], conflicts: Conflicts, neighborFn: (v: string) => string[]) => {
12
+ root: Record<string, string>;
13
+ align: Record<string, string>;
10
14
  };
11
- declare const horizontalCompaction: (g: IGraph, layering: any, root: string, align: string[], reverseSep: boolean) => any;
12
- declare const findSmallestWidthAlignment: (g: IGraph, xss: any) => undefined;
13
- declare function alignCoordinates(xss: any, alignTo: any): void;
14
- declare const balance: (xss: any, align: string) => any;
15
- declare const positionX: (g: IGraph) => any;
16
- export { positionX, findType1Conflicts, findType2Conflicts, addConflict, hasConflict, verticalAlignment, horizontalCompaction, alignCoordinates, findSmallestWidthAlignment, balance };
17
- declare const _default: {
18
- positionX: (g: IGraph) => any;
19
- findType1Conflicts: (g: IGraph, layering?: any) => {};
20
- findType2Conflicts: (g: IGraph, layering?: any) => {};
21
- addConflict: (conflicts: any, v: number, w: number) => void;
22
- hasConflict: (conflicts: any, v: number, w: number) => any;
23
- verticalAlignment: (g: IGraph, layering: any, conflicts: any, neighborFn: (v: string) => unknown) => {
24
- root: any;
25
- align: any;
26
- };
27
- horizontalCompaction: (g: IGraph, layering: any, root: string, align: string[], reverseSep: boolean) => any;
28
- alignCoordinates: typeof alignCoordinates;
29
- findSmallestWidthAlignment: (g: IGraph, xss: any) => undefined;
30
- balance: (xss: any, align: string) => any;
31
- };
32
- export default _default;
15
+ export declare const horizontalCompaction: (g: Graph, layering: string[][], root: Record<string, string>, align: Record<string, string>, reverseSep?: boolean | undefined) => Record<string, number>;
16
+ export declare const buildBlockGraph: (g: Graph, layering: string[][], root: Record<string, string>, reverseSep?: boolean | undefined) => BlockGraph;
17
+ export declare const findSmallestWidthAlignment: (g: Graph, xss: Record<string, Record<string, number>>) => Record<string, number>;
18
+ export declare function alignCoordinates(xss: Record<string, Record<string, number>>, alignTo: Record<string, number>): void;
19
+ export declare const balance: (xss: Record<string, Record<string, number>>, align?: string | undefined) => Record<string, number>;
20
+ export declare const positionX: (g: Graph) => Record<string, number>;
21
+ export declare const sep: (nodeSep: number, edgeSep: number, reverseSep: boolean) => (g: Graph, v: string, w: string) => number;
22
+ export declare const width: (g: Graph, v: string) => number;
23
+ export {};