fix(01): add lesson cancel button and handle level 6 completion

- Back button in lesson screen to return to forest without completing
- "Alle Stufen geschafft!" message when all 6 levels are done
- Cap currentLevel at MAX_LEVEL to prevent out-of-bounds progression

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-29 11:30:55 +02:00
co-authored by Claude Opus 4.6
parent 46fa2e28d5
commit 78d516c55d
5 changed files with 69 additions and 3 deletions
+9
View File
@@ -79,9 +79,11 @@ export function initLessonScreen(
level: number,
layout: KeyboardLayout,
onComplete: (level: number) => void,
onCancel?: () => void,
): () => void {
const letterArea = document.getElementById("letter-area")!;
const keyboardContainer = document.getElementById("lesson-keyboard")!;
const backBtn = document.getElementById("lesson-back-btn") as HTMLButtonElement;
const state = createExerciseState(level);
// Render keyboard
@@ -131,6 +133,13 @@ export function initLessonScreen(
document.addEventListener("keydown", onKeyDown);
// Back button to cancel lesson
backBtn.onclick = () => {
document.removeEventListener("keydown", onKeyDown);
letterArea.innerHTML = "";
if (onCancel) onCancel();
};
// Return cleanup function
return () => {
document.removeEventListener("keydown", onKeyDown);