diff --git a/apps/canvas/front/src/components/node-details.tsx b/apps/canvas/front/src/components/node-details.tsx
index d120c76..39ae059 100644
--- a/apps/canvas/front/src/components/node-details.tsx
+++ b/apps/canvas/front/src/components/node-details.tsx
@@ -7,34 +7,30 @@
 import { NodeGithubDetails } from "./node-github";
 import { NodeGatewayTCPDetails } from "./node-gateway-tcp";
 
-type NodeDetailsProps = AppNode & {
-	disabled?: boolean;
-};
-
-export function NodeDetails(props: NodeDetailsProps) {
+export function NodeDetails({ node, disabled }: { node: AppNode; disabled?: boolean }) {
 	return (
 		<div className="px-1 flex flex-col gap-2">
-			<NodeDetailsImpl {...props} />
+			<NodeDetailsImpl node={node} disabled={disabled} />
 		</div>
 	);
 }
 
-function NodeDetailsImpl(props: NodeDetailsProps) {
-	switch (props.type) {
+function NodeDetailsImpl({ node, disabled }: { node: AppNode; disabled?: boolean }) {
+	switch (node.type) {
 		case "app":
-			return <NodeAppDetails node={props} disabled={props.disabled} />;
+			return <NodeAppDetails node={node} disabled={disabled} />;
 		case "gateway-https":
-			return <NodeGatewayHttpsDetails {...props} />;
+			return <NodeGatewayHttpsDetails node={node} disabled={disabled} />;
 		case "gateway-tcp":
-			return <NodeGatewayTCPDetails {...props} />;
+			return <NodeGatewayTCPDetails node={node} disabled={disabled} />;
 		case "volume":
-			return <NodeVolumeDetails {...props} />;
+			return <NodeVolumeDetails node={node} disabled={disabled} />;
 		case "postgresql":
-			return <NodePostgreSQLDetails {...props} />;
+			return <NodePostgreSQLDetails node={node} disabled={disabled} />;
 		case "mongodb":
-			return <NodeMongoDBDetails {...props} />;
+			return <NodeMongoDBDetails node={node} disabled={disabled} />;
 		case "github":
-			return <NodeGithubDetails {...props} />;
+			return <NodeGithubDetails node={node} disabled={disabled} />;
 		default:
 			return <>nooo</>;
 	}
