From 1866ce42407fc01d8e44cfa2ffb2997525f63861 Mon Sep 17 00:00:00 2001 From: Sheen Capadngan Date: Wed, 31 Jul 2024 16:48:48 +0800 Subject: [PATCH] misc: moved get project secrets error handling to hook --- frontend/src/hooks/api/secrets/queries.tsx | 10 ++++++++++ .../views/SecretMainPage/SecretMainPage.tsx | 19 +------------------ 2 files changed, 11 insertions(+), 18 deletions(-) diff --git a/frontend/src/hooks/api/secrets/queries.tsx b/frontend/src/hooks/api/secrets/queries.tsx index 81277cdff..8d0961ca5 100644 --- a/frontend/src/hooks/api/secrets/queries.tsx +++ b/frontend/src/hooks/api/secrets/queries.tsx @@ -108,6 +108,16 @@ export const useGetProjectSecrets = ({ enabled: Boolean(workspaceId && environment) && (options?.enabled ?? true), queryKey: secretKeys.getProjectSecret({ workspaceId, environment, secretPath }), queryFn: async () => fetchProjectSecrets({ workspaceId, environment, secretPath }), + onError: (error) => { + if (axios.isAxiosError(error)) { + const serverResponse = error.response?.data as { message: string }; + createNotification({ + title: "Error fetching secrets", + type: "error", + text: serverResponse.message + }); + } + }, select: ({ secrets }) => mergePersonalSecrets(secrets) }); diff --git a/frontend/src/views/SecretMainPage/SecretMainPage.tsx b/frontend/src/views/SecretMainPage/SecretMainPage.tsx index 069c81440..a86d5d0d6 100644 --- a/frontend/src/views/SecretMainPage/SecretMainPage.tsx +++ b/frontend/src/views/SecretMainPage/SecretMainPage.tsx @@ -4,7 +4,6 @@ import { useRouter } from "next/router"; import { subject } from "@casl/ability"; import { faArrowDown, faArrowUp } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import axios from "axios"; import NavHeader from "@app/components/navigation/NavHeader"; import { createNotification } from "@app/components/notifications"; @@ -94,12 +93,7 @@ export const SecretMainPage = () => { }, [isWorkspaceLoading, currentWorkspace, environment, router.isReady]); // fetch secrets - const { - data: secrets, - isLoading: isSecretsLoading, - isError: isErrorFetchingSecrets, - error: fetchSecretsError - } = useGetProjectSecrets({ + const { data: secrets, isLoading: isSecretsLoading } = useGetProjectSecrets({ environment, workspaceId, secretPath, @@ -108,17 +102,6 @@ export const SecretMainPage = () => { } }); - if (isErrorFetchingSecrets) { - if (axios.isAxiosError(fetchSecretsError)) { - const serverResponse = fetchSecretsError.response?.data as { message: string }; - createNotification({ - title: "Error fetching secrets", - type: "error", - text: serverResponse.message - }); - } - } - // fetch folders const { data: folders, isLoading: isFoldersLoading } = useGetProjectFolders({ projectId: workspaceId,