Files
furumi-ng/furumi-node-player/client/src/components/header/Header.tsx
T

47 lines
1.2 KiB
TypeScript
Raw Normal View History

2026-04-04 18:33:45 +03:00
import { SearchDropdown } from '../SearchDropdown'
import styles from './header.module.css'
2026-03-23 14:22:44 +03:00
type SearchResultItem = {
result_type: string
slug: string
name: string
detail?: string
}
type HeaderProps = {
searchOpen: boolean
searchResults: SearchResultItem[]
onSearchSelect: (type: string, slug: string) => void
}
export function Header({
searchOpen,
searchResults,
onSearchSelect,
}: HeaderProps) {
return (
2026-04-04 18:33:45 +03:00
<header className={styles.header}>
<div className={styles.headerLogo}>
2026-03-23 14:22:44 +03:00
<button className="btn-menu">&#9776;</button>
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2">
<circle cx="9" cy="18" r="3" />
<circle cx="18" cy="15" r="3" />
<path d="M12 18V6l9-3v3" />
</svg>
Furumi
2026-04-04 18:33:45 +03:00
<span className={styles.headerVersion}>v</span>
2026-03-23 14:22:44 +03:00
</div>
<div style={{ display: 'flex', alignItems: 'center', gap: '1rem' }}>
<div className="search-wrap">
<input id="searchInput" placeholder="Search..." />
<SearchDropdown
isOpen={searchOpen}
results={searchResults}
onSelect={onSearchSelect}
/>
</div>
</div>
</header>
)
}