@statelyai/graph 1.0.0 → 2.0.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 (53) hide show
  1. package/README.md +55 -26
  2. package/dist/{adjacency-list-VsUaH9SJ.mjs → adjacency-list-GeL1Cu-L.mjs} +3 -1
  3. package/dist/{algorithms-fTqmvhzP.d.mts → algorithms-CsGNehct.d.mts} +137 -2
  4. package/dist/{algorithms-Ba7o7niK.mjs → algorithms-DF1pSQGv.mjs} +1476 -343
  5. package/dist/algorithms.d.mts +2 -2
  6. package/dist/algorithms.mjs +2 -2
  7. package/dist/{converter-udLITX36.mjs → converter-DyCJJfTe.mjs} +2 -2
  8. package/dist/format-support.mjs +38 -11
  9. package/dist/formats/adjacency-list/index.d.mts +1 -1
  10. package/dist/formats/adjacency-list/index.mjs +1 -1
  11. package/dist/formats/converter/index.d.mts +1 -1
  12. package/dist/formats/converter/index.mjs +1 -1
  13. package/dist/formats/cytoscape/index.d.mts +1 -1
  14. package/dist/formats/cytoscape/index.mjs +3 -1
  15. package/dist/formats/d2/index.d.mts +1 -1
  16. package/dist/formats/d2/index.mjs +26 -12
  17. package/dist/formats/d3/index.d.mts +1 -1
  18. package/dist/formats/d3/index.mjs +3 -1
  19. package/dist/formats/dot/index.d.mts +1 -1
  20. package/dist/formats/dot/index.mjs +22 -6
  21. package/dist/formats/edge-list/index.d.mts +1 -1
  22. package/dist/formats/edge-list/index.mjs +1 -1
  23. package/dist/formats/elk/index.d.mts +1 -1
  24. package/dist/formats/elk/index.mjs +21 -14
  25. package/dist/formats/gexf/index.d.mts +1 -1
  26. package/dist/formats/gexf/index.mjs +22 -15
  27. package/dist/formats/gml/index.d.mts +1 -1
  28. package/dist/formats/gml/index.mjs +21 -12
  29. package/dist/formats/graphml/index.d.mts +1 -1
  30. package/dist/formats/graphml/index.mjs +73 -22
  31. package/dist/formats/jgf/index.d.mts +1 -1
  32. package/dist/formats/jgf/index.mjs +5 -2
  33. package/dist/formats/mermaid/index.d.mts +1 -1
  34. package/dist/formats/mermaid/index.mjs +49 -12
  35. package/dist/formats/tgf/index.d.mts +1 -1
  36. package/dist/formats/tgf/index.mjs +1 -1
  37. package/dist/formats/xyflow/index.d.mts +1 -1
  38. package/dist/formats/xyflow/index.mjs +31 -4
  39. package/dist/{index-D9Kj6Fe3.d.mts → index-D51lJnt2.d.mts} +1 -1
  40. package/dist/{index-CHoriXZD.d.mts → index-DWmo1mIp.d.mts} +77 -18
  41. package/dist/index.d.mts +6 -6
  42. package/dist/index.mjs +143 -295
  43. package/dist/{queries-BlkA1HAN.d.mts → queries-BfXeTXRf.d.mts} +43 -12
  44. package/dist/queries-KirMDR7e.mjs +980 -0
  45. package/dist/queries.d.mts +1 -1
  46. package/dist/queries.mjs +1 -768
  47. package/dist/schemas.d.mts +1 -1
  48. package/dist/schemas.mjs +23 -84
  49. package/dist/{types-3-FS9NV2.d.mts → types-DNYdIU21.d.mts} +54 -5
  50. package/dist/validate-TtH-x3JV.mjs +190 -0
  51. package/package.json +13 -3
  52. package/dist/indexing-DR8M1vBy.mjs +0 -137
  53. /package/dist/{edge-list-DP4otyPU.mjs → edge-list-BcZ0h6zz.mjs} +0 -0
@@ -1,4 +1,4 @@
1
- import { h as GraphFormatConverter, u as Graph } from "./types-3-FS9NV2.mjs";
1
+ import { d as Graph, g as GraphFormatConverter } from "./types-DNYdIU21.mjs";
2
2
 
3
3
  //#region src/formats/converter/index.d.ts
4
4
 
@@ -1,4 +1,4 @@
1
- import { B as WeightedWalkOptions, E as PortConfig, M as VisualGraph, N as VisualGraphConfig, _ as GraphNode, b as GraphPort, c as EntitiesUpdate, d as GraphConfig, f as GraphDiff, g as GraphMode, i as DeleteNodeOptions, k as TransitionOptions, o as EdgeConfig, p as GraphEdge, r as CoverageStats, s as EntitiesConfig, u as Graph, v as GraphPatch, w as NodeConfig, x as GraphStep, z as WalkOptions } from "./types-3-FS9NV2.mjs";
1
+ import { E as NodeUpdate, F as VisualGraphConfig, H as WeightedWalkOptions, O as PortConfig, P as VisualGraph, S as GraphStep, T as NodeConfig, V as WalkOptions, _ as GraphMode, c as EntitiesConfig, d as Graph, f as GraphConfig, i as DeleteNodeOptions, j as TransitionOptions, l as EntitiesUpdate, m as GraphEdge, o as EdgeConfig, p as GraphDiff, r as CoverageStats, s as EdgeUpdate, v as GraphNode, x as GraphPort, y as GraphPatch } from "./types-DNYdIU21.mjs";
2
2
 
3
3
  //#region src/graph.d.ts
4
4
 
@@ -193,18 +193,23 @@ declare function deleteNode(graph: Graph, id: string, opts?: DeleteNodeOptions):
193
193
  declare function deleteEdge(graph: Graph, id: string): void;
194
194
  /**
195
195
  * **Mutable.** Update a node in place.
196
+ * Optional fields (`x`, `y`, `width`, `height`, `shape`, `color`, `style`,
197
+ * `ports`) accept `null` to unset; `undefined` leaves them unchanged.
196
198
  * @returns The updated node.
197
199
  *
198
200
  * @example
199
201
  * ```ts
200
202
  * const graph = createGraph({ nodes: [{ id: 'a', label: 'old' }] });
201
- * const updated = updateNode(graph, 'a', { label: 'new' });
202
- * // updated.label === 'new'
203
+ * const updated = updateNode(graph, 'a', { label: 'new', x: 100 });
204
+ * // updated.label === 'new', updated.x === 100
203
205
  * ```
204
206
  */
205
- declare function updateNode<N, P = any>(graph: Graph<N, any, any, P>, id: string, update: Partial<Omit<NodeConfig<N, P>, 'id'>>): GraphNode<N, P>;
207
+ declare function updateNode<N, P = any>(graph: Graph<N, any, any, P>, id: string, update: NodeUpdate<N, P>): GraphNode<N, P>;
206
208
  /**
207
209
  * **Mutable.** Update an edge in place.
210
+ * Optional fields (`weight`, `mode`, `sourcePort`, `targetPort`, `x`, `y`,
211
+ * `width`, `height`, `color`, `style`) accept `null` to unset; `undefined`
212
+ * leaves them unchanged.
208
213
  * @returns The updated edge.
209
214
  *
210
215
  * @example
@@ -213,11 +218,11 @@ declare function updateNode<N, P = any>(graph: Graph<N, any, any, P>, id: string
213
218
  * nodes: [{ id: 'a' }, { id: 'b' }],
214
219
  * edges: [{ id: 'e1', sourceId: 'a', targetId: 'b', label: 'old' }],
215
220
  * });
216
- * const updated = updateEdge(graph, 'e1', { label: 'new' });
217
- * // updated.label === 'new'
221
+ * const updated = updateEdge(graph, 'e1', { label: 'new', weight: 2 });
222
+ * // updated.label === 'new', updated.weight === 2
218
223
  * ```
219
224
  */
220
- declare function updateEdge<N, E>(graph: Graph<N, E>, id: string, update: Partial<Omit<EdgeConfig<E>, 'id'>>): GraphEdge<E>;
225
+ declare function updateEdge<N, E>(graph: Graph<N, E>, id: string, update: EdgeUpdate<E>): GraphEdge<E>;
221
226
  /**
222
227
  * **Mutable.** Add multiple nodes and edges to the graph.
223
228
  * Nodes are added first, then edges (so edges can reference new nodes).
@@ -308,8 +313,8 @@ declare class GraphInstance<N = any, E = any, G = any, P = any> {
308
313
  addEdge(config: EdgeConfig<E>): GraphEdge<E>;
309
314
  deleteNode(id: string, opts?: DeleteNodeOptions): void;
310
315
  deleteEdge(id: string): void;
311
- updateNode(id: string, update: Partial<Omit<NodeConfig<N, P>, 'id'>>): GraphNode<N, P>;
312
- updateEdge(id: string, update: Partial<Omit<EdgeConfig<E>, 'id'>>): GraphEdge<E>;
316
+ updateNode(id: string, update: NodeUpdate<N, P>): GraphNode<N, P>;
317
+ updateEdge(id: string, update: EdgeUpdate<E>): GraphEdge<E>;
313
318
  addEntities(entities: EntitiesConfig<N, E, P>): void;
314
319
  deleteEntities(ids: string | string[], opts?: DeleteNodeOptions): void;
315
320
  updateEntities(updates: EntitiesUpdate<N, E, P>): void;
@@ -325,17 +330,66 @@ declare function getEdgeMode(graph: Graph, edge: GraphEdge): GraphMode;
325
330
  /** Whether an edge points only from source to target. */
326
331
  declare function isEdgeDirected(graph: Graph, edge: GraphEdge): boolean;
327
332
  //#endregion
333
+ //#region src/validate.d.ts
334
+ /**
335
+ * A structural problem found in a graph by {@link getGraphIssues}.
336
+ */
337
+ interface GraphIssue {
338
+ /** Stable machine-readable code, e.g. `'duplicate-node-id'`. */
339
+ code: string;
340
+ /** What is wrong, which entity is affected, and how to fix it. */
341
+ message: string;
342
+ /** Location of the offending value, e.g. `['nodes', 0, 'id']`. */
343
+ path?: (string | number)[];
344
+ }
345
+ /**
346
+ * Validates the structural invariants of a graph and returns the issues
347
+ * found, or `[]` when the graph is valid. Pure — never throws, never mutates.
348
+ *
349
+ * This is the recommended gate for untrusted or imported graphs (e.g. parsed
350
+ * from a file or received over the wire) before handing them to queries and
351
+ * algorithms: the mutation APIs (`addNode`, `addEdge`, `updateNode`, …)
352
+ * validate incrementally, but `createGraph` does **not** — it accepts
353
+ * dangling `parentId`/edge references and even `parentId` cycles as-is.
354
+ *
355
+ * For Zod-based shape validation of arbitrary unknown values, see
356
+ * `validateGraph` in `@statelyai/graph/schemas` (which reuses these checks).
357
+ *
358
+ * Issue codes: `duplicate-node-id`, `duplicate-edge-id`,
359
+ * `missing-initial-node`, `missing-parent`, `missing-node-initial`,
360
+ * `duplicate-port-name`, `parent-cycle`, `dangling-edge-endpoint`,
361
+ * `missing-source-port`, `missing-target-port`.
362
+ *
363
+ * @example
364
+ * ```ts
365
+ * const graph = createGraph({
366
+ * nodes: [{ id: 'a', parentId: 'ghost' }],
367
+ * edges: [{ id: 'e1', sourceId: 'a', targetId: 'b' }],
368
+ * });
369
+ * getGraphIssues(graph);
370
+ * // => [
371
+ * // { code: 'missing-parent', message: '...', path: ['nodes', 0, 'parentId'] },
372
+ * // { code: 'dangling-edge-endpoint', message: '...', path: ['edges', 0, 'targetId'] },
373
+ * // ]
374
+ * ```
375
+ */
376
+ declare function getGraphIssues(graph: Graph): GraphIssue[];
377
+ //#endregion
328
378
  //#region src/indexing.d.ts
329
379
  /**
330
- * Clear the cached index. Call this if you mutate graph.nodes/edges directly.
380
+ * Clear the cached index. Call this if you mutate fields of existing
381
+ * nodes/edges in place (e.g. `edge.targetId = 'a'`) — such mutations are not
382
+ * auto-detected. Array replacement and length changes are auto-detected.
331
383
  *
332
384
  * @example
333
385
  * ```ts
334
386
  * import { createGraph, invalidateIndex, getIndex } from '@statelyai/graph';
335
387
  *
336
- * const graph = createGraph({ nodes: [{ id: 'a' }], edges: [] });
337
- * // manually mutate nodes array
338
- * graph.nodes.push({ type: 'node', id: 'b', parentId: null, initialNodeId: null, label: '', data: undefined });
388
+ * const graph = createGraph({
389
+ * nodes: [{ id: 'a' }, { id: 'b' }],
390
+ * edges: [{ id: 'e1', sourceId: 'a', targetId: 'b' }],
391
+ * });
392
+ * graph.edges[0].targetId = 'a'; // in-place field mutation
339
393
  * invalidateIndex(graph); // forces rebuild on next getIndex()
340
394
  * ```
341
395
  */
@@ -441,7 +495,8 @@ declare function isEmptyDiff(diff: GraphDiff): boolean;
441
495
  declare function invertDiff<N, E>(diff: GraphDiff<N, E>): GraphDiff<N, E>;
442
496
  /**
443
497
  * Compute an ordered patch list from graph `a` to graph `b`.
444
- * Order: delete edges delete nodes → add nodes → add edges → update nodes update edges.
498
+ * Order (see {@link toPatches}): add nodes → update edges → delete edges
499
+ * delete nodes → add edges → update nodes.
445
500
  *
446
501
  * @example
447
502
  * ```ts
@@ -587,7 +642,8 @@ declare function reverseGraph<N, E, G>(graph: Graph<N, E, G>, filterEdge?: (edge
587
642
  //#endregion
588
643
  //#region src/walks.d.ts
589
644
  /**
590
- * Random walk. At each node, picks a uniformly random outgoing edge.
645
+ * Random walk. At each node, picks a uniformly random traversable edge
646
+ * (outgoing edges, plus non-directed edges both ways).
591
647
  * Yields steps indefinitely (may revisit nodes) until a sink node is reached.
592
648
  */
593
649
  declare function genRandomWalk<N, E>(graph: Graph<N, E>, options?: WalkOptions<E>): Generator<GraphStep<N, E>>;
@@ -597,13 +653,16 @@ declare function genRandomWalk<N, E>(graph: Graph<N, E>, options?: WalkOptions<E
597
653
  declare function genWeightedRandomWalk<N, E>(graph: Graph<N, E>, options?: WeightedWalkOptions<E>): Generator<GraphStep<N, E>>;
598
654
  /**
599
655
  * Quick random walk targeting unvisited edges.
600
- * If unvisited outgoing edges exist, picks one randomly.
601
- * Otherwise, finds shortest path to a node with unvisited outgoing edges.
656
+ * If unvisited traversable edges exist at the current node, picks one randomly.
657
+ * Otherwise, walks the fewest-hop path (BFS, honoring `filter` and edge modes)
658
+ * to the nearest unvisited edge. Ends when no unvisited edge is reachable.
602
659
  */
603
660
  declare function genQuickRandomWalk<N, E>(graph: Graph<N, E>, options?: WalkOptions<E>): Generator<GraphStep<N, E>>;
604
661
  /**
605
662
  * Walk a predefined sequence of edge IDs.
606
663
  * Validates each edge exists and connects from the current position.
664
+ * Edges whose effective mode is not `'directed'` may be traversed
665
+ * target → source as well.
607
666
  */
608
667
  declare function genPredefinedWalk<N, E>(graph: Graph<N, E>, edgeIds: string[], options?: Pick<WalkOptions<E>, 'from'>): Generator<GraphStep<N, E>>;
609
668
  /**
@@ -635,4 +694,4 @@ declare function getCoverage<N, E>(graph: Graph<N, E>, steps: GraphStep<N, E>[],
635
694
  from?: string;
636
695
  }): CoverageStats;
637
696
  //#endregion
638
- export { addEntities as A, deleteNode as B, isLayoutEqual as C, isEdgeDirected as D, getEdgeMode as E, createGraphNode as F, updateEdge as G, getNode as H, createGraphPort as I, updateEntities as K, createVisualGraph as L, createGraph as M, createGraphEdge as N, GraphInstance as O, createGraphFromTransition as P, deleteEdge as R, areEntitiesEqual as S, invalidateIndex as T, hasEdge as U, getEdge as V, hasNode as W, invertDiff as _, getCoverage as a, toPatches as b, takeUntilEdgeCoverage as c, flatten as d, getSubgraph as f, getPatches as g, getDiff as h, genWeightedRandomWalk as i, addNode as j, addEdge as k, takeUntilNode as l, applyPatches as m, genQuickRandomWalk as n, takeSteps as o, reverseGraph as p, updateNode as q, genRandomWalk as r, takeUntilEdge as s, genPredefinedWalk as t, takeUntilNodeCoverage as u, isEmptyDiff as v, isNonLayoutEqual as w, LAYOUT_KEYS as x, toDiff as y, deleteEntities as z };
697
+ export { GraphInstance as A, deleteEdge as B, isLayoutEqual as C, getGraphIssues as D, GraphIssue as E, createGraphEdge as F, hasEdge as G, deleteNode as H, createGraphFromTransition as I, updateEntities as J, hasNode as K, createGraphNode as L, addEntities as M, addNode as N, getEdgeMode as O, createGraph as P, createGraphPort as R, areEntitiesEqual as S, invalidateIndex as T, getEdge as U, deleteEntities as V, getNode as W, updateNode as Y, invertDiff as _, getCoverage as a, toPatches as b, takeUntilEdgeCoverage as c, flatten as d, getSubgraph as f, getPatches as g, getDiff as h, genWeightedRandomWalk as i, addEdge as j, isEdgeDirected as k, takeUntilNode as l, applyPatches as m, genQuickRandomWalk as n, takeSteps as o, reverseGraph as p, updateEdge as q, genRandomWalk as r, takeUntilEdge as s, genPredefinedWalk as t, takeUntilNodeCoverage as u, isEmptyDiff as v, isNonLayoutEqual as w, LAYOUT_KEYS as x, toDiff as y, createVisualGraph as z };
package/dist/index.d.mts CHANGED
@@ -1,6 +1,6 @@
1
- import { A as TraversalOptions, B as WeightedWalkOptions, C as NodeChange, D as PortDirection, E as PortConfig, F as VisualGraphFormatConverter, I as VisualNode, L as VisualPort, M as VisualGraph, N as VisualGraphConfig, O as SinglePathOptions, P as VisualGraphEntity, R as WalkContext, S as MSTOptions, T as PathOptions, _ as GraphNode, a as EdgeChange, b as GraphPort, c as EntitiesUpdate, d as GraphConfig, f as GraphDiff, g as GraphMode, h as GraphFormatConverter, i as DeleteNodeOptions, j as VisualEdge, k as TransitionOptions, l as EntityRect, m as GraphEntity, n as AllPairsShortestPathsOptions, o as EdgeConfig, p as GraphEdge, r as CoverageStats, s as EntitiesConfig, t as AStarOptions, u as Graph, v as GraphPatch, w as NodeConfig, x as GraphStep, y as GraphPath, z as WalkOptions } from "./types-3-FS9NV2.mjs";
2
- import { A as genCycles, B as getStronglyConnectedComponents, C as getMinimumSpanningTree, D as getPostorders, E as getPostorder, F as getCycles, G as getTopologicalSort, H as bfs, I as getShortestPath, J as isConnected, K as hasPath, L as getShortestPaths, M as genSimplePaths, N as getAStarPath, O as getPreorder, P as getAllPairsShortestPaths, R as getSimplePath, S as getPageRank, T as genPreorders, U as dfs, V as joinPaths, W as getConnectedComponents, Y as isTree, _ as getDegreeCentrality, a as getBridges, b as getInDegreeCentrality, c as genGirvanNewmanCommunities, d as getLabelPropagationCommunities, f as getModularity, g as getClosenessCentrality, h as getBetweennessCentrality, i as getBiconnectedComponents, j as genShortestPaths, k as getPreorders, l as getGirvanNewmanCommunities, m as IterativeCentralityOptions, n as isIsomorphic, o as GirvanNewmanOptions, p as HITSResult, q as isAcyclic, r as getArticulationPoints, s as LabelPropagationOptions, t as IsomorphismOptions, u as getGreedyModularityCommunities, v as getEigenvectorCentrality, w as genPostorders, x as getOutDegreeCentrality, y as getHITS, z as getSimplePaths } from "./algorithms-fTqmvhzP.mjs";
3
- import { n as createFormatConverter } from "./index-D9Kj6Fe3.mjs";
4
- import { A as addEntities, B as deleteNode, C as isLayoutEqual, D as isEdgeDirected, E as getEdgeMode, F as createGraphNode, G as updateEdge, H as getNode, I as createGraphPort, K as updateEntities, L as createVisualGraph, M as createGraph, N as createGraphEdge, O as GraphInstance, P as createGraphFromTransition, R as deleteEdge, S as areEntitiesEqual, T as invalidateIndex, U as hasEdge, V as getEdge, W as hasNode, _ as invertDiff, a as getCoverage, b as toPatches, c as takeUntilEdgeCoverage, d as flatten, f as getSubgraph, g as getPatches, h as getDiff, i as genWeightedRandomWalk, j as addNode, k as addEdge, l as takeUntilNode, m as applyPatches, n as genQuickRandomWalk, o as takeSteps, p as reverseGraph, q as updateNode, r as genRandomWalk, s as takeUntilEdge, t as genPredefinedWalk, u as takeUntilNodeCoverage, v as isEmptyDiff, w as isNonLayoutEqual, x as LAYOUT_KEYS, y as toDiff, z as deleteEntities } from "./index-CHoriXZD.mjs";
5
- import { C as getSinks, D as isLeaf, E as isCompound, S as getSiblings, T as getSuccessors, _ as getPorts, a as getDescendants, b as getRelativeDistanceMap, c as getEdgesOf, d as getLCA, f as getNeighbors, g as getPort, h as getParent, i as getDepth, l as getInDegree, m as getOutEdges, n as getChildren, o as getEdgesBetween, p as getOutDegree, r as getDegree, s as getEdgesByPort, t as getAncestors, u as getInEdges, v as getPredecessors, w as getSources, x as getRoots, y as getRelativeDistance } from "./queries-BlkA1HAN.mjs";
6
- export { AStarOptions, AllPairsShortestPathsOptions, CoverageStats, DeleteNodeOptions, EdgeChange, EdgeConfig, EntitiesConfig, EntitiesUpdate, EntityRect, GirvanNewmanOptions, Graph, GraphConfig, GraphDiff, GraphEdge, GraphEntity, GraphFormatConverter, GraphInstance, GraphMode, GraphNode, GraphPatch, GraphPath, GraphPort, GraphStep, HITSResult, IsomorphismOptions, IterativeCentralityOptions, LAYOUT_KEYS, LabelPropagationOptions, MSTOptions, NodeChange, NodeConfig, PathOptions, PortConfig, PortDirection, SinglePathOptions, TransitionOptions, TraversalOptions, VisualEdge, VisualGraph, VisualGraphConfig, VisualGraphEntity, VisualGraphFormatConverter, VisualNode, VisualPort, WalkContext, WalkOptions, WeightedWalkOptions, addEdge, addEntities, addNode, applyPatches, areEntitiesEqual, bfs, createFormatConverter, createGraph, createGraphEdge, createGraphFromTransition, createGraphNode, createGraphPort, createVisualGraph, deleteEdge, deleteEntities, deleteNode, dfs, flatten, genCycles, genGirvanNewmanCommunities, genPostorders, genPredefinedWalk, genPreorders, genQuickRandomWalk, genRandomWalk, genShortestPaths, genSimplePaths, genWeightedRandomWalk, getAStarPath, getAllPairsShortestPaths, getAncestors, getArticulationPoints, getBetweennessCentrality, getBiconnectedComponents, getBridges, getChildren, getClosenessCentrality, getConnectedComponents, getCoverage, getCycles, getDegree, getDegreeCentrality, getDepth, getDescendants, getDiff, getEdge, getEdgeMode, getEdgesBetween, getEdgesByPort, getEdgesOf, getEigenvectorCentrality, getGirvanNewmanCommunities, getGreedyModularityCommunities, getHITS, getInDegree, getInDegreeCentrality, getInEdges, getLCA, getLabelPropagationCommunities, getMinimumSpanningTree, getModularity, getNeighbors, getNode, getOutDegree, getOutDegreeCentrality, getOutEdges, getPageRank, getParent, getPatches, getPort, getPorts, getPostorder, getPostorders, getPredecessors, getPreorder, getPreorders, getRelativeDistance, getRelativeDistanceMap, getRoots, getShortestPath, getShortestPaths, getSiblings, getSimplePath, getSimplePaths, getSinks, getSources, getStronglyConnectedComponents, getSubgraph, getSuccessors, getTopologicalSort, hasEdge, hasNode, hasPath, invalidateIndex, invertDiff, isAcyclic, isCompound, isConnected, isEdgeDirected, isEmptyDiff, isIsomorphic, isLayoutEqual, isLeaf, isNonLayoutEqual, isTree, joinPaths, reverseGraph, takeSteps, takeUntilEdge, takeUntilEdgeCoverage, takeUntilNode, takeUntilNodeCoverage, toDiff, toPatches, updateEdge, updateEntities, updateNode };
1
+ import { A as SinglePathOptions, B as WalkContext, C as MSTOptions, D as PathOptions, E as NodeUpdate, F as VisualGraphConfig, H as WeightedWalkOptions, I as VisualGraphEntity, L as VisualGraphFormatConverter, M as TraversalOptions, N as VisualEdge, O as PortConfig, P as VisualGraph, R as VisualNode, S as GraphStep, T as NodeConfig, V as WalkOptions, _ as GraphMode, a as EdgeChange, b as GraphPath, c as EntitiesConfig, d as Graph, f as GraphConfig, g as GraphFormatConverter, h as GraphEntity, i as DeleteNodeOptions, j as TransitionOptions, k as PortDirection, l as EntitiesUpdate, m as GraphEdge, n as AllPairsShortestPathsOptions, o as EdgeConfig, p as GraphDiff, r as CoverageStats, s as EdgeUpdate, t as AStarOptions, u as EntityRect, v as GraphNode, w as NodeChange, x as GraphPort, y as GraphPatch, z as VisualPort } from "./types-DNYdIU21.mjs";
2
+ import { $ as getTopologicalSort, A as getPageRank, B as genSimplePaths, C as getBetweennessCentrality, D as getHITS, E as getEigenvectorCentrality, F as getPostorders, G as getShortestPaths, H as getAllPairsShortestPaths, I as getPreorder, J as getStronglyConnectedComponents, K as getSimplePath, L as getPreorders, M as genPostorders, N as genPreorders, O as getInDegreeCentrality, P as getPostorder, Q as getConnectedComponents, R as genCycles, S as IterativeCentralityOptions, T as getDegreeCentrality, U as getCycles, V as getAStarPath, W as getShortestPath, X as bfs, Y as joinPaths, Z as dfs, _ as getGirvanNewmanCommunities, a as MaxFlowResult, b as getModularity, c as getLouvainCommunities, d as getArticulationPoints, et as hasPath, f as getBiconnectedComponents, g as genGirvanNewmanCommunities, h as LabelPropagationOptions, i as MaxFlowOptions, j as getMinimumSpanningTree, k as getOutDegreeCentrality, l as IsomorphismOptions, m as GirvanNewmanOptions, n as DominatorTreeOptions, nt as isConnected, o as getMaxFlow, p as getBridges, q as getSimplePaths, r as getDominatorTree, rt as isTree, s as LouvainOptions, t as getTransitiveReduction, tt as isAcyclic, u as isIsomorphic, v as getGreedyModularityCommunities, w as getClosenessCentrality, x as HITSResult, y as getLabelPropagationCommunities, z as genShortestPaths } from "./algorithms-CsGNehct.mjs";
3
+ import { n as createFormatConverter } from "./index-D51lJnt2.mjs";
4
+ import { A as GraphInstance, B as deleteEdge, C as isLayoutEqual, D as getGraphIssues, E as GraphIssue, F as createGraphEdge, G as hasEdge, H as deleteNode, I as createGraphFromTransition, J as updateEntities, K as hasNode, L as createGraphNode, M as addEntities, N as addNode, O as getEdgeMode, P as createGraph, R as createGraphPort, S as areEntitiesEqual, T as invalidateIndex, U as getEdge, V as deleteEntities, W as getNode, Y as updateNode, _ as invertDiff, a as getCoverage, b as toPatches, c as takeUntilEdgeCoverage, d as flatten, f as getSubgraph, g as getPatches, h as getDiff, i as genWeightedRandomWalk, j as addEdge, k as isEdgeDirected, l as takeUntilNode, m as applyPatches, n as genQuickRandomWalk, o as takeSteps, p as reverseGraph, q as updateEdge, r as genRandomWalk, s as takeUntilEdge, t as genPredefinedWalk, u as takeUntilNodeCoverage, v as isEmptyDiff, w as isNonLayoutEqual, x as LAYOUT_KEYS, y as toDiff, z as createVisualGraph } from "./index-DWmo1mIp.mjs";
5
+ import { C as getSinks, D as isLeaf, E as isCompound, S as getSiblings, T as getSuccessors, _ as getPorts, a as getDescendants, b as getRelativeDistanceMap, c as getEdgesOf, d as getLCA, f as getNeighbors, g as getPort, h as getParent, i as getDepth, l as getInDegree, m as getOutEdges, n as getChildren, o as getEdgesBetween, p as getOutDegree, r as getDegree, s as getEdgesByPort, t as getAncestors, u as getInEdges, v as getPredecessors, w as getSources, x as getRoots, y as getRelativeDistance } from "./queries-BfXeTXRf.mjs";
6
+ export { AStarOptions, AllPairsShortestPathsOptions, CoverageStats, DeleteNodeOptions, DominatorTreeOptions, EdgeChange, EdgeConfig, EdgeUpdate, EntitiesConfig, EntitiesUpdate, EntityRect, GirvanNewmanOptions, Graph, GraphConfig, GraphDiff, GraphEdge, GraphEntity, GraphFormatConverter, GraphInstance, GraphIssue, GraphMode, GraphNode, GraphPatch, GraphPath, GraphPort, GraphStep, HITSResult, IsomorphismOptions, IterativeCentralityOptions, LAYOUT_KEYS, LabelPropagationOptions, LouvainOptions, MSTOptions, MaxFlowOptions, MaxFlowResult, NodeChange, NodeConfig, NodeUpdate, PathOptions, PortConfig, PortDirection, SinglePathOptions, TransitionOptions, TraversalOptions, VisualEdge, VisualGraph, VisualGraphConfig, VisualGraphEntity, VisualGraphFormatConverter, VisualNode, VisualPort, WalkContext, WalkOptions, WeightedWalkOptions, addEdge, addEntities, addNode, applyPatches, areEntitiesEqual, bfs, createFormatConverter, createGraph, createGraphEdge, createGraphFromTransition, createGraphNode, createGraphPort, createVisualGraph, deleteEdge, deleteEntities, deleteNode, dfs, flatten, genCycles, genGirvanNewmanCommunities, genPostorders, genPredefinedWalk, genPreorders, genQuickRandomWalk, genRandomWalk, genShortestPaths, genSimplePaths, genWeightedRandomWalk, getAStarPath, getAllPairsShortestPaths, getAncestors, getArticulationPoints, getBetweennessCentrality, getBiconnectedComponents, getBridges, getChildren, getClosenessCentrality, getConnectedComponents, getCoverage, getCycles, getDegree, getDegreeCentrality, getDepth, getDescendants, getDiff, getDominatorTree, getEdge, getEdgeMode, getEdgesBetween, getEdgesByPort, getEdgesOf, getEigenvectorCentrality, getGirvanNewmanCommunities, getGraphIssues, getGreedyModularityCommunities, getHITS, getInDegree, getInDegreeCentrality, getInEdges, getLCA, getLabelPropagationCommunities, getLouvainCommunities, getMaxFlow, getMinimumSpanningTree, getModularity, getNeighbors, getNode, getOutDegree, getOutDegreeCentrality, getOutEdges, getPageRank, getParent, getPatches, getPort, getPorts, getPostorder, getPostorders, getPredecessors, getPreorder, getPreorders, getRelativeDistance, getRelativeDistanceMap, getRoots, getShortestPath, getShortestPaths, getSiblings, getSimplePath, getSimplePaths, getSinks, getSources, getStronglyConnectedComponents, getSubgraph, getSuccessors, getTopologicalSort, getTransitiveReduction, hasEdge, hasNode, hasPath, invalidateIndex, invertDiff, isAcyclic, isCompound, isConnected, isEdgeDirected, isEmptyDiff, isIsomorphic, isLayoutEqual, isLeaf, isNonLayoutEqual, isTree, joinPaths, reverseGraph, takeSteps, takeUntilEdge, takeUntilEdgeCoverage, takeUntilNode, takeUntilNodeCoverage, toDiff, toPatches, updateEdge, updateEntities, updateNode };