diff --git a/apps/canvas/front/src/components/icon.tsx b/apps/canvas/front/src/components/icon.tsx
index c99e4f5..a615d79 100644
--- a/apps/canvas/front/src/components/icon.tsx
+++ b/apps/canvas/front/src/components/icon.tsx
@@ -8,15 +8,24 @@
 import { AiOutlineGlobal } from "react-icons/ai";
 
 export function Icon(type: NodeType | undefined): ReactElement {
-    switch (type) {
-        case "app": return (<GrServices />);
-        case "github": return (<SiGithub />);
-        case "gateway-https": return (<TbWorldWww />);
-        case "gateway-tcp": return (<PiNetwork />);
-        case "mongodb": return (<SiMongodb />);
-        case "postgresql": return (<SiPostgresql />);
-        case "volume": return (<GoFileDirectoryFill />);
-        case "network": return (<AiOutlineGlobal />);
-        default: throw new Error(`MUST NOT REACH! ${type}`);
-    }
-}
\ No newline at end of file
+	switch (type) {
+		case "app":
+			return <GrServices />;
+		case "github":
+			return <SiGithub />;
+		case "gateway-https":
+			return <TbWorldWww />;
+		case "gateway-tcp":
+			return <PiNetwork />;
+		case "mongodb":
+			return <SiMongodb />;
+		case "postgresql":
+			return <SiPostgresql />;
+		case "volume":
+			return <GoFileDirectoryFill />;
+		case "network":
+			return <AiOutlineGlobal />;
+		default:
+			throw new Error(`MUST NOT REACH! ${type}`);
+	}
+}
