diff --git a/src/routes/networks/NetworkGraphViewer.svelte b/src/routes/networks/NetworkGraphViewer.svelte new file mode 100644 index 0000000..142b9ab --- /dev/null +++ b/src/routes/networks/NetworkGraphViewer.svelte @@ -0,0 +1,832 @@ + + +
+ +
+
+ +
+ +
+ + {#if showLayoutMenu} + +
(showLayoutMenu = false)} + > + + + + + +
+ {/if} +
+
+ + +
+ + + + +
+
+ +
+ +
+
+ + +
+
+
+
+ Service +
+
+
+ Network +
+
+
+ + {#if selectedNode || selectedEdge} +
+ + {#if selectedNode} + {@const NodeIcon = getNodeIcon(selectedNode.type)} +
+
+
+
+ +
+
+

+ {selectedNode.label} +

+

+ {selectedNode.type} +

+
+
+
+ +
+
+
+ {:else if selectedEdge} + +
+
+
+

+ {selectedEdge.type.replace("-", " ")} +

+

+ {selectedEdge.source.replace(/^(service|network)-/, "")} + → + {selectedEdge.target.replace(/^(service|network)-/, "")} +

+
+
+ +
+
+
+ {/if} + +
+ {#if selectedNode} + {#if selectedNode.type === "service"} +
+ +
+
+ Container Id +
+ +
+
+ {:else if selectedNode.type === "network"} +
+ +
+ Driver + +
+ + {#if selectedNode.config.driver === "bridge"} + + {:else if selectedNode.config.driver === "host"} + + {:else if selectedNode.config.driver === "overlay"} + + {:else if selectedNode.config.driver === "macvlan"} + + {:else if selectedNode.config.driver === "ipvlan"} + + {:else} + + {/if} + {selectedNode.config.driver} + +
+
+ + +
+ IPAM configuration +
+
+ Subnet + +
+
+ Gateway + +
+
+
+ + +
+ + + +
+
+ {/if} + {:else if selectedEdge} + {#if selectedEdge.type === "network-connection"} +

Service connected to this network.

+ {/if} + {/if} +
+
+ {/if} +
+
+