From 6f55dedbaa698b894abd7179412699d4c95de885 Mon Sep 17 00:00:00 2001 From: Jonas Kappa Date: Sat, 6 Sep 2025 12:25:18 +0200 Subject: [PATCH] Done V1 --- src/lib/MessageType.ts | 2 + .../MultipleChoiceQuestionComponent.svelte | 67 +++++++++++++++++ src/lib/PlusMinusButton.svelte | 12 +++- src/lib/Scoreboard.svelte | 29 ++++++-- src/lib/SimpleQuestionComponent.svelte | 11 +-- src/lib/games/games.ts | 20 ++++-- .../[wall]/[category]/[question]/+page.svelte | 24 ++++++- .../connected/games/[game]/+page.svelte | 72 +++++++++++++++++-- 8 files changed, 212 insertions(+), 25 deletions(-) create mode 100644 src/lib/MultipleChoiceQuestionComponent.svelte diff --git a/src/lib/MessageType.ts b/src/lib/MessageType.ts index c2addef..dc4a937 100644 --- a/src/lib/MessageType.ts +++ b/src/lib/MessageType.ts @@ -4,5 +4,7 @@ export enum MessageType { GOTO = "GOTO", SHOW_ANSWER = "SHOW_ANSWER", HIDE_ANSWER = "HIDE_ANSWER", + SHOW_QUESTION = "SHOW_QUESTION", + HIDE_QUESTION = "HIDE_QUESTION", VISITED_QUESTIONS = "VISITED_QUESTIONS" } diff --git a/src/lib/MultipleChoiceQuestionComponent.svelte b/src/lib/MultipleChoiceQuestionComponent.svelte new file mode 100644 index 0000000..33bde6b --- /dev/null +++ b/src/lib/MultipleChoiceQuestionComponent.svelte @@ -0,0 +1,67 @@ + + +
+ {#if showQuestion} +
+
{question.data.question}
+
+
+ {#each _choices as choice} +
+ {choice} +
+ {/each} +
+ {/if} +
+ + diff --git a/src/lib/PlusMinusButton.svelte b/src/lib/PlusMinusButton.svelte index bb42211..7bc45da 100644 --- a/src/lib/PlusMinusButton.svelte +++ b/src/lib/PlusMinusButton.svelte @@ -3,18 +3,24 @@ label: string; plus: (label: string) => void; minus: (label: string) => void; + showPlus?: boolean; + showMinus?: boolean; [key: string]: unknown; } - let { label, plus, minus }: Props = $props(); + let { label, plus, minus, showPlus = true, showMinus = true }: Props = $props();
- + {#if showMinus} + + {/if}
{label}
- + {#if showPlus} + + {/if}