feat(ui): move in-game status to the board — highlight, score badge, full-width rack
CI / changes (pull_request) Successful in 2s
CI / unit (pull_request) Has been skipped
CI / integration (pull_request) Has been skipped
CI / ui (pull_request) Failing after 13s
CI / conformance (pull_request) Successful in 9s
CI / gate (pull_request) Failing after 0s
CI / deploy (pull_request) Has been skipped
CI / changes (pull_request) Successful in 2s
CI / unit (pull_request) Has been skipped
CI / integration (pull_request) Has been skipped
CI / ui (pull_request) Failing after 13s
CI / conformance (pull_request) Successful in 9s
CI / gate (pull_request) Failing after 0s
CI / deploy (pull_request) Has been skipped
Remove the under-board status strip and relocate its signals: - bag count -> a badge on the exchange/pass control + the foot of the move table - whose-turn / win-lose -> a thin strip above the score plaques - the tentative-move caption -> the board itself: staged tiles tint green (legal) or pink (illegal), the board tiles a formed word runs through go a shade darker, and an orange score badge sits on the main word (digit sized like a tile value, clamped on-board) The word geometry (covered cells + badge anchor) is a new pure client-side helper (ui/src/lib/formed.ts), independent of the move evaluator, so it works on the local or network preview path alike; the badge's number still comes from the preview score. Rack: a seven-column grid filling the tray width in both layouts — square, full-width tiles — with the confirm control in the fixed 7th slot. Settings: a touch-only "Zoom the board" toggle (default on, device-local) gates the tile-placement auto-zoom; taking a hint while zoomed in now zooms out so the highlighted hint word is never left off-screen. Docs (FUNCTIONAL +_ru, UI_DESIGN, ARCHITECTURE) and e2e/unit tests updated.
This commit is contained in:
@@ -29,6 +29,14 @@
|
||||
--tile-edge: #d8c190;
|
||||
--tile-text: #2a2113;
|
||||
--tile-pending: #f2cf73;
|
||||
/* In-composition highlight of the staged play (see game/Board.svelte): a calm reddish-pink
|
||||
when the tiles form no word, a light green for the player's own tiles once they do, a
|
||||
deeper green for the board tiles a formed word runs through, and the orange move-score
|
||||
badge. Tuned per theme; refined on the contour. */
|
||||
--tile-pending-illegal: #f2c7bf;
|
||||
--tile-pending-legal: #c9e7bd;
|
||||
--tile-formed: #a5cf93;
|
||||
--score-badge: #e5811d;
|
||||
/* Last-word highlight letter — a lighter burgundy than the dark theme on purpose: against
|
||||
the lighter tile the perceived contrast needs it, so the two are tuned per theme. */
|
||||
--tile-recent: #9c5849;
|
||||
@@ -84,6 +92,10 @@
|
||||
--tile-edge: #b6a473;
|
||||
--tile-text: #20190d;
|
||||
--tile-pending: #d8b75e;
|
||||
--tile-pending-illegal: #d8a99f;
|
||||
--tile-pending-legal: #a9cf94;
|
||||
--tile-formed: #83b571;
|
||||
--score-badge: #e88f31;
|
||||
--tile-recent: #8c4a3c;
|
||||
--prem-tw: #9c3f34; /* 3x word: a touch darker red */
|
||||
--prem-dw: #a8636b; /* 2x word: softer, pinker */
|
||||
@@ -115,6 +127,10 @@
|
||||
--tile-edge: #b6a473;
|
||||
--tile-text: #20190d;
|
||||
--tile-pending: #f0d98f;
|
||||
--tile-pending-illegal: #d8a99f;
|
||||
--tile-pending-legal: #a9cf94;
|
||||
--tile-formed: #83b571;
|
||||
--score-badge: #e88f31;
|
||||
/* Last-word highlight letter — a warm burgundy whose red hue stays distinct from both the
|
||||
near-black glyph and the warm tile. The light theme uses a lighter burgundy (tuned per
|
||||
theme; perceived contrast depends on the surrounding board). */
|
||||
|
||||
Reference in New Issue
Block a user