From d29774f42139753c8fef89e64c3d59e017588bee Mon Sep 17 00:00:00 2001 From: Lily Delalande Date: Wed, 2 Apr 2025 13:37:47 -0400 Subject: [PATCH 1/4] base model logs --- .../models/model_list/BaseModelsList.tsx | 26 ++++++++++++++----- 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx b/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx index 789a9bc2ac0e..80cd69c26bd8 100644 --- a/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx +++ b/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx @@ -3,6 +3,8 @@ import Model, { getProviderMetadata } from '../modelInterface'; import { useRecentModels } from './recentModels'; import { changeModel, getCurrentModelAndProvider } from '../index'; import { useConfig } from '../../../ConfigContext'; +import { getExtensions } from '@/src/api'; +import ToastService, { toastService } from '@/src/toasts'; interface ModelRadioListProps { renderItem: (props: { @@ -29,7 +31,7 @@ export function BaseModelsList({ } else { modelList = providedModelList; } - const { read, upsert, getProviders } = useConfig(); + const { read, upsert, getExtensions, addExtension } = useConfig(); const [selectedModel, setSelectedModel] = useState(null); const [isInitialized, setIsInitialized] = useState(false); @@ -52,6 +54,7 @@ export function BaseModelsList({ } else { currentModel = match; } + console.log('Checking for set selected model', currentModel); setSelectedModel(currentModel); setIsInitialized(true); } @@ -72,11 +75,13 @@ export function BaseModelsList({ const handleModelSelection = async (model: Model) => { // Fix: Use the model parameter that's passed in - await changeModel({ model: model, writeToConfig: upsert }); + console.log('in handleModelSelection'); + await changeModel({ model: model, writeToConfig: upsert, getExtensions, addExtension }); }; // Updated to work with CustomRadio const handleRadioChange = async (model: Model) => { + console.log('In handle Radio Change'); // Check if the selected model is already active if ( selectedModel && @@ -84,14 +89,22 @@ export function BaseModelsList({ selectedModel.provider === model.provider ) { console.log(`Model "${model.name}" is already active.`); + toastService.error({ + title: 'same model already', + msg: `Model "${model.name}" is already active.`, + traceback: null, + }); + return; } try { // Fix: First save the model to config, then update local state + console.log('about to go into handle model selection'); await handleModelSelection(model); // Update local state after successful save + console.log('Checking selected model 2', model); setSelectedModel(model); } catch (error) { console.error('Error selecting model:', error); @@ -105,16 +118,17 @@ export function BaseModelsList({ return (
- {modelList.map((model) => - renderItem({ + {modelList.map((model) => { + console.log('A string easy to search for. selectedmodel', selectedModel, 'model', model); + return renderItem({ model, isSelected: selectedModel && selectedModel.name === model.name && selectedModel.provider === model.provider, onSelect: () => handleRadioChange(model), - }) - )} + }); + })}
); } From 08d2c1282db1da909fd863b393971c882ad21235 Mon Sep 17 00:00:00 2001 From: Lily Delalande Date: Wed, 2 Apr 2025 14:17:04 -0400 Subject: [PATCH 2/4] import --- .../components/settings_v2/models/model_list/BaseModelsList.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx b/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx index 80cd69c26bd8..d0a5f2fdadee 100644 --- a/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx +++ b/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx @@ -4,7 +4,7 @@ import { useRecentModels } from './recentModels'; import { changeModel, getCurrentModelAndProvider } from '../index'; import { useConfig } from '../../../ConfigContext'; import { getExtensions } from '@/src/api'; -import ToastService, { toastService } from '@/src/toasts'; +import ToastService, { toastService } from '../../../../toasts'; interface ModelRadioListProps { renderItem: (props: { From f04fc546bf6c78f90bb1d3053d5cceac11bb3b2e Mon Sep 17 00:00:00 2001 From: Lily Delalande Date: Wed, 2 Apr 2025 15:45:18 -0400 Subject: [PATCH 3/4] remove logs --- .../models/model_list/BaseModelsList.tsx | 23 ++++++------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx b/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx index d0a5f2fdadee..118b42be4f7b 100644 --- a/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx +++ b/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx @@ -4,7 +4,7 @@ import { useRecentModels } from './recentModels'; import { changeModel, getCurrentModelAndProvider } from '../index'; import { useConfig } from '../../../ConfigContext'; import { getExtensions } from '@/src/api'; -import ToastService, { toastService } from '../../../../toasts'; +import ToastService, { toastInfo, toastService } from '../../../../toasts'; interface ModelRadioListProps { renderItem: (props: { @@ -54,7 +54,6 @@ export function BaseModelsList({ } else { currentModel = match; } - console.log('Checking for set selected model', currentModel); setSelectedModel(currentModel); setIsInitialized(true); } @@ -74,25 +73,20 @@ export function BaseModelsList({ }, [read]); const handleModelSelection = async (model: Model) => { - // Fix: Use the model parameter that's passed in - console.log('in handleModelSelection'); await changeModel({ model: model, writeToConfig: upsert, getExtensions, addExtension }); }; // Updated to work with CustomRadio const handleRadioChange = async (model: Model) => { - console.log('In handle Radio Change'); // Check if the selected model is already active if ( selectedModel && selectedModel.name === model.name && selectedModel.provider === model.provider ) { - console.log(`Model "${model.name}" is already active.`); - toastService.error({ - title: 'same model already', + toastInfo({ + title: 'No change', msg: `Model "${model.name}" is already active.`, - traceback: null, }); return; @@ -100,11 +94,9 @@ export function BaseModelsList({ try { // Fix: First save the model to config, then update local state - console.log('about to go into handle model selection'); await handleModelSelection(model); // Update local state after successful save - console.log('Checking selected model 2', model); setSelectedModel(model); } catch (error) { console.error('Error selecting model:', error); @@ -118,17 +110,16 @@ export function BaseModelsList({ return (
- {modelList.map((model) => { - console.log('A string easy to search for. selectedmodel', selectedModel, 'model', model); - return renderItem({ + {modelList.map((model) => + renderItem({ model, isSelected: selectedModel && selectedModel.name === model.name && selectedModel.provider === model.provider, onSelect: () => handleRadioChange(model), - }); - })} + }) + )}
); } From ddef96a20e06387960b1d376b8a54603d94fa1b1 Mon Sep 17 00:00:00 2001 From: Lily Delalande Date: Wed, 2 Apr 2025 15:46:09 -0400 Subject: [PATCH 4/4] fix imports --- .../settings_v2/models/model_list/BaseModelsList.tsx | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx b/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx index 118b42be4f7b..85e0641bb3da 100644 --- a/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx +++ b/ui/desktop/src/components/settings_v2/models/model_list/BaseModelsList.tsx @@ -1,10 +1,9 @@ import React, { useEffect, useState } from 'react'; -import Model, { getProviderMetadata } from '../modelInterface'; +import Model from '../modelInterface'; import { useRecentModels } from './recentModels'; import { changeModel, getCurrentModelAndProvider } from '../index'; import { useConfig } from '../../../ConfigContext'; -import { getExtensions } from '@/src/api'; -import ToastService, { toastInfo, toastService } from '../../../../toasts'; +import { toastInfo } from '../../../../toasts'; interface ModelRadioListProps { renderItem: (props: {