mirror of
https://github.com/tiennm99/loto.git
synced 2026-10-14 10:18:50 +00:00
7d1bb5e68a3b26065161787b971c6a14a7a6f6a6
1. Settings gear was unclickable because H1's `drop-shadow` filter created a stacking context that painted the H1 over the absolutely- positioned trigger. Bump gear wrapper to z-10. (src/routes/+page.svelte) 2. Switch rows in settings had a dead zone — `<label>` wrapped a `<span role=switch>` (not a labelable element), so taps on the text fell through. Move role/click/keydown to the wrapping div so the whole row toggles. Pill stays decorative. (src/lib/SettingsButton.svelte) 3. Empty cells used `dark:[filter:brightness(...)]` which creates a per-cell stacking context — same hazard class as bug #1. Replace with a pointer-events-none overlay span (`hidden dark:block`). (src/lib/PlayerBoard.svelte) 4. Audio cache never evicted on voice swap, leaking ~92 Audio elements per change over a session. New `clearAudioCache()` in voice.js, called from `pickVoice` when the id actually changes. (src/lib/voice.js, src/lib/SettingsButton.svelte) Tests 98/98 pass; build clean.
Description
Lô Tô (Vietnamese lottery bingo) number board — Next.js web app
4.1 MiB
0 Stars
1 Watchers
0 Forks
Languages
TypeScript
89.9%
CSS
8%
JavaScript
2.1%