Pin event log across all phases

This commit is contained in:
2026-07-10 19:24:04 -07:00
parent b9cbbda1a2
commit d8d68a80a3
3 changed files with 31 additions and 5 deletions
+16 -3
View File
@@ -33,6 +33,9 @@
let reconnectDelay = 1000;
let destroyed = false;
let staleSession = false;
// Non-scene phases use the same pinned Event Log column and fixed corner
// toggle that ScenePhase owns for the main play screen.
let phaseLogOpen = true;
function discardStaleSession(message) {
staleSession = true;
@@ -223,7 +226,7 @@
{#if state.game.phase === 'scene'}
<ScenePhase {state} />
{:else}
<div class="phase-view-layout">
<div class="phase-view-layout" class:log-collapsed={!phaseLogOpen}>
<CrewSidebar {state} />
<main class="phase-main-column">
{#if state.game.phase === 'lobby'}
@@ -242,13 +245,23 @@
<div class="card p-4">Unknown phase: {state.game.phase}</div>
{/if}
</main>
{#if phaseLogOpen}
<div class="log-column">
<EventLog {state} inline on:collapse={() => (phaseLogOpen = false)} />
</div>
{/if}
</div>
{/if}
</div>
<!-- The scene phase renders its own inline Event Log as the third column. -->
{#if state.game.phase !== 'scene'}
<EventLog {state} />
<button
class="log-reopen-btn"
title={phaseLogOpen ? 'Hide the event log' : 'Show the event log'}
on:click={() => (phaseLogOpen = !phaseLogOpen)}
>
{phaseLogOpen ? '✕ Close Log' : '📜 Event Log'}
</button>
{/if}
<NameModal {state} />
<GatModal {state} />