@kortexya/nodus 0.1.0
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/LICENSE +37 -0
- package/README.md +60 -0
- package/__vite-plugin-wasm-helper-1Aiokjk5.js +24 -0
- package/assets/hypergraphWorker-DV0aFI3L.js +1 -0
- package/assets/layoutWorker-DwDJwbgr.js +285 -0
- package/assets/nodus_wasm-C0vDfO5K.js +1 -0
- package/chunk-DmhlhrBa.js +11 -0
- package/nodus.src.bundle.js +33577 -0
- package/nodus_render_wasm-Bs6hlsx-.js +2617 -0
- package/nodus_wasm-DKYQVSUZ.js +2789 -0
- package/package.json +61 -0
- package/types/Nodus.d.ts +100 -0
- package/types/algorithms/concentric/index.d.ts +29 -0
- package/types/algorithms/concentricFactory.d.ts +43 -0
- package/types/algorithms/force/Alea.d.ts +13 -0
- package/types/algorithms/force/BVH.d.ts +35 -0
- package/types/algorithms/force/LayoutData.d.ts +40 -0
- package/types/algorithms/force/Packing.d.ts +31 -0
- package/types/algorithms/force/Physics.d.ts +61 -0
- package/types/algorithms/force/SEC.d.ts +14 -0
- package/types/algorithms/force/Topology.d.ts +3 -0
- package/types/algorithms/force/index.d.ts +54 -0
- package/types/algorithms/force-gpu/ParticleSystem.d.ts +45 -0
- package/types/algorithms/force-gpu/Settings.d.ts +60 -0
- package/types/algorithms/force-gpu/Simulation.d.ts +7 -0
- package/types/algorithms/force-gpu/getGlContext.d.ts +10 -0
- package/types/algorithms/force-gpu/gpuLayout.d.ts +14 -0
- package/types/algorithms/force-gpu/index.d.ts +2 -0
- package/types/algorithms/force-gpu/kernels/index.d.ts +176 -0
- package/types/algorithms/force-gpu/kernels/utils.d.ts +31 -0
- package/types/algorithms/force-gpu/shaders/aabb.d.ts +2 -0
- package/types/algorithms/force-gpu/shaders/bhExpand.d.ts +2 -0
- package/types/algorithms/force-gpu/shaders/bhTranslate.d.ts +2 -0
- package/types/algorithms/force-gpu/shaders/cellLookup.d.ts +2 -0
- package/types/algorithms/force-gpu/shaders/index.d.ts +9 -0
- package/types/algorithms/force-gpu/shaders/integrate.d.ts +2 -0
- package/types/algorithms/force-gpu/shaders/morton.d.ts +2 -0
- package/types/algorithms/force-gpu/shaders/sortIntervals.d.ts +2 -0
- package/types/algorithms/force-gpu/shaders/sortKeys.d.ts +2 -0
- package/types/algorithms/force-gpu/shaders/types.d.ts +10 -0
- package/types/algorithms/force-gpu/webgl/helpers.d.ts +24 -0
- package/types/algorithms/force-gpu/webgl/index.d.ts +4 -0
- package/types/algorithms/force-gpu/webgl/program.d.ts +15 -0
- package/types/algorithms/forceFactory.d.ts +55 -0
- package/types/algorithms/forceLinkFactory.d.ts +40 -0
- package/types/algorithms/grid/index.d.ts +26 -0
- package/types/algorithms/gridFactory.d.ts +30 -0
- package/types/algorithms/hierarchical/index.d.ts +80 -0
- package/types/algorithms/hierarchical/sugiyama.d.ts +144 -0
- package/types/algorithms/hierarchicalFactory.d.ts +49 -0
- package/types/algorithms/index.d.ts +13 -0
- package/types/algorithms/radial/index.d.ts +33 -0
- package/types/algorithms/radialFactory.d.ts +54 -0
- package/types/algorithms/sequential/index.d.ts +37 -0
- package/types/algorithms/sequentialFactory.d.ts +37 -0
- package/types/core/Edge.d.ts +67 -0
- package/types/core/EdgeList.d.ts +86 -0
- package/types/core/Node.d.ts +89 -0
- package/types/core/NodeList.d.ts +105 -0
- package/types/core/Transformation.d.ts +108 -0
- package/types/core/enums.d.ts +16 -0
- package/types/geometry/BoundingBox.d.ts +41 -0
- package/types/geometry/index.d.ts +276 -0
- package/types/geometry/types.d.ts +27 -0
- package/types/hypergraph/Hypergraph.d.ts +74 -0
- package/types/hypergraph/KoenigGraph.d.ts +29 -0
- package/types/hypergraph/Simplifier.d.ts +39 -0
- package/types/hypergraph/Statistics.d.ts +55 -0
- package/types/hypergraph/forbidden/StrangledHyperedge.d.ts +12 -0
- package/types/hypergraph/forbidden/StrangledVertex.d.ts +16 -0
- package/types/hypergraph/forbidden/ThreeAdjacentCluster2.d.ts +10 -0
- package/types/hypergraph/forbidden/TwoAdjacentCluster3.d.ts +14 -0
- package/types/hypergraph/forbidden/index.d.ts +22 -0
- package/types/hypergraph/index.d.ts +21 -0
- package/types/hypergraph/layout/Adam.d.ts +12 -0
- package/types/hypergraph/layout/Energy.d.ts +55 -0
- package/types/hypergraph/layout/LBFGS.d.ts +32 -0
- package/types/hypergraph/layout/Optimizer.d.ts +60 -0
- package/types/hypergraph/layout/Reverser.d.ts +42 -0
- package/types/hypergraph/operations/AtomicOperation.d.ts +54 -0
- package/types/hypergraph/operations/HyperedgeMerger.d.ts +30 -0
- package/types/hypergraph/operations/HyperedgeRemoval.d.ts +27 -0
- package/types/hypergraph/operations/VertexMerger.d.ts +32 -0
- package/types/hypergraph/operations/VertexRemoval.d.ts +30 -0
- package/types/hypergraph/operations/index.d.ts +19 -0
- package/types/hypergraph/osfkb/adapter.d.ts +315 -0
- package/types/hypergraph/render/Interaction.d.ts +40 -0
- package/types/hypergraph/render/PolygonRenderer.d.ts +50 -0
- package/types/hypergraph/render/SVGPolygonRenderer.d.ts +7 -0
- package/types/hypergraph/types.d.ts +170 -0
- package/types/index.d.ts +21 -0
- package/types/internals/Algorithms.d.ts +68 -0
- package/types/internals/AlgorithmsPrimitives.d.ts +18 -0
- package/types/internals/Animations.d.ts +39 -0
- package/types/internals/AttributePathPrimitives.d.ts +2 -0
- package/types/internals/Brand.d.ts +22 -0
- package/types/internals/Camera.d.ts +115 -0
- package/types/internals/CameraInteractions.d.ts +15 -0
- package/types/internals/CameraInteractionsPrimitives.d.ts +18 -0
- package/types/internals/Captor.d.ts +56 -0
- package/types/internals/CaptorPrimitives.d.ts +9 -0
- package/types/internals/ClassModule.d.ts +42 -0
- package/types/internals/ConnectNodes.d.ts +23 -0
- package/types/internals/CurvatureManager.d.ts +14 -0
- package/types/internals/DataModule.d.ts +29 -0
- package/types/internals/Disabled.d.ts +27 -0
- package/types/internals/DomModule.d.ts +87 -0
- package/types/internals/DragModule.d.ts +14 -0
- package/types/internals/ElementSet.d.ts +17 -0
- package/types/internals/EventsModule.d.ts +41 -0
- package/types/internals/FlexArray.d.ts +54 -0
- package/types/internals/Geo.d.ts +127 -0
- package/types/internals/Graph.d.ts +109 -0
- package/types/internals/Graphics.d.ts +112 -0
- package/types/internals/GraphicsEngine.d.ts +96 -0
- package/types/internals/Hover.d.ts +32 -0
- package/types/internals/Hypergraph.d.ts +112 -0
- package/types/internals/IndexList.d.ts +28 -0
- package/types/internals/IndividualAttributes.d.ts +27 -0
- package/types/internals/Interactions.d.ts +45 -0
- package/types/internals/Keyboard.d.ts +25 -0
- package/types/internals/LabelManager.d.ts +56 -0
- package/types/internals/Lasso.d.ts +22 -0
- package/types/internals/Layers.d.ts +79 -0
- package/types/internals/LayersPrimitives.d.ts +5 -0
- package/types/internals/Layouts.d.ts +35 -0
- package/types/internals/LayoutsInternal.d.ts +37 -0
- package/types/internals/LayoutsPrimitives.d.ts +23 -0
- package/types/internals/Legend.d.ts +33 -0
- package/types/internals/LegendPrimitives.d.ts +3 -0
- package/types/internals/Locate.d.ts +43 -0
- package/types/internals/LocatePrimitives.d.ts +20 -0
- package/types/internals/MappingManager.d.ts +27 -0
- package/types/internals/MappingPrimitives.d.ts +29 -0
- package/types/internals/Module.d.ts +23 -0
- package/types/internals/Mouse.d.ts +42 -0
- package/types/internals/NodusModules.d.ts +99 -0
- package/types/internals/PositionModule.d.ts +10 -0
- package/types/internals/PulseModule.d.ts +29 -0
- package/types/internals/Quadtree.d.ts +100 -0
- package/types/internals/RectangleSelect.d.ts +18 -0
- package/types/internals/Resizing.d.ts +48 -0
- package/types/internals/Rewiring.d.ts +64 -0
- package/types/internals/SchemaWatchPrimitives.d.ts +75 -0
- package/types/internals/Selection.d.ts +52 -0
- package/types/internals/SelectionModule.d.ts +27 -0
- package/types/internals/Settings.d.ts +20 -0
- package/types/internals/Snapping.d.ts +54 -0
- package/types/internals/Spatial.d.ts +50 -0
- package/types/internals/SpatialPrimitives.d.ts +75 -0
- package/types/internals/Storage.d.ts +46 -0
- package/types/internals/StyleRulesModule.d.ts +21 -0
- package/types/internals/Synchronizer.d.ts +17 -0
- package/types/internals/Tooltip.d.ts +25 -0
- package/types/internals/TooltipPrimitives.d.ts +21 -0
- package/types/internals/Topology.d.ts +50 -0
- package/types/internals/Touch.d.ts +16 -0
- package/types/internals/Transformations.d.ts +36 -0
- package/types/internals/VirtualMouse.d.ts +52 -0
- package/types/internals/WasmHGrid.d.ts +25 -0
- package/types/internals/WatcherModule.d.ts +25 -0
- package/types/internals/Workers.d.ts +79 -0
- package/types/internals/algorithmExports.d.ts +333 -0
- package/types/internals/algorithmHelpers.d.ts +36 -0
- package/types/internals/attributes/AttributesManager.d.ts +216 -0
- package/types/internals/attributes/ElementAttributesManager.d.ts +119 -0
- package/types/internals/attributes/attributeHelpers.d.ts +70 -0
- package/types/internals/attributes/flexArrayFactories.d.ts +277 -0
- package/types/internals/easing.d.ts +15 -0
- package/types/internals/helpers.d.ts +79 -0
- package/types/internals/hypergraphWorker.d.ts +37 -0
- package/types/internals/hypergraphWorkerHost.d.ts +40 -0
- package/types/internals/labels/SpatialGrid.d.ts +29 -0
- package/types/internals/labels/fillEdgeTexts.d.ts +25 -0
- package/types/internals/labels/fillNodeTexts.d.ts +24 -0
- package/types/internals/labels/helpers.d.ts +180 -0
- package/types/internals/layoutWorker.d.ts +21 -0
- package/types/internals/rendering/BoundariesManager.d.ts +53 -0
- package/types/internals/rendering/Buffer2.d.ts +91 -0
- package/types/internals/rendering/BufferList.d.ts +86 -0
- package/types/internals/rendering/CpuRenderer.d.ts +128 -0
- package/types/internals/rendering/EasingManager.d.ts +40 -0
- package/types/internals/rendering/EdgeDrawer.d.ts +54 -0
- package/types/internals/rendering/ElementGroup.d.ts +66 -0
- package/types/internals/rendering/MemoryManager.d.ts +71 -0
- package/types/internals/rendering/NodeDrawer.d.ts +49 -0
- package/types/internals/rendering/PatternManager.d.ts +29 -0
- package/types/internals/rendering/RENDER_MAPPING.d.ts +5 -0
- package/types/internals/rendering/RendererBase.d.ts +127 -0
- package/types/internals/rendering/ShapeManager.d.ts +46 -0
- package/types/internals/rendering/TextManager.d.ts +112 -0
- package/types/internals/rendering/canvasHelpers.d.ts +5 -0
- package/types/internals/rendering/constants.d.ts +125 -0
- package/types/internals/rendering/curveHelpers.d.ts +96 -0
- package/types/internals/rendering/drawerHelpers.d.ts +32 -0
- package/types/internals/rendering/float16.d.ts +25 -0
- package/types/internals/rendering/hitDetection.d.ts +89 -0
- package/types/internals/rendering/loadGraph.d.ts +103 -0
- package/types/internals/rendering/objectInfo.d.ts +46 -0
- package/types/internals/rendering/packing.d.ts +46 -0
- package/types/internals/rendering/shapeHelpers.d.ts +26 -0
- package/types/internals/rendering/types.d.ts +143 -0
- package/types/internals/renderingBinaryPrimitives.d.ts +110 -0
- package/types/internals/utilsExports.d.ts +408 -0
- package/types/internals/wasmBackend.d.ts +38 -0
- package/types/internals/wasmColumns.d.ts +61 -0
- package/types/internals/wasmInit.d.ts +1 -0
- package/types/modules/APIModule.d.ts +8 -0
- package/types/modules/AlgorithmsAPI.d.ts +15 -0
- package/types/modules/BrandAPI.d.ts +6 -0
- package/types/modules/CaptorAPI.d.ts +9 -0
- package/types/modules/ClassesAPI.d.ts +9 -0
- package/types/modules/DebugAPI.d.ts +18 -0
- package/types/modules/DisabledAPI.d.ts +11 -0
- package/types/modules/DomAPI.d.ts +9 -0
- package/types/modules/EventsAPI.d.ts +16 -0
- package/types/modules/ExportAPI.d.ts +23 -0
- package/types/modules/GeneratorsAPI.d.ts +12 -0
- package/types/modules/GeoAPI.d.ts +20 -0
- package/types/modules/GraphAPI.d.ts +26 -0
- package/types/modules/GraphicsAPI.d.ts +8 -0
- package/types/modules/HypergraphAPI.d.ts +71 -0
- package/types/modules/KeyboardAPI.d.ts +6 -0
- package/types/modules/LayersAPI.d.ts +7 -0
- package/types/modules/LayoutsAPI.d.ts +25 -0
- package/types/modules/LegendAPI.d.ts +9 -0
- package/types/modules/MouseAPI.d.ts +16 -0
- package/types/modules/ParseAPI.d.ts +83 -0
- package/types/modules/RulesAPI.d.ts +7 -0
- package/types/modules/SchemaAPI.d.ts +9 -0
- package/types/modules/SelectionAPI.d.ts +12 -0
- package/types/modules/SettingsAPI.d.ts +9 -0
- package/types/modules/StylesAPI.d.ts +64 -0
- package/types/modules/ToolsAPI.d.ts +68 -0
- package/types/modules/TransformationsAPI.d.ts +30 -0
- package/types/modules/ViewAPI.d.ts +52 -0
- package/types/publicTypes.d.ts +56 -0
- package/types/renderers/CanvasRenderer.d.ts +86 -0
- package/types/renderers/Renderer.d.ts +13 -0
- package/types/renderers/SVGRenderer.d.ts +57 -0
- package/types/renderers/WasmGraphRenderer.d.ts +118 -0
- package/types/renderers/WasmRendererAdapter.d.ts +38 -0
- package/types/tools/ConnectNodesAPI.d.ts +42 -0
- package/types/tools/LassoAPI.d.ts +78 -0
- package/types/tools/RectangleSelectAPI.d.ts +51 -0
- package/types/tools/ResizingAPI.d.ts +62 -0
- package/types/tools/RewiringAPI.d.ts +78 -0
- package/types/tools/SnappingAPI.d.ts +71 -0
- package/types/tools/ToolsAPI.d.ts +46 -0
- package/types/tools/TooltipAPI.d.ts +141 -0
- package/types/transformations/TransformationsEngine.d.ts +602 -0
- package/types/utils/index.d.ts +6 -0
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
export declare const SENTINEL: -1;
|
|
2
|
+
export declare const SENTINEL_DATA: {
|
|
3
|
+
id: string;
|
|
4
|
+
layer: number;
|
|
5
|
+
sink: boolean;
|
|
6
|
+
fixed: boolean;
|
|
7
|
+
siblingIndex: number;
|
|
8
|
+
parentIds: any[];
|
|
9
|
+
children: any[];
|
|
10
|
+
radius: number;
|
|
11
|
+
ref: any;
|
|
12
|
+
};
|
|
13
|
+
export interface SugNode {
|
|
14
|
+
id: any;
|
|
15
|
+
layer: number;
|
|
16
|
+
data: any;
|
|
17
|
+
children: SugNode[];
|
|
18
|
+
ref?: any;
|
|
19
|
+
x: number;
|
|
20
|
+
y: number;
|
|
21
|
+
}
|
|
22
|
+
export declare function makeVirtualNode(id: any, layer: number): SugNode;
|
|
23
|
+
export declare function isVirtual(n: SugNode): boolean;
|
|
24
|
+
export declare function isReal(n: SugNode): boolean;
|
|
25
|
+
declare class LNode {
|
|
26
|
+
data: any;
|
|
27
|
+
prev: LNode | null;
|
|
28
|
+
next: LNode | null;
|
|
29
|
+
constructor(data: any, prev?: LNode | null, next?: LNode | null);
|
|
30
|
+
toString(): any;
|
|
31
|
+
}
|
|
32
|
+
declare class NodeLinkedList {
|
|
33
|
+
head: LNode | null;
|
|
34
|
+
tail: LNode | null;
|
|
35
|
+
byId: {
|
|
36
|
+
[id: string]: LNode;
|
|
37
|
+
};
|
|
38
|
+
byIndex: {
|
|
39
|
+
[idx: number]: LNode;
|
|
40
|
+
};
|
|
41
|
+
length: number;
|
|
42
|
+
append(data: any, id: string | number): LNode;
|
|
43
|
+
forEach(cb: (node: LNode, idx: number) => void): void;
|
|
44
|
+
}
|
|
45
|
+
export declare function insertVirtualNodes(graph: {
|
|
46
|
+
nodes: SugNode[];
|
|
47
|
+
}): SugNode[][];
|
|
48
|
+
export declare function decrossLayers(layers: SugNode[][], shouldDecross: boolean, sortSiblings: boolean): void;
|
|
49
|
+
export declare class SugiyamaLayout {
|
|
50
|
+
edges: {
|
|
51
|
+
source: any;
|
|
52
|
+
target: any;
|
|
53
|
+
virtual: boolean;
|
|
54
|
+
id: number;
|
|
55
|
+
}[];
|
|
56
|
+
nodeMap: {
|
|
57
|
+
[id: string]: SugNode;
|
|
58
|
+
};
|
|
59
|
+
nodeIndexTopDown: {
|
|
60
|
+
[id: string]: number;
|
|
61
|
+
};
|
|
62
|
+
nodeToLayer: {
|
|
63
|
+
[id: string]: number;
|
|
64
|
+
};
|
|
65
|
+
longEdges: {
|
|
66
|
+
[id: string]: string[];
|
|
67
|
+
};
|
|
68
|
+
virt: {
|
|
69
|
+
[id: string]: boolean;
|
|
70
|
+
};
|
|
71
|
+
height: {
|
|
72
|
+
[layer: number]: number;
|
|
73
|
+
};
|
|
74
|
+
breadth: {
|
|
75
|
+
[id: string]: number;
|
|
76
|
+
};
|
|
77
|
+
first: SugNode[];
|
|
78
|
+
totalW: {
|
|
79
|
+
[id: string]: number;
|
|
80
|
+
};
|
|
81
|
+
mDist: {
|
|
82
|
+
[id: string]: number;
|
|
83
|
+
};
|
|
84
|
+
X: {
|
|
85
|
+
[id: string]: number;
|
|
86
|
+
};
|
|
87
|
+
block: {
|
|
88
|
+
[id: string]: any;
|
|
89
|
+
};
|
|
90
|
+
nodeList: NodeLinkedList;
|
|
91
|
+
nodeDistance: number;
|
|
92
|
+
layerDistance: number;
|
|
93
|
+
layers: SugNode[][];
|
|
94
|
+
N: number;
|
|
95
|
+
Y: Float32Array;
|
|
96
|
+
adjacencyList: {
|
|
97
|
+
[src: string]: any[];
|
|
98
|
+
};
|
|
99
|
+
neighbours: {
|
|
100
|
+
prev: {
|
|
101
|
+
[id: string]: any[];
|
|
102
|
+
};
|
|
103
|
+
next: {
|
|
104
|
+
[id: string]: any[];
|
|
105
|
+
};
|
|
106
|
+
};
|
|
107
|
+
constructor(layers: SugNode[][], nodeDistance: number, layerDistance: number);
|
|
108
|
+
computeMinNodeDistances(): void;
|
|
109
|
+
decrossVirtualEdges(): void;
|
|
110
|
+
placeLongEdges(): void;
|
|
111
|
+
sortLongEdges(e: string, t: number, s: {
|
|
112
|
+
[id: string]: number;
|
|
113
|
+
}, o: {
|
|
114
|
+
done: boolean;
|
|
115
|
+
dist: number;
|
|
116
|
+
}, c: {
|
|
117
|
+
[id: string]: number;
|
|
118
|
+
}, p: {
|
|
119
|
+
[id: string]: number;
|
|
120
|
+
}): boolean;
|
|
121
|
+
placeNonVirtualNodes(): void;
|
|
122
|
+
placeSequence(e: any, t: any, s: any, o: any, c: number, p?: number): void;
|
|
123
|
+
calculateBends(e: number, t: number, s: any, o: any, c: any, p: any, At: any, Tt: any): {
|
|
124
|
+
res: number;
|
|
125
|
+
bends: {
|
|
126
|
+
value: number;
|
|
127
|
+
key: number;
|
|
128
|
+
}[];
|
|
129
|
+
};
|
|
130
|
+
combineSequences(e: any, t: any, s: any, o: any, c: any, p: any, At: any, Tt: number): void;
|
|
131
|
+
placeNode(e: any, t: any, s: any, o: number, c: number): number;
|
|
132
|
+
moveLongEdge(e: SugNode, t: number, s: {
|
|
133
|
+
[id: string]: boolean;
|
|
134
|
+
}): void;
|
|
135
|
+
moveLongEdges(): void;
|
|
136
|
+
computeY(): void;
|
|
137
|
+
straightenLongEdge(e: SugNode, t: {
|
|
138
|
+
[id: string]: boolean;
|
|
139
|
+
}): void;
|
|
140
|
+
straightenEdges(): void;
|
|
141
|
+
run(): void;
|
|
142
|
+
}
|
|
143
|
+
export declare function sugiyamaCoordinates(layers: SugNode[][], nodeDistance?: number, layerDistance?: number): SugNode[][];
|
|
144
|
+
export {};
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hierarchical layout factory.
|
|
3
|
+
*
|
|
4
|
+
* Wraps the hierarchical (Sugiyama-style) layout as a layout descriptor
|
|
5
|
+
* that can be registered with `modules.layouts`.
|
|
6
|
+
*
|
|
7
|
+
* The descriptor delegates the heavy lifting to the `sequential` layout
|
|
8
|
+
* algorithm, which performs layer assignment, crossing reduction,
|
|
9
|
+
* coordinate assignment, and component packing.
|
|
10
|
+
*/
|
|
11
|
+
interface Nodus {
|
|
12
|
+
modules: {
|
|
13
|
+
layouts: {
|
|
14
|
+
register(descriptor: LayoutDescriptor): void;
|
|
15
|
+
start(name: string, opts: any): Promise<any>;
|
|
16
|
+
};
|
|
17
|
+
graph: any;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
interface LayoutDescriptor {
|
|
21
|
+
name: string;
|
|
22
|
+
imports?: Record<string, any>;
|
|
23
|
+
configure(opts: any, modules: any): any;
|
|
24
|
+
context(): any;
|
|
25
|
+
update(msg: any): any;
|
|
26
|
+
isRunning(): boolean;
|
|
27
|
+
onSync(msg: any, modules: any): any;
|
|
28
|
+
}
|
|
29
|
+
declare const DEFAULT_OPTIONS: {
|
|
30
|
+
direction: "TB";
|
|
31
|
+
nodeDistance: number;
|
|
32
|
+
levelDistance: number;
|
|
33
|
+
componentDistance: number;
|
|
34
|
+
siblingsDistance: number;
|
|
35
|
+
compactSiblings: boolean;
|
|
36
|
+
gapWidth: number;
|
|
37
|
+
arrangeComponents: "fit";
|
|
38
|
+
gridDistance: number;
|
|
39
|
+
layer: string;
|
|
40
|
+
siblingIndex: string;
|
|
41
|
+
};
|
|
42
|
+
declare const hierarchicalDescriptor: LayoutDescriptor;
|
|
43
|
+
/**
|
|
44
|
+
* Create and register the hierarchical layout on an Nodus instance.
|
|
45
|
+
*
|
|
46
|
+
* @returns A function `(opts?) => Promise<any>` that starts the layout.
|
|
47
|
+
*/
|
|
48
|
+
export default function hierarchicalFactory(nodus: Nodus): (opts?: any) => Promise<any>;
|
|
49
|
+
export { hierarchicalDescriptor, DEFAULT_OPTIONS as HIERARCHICAL_DEFAULT_OPTIONS };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export * from './concentric/index';
|
|
2
|
+
export * from './force/index';
|
|
3
|
+
export * from './grid/index';
|
|
4
|
+
export * from './hierarchical/index';
|
|
5
|
+
export * from './radial/index';
|
|
6
|
+
export * from './sequential/index';
|
|
7
|
+
export { default as forceFactory, forceDescriptor } from './forceFactory';
|
|
8
|
+
export { default as forceLinkFactory, forceLinkDescriptor } from './forceLinkFactory';
|
|
9
|
+
export { default as gridFactory, gridDescriptor } from './gridFactory';
|
|
10
|
+
export { default as hierarchicalFactory, hierarchicalDescriptor } from './hierarchicalFactory';
|
|
11
|
+
export { default as sequentialFactory, sequentialDescriptor } from './sequentialFactory';
|
|
12
|
+
export { default as concentricFactory, concentricDescriptor } from './concentricFactory';
|
|
13
|
+
export { default as radialFactory, radialDescriptor } from './radialFactory';
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Radial layout algorithm.
|
|
3
|
+
*
|
|
4
|
+
* Places nodes on concentric circles based on their graph-theoretical
|
|
5
|
+
* distance (BFS shortest path) from a central node. Nodes on each
|
|
6
|
+
* ring are evenly distributed, with optional repulsion sweeps to
|
|
7
|
+
* reduce overlap.
|
|
8
|
+
*/
|
|
9
|
+
export interface RadialOptions {
|
|
10
|
+
centralNode: number;
|
|
11
|
+
centerX?: number;
|
|
12
|
+
centerY?: number;
|
|
13
|
+
allowOverlap?: boolean;
|
|
14
|
+
repulsion?: number;
|
|
15
|
+
radiusDelta?: number;
|
|
16
|
+
radiusRatio?: number;
|
|
17
|
+
nodeGap?: number;
|
|
18
|
+
maxIterations?: number;
|
|
19
|
+
iterationsPerRender?: number;
|
|
20
|
+
renderSteps?: boolean;
|
|
21
|
+
epsilon?: number;
|
|
22
|
+
}
|
|
23
|
+
export interface RadialInput {
|
|
24
|
+
nodeCount: number;
|
|
25
|
+
sources: number[];
|
|
26
|
+
targets: number[];
|
|
27
|
+
nodeRadii: number[];
|
|
28
|
+
}
|
|
29
|
+
export interface RadialResult {
|
|
30
|
+
x: number[];
|
|
31
|
+
y: number[];
|
|
32
|
+
}
|
|
33
|
+
export declare function radial(input: RadialInput, options: RadialOptions): RadialResult;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Radial layout factory.
|
|
3
|
+
*
|
|
4
|
+
* Wraps the radial (stress-minimisation on concentric rings) layout as a
|
|
5
|
+
* layout descriptor. The COMPUTE — Johnson all-pairs shortest paths,
|
|
6
|
+
* constrained stress minimisation, ring radii, radial overlap removal — runs
|
|
7
|
+
* ENTIRELY in Rust (`nodus-core::radial_stress`, wasm `RadialStressSim`),
|
|
8
|
+
* byte-exact with the deleted TS pipeline (radial-live-parity.mjs: 50
|
|
9
|
+
* layouts, positions + rings + step counts identical; the frozen TS oracle
|
|
10
|
+
* lives inside that gate). The whole state — including the n×n f32 distance
|
|
11
|
+
* matrix — stays wasm-resident for the run; each update() tick is one
|
|
12
|
+
* `step_batch` call (scalars in, positions out).
|
|
13
|
+
*
|
|
14
|
+
* wasm is REQUIRED here (no TS fallback — Phase-5 cutover rule): the worker
|
|
15
|
+
* loads pkg unconditionally before its first tick, and the main thread
|
|
16
|
+
* hard-requires it via wasmInit's top-level await.
|
|
17
|
+
*
|
|
18
|
+
* The public `Nodus.algorithms.{johnson,stressMinimizationStep,…}` utilities
|
|
19
|
+
* keep their TS bodies in algorithmExports.ts — that is API surface the
|
|
20
|
+
* reference bundle also ships; this layout no longer touches them.
|
|
21
|
+
*/
|
|
22
|
+
interface Nodus {
|
|
23
|
+
modules: {
|
|
24
|
+
layouts: {
|
|
25
|
+
register(descriptor: LayoutDescriptor): void;
|
|
26
|
+
start(name: string, opts: any): Promise<any>;
|
|
27
|
+
};
|
|
28
|
+
graph: any;
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
interface LayoutDescriptor {
|
|
32
|
+
name: string;
|
|
33
|
+
imports?: Record<string, any>;
|
|
34
|
+
configure(opts: any, modules: any): any;
|
|
35
|
+
context(): any;
|
|
36
|
+
update(msg: any, context: any): any;
|
|
37
|
+
isRunning(ctx: {
|
|
38
|
+
data: any;
|
|
39
|
+
}): boolean;
|
|
40
|
+
onSync(msg: any): any;
|
|
41
|
+
onEnd?(msg: any): any;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* The radial descriptor: configure() extracts the graph TS-side (protocol),
|
|
45
|
+
* update() drives the wasm-resident RadialStressSim (compute).
|
|
46
|
+
*/
|
|
47
|
+
declare const radialDescriptor: LayoutDescriptor;
|
|
48
|
+
/**
|
|
49
|
+
* Create and register the radial layout on an Nodus instance.
|
|
50
|
+
*
|
|
51
|
+
* @returns A function `(opts) => Promise<any>` that starts the layout.
|
|
52
|
+
*/
|
|
53
|
+
export default function radialFactory(nodus: Nodus): (opts: any) => Promise<any>;
|
|
54
|
+
export { radialDescriptor };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sequential layout algorithm.
|
|
3
|
+
*
|
|
4
|
+
* Similar to the hierarchical layout but forces a constant width
|
|
5
|
+
* per layer -- each layer contains at most one "lane" of nodes,
|
|
6
|
+
* producing a long chain-like diagram rather than a wide tree.
|
|
7
|
+
*
|
|
8
|
+
* Phases:
|
|
9
|
+
* 1. Layer assignment (longest-path from roots)
|
|
10
|
+
* 2. Ordering within each layer (barycenter heuristic, single sweep)
|
|
11
|
+
* 3. Sequential X placement (constant lane width)
|
|
12
|
+
* 4. Component packing
|
|
13
|
+
*/
|
|
14
|
+
export interface SequentialOptions {
|
|
15
|
+
direction?: 'TB' | 'BT' | 'LR' | 'RL';
|
|
16
|
+
nodeDistance?: number;
|
|
17
|
+
levelDistance?: number;
|
|
18
|
+
componentDistance?: number;
|
|
19
|
+
roots?: number[];
|
|
20
|
+
sinks?: number[];
|
|
21
|
+
arrangeComponents?: 'fit' | 'grid' | 'singleLine';
|
|
22
|
+
gridDistance?: number;
|
|
23
|
+
decross?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export interface SequentialInput {
|
|
26
|
+
nodeCount: number;
|
|
27
|
+
sources: number[];
|
|
28
|
+
targets: number[];
|
|
29
|
+
nodeRadii: number[];
|
|
30
|
+
nodeData?: any[];
|
|
31
|
+
layerField?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface SequentialResult {
|
|
34
|
+
x: number[];
|
|
35
|
+
y: number[];
|
|
36
|
+
}
|
|
37
|
+
export declare function sequential(input: SequentialInput, options?: SequentialOptions): SequentialResult;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sequential layout factory.
|
|
3
|
+
*
|
|
4
|
+
* The sequential layout reuses the hierarchical layout descriptor
|
|
5
|
+
* (same configure / update / onSync logic) but forces
|
|
6
|
+
* `evenDistribution: true`, producing a chain-like arrangement
|
|
7
|
+
* instead of a wide tree.
|
|
8
|
+
*/
|
|
9
|
+
interface Nodus {
|
|
10
|
+
modules: {
|
|
11
|
+
layouts: {
|
|
12
|
+
register(descriptor: any): void;
|
|
13
|
+
start(name: string, opts: any): Promise<any>;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The sequential descriptor is a shallow copy of the hierarchical one
|
|
19
|
+
* with only the `name` changed. All configure / update / onSync behaviour
|
|
20
|
+
* is inherited; the distinct name lets it register and start independently.
|
|
21
|
+
*/
|
|
22
|
+
declare const sequentialDescriptor: {
|
|
23
|
+
name: string;
|
|
24
|
+
imports?: Record<string, any>;
|
|
25
|
+
configure(opts: any, modules: any): any;
|
|
26
|
+
context(): any;
|
|
27
|
+
update(msg: any): any;
|
|
28
|
+
isRunning(): boolean;
|
|
29
|
+
onSync(msg: any, modules: any): any;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Create and register the sequential layout on an Nodus instance.
|
|
33
|
+
*
|
|
34
|
+
* @returns A function `(opts?) => Promise<any>` that starts the layout.
|
|
35
|
+
*/
|
|
36
|
+
export default function sequentialFactory(nodus: Nodus): (opts?: any) => Promise<any>;
|
|
37
|
+
export { sequentialDescriptor };
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
export declare class Edge<ED = any, ND = any> {
|
|
2
|
+
readonly size = 1;
|
|
3
|
+
readonly isNode = false;
|
|
4
|
+
readonly isList = false;
|
|
5
|
+
readonly _index: number;
|
|
6
|
+
private readonly _nodus;
|
|
7
|
+
constructor(index: number, nodus: any);
|
|
8
|
+
get _indexes(): Uint32Array;
|
|
9
|
+
setAttributes(attrs: any, opts?: any): Promise<void>;
|
|
10
|
+
setAttribute(name: string, value: any, opts?: any): Promise<void>;
|
|
11
|
+
getAttributes(names?: any): any;
|
|
12
|
+
getAttribute(name: string): any;
|
|
13
|
+
resetAttributes(names?: any, opts?: any): Promise<void>;
|
|
14
|
+
replaceOriginalAttributes(attrs: any, opts?: any): Promise<void>;
|
|
15
|
+
getPreviousAttributes(names?: any): any;
|
|
16
|
+
getSource(): any;
|
|
17
|
+
getTarget(): any;
|
|
18
|
+
getExtremities(): any;
|
|
19
|
+
setSource(node: any): void;
|
|
20
|
+
setTarget(node: any): void;
|
|
21
|
+
getParallelEdges(opts?: any): any;
|
|
22
|
+
hasParallelEdges(): boolean;
|
|
23
|
+
fastGetAdjacentElements(): {
|
|
24
|
+
nodes: any;
|
|
25
|
+
edges: any;
|
|
26
|
+
};
|
|
27
|
+
getAdjacentElements(): {
|
|
28
|
+
nodes: any;
|
|
29
|
+
edges: any;
|
|
30
|
+
};
|
|
31
|
+
isVisible(): boolean;
|
|
32
|
+
isExcluded(): boolean;
|
|
33
|
+
setExcluded(value: boolean): void;
|
|
34
|
+
setVisible(value: boolean): void;
|
|
35
|
+
toList(): any;
|
|
36
|
+
slice(): any;
|
|
37
|
+
get(index: number): this | undefined;
|
|
38
|
+
getId(): string | number;
|
|
39
|
+
toJSON(opts?: any): any;
|
|
40
|
+
setSelected(value: boolean): void;
|
|
41
|
+
isSelected(): boolean;
|
|
42
|
+
setDisabled(value: boolean): void;
|
|
43
|
+
isDisabled(): boolean;
|
|
44
|
+
setData(pathOrData: any, value?: any): this;
|
|
45
|
+
getData(path?: any): any;
|
|
46
|
+
addClass(className: string, opts?: any): Promise<void>;
|
|
47
|
+
addClasses(classNames: string[], opts?: any): Promise<void>;
|
|
48
|
+
removeClass(className: string, opts?: any): Promise<void>;
|
|
49
|
+
removeClasses(classNames: string[], opts?: any): Promise<void>;
|
|
50
|
+
hasClass(className: string): boolean;
|
|
51
|
+
getClassList(): string[];
|
|
52
|
+
isVirtual(): boolean;
|
|
53
|
+
getTransformation(): any;
|
|
54
|
+
getMetaEdge(): any;
|
|
55
|
+
getSubEdges(): any;
|
|
56
|
+
getAnimationInformation(): any;
|
|
57
|
+
pulse(opts?: any): Promise<void>;
|
|
58
|
+
getStyle(name?: string): any;
|
|
59
|
+
setStyle(attrs: any, opts?: any): Promise<void>;
|
|
60
|
+
resetStyle(opts?: any): Promise<void>;
|
|
61
|
+
locate(opts?: any): Promise<void>;
|
|
62
|
+
getBoundingBox(opts?: {
|
|
63
|
+
includeTexts?: boolean;
|
|
64
|
+
ignoreCurvature?: boolean;
|
|
65
|
+
}): any;
|
|
66
|
+
isInView(opts?: any): boolean;
|
|
67
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* EdgeList: an ordered collection of edges backed by a Uint32Array of internal
|
|
3
|
+
* indexes. Operations resolve indexes against the graph's object store on demand,
|
|
4
|
+
* keeping the list itself compact and cheap to copy.
|
|
5
|
+
*/
|
|
6
|
+
import { Edge } from './Edge';
|
|
7
|
+
export declare class EdgeList<ED = any, ND = any> {
|
|
8
|
+
readonly isList = true;
|
|
9
|
+
readonly isNode = false;
|
|
10
|
+
_indexes: Uint32Array;
|
|
11
|
+
private _nodus;
|
|
12
|
+
constructor(indexes: Uint32Array, nodus: any);
|
|
13
|
+
get size(): number;
|
|
14
|
+
setAttributes(attrs: any, opts?: any): Promise<void>;
|
|
15
|
+
setAttribute(name: string, value: any, opts?: any): Promise<void>;
|
|
16
|
+
getAttributes(names?: any): any[];
|
|
17
|
+
getAttribute(name: string): any[];
|
|
18
|
+
resetAttributes(names?: any, opts?: any): Promise<void>;
|
|
19
|
+
replaceOriginalAttributes(attrs: any, opts?: any): Promise<void>;
|
|
20
|
+
getPreviousAttributes(names?: any): any[];
|
|
21
|
+
getPreviousAttribute(name: string): any[];
|
|
22
|
+
getSource(): any;
|
|
23
|
+
getTarget(): any;
|
|
24
|
+
getExtremities(): any;
|
|
25
|
+
getParallelEdges(opts?: any): any;
|
|
26
|
+
fastGetAdjacentElements(): {
|
|
27
|
+
nodes: any;
|
|
28
|
+
edges: any;
|
|
29
|
+
};
|
|
30
|
+
getAdjacentElements(): {
|
|
31
|
+
nodes: any;
|
|
32
|
+
edges: any;
|
|
33
|
+
};
|
|
34
|
+
isVisible(): boolean[];
|
|
35
|
+
isExcluded(): boolean[];
|
|
36
|
+
isVirtual(): boolean[];
|
|
37
|
+
setExcluded(value: boolean): void;
|
|
38
|
+
setVisible(value: boolean): void;
|
|
39
|
+
toList(): this;
|
|
40
|
+
toArray(): Edge<ED, ND>[];
|
|
41
|
+
clone(): EdgeList<ED, ND>;
|
|
42
|
+
getId(): (string | number)[];
|
|
43
|
+
get(index: number): Edge<ED, ND>;
|
|
44
|
+
forEach(fn: (edge: Edge<ED, ND>, i: number, list: this) => void): void;
|
|
45
|
+
find(fn: (edge: Edge<ED, ND>, i: number, list: this) => boolean): Edge<ED, ND> | undefined;
|
|
46
|
+
some(fn: (edge: Edge<ED, ND>, i: number, list: this) => boolean): boolean;
|
|
47
|
+
every(fn: (edge: Edge<ED, ND>, i: number, list: this) => boolean): boolean;
|
|
48
|
+
map<T>(fn: (edge: Edge<ED, ND>, i: number, list: this) => T): T[];
|
|
49
|
+
filter(fn: (edge: Edge<ED, ND>, i: number, list: this) => boolean): EdgeList<ED, ND>;
|
|
50
|
+
reduce<T>(fn: (acc: T, edge: Edge<ED, ND>, i: number, list: this) => T, init: T): T;
|
|
51
|
+
concat(other: EdgeList<ED, ND> | null): EdgeList<ED, ND>;
|
|
52
|
+
dedupe(): EdgeList<ED, ND>;
|
|
53
|
+
subtract(other: EdgeList<ED, ND>): EdgeList<ED, ND>;
|
|
54
|
+
slice(start?: number, end?: number): EdgeList<ED, ND>;
|
|
55
|
+
indexOf(edge: Edge<ED, ND>): number;
|
|
56
|
+
includes(edge: Edge<ED, ND>): boolean;
|
|
57
|
+
sort(compareFn: (a: Edge<ED, ND>, b: Edge<ED, ND>) => number): EdgeList<ED, ND>;
|
|
58
|
+
inverse(): EdgeList<ED, ND>;
|
|
59
|
+
[Symbol.iterator](): Iterator<Edge<ED, ND>>;
|
|
60
|
+
toJSON(opts?: any): any[];
|
|
61
|
+
setSelected(value: boolean): void;
|
|
62
|
+
isSelected(): boolean[];
|
|
63
|
+
setDisabled(value: boolean): void;
|
|
64
|
+
isDisabled(): boolean[];
|
|
65
|
+
setData(pathOrData: any, value?: any): this;
|
|
66
|
+
fillData(pathOrValue: any, value?: any): this;
|
|
67
|
+
getData(path?: any): any[];
|
|
68
|
+
addClass(className: string, opts?: any): Promise<void>;
|
|
69
|
+
addClasses(classNames: string[], opts?: any): Promise<void>;
|
|
70
|
+
removeClass(className: string, opts?: any): Promise<void>;
|
|
71
|
+
removeClasses(classNames: string[], opts?: any): Promise<void>;
|
|
72
|
+
hasClass(className: string): boolean[];
|
|
73
|
+
getClassList(): string[][];
|
|
74
|
+
locate(opts?: any): Promise<void>;
|
|
75
|
+
getBoundingBox(opts?: {
|
|
76
|
+
includeTexts?: boolean;
|
|
77
|
+
ignoreCurvature?: boolean;
|
|
78
|
+
}): any;
|
|
79
|
+
getMetaEdge(): any[];
|
|
80
|
+
getSubEdges(): any[];
|
|
81
|
+
getAnimationInformation(): any[];
|
|
82
|
+
pulse(opts?: any): Promise<void>;
|
|
83
|
+
getStyle(name?: string): any[];
|
|
84
|
+
setStyle(attrs: any, opts?: any): Promise<void>;
|
|
85
|
+
resetStyle(opts?: any): Promise<void>;
|
|
86
|
+
}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node: thin wrapper around an internal index. All operations delegate to nodus.modules.*.
|
|
3
|
+
*
|
|
4
|
+
* Note: `_indexes` is a shared Uint32Array([_index]) used for uniform handling with NodeList.
|
|
5
|
+
*/
|
|
6
|
+
export declare class Node<ND = any, ED = any> {
|
|
7
|
+
readonly size = 1;
|
|
8
|
+
readonly isNode = true;
|
|
9
|
+
readonly isList = false;
|
|
10
|
+
readonly _index: number;
|
|
11
|
+
private readonly _nodus;
|
|
12
|
+
constructor(index: number, nodus: any);
|
|
13
|
+
get _indexes(): Uint32Array;
|
|
14
|
+
setAttributes(attrs: any, opts?: any): Promise<void>;
|
|
15
|
+
setAttribute(name: string, value: any, opts?: any): Promise<void>;
|
|
16
|
+
getAttributes(names?: any): any;
|
|
17
|
+
getAttribute(name: string): any;
|
|
18
|
+
resetAttributes(names?: any, opts?: any): Promise<void>;
|
|
19
|
+
replaceOriginalAttributes(attrs: any, opts?: any): Promise<void>;
|
|
20
|
+
getPreviousAttributes(names?: any): any;
|
|
21
|
+
getPreviousAttribute(name: string): any;
|
|
22
|
+
getPosition(): {
|
|
23
|
+
x: number;
|
|
24
|
+
y: number;
|
|
25
|
+
};
|
|
26
|
+
setPosition(pos: {
|
|
27
|
+
x: number;
|
|
28
|
+
y: number;
|
|
29
|
+
}, opts?: any): Promise<void>;
|
|
30
|
+
getPositionOnScreen(): {
|
|
31
|
+
x: number;
|
|
32
|
+
y: number;
|
|
33
|
+
};
|
|
34
|
+
isInScreen(): boolean;
|
|
35
|
+
getAdjacentNodes(opts?: any): any;
|
|
36
|
+
getAdjacentEdges(opts?: any): any;
|
|
37
|
+
getAdjacentElements(opts?: any): {
|
|
38
|
+
nodes: any;
|
|
39
|
+
edges: any;
|
|
40
|
+
};
|
|
41
|
+
getDegree(opts?: any): number;
|
|
42
|
+
fastGetAdjacentElements(): {
|
|
43
|
+
nodes: any;
|
|
44
|
+
edges: any;
|
|
45
|
+
};
|
|
46
|
+
getConnectedComponent(opts?: any): any;
|
|
47
|
+
isVisible(): boolean;
|
|
48
|
+
isExcluded(): boolean;
|
|
49
|
+
setExcluded(value: boolean): void;
|
|
50
|
+
setVisible(value: boolean): void;
|
|
51
|
+
toList(): any;
|
|
52
|
+
getId(): string | number;
|
|
53
|
+
slice(): any;
|
|
54
|
+
get(index: number): this | undefined;
|
|
55
|
+
toJSON(opts?: any): any;
|
|
56
|
+
setSelected(value: boolean): void;
|
|
57
|
+
isSelected(): boolean;
|
|
58
|
+
setDisabled(value: boolean): void;
|
|
59
|
+
isDisabled(): boolean;
|
|
60
|
+
setData(pathOrData: any, value?: any): this;
|
|
61
|
+
getData(path?: any): any;
|
|
62
|
+
addClass(className: string, opts?: any): Promise<void>;
|
|
63
|
+
addClasses(classNames: string[], opts?: any): Promise<void>;
|
|
64
|
+
removeClass(className: string, opts?: any): Promise<void>;
|
|
65
|
+
removeClasses(classNames: string[], opts?: any): Promise<void>;
|
|
66
|
+
hasClass(className: string): boolean;
|
|
67
|
+
getClassList(): string[];
|
|
68
|
+
getGeoCoordinates(): {
|
|
69
|
+
latitude?: number;
|
|
70
|
+
longitude?: number;
|
|
71
|
+
};
|
|
72
|
+
setGeoCoordinates(coords: any): Promise<this>;
|
|
73
|
+
isVirtual(): boolean;
|
|
74
|
+
getTransformation(): any;
|
|
75
|
+
getMetaNode(): any;
|
|
76
|
+
getSubNodes(): any;
|
|
77
|
+
addSubGraph(nodes: any, opts?: any): Promise<any>;
|
|
78
|
+
getAnimationInformation(): any;
|
|
79
|
+
pulse(opts?: any): Promise<void>;
|
|
80
|
+
getStyle(name?: string): any;
|
|
81
|
+
setStyle(attrs: any, opts?: any): Promise<void>;
|
|
82
|
+
resetStyle(opts?: any): Promise<void>;
|
|
83
|
+
locate(opts?: any): Promise<void>;
|
|
84
|
+
getBoundingBox(opts?: {
|
|
85
|
+
includeTexts?: boolean;
|
|
86
|
+
}): any;
|
|
87
|
+
isInView(opts?: any): boolean;
|
|
88
|
+
}
|
|
89
|
+
export declare function getElementsId(graph: any, element: any): any;
|