@antv/layout 2.0.0-beta.0 → 2.0.0-beta.2
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.
- package/dist/index.js +322 -222
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +2 -2
- package/dist/index.min.js.map +1 -1
- package/dist/worker.js +2 -2
- package/dist/worker.js.map +1 -1
- package/lib/algorithm/antv-dagre/index.js +8 -7
- package/lib/algorithm/antv-dagre/index.js.map +1 -1
- package/lib/algorithm/antv-dagre/rank/index.js +1 -1
- package/lib/algorithm/antv-dagre/types.d.ts +3 -14
- package/lib/algorithm/circular/index.js +8 -7
- package/lib/algorithm/circular/index.js.map +1 -1
- package/lib/algorithm/circular/types.d.ts +0 -16
- package/lib/algorithm/combo-combined/index.js +9 -7
- package/lib/algorithm/combo-combined/index.js.map +1 -1
- package/lib/algorithm/combo-combined/types.d.ts +6 -18
- package/lib/algorithm/concentric/index.js +10 -16
- package/lib/algorithm/concentric/index.js.map +1 -1
- package/lib/algorithm/concentric/types.d.ts +3 -17
- package/lib/algorithm/d3-force/index.js +16 -12
- package/lib/algorithm/d3-force/index.js.map +1 -1
- package/lib/algorithm/d3-force/types.d.ts +10 -24
- package/lib/algorithm/d3-force-3d/index.js +1 -1
- package/lib/algorithm/d3-force-3d/index.js.map +1 -1
- package/lib/algorithm/d3-force-3d/types.d.ts +5 -4
- package/lib/algorithm/dagre/index.js +10 -7
- package/lib/algorithm/dagre/index.js.map +1 -1
- package/lib/algorithm/dagre/types.d.ts +8 -14
- package/lib/algorithm/force/index.d.ts +1 -1
- package/lib/algorithm/force/index.js +56 -44
- package/lib/algorithm/force/index.js.map +1 -1
- package/lib/algorithm/force/types.d.ts +39 -36
- package/lib/algorithm/force-atlas2/index.d.ts +1 -1
- package/lib/algorithm/force-atlas2/index.js +8 -7
- package/lib/algorithm/force-atlas2/index.js.map +1 -1
- package/lib/algorithm/force-atlas2/types.d.ts +0 -14
- package/lib/algorithm/fruchterman/index.d.ts +1 -1
- package/lib/algorithm/fruchterman/index.js +8 -10
- package/lib/algorithm/fruchterman/index.js.map +1 -1
- package/lib/algorithm/fruchterman/simulation.js +2 -1
- package/lib/algorithm/fruchterman/simulation.js.map +1 -1
- package/lib/algorithm/fruchterman/types.d.ts +2 -1
- package/lib/algorithm/grid/index.d.ts +1 -1
- package/lib/algorithm/grid/index.js +29 -34
- package/lib/algorithm/grid/index.js.map +1 -1
- package/lib/algorithm/grid/types.d.ts +5 -24
- package/lib/algorithm/mds/index.js +1 -0
- package/lib/algorithm/mds/index.js.map +1 -1
- package/lib/algorithm/radial/index.js +8 -5
- package/lib/algorithm/radial/index.js.map +1 -1
- package/lib/algorithm/radial/radial-nonoverlap-force.js +2 -4
- package/lib/algorithm/radial/radial-nonoverlap-force.js.map +1 -1
- package/lib/algorithm/radial/types.d.ts +3 -16
- package/lib/algorithm/random/index.js +1 -0
- package/lib/algorithm/random/index.js.map +1 -1
- package/lib/algorithm/types.d.ts +16 -0
- package/lib/index.d.ts +7 -5
- package/lib/index.js +3 -1
- package/lib/index.js.map +1 -1
- package/lib/node_modules/@antv/expr/dist/index.esm.js +4 -0
- package/lib/node_modules/@antv/expr/dist/index.esm.js.map +1 -0
- package/lib/runtime/supervisor.js +26 -12
- package/lib/runtime/supervisor.js.map +1 -1
- package/lib/types/common.d.ts +17 -1
- package/lib/types/data.d.ts +1 -1
- package/lib/util/expr.d.ts +12 -0
- package/lib/util/expr.js +26 -0
- package/lib/util/expr.js.map +1 -0
- package/lib/util/format.d.ts +37 -0
- package/lib/util/format.js +61 -17
- package/lib/util/format.js.map +1 -1
- package/lib/util/order.d.ts +3 -4
- package/lib/util/order.js.map +1 -1
- package/lib/util/size.d.ts +2 -1
- package/lib/util/size.js +9 -1
- package/lib/util/size.js.map +1 -1
- package/lib/worker.js +309 -239
- package/lib/worker.js.map +1 -1
- package/package.json +2 -1
- package/src/algorithm/antv-dagre/index.ts +15 -12
- package/src/algorithm/antv-dagre/types.ts +3 -14
- package/src/algorithm/circular/index.ts +5 -4
- package/src/algorithm/circular/types.ts +0 -15
- package/src/algorithm/combo-combined/index.ts +21 -17
- package/src/algorithm/combo-combined/types.ts +6 -21
- package/src/algorithm/concentric/index.ts +18 -16
- package/src/algorithm/concentric/types.ts +2 -16
- package/src/algorithm/d3-force/index.ts +25 -18
- package/src/algorithm/d3-force/types.ts +9 -22
- package/src/algorithm/d3-force-3d/index.ts +1 -1
- package/src/algorithm/d3-force-3d/types.ts +5 -0
- package/src/algorithm/dagre/index.ts +9 -7
- package/src/algorithm/dagre/types.ts +7 -15
- package/src/algorithm/force/index.ts +64 -40
- package/src/algorithm/force/types.ts +76 -45
- package/src/algorithm/force-atlas2/index.ts +13 -15
- package/src/algorithm/force-atlas2/types.ts +0 -12
- package/src/algorithm/fruchterman/index.ts +7 -15
- package/src/algorithm/fruchterman/simulation.ts +2 -2
- package/src/algorithm/fruchterman/types.ts +5 -2
- package/src/algorithm/grid/index.ts +45 -46
- package/src/algorithm/grid/types.ts +6 -35
- package/src/algorithm/radial/index.ts +14 -6
- package/src/algorithm/radial/radial-nonoverlap-force.ts +11 -6
- package/src/algorithm/radial/types.ts +2 -15
- package/src/algorithm/types.ts +18 -0
- package/src/runtime/supervisor.ts +26 -11
- package/src/types/common.ts +22 -0
- package/src/types/data.ts +1 -1
- package/src/util/expr.ts +26 -0
- package/src/util/format.ts +71 -27
- package/src/util/index.ts +2 -0
- package/src/util/order.ts +3 -9
- package/src/util/size.ts +8 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Expr } from '../types/common.js';
|
|
2
|
+
import { NodeData } from '../types/data.js';
|
|
3
|
+
import { Size, STDSize } from '../types/size.js';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Format a value into a callable function when it is a string expression.
|
|
7
|
+
* - `string` => `(context) => evaluateExpression(string, context)`
|
|
8
|
+
* - `function` => returned as-is
|
|
9
|
+
* - other => returned as-is
|
|
10
|
+
*/
|
|
11
|
+
declare function formatFn<TContext extends Record<string, any> = Record<string, any>>(value: unknown, argNames: (keyof TContext & string)[]): Function;
|
|
12
|
+
/**
|
|
13
|
+
* Format value with multiple types into a function that returns a number
|
|
14
|
+
* @param value The value to be formatted
|
|
15
|
+
* @param defaultValue The default value when value is invalid
|
|
16
|
+
* @returns A function that returns a number
|
|
17
|
+
*/
|
|
18
|
+
declare function formatNumberFn<T extends NodeData = NodeData>(value: number | Expr | ((d: T) => number) | undefined, defaultValue: number, type?: 'node' | 'edge' | 'combo'): (d: T) => number;
|
|
19
|
+
/**
|
|
20
|
+
* Format size config with multiple types into a function that returns a size
|
|
21
|
+
* @param value The value to be formatted
|
|
22
|
+
* @param defaultValue The default value when value is invalid
|
|
23
|
+
* @param resultIsNumber Whether to return a number (max of width/height) or size array
|
|
24
|
+
* @returns A function that returns a size
|
|
25
|
+
*/
|
|
26
|
+
declare function formatSizeFn<T extends NodeData = NodeData>(value?: Size | Expr | ((d: T) => Size), defaultValue?: number, type?: 'node' | 'edge' | 'combo'): (d: T) => Size;
|
|
27
|
+
/**
|
|
28
|
+
* Format nodeSize and nodeSpacing into a function that returns the total size
|
|
29
|
+
* @param nodeSize The size of the node
|
|
30
|
+
* @param nodeSpacing The spacing around the node
|
|
31
|
+
* @param defaultNodeSize The default node size when value is invalid
|
|
32
|
+
* @param defaultNodeSpacing The default node spacing when value is invalid
|
|
33
|
+
* @returns A function that returns the total size (node size + spacing)
|
|
34
|
+
*/
|
|
35
|
+
declare const formatNodeSizeFn: (nodeSize?: string | Size | ((node: NodeData) => Size) | undefined, nodeSpacing?: string | Size | ((node: NodeData) => Size) | undefined, defaultNodeSize?: number, defaultNodeSpacing?: number) => (d: NodeData) => STDSize;
|
|
36
|
+
|
|
37
|
+
export { formatFn, formatNodeSizeFn, formatNumberFn, formatSizeFn };
|
package/lib/util/format.js
CHANGED
|
@@ -1,15 +1,52 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import
|
|
1
|
+
import { evaluateExpression } from './expr.js';
|
|
2
|
+
import { parseSize, isSize } from './size.js';
|
|
3
|
+
import isNil from '../node_modules/@antv/util/esm/lodash/is-nil.js';
|
|
4
|
+
import isString from '../node_modules/@antv/util/esm/lodash/is-string.js';
|
|
3
5
|
import isNumber from '../node_modules/@antv/util/esm/lodash/is-number.js';
|
|
4
|
-
import
|
|
6
|
+
import isFunction from '../node_modules/@antv/util/esm/lodash/is-function.js';
|
|
5
7
|
|
|
8
|
+
/**
|
|
9
|
+
* Format a value into a callable function when it is a string expression.
|
|
10
|
+
* - `string` => `(context) => evaluateExpression(string, context)`
|
|
11
|
+
* - `function` => returned as-is
|
|
12
|
+
* - other => returned as-is
|
|
13
|
+
*/
|
|
14
|
+
function formatFn(value, argNames) {
|
|
15
|
+
if (typeof value === 'function')
|
|
16
|
+
return value;
|
|
17
|
+
if (typeof value === 'string') {
|
|
18
|
+
const expr = value;
|
|
19
|
+
return (...argv) => {
|
|
20
|
+
const ctx = {};
|
|
21
|
+
for (let i = 0; i < argNames.length; i++) {
|
|
22
|
+
ctx[argNames[i]] = argv[i];
|
|
23
|
+
}
|
|
24
|
+
return evaluateExpression(expr, ctx);
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
return () => value;
|
|
28
|
+
}
|
|
6
29
|
/**
|
|
7
30
|
* Format value with multiple types into a function that returns a number
|
|
8
31
|
* @param value The value to be formatted
|
|
9
32
|
* @param defaultValue The default value when value is invalid
|
|
10
33
|
* @returns A function that returns a number
|
|
11
34
|
*/
|
|
12
|
-
function formatNumberFn(value, defaultValue) {
|
|
35
|
+
function formatNumberFn(value, defaultValue, type = 'node') {
|
|
36
|
+
// If value is undefined, return default value function
|
|
37
|
+
if (isNil(value)) {
|
|
38
|
+
return () => defaultValue;
|
|
39
|
+
}
|
|
40
|
+
// If value is an expression, return a function that evaluates the expression
|
|
41
|
+
if (isString(value)) {
|
|
42
|
+
const numberFn = formatFn(value, [type]);
|
|
43
|
+
return (d) => {
|
|
44
|
+
const evaluated = numberFn(d);
|
|
45
|
+
if (isNumber(evaluated))
|
|
46
|
+
return evaluated;
|
|
47
|
+
return defaultValue;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
13
50
|
// If value is a function, return it directly
|
|
14
51
|
if (isFunction(value)) {
|
|
15
52
|
return value;
|
|
@@ -28,11 +65,21 @@ function formatNumberFn(value, defaultValue) {
|
|
|
28
65
|
* @param resultIsNumber Whether to return a number (max of width/height) or size array
|
|
29
66
|
* @returns A function that returns a size
|
|
30
67
|
*/
|
|
31
|
-
function formatSizeFn(value, defaultValue = 10) {
|
|
68
|
+
function formatSizeFn(value, defaultValue = 10, type = 'node') {
|
|
32
69
|
// If value is undefined, return default value function
|
|
33
|
-
if (
|
|
70
|
+
if (isNil(value)) {
|
|
34
71
|
return () => defaultValue;
|
|
35
72
|
}
|
|
73
|
+
// If value is an expression, return a function that evaluates the expression
|
|
74
|
+
if (isString(value)) {
|
|
75
|
+
const sizeFn = formatFn(value, [type]);
|
|
76
|
+
return (d) => {
|
|
77
|
+
const evaluated = sizeFn(d);
|
|
78
|
+
if (isSize(evaluated))
|
|
79
|
+
return evaluated;
|
|
80
|
+
return defaultValue;
|
|
81
|
+
};
|
|
82
|
+
}
|
|
36
83
|
// If value is a function, return it directly
|
|
37
84
|
if (isFunction(value)) {
|
|
38
85
|
return value;
|
|
@@ -45,10 +92,6 @@ function formatSizeFn(value, defaultValue = 10) {
|
|
|
45
92
|
if (Array.isArray(value)) {
|
|
46
93
|
return () => value;
|
|
47
94
|
}
|
|
48
|
-
// If value is an object with width and height
|
|
49
|
-
if (isObject(value) && value.width && value.height) {
|
|
50
|
-
return () => [value.width, value.height];
|
|
51
|
-
}
|
|
52
95
|
return () => defaultValue;
|
|
53
96
|
}
|
|
54
97
|
/**
|
|
@@ -56,17 +99,18 @@ function formatSizeFn(value, defaultValue = 10) {
|
|
|
56
99
|
* @param nodeSize The size of the node
|
|
57
100
|
* @param nodeSpacing The spacing around the node
|
|
58
101
|
* @param defaultNodeSize The default node size when value is invalid
|
|
102
|
+
* @param defaultNodeSpacing The default node spacing when value is invalid
|
|
59
103
|
* @returns A function that returns the total size (node size + spacing)
|
|
60
104
|
*/
|
|
61
|
-
const formatNodeSizeFn = (nodeSize, nodeSpacing, defaultNodeSize = 10) => {
|
|
62
|
-
const nodeSpacingFunc =
|
|
105
|
+
const formatNodeSizeFn = (nodeSize, nodeSpacing, defaultNodeSize = 10, defaultNodeSpacing = 0) => {
|
|
106
|
+
const nodeSpacingFunc = formatSizeFn(nodeSpacing, defaultNodeSpacing);
|
|
63
107
|
const nodeSizeFunc = formatSizeFn(nodeSize, defaultNodeSize);
|
|
64
|
-
return (
|
|
65
|
-
const
|
|
66
|
-
const
|
|
67
|
-
return
|
|
108
|
+
return (d) => {
|
|
109
|
+
const [sizeW, sizeH, sizeD] = parseSize(nodeSizeFunc(d));
|
|
110
|
+
const [spacingW, spacingH, spacingD] = parseSize(nodeSpacingFunc(d));
|
|
111
|
+
return [sizeW + spacingW, sizeH + spacingH, sizeD + spacingD];
|
|
68
112
|
};
|
|
69
113
|
};
|
|
70
114
|
|
|
71
|
-
export { formatNodeSizeFn, formatNumberFn, formatSizeFn };
|
|
115
|
+
export { formatFn, formatNodeSizeFn, formatNumberFn, formatSizeFn };
|
|
72
116
|
//# sourceMappingURL=format.js.map
|
package/lib/util/format.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sources":["../../src/util/src/util/format.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"format.js","sources":["../../src/util/src/util/format.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
package/lib/util/order.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { NodeData, LayoutNode } from '../types/data.js';
|
|
2
1
|
import { GraphLib } from '../model/data.js';
|
|
2
|
+
import { Sorter } from '../types/common.js';
|
|
3
|
+
import { NodeData } from '../types/data.js';
|
|
3
4
|
|
|
4
|
-
type SortComparator<N extends NodeData = NodeData> = (nodeA: LayoutNode<N>, nodeB: LayoutNode<N>, nodes: LayoutNode<N>[]) => -1 | 0 | 1;
|
|
5
5
|
declare function orderByDegree<N extends NodeData = NodeData>(model: GraphLib<N>, order?: 'asc' | 'desc'): GraphLib<N>;
|
|
6
6
|
/**
|
|
7
7
|
* 按 ID 排序
|
|
@@ -10,11 +10,10 @@ declare function orderById<N extends NodeData = NodeData>(model: GraphLib<N>): G
|
|
|
10
10
|
/**
|
|
11
11
|
* 按自定义比较函数排序
|
|
12
12
|
*/
|
|
13
|
-
declare function orderBySorter<N extends NodeData = NodeData>(model: GraphLib<N>, sorter:
|
|
13
|
+
declare function orderBySorter<N extends NodeData = NodeData>(model: GraphLib<N>, sorter: Sorter<N>): GraphLib<N>;
|
|
14
14
|
/**
|
|
15
15
|
* Order nodes according to graph topology
|
|
16
16
|
*/
|
|
17
17
|
declare function orderByTopology<N extends NodeData = NodeData>(model: GraphLib<N>, directed?: boolean): GraphLib<N>;
|
|
18
18
|
|
|
19
19
|
export { orderByDegree, orderById, orderBySorter, orderByTopology };
|
|
20
|
-
export type { SortComparator };
|
package/lib/util/order.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"order.js","sources":["../../src/util/src/util/order.ts"],"sourcesContent":[null],"names":["sort"],"mappings":"
|
|
1
|
+
{"version":3,"file":"order.js","sources":["../../src/util/src/util/order.ts"],"sourcesContent":[null],"names":["sort"],"mappings":"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"}
|
package/lib/util/size.d.ts
CHANGED
package/lib/util/size.js
CHANGED
|
@@ -10,6 +10,14 @@ function parseSize(size) {
|
|
|
10
10
|
const [x, y = x, z = x] = size;
|
|
11
11
|
return [x, y, z];
|
|
12
12
|
}
|
|
13
|
+
function isSize(value) {
|
|
14
|
+
if (isNumber(value))
|
|
15
|
+
return true;
|
|
16
|
+
if (Array.isArray(value)) {
|
|
17
|
+
return value.every((item) => isNumber(item));
|
|
18
|
+
}
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
13
21
|
|
|
14
|
-
export { parseSize };
|
|
22
|
+
export { isSize, parseSize };
|
|
15
23
|
//# sourceMappingURL=size.js.map
|
package/lib/util/size.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"size.js","sources":["../../src/util/src/util/size.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGM,SAAU,SAAS,CAAC,IAAW,EAAA;AACnC,IAAA,IAAI,CAAC,IAAI;AAAE,QAAA,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3B,IAAI,QAAQ,CAAC,IAAI,CAAC;AAAE,QAAA,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;SACxC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACnE,IAAA,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;AAC9B,IAAA,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAClB;;;;"}
|
|
1
|
+
{"version":3,"file":"size.js","sources":["../../src/util/src/util/size.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAGM,SAAU,SAAS,CAAC,IAAW,EAAA;AACnC,IAAA,IAAI,CAAC,IAAI;AAAE,QAAA,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3B,IAAI,QAAQ,CAAC,IAAI,CAAC;AAAE,QAAA,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;SACxC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;AAAE,QAAA,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACnE,IAAA,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI;AAC9B,IAAA,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAClB;AAEM,SAAU,MAAM,CAAC,KAAc,EAAA;IACnC,IAAI,QAAQ,CAAC,KAAK,CAAC;AAAE,QAAA,OAAO,IAAI;AAChC,IAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;AACxB,QAAA,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC7C,IAAA;AACD,IAAA,OAAO,KAAK;AACd;;;;"}
|