@xyo-network/react-node-renderer 2.71.3 → 2.71.5

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 (64) hide show
  1. package/dist/browser/Cytoscape/CytoscapeElements.d.cts +9 -1
  2. package/dist/browser/Cytoscape/CytoscapeElements.d.cts.map +1 -1
  3. package/dist/browser/Cytoscape/CytoscapeElements.d.mts +9 -1
  4. package/dist/browser/Cytoscape/CytoscapeElements.d.mts.map +1 -1
  5. package/dist/browser/Cytoscape/CytoscapeElements.d.ts +9 -1
  6. package/dist/browser/Cytoscape/CytoscapeElements.d.ts.map +1 -1
  7. package/dist/browser/components/cytoscape-extensions/WithExtensions.d.cts.map +1 -1
  8. package/dist/browser/components/cytoscape-extensions/WithExtensions.d.mts.map +1 -1
  9. package/dist/browser/components/cytoscape-extensions/WithExtensions.d.ts.map +1 -1
  10. package/dist/browser/components/lib/RelationalGraphProps.d.cts +1 -0
  11. package/dist/browser/components/lib/RelationalGraphProps.d.cts.map +1 -1
  12. package/dist/browser/components/lib/RelationalGraphProps.d.mts +1 -0
  13. package/dist/browser/components/lib/RelationalGraphProps.d.mts.map +1 -1
  14. package/dist/browser/components/lib/RelationalGraphProps.d.ts +1 -0
  15. package/dist/browser/components/lib/RelationalGraphProps.d.ts.map +1 -1
  16. package/dist/browser/components/relational/graph/Graph.d.cts.map +1 -1
  17. package/dist/browser/components/relational/graph/Graph.d.mts.map +1 -1
  18. package/dist/browser/components/relational/graph/Graph.d.ts.map +1 -1
  19. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.d.cts +1 -0
  20. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.d.cts.map +1 -1
  21. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.d.mts +1 -0
  22. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.d.mts.map +1 -1
  23. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.d.ts +1 -0
  24. package/dist/browser/components/relational/graph/ProvidedNodeRenderer.d.ts.map +1 -1
  25. package/dist/browser/index.cjs +44 -40
  26. package/dist/browser/index.cjs.map +1 -1
  27. package/dist/browser/index.js +44 -40
  28. package/dist/browser/index.js.map +1 -1
  29. package/dist/node/Cytoscape/CytoscapeElements.d.cts +9 -1
  30. package/dist/node/Cytoscape/CytoscapeElements.d.cts.map +1 -1
  31. package/dist/node/Cytoscape/CytoscapeElements.d.mts +9 -1
  32. package/dist/node/Cytoscape/CytoscapeElements.d.mts.map +1 -1
  33. package/dist/node/Cytoscape/CytoscapeElements.d.ts +9 -1
  34. package/dist/node/Cytoscape/CytoscapeElements.d.ts.map +1 -1
  35. package/dist/node/components/cytoscape-extensions/WithExtensions.d.cts.map +1 -1
  36. package/dist/node/components/cytoscape-extensions/WithExtensions.d.mts.map +1 -1
  37. package/dist/node/components/cytoscape-extensions/WithExtensions.d.ts.map +1 -1
  38. package/dist/node/components/lib/RelationalGraphProps.d.cts +1 -0
  39. package/dist/node/components/lib/RelationalGraphProps.d.cts.map +1 -1
  40. package/dist/node/components/lib/RelationalGraphProps.d.mts +1 -0
  41. package/dist/node/components/lib/RelationalGraphProps.d.mts.map +1 -1
  42. package/dist/node/components/lib/RelationalGraphProps.d.ts +1 -0
  43. package/dist/node/components/lib/RelationalGraphProps.d.ts.map +1 -1
  44. package/dist/node/components/relational/graph/Graph.d.cts.map +1 -1
  45. package/dist/node/components/relational/graph/Graph.d.mts.map +1 -1
  46. package/dist/node/components/relational/graph/Graph.d.ts.map +1 -1
  47. package/dist/node/components/relational/graph/ProvidedNodeRenderer.d.cts +1 -0
  48. package/dist/node/components/relational/graph/ProvidedNodeRenderer.d.cts.map +1 -1
  49. package/dist/node/components/relational/graph/ProvidedNodeRenderer.d.mts +1 -0
  50. package/dist/node/components/relational/graph/ProvidedNodeRenderer.d.mts.map +1 -1
  51. package/dist/node/components/relational/graph/ProvidedNodeRenderer.d.ts +1 -0
  52. package/dist/node/components/relational/graph/ProvidedNodeRenderer.d.ts.map +1 -1
  53. package/dist/node/index.cjs +44 -40
  54. package/dist/node/index.cjs.map +1 -1
  55. package/dist/node/index.js +44 -40
  56. package/dist/node/index.js.map +1 -1
  57. package/package.json +26 -25
  58. package/src/Cytoscape/CytoscapeElements.ts +36 -32
  59. package/src/components/cytoscape-extensions/WithExtensions.tsx +2 -0
  60. package/src/components/lib/RelationalGraphProps.ts +1 -0
  61. package/src/components/relational/graph/Graph.tsx +12 -2
  62. package/src/components/relational/graph/GraphSpread.stories.tsx +173 -0
  63. package/src/components/relational/graph/ProvidedNodeRenderer.tsx +1 -0
  64. package/src/types/global.d.ts +5 -0
@@ -1,5 +1,9 @@
1
1
  import { ModuleInstance } from '@xyo-network/module-model';
2
2
  import { ElementDefinition } from 'cytoscape';
3
+ interface ModuleInfo {
4
+ children: ModuleInfo[];
5
+ module: ModuleInstance;
6
+ }
3
7
  export declare const CytoscapeElements: {
4
8
  MaxNameLength: number;
5
9
  buildEdge(rootNode: ElementDefinition, newNode: ElementDefinition): {
@@ -10,11 +14,15 @@ export declare const CytoscapeElements: {
10
14
  };
11
15
  };
12
16
  buildElements(module: ModuleInstance): Promise<ElementDefinition[]>;
17
+ buildElementsFromInfo(info: ModuleInfo, root?: ElementDefinition, properties?: {
18
+ [key: string]: unknown;
19
+ }, classes?: string[]): Promise<ElementDefinition[]>;
13
20
  buildNode(module: ModuleInstance, properties?: {
14
21
  [key: string]: unknown;
15
22
  } | undefined, classes?: string[]): ElementDefinition;
16
23
  buildRootNode: (module: ModuleInstance) => ElementDefinition;
17
24
  normalizeName(name?: string): string | undefined;
18
- recurseNodes(module: ModuleInstance, maxTraversals?: number): Promise<ModuleInstance[]>;
25
+ recurseNodes(root: ModuleInstance, maxDepth?: number): Promise<ModuleInfo>;
19
26
  };
27
+ export {};
20
28
  //# sourceMappingURL=CytoscapeElements.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CytoscapeElements.d.ts","sourceRoot":"","sources":["../../../src/Cytoscape/CytoscapeElements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAI7C,eAAO,MAAM,iBAAiB;;wBAGR,iBAAiB,WAAW,iBAAiB;;;;;;;0BAUrC,cAAc,GAAG,QAAQ,iBAAiB,EAAE,CAAC;sBAsBvD,cAAc;;6BAAqD,MAAM,EAAE,GAAG,iBAAiB;4BAczF,cAAc,KAAG,iBAAiB;yBAIrC,MAAM;yBAMA,cAAc,2BAAsB,QAAQ,cAAc,EAAE,CAAC;CAyBzF,CAAA"}
1
+ {"version":3,"file":"CytoscapeElements.d.ts","sourceRoot":"","sources":["../../../src/Cytoscape/CytoscapeElements.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAI7C,UAAU,UAAU;IAClB,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,MAAM,EAAE,cAAc,CAAA;CACvB;AAED,eAAO,MAAM,iBAAiB;;wBAGR,iBAAiB,WAAW,iBAAiB;;;;;;;0BAUrC,cAAc,GAAG,QAAQ,iBAAiB,EAAE,CAAC;gCAQjE,UAAU,SACT,iBAAiB;;iBAEf,MAAM,EAAE,GAChB,QAAQ,iBAAiB,EAAE,CAAC;sBAeb,cAAc;;6BAAqD,MAAM,EAAE,GAAG,iBAAiB;4BAczF,cAAc,KAAG,iBAAiB;yBAIrC,MAAM;uBAMF,cAAc,sBAAkB,QAAQ,UAAU,CAAC;CAmB7E,CAAA"}
@@ -1,5 +1,9 @@
1
1
  import { ModuleInstance } from '@xyo-network/module-model';
2
2
  import { ElementDefinition } from 'cytoscape';
3
+ interface ModuleInfo {
4
+ children: ModuleInfo[];
5
+ module: ModuleInstance;
6
+ }
3
7
  export declare const CytoscapeElements: {
4
8
  MaxNameLength: number;
5
9
  buildEdge(rootNode: ElementDefinition, newNode: ElementDefinition): {
@@ -10,11 +14,15 @@ export declare const CytoscapeElements: {
10
14
  };
11
15
  };
12
16
  buildElements(module: ModuleInstance): Promise<ElementDefinition[]>;
17
+ buildElementsFromInfo(info: ModuleInfo, root?: ElementDefinition, properties?: {
18
+ [key: string]: unknown;
19
+ }, classes?: string[]): Promise<ElementDefinition[]>;
13
20
  buildNode(module: ModuleInstance, properties?: {
14
21
  [key: string]: unknown;
15
22
  } | undefined, classes?: string[]): ElementDefinition;
16
23
  buildRootNode: (module: ModuleInstance) => ElementDefinition;
17
24
  normalizeName(name?: string): string | undefined;
18
- recurseNodes(module: ModuleInstance, maxTraversals?: number): Promise<ModuleInstance[]>;
25
+ recurseNodes(root: ModuleInstance, maxDepth?: number): Promise<ModuleInfo>;
19
26
  };
27
+ export {};
20
28
  //# sourceMappingURL=CytoscapeElements.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CytoscapeElements.d.ts","sourceRoot":"","sources":["../../../src/Cytoscape/CytoscapeElements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAI7C,eAAO,MAAM,iBAAiB;;wBAGR,iBAAiB,WAAW,iBAAiB;;;;;;;0BAUrC,cAAc,GAAG,QAAQ,iBAAiB,EAAE,CAAC;sBAsBvD,cAAc;;6BAAqD,MAAM,EAAE,GAAG,iBAAiB;4BAczF,cAAc,KAAG,iBAAiB;yBAIrC,MAAM;yBAMA,cAAc,2BAAsB,QAAQ,cAAc,EAAE,CAAC;CAyBzF,CAAA"}
1
+ {"version":3,"file":"CytoscapeElements.d.ts","sourceRoot":"","sources":["../../../src/Cytoscape/CytoscapeElements.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAI7C,UAAU,UAAU;IAClB,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,MAAM,EAAE,cAAc,CAAA;CACvB;AAED,eAAO,MAAM,iBAAiB;;wBAGR,iBAAiB,WAAW,iBAAiB;;;;;;;0BAUrC,cAAc,GAAG,QAAQ,iBAAiB,EAAE,CAAC;gCAQjE,UAAU,SACT,iBAAiB;;iBAEf,MAAM,EAAE,GAChB,QAAQ,iBAAiB,EAAE,CAAC;sBAeb,cAAc;;6BAAqD,MAAM,EAAE,GAAG,iBAAiB;4BAczF,cAAc,KAAG,iBAAiB;yBAIrC,MAAM;uBAMF,cAAc,sBAAkB,QAAQ,UAAU,CAAC;CAmB7E,CAAA"}
@@ -1,5 +1,9 @@
1
1
  import { ModuleInstance } from '@xyo-network/module-model';
2
2
  import { ElementDefinition } from 'cytoscape';
3
+ interface ModuleInfo {
4
+ children: ModuleInfo[];
5
+ module: ModuleInstance;
6
+ }
3
7
  export declare const CytoscapeElements: {
4
8
  MaxNameLength: number;
5
9
  buildEdge(rootNode: ElementDefinition, newNode: ElementDefinition): {
@@ -10,11 +14,15 @@ export declare const CytoscapeElements: {
10
14
  };
11
15
  };
12
16
  buildElements(module: ModuleInstance): Promise<ElementDefinition[]>;
17
+ buildElementsFromInfo(info: ModuleInfo, root?: ElementDefinition, properties?: {
18
+ [key: string]: unknown;
19
+ }, classes?: string[]): Promise<ElementDefinition[]>;
13
20
  buildNode(module: ModuleInstance, properties?: {
14
21
  [key: string]: unknown;
15
22
  } | undefined, classes?: string[]): ElementDefinition;
16
23
  buildRootNode: (module: ModuleInstance) => ElementDefinition;
17
24
  normalizeName(name?: string): string | undefined;
18
- recurseNodes(module: ModuleInstance, maxTraversals?: number): Promise<ModuleInstance[]>;
25
+ recurseNodes(root: ModuleInstance, maxDepth?: number): Promise<ModuleInfo>;
19
26
  };
27
+ export {};
20
28
  //# sourceMappingURL=CytoscapeElements.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CytoscapeElements.d.ts","sourceRoot":"","sources":["../../../src/Cytoscape/CytoscapeElements.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAI7C,eAAO,MAAM,iBAAiB;;wBAGR,iBAAiB,WAAW,iBAAiB;;;;;;;0BAUrC,cAAc,GAAG,QAAQ,iBAAiB,EAAE,CAAC;sBAsBvD,cAAc;;6BAAqD,MAAM,EAAE,GAAG,iBAAiB;4BAczF,cAAc,KAAG,iBAAiB;yBAIrC,MAAM;yBAMA,cAAc,2BAAsB,QAAQ,cAAc,EAAE,CAAC;CAyBzF,CAAA"}
1
+ {"version":3,"file":"CytoscapeElements.d.ts","sourceRoot":"","sources":["../../../src/Cytoscape/CytoscapeElements.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AAI7C,UAAU,UAAU;IAClB,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,MAAM,EAAE,cAAc,CAAA;CACvB;AAED,eAAO,MAAM,iBAAiB;;wBAGR,iBAAiB,WAAW,iBAAiB;;;;;;;0BAUrC,cAAc,GAAG,QAAQ,iBAAiB,EAAE,CAAC;gCAQjE,UAAU,SACT,iBAAiB;;iBAEf,MAAM,EAAE,GAChB,QAAQ,iBAAiB,EAAE,CAAC;sBAeb,cAAc;;6BAAqD,MAAM,EAAE,GAAG,iBAAiB;4BAczF,cAAc,KAAG,iBAAiB;yBAIrC,MAAM;uBAMF,cAAc,sBAAkB,QAAQ,UAAU,CAAC;CAmB7E,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"WithExtensions.d.ts","sourceRoot":"","sources":["../../../../src/components/cytoscape-extensions/WithExtensions.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAuB,MAAM,OAAO,CAAA;AAE9D,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAQtD,CAAA"}
1
+ {"version":3,"file":"WithExtensions.d.ts","sourceRoot":"","sources":["../../../../src/components/cytoscape-extensions/WithExtensions.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAuB,MAAM,OAAO,CAAA;AAE9D,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAStD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"WithExtensions.d.ts","sourceRoot":"","sources":["../../../../src/components/cytoscape-extensions/WithExtensions.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAuB,MAAM,OAAO,CAAA;AAE9D,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAQtD,CAAA"}
1
+ {"version":3,"file":"WithExtensions.d.ts","sourceRoot":"","sources":["../../../../src/components/cytoscape-extensions/WithExtensions.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAuB,MAAM,OAAO,CAAA;AAE9D,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAStD,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"WithExtensions.d.ts","sourceRoot":"","sources":["../../../../src/components/cytoscape-extensions/WithExtensions.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAuB,MAAM,OAAO,CAAA;AAE9D,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAQtD,CAAA"}
1
+ {"version":3,"file":"WithExtensions.d.ts","sourceRoot":"","sources":["../../../../src/components/cytoscape-extensions/WithExtensions.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAuB,MAAM,OAAO,CAAA;AAE9D,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAStD,CAAA"}
@@ -6,5 +6,6 @@ export interface NodeRelationalGraphProps extends PropsWithChildren<FlexBoxProps
6
6
  detail?: ReactNode;
7
7
  options?: CytoscapeOptions;
8
8
  showDetails?: boolean;
9
+ spread?: boolean;
9
10
  }
10
11
  //# sourceMappingURL=RelationalGraphProps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RelationalGraphProps.d.ts","sourceRoot":"","sources":["../../../../src/components/lib/RelationalGraphProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB,CAAC,YAAY,CAAC;IAC/E,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB"}
1
+ {"version":3,"file":"RelationalGraphProps.d.ts","sourceRoot":"","sources":["../../../../src/components/lib/RelationalGraphProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB,CAAC,YAAY,CAAC;IAC/E,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB"}
@@ -6,5 +6,6 @@ export interface NodeRelationalGraphProps extends PropsWithChildren<FlexBoxProps
6
6
  detail?: ReactNode;
7
7
  options?: CytoscapeOptions;
8
8
  showDetails?: boolean;
9
+ spread?: boolean;
9
10
  }
10
11
  //# sourceMappingURL=RelationalGraphProps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RelationalGraphProps.d.ts","sourceRoot":"","sources":["../../../../src/components/lib/RelationalGraphProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB,CAAC,YAAY,CAAC;IAC/E,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB"}
1
+ {"version":3,"file":"RelationalGraphProps.d.ts","sourceRoot":"","sources":["../../../../src/components/lib/RelationalGraphProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB,CAAC,YAAY,CAAC;IAC/E,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB"}
@@ -6,5 +6,6 @@ export interface NodeRelationalGraphProps extends PropsWithChildren<FlexBoxProps
6
6
  detail?: ReactNode;
7
7
  options?: CytoscapeOptions;
8
8
  showDetails?: boolean;
9
+ spread?: boolean;
9
10
  }
10
11
  //# sourceMappingURL=RelationalGraphProps.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RelationalGraphProps.d.ts","sourceRoot":"","sources":["../../../../src/components/lib/RelationalGraphProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB,CAAC,YAAY,CAAC;IAC/E,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB"}
1
+ {"version":3,"file":"RelationalGraphProps.d.ts","sourceRoot":"","sources":["../../../../src/components/lib/RelationalGraphProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEpD,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB,CAAC,YAAY,CAAC;IAC/E,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,OAAO,CAAC,EAAE,gBAAgB,CAAA;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/Graph.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEpD,eAAO,MAAM,0BAA0B,qHAgEtC,CAAA;AAID,kBAAkB;AAClB,eAAO,MAAM,mBAAmB,qHAA6B,CAAA"}
1
+ {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/Graph.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEpD,eAAO,MAAM,0BAA0B,qHAyEtC,CAAA;AAID,kBAAkB;AAClB,eAAO,MAAM,mBAAmB,qHAA6B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/Graph.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEpD,eAAO,MAAM,0BAA0B,qHAgEtC,CAAA;AAID,kBAAkB;AAClB,eAAO,MAAM,mBAAmB,qHAA6B,CAAA"}
1
+ {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/Graph.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEpD,eAAO,MAAM,0BAA0B,qHAyEtC,CAAA;AAID,kBAAkB;AAClB,eAAO,MAAM,mBAAmB,qHAA6B,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/Graph.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEpD,eAAO,MAAM,0BAA0B,qHAgEtC,CAAA;AAID,kBAAkB;AAClB,eAAO,MAAM,mBAAmB,qHAA6B,CAAA"}
1
+ {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/Graph.tsx"],"names":[],"mappings":";AAQA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAEpD,eAAO,MAAM,0BAA0B,qHAyEtC,CAAA;AAID,kBAAkB;AAClB,eAAO,MAAM,mBAAmB,qHAA6B,CAAA"}
@@ -5,6 +5,7 @@ import { NodeRelationalGraphProps } from '../../lib';
5
5
  export interface ProvidedNodeRendererProps extends NodeRelationalGraphProps {
6
6
  account?: AccountInstance;
7
7
  node?: NodeInstance;
8
+ spread?: boolean;
8
9
  }
9
10
  export declare const ProvidedNodeRenderer: React.FC<ProvidedNodeRendererProps>;
10
11
  //# sourceMappingURL=ProvidedNodeRenderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProvidedNodeRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/ProvidedNodeRenderer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAItD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAGpD,MAAM,WAAW,yBAA0B,SAAQ,wBAAwB;IACzE,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB,IAAI,CAAC,EAAE,YAAY,CAAA;CACpB;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAMpE,CAAA"}
1
+ {"version":3,"file":"ProvidedNodeRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/ProvidedNodeRenderer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAItD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAGpD,MAAM,WAAW,yBAA0B,SAAQ,wBAAwB;IACzE,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAMpE,CAAA"}
@@ -5,6 +5,7 @@ import { NodeRelationalGraphProps } from '../../lib';
5
5
  export interface ProvidedNodeRendererProps extends NodeRelationalGraphProps {
6
6
  account?: AccountInstance;
7
7
  node?: NodeInstance;
8
+ spread?: boolean;
8
9
  }
9
10
  export declare const ProvidedNodeRenderer: React.FC<ProvidedNodeRendererProps>;
10
11
  //# sourceMappingURL=ProvidedNodeRenderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProvidedNodeRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/ProvidedNodeRenderer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAItD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAGpD,MAAM,WAAW,yBAA0B,SAAQ,wBAAwB;IACzE,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB,IAAI,CAAC,EAAE,YAAY,CAAA;CACpB;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAMpE,CAAA"}
1
+ {"version":3,"file":"ProvidedNodeRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/ProvidedNodeRenderer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAItD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAGpD,MAAM,WAAW,yBAA0B,SAAQ,wBAAwB;IACzE,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAMpE,CAAA"}
@@ -5,6 +5,7 @@ import { NodeRelationalGraphProps } from '../../lib';
5
5
  export interface ProvidedNodeRendererProps extends NodeRelationalGraphProps {
6
6
  account?: AccountInstance;
7
7
  node?: NodeInstance;
8
+ spread?: boolean;
8
9
  }
9
10
  export declare const ProvidedNodeRenderer: React.FC<ProvidedNodeRendererProps>;
10
11
  //# sourceMappingURL=ProvidedNodeRenderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProvidedNodeRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/ProvidedNodeRenderer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAItD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAGpD,MAAM,WAAW,yBAA0B,SAAQ,wBAAwB;IACzE,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB,IAAI,CAAC,EAAE,YAAY,CAAA;CACpB;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAMpE,CAAA"}
1
+ {"version":3,"file":"ProvidedNodeRenderer.d.ts","sourceRoot":"","sources":["../../../../../src/components/relational/graph/ProvidedNodeRenderer.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAItD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AAGpD,MAAM,WAAW,yBAA0B,SAAQ,wBAAwB;IACzE,OAAO,CAAC,EAAE,eAAe,CAAA;IACzB,IAAI,CAAC,EAAE,YAAY,CAAA;IACnB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAMpE,CAAA"}
@@ -103,11 +103,11 @@ var useCytoscapeInstance = (required = false) => (0, import_react_shared2.useCon
103
103
 
104
104
  // src/hooks/cytoscape/elements/useCytoscapeElements.ts
105
105
  var import_react_async_effect = require("@xylabs/react-async-effect");
106
- var import_node_model3 = require("@xyo-network/node-model");
106
+ var import_node_model2 = require("@xyo-network/node-model");
107
107
  var import_react2 = require("react");
108
108
 
109
109
  // src/Cytoscape/CytoscapeElements.ts
110
- var import_node_model2 = require("@xyo-network/node-model");
110
+ var import_exists = require("@xylabs/exists");
111
111
 
112
112
  // src/Cytoscape/lib/encodeSvg.ts
113
113
  var import_server = require("react-dom/server");
@@ -196,22 +196,21 @@ var CytoscapeElements = {
196
196
  };
197
197
  },
198
198
  async buildElements(module2) {
199
- const newRootNode = CytoscapeElements.buildRootNode(module2);
200
- const newElements = [newRootNode];
201
- try {
202
- const childElements = await CytoscapeElements.recurseNodes(module2);
203
- if (childElements)
204
- for (const module3 of childElements) {
205
- const newNode = CytoscapeElements.buildNode(module3);
206
- newElements.push(newNode);
207
- const newEdge = CytoscapeElements.buildEdge(newRootNode, newNode);
208
- newElements.push(newEdge);
209
- }
210
- return newElements;
211
- } catch (e) {
212
- console.error("error resolving modules", e);
213
- return [];
199
+ const info = await CytoscapeElements.recurseNodes(module2);
200
+ const newElements = await this.buildElementsFromInfo(info, void 0, void 0, ["activeNode"]);
201
+ return newElements;
202
+ },
203
+ async buildElementsFromInfo(info, root, properties = {}, classes = []) {
204
+ const newNode = CytoscapeElements.buildNode(info.module, properties, classes);
205
+ const newEdge = root ? CytoscapeElements.buildEdge(root, newNode) : void 0;
206
+ const newElements = [newNode];
207
+ if (newEdge) {
208
+ newElements.push(newEdge);
209
+ }
210
+ for (const childInfo of info.children) {
211
+ newElements.push(...await this.buildElementsFromInfo(childInfo, newNode));
214
212
  }
213
+ return newElements;
215
214
  },
216
215
  buildNode(module2, properties, classes) {
217
216
  const { address, id } = module2;
@@ -236,26 +235,19 @@ var CytoscapeElements = {
236
235
  return `${name.slice(0, 20)}...`;
237
236
  return name;
238
237
  },
239
- async recurseNodes(module2, maxTraversals = 1) {
240
- let localDepth = 0;
241
- const childModules = [];
242
- const traverse = async (nestedNode) => {
243
- if (localDepth < maxTraversals) {
244
- const modules = await nestedNode.resolve("*", { direction: "down", maxDepth: 2 });
245
- await Promise.all(
246
- modules.map(async (child) => {
247
- if (child !== nestedNode && (0, import_node_model2.isNodeInstance)(child)) {
248
- localDepth++;
249
- await traverse(child);
250
- } else if (child !== module2) {
251
- childModules.push(child);
252
- }
253
- })
254
- );
255
- }
256
- };
257
- await traverse(module2);
258
- return childModules;
238
+ async recurseNodes(root, maxDepth = 10) {
239
+ const info = { children: [], module: root };
240
+ if (maxDepth > 0) {
241
+ const children = await root.resolve("*", { direction: "down", maxDepth: 1 });
242
+ info.children = (await Promise.all(
243
+ children.map(async (child) => {
244
+ if (child.address !== root.address) {
245
+ return await this.recurseNodes(child, maxDepth - 1);
246
+ }
247
+ })
248
+ )).filter(import_exists.exists);
249
+ }
250
+ return info;
259
251
  }
260
252
  };
261
253
 
@@ -330,7 +322,7 @@ var useCytoscapeElements = (module2) => {
330
322
  (0, import_react2.useEffect)(() => {
331
323
  let attachedListener;
332
324
  let detachedListener;
333
- if (module2 && (0, import_node_model3.isNodeInstance)(module2)) {
325
+ if (module2 && (0, import_node_model2.isNodeInstance)(module2)) {
334
326
  attachedListener = module2.on("moduleAttached", async () => {
335
327
  const newElements = await CytoscapeElements.buildElements(module2) ?? [];
336
328
  setElements(newElements);
@@ -556,12 +548,14 @@ var useRelationalGraphOptions = (module2) => {
556
548
  // src/components/cytoscape-extensions/WithExtensions.tsx
557
549
  var import_cytoscape = require("cytoscape");
558
550
  var import_cytoscape_cola = __toESM(require("cytoscape-cola"), 1);
551
+ var import_cytoscape_fcose = __toESM(require("cytoscape-fcose"), 1);
559
552
  var import_react12 = require("react");
560
553
  var import_jsx_runtime4 = require("react/jsx-runtime");
561
554
  var WithExtensions = ({ children }) => {
562
555
  const [initialized, setInitialized] = (0, import_react12.useState)(false);
563
556
  (0, import_react12.useEffect)(() => {
564
557
  (0, import_cytoscape.use)(import_cytoscape_cola.default);
558
+ (0, import_cytoscape.use)(import_cytoscape_fcose.default);
565
559
  setInitialized(true);
566
560
  }, []);
567
561
  return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_jsx_runtime4.Fragment, { children: initialized ? children : void 0 });
@@ -572,27 +566,37 @@ var import_material3 = require("@mui/material");
572
566
  var import_react_flexbox = require("@xylabs/react-flexbox");
573
567
  var import_react_shared3 = require("@xyo-network/react-shared");
574
568
  var import_cytoscape2 = __toESM(require("cytoscape"), 1);
569
+ var import_cytoscape_fcose2 = __toESM(require("cytoscape-fcose"), 1);
575
570
  var import_react13 = require("react");
576
571
  var import_jsx_runtime5 = require("react/jsx-runtime");
577
572
  var NodeRelationalGraphFlexBox = (0, import_react13.forwardRef)(
578
- ({ actions, children, showDetails, detail, options, ...props }, ref) => {
573
+ ({ actions, children, showDetails, detail, spread, options, ...props }, ref) => {
579
574
  const theme = (0, import_material3.useTheme)();
580
575
  const [cy, setCy] = (0, import_react13.useState)();
581
576
  const { setCy: setCyContext } = useCytoscapeInstance();
582
577
  const sharedRef = (0, import_react_shared3.useShareForwardedRef)(ref);
583
578
  const handleReset = () => {
584
579
  cy?.reset();
580
+ if (spread) {
581
+ cy?.layout({ name: "fcose" }).run();
582
+ }
585
583
  cy?.fit(void 0, 20);
586
584
  };
587
585
  (0, import_react13.useEffect)(() => {
588
586
  if (sharedRef) {
587
+ if (spread) {
588
+ import_cytoscape2.default.use(import_cytoscape_fcose2.default);
589
+ }
589
590
  const newCy = (0, import_cytoscape2.default)({
590
591
  container: sharedRef.current,
591
592
  ...options
592
593
  });
594
+ if (spread) {
595
+ newCy.layout({ name: "fcose" }).run();
596
+ }
593
597
  setCy(newCy);
594
598
  }
595
- }, [options, sharedRef]);
599
+ }, [options, sharedRef, spread]);
596
600
  (0, import_react13.useEffect)(() => {
597
601
  setCyContext?.(cy);
598
602
  }, [cy, setCyContext]);