@@ -87,13 +87,13 @@ export const ModelSelector: React.FC<ModelSelectorProps> = ({
8787 const getProviderColor = ( provider : AIProvider ) => {
8888 switch ( provider ) {
8989 case "openai" :
90- return "text-green-600 bg-green-50 " ;
90+ return "bg-green-50 text-green-600 dark: bg-green-950/40 dark:text-green-400 " ;
9191 case "gemini" :
92- return "text-blue-600 bg-blue-50 " ;
92+ return "bg-blue-50 text-blue-600 dark: bg-blue-950/40 dark:text-blue-400 " ;
9393 case "grok" :
94- return "text-purple-600 bg-purple-50 " ;
94+ return "bg-purple-50 text-purple-600 dark: bg-purple-950/40 dark:text-purple-400 " ;
9595 default :
96- return "text-gray-600 bg-gray-50 " ;
96+ return "bg-gray-50 text-gray-600 dark: bg-gray-800 dark:text-gray-300 " ;
9797 }
9898 } ;
9999
@@ -178,12 +178,12 @@ export const ModelSelector: React.FC<ModelSelectorProps> = ({
178178 </ Button >
179179
180180 { isOpen && (
181- < div className = "absolute z-50 w-full mt-1 bg-white border border-gray-200 rounded-md shadow-lg max-h-96 overflow-auto " >
181+ < div className = "absolute z-50 mt-1 max-h-96 w-full overflow-auto rounded-md border border-gray-200 bg-white shadow-lg dark:border-gray-700 dark:bg-gray-900 " >
182182 { Object . entries ( groupedModels ) . map (
183183 ( [ providerKey , providerModels ] ) => (
184184 < div key = { providerKey } >
185185 { showAllProviders && (
186- < div className = "px-3 py-2 text-xs font-semibold text-gray-500 bg-gray-50 border-b " >
186+ < div className = "border-b border-gray-200 bg-gray-50 px-3 py-2 text-xs font-semibold text-gray-500 dark:border-gray-700 dark: bg-gray-800 dark:text-gray-400 " >
187187 < div className = "flex items-center gap-2" >
188188 { getProviderIcon ( providerKey as AIProvider ) }
189189 { providerKey . toUpperCase ( ) }
@@ -198,15 +198,15 @@ export const ModelSelector: React.FC<ModelSelectorProps> = ({
198198 setIsOpen ( false ) ;
199199 } }
200200 className = { cn (
201- "w-full px-3 py-2 text-left hover:bg-gray-50 border-b border -gray-100 last:border-b-0" ,
201+ "w-full border-b border-gray-100 px-3 py-2 text-left hover:bg-gray-50 dark: border-gray-800 dark:hover:bg -gray-800/80 last:border-b-0" ,
202202 selectedModel === model . id &&
203- "bg-blue-50 border-blue-200 " ,
203+ "border-blue-200 bg-blue-50 dark: border-blue-900/60 dark:bg-blue-950/30 " ,
204204 compact && "py-1"
205205 ) }
206206 >
207207 < div className = "flex items-start justify-between gap-2" >
208208 < div className = "min-w-0 flex-1" >
209- < div className = "flex items-center gap-2 mb-1 " >
209+ < div className = "mb-1 flex items-center gap-2" >
210210 { ! showAllProviders && (
211211 < div
212212 className = { cn (
@@ -221,11 +221,11 @@ export const ModelSelector: React.FC<ModelSelectorProps> = ({
221221 { model . name }
222222 </ span >
223223 { selectedModel === model . id && (
224- < CheckCircle className = "w-4 h-4 text-blue-600" />
224+ < CheckCircle className = "w-4 h-4 text-blue-600 dark:text-blue-400 " />
225225 ) }
226226 </ div >
227227 { ! compact && (
228- < p className = "text-xs text-gray-600 mb-2 " >
228+ < p className = "mb-2 text-xs text-gray-600 dark:text-gray-400 " >
229229 { model . description }
230230 </ p >
231231 ) }
@@ -236,14 +236,14 @@ export const ModelSelector: React.FC<ModelSelectorProps> = ({
236236 . map ( ( capability ) => (
237237 < span
238238 key = { capability }
239- className = "inline-flex items-center gap-1 px-1.5 py-0.5 bg-gray-100 text-gray-700 text-xs rounded "
239+ className = "inline-flex items-center gap-1 rounded bg-gray-100 px-1.5 py-0.5 text-xs text-gray-700 dark:bg-gray-800 dark:text-gray-300 "
240240 >
241241 { getCapabilityIcon ( capability ) }
242242 { getCapabilityLabel ( capability ) }
243243 </ span >
244244 ) ) }
245245 { model . capabilities . length > 4 && (
246- < span className = "text-xs text-gray-500" >
246+ < span className = "text-xs text-gray-500 dark:text-gray-400 " >
247247 { t ( "modelSelector.moreCapabilities" , {
248248 count : model . capabilities . length - 4 ,
249249 } ) }
@@ -252,7 +252,7 @@ export const ModelSelector: React.FC<ModelSelectorProps> = ({
252252 </ div >
253253 ) }
254254 { showPricing && ! compact && (
255- < div className = "flex items-center gap-4 text-xs text-gray-500" >
255+ < div className = "flex items-center gap-4 text-xs text-gray-500 dark:text-gray-400 " >
256256 < div className = "flex items-center gap-1" >
257257 < DollarSign className = "w-3 h-3" />
258258 { t ( "modelSelector.inputPrice" , {
@@ -281,7 +281,7 @@ export const ModelSelector: React.FC<ModelSelectorProps> = ({
281281 )
282282 ) }
283283 { models . length === 0 && (
284- < div className = "px-3 py-4 text-center text-gray-500" >
284+ < div className = "px-3 py-4 text-center text-gray-500 dark:text-gray-400 " >
285285 < AlertCircle className = "w-6 h-6 mx-auto mb-2" />
286286 < p className = "text-sm" > { t ( "modelSelector.noModels" ) } </ p >
287287 { ! showAllProviders && ! provider && (
0 commit comments