@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.
Files changed (252) hide show
  1. package/LICENSE +37 -0
  2. package/README.md +60 -0
  3. package/__vite-plugin-wasm-helper-1Aiokjk5.js +24 -0
  4. package/assets/hypergraphWorker-DV0aFI3L.js +1 -0
  5. package/assets/layoutWorker-DwDJwbgr.js +285 -0
  6. package/assets/nodus_wasm-C0vDfO5K.js +1 -0
  7. package/chunk-DmhlhrBa.js +11 -0
  8. package/nodus.src.bundle.js +33577 -0
  9. package/nodus_render_wasm-Bs6hlsx-.js +2617 -0
  10. package/nodus_wasm-DKYQVSUZ.js +2789 -0
  11. package/package.json +61 -0
  12. package/types/Nodus.d.ts +100 -0
  13. package/types/algorithms/concentric/index.d.ts +29 -0
  14. package/types/algorithms/concentricFactory.d.ts +43 -0
  15. package/types/algorithms/force/Alea.d.ts +13 -0
  16. package/types/algorithms/force/BVH.d.ts +35 -0
  17. package/types/algorithms/force/LayoutData.d.ts +40 -0
  18. package/types/algorithms/force/Packing.d.ts +31 -0
  19. package/types/algorithms/force/Physics.d.ts +61 -0
  20. package/types/algorithms/force/SEC.d.ts +14 -0
  21. package/types/algorithms/force/Topology.d.ts +3 -0
  22. package/types/algorithms/force/index.d.ts +54 -0
  23. package/types/algorithms/force-gpu/ParticleSystem.d.ts +45 -0
  24. package/types/algorithms/force-gpu/Settings.d.ts +60 -0
  25. package/types/algorithms/force-gpu/Simulation.d.ts +7 -0
  26. package/types/algorithms/force-gpu/getGlContext.d.ts +10 -0
  27. package/types/algorithms/force-gpu/gpuLayout.d.ts +14 -0
  28. package/types/algorithms/force-gpu/index.d.ts +2 -0
  29. package/types/algorithms/force-gpu/kernels/index.d.ts +176 -0
  30. package/types/algorithms/force-gpu/kernels/utils.d.ts +31 -0
  31. package/types/algorithms/force-gpu/shaders/aabb.d.ts +2 -0
  32. package/types/algorithms/force-gpu/shaders/bhExpand.d.ts +2 -0
  33. package/types/algorithms/force-gpu/shaders/bhTranslate.d.ts +2 -0
  34. package/types/algorithms/force-gpu/shaders/cellLookup.d.ts +2 -0
  35. package/types/algorithms/force-gpu/shaders/index.d.ts +9 -0
  36. package/types/algorithms/force-gpu/shaders/integrate.d.ts +2 -0
  37. package/types/algorithms/force-gpu/shaders/morton.d.ts +2 -0
  38. package/types/algorithms/force-gpu/shaders/sortIntervals.d.ts +2 -0
  39. package/types/algorithms/force-gpu/shaders/sortKeys.d.ts +2 -0
  40. package/types/algorithms/force-gpu/shaders/types.d.ts +10 -0
  41. package/types/algorithms/force-gpu/webgl/helpers.d.ts +24 -0
  42. package/types/algorithms/force-gpu/webgl/index.d.ts +4 -0
  43. package/types/algorithms/force-gpu/webgl/program.d.ts +15 -0
  44. package/types/algorithms/forceFactory.d.ts +55 -0
  45. package/types/algorithms/forceLinkFactory.d.ts +40 -0
  46. package/types/algorithms/grid/index.d.ts +26 -0
  47. package/types/algorithms/gridFactory.d.ts +30 -0
  48. package/types/algorithms/hierarchical/index.d.ts +80 -0
  49. package/types/algorithms/hierarchical/sugiyama.d.ts +144 -0
  50. package/types/algorithms/hierarchicalFactory.d.ts +49 -0
  51. package/types/algorithms/index.d.ts +13 -0
  52. package/types/algorithms/radial/index.d.ts +33 -0
  53. package/types/algorithms/radialFactory.d.ts +54 -0
  54. package/types/algorithms/sequential/index.d.ts +37 -0
  55. package/types/algorithms/sequentialFactory.d.ts +37 -0
  56. package/types/core/Edge.d.ts +67 -0
  57. package/types/core/EdgeList.d.ts +86 -0
  58. package/types/core/Node.d.ts +89 -0
  59. package/types/core/NodeList.d.ts +105 -0
  60. package/types/core/Transformation.d.ts +108 -0
  61. package/types/core/enums.d.ts +16 -0
  62. package/types/geometry/BoundingBox.d.ts +41 -0
  63. package/types/geometry/index.d.ts +276 -0
  64. package/types/geometry/types.d.ts +27 -0
  65. package/types/hypergraph/Hypergraph.d.ts +74 -0
  66. package/types/hypergraph/KoenigGraph.d.ts +29 -0
  67. package/types/hypergraph/Simplifier.d.ts +39 -0
  68. package/types/hypergraph/Statistics.d.ts +55 -0
  69. package/types/hypergraph/forbidden/StrangledHyperedge.d.ts +12 -0
  70. package/types/hypergraph/forbidden/StrangledVertex.d.ts +16 -0
  71. package/types/hypergraph/forbidden/ThreeAdjacentCluster2.d.ts +10 -0
  72. package/types/hypergraph/forbidden/TwoAdjacentCluster3.d.ts +14 -0
  73. package/types/hypergraph/forbidden/index.d.ts +22 -0
  74. package/types/hypergraph/index.d.ts +21 -0
  75. package/types/hypergraph/layout/Adam.d.ts +12 -0
  76. package/types/hypergraph/layout/Energy.d.ts +55 -0
  77. package/types/hypergraph/layout/LBFGS.d.ts +32 -0
  78. package/types/hypergraph/layout/Optimizer.d.ts +60 -0
  79. package/types/hypergraph/layout/Reverser.d.ts +42 -0
  80. package/types/hypergraph/operations/AtomicOperation.d.ts +54 -0
  81. package/types/hypergraph/operations/HyperedgeMerger.d.ts +30 -0
  82. package/types/hypergraph/operations/HyperedgeRemoval.d.ts +27 -0
  83. package/types/hypergraph/operations/VertexMerger.d.ts +32 -0
  84. package/types/hypergraph/operations/VertexRemoval.d.ts +30 -0
  85. package/types/hypergraph/operations/index.d.ts +19 -0
  86. package/types/hypergraph/osfkb/adapter.d.ts +315 -0
  87. package/types/hypergraph/render/Interaction.d.ts +40 -0
  88. package/types/hypergraph/render/PolygonRenderer.d.ts +50 -0
  89. package/types/hypergraph/render/SVGPolygonRenderer.d.ts +7 -0
  90. package/types/hypergraph/types.d.ts +170 -0
  91. package/types/index.d.ts +21 -0
  92. package/types/internals/Algorithms.d.ts +68 -0
  93. package/types/internals/AlgorithmsPrimitives.d.ts +18 -0
  94. package/types/internals/Animations.d.ts +39 -0
  95. package/types/internals/AttributePathPrimitives.d.ts +2 -0
  96. package/types/internals/Brand.d.ts +22 -0
  97. package/types/internals/Camera.d.ts +115 -0
  98. package/types/internals/CameraInteractions.d.ts +15 -0
  99. package/types/internals/CameraInteractionsPrimitives.d.ts +18 -0
  100. package/types/internals/Captor.d.ts +56 -0
  101. package/types/internals/CaptorPrimitives.d.ts +9 -0
  102. package/types/internals/ClassModule.d.ts +42 -0
  103. package/types/internals/ConnectNodes.d.ts +23 -0
  104. package/types/internals/CurvatureManager.d.ts +14 -0
  105. package/types/internals/DataModule.d.ts +29 -0
  106. package/types/internals/Disabled.d.ts +27 -0
  107. package/types/internals/DomModule.d.ts +87 -0
  108. package/types/internals/DragModule.d.ts +14 -0
  109. package/types/internals/ElementSet.d.ts +17 -0
  110. package/types/internals/EventsModule.d.ts +41 -0
  111. package/types/internals/FlexArray.d.ts +54 -0
  112. package/types/internals/Geo.d.ts +127 -0
  113. package/types/internals/Graph.d.ts +109 -0
  114. package/types/internals/Graphics.d.ts +112 -0
  115. package/types/internals/GraphicsEngine.d.ts +96 -0
  116. package/types/internals/Hover.d.ts +32 -0
  117. package/types/internals/Hypergraph.d.ts +112 -0
  118. package/types/internals/IndexList.d.ts +28 -0
  119. package/types/internals/IndividualAttributes.d.ts +27 -0
  120. package/types/internals/Interactions.d.ts +45 -0
  121. package/types/internals/Keyboard.d.ts +25 -0
  122. package/types/internals/LabelManager.d.ts +56 -0
  123. package/types/internals/Lasso.d.ts +22 -0
  124. package/types/internals/Layers.d.ts +79 -0
  125. package/types/internals/LayersPrimitives.d.ts +5 -0
  126. package/types/internals/Layouts.d.ts +35 -0
  127. package/types/internals/LayoutsInternal.d.ts +37 -0
  128. package/types/internals/LayoutsPrimitives.d.ts +23 -0
  129. package/types/internals/Legend.d.ts +33 -0
  130. package/types/internals/LegendPrimitives.d.ts +3 -0
  131. package/types/internals/Locate.d.ts +43 -0
  132. package/types/internals/LocatePrimitives.d.ts +20 -0
  133. package/types/internals/MappingManager.d.ts +27 -0
  134. package/types/internals/MappingPrimitives.d.ts +29 -0
  135. package/types/internals/Module.d.ts +23 -0
  136. package/types/internals/Mouse.d.ts +42 -0
  137. package/types/internals/NodusModules.d.ts +99 -0
  138. package/types/internals/PositionModule.d.ts +10 -0
  139. package/types/internals/PulseModule.d.ts +29 -0
  140. package/types/internals/Quadtree.d.ts +100 -0
  141. package/types/internals/RectangleSelect.d.ts +18 -0
  142. package/types/internals/Resizing.d.ts +48 -0
  143. package/types/internals/Rewiring.d.ts +64 -0
  144. package/types/internals/SchemaWatchPrimitives.d.ts +75 -0
  145. package/types/internals/Selection.d.ts +52 -0
  146. package/types/internals/SelectionModule.d.ts +27 -0
  147. package/types/internals/Settings.d.ts +20 -0
  148. package/types/internals/Snapping.d.ts +54 -0
  149. package/types/internals/Spatial.d.ts +50 -0
  150. package/types/internals/SpatialPrimitives.d.ts +75 -0
  151. package/types/internals/Storage.d.ts +46 -0
  152. package/types/internals/StyleRulesModule.d.ts +21 -0
  153. package/types/internals/Synchronizer.d.ts +17 -0
  154. package/types/internals/Tooltip.d.ts +25 -0
  155. package/types/internals/TooltipPrimitives.d.ts +21 -0
  156. package/types/internals/Topology.d.ts +50 -0
  157. package/types/internals/Touch.d.ts +16 -0
  158. package/types/internals/Transformations.d.ts +36 -0
  159. package/types/internals/VirtualMouse.d.ts +52 -0
  160. package/types/internals/WasmHGrid.d.ts +25 -0
  161. package/types/internals/WatcherModule.d.ts +25 -0
  162. package/types/internals/Workers.d.ts +79 -0
  163. package/types/internals/algorithmExports.d.ts +333 -0
  164. package/types/internals/algorithmHelpers.d.ts +36 -0
  165. package/types/internals/attributes/AttributesManager.d.ts +216 -0
  166. package/types/internals/attributes/ElementAttributesManager.d.ts +119 -0
  167. package/types/internals/attributes/attributeHelpers.d.ts +70 -0
  168. package/types/internals/attributes/flexArrayFactories.d.ts +277 -0
  169. package/types/internals/easing.d.ts +15 -0
  170. package/types/internals/helpers.d.ts +79 -0
  171. package/types/internals/hypergraphWorker.d.ts +37 -0
  172. package/types/internals/hypergraphWorkerHost.d.ts +40 -0
  173. package/types/internals/labels/SpatialGrid.d.ts +29 -0
  174. package/types/internals/labels/fillEdgeTexts.d.ts +25 -0
  175. package/types/internals/labels/fillNodeTexts.d.ts +24 -0
  176. package/types/internals/labels/helpers.d.ts +180 -0
  177. package/types/internals/layoutWorker.d.ts +21 -0
  178. package/types/internals/rendering/BoundariesManager.d.ts +53 -0
  179. package/types/internals/rendering/Buffer2.d.ts +91 -0
  180. package/types/internals/rendering/BufferList.d.ts +86 -0
  181. package/types/internals/rendering/CpuRenderer.d.ts +128 -0
  182. package/types/internals/rendering/EasingManager.d.ts +40 -0
  183. package/types/internals/rendering/EdgeDrawer.d.ts +54 -0
  184. package/types/internals/rendering/ElementGroup.d.ts +66 -0
  185. package/types/internals/rendering/MemoryManager.d.ts +71 -0
  186. package/types/internals/rendering/NodeDrawer.d.ts +49 -0
  187. package/types/internals/rendering/PatternManager.d.ts +29 -0
  188. package/types/internals/rendering/RENDER_MAPPING.d.ts +5 -0
  189. package/types/internals/rendering/RendererBase.d.ts +127 -0
  190. package/types/internals/rendering/ShapeManager.d.ts +46 -0
  191. package/types/internals/rendering/TextManager.d.ts +112 -0
  192. package/types/internals/rendering/canvasHelpers.d.ts +5 -0
  193. package/types/internals/rendering/constants.d.ts +125 -0
  194. package/types/internals/rendering/curveHelpers.d.ts +96 -0
  195. package/types/internals/rendering/drawerHelpers.d.ts +32 -0
  196. package/types/internals/rendering/float16.d.ts +25 -0
  197. package/types/internals/rendering/hitDetection.d.ts +89 -0
  198. package/types/internals/rendering/loadGraph.d.ts +103 -0
  199. package/types/internals/rendering/objectInfo.d.ts +46 -0
  200. package/types/internals/rendering/packing.d.ts +46 -0
  201. package/types/internals/rendering/shapeHelpers.d.ts +26 -0
  202. package/types/internals/rendering/types.d.ts +143 -0
  203. package/types/internals/renderingBinaryPrimitives.d.ts +110 -0
  204. package/types/internals/utilsExports.d.ts +408 -0
  205. package/types/internals/wasmBackend.d.ts +38 -0
  206. package/types/internals/wasmColumns.d.ts +61 -0
  207. package/types/internals/wasmInit.d.ts +1 -0
  208. package/types/modules/APIModule.d.ts +8 -0
  209. package/types/modules/AlgorithmsAPI.d.ts +15 -0
  210. package/types/modules/BrandAPI.d.ts +6 -0
  211. package/types/modules/CaptorAPI.d.ts +9 -0
  212. package/types/modules/ClassesAPI.d.ts +9 -0
  213. package/types/modules/DebugAPI.d.ts +18 -0
  214. package/types/modules/DisabledAPI.d.ts +11 -0
  215. package/types/modules/DomAPI.d.ts +9 -0
  216. package/types/modules/EventsAPI.d.ts +16 -0
  217. package/types/modules/ExportAPI.d.ts +23 -0
  218. package/types/modules/GeneratorsAPI.d.ts +12 -0
  219. package/types/modules/GeoAPI.d.ts +20 -0
  220. package/types/modules/GraphAPI.d.ts +26 -0
  221. package/types/modules/GraphicsAPI.d.ts +8 -0
  222. package/types/modules/HypergraphAPI.d.ts +71 -0
  223. package/types/modules/KeyboardAPI.d.ts +6 -0
  224. package/types/modules/LayersAPI.d.ts +7 -0
  225. package/types/modules/LayoutsAPI.d.ts +25 -0
  226. package/types/modules/LegendAPI.d.ts +9 -0
  227. package/types/modules/MouseAPI.d.ts +16 -0
  228. package/types/modules/ParseAPI.d.ts +83 -0
  229. package/types/modules/RulesAPI.d.ts +7 -0
  230. package/types/modules/SchemaAPI.d.ts +9 -0
  231. package/types/modules/SelectionAPI.d.ts +12 -0
  232. package/types/modules/SettingsAPI.d.ts +9 -0
  233. package/types/modules/StylesAPI.d.ts +64 -0
  234. package/types/modules/ToolsAPI.d.ts +68 -0
  235. package/types/modules/TransformationsAPI.d.ts +30 -0
  236. package/types/modules/ViewAPI.d.ts +52 -0
  237. package/types/publicTypes.d.ts +56 -0
  238. package/types/renderers/CanvasRenderer.d.ts +86 -0
  239. package/types/renderers/Renderer.d.ts +13 -0
  240. package/types/renderers/SVGRenderer.d.ts +57 -0
  241. package/types/renderers/WasmGraphRenderer.d.ts +118 -0
  242. package/types/renderers/WasmRendererAdapter.d.ts +38 -0
  243. package/types/tools/ConnectNodesAPI.d.ts +42 -0
  244. package/types/tools/LassoAPI.d.ts +78 -0
  245. package/types/tools/RectangleSelectAPI.d.ts +51 -0
  246. package/types/tools/ResizingAPI.d.ts +62 -0
  247. package/types/tools/RewiringAPI.d.ts +78 -0
  248. package/types/tools/SnappingAPI.d.ts +71 -0
  249. package/types/tools/ToolsAPI.d.ts +46 -0
  250. package/types/tools/TooltipAPI.d.ts +141 -0
  251. package/types/transformations/TransformationsEngine.d.ts +602 -0
  252. package/types/utils/index.d.ts +6 -0
@@ -0,0 +1,602 @@
1
+ import { Transformation as BaseTransformation, TransformationType } from '../core/Transformation';
2
+ type DiffEntry = {
3
+ shouldDo: boolean;
4
+ shouldUndo: boolean;
5
+ shouldCleanup?: boolean;
6
+ };
7
+ type Diff = Map<number, DiffEntry>;
8
+ type InvalidateEvent = 'setData' | 'addElement' | 'removeElement' | 'setOptions' | 'refresh';
9
+ declare class TransformationsState {
10
+ private prev;
11
+ private next;
12
+ private prevOrder;
13
+ private nextOrder;
14
+ private shouldAnimate;
15
+ private minRefreshIndex;
16
+ addTransformation(id: number, enabled: boolean): void;
17
+ removeTransformation(id: number): void;
18
+ setIndex(id: number, index: number): void;
19
+ setEnabled(id: number, enabled: boolean): void;
20
+ isEnabled(id: number): boolean;
21
+ static getDiff(prev: Record<number, boolean>, next: Record<number, boolean>): Diff;
22
+ private getFirstChange;
23
+ private refreshFrom;
24
+ isDirty(): false | {
25
+ reason: 'diff' | 'refresh';
26
+ index: number;
27
+ };
28
+ invalidateFrom(index: number, event: InvalidateEvent): void;
29
+ step(): {
30
+ diff: Diff;
31
+ nextOrder: Map<number, number>;
32
+ prevOrder: Map<number, number>;
33
+ shouldAnimate: boolean;
34
+ };
35
+ done(): void;
36
+ }
37
+ declare class TransformationsList {
38
+ private transformations;
39
+ private readonly state;
40
+ private readonly nodus;
41
+ private readonly invalidate;
42
+ private readonly shouldRemove;
43
+ private refreshPromise;
44
+ constructor(state: TransformationsState, nodus: any, invalidate: () => void);
45
+ addTransformation(transformation: BaseTransformation<any, any, any>, enabled?: boolean): void;
46
+ removeTransformation(transformation: BaseTransformation<any, any, any>): void;
47
+ getList(): BaseTransformation<any, any, any>[];
48
+ getRefreshPromise(): Promise<unknown>;
49
+ chainRefreshPromise(promise: Promise<unknown | void>): void;
50
+ afterNextUpdate(): Promise<unknown>;
51
+ getTransformations(): BaseTransformation<any, any, any>[];
52
+ getIndex(transformation: BaseTransformation<any, any, any>): number;
53
+ setIndex(transformation: BaseTransformation<any, any, any>, index: number): Promise<unknown>;
54
+ enable(transformation: BaseTransformation<any, any, any>): Promise<unknown>;
55
+ disable(transformation: BaseTransformation<any, any, any>): Promise<unknown>;
56
+ remove(transformation: BaseTransformation<any, any, any>): Promise<unknown>;
57
+ isEnabled(transformation: BaseTransformation<any, any, any>): boolean;
58
+ invalidateFrom(index: number, event: InvalidateEvent): void;
59
+ setOptions(transformation: BaseTransformation<any, any, any>): void;
60
+ refreshTransformation(transformation: BaseTransformation<any, any, any>): void;
61
+ afterStep(): void;
62
+ getById(id: number): BaseTransformation<any, any, any> | undefined;
63
+ clear(): void;
64
+ destroy(): void;
65
+ }
66
+ declare class ElementManager {
67
+ nodeToTransformation: Map<number, any>;
68
+ edgeToTransformation: Map<number, any>;
69
+ nodeVirtual: Set<number>;
70
+ edgeVirtual: Set<number>;
71
+ nodeToMeta: Map<number, any>;
72
+ edgeToMeta: Map<number, any>;
73
+ metaToNodes: Map<number, any>;
74
+ metaToEdges: Map<number, any>;
75
+ private readonly nodus;
76
+ constructor(nodus: any);
77
+ getTransformation(index: number, isNode: boolean): any;
78
+ setTransformation(index: number, transformation: any, isNode: boolean): void;
79
+ deleteTransformation(elements: any): void;
80
+ addVirtualElements(nodes?: any, edges?: any): void;
81
+ removeVirtualElements(nodes?: any, edges?: any): void;
82
+ isVirtual(index: number, isNode: boolean): boolean;
83
+ setMetaNode(index: number, node: any): void;
84
+ setSubNodes(index: number, nodes: any): void;
85
+ removeMetaNodes(nodes: any): void;
86
+ clearSubNodes(index: number): void;
87
+ clearMetaNode(index: number): void;
88
+ getMetaNode(node: any): any;
89
+ setMetaEdge(index: number, edge: any): void;
90
+ setSubEdges(index: number, edges: any): void;
91
+ removeMetaEdges(edges: any): void;
92
+ clearSubEdges(index: number): void;
93
+ clearMetaEdge(index: number): void;
94
+ getMetaEdge(edge: any): any;
95
+ getLeafElements(indexes: Uint32Array, isNode: boolean): number[];
96
+ getSubElements(element: any): any;
97
+ getSubNodes(element: any): any;
98
+ getSubEdges(element: any): any;
99
+ isIntraEdge(edge: any): boolean;
100
+ clearNodeMappings(): void;
101
+ clearEdgeMappings(): void;
102
+ clearAllMappings(): void;
103
+ }
104
+ declare class TransformationsSelection {
105
+ private selectedNodes?;
106
+ private selectedEdges?;
107
+ private readonly nodus;
108
+ constructor(nodus: any);
109
+ save(): void;
110
+ restore(): void;
111
+ cleanup(): void;
112
+ }
113
+ declare class TransformationsAnimations {
114
+ private readonly nodus;
115
+ xs: Map<number, number>;
116
+ ys: Map<number, number>;
117
+ rs: Map<number, number>;
118
+ curvatures: Map<number, number>;
119
+ nodesToFadeIn: Set<number>;
120
+ nodesToFadeOut: Set<number>;
121
+ edgesToFadeIn: Set<number>;
122
+ edgesToFadeOut: Set<number>;
123
+ edgesToFadeOutWithCurvature: Map<number, number>;
124
+ private readonly animations;
125
+ private readonly before;
126
+ private readonly after;
127
+ private readonly afterMod;
128
+ private readonly layer;
129
+ private readonly attributeLayerData;
130
+ private readonly _onNodesRemoved;
131
+ private applying;
132
+ constructor(nodus: any);
133
+ initEvents(): void;
134
+ apply(animation: any): Promise<void>;
135
+ setXYR(indexes: number | ArrayLike<number>, x: number, y: number, radius?: number): void;
136
+ setXY(index: number, x: number, y: number): void;
137
+ setR(index: number, radius: number): void;
138
+ setRs(indexes: ArrayLike<number>, values: number[]): void;
139
+ getXYR(elements: any): any[];
140
+ getXs(elements: any): number[];
141
+ getYs(elements: any): number[];
142
+ getRs(elements: any): number[];
143
+ getMapValues(elements: any, key: string, map: Map<number, number>): number[];
144
+ getOpenRadius(index: number): number | undefined;
145
+ getCurvature(index: number): number | undefined;
146
+ getCloseRadius(index: number): number;
147
+ getCloseRadii(indexes: ArrayLike<number>): number[];
148
+ getInputFlexArrays(): any;
149
+ deleteRadiuses(indexes: ArrayLike<number>): void;
150
+ deleteRadius(index: number): void;
151
+ initCurvature(indexes: number | ArrayLike<number>): void;
152
+ deleteCurvatures(indexes: ArrayLike<number>): void;
153
+ deleteEdgeFading(edges: any): void;
154
+ deleteNodeFading(nodes: any): void;
155
+ fadeOutNode(index: number): void;
156
+ fadeInNode(index: number): void;
157
+ fadeOutNodes(indexes: ArrayLike<number>): void;
158
+ fadeInNodes(indexes: ArrayLike<number>): void;
159
+ fadeOutEdge(index: number): void;
160
+ fadeInEdge(index: number): void;
161
+ fadeOutEdges(indexes: ArrayLike<number>): void;
162
+ fadeOutWithCurvature(indexes: number | ArrayLike<number>, curvature: number): void;
163
+ fadeInEdges(indexes: ArrayLike<number>): void;
164
+ clearFadeEdges(indexes: ArrayLike<number>): void;
165
+ pushBefore(before: (() => void) | Array<() => void>): void;
166
+ pushAfter(after: (() => Promise<unknown> | unknown) | Array<() => Promise<unknown> | unknown>): void;
167
+ setCurvatures(indexes: ArrayLike<number>, values: number[]): void;
168
+ initCurvatures(indexes: ArrayLike<number>, values: number[]): void;
169
+ setPreCurvature(indexes: ArrayLike<number>, value: number | number[]): void;
170
+ setCurvature(index: number, value: number): void;
171
+ hideNodesAfter(indexes: ArrayLike<number>): void;
172
+ hideEdgesAfter(indexes: ArrayLike<number>): void;
173
+ setOpenRadius(index: number, radius: number): void;
174
+ push(animation: (() => Promise<unknown> | unknown) | Array<() => Promise<unknown> | unknown>): void;
175
+ getMaxAnimation(a: any, b: any): any;
176
+ isApplying(): boolean;
177
+ }
178
+ declare class LayoutController {
179
+ private readonly nodus;
180
+ private readonly module;
181
+ relayouted: Set<number>;
182
+ shouldRelayout: Set<number>;
183
+ layoutPerGroup: Map<number, any>;
184
+ nextLayout: Map<number, (group: any, nodes: any, radii: any) => any>;
185
+ private nextOnGroupUpdate;
186
+ onGroupsUpdate: (nodes: any, radii: any) => any;
187
+ private readonly onLayoutPrepare;
188
+ constructor(nodus: any, module: any);
189
+ getNodesToRecompute(indexes: Iterable<number>): any;
190
+ getLayoutFunction(callback: Function, group: any, nodes: any, radii: any): () => Promise<void>;
191
+ private runLayout;
192
+ handleLayoutFunctions(functions: Array<(() => Promise<void>) | Promise<void>>): Promise<void>;
193
+ handleGlobalLayout(nodes: any, radii: any): Promise<void>;
194
+ layoutGroups(toRelayout: any[], animation?: any, propagate?: boolean): Promise<void>;
195
+ setNextLayout(groupIndex: number, fn: (group: any, nodes: any, radii: any) => any): void;
196
+ getNextLayout(groupIndex: number): ((group: any, nodes: any, radii: any) => any) | undefined;
197
+ setNextOnGroupUpdate(fn: (nodes: any, radii: any) => any): void;
198
+ getNextOnGroupUpdate(): ((nodes: any, radii: any) => any) | null;
199
+ hasRelayouted(index: number): boolean;
200
+ diffSets(): void;
201
+ clear(): void;
202
+ }
203
+ declare class GroupController {
204
+ private readonly nodus;
205
+ private readonly module;
206
+ subNodeOffsetX: Map<number, number>;
207
+ subNodeOffsetY: Map<number, number>;
208
+ openRadius: Map<number, number>;
209
+ isExpanding: Set<number>;
210
+ alreadyGrouped: Set<number>;
211
+ openGroups: Set<number>;
212
+ closeGroups: Set<number>;
213
+ fadedGroups: Set<number>;
214
+ fadedEdges: Set<number>;
215
+ nodeGroupinCount: number;
216
+ nodeLayer: Map<number, number>;
217
+ edgeLayer: Map<number, number>;
218
+ savedNodeLayer: Map<number, number>;
219
+ savedEdgeLayer: Map<number, number>;
220
+ padding: Map<number, number>;
221
+ geoRadius: Map<number, number>;
222
+ collapsedGroups: Set<number>;
223
+ hasUpdated: Set<number>;
224
+ shouldRunGroupUpdate: boolean;
225
+ runningLayouts: boolean;
226
+ private readonly groupLayer;
227
+ private readonly fadingClass;
228
+ readonly layoutController: LayoutController;
229
+ private readonly onSetMultipleAttributes;
230
+ private destroyed;
231
+ constructor(nodus: any, module: any);
232
+ setSubEltsLayer(group: any, layer: number, isOpening: boolean): void;
233
+ setNodeGroupingCount(count: number): void;
234
+ getNodeGroupingCount(): number;
235
+ updateGroupLayer(nodes?: any, edges?: any): void;
236
+ filterGroups(nodes: any): void;
237
+ setGroupXYR(group: any): void;
238
+ setGeoLatLng(node: any, latitude: number, longitude: number): void;
239
+ addOpenGroup(group: any): void;
240
+ isOpen(group: any): boolean;
241
+ isClose(group: any): boolean;
242
+ closeGroup(group: any, subNodes: any, x: number, y: number): void;
243
+ expandGroup(group: any, subNodes: any): void;
244
+ hideShowEdges(metaEdges: any, subEdgesPerMetaEdge: any[], selfLoopEdgeIndexes: Set<number>, showMetaEdges: boolean, showMetaEdgesChanged: boolean, newlyOpenGroups: Set<number>, previouslyClosedGroups: Set<number>): void;
245
+ setPadding(groups: any, padding: number | ((group: any) => number)): Set<number>;
246
+ getGroupXYR(group: any, subNodes: any, override?: {
247
+ [key: number]: {
248
+ x?: number;
249
+ y?: number;
250
+ radius?: number;
251
+ };
252
+ }): {
253
+ x: number;
254
+ y: number;
255
+ radius: number;
256
+ isGeo: boolean;
257
+ };
258
+ restorePositions(group: any, subNodes: any): void;
259
+ getPositions(group: any, subNodes: any): Array<{
260
+ x: number;
261
+ y: number;
262
+ }>;
263
+ animateChildren(group: any, position: {
264
+ x: number;
265
+ y: number;
266
+ }): void;
267
+ getOffset(index: number): {
268
+ x: number;
269
+ y: number;
270
+ };
271
+ processNodeTree(group: any, subNodes: any, offset: {
272
+ x: number;
273
+ y: number;
274
+ }, isClosed: boolean, wasCollapsed: boolean, callback: (group: any, subNodes: any, offset: {
275
+ x: number;
276
+ y: number;
277
+ }, isClosed: boolean, wasCollapsed: boolean) => void): void;
278
+ hideSubNodes(nodes: any): void;
279
+ fadeGroups(groups: any): void;
280
+ triggerGroupsUpdate(): void;
281
+ layoutGroups(groups: any[], animation?: any, propagate?: boolean): Promise<void>;
282
+ _onToggleGeo(): void;
283
+ onAfterLayouts(): Promise<void>;
284
+ cleanup(metaNodes: any, _metaEdges: any, subNodes?: any): void;
285
+ onRemove(indexes: Uint32Array, isNode: boolean): void;
286
+ fishEyeExpand(node: any, action: () => Promise<unknown>, layout?: any): Promise<void>;
287
+ fishEyeCollapse(node: any, action: () => Promise<unknown>): Promise<void>;
288
+ setNodeLayer(index: number, layer: number): void;
289
+ setEdgeLayer(index: number, layer: number): void;
290
+ clear(): void;
291
+ destroy(): void;
292
+ }
293
+ declare class DrilldownController {
294
+ private readonly module;
295
+ private readonly drilldowns;
296
+ constructor(module: any);
297
+ addDrilldown(drilldown: any): void;
298
+ removeDrilldown(drilldown: any): void;
299
+ onRemove(indexes: Set<number>, isNode: boolean): void;
300
+ }
301
+ declare class EasyGrouping {
302
+ private readonly nodus;
303
+ private readonly module;
304
+ private readonly owner;
305
+ constructor(nodus: any, module: any);
306
+ group(nodes: any, options?: any): Promise<any>;
307
+ ungroup(node: any): Promise<any>;
308
+ addSubGraph(node: any, data: any, options?: any): Promise<any>;
309
+ onRemove(indexes: Set<number>, isNode: boolean): void;
310
+ }
311
+ declare class EasyGroupingController {
312
+ private readonly easyGrouping;
313
+ constructor(module: any, nodus: any);
314
+ onRemove(indexes: Set<number>, isNode: boolean): void;
315
+ getEasyGrouping(): EasyGrouping;
316
+ }
317
+ declare class DrillDown {
318
+ private readonly options;
319
+ private readonly groupsByDepth;
320
+ private readonly treeMap;
321
+ private readonly dataMap;
322
+ private readonly invalidEdges;
323
+ private readonly edges;
324
+ private readonly nodeToGroup;
325
+ private readonly nodeToDepth;
326
+ private context;
327
+ private onGetSubgraph;
328
+ private nodeGenerator;
329
+ private showContents;
330
+ private onGroupUpdate;
331
+ private padding;
332
+ private copyData;
333
+ private enabled;
334
+ private shouldAnimate;
335
+ constructor(options: any);
336
+ get nodus(): any;
337
+ get module(): any;
338
+ createGrouping(depth: number): Map<number, any>;
339
+ drill(node: any): Promise<void>;
340
+ addEdges(_nodes: any, newNodes: any): Promise<void>;
341
+ getGroupId(id: any): string;
342
+ getMaxDepth(): number;
343
+ getNodeDepth(id: any): number;
344
+ disable(animate?: boolean): Promise<unknown>;
345
+ enable(animate?: boolean): Promise<void>;
346
+ toggle(animate?: boolean): Promise<unknown>;
347
+ setOptions(options: any): Promise<unknown>;
348
+ destroy(): Promise<void>;
349
+ onRemove(indexes: Set<number>): void;
350
+ }
351
+ declare class TransformationsEventManager {
352
+ private readonly nodus;
353
+ private readonly dependencies;
354
+ private addingGraph;
355
+ private addingElements;
356
+ private readonly onPreAddGraph;
357
+ private readonly onPostAddGraph;
358
+ private readonly onPreAddElements;
359
+ private readonly onPostAddElements;
360
+ private readonly onDestroy;
361
+ private readonly onAddElements;
362
+ private readonly onSetData;
363
+ private readonly onRequestElementsToDelete;
364
+ private readonly onAfterRemoveElements;
365
+ private readonly onRemoveElements;
366
+ private readonly onClearGraph;
367
+ constructor(nodus: any, dependencies: any);
368
+ private setupEventListeners;
369
+ isAddingGraph(): boolean;
370
+ isAddingElements(): boolean;
371
+ destroy(): void;
372
+ }
373
+ declare abstract class InternalTransformation<C = any> extends BaseTransformation<any, any, C> {
374
+ protected module: any;
375
+ protected nodus: any;
376
+ }
377
+ declare class NodeFilterTransformation extends InternalTransformation<{
378
+ hiddenNodes: any;
379
+ hiddenEdges: any;
380
+ }> {
381
+ private nodeSelector;
382
+ constructor(options: any);
383
+ setOptions(options: any): Promise<unknown>;
384
+ getName(): TransformationType;
385
+ run(): Promise<void>;
386
+ undo(animates?: boolean): Promise<unknown>;
387
+ onRemove(indexes: Set<number>, isNode: boolean): void;
388
+ resetContext(): void;
389
+ }
390
+ declare class EdgeFilterTransformation extends InternalTransformation<{
391
+ hiddenEdges: any;
392
+ }> {
393
+ private edgeSelector;
394
+ constructor(options: any);
395
+ setOptions(options: any): Promise<unknown>;
396
+ getName(): TransformationType;
397
+ run(): Promise<void>;
398
+ undo(animates?: boolean): Promise<unknown>;
399
+ onRemove(indexes: Set<number>, isNode: boolean): void;
400
+ resetContext(): void;
401
+ }
402
+ declare class EdgeGroupingTransformation extends InternalTransformation<{
403
+ groupedEdges: any;
404
+ }> {
405
+ private edgeSelector;
406
+ constructor(options: any);
407
+ setOptions(options: any): Promise<unknown>;
408
+ getName(): TransformationType;
409
+ run(): Promise<void>;
410
+ undo(): Promise<unknown>;
411
+ onRemove(indexes: Set<number>, isNode: boolean): void;
412
+ resetContext(): void;
413
+ }
414
+ declare class NodeGroupingTransformation extends InternalTransformation<{
415
+ metaNodes: any;
416
+ metaEdges: any;
417
+ subNodes: any;
418
+ subEdges: any;
419
+ intraEdges: any;
420
+ subRadiuses: any;
421
+ subNodesPerMetaNode: Map<number, Set<number>>;
422
+ }> {
423
+ private readonly groupToMetaIndex;
424
+ private readonly manualGroups;
425
+ protected selector: (node: any) => boolean;
426
+ protected groupIdFunction: (node: any) => string | number | null;
427
+ protected nodeGenerator: (nodes: any, groupId: string | number, transformation: any) => any;
428
+ protected onGroupUpdate: (group: any, nodes: any, radii: any) => any;
429
+ protected showContents: (group: any) => boolean;
430
+ protected padding: number | ((group: any) => number);
431
+ protected edgeSelector: (edge: any) => boolean;
432
+ protected edgeGroupIdFunction: (edge: any) => string | number | null;
433
+ protected edgeGenerator: (edges: any, groupId: string | number, source: any, target: any, transformation: any) => any;
434
+ protected separateEdgesByDirection: boolean;
435
+ protected groupSelfLoopEdges: boolean;
436
+ protected groupEdges: boolean;
437
+ showMetaEdges: boolean;
438
+ private wasShowMetaEdges;
439
+ private wasShowSelfLoopEdges;
440
+ constructor(options: any);
441
+ resetContext(): void;
442
+ getName(): TransformationType;
443
+ private computeEdgeGroupId;
444
+ private static edgeGroupKey;
445
+ private buildGroups;
446
+ private getMetaNode;
447
+ run(): Promise<void>;
448
+ undo(): Promise<unknown>;
449
+ onRemove(indexes: Set<number>, isNode: boolean): void;
450
+ cleanup(): Promise<void>;
451
+ setOptions(options: any): Promise<unknown>;
452
+ group(nodes: any, options?: any): Promise<unknown>;
453
+ ungroup(nodes: any): Promise<unknown>;
454
+ isGroup(node: any): boolean;
455
+ isOpen(node: any): boolean;
456
+ isClosed(node: any): boolean;
457
+ open(node: any): Promise<unknown>;
458
+ close(node: any): Promise<unknown>;
459
+ toggleOpenClose(node: any): Promise<unknown>;
460
+ addSubGraphs(node: any, graphs: any[], options?: any): Promise<void>;
461
+ addSubGraph(node: any, graph: any, options?: any): Promise<void>;
462
+ }
463
+ declare class NodeClusteringTransformation extends NodeGroupingTransformation {
464
+ getName(): TransformationType;
465
+ }
466
+ declare class GeoClusteringTransformation extends NodeGroupingTransformation {
467
+ getName(): TransformationType;
468
+ }
469
+ declare class VirtualPropertiesTransformation extends InternalTransformation<{
470
+ nodes: any;
471
+ oldNodesData: any[];
472
+ edges: any;
473
+ oldEdgesData: any[];
474
+ }> {
475
+ private nodeSelector;
476
+ private edgeSelector;
477
+ private nodeDataFunction;
478
+ private edgeDataFunction;
479
+ constructor(options: any);
480
+ getName(): TransformationType;
481
+ run(): Promise<void>;
482
+ undo(): Promise<void>;
483
+ onRemove(indexes: Set<number>, isNode: boolean): void;
484
+ setOptions(options: any): Promise<unknown>;
485
+ resetContext(): void;
486
+ }
487
+ declare class NeighborGenerationTransformation extends InternalTransformation<{
488
+ virtualNodes: any;
489
+ virtualEdges: any;
490
+ }> {
491
+ private selector;
492
+ private neighborIdFunction;
493
+ private nodeGenerator;
494
+ private edgeGenerator;
495
+ constructor(options: any);
496
+ getName(): TransformationType;
497
+ run(): Promise<void>;
498
+ undo(animates?: boolean): Promise<unknown>;
499
+ onRemove(_indexes: Set<number>, _isNode: boolean): void;
500
+ cleanup(): Promise<void>;
501
+ setOptions(options: any): Promise<unknown>;
502
+ resetContext(): void;
503
+ }
504
+ declare class NeighborMergingTransformation extends InternalTransformation<{
505
+ hiddenNodes: any;
506
+ hiddenEdges: any;
507
+ nodesWithDataChange: any;
508
+ oldDataList: any[];
509
+ }> {
510
+ private selector;
511
+ private dataFunction;
512
+ constructor(options: any);
513
+ getName(): TransformationType;
514
+ run(): Promise<void>;
515
+ undo(animates?: boolean): Promise<unknown>;
516
+ onRemove(indexes: Set<number>, isNode: boolean): void;
517
+ cleanup(): Promise<void>;
518
+ setOptions(options: any): Promise<unknown>;
519
+ resetContext(): void;
520
+ }
521
+ declare class NodeCollapsingTransformation extends InternalTransformation<{
522
+ hiddenNodes: any;
523
+ hiddenEdges: any;
524
+ virtualEdges: any;
525
+ }> {
526
+ private selector;
527
+ private edgeGenerator;
528
+ constructor(options: any);
529
+ getName(): TransformationType;
530
+ resetContext(): void;
531
+ run(): Promise<unknown>;
532
+ undo(animates?: boolean): Promise<unknown>;
533
+ cleanup(): Promise<void>;
534
+ onRemove(indexes: Set<number>, isNode: boolean): void;
535
+ setOptions(options: any): Promise<unknown>;
536
+ }
537
+ declare class TransformationsEngineBase {
538
+ animation: any;
539
+ readonly nodus: any;
540
+ protected shouldRefresh: boolean;
541
+ private refreshing;
542
+ private destroyed;
543
+ private paused;
544
+ readonly state: TransformationsState;
545
+ readonly elementManager: ElementManager;
546
+ readonly selection: TransformationsSelection;
547
+ readonly animations: TransformationsAnimations;
548
+ readonly layoutController: LayoutController;
549
+ readonly groupController: GroupController;
550
+ readonly drilldownController: DrilldownController;
551
+ readonly easyGroupingController: EasyGroupingController;
552
+ readonly list: TransformationsList;
553
+ readonly eventManager: TransformationsEventManager;
554
+ onRefreshError?: (error: Error) => void;
555
+ constructor(nodus: any);
556
+ private step;
557
+ private runAnimations;
558
+ refresh(): void;
559
+ invalidate(): void;
560
+ afterNextUpdate(): Promise<unknown>;
561
+ clear(): Promise<unknown>;
562
+ destroy(): void;
563
+ pause(): void;
564
+ resume(): void;
565
+ isRefreshing(): boolean;
566
+ setAnimation(animation: any): this;
567
+ getAnimation(): any;
568
+ }
569
+ export declare class TransformationsEngine extends TransformationsEngineBase {
570
+ private _setOptions;
571
+ addNodeGrouping(options?: any): NodeGroupingTransformation;
572
+ addEdgeGrouping(options?: any): EdgeGroupingTransformation;
573
+ addGeoClustering(options?: any): GeoClusteringTransformation;
574
+ addNodeFilter(options?: any): NodeFilterTransformation;
575
+ addEdgeFilter(options?: any): EdgeFilterTransformation;
576
+ addNeighborMerging(options?: any): NeighborMergingTransformation;
577
+ addNeighborGeneration(options?: any): NeighborGenerationTransformation;
578
+ addNodeCollapsing(options?: any): NodeCollapsingTransformation;
579
+ addVirtualProperties(options?: any): VirtualPropertiesTransformation;
580
+ addNodeClustering(options?: any): NodeClusteringTransformation;
581
+ addDrilldown(options?: any): DrillDown;
582
+ onGroupsUpdated(callback: (nodes: any, radii: any) => any): void;
583
+ triggerGroupsUpdated(): void;
584
+ triggerGroupsUpdate(): void;
585
+ layoutGroups(toRelayout: any[], options?: any, propagate?: boolean): Promise<void>;
586
+ getXYR(elements: any): any;
587
+ getTransformation(index: number, isNode: boolean): any;
588
+ getMetaNode(node: any): any;
589
+ isVirtual(index: number, isNode: boolean): boolean;
590
+ getSubNodes(node: any): any;
591
+ getSubEdges(edge: any): any;
592
+ getMetaEdge(edge: any): any;
593
+ getList(): BaseTransformation<any, any, any>[];
594
+ getById(id: number): BaseTransformation<any, any, any> | undefined;
595
+ getSubElements(element: any): any;
596
+ setSubNodes(node: any, subNodes: any): void;
597
+ setSubEdges(edge: any, subEdges: any): void;
598
+ getEasyGrouping(): EasyGrouping;
599
+ fishEyeExpand(node: any, action: () => Promise<unknown>, layout?: any): Promise<void>;
600
+ fishEyeCollapse(node: any, action: () => Promise<unknown>): Promise<void>;
601
+ }
602
+ export {};
@@ -0,0 +1,6 @@
1
+ export declare function isArray(value: any): value is any[] | ArrayBufferView;
2
+ export declare function toArray<T>(value: T | T[]): T[];
3
+ export declare function flattenArray<T>(arr: (T | T[])[]): T[];
4
+ export declare function removeFromArray<T>(arr: T[], item: T): boolean;
5
+ export declare function isInteger(value: any): value is number;
6
+ export declare function throttle(fn: Function, wait: number, context: any): (this: any) => void;