@antv/layout 0.3.22 → 0.3.24

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.
@@ -1,4 +1,4 @@
1
- import { Base } from "./base";
1
+ import { Base } from './base';
2
2
  export interface Node {
3
3
  id: string;
4
4
  }
@@ -77,7 +77,7 @@ export interface ComboTree {
77
77
  children?: ComboTree[];
78
78
  depth?: number;
79
79
  parentId?: string;
80
- itemType?: "node" | "combo";
80
+ itemType?: 'node' | 'combo';
81
81
  [key: string]: unknown;
82
82
  }
83
83
  export interface ComboConfig {
@@ -87,7 +87,7 @@ export interface ComboConfig {
87
87
  depth?: number;
88
88
  }
89
89
  export interface CircularLayoutOptions {
90
- type: "circular";
90
+ type: 'circular';
91
91
  center?: PointTuple;
92
92
  width?: number;
93
93
  height?: number;
@@ -96,7 +96,7 @@ export interface CircularLayoutOptions {
96
96
  endRadius?: number | null;
97
97
  clockwise?: boolean;
98
98
  divisions?: number;
99
- ordering?: "topology" | "topology-directed" | "degree" | null;
99
+ ordering?: 'topology' | 'topology-directed' | 'degree' | null;
100
100
  angleRatio?: number;
101
101
  workerEnabled?: boolean;
102
102
  startAngle?: number;
@@ -104,7 +104,7 @@ export interface CircularLayoutOptions {
104
104
  onLayoutEnd?: () => void;
105
105
  }
106
106
  export interface ComboForceLayoutOptions {
107
- type: "comboForce";
107
+ type: 'comboForce';
108
108
  center?: PointTuple;
109
109
  maxIteration?: number;
110
110
  linkDistance?: number | ((d?: unknown) => number);
@@ -134,7 +134,7 @@ export interface ComboForceLayoutOptions {
134
134
  workerEnabled?: boolean;
135
135
  }
136
136
  export interface ComboCombinedLayoutOptions {
137
- type: "comboConcentricForce";
137
+ type: 'comboConcentricForce';
138
138
  center?: PointTuple;
139
139
  nodeSize?: number | number[] | ((d?: any) => number) | undefined;
140
140
  spacing?: number | number[] | ((d?: any) => number) | undefined;
@@ -144,7 +144,7 @@ export interface ComboCombinedLayoutOptions {
144
144
  innerLayout?: Base;
145
145
  }
146
146
  export interface ConcentricLayoutOptions {
147
- type: "concentric";
147
+ type: 'concentric';
148
148
  center?: PointTuple;
149
149
  preventOverlap?: boolean;
150
150
  nodeSize?: number | PointTuple;
@@ -161,9 +161,9 @@ export interface ConcentricLayoutOptions {
161
161
  onLayoutEnd?: () => void;
162
162
  }
163
163
  export interface DagreLayoutOptions {
164
- type: "dagre";
165
- rankdir?: "TB" | "BT" | "LR" | "RL";
166
- align?: "UL" | "UR" | "DL" | "DR";
164
+ type: 'dagre';
165
+ rankdir?: 'TB' | 'BT' | 'LR' | 'RL';
166
+ align?: 'UL' | 'UR' | 'DL' | 'DR';
167
167
  begin?: PointTuple;
168
168
  nodeSize?: number | number[] | undefined;
169
169
  nodesep?: number;
@@ -182,9 +182,9 @@ export interface DagreLayoutOptions {
182
182
  ranksepFunc?: ((d?: any) => number) | undefined;
183
183
  }
184
184
  export interface DagreCompoundLayoutOptions {
185
- type?: "dagreCompound";
186
- rankdir?: "TB" | "BT" | "LR" | "RL";
187
- align?: "UL" | "UR" | "DL" | "DR";
185
+ type?: 'dagreCompound';
186
+ rankdir?: 'TB' | 'BT' | 'LR' | 'RL';
187
+ align?: 'UL' | 'UR' | 'DL' | 'DR';
188
188
  begin?: PointTuple;
189
189
  nodeSize?: number | number[] | undefined;
190
190
  nodesep?: number;
@@ -195,7 +195,7 @@ export interface DagreCompoundLayoutOptions {
195
195
  onLayoutEnd?: () => void;
196
196
  }
197
197
  export interface FruchtermanLayoutOptions {
198
- type: "fruchterman";
198
+ type: 'fruchterman';
199
199
  center?: PointTuple;
200
200
  maxIteration?: number;
201
201
  width?: number;
@@ -223,7 +223,7 @@ export interface CentripetalOptions {
223
223
  };
224
224
  }
225
225
  export interface Force2LayoutOptions {
226
- type?: "force2";
226
+ type?: 'force2';
227
227
  center?: PointTuple;
228
228
  width?: number;
229
229
  height?: number;
@@ -262,7 +262,7 @@ export interface Force2LayoutOptions {
262
262
  }) => void;
263
263
  }
264
264
  export interface GForceLayoutOptions {
265
- type?: "gForce";
265
+ type?: 'gForce';
266
266
  center?: PointTuple;
267
267
  width?: number;
268
268
  height?: number;
@@ -291,7 +291,7 @@ type INode = OutNode & {
291
291
  size: number | PointTuple;
292
292
  };
293
293
  export interface GridLayoutOptions {
294
- type: "grid";
294
+ type: 'grid';
295
295
  width?: number;
296
296
  height?: number;
297
297
  begin?: PointTuple;
@@ -310,14 +310,14 @@ export interface GridLayoutOptions {
310
310
  onLayoutEnd?: () => void;
311
311
  }
312
312
  export interface MDSLayoutOptions {
313
- type: "mds";
313
+ type: 'mds';
314
314
  center?: PointTuple;
315
315
  linkDistance?: number;
316
316
  workerEnabled?: boolean;
317
317
  onLayoutEnd?: () => void;
318
318
  }
319
319
  export interface RandomLayoutOptions {
320
- type: "random";
320
+ type: 'random';
321
321
  center?: PointTuple;
322
322
  width?: number;
323
323
  height?: number;
@@ -325,7 +325,7 @@ export interface RandomLayoutOptions {
325
325
  onLayoutEnd?: () => void;
326
326
  }
327
327
  export interface ForceLayoutOptions {
328
- type: "force";
328
+ type: 'force';
329
329
  center?: PointTuple;
330
330
  linkDistance?: number | ((d?: any) => number) | undefined;
331
331
  edgeStrength?: number | ((d?: any) => number) | undefined;
@@ -349,7 +349,7 @@ export interface ForceLayoutOptions {
349
349
  workerEnabled?: boolean;
350
350
  }
351
351
  export interface RadialLayoutOptions {
352
- type: "radial";
352
+ type: 'radial';
353
353
  center?: PointTuple;
354
354
  width?: number;
355
355
  height?: number;
@@ -365,10 +365,11 @@ export interface RadialLayoutOptions {
365
365
  sortBy?: string | undefined;
366
366
  sortStrength?: number;
367
367
  workerEnabled?: boolean;
368
+ initWithMDS?: boolean;
368
369
  onLayoutEnd?: () => void;
369
370
  }
370
371
  export interface FruchtermanGPULayoutOptions {
371
- type: "fruchterman-gpu";
372
+ type: 'fruchterman-gpu';
372
373
  center?: PointTuple;
373
374
  width?: number;
374
375
  height?: number;
@@ -382,7 +383,7 @@ export interface FruchtermanGPULayoutOptions {
382
383
  onLayoutEnd?: () => void;
383
384
  }
384
385
  export interface GForceGPULayoutOptions {
385
- type: "gForce-gpu";
386
+ type: 'gForce-gpu';
386
387
  center?: PointTuple;
387
388
  linkDistance?: number | ((d?: any) => number) | undefined;
388
389
  nodeStrength?: number | ((d?: any) => number) | undefined;
@@ -400,7 +401,7 @@ export interface GForceGPULayoutOptions {
400
401
  gpuEnabled?: boolean;
401
402
  }
402
403
  export interface ForceAtlas2LayoutOptions {
403
- type: "forceAtlas2";
404
+ type: 'forceAtlas2';
404
405
  center?: PointTuple;
405
406
  width?: number;
406
407
  height?: number;
@@ -420,13 +421,13 @@ export interface ForceAtlas2LayoutOptions {
420
421
  prune?: boolean;
421
422
  }
422
423
  export interface ERLayoutOptions {
423
- type: "er";
424
+ type: 'er';
424
425
  width?: number;
425
426
  height?: number;
426
427
  nodeMinGap?: number;
427
428
  }
428
429
  export declare namespace ILayout {
429
- type LayoutTypes = "grid" | "random" | "force" | "circular" | "dagre" | "radial" | "concentric" | "mds" | "fruchterman" | "fruchterman-gpu" | "gForce" | "gForce-gpu" | "comboForce" | "forceAtlas2" | "er";
430
+ type LayoutTypes = 'grid' | 'random' | 'force' | 'circular' | 'dagre' | 'radial' | 'concentric' | 'mds' | 'fruchterman' | 'fruchterman-gpu' | 'gForce' | 'gForce-gpu' | 'comboForce' | 'forceAtlas2' | 'er';
430
431
  type LayoutOptions = GridLayoutOptions | RandomLayoutOptions | ForceLayoutOptions | CircularLayoutOptions | DagreLayoutOptions | RadialLayoutOptions | ConcentricLayoutOptions | MDSLayoutOptions | FruchtermanLayoutOptions | FruchtermanGPULayoutOptions | GForceLayoutOptions | GForceGPULayoutOptions | ComboForceLayoutOptions | ComboCombinedLayoutOptions | ForceAtlas2LayoutOptions | ERLayoutOptions;
431
432
  }
432
433
  export {};
@@ -2,9 +2,9 @@
2
2
  * @fileOverview Combo force layout
3
3
  * @author shiwu.wyy@antfin.com
4
4
  */
5
- import { Edge, Combo, OutNode, PointTuple, ComboTree, ComboCombinedLayoutOptions } from "./types";
6
- import { Base } from "./base";
7
- import { CircularLayout, ConcentricLayout, GridLayout, RadialLayout } from ".";
5
+ import { Edge, Combo, OutNode, PointTuple, ComboTree, ComboCombinedLayoutOptions } from './types';
6
+ import { Base } from './base';
7
+ import { CircularLayout, ConcentricLayout, GridLayout, RadialLayout } from '.';
8
8
  type Node = OutNode & {
9
9
  depth?: number;
10
10
  itemType?: string;
@@ -106,7 +106,10 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
106
106
  // 代表 combo 的节点
107
107
  var oNode = __assign(__assign({}, cTree), { x: innerNode.x || comboMap[cTree.id].x, y: innerNode.y || comboMap[cTree.id].y, fx: innerNode.fx || comboMap[cTree.id].fx, fy: innerNode.fy || comboMap[cTree.id].fy, mass: innerNode.mass || comboMap[cTree.id].mass, size: innerNode.size });
108
108
  outerNodes.push(oNode);
109
- if (!isNaN(oNode.x) && oNode.x !== 0 && !isNaN(oNode.y) && oNode.y !== 0) {
109
+ if (!isNaN(oNode.x) &&
110
+ oNode.x !== 0 &&
111
+ !isNaN(oNode.y) &&
112
+ oNode.y !== 0) {
110
113
  allHaveNoPosition = false;
111
114
  }
112
115
  else {
@@ -126,7 +129,10 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
126
129
  // 代表节点的节点
127
130
  var oNode = __assign({}, node);
128
131
  outerNodes.push(oNode);
129
- if (!isNaN(oNode.x) && oNode.x !== 0 && !isNaN(oNode.y) && oNode.y !== 0) {
132
+ if (!isNaN(oNode.x) &&
133
+ oNode.x !== 0 &&
134
+ !isNaN(oNode.y) &&
135
+ oNode.y !== 0) {
130
136
  allHaveNoPosition = false;
131
137
  }
132
138
  else {
@@ -145,7 +151,7 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
145
151
  outerNodeIds.includes(targetAncestorId)) {
146
152
  outerEdges.push({
147
153
  source: sourceAncestorId,
148
- target: targetAncestorId
154
+ target: targetAncestorId,
149
155
  });
150
156
  }
151
157
  });
@@ -158,19 +164,20 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
158
164
  else {
159
165
  var outerData = {
160
166
  nodes: outerNodes,
161
- edges: outerEdges
167
+ edges: outerEdges,
162
168
  };
163
169
  // 需要使用一个同步的布局
164
170
  // @ts-ignore
165
- var outerLayout = this.outerLayout || new _1.GForceLayout({
166
- gravity: 1,
167
- factor: 4,
168
- linkDistance: function (edge, source, target) {
169
- var _a, _b;
170
- var nodeSize = ((((_a = source.size) === null || _a === void 0 ? void 0 : _a[0]) || 30) + (((_b = target.size) === null || _b === void 0 ? void 0 : _b[0]) || 30)) / 2;
171
- return Math.min(nodeSize * 1.5, 700);
172
- }
173
- });
171
+ var outerLayout = this.outerLayout ||
172
+ new _1.GForceLayout({
173
+ gravity: 1,
174
+ factor: 4,
175
+ linkDistance: function (edge, source, target) {
176
+ var _a, _b;
177
+ var nodeSize = ((((_a = source.size) === null || _a === void 0 ? void 0 : _a[0]) || 30) + (((_b = target.size) === null || _b === void 0 ? void 0 : _b[0]) || 30)) / 2;
178
+ return Math.min(nodeSize * 1.5, 700);
179
+ },
180
+ });
174
181
  var outerLayoutType = (_a = outerLayout.getType) === null || _a === void 0 ? void 0 : _a.call(outerLayout);
175
182
  outerLayout.updateCfg({
176
183
  center: center,
@@ -214,8 +221,8 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
214
221
  return "continue";
215
222
  innerGraph.nodes.forEach(function (node) {
216
223
  if (!innerGraph.visited) {
217
- node.x += (innerGraph.x || 0);
218
- node.y += (innerGraph.y || 0);
224
+ node.x += innerGraph.x || 0;
225
+ node.y += innerGraph.y || 0;
219
226
  }
220
227
  if (nodeMap[node.id]) {
221
228
  nodeMap[node.id].x = node.x;
@@ -237,7 +244,8 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
237
244
  var comboTrees = self.comboTrees, nodeSize = self.nodeSize, edges = self.edges, comboPadding = self.comboPadding, spacing = self.spacing;
238
245
  var innerGraphs = {};
239
246
  // @ts-ignore
240
- var innerGraphLayout = this.innerLayout || (new _1.ConcentricLayout({ sortBy: 'id' }));
247
+ var innerGraphLayout = this.innerLayout ||
248
+ new _1.ConcentricLayout({ type: 'concentric', sortBy: 'id' });
241
249
  innerGraphLayout.center = [0, 0];
242
250
  innerGraphLayout.preventOverlap = true;
243
251
  innerGraphLayout.nodeSpacing = spacing;
@@ -251,11 +259,13 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
251
259
  if (!((_a = treeNode.children) === null || _a === void 0 ? void 0 : _a.length)) {
252
260
  // 空 combo
253
261
  if (treeNode.itemType === 'combo') {
254
- var treeNodeSize = padding ? [padding * 2, padding * 2] : [30, 30];
262
+ var treeNodeSize = padding
263
+ ? [padding * 2, padding * 2]
264
+ : [30, 30];
255
265
  innerGraphs[treeNode.id] = {
256
266
  id: treeNode.id,
257
267
  nodes: [],
258
- size: treeNodeSize
268
+ size: treeNodeSize,
259
269
  };
260
270
  }
261
271
  }
@@ -270,14 +280,18 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
270
280
  var innerGraphNodeIds_1 = innerGraphNodes.map(function (node) { return node.id; });
271
281
  var innerGraphData = {
272
282
  nodes: innerGraphNodes,
273
- edges: edges.filter(function (edge) { return innerGraphNodeIds_1.includes(edge.source) && innerGraphNodeIds_1.includes(edge.target); })
283
+ edges: edges.filter(function (edge) {
284
+ return innerGraphNodeIds_1.includes(edge.source) &&
285
+ innerGraphNodeIds_1.includes(edge.target);
286
+ }),
274
287
  };
275
288
  var minNodeSize_1 = Infinity;
276
289
  innerGraphNodes.forEach(function (node) {
277
290
  var _a;
278
291
  // @ts-ignore
279
292
  if (!node.size)
280
- node.size = ((_a = innerGraphs[node.id]) === null || _a === void 0 ? void 0 : _a.size) || (nodeSize === null || nodeSize === void 0 ? void 0 : nodeSize(node)) || [30, 30];
293
+ node.size = ((_a = innerGraphs[node.id]) === null || _a === void 0 ? void 0 : _a.size) ||
294
+ (nodeSize === null || nodeSize === void 0 ? void 0 : nodeSize(node)) || [30, 30];
281
295
  if ((0, util_1.isNumber)(node.size))
282
296
  node.size = [node.size, node.size];
283
297
  if (minNodeSize_1 > node.size[0])
@@ -294,11 +308,12 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
294
308
  node.x -= center_1.x;
295
309
  node.y -= center_1.y;
296
310
  });
297
- var innerGraphSize = Math.max(maxX - minX, maxY - minY, minNodeSize_1) + padding * 2;
311
+ var innerGraphWidth = Math.max(maxX - minX, minNodeSize_1) + padding * 2;
312
+ var innerGraphHeight = Math.max(maxY - minY, minNodeSize_1) + padding * 2;
298
313
  innerGraphs[treeNode.id] = {
299
314
  id: treeNode.id,
300
315
  nodes: innerGraphNodes,
301
- size: [innerGraphSize, innerGraphSize]
316
+ size: [innerGraphWidth, innerGraphHeight],
302
317
  };
303
318
  }
304
319
  return true;
@@ -382,7 +397,7 @@ var ComboCombinedLayout = /** @class */ (function (_super) {
382
397
  this.comboPadding = comboPaddingFunc;
383
398
  };
384
399
  ComboCombinedLayout.prototype.getType = function () {
385
- return "comboCombined";
400
+ return 'comboCombined';
386
401
  };
387
402
  return ComboCombinedLayout;
388
403
  }(base_1.Base));
@@ -1 +1 @@
1
- {"version":3,"file":"comboCombined.js","sourceRoot":"","sources":["../../src/layout/comboCombined.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"comboCombined.js","sourceRoot":"","sources":["../../src/layout/comboCombined.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,8 @@
2
2
  * @fileOverview random layout
3
3
  * @author shiwu.wyy@antfin.com
4
4
  */
5
- import { PointTuple, Node, OutNode, Edge, RadialLayoutOptions } from "../types";
6
- import { Base } from "../base";
5
+ import { PointTuple, Node, OutNode, Edge, RadialLayoutOptions } from '../types';
6
+ import { Base } from '../base';
7
7
  type INode = OutNode & {
8
8
  size?: number | PointTuple;
9
9
  };
@@ -43,6 +43,7 @@ export declare class RadialLayout extends Base {
43
43
  nodes: INode[];
44
44
  edges: Edge[];
45
45
  onLayoutEnd: () => void;
46
+ initWithMDS: boolean;
46
47
  constructor(options?: RadialLayoutOptions);
47
48
  getDefaultCfg(): {
48
49
  maxIteration: number;
@@ -56,6 +57,7 @@ export declare class RadialLayout extends Base {
56
57
  maxPreventOverlapIteration: number;
57
58
  sortBy: undefined;
58
59
  sortStrength: number;
60
+ initWithMDS: boolean;
59
61
  };
60
62
  /**
61
63
  * 执行布局
@@ -96,7 +96,8 @@ var RadialLayout = /** @class */ (function (_super) {
96
96
  strictRadial: true,
97
97
  maxPreventOverlapIteration: 200,
98
98
  sortBy: undefined,
99
- sortStrength: 10
99
+ sortStrength: 10,
100
+ initWithMDS: true,
100
101
  };
101
102
  };
102
103
  /**
@@ -111,10 +112,10 @@ var RadialLayout = /** @class */ (function (_super) {
111
112
  self.onLayoutEnd();
112
113
  return;
113
114
  }
114
- if (!self.width && typeof window !== "undefined") {
115
+ if (!self.width && typeof window !== 'undefined') {
115
116
  self.width = window.innerWidth;
116
117
  }
117
- if (!self.height && typeof window !== "undefined") {
118
+ if (!self.height && typeof window !== 'undefined') {
118
119
  self.height = window.innerHeight;
119
120
  }
120
121
  if (!self.center) {
@@ -196,25 +197,35 @@ var RadialLayout = /** @class */ (function (_super) {
196
197
  var W = getWeightMatrix(eIdealD);
197
198
  self.weights = W;
198
199
  // the initial positions from mds
199
- var mds = new mds_1.default({ linkDistance: linkDistance, distances: eIdealD });
200
- var positions = mds.layout();
201
- positions.forEach(function (p) {
202
- if ((0, util_1.isNaN)(p[0])) {
203
- p[0] = Math.random() * linkDistance;
204
- }
205
- if ((0, util_1.isNaN)(p[1])) {
206
- p[1] = Math.random() * linkDistance;
207
- }
208
- });
209
- self.positions = positions;
210
- positions.forEach(function (p, i) {
200
+ if (self.initWithMDS) {
201
+ var mds = new mds_1.default({ linkDistance: linkDistance, distances: eIdealD });
202
+ var positions = mds.layout();
203
+ positions.forEach(function (p) {
204
+ if ((0, util_1.isNaN)(p[0])) {
205
+ p[0] = Math.random() * linkDistance;
206
+ }
207
+ if ((0, util_1.isNaN)(p[1])) {
208
+ p[1] = Math.random() * linkDistance;
209
+ }
210
+ });
211
+ self.positions = positions;
212
+ }
213
+ else {
214
+ self.positions = nodes.map(function (node, i) {
215
+ return [
216
+ (Math.random() - 0.5) * eIdealD[i][focusIndex],
217
+ (Math.random() - 0.5) * eIdealD[i][focusIndex],
218
+ ];
219
+ });
220
+ }
221
+ self.positions.forEach(function (p, i) {
211
222
  nodes[i].x = p[0] + center[0];
212
223
  nodes[i].y = p[1] + center[1];
213
224
  });
214
225
  // move the graph to origin, centered at focusNode
215
- positions.forEach(function (p) {
216
- p[0] -= positions[focusIndex][0];
217
- p[1] -= positions[focusIndex][1];
226
+ self.positions.forEach(function (p) {
227
+ p[0] -= self.positions[focusIndex][0];
228
+ p[1] -= self.positions[focusIndex][1];
218
229
  });
219
230
  self.run();
220
231
  var preventOverlap = self.preventOverlap;
@@ -263,20 +274,20 @@ var RadialLayout = /** @class */ (function (_super) {
263
274
  nodes: nodes,
264
275
  nodeSizeFunc: nodeSizeFunc,
265
276
  adjMatrix: adjMatrix,
266
- positions: positions,
277
+ positions: self.positions,
267
278
  radii: radii,
268
279
  height: height,
269
280
  width: width,
270
281
  strictRadial: strictRadial,
271
282
  focusID: focusIndex,
272
283
  iterations: self.maxPreventOverlapIteration || 200,
273
- k: positions.length / 4.5
284
+ k: self.positions.length / 4.5,
274
285
  };
275
286
  var nonoverlapForce = new radialNonoverlapForce_1.default(nonoverlapForceParams);
276
- positions = nonoverlapForce.layout();
287
+ self.positions = nonoverlapForce.layout();
277
288
  }
278
289
  // move the graph to center
279
- positions.forEach(function (p, i) {
290
+ self.positions.forEach(function (p, i) {
280
291
  nodes[i].x = p[0] + center[0];
281
292
  nodes[i].y = p[1] + center[1];
282
293
  });
@@ -284,7 +295,7 @@ var RadialLayout = /** @class */ (function (_super) {
284
295
  self.onLayoutEnd();
285
296
  return {
286
297
  nodes: nodes,
287
- edges: edges
298
+ edges: edges,
288
299
  };
289
300
  };
290
301
  RadialLayout.prototype.run = function () {
@@ -361,7 +372,7 @@ var RadialLayout = /** @class */ (function (_super) {
361
372
  }
362
373
  else if (radii[i] === radii[j]) {
363
374
  // i and j are on the same circle
364
- if (self.sortBy === "data") {
375
+ if (self.sortBy === 'data') {
365
376
  // sort the nodes on the same circle according to the ordering of the data
366
377
  newRow.push((v * (Math.abs(i - j) * self.sortStrength)) /
367
378
  (radii[i] / unitRadius));
@@ -437,7 +448,7 @@ var RadialLayout = /** @class */ (function (_super) {
437
448
  return max;
438
449
  };
439
450
  RadialLayout.prototype.getType = function () {
440
- return "radial";
451
+ return 'radial';
441
452
  };
442
453
  return RadialLayout;
443
454
  }(base_1.Base));
@@ -1 +1 @@
1
- {"version":3,"file":"radial.js","sourceRoot":"","sources":["../../../src/layout/radial/radial.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"radial.js","sourceRoot":"","sources":["../../../src/layout/radial/radial.ts"],"names":[],"mappings":"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"}