diff --git a/src/server/board/chrome.ts b/src/server/board/chrome.ts index af264ba..74ae374 100644 --- a/src/server/board/chrome.ts +++ b/src/server/board/chrome.ts @@ -1,30 +1,13 @@ -import { escapeHtml } from '../ui-shared.js'; - -const LOGO = ''; +import { appHeader } from '../ui-shared.js'; /** - * Fixed app header for board v2. The project cell is visual only — the real - * project switcher dropdown arrives with the multi-project v3 spec. - * The SSE status span keeps the v1 ids (`sseStatus`, `sseLabel`) so the ported - * connection-status JS keeps working unchanged. + * Fixed app header for board v2 — the shared v2 header (ui-shared.appHeader) + * with the board marked active. The project cell is visual only (dropdown = v3); + * SSE ids (`sseStatus`, `sseLabel`) match the ported connection-status JS. + * Styling comes from ui-shared's appHeaderOnlyCss(), which boardV2Css() includes. */ export function headerHtml(projectName: string): string { - const name = escapeHtml(projectName); - return ` -
- ${LOGO}agenthub - / ${name}  - - - - - - connecting - - -
`; + return appHeader(projectName, 'board'); } /** Fullscreen splash overlay, shown until first data render (hard cap 1.5s). */ diff --git a/src/server/board/styles.ts b/src/server/board/styles.ts index 3ee834c..40c5f55 100644 --- a/src/server/board/styles.ts +++ b/src/server/board/styles.ts @@ -1,15 +1,19 @@ /** * Board v2 design system: glass dashboard on a deep gradient. * Everything is emitted by boardV2Css() and inlined into the page