'use client'; import { Send, Loader2 } from 'lucide-react'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { cn } from '@/lib/utils'; import { DocumentFilterDropdown } from './DocumentFilterDropdown'; export type QueryMode = 'graph' | 'vector' | 'hybrid'; const MODES: { value: QueryMode; label: string }[] = [ { value: 'hybrid', label: 'Hybrid' }, { value: 'graph', label: 'Graph' }, { value: 'vector', label: 'Vector' }, ]; interface QueryPanelProps { value: string; onChange: (v: string) => void; mode: QueryMode; onModeChange: (m: QueryMode) => void; onSubmit: () => void; loading?: boolean; } export function QueryPanel({ value, onChange, mode, onModeChange, onSubmit, loading, }: QueryPanelProps) { return (
Mode
{MODES.map((m) => ( ))}
onChange(e.target.value)} onKeyDown={(e) => e.key === 'Enter' && !loading && onSubmit()} placeholder="Ask anything about your documents..." className="h-11" />
); }