import { Component, For, Show, createEffect, onCleanup } from 'solid-js'; import { appStore } from '../stores/appStore'; import { getModelDisplayName, MODELS } from './ModelLoadingOverlay'; interface ContextPanelProps { isOpen: boolean; onClose: () => void; onLoadModel: () => void; onOpenDebug: () => void; onDeviceSelect?: (id: string) => void; } export const ContextPanel: Component = (props) => { createEffect(() => { if (!props.isOpen) return; const handler = (e: KeyboardEvent) => { if (e.key === 'Escape') { e.preventDefault(); props.onClose(); } }; document.addEventListener('keydown', handler); onCleanup(() => document.removeEventListener('keydown', handler)); }); return ( ); };