From b062e6840a371b603063221f62ec516af7eeca51 Mon Sep 17 00:00:00 2001 From: Vanalite Date: Mon, 29 Sep 2025 19:59:53 +0700 Subject: [PATCH] fix: Fix linter error --- ...DropdownModelProvider.displayName.test.tsx | 28 +++++++++++++------ web-app/src/containers/dialogs/EditModel.tsx | 13 ++++----- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/web-app/src/containers/__tests__/DropdownModelProvider.displayName.test.tsx b/web-app/src/containers/__tests__/DropdownModelProvider.displayName.test.tsx index 0921359bc..38783dfab 100644 --- a/web-app/src/containers/__tests__/DropdownModelProvider.displayName.test.tsx +++ b/web-app/src/containers/__tests__/DropdownModelProvider.displayName.test.tsx @@ -14,7 +14,7 @@ type ModelProvider = { displayName?: string capabilities: string[] }> - settings: any[] + settings: unknown[] } type Model = { @@ -23,6 +23,16 @@ type Model = { capabilities?: string[] } +type MockHookReturn = { + providers: ModelProvider[] + selectedProvider: string + selectedModel: Model + getProviderByName: (name: string) => ModelProvider | undefined + selectModelProvider: () => void + getModelBy: (id: string) => Model | undefined + updateProvider: () => void +} + // Mock the dependencies vi.mock('@/hooks/useModelProvider', () => ({ useModelProvider: vi.fn(), @@ -142,10 +152,10 @@ describe('DropdownModelProvider - Display Name Integration', () => { ), selectModelProvider: vi.fn(), getModelBy: vi.fn((id: string) => - mockProviders[0].models.find((m: any) => m.id === id) + mockProviders[0].models.find((m: Model) => m.id === id) ), updateProvider: vi.fn(), - } as any) + } as MockHookReturn) }) it('should display custom model name in the trigger button', () => { @@ -167,10 +177,10 @@ describe('DropdownModelProvider - Display Name Integration', () => { ), selectModelProvider: vi.fn(), getModelBy: vi.fn((id: string) => - mockProviders[0].models.find((m: any) => m.id === id) + mockProviders[0].models.find((m: Model) => m.id === id) ), updateProvider: vi.fn(), - } as any) + } as MockHookReturn) render() @@ -219,10 +229,10 @@ describe('DropdownModelProvider - Display Name Integration', () => { ), selectModelProvider: mockSelectModelProvider, getModelBy: vi.fn((id: string) => - mockProviders[0].models.find((m: any) => m.id === id) + mockProviders[0].models.find((m: Model) => m.id === id) ), updateProvider: vi.fn(), - } as any) + } as MockHookReturn) render() @@ -253,10 +263,10 @@ describe('DropdownModelProvider - Display Name Integration', () => { ), selectModelProvider: vi.fn(), getModelBy: vi.fn((id: string) => - mockProviders[0].models.find((m: any) => m.id === id) + mockProviders[0].models.find((m: Model) => m.id === id) ), updateProvider: vi.fn(), - } as any) + } as MockHookReturn) rerender() // Check trigger now shows Short Name diff --git a/web-app/src/containers/dialogs/EditModel.tsx b/web-app/src/containers/dialogs/EditModel.tsx index 2b9cc098a..67576fbd6 100644 --- a/web-app/src/containers/dialogs/EditModel.tsx +++ b/web-app/src/containers/dialogs/EditModel.tsx @@ -23,7 +23,6 @@ import { } from '@tabler/icons-react' import { useState, useEffect } from 'react' import { useTranslation } from '@/i18n/react-i18next-compat' -import { useServiceHub } from '@/hooks/useServiceHub' import { toast } from 'sonner' // No need to define our own interface, we'll use the existing Model type @@ -37,7 +36,7 @@ export const DialogEditModel = ({ modelId, }: DialogEditModelProps) => { const { t } = useTranslation() - const { updateProvider, setProviders } = useModelProvider() + const { updateProvider } = useModelProvider() const [selectedModelId, setSelectedModelId] = useState('') const [displayName, setDisplayName] = useState('') const [originalDisplayName, setOriginalDisplayName] = useState('') @@ -46,7 +45,6 @@ export const DialogEditModel = ({ >({}) const [isOpen, setIsOpen] = useState(false) const [isLoading, setIsLoading] = useState(false) - const serviceHub = useServiceHub() const [capabilities, setCapabilities] = useState>({ completion: false, vision: false, @@ -82,8 +80,7 @@ export const DialogEditModel = ({ // Get the currently selected model const selectedModel = provider.models.find( - // eslint-disable-next-line @typescript-eslint/no-explicit-any - (m: any) => m.id === selectedModelId + (m: Model) => m.id === selectedModelId ) // Initialize capabilities and display name from selected model @@ -99,7 +96,7 @@ export const DialogEditModel = ({ reasoning: modelCapabilities.includes('reasoning'), }) // Use existing displayName if available, otherwise fall back to model ID - const displayNameValue = (selectedModel as any).displayName || selectedModel.id + const displayNameValue = (selectedModel as Model & { displayName?: string }).displayName || selectedModel.id setDisplayName(displayNameValue) setOriginalDisplayName(displayNameValue) @@ -147,7 +144,7 @@ export const DialogEditModel = ({ // Update display name if changed if (displayName !== originalDisplayName) { // Update the model in the provider models array with displayName - updatedModels = updatedModels.map((m: any) => { + updatedModels = updatedModels.map((m: Model) => { if (m.id === selectedModelId) { return { ...m, @@ -168,7 +165,7 @@ export const DialogEditModel = ({ .map(([capName]) => capName) // Find and update the model in the provider - updatedModels = updatedModels.map((m: any) => { + updatedModels = updatedModels.map((m: Model) => { if (m.id === selectedModelId) { return { ...m,