Hide game sheet sections and winner selection until game has started
Wrapped WinnerBadge, SheetSection grid, and WinnerCard components in conditional rendering based on `gameStarted` flag derived from game metadata's `started` property. Prevents display of game content in lobby state before host initiates gameplay.
This commit is contained in:
@@ -622,6 +622,7 @@ export default function App() {
|
|||||||
: [];
|
: [];
|
||||||
|
|
||||||
const isHost = !!(me?.id && gameMeta?.host_user_id && me.id === gameMeta.host_user_id);
|
const isHost = !!(me?.id && gameMeta?.host_user_id && me.id === gameMeta.host_user_id);
|
||||||
|
const gameStarted = !!gameMeta?.started;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div style={styles.page}>
|
<div style={styles.page}>
|
||||||
@@ -666,16 +667,18 @@ export default function App() {
|
|||||||
onStartGame={startGame}
|
onStartGame={startGame}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
{/* Sieger Badge: zwischen Spiel und Verdächtigte Person */}
|
{gameStarted && (
|
||||||
<WinnerBadge
|
<WinnerBadge
|
||||||
winner={{
|
winner={{
|
||||||
display_name: gameMeta?.winner_display_name || "",
|
display_name: gameMeta?.winner_display_name || "",
|
||||||
email: gameMeta?.winner_email || "",
|
email: gameMeta?.winner_email || "",
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
|
)}
|
||||||
|
|
||||||
<HelpModal open={helpOpen} onClose={() => setHelpOpen(false)} />
|
<HelpModal open={helpOpen} onClose={() => setHelpOpen(false)} />
|
||||||
|
|
||||||
|
{gameStarted && (
|
||||||
<div style={{ marginTop: 14, display: "grid", gap: 14 }}>
|
<div style={{ marginTop: 14, display: "grid", gap: 14 }}>
|
||||||
{sections.map((sec) => (
|
{sections.map((sec) => (
|
||||||
<SheetSection
|
<SheetSection
|
||||||
@@ -689,8 +692,10 @@ export default function App() {
|
|||||||
/>
|
/>
|
||||||
))}
|
))}
|
||||||
</div>
|
</div>
|
||||||
|
)}
|
||||||
|
|
||||||
{/* Host-only Winner Auswahl */}
|
{/* Host-only Winner Auswahl */}
|
||||||
|
{gameStarted && (
|
||||||
<WinnerCard
|
<WinnerCard
|
||||||
isHost={isHost}
|
isHost={isHost}
|
||||||
members={members}
|
members={members}
|
||||||
@@ -698,6 +703,7 @@ export default function App() {
|
|||||||
setWinnerUserId={setWinnerUserId}
|
setWinnerUserId={setWinnerUserId}
|
||||||
onSave={saveWinner}
|
onSave={saveWinner}
|
||||||
/>
|
/>
|
||||||
|
)}
|
||||||
|
|
||||||
<div style={{ height: 24 }} />
|
<div style={{ height: 24 }} />
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user