Fix deletion in sidebar

This commit is contained in:
Gregory Schier
2024-02-25 12:56:57 -08:00
parent 520ff0f68c
commit 31b5032817
2 changed files with 36 additions and 19 deletions

View File

@@ -1,11 +1,21 @@
import { useMutation } from '@tanstack/react-query';
import type { HttpRequest } from '../lib/models';
import type { GrpcRequest, HttpRequest } from '../lib/models';
import { useDeleteAnyGrpcRequest } from './useDeleteAnyGrpcRequest';
import { useDeleteAnyHttpRequest } from './useDeleteAnyHttpRequest';
export function useDeleteRequest(id: string | null) {
const deleteAnyRequest = useDeleteAnyHttpRequest();
export function useDeleteRequest(request: HttpRequest | GrpcRequest | null) {
const deleteAnyHttpRequest = useDeleteAnyHttpRequest();
const deleteAnyGrpcRequest = useDeleteAnyGrpcRequest();
return useMutation<HttpRequest | null, string>({
mutationFn: () => deleteAnyRequest.mutateAsync(id ?? 'n/a'),
return useMutation<void, string>({
mutationFn: async () => {
if (request?.model === 'http_request') {
await deleteAnyHttpRequest.mutateAsync(request.id);
} else if (request?.model === 'grpc_request') {
await deleteAnyGrpcRequest.mutateAsync(request.id);
} else {
// Request is null
}
},
});
}