v3: search engine, responsive header with compact user menu

This commit is contained in:
khannurien
2026-03-29 11:56:31 +00:00
parent f0f6472db6
commit cbb3505139
31 changed files with 1206 additions and 178 deletions

View File

@@ -4,6 +4,7 @@ import { useAuth } from "../hooks/useAuth.ts";
import { useWS } from "../hooks/useWS.ts";
import { DumpCreateModal } from "./DumpCreateModal.tsx";
import { NotificationBell } from "./NotificationBell.tsx";
import { UserMenu } from "./UserMenu.tsx";
export function AppHeader(
{ centerSlot, disableNew }: { centerSlot?: ReactNode; disableNew?: boolean },
@@ -28,18 +29,27 @@ export function AppHeader(
{user
? (
<>
<Link
to={`/users/${user.username}`}
className="app-header-user"
>
{user.username}
</Link>
<Link
to={`/users/${user.username}/playlists`}
className="app-header-user"
>
Playlists
</Link>
{/* Full text links — hidden below the compact breakpoint */}
<div className="nav-links">
<Link
to={`/users/${user.username}`}
className="app-header-user"
>
{user.username}
</Link>
<Link
to={`/users/${user.username}/playlists`}
className="app-header-user"
>
Playlists
</Link>
</div>
{/* Compact avatar menu — hidden above the compact breakpoint */}
<div className="nav-compact">
<UserMenu user={user} />
</div>
<NotificationBell />
<button
type="button"