@antv/layout 1.2.13 → 1.2.14-beta.1

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 (232) hide show
  1. package/dist/85db61ddc757dae66e04.worker.js +2 -0
  2. package/dist/85db61ddc757dae66e04.worker.js.map +1 -0
  3. package/dist/index.min.js +1 -1
  4. package/dist/index.min.js.map +1 -1
  5. package/lib/{dagre → antv-dagre}/acyclic.d.ts +1 -1
  6. package/lib/antv-dagre/acyclic.js +61 -0
  7. package/lib/antv-dagre/acyclic.js.map +1 -0
  8. package/lib/{dagre → antv-dagre}/add-border-segments.js +12 -12
  9. package/lib/antv-dagre/add-border-segments.js.map +1 -0
  10. package/lib/{dagre → antv-dagre}/coordinate-system.d.ts +2 -1
  11. package/lib/antv-dagre/coordinate-system.js +65 -0
  12. package/lib/antv-dagre/coordinate-system.js.map +1 -0
  13. package/lib/{dagre → antv-dagre}/data/list.d.ts +1 -1
  14. package/lib/{dagre → antv-dagre}/data/list.js +20 -22
  15. package/lib/antv-dagre/data/list.js.map +1 -0
  16. package/lib/{dagre → antv-dagre}/greedy-fas.d.ts +2 -2
  17. package/lib/antv-dagre/greedy-fas.js +136 -0
  18. package/lib/antv-dagre/greedy-fas.js.map +1 -0
  19. package/lib/{dagre → antv-dagre}/layout.d.ts +2 -1
  20. package/lib/{dagre → antv-dagre}/layout.js +125 -127
  21. package/lib/antv-dagre/layout.js.map +1 -0
  22. package/lib/{dagre → antv-dagre}/nesting-graph.js +36 -37
  23. package/lib/antv-dagre/nesting-graph.js.map +1 -0
  24. package/lib/{dagre → antv-dagre}/normalize.d.ts +2 -2
  25. package/lib/{dagre → antv-dagre}/normalize.js +24 -24
  26. package/lib/antv-dagre/normalize.js.map +1 -0
  27. package/lib/{dagre → antv-dagre}/order/add-subgraph-constraints.js +9 -9
  28. package/lib/antv-dagre/order/add-subgraph-constraints.js.map +1 -0
  29. package/lib/{dagre → antv-dagre}/order/barycenter.d.ts +2 -2
  30. package/lib/{dagre → antv-dagre}/order/barycenter.js +8 -8
  31. package/lib/antv-dagre/order/barycenter.js.map +1 -0
  32. package/lib/{dagre → antv-dagre}/order/build-layer-graph.js +18 -22
  33. package/lib/antv-dagre/order/build-layer-graph.js.map +1 -0
  34. package/lib/antv-dagre/order/cross-count.d.ts +3 -0
  35. package/lib/{dagre → antv-dagre}/order/cross-count.js +17 -17
  36. package/lib/antv-dagre/order/cross-count.js.map +1 -0
  37. package/lib/{dagre → antv-dagre}/order/index.d.ts +1 -1
  38. package/lib/{dagre → antv-dagre}/order/index.js +35 -35
  39. package/lib/antv-dagre/order/index.js.map +1 -0
  40. package/lib/{dagre → antv-dagre}/order/init-data-order.js +8 -9
  41. package/lib/antv-dagre/order/init-data-order.js.map +1 -0
  42. package/lib/antv-dagre/order/init-order.js +47 -0
  43. package/lib/antv-dagre/order/init-order.js.map +1 -0
  44. package/lib/{dagre → antv-dagre}/order/resolve-conflicts.d.ts +3 -3
  45. package/lib/{dagre → antv-dagre}/order/resolve-conflicts.js +32 -35
  46. package/lib/antv-dagre/order/resolve-conflicts.js.map +1 -0
  47. package/lib/{dagre → antv-dagre}/order/sort-subgraph.js +20 -20
  48. package/lib/antv-dagre/order/sort-subgraph.js.map +1 -0
  49. package/lib/{dagre → antv-dagre}/order/sort.d.ts +2 -2
  50. package/lib/{dagre → antv-dagre}/order/sort.js +19 -19
  51. package/lib/antv-dagre/order/sort.js.map +1 -0
  52. package/lib/{dagre → antv-dagre}/parent-dummy-chains.js +28 -28
  53. package/lib/antv-dagre/parent-dummy-chains.js.map +1 -0
  54. package/lib/{dagre → antv-dagre}/position/bk.d.ts +5 -4
  55. package/lib/{dagre → antv-dagre}/position/bk.js +140 -143
  56. package/lib/antv-dagre/position/bk.js.map +1 -0
  57. package/lib/{dagre → antv-dagre}/position/index.d.ts +2 -1
  58. package/lib/antv-dagre/position/index.js +51 -0
  59. package/lib/antv-dagre/position/index.js.map +1 -0
  60. package/lib/{dagre → antv-dagre}/rank/feasible-tree.d.ts +2 -2
  61. package/lib/{dagre → antv-dagre}/rank/feasible-tree.js +32 -32
  62. package/lib/antv-dagre/rank/feasible-tree.js.map +1 -0
  63. package/lib/antv-dagre/rank/index.d.ts +2 -0
  64. package/lib/{dagre → antv-dagre}/rank/index.js +10 -10
  65. package/lib/antv-dagre/rank/index.js.map +1 -0
  66. package/lib/{dagre → antv-dagre}/rank/network-simplex.d.ts +2 -2
  67. package/lib/{dagre → antv-dagre}/rank/network-simplex.js +70 -71
  68. package/lib/antv-dagre/rank/network-simplex.js.map +1 -0
  69. package/lib/{dagre → antv-dagre}/rank/util.d.ts +2 -2
  70. package/lib/{dagre → antv-dagre}/rank/util.js +31 -31
  71. package/lib/antv-dagre/rank/util.js.map +1 -0
  72. package/lib/antv-dagre/types.d.ts +2 -0
  73. package/lib/antv-dagre/types.js +2 -0
  74. package/lib/antv-dagre/types.js.map +1 -0
  75. package/lib/{dagre → antv-dagre}/util.d.ts +1 -1
  76. package/lib/{dagre → antv-dagre}/util.js +90 -98
  77. package/lib/antv-dagre/util.js.map +1 -0
  78. package/lib/antv-dagre.d.ts +50 -0
  79. package/lib/antv-dagre.js +538 -0
  80. package/lib/antv-dagre.js.map +1 -0
  81. package/lib/bundle-entry.d.ts +2 -18
  82. package/lib/bundle-entry.js +2 -18
  83. package/lib/bundle-entry.js.map +1 -1
  84. package/lib/bundle-supervisor.d.ts +4 -22
  85. package/lib/bundle-supervisor.js +54 -53
  86. package/lib/bundle-supervisor.js.map +1 -1
  87. package/lib/bundle-worker.d.ts +1 -1
  88. package/lib/bundle-worker.js +31 -33
  89. package/lib/bundle-worker.js.map +1 -1
  90. package/lib/circular.d.ts +1 -1
  91. package/lib/circular.js +124 -140
  92. package/lib/circular.js.map +1 -1
  93. package/lib/comboCombined.d.ts +1 -1
  94. package/lib/comboCombined.js +254 -284
  95. package/lib/comboCombined.js.map +1 -1
  96. package/lib/concentric.d.ts +1 -1
  97. package/lib/concentric.js +166 -176
  98. package/lib/concentric.js.map +1 -1
  99. package/lib/d3Force/forceInBox.js +75 -77
  100. package/lib/d3Force/forceInBox.js.map +1 -1
  101. package/lib/d3Force/index.d.ts +2 -2
  102. package/lib/d3Force/index.js +196 -222
  103. package/lib/d3Force/index.js.map +1 -1
  104. package/lib/dagre.d.ts +13 -24
  105. package/lib/dagre.js +57 -542
  106. package/lib/dagre.js.map +1 -1
  107. package/lib/exports.d.ts +17 -0
  108. package/lib/exports.js +17 -0
  109. package/lib/exports.js.map +1 -0
  110. package/lib/force/forceNBody.js +42 -45
  111. package/lib/force/forceNBody.js.map +1 -1
  112. package/lib/force/index.d.ts +1 -1
  113. package/lib/force/index.js +282 -309
  114. package/lib/force/index.js.map +1 -1
  115. package/lib/force/types.d.ts +5 -5
  116. package/lib/forceAtlas2/body.d.ts +1 -1
  117. package/lib/forceAtlas2/body.js +29 -31
  118. package/lib/forceAtlas2/body.js.map +1 -1
  119. package/lib/forceAtlas2/index.d.ts +1 -1
  120. package/lib/forceAtlas2/index.js +206 -218
  121. package/lib/forceAtlas2/index.js.map +1 -1
  122. package/lib/forceAtlas2/quad.d.ts +2 -2
  123. package/lib/forceAtlas2/quad.js +40 -42
  124. package/lib/forceAtlas2/quad.js.map +1 -1
  125. package/lib/forceAtlas2/quadTree.js +16 -17
  126. package/lib/forceAtlas2/quadTree.js.map +1 -1
  127. package/lib/fruchterman.d.ts +1 -1
  128. package/lib/fruchterman.js +185 -205
  129. package/lib/fruchterman.js.map +1 -1
  130. package/lib/grid.d.ts +1 -1
  131. package/lib/grid.js +197 -207
  132. package/lib/grid.js.map +1 -1
  133. package/lib/index.d.ts +1 -15
  134. package/lib/index.js +1 -15
  135. package/lib/index.js.map +1 -1
  136. package/lib/mds.d.ts +1 -1
  137. package/lib/mds.js +68 -78
  138. package/lib/mds.js.map +1 -1
  139. package/lib/radial/index.d.ts +1 -1
  140. package/lib/radial/index.js +177 -184
  141. package/lib/radial/index.js.map +1 -1
  142. package/lib/radial/mds.d.ts +1 -1
  143. package/lib/radial/mds.js +15 -13
  144. package/lib/radial/mds.js.map +1 -1
  145. package/lib/radial/radial-nonoverlap-force.d.ts +2 -2
  146. package/lib/radial/radial-nonoverlap-force.js +36 -37
  147. package/lib/radial/radial-nonoverlap-force.js.map +1 -1
  148. package/lib/random.d.ts +1 -1
  149. package/lib/random.js +53 -66
  150. package/lib/random.js.map +1 -1
  151. package/lib/registry.d.ts +2 -2
  152. package/lib/registry.js +3 -1
  153. package/lib/registry.js.map +1 -1
  154. package/lib/supervisor.d.ts +2 -3
  155. package/lib/supervisor.js +57 -56
  156. package/lib/supervisor.js.map +1 -1
  157. package/lib/types.d.ts +20 -75
  158. package/lib/types.js.map +1 -1
  159. package/lib/util/array.js +1 -1
  160. package/lib/util/array.js.map +1 -1
  161. package/lib/util/common.d.ts +1 -1
  162. package/lib/util/common.js +7 -8
  163. package/lib/util/common.js.map +1 -1
  164. package/lib/util/function.js +23 -25
  165. package/lib/util/function.js.map +1 -1
  166. package/lib/util/index.d.ts +0 -2
  167. package/lib/util/index.js +0 -2
  168. package/lib/util/index.js.map +1 -1
  169. package/lib/util/math.d.ts +1 -26
  170. package/lib/util/math.js +41 -149
  171. package/lib/util/math.js.map +1 -1
  172. package/lib/util/object.d.ts +1 -1
  173. package/lib/util/object.js +13 -13
  174. package/lib/util/object.js.map +1 -1
  175. package/lib/util/size.d.ts +3 -0
  176. package/lib/util/size.js +12 -0
  177. package/lib/util/size.js.map +1 -0
  178. package/lib/worker.js +30 -31
  179. package/lib/worker.js.map +1 -1
  180. package/package.json +9 -5
  181. package/dist/aa1bb0ccc06b11cf79c1.worker.js +0 -2
  182. package/dist/aa1bb0ccc06b11cf79c1.worker.js.map +0 -1
  183. package/lib/dagre/acyclic.js +0 -62
  184. package/lib/dagre/acyclic.js.map +0 -1
  185. package/lib/dagre/add-border-segments.js.map +0 -1
  186. package/lib/dagre/coordinate-system.js +0 -65
  187. package/lib/dagre/coordinate-system.js.map +0 -1
  188. package/lib/dagre/data/list.js.map +0 -1
  189. package/lib/dagre/greedy-fas.js +0 -147
  190. package/lib/dagre/greedy-fas.js.map +0 -1
  191. package/lib/dagre/layout.js.map +0 -1
  192. package/lib/dagre/nesting-graph.js.map +0 -1
  193. package/lib/dagre/normalize.js.map +0 -1
  194. package/lib/dagre/order/add-subgraph-constraints.js.map +0 -1
  195. package/lib/dagre/order/barycenter.js.map +0 -1
  196. package/lib/dagre/order/build-layer-graph.js.map +0 -1
  197. package/lib/dagre/order/cross-count.d.ts +0 -3
  198. package/lib/dagre/order/cross-count.js.map +0 -1
  199. package/lib/dagre/order/index.js.map +0 -1
  200. package/lib/dagre/order/init-data-order.js.map +0 -1
  201. package/lib/dagre/order/init-order.js +0 -50
  202. package/lib/dagre/order/init-order.js.map +0 -1
  203. package/lib/dagre/order/resolve-conflicts.js.map +0 -1
  204. package/lib/dagre/order/sort-subgraph.js.map +0 -1
  205. package/lib/dagre/order/sort.js.map +0 -1
  206. package/lib/dagre/parent-dummy-chains.js.map +0 -1
  207. package/lib/dagre/position/bk.js.map +0 -1
  208. package/lib/dagre/position/index.js +0 -54
  209. package/lib/dagre/position/index.js.map +0 -1
  210. package/lib/dagre/rank/feasible-tree.js.map +0 -1
  211. package/lib/dagre/rank/index.d.ts +0 -2
  212. package/lib/dagre/rank/index.js.map +0 -1
  213. package/lib/dagre/rank/network-simplex.js.map +0 -1
  214. package/lib/dagre/rank/util.js.map +0 -1
  215. package/lib/dagre/util.js.map +0 -1
  216. package/lib/util/gpu.d.ts +0 -45
  217. package/lib/util/gpu.js +0 -214
  218. package/lib/util/gpu.js.map +0 -1
  219. package/lib/util/number.d.ts +0 -1
  220. package/lib/util/number.js +0 -5
  221. package/lib/util/number.js.map +0 -1
  222. package/lib/util/string.d.ts +0 -1
  223. package/lib/util/string.js +0 -15
  224. package/lib/util/string.js.map +0 -1
  225. /package/lib/{dagre → antv-dagre}/add-border-segments.d.ts +0 -0
  226. /package/lib/{dagre → antv-dagre}/nesting-graph.d.ts +0 -0
  227. /package/lib/{dagre → antv-dagre}/order/add-subgraph-constraints.d.ts +0 -0
  228. /package/lib/{dagre → antv-dagre}/order/build-layer-graph.d.ts +0 -0
  229. /package/lib/{dagre → antv-dagre}/order/init-data-order.d.ts +0 -0
  230. /package/lib/{dagre → antv-dagre}/order/init-order.d.ts +0 -0
  231. /package/lib/{dagre → antv-dagre}/order/sort-subgraph.d.ts +0 -0
  232. /package/lib/{dagre → antv-dagre}/parent-dummy-chains.d.ts +0 -0
package/lib/util/math.js CHANGED
@@ -1,12 +1,12 @@
1
1
  import { isNumber } from '@antv/util';
2
2
  import { isArray } from './array';
3
- export var floydWarshall = function (adjMatrix) {
3
+ export const floydWarshall = (adjMatrix) => {
4
4
  // initialize
5
- var dist = [];
6
- var size = adjMatrix.length;
7
- for (var i = 0; i < size; i += 1) {
5
+ const dist = [];
6
+ const size = adjMatrix.length;
7
+ for (let i = 0; i < size; i += 1) {
8
8
  dist[i] = [];
9
- for (var j = 0; j < size; j += 1) {
9
+ for (let j = 0; j < size; j += 1) {
10
10
  if (i === j) {
11
11
  dist[i][j] = 0;
12
12
  }
@@ -19,9 +19,9 @@ export var floydWarshall = function (adjMatrix) {
19
19
  }
20
20
  }
21
21
  // floyd
22
- for (var k = 0; k < size; k += 1) {
23
- for (var i = 0; i < size; i += 1) {
24
- for (var j = 0; j < size; j += 1) {
22
+ for (let k = 0; k < size; k += 1) {
23
+ for (let i = 0; i < size; i += 1) {
24
+ for (let j = 0; j < size; j += 1) {
25
25
  if (dist[i][j] > dist[i][k] + dist[k][j]) {
26
26
  dist[i][j] = dist[i][k] + dist[k][j];
27
27
  }
@@ -30,25 +30,25 @@ export var floydWarshall = function (adjMatrix) {
30
30
  }
31
31
  return dist;
32
32
  };
33
- export var getAdjMatrix = function (data, directed) {
34
- var nodes = data.nodes, edges = data.edges;
35
- var matrix = [];
33
+ export const getAdjMatrix = (data, directed) => {
34
+ const { nodes, edges } = data;
35
+ const matrix = [];
36
36
  // map node with index in data.nodes
37
- var nodeMap = {};
37
+ const nodeMap = {};
38
38
  if (!nodes) {
39
39
  throw new Error('invalid nodes data!');
40
40
  }
41
41
  if (nodes) {
42
- nodes.forEach(function (node, i) {
42
+ nodes.forEach((node, i) => {
43
43
  nodeMap[node.id] = i;
44
- var row = [];
44
+ const row = [];
45
45
  matrix.push(row);
46
46
  });
47
47
  }
48
- edges === null || edges === void 0 ? void 0 : edges.forEach(function (e) {
49
- var source = e.source, target = e.target;
50
- var sIndex = nodeMap[source];
51
- var tIndex = nodeMap[target];
48
+ edges === null || edges === void 0 ? void 0 : edges.forEach((e) => {
49
+ const { source, target } = e;
50
+ const sIndex = nodeMap[source];
51
+ const tIndex = nodeMap[target];
52
52
  if (sIndex === undefined || tIndex === undefined)
53
53
  return;
54
54
  matrix[sIndex][tIndex] = 1;
@@ -63,55 +63,29 @@ export var getAdjMatrix = function (data, directed) {
63
63
  * @param matrix [ [], [], [] ]
64
64
  * @param ratio
65
65
  */
66
- export var scaleMatrix = function (matrix, ratio) {
67
- var result = [];
68
- matrix.forEach(function (row) {
69
- var newRow = [];
70
- row.forEach(function (v) {
66
+ export const scaleMatrix = (matrix, ratio) => {
67
+ const result = [];
68
+ matrix.forEach((row) => {
69
+ const newRow = [];
70
+ row.forEach((v) => {
71
71
  newRow.push(v * ratio);
72
72
  });
73
73
  result.push(newRow);
74
74
  });
75
75
  return result;
76
76
  };
77
- /**
78
- * depth first traverse, from leaves to root, children in inverse order
79
- * if the fn returns false, terminate the traverse
80
- */
81
- var traverseUp = function (data, fn) {
82
- if (data && data.children) {
83
- for (var i = data.children.length - 1; i >= 0; i--) {
84
- if (!traverseUp(data.children[i], fn))
85
- return;
86
- }
87
- }
88
- if (!fn(data)) {
89
- return false;
90
- }
91
- return true;
92
- };
93
- /**
94
- * depth first traverse, from leaves to root, children in inverse order
95
- * if the fn returns false, terminate the traverse
96
- */
97
- export var traverseTreeUp = function (data, fn) {
98
- if (typeof fn !== 'function') {
99
- return;
100
- }
101
- traverseUp(data, fn);
102
- };
103
77
  /**
104
78
  * calculate the bounding box for the nodes according to their x, y, and size
105
79
  * @param nodes nodes in the layout
106
80
  * @returns
107
81
  */
108
- export var getLayoutBBox = function (nodes) {
109
- var minX = Infinity;
110
- var minY = Infinity;
111
- var maxX = -Infinity;
112
- var maxY = -Infinity;
113
- nodes.forEach(function (node) {
114
- var size = node.data.size;
82
+ export const getLayoutBBox = (nodes) => {
83
+ let minX = Infinity;
84
+ let minY = Infinity;
85
+ let maxX = -Infinity;
86
+ let maxY = -Infinity;
87
+ nodes.forEach((node) => {
88
+ let size = node.data.size;
115
89
  if (isArray(size)) {
116
90
  if (size.length === 1)
117
91
  size = [size[0], size[0]];
@@ -122,11 +96,11 @@ export var getLayoutBBox = function (nodes) {
122
96
  else if (size === undefined || isNaN(size)) {
123
97
  size = [30, 30];
124
98
  }
125
- var halfSize = [size[0] / 2, size[1] / 2];
126
- var left = node.data.x - halfSize[0];
127
- var right = node.data.x + halfSize[0];
128
- var top = node.data.y - halfSize[1];
129
- var bottom = node.data.y + halfSize[1];
99
+ const halfSize = [size[0] / 2, size[1] / 2];
100
+ const left = node.data.x - halfSize[0];
101
+ const right = node.data.x + halfSize[0];
102
+ const top = node.data.y - halfSize[1];
103
+ const bottom = node.data.y + halfSize[1];
130
104
  if (minX > left)
131
105
  minX = left;
132
106
  if (minY > top)
@@ -136,85 +110,7 @@ export var getLayoutBBox = function (nodes) {
136
110
  if (maxY < bottom)
137
111
  maxY = bottom;
138
112
  });
139
- return { minX: minX, minY: minY, maxX: maxX, maxY: maxY };
140
- };
141
- /**
142
- * 获取节点集合的平均位置信息
143
- * @param nodes 节点集合
144
- * @returns 平局内置
145
- */
146
- export var getAvgNodePosition = function (nodes) {
147
- var totalNodes = { x: 0, y: 0 };
148
- nodes.forEach(function (node) {
149
- totalNodes.x += node.data.x || 0;
150
- totalNodes.y += node.data.y || 0;
151
- });
152
- // 获取均值向量
153
- var length = nodes.length || 1;
154
- return {
155
- x: totalNodes.x / length,
156
- y: totalNodes.y / length,
157
- };
158
- };
159
- // 找出指定节点关联的边的起点或终点
160
- var getCoreNode = function (type, node, edges) {
161
- var _a, _b;
162
- if (type === 'source') {
163
- return (((_a = edges === null || edges === void 0 ? void 0 : edges.find(function (edge) { return edge.target === node.id; })) === null || _a === void 0 ? void 0 : _a.source) ||
164
- {});
165
- }
166
- return (((_b = edges === null || edges === void 0 ? void 0 : edges.find(function (edge) { return edge.source === node.id; })) === null || _b === void 0 ? void 0 : _b.target) || {});
167
- };
168
- // 找出指定节点为起点或终点的所有一度叶子节点
169
- var getRelativeNodeIds = function (type, coreNode, edges) {
170
- var relativeNodes = [];
171
- switch (type) {
172
- case 'source':
173
- relativeNodes = edges === null || edges === void 0 ? void 0 : edges.filter(function (edge) { return edge.source === coreNode.id; }).map(function (edge) { return edge.target; });
174
- break;
175
- case 'target':
176
- relativeNodes = edges === null || edges === void 0 ? void 0 : edges.filter(function (edge) { return edge.target === coreNode.id; }).map(function (edge) { return edge.source; });
177
- break;
178
- case 'both':
179
- relativeNodes = edges === null || edges === void 0 ? void 0 : edges.filter(function (edge) { return edge.source === coreNode.id; }).map(function (edge) { return edge.target; }).concat(edges === null || edges === void 0 ? void 0 : edges.filter(function (edge) { return edge.target === coreNode.id; }).map(function (edge) { return edge.source; }));
180
- break;
181
- default:
182
- break;
183
- }
184
- // 去重
185
- var set = new Set(relativeNodes);
186
- return Array.from(set);
187
- };
188
- // 找出同类型的节点
189
- var getSameTypeNodes = function (type, nodeClusterBy, node, relativeNodes, degreesMap) {
190
- var typeName = node[nodeClusterBy] || '';
191
- var sameTypeNodes = (relativeNodes === null || relativeNodes === void 0 ? void 0 : relativeNodes.filter(function (item) { return item[nodeClusterBy] === typeName; })) || [];
192
- if (type === 'leaf') {
193
- sameTypeNodes = sameTypeNodes.filter(function (node) { var _a, _b; return ((_a = degreesMap[node.id]) === null || _a === void 0 ? void 0 : _a.in) === 0 || ((_b = degreesMap[node.id]) === null || _b === void 0 ? void 0 : _b.out) === 0; });
194
- }
195
- return sameTypeNodes;
196
- };
197
- // 找出与指定节点关联的边的起点或终点出发的所有一度叶子节点
198
- export var getCoreNodeAndRelativeLeafNodes = function (type, node, edges, nodeClusterBy, degreesMap, nodeMap) {
199
- var _a = degreesMap[node.id], inDegree = _a.in, outDegree = _a.out;
200
- var coreNode = node;
201
- var relativeLeafNodes = [];
202
- if (inDegree === 0) {
203
- // 如果为没有出边的叶子节点,则找出与它关联的边的起点出发的所有一度节点
204
- coreNode = getCoreNode('source', node, edges);
205
- relativeLeafNodes = getRelativeNodeIds('both', coreNode, edges).map(function (nodeId) { return nodeMap[nodeId]; });
206
- }
207
- else if (outDegree === 0) {
208
- // 如果为没有入边边的叶子节点,则找出与它关联的边的起点出发的所有一度节点
209
- coreNode = getCoreNode('target', node, edges);
210
- relativeLeafNodes = getRelativeNodeIds('both', coreNode, edges).map(function (nodeId) { return nodeMap[nodeId]; });
211
- }
212
- relativeLeafNodes = relativeLeafNodes.filter(function (node) {
213
- return degreesMap[node.id] &&
214
- (degreesMap[node.id].in === 0 || degreesMap[node.id].out === 0);
215
- });
216
- var sameTypeLeafNodes = getSameTypeNodes(type, nodeClusterBy, node, relativeLeafNodes, degreesMap);
217
- return { coreNode: coreNode, relativeLeafNodes: relativeLeafNodes, sameTypeLeafNodes: sameTypeLeafNodes };
113
+ return { minX, minY, maxX, maxY };
218
114
  };
219
115
  /**
220
116
  * calculate the euclidean distance form p1 to p2
@@ -222,9 +118,7 @@ export var getCoreNodeAndRelativeLeafNodes = function (type, node, edges, nodeCl
222
118
  * @param p2
223
119
  * @returns
224
120
  */
225
- export var getEuclideanDistance = function (p1, p2) {
226
- return Math.sqrt((p1.x - p2.x) * (p1.x - p2.x) + (p1.y - p2.y) * (p1.y - p2.y));
227
- };
121
+ export const getEuclideanDistance = (p1, p2) => Math.sqrt((p1.x - p2.x) * (p1.x - p2.x) + (p1.y - p2.y) * (p1.y - p2.y));
228
122
  /**
229
123
  * Depth first search begin from nodes in graphCore data.
230
124
  * @param graphCore graphlib data structure
@@ -233,14 +127,12 @@ export var getEuclideanDistance = function (p1, p2) {
233
127
  * @param mode 'TB' - visit from top to bottom; 'BT' - visit from bottom to top;
234
128
  * @returns
235
129
  */
236
- export var graphTreeDfs = function (graph, nodes, fn, mode, treeKey, stopFns) {
237
- if (mode === void 0) { mode = 'TB'; }
238
- if (stopFns === void 0) { stopFns = {}; }
130
+ export const graphTreeDfs = (graph, nodes, fn, mode = 'TB', treeKey, stopFns = {}) => {
239
131
  if (!(nodes === null || nodes === void 0 ? void 0 : nodes.length))
240
132
  return;
241
- var stopBranchFn = stopFns.stopBranchFn, stopAllFn = stopFns.stopAllFn;
242
- for (var i = 0; i < nodes.length; i++) {
243
- var node = nodes[i];
133
+ const { stopBranchFn, stopAllFn } = stopFns;
134
+ for (let i = 0; i < nodes.length; i++) {
135
+ const node = nodes[i];
244
136
  if (!graph.hasNode(node.id))
245
137
  continue;
246
138
  if (stopBranchFn === null || stopBranchFn === void 0 ? void 0 : stopBranchFn(node))
@@ -1 +1 @@
1
- {"version":3,"file":"math.js","sourceRoot":"","sources":["../../src/util/math.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"math.js","sourceRoot":"","sources":["../../src/util/math.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Node, Edge } from "../types";
1
+ import { Edge, Node } from '../types';
2
2
  export declare const clone: <T>(target: T) => T;
3
3
  /**
4
4
  * Clone node or edge data and format it
@@ -1,5 +1,5 @@
1
- import { isNumber } from "@antv/util";
2
- export var clone = function (target) {
1
+ import { isNumber } from '@antv/util';
2
+ export const clone = (target) => {
3
3
  if (target === null) {
4
4
  return target;
5
5
  }
@@ -7,18 +7,18 @@ export var clone = function (target) {
7
7
  return new Date(target.getTime());
8
8
  }
9
9
  if (target instanceof Array) {
10
- var cp_1 = [];
11
- target.forEach(function (v) {
12
- cp_1.push(v);
10
+ const cp = [];
11
+ target.forEach((v) => {
12
+ cp.push(v);
13
13
  });
14
- return cp_1.map(function (n) { return clone(n); });
14
+ return cp.map((n) => clone(n));
15
15
  }
16
- if (typeof target === "object") {
17
- var cp_2 = {};
18
- Object.keys(target).forEach(function (k) {
19
- cp_2[k] = clone(target[k]);
16
+ if (typeof target === 'object') {
17
+ const cp = {};
18
+ Object.keys(target).forEach((k) => {
19
+ cp[k] = clone(target[k]);
20
20
  });
21
- return cp_2;
21
+ return cp;
22
22
  }
23
23
  return target;
24
24
  };
@@ -28,8 +28,8 @@ export var clone = function (target) {
28
28
  * @param initRange whether init the x and y in data with the range, which means [xRange, yRange]
29
29
  * @returns cloned node/edge
30
30
  */
31
- export var cloneFormatData = function (target, initRange) {
32
- var cloned = clone(target);
31
+ export const cloneFormatData = (target, initRange) => {
32
+ const cloned = clone(target);
33
33
  cloned.data = cloned.data || {};
34
34
  if (initRange) {
35
35
  if (!isNumber(cloned.data.x))
@@ -1 +1 @@
1
- {"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/util/object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,MAAM,CAAC,IAAM,KAAK,GAAG,UAAI,MAAS;IAChC,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,MAAM,CAAC;KACf;IACD,IAAI,MAAM,YAAY,IAAI,EAAE;QAC1B,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAQ,CAAC;KAC1C;IACD,IAAI,MAAM,YAAY,KAAK,EAAE;QAC3B,IAAM,IAAE,GAAG,EAAW,CAAC;QACtB,MAAgB,CAAC,OAAO,CAAC,UAAC,CAAC;YAC1B,IAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QACH,OAAO,IAAE,CAAC,GAAG,CAAC,UAAC,CAAM,IAAK,OAAA,KAAK,CAAM,CAAC,CAAC,EAAb,CAAa,CAAQ,CAAC;KACjD;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,IAAM,IAAE,GAAG,EAA4B,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,CAAC;YAC5B,IAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAO,MAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,OAAO,IAAO,CAAC;KAChB;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,IAAM,eAAe,GAAG,UAC7B,MAAS,EACT,SAA4B;IAE5B,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IAChC,IAAI,SAAS,EAAE;QACb,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3E,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;KAC5E;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"object.js","sourceRoot":"","sources":["../../src/util/object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,MAAM,CAAC,MAAM,KAAK,GAAG,CAAI,MAAS,EAAK,EAAE;IACvC,IAAI,MAAM,KAAK,IAAI,EAAE;QACnB,OAAO,MAAM,CAAC;KACf;IACD,IAAI,MAAM,YAAY,IAAI,EAAE;QAC1B,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAQ,CAAC;KAC1C;IACD,IAAI,MAAM,YAAY,KAAK,EAAE;QAC3B,MAAM,EAAE,GAAG,EAAW,CAAC;QACtB,MAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9B,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACb,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,KAAK,CAAM,CAAC,CAAC,CAAQ,CAAC;KACjD;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,MAAM,EAAE,GAAG,EAA4B,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAChC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAO,MAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QACH,OAAO,EAAO,CAAC;KAChB;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,MAAS,EACT,SAA4B,EACzB,EAAE;IACL,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IAChC,IAAI,SAAS,EAAE;QACb,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QAC3E,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;KAC5E;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export type Size = number | number[];
2
+ export type STDSize = [number, number, number];
3
+ export declare function parseSize(size?: Size): STDSize;
@@ -0,0 +1,12 @@
1
+ import { isNumber } from '@antv/util';
2
+ export function parseSize(size) {
3
+ if (!size)
4
+ return [0, 0, 0];
5
+ if (isNumber(size))
6
+ return [size, size, size];
7
+ else if (size.length === 0)
8
+ return [0, 0, 0];
9
+ const [x, y = x, z = x] = size;
10
+ return [x, y, z];
11
+ }
12
+ //# sourceMappingURL=size.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"size.js","sourceRoot":"","sources":["../../src/util/size.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAKtC,MAAM,UAAU,SAAS,CAAC,IAAW;IACnC,IAAI,CAAC,IAAI;QAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,IAAI,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;SACzC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACnB,CAAC"}
package/lib/worker.js CHANGED
@@ -1,43 +1,42 @@
1
- import { __awaiter, __generator } from "tslib";
1
+ import { __awaiter } from "tslib";
2
2
  import { Graph } from "@antv/graphlib";
3
3
  import * as Comlink from "comlink";
4
4
  import { registry } from "./registry";
5
5
  import { isLayoutWithIterations } from "./types";
6
- var currentLayout;
7
- var obj = {
8
- stopLayout: function () {
6
+ let currentLayout;
7
+ const obj = {
8
+ stopLayout() {
9
9
  if (currentLayout === null || currentLayout === void 0 ? void 0 : currentLayout.stop) {
10
10
  currentLayout.stop();
11
11
  }
12
12
  },
13
- calculateLayout: function (payload, transferables) {
14
- return __awaiter(this, void 0, void 0, function () {
15
- var _a, id, options, iterations, nodes, edges, graph, layoutCtor, positions;
16
- return __generator(this, function (_b) {
17
- switch (_b.label) {
18
- case 0:
19
- _a = payload.layout, id = _a.id, options = _a.options, iterations = _a.iterations, nodes = payload.nodes, edges = payload.edges;
20
- graph = new Graph({
21
- nodes: nodes,
22
- edges: edges,
23
- });
24
- layoutCtor = registry[id];
25
- if (layoutCtor) {
26
- currentLayout = new layoutCtor(options);
27
- }
28
- else {
29
- throw new Error("Unknown layout id: " + id);
30
- }
31
- return [4 /*yield*/, currentLayout.execute(graph)];
32
- case 1:
33
- positions = _b.sent();
34
- if (isLayoutWithIterations(currentLayout)) {
35
- currentLayout.stop();
36
- positions = currentLayout.tick(iterations);
37
- }
38
- return [2 /*return*/, [positions, transferables]];
39
- }
13
+ calculateLayout(payload, transferables) {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ const { layout: { id, options, iterations }, nodes, edges, } = payload;
16
+ // Sync graph on the worker side.
17
+ // TODO: Use transferable objects like ArrayBuffer for nodes & edges,
18
+ // in which case we don't need the whole graph.
19
+ // @see https://github.com/graphology/graphology/blob/master/src/layout-noverlap/webworker.tpl.js#L32
20
+ const graph = new Graph({
21
+ nodes,
22
+ edges,
40
23
  });
24
+ /**
25
+ * Create layout instance on the worker side.
26
+ */
27
+ const layoutCtor = registry[id];
28
+ if (layoutCtor) {
29
+ currentLayout = new layoutCtor(options);
30
+ }
31
+ else {
32
+ throw new Error(`Unknown layout id: ${id}`);
33
+ }
34
+ let positions = yield currentLayout.execute(graph);
35
+ if (isLayoutWithIterations(currentLayout)) {
36
+ currentLayout.stop();
37
+ positions = currentLayout.tick(iterations);
38
+ }
39
+ return [positions, transferables];
41
40
  });
42
41
  },
43
42
  };
package/lib/worker.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.js"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEjD,IAAI,aAAa,CAAC;AAElB,IAAM,GAAG,GAAG;IACV,UAAU;QACR,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,EAAE;YACvB,aAAa,CAAC,IAAI,EAAE,CAAC;SACtB;IACH,CAAC;IACK,eAAe,YAAC,OAAO,EAAE,aAAa;;;;;;wBAExC,KAGE,OAAO,OAH0B,EAAzB,EAAE,QAAA,EAAE,OAAO,aAAA,EAAE,UAAU,gBAAA,EACjC,KAAK,GAEH,OAAO,MAFJ,EACL,KAAK,GACH,OAAO,MADJ,CACK;wBAMN,KAAK,GAAG,IAAI,KAAK,CAAC;4BACtB,KAAK,OAAA;4BACL,KAAK,OAAA;yBACN,CAAC,CAAC;wBAMG,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;wBAChC,IAAI,UAAU,EAAE;4BACd,aAAa,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;yBACzC;6BAAM;4BACL,MAAM,IAAI,KAAK,CAAC,wBAAsB,EAAI,CAAC,CAAC;yBAC7C;wBAEe,qBAAM,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,EAAA;;wBAA9C,SAAS,GAAG,SAAkC;wBAClD,IAAI,sBAAsB,CAAC,aAAa,CAAC,EAAE;4BACzC,aAAa,CAAC,IAAI,EAAE,CAAC;4BACrB,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;yBAC5C;wBACD,sBAAO,CAAC,SAAS,EAAE,aAAa,CAAC,EAAC;;;;KACnC;CACF,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.js"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAEjD,IAAI,aAAa,CAAC;AAElB,MAAM,GAAG,GAAG;IACV,UAAU;QACR,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,EAAE;YACvB,aAAa,CAAC,IAAI,EAAE,CAAC;SACtB;IACH,CAAC;IACK,eAAe,CAAC,OAAO,EAAE,aAAa;;YAC1C,MAAM,EACJ,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,EACnC,KAAK,EACL,KAAK,GACN,GAAG,OAAO,CAAC;YAEZ,iCAAiC;YACjC,qEAAqE;YACrE,+CAA+C;YAC/C,qGAAqG;YACrG,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;gBACtB,KAAK;gBACL,KAAK;aACN,CAAC,CAAC;YAEH;;eAEG;YAEH,MAAM,UAAU,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;YAChC,IAAI,UAAU,EAAE;gBACd,aAAa,GAAG,IAAI,UAAU,CAAC,OAAO,CAAC,CAAC;aACzC;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;aAC7C;YAED,IAAI,SAAS,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACnD,IAAI,sBAAsB,CAAC,aAAa,CAAC,EAAE;gBACzC,aAAa,CAAC,IAAI,EAAE,CAAC;gBACrB,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC5C;YACD,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACpC,CAAC;KAAA;CACF,CAAC;AAEF,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antv/layout",
3
- "version": "1.2.13",
3
+ "version": "1.2.14-beta.1",
4
4
  "description": "graph layout algorithm",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -33,8 +33,9 @@
33
33
  "@naoak/workerize-transferable": "^0.1.0",
34
34
  "comlink": "^4.4.1",
35
35
  "d3-force": "^3.0.0",
36
- "d3-quadtree": "^3.0.1",
37
36
  "d3-octree": "^1.0.2",
37
+ "d3-quadtree": "^3.0.1",
38
+ "dagre": "^0.8.5",
38
39
  "ml-matrix": "^6.10.4",
39
40
  "tslib": "^2.5.0"
40
41
  },
@@ -43,6 +44,8 @@
43
44
  "@babel/plugin-proposal-class-properties": "^7.1.0",
44
45
  "@babel/preset-react": "^7.7.4",
45
46
  "@types/d3-force": "^3.0.4",
47
+ "@types/d3-quadtree": "^2.0.6",
48
+ "@types/dagre": "^0.7.52",
46
49
  "babel-loader": "^8.0.6",
47
50
  "ts-loader": "^7.0.3",
48
51
  "typescript": "^4.0.3",
@@ -53,10 +56,11 @@
53
56
  "scripts": {
54
57
  "clean": "rimraf dist lib tsconfig.tsbuildinfo",
55
58
  "dev": "webpack --config webpack.dev.config.js --mode development",
56
- "build": "npm run clean && npm run build:esm && npm run build:umd",
57
- "build:ci": "npm run build",
59
+ "build": "npm run clean && run-p build:*",
60
+ "ci": "npm run build && npm run test",
58
61
  "build:esm": "tsc",
59
62
  "build:umd": "webpack --config webpack.config.js --mode production",
60
- "publish:alpha": "npm publish --tag alpha"
63
+ "publish:alpha": "npm publish --tag alpha",
64
+ "test": "jest"
61
65
  }
62
66
  }