From 31898192b2a86dd3807036a92df8c1799779c7c5 Mon Sep 17 00:00:00 2001 From: Shroominic Date: Thu, 29 Jan 2026 13:05:56 +0800 Subject: [PATCH] added missing delete button for custom models --- ui/app/providers/page.tsx | 41 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/ui/app/providers/page.tsx b/ui/app/providers/page.tsx index f4a65591..48b314b4 100644 --- a/ui/app/providers/page.tsx +++ b/ui/app/providers/page.tsx @@ -484,6 +484,25 @@ export default function ProvidersPage() { }, }); + const deleteModelMutation = useMutation({ + mutationFn: ({ + providerId, + modelId, + }: { + providerId: number; + modelId: string; + }) => AdminService.deleteProviderModel(providerId, modelId), + onSuccess: (_, variables) => { + queryClient.invalidateQueries({ + queryKey: ['provider-models', variables.providerId], + }); + toast.success('Model deleted successfully'); + }, + onError: (error: Error) => { + toast.error(`Failed to delete model: ${error.message}`); + }, + }); + const handleCreateAccount = async () => { setIsCreatingAccount(true); try { @@ -562,6 +581,12 @@ export default function ProvidersPage() { } }; + const handleDeleteModel = (providerId: number, modelId: string) => { + if (confirm('Are you sure you want to delete this model?')) { + deleteModelMutation.mutate({ providerId, modelId }); + } + }; + const getDefaultBaseUrl = (type: string) => { const providerType = providerTypes.find((pt) => pt.id === type); return providerType?.default_base_url || ''; @@ -1048,6 +1073,22 @@ export default function ProvidersPage() { > + ))}