diff --git a/frontend/src/components/Close.tsx b/frontend/src/components/Close.tsx
index db31122b0..3e9031253 100644
--- a/frontend/src/components/Close.tsx
+++ b/frontend/src/components/Close.tsx
@@ -1,8 +1,31 @@
-import { Link } from "react-router-dom";
+import { useNavigate } from "react-router-dom";
import { ReactComponent as CloseIcon } from "../images/icons/close.svg"
-export default function Close() {
- return (
-
- )
+type Props = {
+ onClose?: () => void,
+ to?: string
+}
+
+export default function Close({ onClose, to }: Props) {
+
+ let navigate = useNavigate();
+
+ function handleClose() {
+ if (onClose) {
+ onClose();
+ }
+
+ // onClose could be a cleanup function
+ // So we still might want to navigate after
+ if (to) {
+ navigate(to);
+ } else {
+ navigate("/");
+ }
+ }
+ return (
+
+
+
+ )
}
\ No newline at end of file
diff --git a/frontend/src/routes/ConnectPeer.tsx b/frontend/src/routes/ConnectPeer.tsx
index 5131d3eb1..46f6b29db 100644
--- a/frontend/src/routes/ConnectPeer.tsx
+++ b/frontend/src/routes/ConnectPeer.tsx
@@ -49,7 +49,7 @@ export default function ConnectPeer() {
<>
diff --git a/frontend/src/routes/OpenChannel.tsx b/frontend/src/routes/OpenChannel.tsx
index ef82304bd..eaa88e202 100644
--- a/frontend/src/routes/OpenChannel.tsx
+++ b/frontend/src/routes/OpenChannel.tsx
@@ -42,7 +42,7 @@ export default function OpenChannel() {
<>