Move all integration queries/mutations to hooks

This commit is contained in:
Tuan Dang
2023-08-10 14:15:24 +07:00
parent 9963724a6a
commit 78802409bd
60 changed files with 448 additions and 300 deletions
@@ -1,4 +1,5 @@
export {
useAuthorizeIntegration,
useDeleteIntegrationAuth,
useGetIntegrationAuthApps,
useGetIntegrationAuthBitBucketWorkspaces,
@@ -7,4 +8,6 @@ export {
useGetIntegrationAuthRailwayEnvironments,
useGetIntegrationAuthRailwayServices,
useGetIntegrationAuthTeams,
useGetIntegrationAuthVercelBranches} from "./queries";
useGetIntegrationAuthVercelBranches,
useSaveIntegrationAccessToken
} from "./queries";
@@ -312,6 +312,69 @@ export const useGetIntegrationAuthNorthflankSecretGroups = ({
});
};
export const useAuthorizeIntegration = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: async ({
workspaceId,
code,
integration
}: {
workspaceId: string;
code: string;
integration: string;
}) => {
const { data: { integrationAuth } } = await apiRequest.post("/api/v1/integration-auth/oauth-token", {
workspaceId,
code,
integration
});
return integrationAuth;
},
onSuccess: (res) => {
queryClient.invalidateQueries(workspaceKeys.getWorkspaceAuthorization(res.workspace));
}
});
};
export const useSaveIntegrationAccessToken = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: async ({
workspaceId,
integration,
accessId,
accessToken,
url,
namespace
}: {
workspaceId: string | null;
integration: string | undefined;
accessId: string | null;
accessToken: string;
url: string | null;
namespace: string | null;
}) => {
const { data: { integrationAuth } } = await apiRequest.post("/api/v1/integration-auth/access-token", {
workspaceId,
integration,
accessId,
accessToken,
url,
namespace
});
return integrationAuth;
},
onSuccess: (res) => {
queryClient.invalidateQueries(workspaceKeys.getWorkspaceAuthorization(res.workspace));
}
});
};
export const useDeleteIntegrationAuth = () => {
const queryClient = useQueryClient();