@@ -3,9 +3,11 @@ import { Search, Zap } from 'lucide-react'
33import { Button } from '@/components/ui/Button'
44
55const FRED_SERIES = [
6- { value : 'GDP' , label : 'GDP' } , { value : 'UNRATE' , label : 'Unemployment' } ,
7- { value : 'CPIAUCSL' , label : 'CPI / Inflation' } , { value : 'FEDFUNDS' , label : 'Fed Funds Rate' } ,
8- { value : 'DGS10' , label : '10-Year Treasury' } ,
6+ { value : 'GDP' , label : 'GDP' } ,
7+ { value : 'UNRATE' , label : 'Unemployment' } ,
8+ { value : 'CPIAUCSL' , label : 'CPI / Inflation' } ,
9+ { value : 'FEDFUNDS' , label : 'Fed Funds Rate' } ,
10+ { value : 'DGS10' , label : '10-Year Treasury' } ,
911]
1012
1113interface MarketQueryFormProps {
@@ -14,18 +16,26 @@ interface MarketQueryFormProps {
1416 onCurrency : ( v : string ) => void ; onFred : ( v : string ) => void ; onFetch : ( ) => void
1517}
1618
17- const inputCls = 'w-full h-9 bg-slate-100 dark:bg-slate-800/60 border border-slate-300 dark:border-slate-700 hover:border-slate-400 dark:hover:border-slate-600 focus:border-blue-500 focus:outline-none rounded-lg px-3 text-sm text-slate-900 dark: text-white placeholder:text-slate-400 dark:placeholder: text-slate-500 transition-colors '
18- const labelCls = 'block text-xs font-medium text-slate-600 dark: text-slate-400 mb-1.5 uppercase tracking-wide '
19+ const inputCls = 'w-full h-9 bg-slate-50 dark:bg-[var(--bg-input)] border border-slate-200 dark:border-[var(--border)] hover:border-slate-300 dark:hover:border-[var(--border-md)] focus:border-[var(--accent)] focus:outline-none focus:ring-1 focus:ring-blue-500/30 rounded-lg px-3 text-sm text-[var(-- text-1)] placeholder:text-[var(-- text-3)] transition-all duration-150 '
20+ const labelCls = 'block text-xs font-medium text-[var(-- text-2)] mb-1.5 uppercase tracking-wider '
1921
20- export function MarketQueryForm ( { symbol, crypto, currency, fredSeries, loading, onSymbol, onCrypto, onCurrency, onFred, onFetch } : MarketQueryFormProps ) {
22+ export function MarketQueryForm ( {
23+ symbol, crypto, currency, fredSeries, loading,
24+ onSymbol, onCrypto, onCurrency, onFred, onFetch,
25+ } : MarketQueryFormProps ) {
2126 return (
22- < div className = "bg-white dark:bg-[#131D2E] border border-slate-200 dark:border-slate-700/50 rounded-xl p-5" >
27+ < div className = "bg-white dark:bg-[#131D2E] border border-slate-200/80 dark:border-[var(--border)] rounded-xl p-5" >
2328 < div className = "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4 mb-4" >
2429 < div >
2530 < label className = { labelCls } > Stock Symbol</ label >
2631 < div className = "relative" >
27- < Search className = "absolute left-2.5 top-1/2 -translate-y-1/2 h-3.5 w-3.5 text-slate-400" />
28- < input value = { symbol } onChange = { e => onSymbol ( e . target . value . toUpperCase ( ) ) } placeholder = "AAPL, TSLA…" className = { inputCls + ' pl-8' } />
32+ < Search className = "absolute left-2.5 top-1/2 -translate-y-1/2 h-3.5 w-3.5 text-[var(--text-3)]" />
33+ < input
34+ value = { symbol }
35+ onChange = { e => onSymbol ( e . target . value . toUpperCase ( ) ) }
36+ placeholder = "AAPL, TSLA…"
37+ className = { inputCls + ' pl-8' }
38+ />
2939 </ div >
3040 </ div >
3141 < div >
@@ -43,7 +53,9 @@ export function MarketQueryForm({ symbol, crypto, currency, fredSeries, loading,
4353 </ select >
4454 </ div >
4555 </ div >
46- < Button onClick = { onFetch } loading = { loading } icon = { < Zap className = "h-3.5 w-3.5" /> } > Fetch Live Data</ Button >
56+ < Button onClick = { onFetch } loading = { loading } icon = { < Zap className = "h-3.5 w-3.5" /> } >
57+ Fetch Live Data
58+ </ Button >
4759 </ div >
4860 )
4961}
0 commit comments