From 9a68631d39ff2448ddafb4af68d0f15f6a85dee6 Mon Sep 17 00:00:00 2001 From: lugnicca Date: Fri, 22 Aug 2025 03:12:37 +0200 Subject: [PATCH] refactor: more modular error handling in fetchModelsFromProvider function --- web-app/src/services/providers.ts | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/web-app/src/services/providers.ts b/web-app/src/services/providers.ts index 748aed322..a036c9148 100644 --- a/web-app/src/services/providers.ts +++ b/web-app/src/services/providers.ts @@ -182,13 +182,16 @@ export const fetchModelsFromProvider = async ( } catch (error) { console.error('Error fetching models from provider:', error) - if (error instanceof Error && ( - error.message.includes('Authentication failed') || - error.message.includes('Access forbidden') || - error.message.includes('Models endpoint not found') || - error.message.includes('Failed to fetch models from') - )) { - throw error + const structuredErrorPrefixes = [ + 'Authentication failed', + 'Access forbidden', + 'Models endpoint not found', + 'Failed to fetch models from' + ] + + if (error instanceof Error && + structuredErrorPrefixes.some(prefix => (error as Error).message.startsWith(prefix))) { + throw new Error(error.message) } // Provide helpful error message for network issues