Pin event log across all phases
This commit is contained in:
@@ -72,7 +72,7 @@ input[type="checkbox"] {
|
||||
|
||||
.phase-view-layout {
|
||||
display: grid;
|
||||
grid-template-columns: 180px minmax(0, 1fr);
|
||||
grid-template-columns: 180px minmax(0, 1fr) minmax(300px, 0.8fr);
|
||||
gap: 1.5rem;
|
||||
align-items: start;
|
||||
}
|
||||
@@ -81,6 +81,12 @@ input[type="checkbox"] {
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
@media (min-width: 1101px) {
|
||||
.phase-view-layout.log-collapsed {
|
||||
grid-template-columns: 180px minmax(0, 1fr);
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 1100px) {
|
||||
.phase-view-layout {
|
||||
grid-template-columns: 1fr;
|
||||
|
||||
@@ -6,10 +6,17 @@
|
||||
// - Add a CHANGELOG entry only when a commit changes something players can
|
||||
// see. Skip refactors, tests, and tooling. Keep wording player-facing.
|
||||
|
||||
export const VERSION = 24;
|
||||
export const VERSION = 25;
|
||||
|
||||
// Newest first. Each entry: { version, date: 'YYYY-MM-DD', changes: [string, ...] }.
|
||||
export const CHANGELOG = [
|
||||
{
|
||||
version: 25,
|
||||
date: '2026-07-10',
|
||||
changes: [
|
||||
'The Event Log now uses the same pinned column and fixed close/reopen control in every game phase.',
|
||||
],
|
||||
},
|
||||
{
|
||||
version: 24,
|
||||
date: '2026-07-10',
|
||||
|
||||
@@ -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} />
|
||||
|
||||
Reference in New Issue
Block a user