driftdetect-galaxy 0.4.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.
Files changed (149) hide show
  1. package/dist/audio/index.d.ts +8 -0
  2. package/dist/audio/index.d.ts.map +1 -0
  3. package/dist/audio/index.js +8 -0
  4. package/dist/audio/index.js.map +1 -0
  5. package/dist/audio/sound-effects.d.ts +78 -0
  6. package/dist/audio/sound-effects.d.ts.map +1 -0
  7. package/dist/audio/sound-effects.js +660 -0
  8. package/dist/audio/sound-effects.js.map +1 -0
  9. package/dist/audio/useGalaxySound.d.ts +70 -0
  10. package/dist/audio/useGalaxySound.d.ts.map +1 -0
  11. package/dist/audio/useGalaxySound.js +127 -0
  12. package/dist/audio/useGalaxySound.js.map +1 -0
  13. package/dist/components/canvas/GalaxyCamera.d.ts +16 -0
  14. package/dist/components/canvas/GalaxyCamera.d.ts.map +1 -0
  15. package/dist/components/canvas/GalaxyCamera.js +74 -0
  16. package/dist/components/canvas/GalaxyCamera.js.map +1 -0
  17. package/dist/components/canvas/GalaxyCanvas.d.ts +16 -0
  18. package/dist/components/canvas/GalaxyCanvas.d.ts.map +1 -0
  19. package/dist/components/canvas/GalaxyCanvas.js +104 -0
  20. package/dist/components/canvas/GalaxyCanvas.js.map +1 -0
  21. package/dist/components/canvas/GalaxyLighting.d.ts +8 -0
  22. package/dist/components/canvas/GalaxyLighting.d.ts.map +1 -0
  23. package/dist/components/canvas/GalaxyLighting.js +36 -0
  24. package/dist/components/canvas/GalaxyLighting.js.map +1 -0
  25. package/dist/components/canvas/index.d.ts +11 -0
  26. package/dist/components/canvas/index.d.ts.map +1 -0
  27. package/dist/components/canvas/index.js +9 -0
  28. package/dist/components/canvas/index.js.map +1 -0
  29. package/dist/components/connections/DataPathLane.d.ts +26 -0
  30. package/dist/components/connections/DataPathLane.d.ts.map +1 -0
  31. package/dist/components/connections/DataPathLane.js +71 -0
  32. package/dist/components/connections/DataPathLane.js.map +1 -0
  33. package/dist/components/connections/TableRelationship.d.ts +19 -0
  34. package/dist/components/connections/TableRelationship.d.ts.map +1 -0
  35. package/dist/components/connections/TableRelationship.js +46 -0
  36. package/dist/components/connections/TableRelationship.js.map +1 -0
  37. package/dist/components/connections/index.d.ts +10 -0
  38. package/dist/components/connections/index.d.ts.map +1 -0
  39. package/dist/components/connections/index.js +8 -0
  40. package/dist/components/connections/index.js.map +1 -0
  41. package/dist/components/effects/AccessPulse.d.ts +23 -0
  42. package/dist/components/effects/AccessPulse.d.ts.map +1 -0
  43. package/dist/components/effects/AccessPulse.js +72 -0
  44. package/dist/components/effects/AccessPulse.js.map +1 -0
  45. package/dist/components/effects/GalaxyBloom.d.ts +8 -0
  46. package/dist/components/effects/GalaxyBloom.d.ts.map +1 -0
  47. package/dist/components/effects/GalaxyBloom.js +23 -0
  48. package/dist/components/effects/GalaxyBloom.js.map +1 -0
  49. package/dist/components/effects/StarField.d.ts +18 -0
  50. package/dist/components/effects/StarField.d.ts.map +1 -0
  51. package/dist/components/effects/StarField.js +86 -0
  52. package/dist/components/effects/StarField.js.map +1 -0
  53. package/dist/components/effects/index.d.ts +11 -0
  54. package/dist/components/effects/index.d.ts.map +1 -0
  55. package/dist/components/effects/index.js +9 -0
  56. package/dist/components/effects/index.js.map +1 -0
  57. package/dist/components/index.d.ts +11 -0
  58. package/dist/components/index.d.ts.map +1 -0
  59. package/dist/components/index.js +16 -0
  60. package/dist/components/index.js.map +1 -0
  61. package/dist/components/nodes/EntryPointStation.d.ts +22 -0
  62. package/dist/components/nodes/EntryPointStation.d.ts.map +1 -0
  63. package/dist/components/nodes/EntryPointStation.js +120 -0
  64. package/dist/components/nodes/EntryPointStation.js.map +1 -0
  65. package/dist/components/nodes/FieldMoon.d.ts +30 -0
  66. package/dist/components/nodes/FieldMoon.d.ts.map +1 -0
  67. package/dist/components/nodes/FieldMoon.js +92 -0
  68. package/dist/components/nodes/FieldMoon.js.map +1 -0
  69. package/dist/components/nodes/TablePlanet.d.ts +22 -0
  70. package/dist/components/nodes/TablePlanet.d.ts.map +1 -0
  71. package/dist/components/nodes/TablePlanet.js +101 -0
  72. package/dist/components/nodes/TablePlanet.js.map +1 -0
  73. package/dist/components/nodes/index.d.ts +12 -0
  74. package/dist/components/nodes/index.d.ts.map +1 -0
  75. package/dist/components/nodes/index.js +9 -0
  76. package/dist/components/nodes/index.js.map +1 -0
  77. package/dist/components/ui/ControlsPanel.d.ts +7 -0
  78. package/dist/components/ui/ControlsPanel.d.ts.map +1 -0
  79. package/dist/components/ui/ControlsPanel.js +59 -0
  80. package/dist/components/ui/ControlsPanel.js.map +1 -0
  81. package/dist/components/ui/DetailsPanel.d.ts +8 -0
  82. package/dist/components/ui/DetailsPanel.d.ts.map +1 -0
  83. package/dist/components/ui/DetailsPanel.js +44 -0
  84. package/dist/components/ui/DetailsPanel.js.map +1 -0
  85. package/dist/components/ui/SearchOverlay.d.ts +7 -0
  86. package/dist/components/ui/SearchOverlay.d.ts.map +1 -0
  87. package/dist/components/ui/SearchOverlay.js +68 -0
  88. package/dist/components/ui/SearchOverlay.js.map +1 -0
  89. package/dist/components/ui/SecurityPanel.d.ts +8 -0
  90. package/dist/components/ui/SecurityPanel.d.ts.map +1 -0
  91. package/dist/components/ui/SecurityPanel.js +65 -0
  92. package/dist/components/ui/SecurityPanel.js.map +1 -0
  93. package/dist/components/ui/StatsOverlay.d.ts +7 -0
  94. package/dist/components/ui/StatsOverlay.d.ts.map +1 -0
  95. package/dist/components/ui/StatsOverlay.js +29 -0
  96. package/dist/components/ui/StatsOverlay.js.map +1 -0
  97. package/dist/components/ui/index.d.ts +11 -0
  98. package/dist/components/ui/index.d.ts.map +1 -0
  99. package/dist/components/ui/index.js +11 -0
  100. package/dist/components/ui/index.js.map +1 -0
  101. package/dist/constants/index.d.ts +244 -0
  102. package/dist/constants/index.d.ts.map +1 -0
  103. package/dist/constants/index.js +289 -0
  104. package/dist/constants/index.js.map +1 -0
  105. package/dist/hooks/index.d.ts +10 -0
  106. package/dist/hooks/index.d.ts.map +1 -0
  107. package/dist/hooks/index.js +8 -0
  108. package/dist/hooks/index.js.map +1 -0
  109. package/dist/hooks/useAccessStream.d.ts +23 -0
  110. package/dist/hooks/useAccessStream.d.ts.map +1 -0
  111. package/dist/hooks/useAccessStream.js +86 -0
  112. package/dist/hooks/useAccessStream.js.map +1 -0
  113. package/dist/hooks/useGalaxyData.d.ts +83 -0
  114. package/dist/hooks/useGalaxyData.d.ts.map +1 -0
  115. package/dist/hooks/useGalaxyData.js +176 -0
  116. package/dist/hooks/useGalaxyData.js.map +1 -0
  117. package/dist/index.d.ts +28 -0
  118. package/dist/index.d.ts.map +1 -0
  119. package/dist/index.js +38 -0
  120. package/dist/index.js.map +1 -0
  121. package/dist/store/galaxy-store.d.ts +85 -0
  122. package/dist/store/galaxy-store.d.ts.map +1 -0
  123. package/dist/store/galaxy-store.js +254 -0
  124. package/dist/store/galaxy-store.js.map +1 -0
  125. package/dist/store/index.d.ts +5 -0
  126. package/dist/store/index.d.ts.map +1 -0
  127. package/dist/store/index.js +5 -0
  128. package/dist/store/index.js.map +1 -0
  129. package/dist/types/index.d.ts +337 -0
  130. package/dist/types/index.d.ts.map +1 -0
  131. package/dist/types/index.js +8 -0
  132. package/dist/types/index.js.map +1 -0
  133. package/dist/utils/color-utils.d.ts +100 -0
  134. package/dist/utils/color-utils.d.ts.map +1 -0
  135. package/dist/utils/color-utils.js +217 -0
  136. package/dist/utils/color-utils.js.map +1 -0
  137. package/dist/utils/geometry-utils.d.ts +97 -0
  138. package/dist/utils/geometry-utils.d.ts.map +1 -0
  139. package/dist/utils/geometry-utils.js +245 -0
  140. package/dist/utils/geometry-utils.js.map +1 -0
  141. package/dist/utils/index.d.ts +7 -0
  142. package/dist/utils/index.d.ts.map +1 -0
  143. package/dist/utils/index.js +7 -0
  144. package/dist/utils/index.js.map +1 -0
  145. package/dist/utils/layout-engine.d.ts +40 -0
  146. package/dist/utils/layout-engine.d.ts.map +1 -0
  147. package/dist/utils/layout-engine.js +343 -0
  148. package/dist/utils/layout-engine.js.map +1 -0
  149. package/package.json +58 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color-utils.js","sourceRoot":"","sources":["../../src/utils/color-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Geometry Utilities
3
+ *
4
+ * 3D geometry calculations for galaxy visualization.
5
+ */
6
+ import * as THREE from 'three';
7
+ import type { Vector3D } from '../types/index.js';
8
+ /**
9
+ * Convert Vector3D to THREE.Vector3
10
+ */
11
+ export declare function toThreeVector(v: Vector3D): THREE.Vector3;
12
+ /**
13
+ * Convert THREE.Vector3 to Vector3D
14
+ */
15
+ export declare function fromThreeVector(v: THREE.Vector3): Vector3D;
16
+ /**
17
+ * Calculate distance between two points
18
+ */
19
+ export declare function distance(a: Vector3D, b: Vector3D): number;
20
+ /**
21
+ * Calculate midpoint between two points
22
+ */
23
+ export declare function midpoint(a: Vector3D, b: Vector3D): Vector3D;
24
+ /**
25
+ * Normalize a vector
26
+ */
27
+ export declare function normalize(v: Vector3D): Vector3D;
28
+ /**
29
+ * Scale a vector
30
+ */
31
+ export declare function scale(v: Vector3D, s: number): Vector3D;
32
+ /**
33
+ * Add two vectors
34
+ */
35
+ export declare function add(a: Vector3D, b: Vector3D): Vector3D;
36
+ /**
37
+ * Subtract two vectors
38
+ */
39
+ export declare function subtract(a: Vector3D, b: Vector3D): Vector3D;
40
+ /**
41
+ * Linear interpolation between two vectors
42
+ */
43
+ export declare function lerp(a: Vector3D, b: Vector3D, t: number): Vector3D;
44
+ /**
45
+ * Generate a curved path between two points (for hyperspace lanes)
46
+ */
47
+ export declare function generateCurvedPath(start: Vector3D, end: Vector3D, _segments?: number, curvature?: number): THREE.CatmullRomCurve3;
48
+ /**
49
+ * Generate points along a curve
50
+ */
51
+ export declare function getCurvePoints(curve: THREE.CatmullRomCurve3, segments: number): THREE.Vector3[];
52
+ /**
53
+ * Calculate position on orbit
54
+ */
55
+ export declare function getOrbitPosition(center: Vector3D, radius: number, angle: number, tilt?: number): Vector3D;
56
+ /**
57
+ * Generate orbit path points
58
+ */
59
+ export declare function generateOrbitPath(center: Vector3D, radius: number, segments?: number, tilt?: number): Vector3D[];
60
+ /**
61
+ * Calculate bounding sphere for a set of points
62
+ */
63
+ export declare function calculateBoundingSphere(points: Vector3D[]): {
64
+ center: Vector3D;
65
+ radius: number;
66
+ };
67
+ /**
68
+ * Check if a point is within camera frustum
69
+ */
70
+ export declare function isInFrustum(point: Vector3D, camera: THREE.Camera, margin?: number): boolean;
71
+ /**
72
+ * Calculate table size based on metrics
73
+ */
74
+ export declare function calculateTableSize(rowCount: number, accessCount: number, minSize?: number, maxSize?: number): number;
75
+ /**
76
+ * Calculate field size based on access count
77
+ */
78
+ export declare function calculateFieldSize(accessCount: number, isSensitive: boolean, baseSize?: number): number;
79
+ /**
80
+ * Calculate path width based on frequency
81
+ */
82
+ export declare function calculatePathWidth(frequency: number, minWidth?: number, maxWidth?: number): number;
83
+ /**
84
+ * Calculate camera position to frame a set of points
85
+ */
86
+ export declare function calculateFramingPosition(points: Vector3D[], fov: number, _aspectRatio: number): {
87
+ position: Vector3D;
88
+ target: Vector3D;
89
+ };
90
+ /**
91
+ * Smooth camera transition parameters
92
+ */
93
+ export declare function calculateCameraTransition(currentPos: Vector3D, targetPos: Vector3D, currentTarget: Vector3D, newTarget: Vector3D, progress: number): {
94
+ position: Vector3D;
95
+ target: Vector3D;
96
+ };
97
+ //# sourceMappingURL=geometry-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometry-utils.d.ts","sourceRoot":"","sources":["../../src/utils/geometry-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,245 @@
1
+ /**
2
+ * Geometry Utilities
3
+ *
4
+ * 3D geometry calculations for galaxy visualization.
5
+ */
6
+ import * as THREE from 'three';
7
+ // ============================================================================
8
+ // Vector Operations
9
+ // ============================================================================
10
+ /**
11
+ * Convert Vector3D to THREE.Vector3
12
+ */
13
+ export function toThreeVector(v) {
14
+ return new THREE.Vector3(v.x, v.y, v.z);
15
+ }
16
+ /**
17
+ * Convert THREE.Vector3 to Vector3D
18
+ */
19
+ export function fromThreeVector(v) {
20
+ return { x: v.x, y: v.y, z: v.z };
21
+ }
22
+ /**
23
+ * Calculate distance between two points
24
+ */
25
+ export function distance(a, b) {
26
+ const dx = b.x - a.x;
27
+ const dy = b.y - a.y;
28
+ const dz = b.z - a.z;
29
+ return Math.sqrt(dx * dx + dy * dy + dz * dz);
30
+ }
31
+ /**
32
+ * Calculate midpoint between two points
33
+ */
34
+ export function midpoint(a, b) {
35
+ return {
36
+ x: (a.x + b.x) / 2,
37
+ y: (a.y + b.y) / 2,
38
+ z: (a.z + b.z) / 2,
39
+ };
40
+ }
41
+ /**
42
+ * Normalize a vector
43
+ */
44
+ export function normalize(v) {
45
+ const len = Math.sqrt(v.x * v.x + v.y * v.y + v.z * v.z);
46
+ if (len === 0)
47
+ return { x: 0, y: 0, z: 0 };
48
+ return { x: v.x / len, y: v.y / len, z: v.z / len };
49
+ }
50
+ /**
51
+ * Scale a vector
52
+ */
53
+ export function scale(v, s) {
54
+ return { x: v.x * s, y: v.y * s, z: v.z * s };
55
+ }
56
+ /**
57
+ * Add two vectors
58
+ */
59
+ export function add(a, b) {
60
+ return { x: a.x + b.x, y: a.y + b.y, z: a.z + b.z };
61
+ }
62
+ /**
63
+ * Subtract two vectors
64
+ */
65
+ export function subtract(a, b) {
66
+ return { x: a.x - b.x, y: a.y - b.y, z: a.z - b.z };
67
+ }
68
+ /**
69
+ * Linear interpolation between two vectors
70
+ */
71
+ export function lerp(a, b, t) {
72
+ return {
73
+ x: a.x + (b.x - a.x) * t,
74
+ y: a.y + (b.y - a.y) * t,
75
+ z: a.z + (b.z - a.z) * t,
76
+ };
77
+ }
78
+ // ============================================================================
79
+ // Curve Generation
80
+ // ============================================================================
81
+ /**
82
+ * Generate a curved path between two points (for hyperspace lanes)
83
+ */
84
+ export function generateCurvedPath(start, end, _segments = 50, curvature = 0.3) {
85
+ const mid = midpoint(start, end);
86
+ const dist = distance(start, end);
87
+ // Calculate perpendicular offset for curve
88
+ const direction = normalize(subtract(end, start));
89
+ const perpendicular = normalize({
90
+ x: -direction.z,
91
+ y: direction.y + curvature * dist,
92
+ z: direction.x,
93
+ });
94
+ const controlPoint = {
95
+ x: mid.x + perpendicular.x * dist * curvature,
96
+ y: mid.y + perpendicular.y * dist * curvature,
97
+ z: mid.z + perpendicular.z * dist * curvature,
98
+ };
99
+ return new THREE.CatmullRomCurve3([
100
+ toThreeVector(start),
101
+ toThreeVector(controlPoint),
102
+ toThreeVector(end),
103
+ ]);
104
+ }
105
+ /**
106
+ * Generate points along a curve
107
+ */
108
+ export function getCurvePoints(curve, segments) {
109
+ return curve.getPoints(segments);
110
+ }
111
+ // ============================================================================
112
+ // Orbit Calculations
113
+ // ============================================================================
114
+ /**
115
+ * Calculate position on orbit
116
+ */
117
+ export function getOrbitPosition(center, radius, angle, tilt = 0) {
118
+ const x = center.x + Math.cos(angle) * radius;
119
+ const y = center.y + Math.sin(tilt) * Math.sin(angle) * radius * 0.3;
120
+ const z = center.z + Math.sin(angle) * radius;
121
+ return { x, y, z };
122
+ }
123
+ /**
124
+ * Generate orbit path points
125
+ */
126
+ export function generateOrbitPath(center, radius, segments = 64, tilt = 0) {
127
+ const points = [];
128
+ for (let i = 0; i <= segments; i++) {
129
+ const angle = (i / segments) * Math.PI * 2;
130
+ points.push(getOrbitPosition(center, radius, angle, tilt));
131
+ }
132
+ return points;
133
+ }
134
+ // ============================================================================
135
+ // Bounding & Frustum
136
+ // ============================================================================
137
+ /**
138
+ * Calculate bounding sphere for a set of points
139
+ */
140
+ export function calculateBoundingSphere(points) {
141
+ if (points.length === 0) {
142
+ return { center: { x: 0, y: 0, z: 0 }, radius: 0 };
143
+ }
144
+ // Calculate center
145
+ let cx = 0, cy = 0, cz = 0;
146
+ for (const p of points) {
147
+ cx += p.x;
148
+ cy += p.y;
149
+ cz += p.z;
150
+ }
151
+ const center = {
152
+ x: cx / points.length,
153
+ y: cy / points.length,
154
+ z: cz / points.length,
155
+ };
156
+ // Calculate radius
157
+ let maxDist = 0;
158
+ for (const p of points) {
159
+ const dist = distance(center, p);
160
+ if (dist > maxDist)
161
+ maxDist = dist;
162
+ }
163
+ return { center, radius: maxDist };
164
+ }
165
+ /**
166
+ * Check if a point is within camera frustum
167
+ */
168
+ export function isInFrustum(point, camera, margin = 1) {
169
+ const frustum = new THREE.Frustum();
170
+ const matrix = new THREE.Matrix4().multiplyMatrices(camera.projectionMatrix, camera.matrixWorldInverse);
171
+ frustum.setFromProjectionMatrix(matrix);
172
+ const sphere = new THREE.Sphere(toThreeVector(point), margin);
173
+ return frustum.intersectsSphere(sphere);
174
+ }
175
+ // ============================================================================
176
+ // Size Calculations
177
+ // ============================================================================
178
+ /**
179
+ * Calculate table size based on metrics
180
+ */
181
+ export function calculateTableSize(rowCount, accessCount, minSize = 0.5, maxSize = 3) {
182
+ // Logarithmic scaling for row count
183
+ const rowFactor = Math.log10(rowCount + 1) / 6; // Normalize to ~0-1 for up to 1M rows
184
+ // Logarithmic scaling for access count
185
+ const accessFactor = Math.log10(accessCount + 1) / 4; // Normalize to ~0-1 for up to 10K accesses
186
+ // Combine factors (row count weighted more)
187
+ const combined = rowFactor * 0.6 + accessFactor * 0.4;
188
+ // Scale to size range
189
+ return minSize + combined * (maxSize - minSize);
190
+ }
191
+ /**
192
+ * Calculate field size based on access count
193
+ */
194
+ export function calculateFieldSize(accessCount, isSensitive, baseSize = 0.15) {
195
+ const accessFactor = Math.log10(accessCount + 1) / 3;
196
+ const sensitiveMultiplier = isSensitive ? 1.5 : 1;
197
+ return baseSize * (1 + accessFactor * 0.5) * sensitiveMultiplier;
198
+ }
199
+ /**
200
+ * Calculate path width based on frequency
201
+ */
202
+ export function calculatePathWidth(frequency, minWidth = 0.05, maxWidth = 0.3) {
203
+ const factor = Math.log10(frequency + 1) / 3;
204
+ return minWidth + factor * (maxWidth - minWidth);
205
+ }
206
+ // ============================================================================
207
+ // Camera Utilities
208
+ // ============================================================================
209
+ /**
210
+ * Calculate camera position to frame a set of points
211
+ */
212
+ export function calculateFramingPosition(points, fov, _aspectRatio) {
213
+ const { center, radius } = calculateBoundingSphere(points);
214
+ // Calculate distance needed to frame the sphere
215
+ const fovRad = (fov * Math.PI) / 180;
216
+ const distance = radius / Math.sin(fovRad / 2);
217
+ // Position camera above and in front
218
+ const position = {
219
+ x: center.x,
220
+ y: center.y + distance * 0.5,
221
+ z: center.z + distance,
222
+ };
223
+ return { position, target: center };
224
+ }
225
+ /**
226
+ * Smooth camera transition parameters
227
+ */
228
+ export function calculateCameraTransition(currentPos, targetPos, currentTarget, newTarget, progress // 0-1
229
+ ) {
230
+ // Use easing function for smooth transition
231
+ const eased = easeInOutCubic(progress);
232
+ return {
233
+ position: lerp(currentPos, targetPos, eased),
234
+ target: lerp(currentTarget, newTarget, eased),
235
+ };
236
+ }
237
+ /**
238
+ * Cubic ease in/out
239
+ */
240
+ function easeInOutCubic(t) {
241
+ return t < 0.5
242
+ ? 4 * t * t * t
243
+ : 1 - Math.pow(-2 * t + 2, 3) / 2;
244
+ }
245
+ //# sourceMappingURL=geometry-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"geometry-utils.js","sourceRoot":"","sources":["../../src/utils/geometry-utils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Utility Exports
3
+ */
4
+ export * from './layout-engine.js';
5
+ export * from './color-utils.js';
6
+ export * from './geometry-utils.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Utility Exports
3
+ */
4
+ export * from './layout-engine.js';
5
+ export * from './color-utils.js';
6
+ export * from './geometry-utils.js';
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Layout Engine
3
+ *
4
+ * Force-directed layout algorithm for positioning tables in 3D space.
5
+ * Groups tables by domain clusters and applies physics simulation.
6
+ */
7
+ import type { TableNode, EntryPointNode, Vector3D, TableRelationship } from '../types/index.js';
8
+ interface LayoutResult {
9
+ tables: Map<string, Vector3D>;
10
+ entryPoints: Map<string, Vector3D>;
11
+ clusters: Map<string, Vector3D>;
12
+ }
13
+ /**
14
+ * Detect which cluster a table belongs to based on its name
15
+ */
16
+ export declare function detectCluster(tableName: string): string;
17
+ /**
18
+ * Group tables by cluster
19
+ */
20
+ export declare function groupByCluster(tables: readonly TableNode[]): Map<string, TableNode[]>;
21
+ /**
22
+ * Main layout calculation
23
+ */
24
+ export declare function calculateLayout(tables: readonly TableNode[], entryPoints: readonly EntryPointNode[], relationships: readonly TableRelationship[]): LayoutResult;
25
+ /**
26
+ * Apply layout to galaxy data (mutates positions)
27
+ */
28
+ export declare function applyLayout(tables: TableNode[], entryPoints: EntryPointNode[], relationships: readonly TableRelationship[]): void;
29
+ /**
30
+ * Compute galaxy layout and return tables/entryPoints with positions
31
+ */
32
+ export declare function computeGalaxyLayout(tables: readonly TableNode[], entryPoints: readonly EntryPointNode[], dataPaths: readonly {
33
+ sourceId: string;
34
+ targetTableId: string;
35
+ }[]): {
36
+ tables: TableNode[];
37
+ entryPoints: EntryPointNode[];
38
+ };
39
+ export {};
40
+ //# sourceMappingURL=layout-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout-engine.d.ts","sourceRoot":"","sources":["../../src/utils/layout-engine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AA0BhG,UAAU,YAAY;IACpB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9B,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACnC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACjC;AAMD;;GAEG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAUvD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAUrF;AAsQD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,SAAS,SAAS,EAAE,EAC5B,WAAW,EAAE,SAAS,cAAc,EAAE,EACtC,aAAa,EAAE,SAAS,iBAAiB,EAAE,GAC1C,YAAY,CAyCd;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,SAAS,EAAE,EACnB,WAAW,EAAE,cAAc,EAAE,EAC7B,aAAa,EAAE,SAAS,iBAAiB,EAAE,GAC1C,IAAI,CAgBN;AAGD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,SAAS,SAAS,EAAE,EAC5B,WAAW,EAAE,SAAS,cAAc,EAAE,EACtC,SAAS,EAAE,SAAS;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,EAAE,GAChE;IAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAAC,WAAW,EAAE,cAAc,EAAE,CAAA;CAAE,CA0CxD"}