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 +1,5 @@
export { useDeleteIntegration,useGetCloudIntegrations } from "./queries";
export {
useCreateIntegration,
useDeleteIntegration,
useGetCloudIntegrations
} from "./queries";
@@ -23,6 +23,63 @@ export const useGetCloudIntegrations = () =>
queryFn: () => fetchIntegrations()
});
export const useCreateIntegration = () => {
const queryClient = useQueryClient();
return useMutation({
mutationFn: async ({
integrationAuthId,
isActive,
app,
appId,
sourceEnvironment,
targetEnvironment,
targetEnvironmentId,
targetService,
targetServiceId,
owner,
path,
region,
secretPath
}: {
integrationAuthId: string;
isActive: boolean;
secretPath: string;
app: string | null;
appId: string | null;
sourceEnvironment: string;
targetEnvironment: string | null;
targetEnvironmentId: string | null;
targetService: string | null;
targetServiceId: string | null;
owner: string | null;
path: string | null;
region: string | null;
}) => {
const { data: { integration } } = await apiRequest.post("/api/v1/integration", {
integrationAuthId,
isActive,
app,
appId,
sourceEnvironment,
targetEnvironment,
targetEnvironmentId,
targetService,
targetServiceId,
owner,
path,
region,
secretPath
});
return integration;
},
onSuccess: (res) => {
queryClient.invalidateQueries(workspaceKeys.getWorkspaceIntegrations(res.workspace));
}
});
};
export const useDeleteIntegration = () => {
const queryClient = useQueryClient();