@antv/layout 1.2.5 → 1.2.7

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.
@@ -10,18 +10,18 @@ export default function forceInBox(): {
10
10
  (alpha: number): any;
11
11
  initialize(_: any): void;
12
12
  template: (x: any) => string | any;
13
- groupBy: (x: any) => any | ((d: INode) => any);
13
+ groupBy: (x: any) => ((d: INode) => any) | any;
14
14
  enableGrouping: (x: any) => boolean | any;
15
15
  strength: (x: any) => number | any;
16
16
  centerX: (_: any) => number | any;
17
17
  centerY: (_: any) => number | any;
18
- nodes: (_: any) => any | INode[];
18
+ nodes: (_: any) => INode[] | any;
19
19
  links: (_: any) => any[] | any;
20
- forceNodeSize: (_: any) => any | ((d: any) => number);
21
- nodeSize: (_: any) => any | ((d: any) => number);
22
- forceCharge: (_: any) => any | ((d: any) => number);
23
- forceLinkDistance: (_: any) => any | ((d: any) => number);
24
- forceLinkStrength: (_: any) => any | ((d: any) => number);
20
+ forceNodeSize: (_: any) => ((d: any) => number) | any;
21
+ nodeSize: (_: any) => ((d: any) => number) | any;
22
+ forceCharge: (_: any) => ((d: any) => number) | any;
23
+ forceLinkDistance: (_: any) => ((d: any) => number) | any;
24
+ forceLinkStrength: (_: any) => ((d: any) => number) | any;
25
25
  offset: (_: any) => number[] | any;
26
26
  getFocis: () => any;
27
27
  };
@@ -1,2 +1,2 @@
1
- import { Graph } from "../types";
1
+ import { Graph } from '../types';
2
2
  export declare const addBorderSegments: (g: Graph) => void;
@@ -1,4 +1,4 @@
1
- import { addDummyNode } from "./util";
1
+ import { addDummyNode } from './util';
2
2
  export var addBorderSegments = function (g) {
3
3
  var dfs = function (v) {
4
4
  var children = g.getChildren(v);
@@ -6,12 +6,12 @@ export var addBorderSegments = function (g) {
6
6
  if (children === null || children === void 0 ? void 0 : children.length) {
7
7
  children.forEach(function (child) { return dfs(child.id); });
8
8
  }
9
- if (node.data.hasOwnProperty("minRank")) {
9
+ if (node.data.hasOwnProperty('minRank')) {
10
10
  node.data.borderLeft = [];
11
11
  node.data.borderRight = [];
12
12
  for (var rank = node.data.minRank, maxRank = node.data.maxRank + 1; rank < maxRank; rank += 1) {
13
- addBorderNode(g, "borderLeft", "_bl", v, node, rank);
14
- addBorderNode(g, "borderRight", "_br", v, node, rank);
13
+ addBorderNode(g, 'borderLeft', '_bl', v, node, rank);
14
+ addBorderNode(g, 'borderRight', '_br', v, node, rank);
15
15
  }
16
16
  }
17
17
  };
@@ -21,7 +21,7 @@ var addBorderNode = function (g, prop, prefix, sg, sgNode, rank) {
21
21
  var label = { rank: rank, borderType: prop, width: 0, height: 0 };
22
22
  // @ts-ignore
23
23
  var prev = sgNode.data[prop][rank - 1];
24
- var curr = addDummyNode(g, "border", label, prefix);
24
+ var curr = addDummyNode(g, 'border', label, prefix);
25
25
  // @ts-ignore
26
26
  sgNode.data[prop][rank] = curr;
27
27
  g.setParent(curr, sg);
@@ -1,5 +1,5 @@
1
- import { ID } from "@antv/graphlib";
2
- import { DagreAlign, DagreRankdir, Graph as IGraph } from "../types";
1
+ import { ID } from '@antv/graphlib';
2
+ import { DagreAlign, DagreRankdir, Graph as IGraph } from '../types';
3
3
  export declare const layout: (g: IGraph, options: {
4
4
  keepNodeOrder: boolean;
5
5
  prevGraph: IGraph | null;
@@ -10,7 +10,7 @@ export declare const layout: (g: IGraph, options: {
10
10
  ranksep?: number;
11
11
  acyclicer: string;
12
12
  nodeOrder: ID[];
13
- ranker: "network-simplex" | "tight-tree" | "longest-path";
13
+ ranker: 'network-simplex' | 'tight-tree' | 'longest-path';
14
14
  rankdir: DagreRankdir;
15
15
  }) => {
16
16
  width: number;
@@ -1,17 +1,17 @@
1
1
  import { __assign } from "tslib";
2
- import { Graph } from "@antv/graphlib";
3
- import { isNil } from "@antv/util";
4
- import { run as runAcyclic, undo as undoAcyclic } from "./acyclic";
5
- import { run as runNormalize, undo as undoNormalize } from "./normalize";
6
- import { rank } from "./rank";
7
- import { normalizeRanks, removeEmptyRanks, asNonCompoundGraph, addDummyNode, intersectRect, buildLayerMatrix, } from "./util";
8
- import { parentDummyChains } from "./parent-dummy-chains";
9
- import { run as runNestingGraph, cleanup as cleanupNestingGraph, } from "./nesting-graph";
10
- import { addBorderSegments } from "./add-border-segments";
11
- import { adjust as adjustCoordinateSystem, undo as undoCoordinateSystem, } from "./coordinate-system";
12
- import { order } from "./order";
13
- import { position } from "./position";
14
- import { initDataOrder } from "./order/init-data-order";
2
+ import { Graph } from '@antv/graphlib';
3
+ import { isNil } from '@antv/util';
4
+ import { run as runAcyclic, undo as undoAcyclic } from './acyclic';
5
+ import { run as runNormalize, undo as undoNormalize } from './normalize';
6
+ import { rank } from './rank';
7
+ import { normalizeRanks, removeEmptyRanks, asNonCompoundGraph, addDummyNode, intersectRect, buildLayerMatrix, } from './util';
8
+ import { parentDummyChains } from './parent-dummy-chains';
9
+ import { run as runNestingGraph, cleanup as cleanupNestingGraph, } from './nesting-graph';
10
+ import { addBorderSegments } from './add-border-segments';
11
+ import { adjust as adjustCoordinateSystem, undo as undoCoordinateSystem, } from './coordinate-system';
12
+ import { order } from './order';
13
+ import { position } from './position';
14
+ import { initDataOrder } from './order/init-data-order';
15
15
  // const graphNumAttrs = ["nodesep", "edgesep", "ranksep", "marginx", "marginy"];
16
16
  // const graphDefaults = { ranksep: 50, edgesep: 20, nodesep: 50, rankdir: "tb" };
17
17
  // const graphAttrs = ["acyclicer", "ranker", "rankdir", "align"];
@@ -23,7 +23,7 @@ export var layout = function (g, options) {
23
23
  }
24
24
  var layoutGraph = buildLayoutGraph(g);
25
25
  // 控制是否为边的label留位置(这会影响是否在边中间添加dummy node)
26
- if (!(!edgeLabelSpace)) {
26
+ if (!!edgeLabelSpace) {
27
27
  options.ranksep = makeSpaceForEdgeLabels(layoutGraph, {
28
28
  rankdir: rankdir,
29
29
  ranksep: ranksep,
@@ -35,7 +35,7 @@ export var layout = function (g, options) {
35
35
  dimension = runLayout(layoutGraph, options);
36
36
  }
37
37
  catch (e) {
38
- if (e.message === "Not possible to find intersection inside of the rectangle") {
38
+ if (e.message === 'Not possible to find intersection inside of the rectangle') {
39
39
  console.error("The following error may be caused by improper layer setting, please make sure your manual layer setting does not violate the graph's structure:\n", e);
40
40
  return;
41
41
  }
@@ -45,7 +45,7 @@ export var layout = function (g, options) {
45
45
  return dimension;
46
46
  };
47
47
  var runLayout = function (g, options) {
48
- var acyclicer = options.acyclicer, ranker = options.ranker, _a = options.rankdir, rankdir = _a === void 0 ? "tb" : _a, nodeOrder = options.nodeOrder, keepNodeOrder = options.keepNodeOrder, align = options.align, _b = options.nodesep, nodesep = _b === void 0 ? 50 : _b, _c = options.edgesep, edgesep = _c === void 0 ? 20 : _c, _d = options.ranksep, ranksep = _d === void 0 ? 50 : _d;
48
+ var acyclicer = options.acyclicer, ranker = options.ranker, _a = options.rankdir, rankdir = _a === void 0 ? 'tb' : _a, nodeOrder = options.nodeOrder, keepNodeOrder = options.keepNodeOrder, align = options.align, _b = options.nodesep, nodesep = _b === void 0 ? 50 : _b, _c = options.edgesep, edgesep = _c === void 0 ? 20 : _c, _d = options.ranksep, ranksep = _d === void 0 ? 50 : _d;
49
49
  removeSelfEdges(g);
50
50
  runAcyclic(g, acyclicer);
51
51
  var _e = runNestingGraph(g), nestingRoot = _e.nestingRoot, nodeRankFactor = _e.nodeRankFactor;
@@ -126,7 +126,7 @@ var updateInputGraph = function (inputGraph, layoutGraph) {
126
126
  var inputLabel = inputGraph.getEdge(e.id);
127
127
  var layoutLabel = layoutGraph.getEdge(e.id);
128
128
  inputLabel.data.points = layoutLabel ? layoutLabel.data.points : [];
129
- if (layoutLabel && layoutLabel.data.hasOwnProperty("x")) {
129
+ if (layoutLabel && layoutLabel.data.hasOwnProperty('x')) {
130
130
  inputLabel.data.x = layoutLabel.data.x;
131
131
  inputLabel.data.y = layoutLabel.data.y;
132
132
  }
@@ -134,18 +134,18 @@ var updateInputGraph = function (inputGraph, layoutGraph) {
134
134
  // inputGraph.graph().width = layoutGraph.graph().width;
135
135
  // inputGraph.graph().height = layoutGraph.graph().height;
136
136
  };
137
- var nodeNumAttrs = ["width", "height", "layer", "fixorder"]; // 需要传入layer, fixOrder作为参数参考
137
+ var nodeNumAttrs = ['width', 'height', 'layer', 'fixorder']; // 需要传入layer, fixOrder作为参数参考
138
138
  var nodeDefaults = { width: 0, height: 0 };
139
- var edgeNumAttrs = ["minlen", "weight", "width", "height", "labeloffset"];
139
+ var edgeNumAttrs = ['minlen', 'weight', 'width', 'height', 'labeloffset'];
140
140
  var edgeDefaults = {
141
141
  minlen: 1,
142
142
  weight: 1,
143
143
  width: 0,
144
144
  height: 0,
145
145
  labeloffset: 10,
146
- labelpos: "r",
146
+ labelpos: 'r',
147
147
  };
148
- var edgeAttrs = ["labelpos"];
148
+ var edgeAttrs = ['labelpos'];
149
149
  /*
150
150
  * Constructs a new graph from the input graph, which can be used for layout.
151
151
  * This process copies only whitelisted attributes from the input graph to the
@@ -164,7 +164,9 @@ var buildLayoutGraph = function (inputGraph) {
164
164
  data: __assign({}, defaultAttrs),
165
165
  });
166
166
  }
167
- var parent = inputGraph.getParent(v.id);
167
+ var parent = inputGraph.hasTreeStructure('combo')
168
+ ? inputGraph.getParent(v.id, 'combo')
169
+ : inputGraph.getParent(v.id);
168
170
  if (!isNil(parent)) {
169
171
  if (!g.hasNode(parent.id)) {
170
172
  g.addNode(__assign({}, parent));
@@ -207,8 +209,8 @@ var makeSpaceForEdgeLabels = function (g, options) {
207
209
  g.getAllEdges().forEach(function (edge) {
208
210
  var _a;
209
211
  edge.data.minlen *= 2;
210
- if (((_a = edge.data.labelpos) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== "c") {
211
- if (rankdir === "TB" || rankdir === "BT") {
212
+ if (((_a = edge.data.labelpos) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== 'c') {
213
+ if (rankdir === 'TB' || rankdir === 'BT') {
212
214
  edge.data.width += edge.data.labeloffset;
213
215
  }
214
216
  else {
@@ -233,7 +235,7 @@ var injectEdgeLabelProxies = function (g) {
233
235
  e: e,
234
236
  rank: (w.data.rank - v.data.rank) / 2 + v.data.rank,
235
237
  };
236
- addDummyNode(g, "edge-proxy", label, "_ep");
238
+ addDummyNode(g, 'edge-proxy', label, '_ep');
237
239
  }
238
240
  });
239
241
  };
@@ -251,7 +253,7 @@ var assignRankMinMax = function (g) {
251
253
  };
252
254
  var removeEdgeLabelProxies = function (g) {
253
255
  g.getAllNodes().forEach(function (node) {
254
- if (node.data.dummy === "edge-proxy") {
256
+ if (node.data.dummy === 'edge-proxy') {
255
257
  g.getEdge(node.data.e.id).data.labelRank = node.data.rank;
256
258
  g.removeNode(node.id);
257
259
  }
@@ -289,7 +291,7 @@ var translateGraph = function (g, options) {
289
291
  getExtremes(v);
290
292
  });
291
293
  g.getAllEdges().forEach(function (e) {
292
- if (e === null || e === void 0 ? void 0 : e.data.hasOwnProperty("x")) {
294
+ if (e === null || e === void 0 ? void 0 : e.data.hasOwnProperty('x')) {
293
295
  getExtremes(e);
294
296
  }
295
297
  });
@@ -305,10 +307,10 @@ var translateGraph = function (g, options) {
305
307
  p.x -= minX;
306
308
  p.y -= minY;
307
309
  });
308
- if (edge.data.hasOwnProperty("x")) {
310
+ if (edge.data.hasOwnProperty('x')) {
309
311
  edge.data.x -= minX;
310
312
  }
311
- if (edge.data.hasOwnProperty("y")) {
313
+ if (edge.data.hasOwnProperty('y')) {
312
314
  edge.data.y -= minY;
313
315
  }
314
316
  });
@@ -338,15 +340,15 @@ var assignNodeIntersects = function (g) {
338
340
  };
339
341
  var fixupEdgeLabelCoords = function (g) {
340
342
  g.getAllEdges().forEach(function (edge) {
341
- if (edge.data.hasOwnProperty("x")) {
342
- if (edge.data.labelpos === "l" || edge.data.labelpos === "r") {
343
+ if (edge.data.hasOwnProperty('x')) {
344
+ if (edge.data.labelpos === 'l' || edge.data.labelpos === 'r') {
343
345
  edge.data.width -= edge.data.labeloffset;
344
346
  }
345
347
  switch (edge.data.labelpos) {
346
- case "l":
348
+ case 'l':
347
349
  edge.data.x -= edge.data.width / 2 + edge.data.labeloffset;
348
350
  break;
349
- case "r":
351
+ case 'r':
350
352
  edge.data.x += edge.data.width / 2 + edge.data.labeloffset;
351
353
  break;
352
354
  }
@@ -377,7 +379,7 @@ var removeBorderNodes = function (g) {
377
379
  }
378
380
  });
379
381
  g.getAllNodes().forEach(function (n) {
380
- if (n.data.dummy === "border") {
382
+ if (n.data.dummy === 'border') {
381
383
  g.removeNode(n.id);
382
384
  }
383
385
  });
@@ -403,13 +405,13 @@ var insertSelfEdges = function (g) {
403
405
  var node = g.getNode(v);
404
406
  node.data.order = i + orderShift;
405
407
  (_a = node.data.selfEdges) === null || _a === void 0 ? void 0 : _a.forEach(function (selfEdge) {
406
- addDummyNode(g, "selfedge", {
408
+ addDummyNode(g, 'selfedge', {
407
409
  width: selfEdge.data.width,
408
410
  height: selfEdge.data.height,
409
411
  rank: node.data.rank,
410
412
  order: i + ++orderShift,
411
413
  e: selfEdge,
412
- }, "_se");
414
+ }, '_se');
413
415
  });
414
416
  delete node.data.selfEdges;
415
417
  });
@@ -418,7 +420,7 @@ var insertSelfEdges = function (g) {
418
420
  var positionSelfEdges = function (g) {
419
421
  g.getAllNodes().forEach(function (v) {
420
422
  var node = g.getNode(v.id);
421
- if (node.data.dummy === "selfedge") {
423
+ if (node.data.dummy === 'selfedge') {
422
424
  var selfNode = g.getNode(node.data.e.source);
423
425
  var x = selfNode.data.x + selfNode.data.width / 2;
424
426
  var y = selfNode.data.y;
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/dagre/layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/dagre/layout.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { ID } from "@antv/graphlib";
2
- import { Graph as IGraph } from "../types";
1
+ import { ID } from '@antv/graphlib';
2
+ import { Graph as IGraph } from '../types';
3
3
  declare const run: (g: IGraph) => {
4
4
  nestingRoot: ID;
5
5
  nodeRankFactor: number;
@@ -1,5 +1,5 @@
1
1
  import { __read, __spreadArray } from "tslib";
2
- import { addBorderNode, addDummyNode } from "./util";
2
+ import { addBorderNode, addDummyNode } from './util';
3
3
  /*
4
4
  * A nesting graph creates dummy nodes for the tops and bottoms of subgraphs,
5
5
  * adds appropriate edges to ensure that all cluster nodes are placed between
@@ -24,7 +24,7 @@ import { addBorderNode, addDummyNode } from "./util";
24
24
  * Graphs."
25
25
  */
26
26
  var run = function (g) {
27
- var root = addDummyNode(g, "root", {}, "_root");
27
+ var root = addDummyNode(g, 'root', {}, '_root');
28
28
  var depths = treeDepths(g);
29
29
  var maxDepth = Math.max.apply(Math, __spreadArray([], __read(Object.values(depths))));
30
30
  if (Math.abs(maxDepth) === Infinity) {
@@ -68,8 +68,8 @@ var dfs = function (g, root, nodeSep, weight, height, depths, v) {
68
68
  }
69
69
  return;
70
70
  }
71
- var top = addBorderNode(g, "_bt");
72
- var bottom = addBorderNode(g, "_bb");
71
+ var top = addBorderNode(g, '_bt');
72
+ var bottom = addBorderNode(g, '_bb');
73
73
  var label = g.getNode(v);
74
74
  g.setParent(top, v);
75
75
  label.data.borderTop = top;
@@ -1,3 +1,3 @@
1
- import { ID } from "@antv/graphlib";
2
- import { Graph } from "../../types";
1
+ import { ID } from '@antv/graphlib';
2
+ import { Graph } from '../../types';
3
3
  export declare const addSubgraphConstraints: (g: Graph, cg: Graph, vs: ID[]) => void;
@@ -16,22 +16,26 @@ export var addSubgraphConstraints = function (g, cg, vs) {
16
16
  rootPrev = child.id;
17
17
  }
18
18
  if (prevChild && prevChild !== child.id) {
19
- cg.addNodes([
20
- {
19
+ if (!cg.hasNode(prevChild)) {
20
+ cg.addNode({
21
21
  id: prevChild,
22
22
  data: {},
23
- },
24
- {
23
+ });
24
+ }
25
+ if (!cg.hasNode(child.id)) {
26
+ cg.addNode({
25
27
  id: child.id,
26
28
  data: {},
27
- },
28
- ]);
29
- cg.addEdge({
30
- id: "e" + prevChild + "-" + child.id,
31
- source: prevChild,
32
- target: child.id,
33
- data: {},
34
- });
29
+ });
30
+ }
31
+ if (!cg.hasEdge("e" + prevChild + "-" + child.id)) {
32
+ cg.addEdge({
33
+ id: "e" + prevChild + "-" + child.id,
34
+ source: prevChild,
35
+ target: child.id,
36
+ data: {},
37
+ });
38
+ }
35
39
  return;
36
40
  }
37
41
  child = parent;
@@ -1 +1 @@
1
- {"version":3,"file":"add-subgraph-constraints.js","sourceRoot":"","sources":["../../../src/dagre/order/add-subgraph-constraints.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,IAAM,sBAAsB,GAAG,UAAC,CAAQ,EAAE,EAAS,EAAE,EAAQ;IAClE,IAAM,IAAI,GAAmB,EAAE,CAAC;IAChC,IAAI,QAAY,CAAC;IAEjB,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,OAAO,CAAC,UAAC,CAAC;QACZ,IAAI,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,MAAM,CAAC;QACX,IAAI,SAAa,CAAC;QAClB,OAAO,KAAK,EAAE;YACZ,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,MAAM,EAAE;gBACV,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;aAC5B;iBAAM;gBACL,SAAS,GAAG,QAAQ,CAAC;gBACrB,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC;aACrB;YACD,IAAI,SAAS,IAAI,SAAS,KAAK,KAAK,CAAC,EAAE,EAAE;gBACvC,EAAE,CAAC,QAAQ,CAAC;oBACV;wBACE,EAAE,EAAE,SAAS;wBACb,IAAI,EAAE,EAAE;qBACT;oBACD;wBACE,EAAE,EAAE,KAAK,CAAC,EAAE;wBACZ,IAAI,EAAE,EAAE;qBACT;iBACF,CAAC,CAAC;gBACH,EAAE,CAAC,OAAO,CAAC;oBACT,EAAE,EAAE,MAAI,SAAS,SAAI,KAAK,CAAC,EAAI;oBAC/B,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,KAAK,CAAC,EAAE;oBAChB,IAAI,EAAE,EAAE;iBACT,CAAC,CAAC;gBACH,OAAO;aACR;YACD,KAAK,GAAG,MAAM,CAAC;SAChB;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"add-subgraph-constraints.js","sourceRoot":"","sources":["../../../src/dagre/order/add-subgraph-constraints.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,IAAM,sBAAsB,GAAG,UAAC,CAAQ,EAAE,EAAS,EAAE,EAAQ;IAClE,IAAM,IAAI,GAAmB,EAAE,CAAC;IAChC,IAAI,QAAY,CAAC;IAEjB,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,OAAO,CAAC,UAAC,CAAC;QACZ,IAAI,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,MAAM,CAAC;QACX,IAAI,SAAa,CAAC;QAClB,OAAO,KAAK,EAAE;YACZ,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,MAAM,EAAE;gBACV,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;aAC5B;iBAAM;gBACL,SAAS,GAAG,QAAQ,CAAC;gBACrB,QAAQ,GAAG,KAAK,CAAC,EAAE,CAAC;aACrB;YACD,IAAI,SAAS,IAAI,SAAS,KAAK,KAAK,CAAC,EAAE,EAAE;gBACvC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;oBAC1B,EAAE,CAAC,OAAO,CAAC;wBACT,EAAE,EAAE,SAAS;wBACb,IAAI,EAAE,EAAE;qBACT,CAAC,CAAC;iBACJ;gBACD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;oBACzB,EAAE,CAAC,OAAO,CAAC;wBACT,EAAE,EAAE,KAAK,CAAC,EAAE;wBACZ,IAAI,EAAE,EAAE;qBACT,CAAC,CAAC;iBACJ;gBACD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,MAAI,SAAS,SAAI,KAAK,CAAC,EAAI,CAAC,EAAE;oBAC5C,EAAE,CAAC,OAAO,CAAC;wBACT,EAAE,EAAE,MAAI,SAAS,SAAI,KAAK,CAAC,EAAI;wBAC/B,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,KAAK,CAAC,EAAE;wBAChB,IAAI,EAAE,EAAE;qBACT,CAAC,CAAC;iBACJ;gBACD,OAAO;aACR;YACD,KAAK,GAAG,MAAM,CAAC;SAChB;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -1,3 +1,3 @@
1
- import { Graph } from "@antv/graphlib";
2
- import { EdgeData, Graph as IGraph, NodeData } from "../../types";
3
- export declare const buildLayerGraph: (g: IGraph, rank: number, direction: "in" | "out") => Graph<NodeData, EdgeData>;
1
+ import { Graph } from '@antv/graphlib';
2
+ import { EdgeData, Graph as IGraph, NodeData } from '../../types';
3
+ export declare const buildLayerGraph: (g: IGraph, rank: number, direction: 'in' | 'out') => Graph<NodeData, EdgeData>;
@@ -1,5 +1,5 @@
1
1
  import { __assign } from "tslib";
2
- import { Graph } from "@antv/graphlib";
2
+ import { Graph } from '@antv/graphlib';
3
3
  /*
4
4
  * Constructs a graph that can be used to sort a layer of nodes. The graph will
5
5
  * contain all base and subgraph nodes from the request layer in their original
@@ -59,7 +59,7 @@ export var buildLayerGraph = function (g, rank, direction) {
59
59
  result.addNode(__assign({}, g.getNode(u)));
60
60
  }
61
61
  var edge = result
62
- .getRelatedEdges(u, "out")
62
+ .getRelatedEdges(u, 'out')
63
63
  .find(function (_a) {
64
64
  var target = _a.target;
65
65
  return target === v.id;
@@ -80,7 +80,7 @@ export var buildLayerGraph = function (g, rank, direction) {
80
80
  }
81
81
  });
82
82
  // console.log(v);
83
- if (v.data.hasOwnProperty("minRank")) {
83
+ if (v.data.hasOwnProperty('minRank')) {
84
84
  result.updateNodeData(v.id, __assign(__assign({}, v.data), { borderLeft: v.data.borderLeft[rank], borderRight: v.data.borderRight[rank] }));
85
85
  }
86
86
  }
@@ -1,5 +1,5 @@
1
- import { ID } from "@antv/graphlib";
2
- import { Graph } from "../../types";
1
+ import { ID } from '@antv/graphlib';
2
+ import { Graph } from '../../types';
3
3
  /**
4
4
  * 按照数据中的结果设置fixorder
5
5
  */
@@ -1,3 +1,3 @@
1
- import { ID } from "@antv/graphlib";
2
- import { Graph } from "../../types";
1
+ import { ID } from '@antv/graphlib';
2
+ import { Graph } from '../../types';
3
3
  export declare const initOrder: (g: Graph) => ID[][];
@@ -1,5 +1,5 @@
1
- import { ID } from "@antv/graphlib";
2
- import { Graph } from "../../types";
1
+ import { ID } from '@antv/graphlib';
2
+ import { Graph } from '../../types';
3
3
  export declare const sortSubgraph: (g: Graph, v: ID, cg: Graph, biasRight?: boolean, usePrev?: boolean, keepNodeOrder?: boolean) => {
4
4
  vs: ID[];
5
5
  barycenter?: number;
@@ -1,6 +1,6 @@
1
- import { barycenter } from "./barycenter";
2
- import resolveConflicts from "./resolve-conflicts";
3
- import { sort } from "./sort";
1
+ import { barycenter } from './barycenter';
2
+ import resolveConflicts from './resolve-conflicts';
3
+ import { sort } from './sort';
4
4
  export var sortSubgraph = function (g, v, cg, biasRight, usePrev, keepNodeOrder) {
5
5
  var _a, _b, _c, _d;
6
6
  var movable = g.getChildren(v).map(function (n) { return n.id; });
@@ -20,7 +20,7 @@ export var sortSubgraph = function (g, v, cg, biasRight, usePrev, keepNodeOrder)
20
20
  if ((_a = g.getChildren(entry.v)) === null || _a === void 0 ? void 0 : _a.length) {
21
21
  var subgraphResult = sortSubgraph(g, entry.v, cg, biasRight, keepNodeOrder);
22
22
  subgraphs[entry.v] = subgraphResult;
23
- if (subgraphResult.hasOwnProperty("barycenter")) {
23
+ if (subgraphResult.hasOwnProperty('barycenter')) {
24
24
  mergeBarycenters(entry, subgraphResult);
25
25
  }
26
26
  }
@@ -41,9 +41,9 @@ export var sortSubgraph = function (g, v, cg, 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) || "");
46
- if (!result.hasOwnProperty("barycenter")) {
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) || '');
46
+ if (!result.hasOwnProperty('barycenter')) {
47
47
  result.barycenter = 0;
48
48
  result.weight = 0;
49
49
  }
@@ -1,3 +1,3 @@
1
- import { ID } from "@antv/graphlib";
2
- import { Graph as IGraph } from "../types";
1
+ import { ID } from '@antv/graphlib';
2
+ import { Graph as IGraph } from '../types';
3
3
  export declare const parentDummyChains: (g: IGraph, dummyChains: ID[]) => void;
@@ -1,5 +1,5 @@
1
- import { ID, Graph, Node } from "@antv/graphlib";
2
- import { EdgeData, Graph as IGraph, NodeData } from "../types";
1
+ import { ID, Graph, Node } from '@antv/graphlib';
2
+ import { EdgeData, Graph as IGraph, NodeData } from '../types';
3
3
  export declare const addDummyNode: (g: IGraph, type: string, data: NodeData, name: string) => ID;
4
4
  export declare const simplify: (g: IGraph) => Graph<NodeData, EdgeData>;
5
5
  export declare const asNonCompoundGraph: (g: IGraph) => IGraph;
@@ -32,4 +32,4 @@ export declare const minBy: <T = any>(array: T[], func: (param: T) => number) =>
32
32
  * @description DFS traversal.
33
33
  * @description.zh-CN DFS 遍历。
34
34
  */
35
- export declare const dfs: (graph: IGraph, node: Node<NodeData> | Node<NodeData>[], order: "pre" | "post", isDirected: boolean) => ID[];
35
+ export declare const dfs: (graph: IGraph, node: Node<NodeData> | Node<NodeData>[], order: 'pre' | 'post', isDirected: boolean) => ID[];