diff --git a/app/src/lib/join.svelte b/app/src/lib/join.svelte index 3d53796..de77c08 100644 --- a/app/src/lib/join.svelte +++ b/app/src/lib/join.svelte @@ -7,11 +7,13 @@ class: className = '', roomCode, createRoom, - joinRoom + joinRoom, + leaveRoom }: { roomCode: string; createRoom: () => void; joinRoom: (code: string) => void; + leaveRoom: () => void; class: string; } = $props(); @@ -41,8 +43,8 @@ Create Room {/if} +
OR
{#if !roomCode} -
OR
+ {:else} +
+ +
{/if} diff --git a/app/src/routes/+page.svelte b/app/src/routes/+page.svelte index 375e042..fad9909 100644 --- a/app/src/routes/+page.svelte +++ b/app/src/routes/+page.svelte @@ -6,6 +6,11 @@ import { Users } from 'lucide-svelte'; let gameState = new State(); + + function leaveRoom() { + gameState.socket.emit('leave'); + gameState = new State(); + }
@@ -40,10 +45,7 @@
Leave {/if} @@ -73,6 +75,7 @@ roomCode={gameState.room} createRoom={() => gameState.createRoom()} joinRoom={(code) => gameState.joinRoom(code)} + leaveRoom={leaveRoom} /> {/if}