diff --git a/ui/frontend/src/lib/active-view/battle.svelte b/ui/frontend/src/lib/active-view/battle.svelte index befaa40..a0eec71 100644 --- a/ui/frontend/src/lib/active-view/battle.svelte +++ b/ui/frontend/src/lib/active-view/battle.svelte @@ -12,9 +12,8 @@ header now — we just hand the routes down as callbacks so the viewer keeps its prop-driven contract. --> diff --git a/ui/frontend/src/lib/active-view/designer-science.svelte b/ui/frontend/src/lib/active-view/designer-science.svelte index dfd3753..e89e9cb 100644 --- a/ui/frontend/src/lib/active-view/designer-science.svelte +++ b/ui/frontend/src/lib/active-view/designer-science.svelte @@ -25,10 +25,8 @@ fractions is a Phase 21 decision documented in `ui/docs/science-designer-ux.md`. -->
- +
diff --git a/ui/frontend/src/lib/active-view/report/report-toc.svelte b/ui/frontend/src/lib/active-view/report/report-toc.svelte index aa7a6df..c8ab49a 100644 --- a/ui/frontend/src/lib/active-view/report/report-toc.svelte +++ b/ui/frontend/src/lib/active-view/report/report-toc.svelte @@ -3,9 +3,10 @@ Phase 23 Report View table of contents. Responsibilities: - "Back to map" button at the top — visible on both desktop sidebar - and mobile sticky toolbar. Navigates via `$app/navigation.goto` so - active-view-host scroll restoration plays through SvelteKit's - history machinery and the layout's `mobileTool` resets naturally. + and mobile sticky toolbar. Switches the active view to the map + through `activeView.select("map")`; the shell's tool gate resets + the `mobileTool` overlay naturally once the map is no longer the + active view. - Desktop / tablet sidebar: a vertical list of anchor links, one per section. The active link gets `aria-current="location"` and a `.active` style. Click scrolls the active-view-host (not the @@ -20,8 +21,7 @@ The active section is computed by the orchestrator `activeSlug` prop. The TOC itself owns no observers. --> diff --git a/ui/frontend/src/lib/active-view/report/section-battles.svelte b/ui/frontend/src/lib/active-view/report/section-battles.svelte index d071c7f..fb0b373 100644 --- a/ui/frontend/src/lib/active-view/report/section-battles.svelte +++ b/ui/frontend/src/lib/active-view/report/section-battles.svelte @@ -1,15 +1,14 @@
{i18n.t("game.report.section.battles.id_label")} - openBattle(b.id)} data-testid="report-battle-row" data-id={b.id} - >{b.id} + >{b.id} {/each} @@ -90,10 +93,15 @@ decision log called out. font-size: 0.7rem; } .uuid { + padding: 0; + border: 0; + background: transparent; + font: inherit; color: var(--color-accent); font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; text-decoration: underline; text-underline-offset: 2px; + cursor: pointer; } .uuid:hover { color: var(--color-text); diff --git a/ui/frontend/src/lib/active-view/table-sciences.svelte b/ui/frontend/src/lib/active-view/table-sciences.svelte index 0b7bbf2..fffc86d 100644 --- a/ui/frontend/src/lib/active-view/table-sciences.svelte +++ b/ui/frontend/src/lib/active-view/table-sciences.svelte @@ -11,16 +11,14 @@ The four tech proportions are stored on the wire as fractions in `[0, 1]` and surfaced here as percentages with one decimal so the table matches the designer's input units. -The component sits inside the active-view slot owned by -`routes/games/[id]/+layout.svelte`, so it inherits the per-game +The component sits inside the active-view area owned by +`lib/game/game-shell.svelte`, so it inherits the per-game `OrderDraftStore` and `RenderedReportSource` through context. No -data fetching is performed here — the layout is responsible. +data fetching is performed here — the shell is responsible. -->