Canvas: Use GraphSchema to validate state

Change-Id: I342c8959c97f3486c4a7cb2aff92fb930a2b3146
diff --git a/apps/canvas/front/src/components/actions.tsx b/apps/canvas/front/src/components/actions.tsx
index 5ea2920..f283ec8 100644
--- a/apps/canvas/front/src/components/actions.tsx
+++ b/apps/canvas/front/src/components/actions.tsx
@@ -139,7 +139,10 @@
 			headers: {
 				"Content-Type": "application/json",
 			},
-			body: JSON.stringify(instance.toObject()),
+			body: JSON.stringify({
+				type: "graph",
+				graph: instance.toObject(),
+			}),
 		});
 		if (resp.ok) {
 			info("Save succeeded");
diff --git a/apps/canvas/front/src/lib/state.ts b/apps/canvas/front/src/lib/state.ts
index 0132721..5e9315b 100644
--- a/apps/canvas/front/src/lib/state.ts
+++ b/apps/canvas/front/src/lib/state.ts
@@ -539,13 +539,6 @@
 				attachedTo: ((sn as VolumeNode).data.attachedTo || []).concat(c.source),
 			});
 		}
-		if (c.targetHandle === "volume") {
-			if (tn.type === "postgresql" || tn.type === "mongodb") {
-				updateNodeData(c.target, {
-					volumeId: c.source,
-				});
-			}
-		}
 		if (c.targetHandle === "https") {
 			if ((sn.data.ports || []).length === 1) {
 				updateNodeData<"gateway-https">(c.target, {