@graphty/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.
Files changed (151) hide show
  1. package/README.md +109 -3
  2. package/dist/layout.js +1762 -0
  3. package/dist/layout.js.map +1 -0
  4. package/package.json +4 -3
  5. package/dist/src/algorithms/index.d.ts +0 -5
  6. package/dist/src/algorithms/index.js +0 -6
  7. package/dist/src/algorithms/index.js.map +0 -1
  8. package/dist/src/algorithms/optimization/index.d.ts +0 -7
  9. package/dist/src/algorithms/optimization/index.js +0 -7
  10. package/dist/src/algorithms/optimization/index.js.map +0 -1
  11. package/dist/src/algorithms/optimization/kamada-kawai-solver.d.ts +0 -32
  12. package/dist/src/algorithms/optimization/kamada-kawai-solver.js +0 -176
  13. package/dist/src/algorithms/optimization/kamada-kawai-solver.js.map +0 -1
  14. package/dist/src/algorithms/optimization/lbfgs.d.ts +0 -13
  15. package/dist/src/algorithms/optimization/lbfgs.js +0 -56
  16. package/dist/src/algorithms/optimization/lbfgs.js.map +0 -1
  17. package/dist/src/algorithms/optimization/line-search.d.ts +0 -15
  18. package/dist/src/algorithms/optimization/line-search.js +0 -37
  19. package/dist/src/algorithms/optimization/line-search.js.map +0 -1
  20. package/dist/src/algorithms/optimization/types.d.ts +0 -5
  21. package/dist/src/algorithms/optimization/types.js +0 -5
  22. package/dist/src/algorithms/optimization/types.js.map +0 -1
  23. package/dist/src/algorithms/planarity/check.d.ts +0 -17
  24. package/dist/src/algorithms/planarity/check.js +0 -30
  25. package/dist/src/algorithms/planarity/check.js.map +0 -1
  26. package/dist/src/algorithms/planarity/embedding.d.ts +0 -29
  27. package/dist/src/algorithms/planarity/embedding.js +0 -179
  28. package/dist/src/algorithms/planarity/embedding.js.map +0 -1
  29. package/dist/src/algorithms/planarity/index.d.ts +0 -7
  30. package/dist/src/algorithms/planarity/index.js +0 -8
  31. package/dist/src/algorithms/planarity/index.js.map +0 -1
  32. package/dist/src/algorithms/planarity/lr-test.d.ts +0 -15
  33. package/dist/src/algorithms/planarity/lr-test.js +0 -54
  34. package/dist/src/algorithms/planarity/lr-test.js.map +0 -1
  35. package/dist/src/algorithms/planarity/special-graphs.d.ts +0 -28
  36. package/dist/src/algorithms/planarity/special-graphs.js +0 -108
  37. package/dist/src/algorithms/planarity/special-graphs.js.map +0 -1
  38. package/dist/src/generators/basic.d.ts +0 -28
  39. package/dist/src/generators/basic.js +0 -79
  40. package/dist/src/generators/basic.js.map +0 -1
  41. package/dist/src/generators/bipartite.d.ts +0 -16
  42. package/dist/src/generators/bipartite.js +0 -40
  43. package/dist/src/generators/bipartite.js.map +0 -1
  44. package/dist/src/generators/grid.d.ts +0 -11
  45. package/dist/src/generators/grid.js +0 -37
  46. package/dist/src/generators/grid.js.map +0 -1
  47. package/dist/src/generators/index.d.ts +0 -8
  48. package/dist/src/generators/index.js +0 -9
  49. package/dist/src/generators/index.js.map +0 -1
  50. package/dist/src/generators/random.d.ts +0 -12
  51. package/dist/src/generators/random.js +0 -34
  52. package/dist/src/generators/random.js.map +0 -1
  53. package/dist/src/generators/scale-free.d.ts +0 -12
  54. package/dist/src/generators/scale-free.js +0 -62
  55. package/dist/src/generators/scale-free.js.map +0 -1
  56. package/dist/src/index.d.ts +0 -10
  57. package/dist/src/index.js +0 -15
  58. package/dist/src/index.js.map +0 -1
  59. package/dist/src/layouts/basic/index.d.ts +0 -4
  60. package/dist/src/layouts/basic/index.js +0 -5
  61. package/dist/src/layouts/basic/index.js.map +0 -1
  62. package/dist/src/layouts/basic/random.d.ts +0 -14
  63. package/dist/src/layouts/basic/random.js +0 -27
  64. package/dist/src/layouts/basic/random.js.map +0 -1
  65. package/dist/src/layouts/force-directed/arf.d.ts +0 -13
  66. package/dist/src/layouts/force-directed/arf.js +0 -103
  67. package/dist/src/layouts/force-directed/arf.js.map +0 -1
  68. package/dist/src/layouts/force-directed/forceatlas2.d.ts +0 -22
  69. package/dist/src/layouts/force-directed/forceatlas2.js +0 -340
  70. package/dist/src/layouts/force-directed/forceatlas2.js.map +0 -1
  71. package/dist/src/layouts/force-directed/fruchterman-reingold.d.ts +0 -19
  72. package/dist/src/layouts/force-directed/fruchterman-reingold.js +0 -131
  73. package/dist/src/layouts/force-directed/fruchterman-reingold.js.map +0 -1
  74. package/dist/src/layouts/force-directed/index.d.ts +0 -8
  75. package/dist/src/layouts/force-directed/index.js +0 -9
  76. package/dist/src/layouts/force-directed/index.js.map +0 -1
  77. package/dist/src/layouts/force-directed/kamada-kawai.d.ts +0 -15
  78. package/dist/src/layouts/force-directed/kamada-kawai.js +0 -87
  79. package/dist/src/layouts/force-directed/kamada-kawai.js.map +0 -1
  80. package/dist/src/layouts/force-directed/spring.d.ts +0 -19
  81. package/dist/src/layouts/force-directed/spring.js +0 -23
  82. package/dist/src/layouts/force-directed/spring.js.map +0 -1
  83. package/dist/src/layouts/geometric/circular.d.ts +0 -14
  84. package/dist/src/layouts/geometric/circular.js +0 -67
  85. package/dist/src/layouts/geometric/circular.js.map +0 -1
  86. package/dist/src/layouts/geometric/index.d.ts +0 -6
  87. package/dist/src/layouts/geometric/index.js +0 -7
  88. package/dist/src/layouts/geometric/index.js.map +0 -1
  89. package/dist/src/layouts/geometric/shell.d.ts +0 -15
  90. package/dist/src/layouts/geometric/shell.js +0 -67
  91. package/dist/src/layouts/geometric/shell.js.map +0 -1
  92. package/dist/src/layouts/geometric/spiral.d.ts +0 -16
  93. package/dist/src/layouts/geometric/spiral.js +0 -73
  94. package/dist/src/layouts/geometric/spiral.js.map +0 -1
  95. package/dist/src/layouts/hierarchical/bfs.d.ts +0 -12
  96. package/dist/src/layouts/hierarchical/bfs.js +0 -62
  97. package/dist/src/layouts/hierarchical/bfs.js.map +0 -1
  98. package/dist/src/layouts/hierarchical/bipartite.d.ts +0 -16
  99. package/dist/src/layouts/hierarchical/bipartite.js +0 -72
  100. package/dist/src/layouts/hierarchical/bipartite.js.map +0 -1
  101. package/dist/src/layouts/hierarchical/index.d.ts +0 -6
  102. package/dist/src/layouts/hierarchical/index.js +0 -7
  103. package/dist/src/layouts/hierarchical/index.js.map +0 -1
  104. package/dist/src/layouts/hierarchical/multipartite.d.ts +0 -12
  105. package/dist/src/layouts/hierarchical/multipartite.js +0 -73
  106. package/dist/src/layouts/hierarchical/multipartite.js.map +0 -1
  107. package/dist/src/layouts/index.d.ts +0 -8
  108. package/dist/src/layouts/index.js +0 -9
  109. package/dist/src/layouts/index.js.map +0 -1
  110. package/dist/src/layouts/specialized/index.d.ts +0 -5
  111. package/dist/src/layouts/specialized/index.js +0 -6
  112. package/dist/src/layouts/specialized/index.js.map +0 -1
  113. package/dist/src/layouts/specialized/planar.d.ts +0 -14
  114. package/dist/src/layouts/specialized/planar.js +0 -47
  115. package/dist/src/layouts/specialized/planar.js.map +0 -1
  116. package/dist/src/layouts/specialized/spectral.d.ts +0 -14
  117. package/dist/src/layouts/specialized/spectral.js +0 -106
  118. package/dist/src/layouts/specialized/spectral.js.map +0 -1
  119. package/dist/src/types/embedding.d.ts +0 -9
  120. package/dist/src/types/embedding.js +0 -5
  121. package/dist/src/types/embedding.js.map +0 -1
  122. package/dist/src/types/graph.d.ts +0 -10
  123. package/dist/src/types/graph.js +0 -5
  124. package/dist/src/types/graph.js.map +0 -1
  125. package/dist/src/types/index.d.ts +0 -6
  126. package/dist/src/types/index.js +0 -7
  127. package/dist/src/types/index.js.map +0 -1
  128. package/dist/src/types/layout.d.ts +0 -6
  129. package/dist/src/types/layout.js +0 -5
  130. package/dist/src/types/layout.js.map +0 -1
  131. package/dist/src/utils/graph.d.ts +0 -34
  132. package/dist/src/utils/graph.js +0 -69
  133. package/dist/src/utils/graph.js.map +0 -1
  134. package/dist/src/utils/index.d.ts +0 -8
  135. package/dist/src/utils/index.js +0 -9
  136. package/dist/src/utils/index.js.map +0 -1
  137. package/dist/src/utils/numpy.d.ts +0 -17
  138. package/dist/src/utils/numpy.js +0 -101
  139. package/dist/src/utils/numpy.js.map +0 -1
  140. package/dist/src/utils/params.d.ts +0 -17
  141. package/dist/src/utils/params.js +0 -22
  142. package/dist/src/utils/params.js.map +0 -1
  143. package/dist/src/utils/random.d.ts +0 -14
  144. package/dist/src/utils/random.js +0 -42
  145. package/dist/src/utils/random.js.map +0 -1
  146. package/dist/src/utils/rescale.d.ts +0 -21
  147. package/dist/src/utils/rescale.js +0 -194
  148. package/dist/src/utils/rescale.js.map +0 -1
  149. package/dist/vitest.config.d.ts +0 -2
  150. package/dist/vitest.config.js +0 -30
  151. package/dist/vitest.config.js.map +0 -1
@@ -1,9 +0,0 @@
1
- /**
2
- * Re-export all utilities
3
- */
4
- export * from './numpy';
5
- export * from './random';
6
- export * from './graph';
7
- export * from './params';
8
- export * from './rescale';
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC"}
@@ -1,17 +0,0 @@
1
- /**
2
- * NumPy-like array manipulation functions
3
- * Maintains exact same functionality as original implementation
4
- */
5
- export declare const np: {
6
- zeros: (shape: number | number[]) => number | number[] | number[][] | any[];
7
- ones: (shape: number | number[]) => number | any[];
8
- linspace: (start: number, stop: number, num: number) => number[];
9
- array: (arr: any) => any[];
10
- repeat: (a: any, repeats: number) => any[];
11
- mean: (arr: number[] | number[][], axis?: number | null) => number | number[];
12
- add: (a: number | number[], b: number | number[]) => number | number[];
13
- subtract: (a: number | number[], b: number | number[]) => number | number[];
14
- max: (arr: number | number[]) => number;
15
- min: (arr: number | number[]) => number;
16
- norm: (arr: number[]) => number;
17
- };
@@ -1,101 +0,0 @@
1
- /**
2
- * NumPy-like array manipulation functions
3
- * Maintains exact same functionality as original implementation
4
- */
5
- export const np = {
6
- zeros: function (shape) {
7
- if (typeof shape === 'number') {
8
- return Array(shape).fill(0);
9
- }
10
- if (shape.length === 1) {
11
- return Array(shape[0]).fill(0);
12
- }
13
- return Array(shape[0]).fill(0).map(() => this.zeros(shape.slice(1)));
14
- },
15
- ones: function (shape) {
16
- if (typeof shape === 'number') {
17
- return Array(shape).fill(1);
18
- }
19
- if (shape.length === 1) {
20
- return Array(shape[0]).fill(1);
21
- }
22
- return Array(shape[0]).fill(1).map(() => this.ones(shape.slice(1)));
23
- },
24
- linspace: function (start, stop, num) {
25
- if (num === 1) {
26
- return [start];
27
- }
28
- const step = (stop - start) / (num - 1);
29
- return Array.from({ length: num }, (_, i) => start + i * step);
30
- },
31
- array: function (arr) {
32
- return Array.isArray(arr) ? [...arr] : [arr];
33
- },
34
- repeat: function (a, repeats) {
35
- const result = [];
36
- for (let i = 0; i < repeats; i++) {
37
- result.push(...np.array(a));
38
- }
39
- return result;
40
- },
41
- mean: function (arr, axis = null) {
42
- if (axis === null) {
43
- const flatArr = Array.isArray(arr[0])
44
- ? arr.flat(Infinity)
45
- : arr;
46
- const sum = flatArr.reduce((a, b) => a + b, 0);
47
- return sum / flatArr.length;
48
- }
49
- if (axis === 0) {
50
- const result = [];
51
- const matrix = arr;
52
- for (let i = 0; i < matrix[0].length; i++) {
53
- let sum = 0;
54
- for (let j = 0; j < matrix.length; j++) {
55
- sum += matrix[j][i];
56
- }
57
- result.push(sum / matrix.length);
58
- }
59
- return result;
60
- }
61
- return arr.map(row => np.mean(row));
62
- },
63
- add: function (a, b) {
64
- if (!Array.isArray(a) && !Array.isArray(b)) {
65
- return a + b;
66
- }
67
- if (!Array.isArray(a)) {
68
- return b.map(val => a + val);
69
- }
70
- if (!Array.isArray(b)) {
71
- return a.map(val => val + b);
72
- }
73
- return a.map((val, i) => val + b[i]);
74
- },
75
- subtract: function (a, b) {
76
- if (!Array.isArray(a) && !Array.isArray(b)) {
77
- return a - b;
78
- }
79
- if (!Array.isArray(a)) {
80
- return b.map(val => a - val);
81
- }
82
- if (!Array.isArray(b)) {
83
- return a.map(val => val - b);
84
- }
85
- return a.map((val, i) => val - b[i]);
86
- },
87
- max: function (arr) {
88
- if (!Array.isArray(arr))
89
- return arr;
90
- return Math.max(...arr.flat(Infinity));
91
- },
92
- min: function (arr) {
93
- if (!Array.isArray(arr))
94
- return arr;
95
- return Math.min(...arr.flat(Infinity));
96
- },
97
- norm: function (arr) {
98
- return Math.sqrt(arr.reduce((sum, val) => sum + val * val, 0));
99
- }
100
- };
101
- //# sourceMappingURL=numpy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"numpy.js","sourceRoot":"","sources":["../../../src/utils/numpy.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,EAAE,GAAG;IAChB,KAAK,EAAE,UAAU,KAAwB;QACvC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,EAAE,UAAU,KAAwB;QACtC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,QAAQ,EAAE,UAAU,KAAa,EAAE,IAAY,EAAE,GAAW;QAC1D,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;YACd,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QACxC,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,EAAE,UAAU,GAAQ;QACvB,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,EAAE,UAAU,CAAM,EAAE,OAAe;QACvC,MAAM,MAAM,GAAU,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,EAAE,UAAU,GAA0B,EAAE,OAAsB,IAAI;QACpE,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACnC,CAAC,CAAE,GAAkB,CAAC,IAAI,CAAC,QAAQ,CAAa;gBAChD,CAAC,CAAC,GAAe,CAAC;YACpB,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/C,OAAO,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,CAAC;QAED,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,GAAiB,CAAC;YACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC1C,IAAI,GAAG,GAAG,CAAC,CAAC;gBACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACvC,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtB,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,OAAQ,GAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAW,CAAC,CAAC;IAChE,CAAC;IAED,GAAG,EAAE,UAAU,CAAoB,EAAE,CAAoB;QACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,OAAQ,CAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,OAAQ,CAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAC7C,CAAC;QACD,OAAQ,CAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAI,CAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,QAAQ,EAAE,UAAU,CAAoB,EAAE,CAAoB;QAC5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,OAAQ,CAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,OAAQ,CAAc,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAC7C,CAAC;QACD,OAAQ,CAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAI,CAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,GAAG,EAAE,UAAU,GAAsB;QACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC;QACpC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAI,GAAgB,CAAC,IAAI,CAAC,QAAQ,CAAa,CAAC,CAAC;IACnE,CAAC;IAED,GAAG,EAAE,UAAU,GAAsB;QACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,GAAG,CAAC;QACpC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAI,GAAgB,CAAC,IAAI,CAAC,QAAQ,CAAa,CAAC,CAAC;IACnE,CAAC;IAED,IAAI,EAAE,UAAU,GAAa;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;IACjE,CAAC;CACF,CAAC"}
@@ -1,17 +0,0 @@
1
- /**
2
- * Parameter processing utilities
3
- */
4
- import { Graph, Node } from '../types';
5
- /**
6
- * Process and validate layout parameters
7
- * Helper function similar to _process_params in Python version
8
- *
9
- * @param G - Graph object or array of nodes
10
- * @param center - Center coordinates or null
11
- * @param dim - Dimension of layout
12
- * @returns Processed parameters
13
- */
14
- export declare function _processParams(G: Graph | Node[], center: number[] | null, dim: number): {
15
- G: Graph | Node[];
16
- center: number[];
17
- };
@@ -1,22 +0,0 @@
1
- /**
2
- * Parameter processing utilities
3
- */
4
- /**
5
- * Process and validate layout parameters
6
- * Helper function similar to _process_params in Python version
7
- *
8
- * @param G - Graph object or array of nodes
9
- * @param center - Center coordinates or null
10
- * @param dim - Dimension of layout
11
- * @returns Processed parameters
12
- */
13
- export function _processParams(G, center, dim) {
14
- if (!center) {
15
- center = Array(dim).fill(0);
16
- }
17
- if (center.length !== dim) {
18
- throw new Error("length of center coordinates must match dimension of layout");
19
- }
20
- return { G, center };
21
- }
22
- //# sourceMappingURL=params.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"params.js","sourceRoot":"","sources":["../../../src/utils/params.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;GAQG;AACH,MAAM,UAAU,cAAc,CAAC,CAAiB,EAAE,MAAuB,EAAE,GAAW;IACpF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACjF,CAAC;IAED,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;AACvB,CAAC"}
@@ -1,14 +0,0 @@
1
- /**
2
- * Random number generator for seed-based randomization
3
- * Maintains exact same functionality as original implementation
4
- */
5
- export declare class RandomNumberGenerator {
6
- private seed;
7
- private m;
8
- private a;
9
- private c;
10
- private _state;
11
- constructor(seed?: number);
12
- _next(): number;
13
- rand(shape?: number | number[] | null): number | number[] | number[][];
14
- }
@@ -1,42 +0,0 @@
1
- /**
2
- * Random number generator for seed-based randomization
3
- * Maintains exact same functionality as original implementation
4
- */
5
- export class RandomNumberGenerator {
6
- constructor(seed) {
7
- this.seed = seed || Math.floor(Math.random() * 1000000);
8
- this.m = 2 ** 35 - 31;
9
- this.a = 185852;
10
- this.c = 1;
11
- this._state = this.seed % this.m;
12
- }
13
- _next() {
14
- this._state = (this.a * this._state + this.c) % this.m;
15
- return this._state / this.m;
16
- }
17
- rand(shape = null) {
18
- if (shape === null) {
19
- return this._next();
20
- }
21
- if (typeof shape === 'number') {
22
- const result = [];
23
- for (let i = 0; i < shape; i++) {
24
- result.push(this._next());
25
- }
26
- return result;
27
- }
28
- if (shape.length === 1) {
29
- const result = [];
30
- for (let i = 0; i < shape[0]; i++) {
31
- result.push(this._next());
32
- }
33
- return result;
34
- }
35
- const result = [];
36
- for (let i = 0; i < shape[0]; i++) {
37
- result.push(this.rand(shape.slice(1)));
38
- }
39
- return result;
40
- }
41
- }
42
- //# sourceMappingURL=random.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"random.js","sourceRoot":"","sources":["../../../src/utils/random.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,OAAO,qBAAqB;IAOhC,YAAY,IAAa;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,IAAI,CAAC,QAAkC,IAAI;QACzC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC/B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAC5B,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,MAAM,GAAU,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
@@ -1,21 +0,0 @@
1
- /**
2
- * Layout rescaling utilities
3
- */
4
- import { PositionMap } from '../types';
5
- /**
6
- * Returns scaled position array/dict to (-scale, scale) in all axes.
7
- *
8
- * @param pos - Position dictionary or array
9
- * @param scale - Scale factor for positions
10
- * @param center - Coordinate pair around which to center the layout
11
- * @returns Rescaled positions dictionary
12
- */
13
- export declare function rescaleLayout(pos: PositionMap | number[][], scale?: number, center?: number[] | null): PositionMap | number[][];
14
- /**
15
- * Return a dictionary of scaled positions centered at (0, 0).
16
- *
17
- * @param pos - Dictionary of positions
18
- * @param scale - Scale factor for positions
19
- * @returns Dictionary of scaled positions
20
- */
21
- export declare function rescaleLayoutDict(pos: PositionMap, scale?: number): PositionMap;
@@ -1,194 +0,0 @@
1
- /**
2
- * Layout rescaling utilities
3
- */
4
- /**
5
- * Returns scaled position array/dict to (-scale, scale) in all axes.
6
- *
7
- * @param pos - Position dictionary or array
8
- * @param scale - Scale factor for positions
9
- * @param center - Coordinate pair around which to center the layout
10
- * @returns Rescaled positions dictionary
11
- */
12
- export function rescaleLayout(pos, scale = 1, center = null) {
13
- // Check if pos is empty
14
- if (Array.isArray(pos)) {
15
- if (pos.length === 0)
16
- return [];
17
- }
18
- else {
19
- if (Object.keys(pos).length === 0)
20
- return {};
21
- }
22
- // Extract position values
23
- const posValues = Array.isArray(pos) ? pos : Object.values(pos);
24
- const dim = posValues[0].length;
25
- // Fix Bug #1: Default center should match dimensionality
26
- if (!center) {
27
- center = Array(dim).fill(0);
28
- }
29
- // Use the maximum dimension between positions and center
30
- const targetDim = Math.max(dim, center.length);
31
- // Calculate center of positions, handling NaN values (Bug #3)
32
- const posCenter = Array(dim).fill(0);
33
- const counts = Array(dim).fill(0);
34
- for (const p of posValues) {
35
- for (let i = 0; i < dim; i++) {
36
- if (!isNaN(p[i])) {
37
- posCenter[i] += p[i];
38
- counts[i]++;
39
- }
40
- }
41
- }
42
- // Average by actual count, not total length
43
- for (let i = 0; i < dim; i++) {
44
- posCenter[i] = counts[i] > 0 ? posCenter[i] / counts[i] : 0;
45
- }
46
- // Center positions
47
- let centeredPos = {};
48
- if (Array.isArray(pos)) {
49
- centeredPos = pos.map(p => {
50
- const centered = Array(targetDim).fill(0);
51
- for (let i = 0; i < targetDim; i++) {
52
- centered[i] = (i < p.length ? p[i] : 0) - (i < posCenter.length ? posCenter[i] : 0);
53
- }
54
- return centered;
55
- });
56
- }
57
- else {
58
- for (const [node, p] of Object.entries(pos)) {
59
- const centered = Array(targetDim).fill(0);
60
- for (let i = 0; i < targetDim; i++) {
61
- centered[i] = (i < p.length ? p[i] : 0) - (i < posCenter.length ? posCenter[i] : 0);
62
- }
63
- centeredPos[node] = centered;
64
- }
65
- }
66
- // Find maximum distance from center, handling NaN values (Bug #3)
67
- let maxDistance = 0;
68
- const centeredValues = Array.isArray(centeredPos) ? centeredPos : Object.values(centeredPos);
69
- for (const p of centeredValues) {
70
- // Calculate distance, treating NaN as 0 for distance calculation
71
- let sumSquares = 0;
72
- for (const val of p) {
73
- if (!isNaN(val)) {
74
- sumSquares += val * val;
75
- }
76
- }
77
- const distance = Math.sqrt(sumSquares);
78
- if (!isNaN(distance)) {
79
- maxDistance = Math.max(maxDistance, distance);
80
- }
81
- }
82
- // Rescale
83
- let scaledPos = Array.isArray(pos) ? [] : {};
84
- if (maxDistance > 0) {
85
- const scaleFactor = scale / maxDistance;
86
- if (Array.isArray(pos)) {
87
- scaledPos = centeredPos.map((p, idx) => p.map((val, i) => {
88
- // Check if this dimension existed in the original position
89
- const origPos = pos[idx];
90
- if (i >= origPos.length) {
91
- // This dimension was added, use center value
92
- return center[i];
93
- }
94
- // Preserve NaN values (Bug #3)
95
- if (isNaN(val))
96
- return NaN;
97
- return val * scaleFactor + center[i];
98
- }));
99
- }
100
- else {
101
- for (const [node, p] of Object.entries(centeredPos)) {
102
- const origPos = pos[node];
103
- scaledPos[node] = p.map((val, i) => {
104
- // Check if this dimension existed in the original position
105
- if (i >= origPos.length) {
106
- // This dimension was added, use center value
107
- return center[i];
108
- }
109
- // Preserve NaN values (Bug #3)
110
- if (isNaN(val))
111
- return NaN;
112
- return val * scaleFactor + center[i];
113
- });
114
- }
115
- }
116
- }
117
- else {
118
- // All nodes at the same position - extend to target dimensionality
119
- if (Array.isArray(pos)) {
120
- scaledPos = pos.map(p => {
121
- const result = Array(targetDim);
122
- for (let i = 0; i < targetDim; i++) {
123
- if (i < p.length) {
124
- result[i] = isNaN(p[i]) ? NaN : center[i];
125
- }
126
- else {
127
- result[i] = center[i];
128
- }
129
- }
130
- return result;
131
- });
132
- }
133
- else {
134
- for (const [node, p] of Object.entries(pos)) {
135
- const result = Array(targetDim);
136
- for (let i = 0; i < targetDim; i++) {
137
- if (i < p.length) {
138
- result[i] = isNaN(p[i]) ? NaN : center[i];
139
- }
140
- else {
141
- result[i] = center[i];
142
- }
143
- }
144
- scaledPos[node] = result;
145
- }
146
- }
147
- }
148
- return scaledPos;
149
- }
150
- /**
151
- * Return a dictionary of scaled positions centered at (0, 0).
152
- *
153
- * @param pos - Dictionary of positions
154
- * @param scale - Scale factor for positions
155
- * @returns Dictionary of scaled positions
156
- */
157
- export function rescaleLayoutDict(pos, scale = 1) {
158
- if (Object.keys(pos).length === 0) {
159
- return {};
160
- }
161
- // Extract positions as array
162
- const posArray = Object.values(pos);
163
- // Find center of positions
164
- const center = [];
165
- for (let d = 0; d < posArray[0].length; d++) {
166
- center[d] = posArray.reduce((sum, p) => sum + p[d], 0) / posArray.length;
167
- }
168
- // Center positions
169
- const centeredPos = {};
170
- for (const [node, p] of Object.entries(pos)) {
171
- centeredPos[node] = p.map((val, d) => val - center[d]);
172
- }
173
- // Find maximum distance from center
174
- let maxDist = 0;
175
- for (const p of Object.values(centeredPos)) {
176
- const dist = Math.sqrt(p.reduce((sum, val) => sum + val * val, 0));
177
- maxDist = Math.max(maxDist, dist);
178
- }
179
- // Scale positions
180
- const scaledPos = {};
181
- if (maxDist > 0) {
182
- for (const [node, p] of Object.entries(centeredPos)) {
183
- scaledPos[node] = p.map(val => val * scale / maxDist);
184
- }
185
- }
186
- else {
187
- // All points at the center
188
- for (const node of Object.keys(centeredPos)) {
189
- scaledPos[node] = Array(centeredPos[node].length).fill(0);
190
- }
191
- }
192
- return scaledPos;
193
- }
194
- //# sourceMappingURL=rescale.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"rescale.js","sourceRoot":"","sources":["../../../src/utils/rescale.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- declare const _default: import("vite").UserConfig;
2
- export default _default;
@@ -1,30 +0,0 @@
1
- import { defineConfig } from 'vitest/config';
2
- export default defineConfig({
3
- test: {
4
- globals: true,
5
- environment: 'happy-dom',
6
- pool: 'forks',
7
- testTimeout: 30000,
8
- coverage: {
9
- provider: 'v8',
10
- reporter: ['text', 'json', 'html', 'lcov'],
11
- include: ['src/**/*.ts'],
12
- exclude: ['**/*.d.ts', '**/*.test.ts'],
13
- all: true,
14
- thresholds: {
15
- lines: 65,
16
- functions: 60,
17
- branches: 85,
18
- statements: 65
19
- }
20
- },
21
- include: ['test/**/*.test.ts', 'test/**/*.test.js'],
22
- reporters: ['verbose']
23
- },
24
- resolve: {
25
- alias: {
26
- '@': '/src'
27
- }
28
- }
29
- });
30
- //# sourceMappingURL=vitest.config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vitest.config.js","sourceRoot":"","sources":["../vitest.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAE7C,eAAe,YAAY,CAAC;IAC1B,IAAI,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,WAAW;QACxB,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,KAAK;QAClB,QAAQ,EAAE;YACR,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;YAC1C,OAAO,EAAE,CAAC,aAAa,CAAC;YACxB,OAAO,EAAE,CAAC,WAAW,EAAE,cAAc,CAAC;YACtC,GAAG,EAAE,IAAI;YACT,UAAU,EAAE;gBACV,KAAK,EAAE,EAAE;gBACT,SAAS,EAAE,EAAE;gBACb,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;aACf;SACF;QACD,OAAO,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;QACnD,SAAS,EAAE,CAAC,SAAS,CAAC;KACvB;IACD,OAAO,EAAE;QACP,KAAK,EAAE;YACL,GAAG,EAAE,MAAM;SACZ;KACF;CACF,CAAC,CAAC"}