diff --git a/web/src/app/admin/connectors/google-drive/page.tsx b/web/src/app/admin/connectors/google-drive/page.tsx index 2dae6c572de0..20bb817fc4a6 100644 --- a/web/src/app/admin/connectors/google-drive/page.tsx +++ b/web/src/app/admin/connectors/google-drive/page.tsx @@ -3,7 +3,7 @@ import * as Yup from "yup"; import { GoogleDriveIcon } from "@/components/icons/icons"; import useSWR, { useSWRConfig } from "swr"; -import { errorHandlingFetcher } from "@/lib/fetcher"; +import { FetchError, errorHandlingFetcher } from "@/lib/fetcher"; import { ErrorCallout } from "@/components/ErrorCallout"; import { LoadingAnimation } from "@/components/Loading"; import { PopupSpec, usePopup } from "@/components/admin/connectors/Popup"; @@ -264,7 +264,7 @@ const Main = () => { data: appCredentialData, isLoading: isAppCredentialLoading, error: isAppCredentialError, - } = useSWR<{ client_id: string }>( + } = useSWR<{ client_id: string }, FetchError>( "/api/manage/admin/connector/google-drive/app-credential", errorHandlingFetcher ); @@ -272,7 +272,7 @@ const Main = () => { data: serviceAccountKeyData, isLoading: isServiceAccountKeyLoading, error: isServiceAccountKeyError, - } = useSWR<{ service_account_email: string }>( + } = useSWR<{ service_account_email: string }, FetchError>( "/api/manage/admin/connector/google-drive/service-account-key", errorHandlingFetcher ); @@ -280,7 +280,7 @@ const Main = () => { data: connectorIndexingStatuses, isLoading: isConnectorIndexingStatusesLoading, error: connectorIndexingStatusesError, - } = useSWR[]>( + } = useSWR[], FetchError>( "/api/manage/admin/connector/indexing-status", errorHandlingFetcher ); @@ -307,28 +307,19 @@ const Main = () => { } if (credentialsError || !credentialsData) { - return ( -
-
Failed to load credentials.
-
- ); + return ; } if (connectorIndexingStatusesError || !connectorIndexingStatuses) { - return ( -
-
Failed to load connectors.
-
- ); + return ; } - if (isAppCredentialError || isServiceAccountKeyError) { + if ( + (isAppCredentialError && isAppCredentialError.status !== 404) || + (isServiceAccountKeyError && isServiceAccountKeyError.status !== 404) + ) { return ( -
-
- Error loading Google Drive app credentials. Contact an administrator. -
-
+ ); } diff --git a/web/src/lib/fetcher.ts b/web/src/lib/fetcher.ts index 0248f5214e41..6acfd1fb1089 100644 --- a/web/src/lib/fetcher.ts +++ b/web/src/lib/fetcher.ts @@ -1,4 +1,4 @@ -class FetchError extends Error { +export class FetchError extends Error { status: number; info: any;