export type ChatWidth = 'centered' | 'wide'; interface HeaderProps { onOpenSettings: () => void; leftSidebarOpen: boolean; rightSidebarOpen: boolean; chatWidth: ChatWidth; onToggleLeftSidebar: () => void; onToggleRightSidebar: () => void; onToggleChatWidth: () => void; disabled?: boolean; } export function isSafariUserAgent(userAgent: string): boolean { return /\bSafari\//.test(userAgent) && !/(?:HeadlessChrome|\bChrome|\bChromium|\bCriOS|\bEdg|\bOPR)\//.test(userAgent); } export function Header({ onOpenSettings, leftSidebarOpen, rightSidebarOpen, chatWidth, onToggleLeftSidebar, onToggleRightSidebar, onToggleChatWidth, disabled = false, }: HeaderProps) { const safari = isSafariUserAgent(globalThis.navigator?.userAgent ?? ''); return (

Bonsai

Local WebGPU chat
); } function PanelLeftIcon() { return ; } function PanelRightIcon() { return ; } function WidthIcon() { return ; } function SettingsIcon() { return ( ); }