修正記分板在 iPad 尺寸的版面與修復 dev server 啟動問題

This commit is contained in:
2026-05-18 17:40:58 +08:00
parent 30a8e1a44c
commit 3677162747
7 changed files with 4599 additions and 4598 deletions

1
.gitignore vendored
View File

@@ -25,3 +25,4 @@ dist-ssr
*.njsproj *.njsproj
*.sln *.sln
*.sw? *.sw?
/*.stackdump

View File

@@ -6,7 +6,7 @@
"scripts": { "scripts": {
"dev": "concurrently \"npm:dev:server\" \"npm:dev:client\"", "dev": "concurrently \"npm:dev:server\" \"npm:dev:client\"",
"dev:client": "vite", "dev:client": "vite",
"dev:server": "node --watch server/server.mjs", "dev:server": "node server/server.mjs",
"build": "tsc -b && vite build", "build": "tsc -b && vite build",
"lint": "eslint .", "lint": "eslint .",
"preview": "vite preview", "preview": "vite preview",

View File

@@ -1737,15 +1737,6 @@
flex-shrink: 0; flex-shrink: 0;
} }
.scoreboard-screen {
grid-template-columns: 1fr;
}
.scoreboard-rail {
grid-template-columns: minmax(0, 1fr) 140px 160px;
align-items: stretch;
}
.scoreboard-team-head { .scoreboard-team-head {
grid-template-columns: minmax(0, 1fr) 62px; grid-template-columns: minmax(0, 1fr) 62px;
} }
@@ -1998,9 +1989,18 @@
text-align: center; text-align: center;
} }
.scoreboard-screen {
grid-template-columns: 1fr;
}
.scoreboard-rail { .scoreboard-rail {
grid-template-columns: minmax(0, 1fr) 94px 106px; grid-template-columns: minmax(0, 1fr) 94px 106px;
gap: 6px; gap: 6px;
align-items: stretch;
}
.rail-pill-hold-wrap {
grid-column: 1 / -1;
} }
.rail-square-button { .rail-square-button {

View File

@@ -718,14 +718,14 @@ function App() {
} }
const setServing = (side: ScoreSide) => { const setServing = (side: ScoreSide) => {
if (scoreHistory.length > 0 || scoreState.initialServing !== null) { if (scoreHistory.length > 0) {
return return
} }
setScoreState((current) => ({ setScoreState((current) => ({
...current, ...current,
initialServing: side, initialServing: current.initialServing === side ? null : side,
serving: side, serving: current.initialServing === side ? null : side,
})) }))
} }

View File

@@ -463,7 +463,7 @@ export function ScoreboardPage({
assignments={leftAssignments} assignments={leftAssignments}
canArrangeMatch={canArrangeMatch} canArrangeMatch={canArrangeMatch}
canScore={canScore} canScore={canScore}
canSetServing={canArrangeMatch && scoreState.initialServing === null} canSetServing={canArrangeMatch}
currentReceiver={scoreState.serving === 'right' ? currentReceiver?.name ?? null : null} currentReceiver={scoreState.serving === 'right' ? currentReceiver?.name ?? null : null}
currentServer={scoreState.serving === 'left' ? currentServer?.name ?? null : null} currentServer={scoreState.serving === 'left' ? currentServer?.name ?? null : null}
hasInitialServing={scoreState.initialServing === 'left'} hasInitialServing={scoreState.initialServing === 'left'}
@@ -496,7 +496,7 @@ export function ScoreboardPage({
assignments={rightAssignments} assignments={rightAssignments}
canArrangeMatch={canArrangeMatch} canArrangeMatch={canArrangeMatch}
canScore={canScore} canScore={canScore}
canSetServing={canArrangeMatch && scoreState.initialServing === null} canSetServing={canArrangeMatch}
currentReceiver={scoreState.serving === 'left' ? currentReceiver?.name ?? null : null} currentReceiver={scoreState.serving === 'left' ? currentReceiver?.name ?? null : null}
currentServer={scoreState.serving === 'right' ? currentServer?.name ?? null : null} currentServer={scoreState.serving === 'right' ? currentServer?.name ?? null : null}
hasInitialServing={scoreState.initialServing === 'right'} hasInitialServing={scoreState.initialServing === 'right'}