feat(web): add click-only interaction

This commit is contained in:
2026-08-22 19:56:26 +02:00
parent 726d35aaea
commit d1eb2d0706
3 changed files with 83 additions and 34 deletions
+12 -2
View File
@@ -1,5 +1,6 @@
<script lang="ts">
import { Color } from "wordle-solver";
import type { GuessResult } from "../solver/types";
let {
active = false,
@@ -13,9 +14,17 @@
Color.GREY,
]),
info_gained = null,
on_guess_pressed = null,
}: {
active: boolean;
cursor: number;
letters: string[];
colors: Color[];
info_gained: Promise<GuessResult> | null;
on_guess_pressed: (() => void) | null;
} = $props();
let inputs: HTMLInputElement[] = [];
let inputs: HTMLInputElement[] = $state([]);
export function focus() {
inputs[cursor].focus();
@@ -55,7 +64,7 @@
<svelte:window onkeydown={handleKey} />
<div class="flex justify-center gap-2">
{#each letters as letter, i}
{#each letters as _, i}
<input
disabled={!active}
tabindex="-1"
@@ -103,6 +112,7 @@
{/each}
<span
class="w-16 text-sm text-zinc-500 self-center flex items-center justify-center"
onclick={info_gained === null ? on_guess_pressed : null}
>
{#if info_gained === null}