import { ImportResumeDto, ResumeDto } from "@reactive-resume/dto"; import { useMutation } from "@tanstack/react-query"; import { AxiosResponse } from "axios"; import { axios } from "@/client/libs/axios"; import { queryClient } from "@/client/libs/query-client"; export const importResume = async (data: ImportResumeDto) => { const response = await axios.post, ImportResumeDto>( "/resume/import", data, ); return response.data; }; export const useImportResume = () => { const { error, isPending: loading, mutateAsync: importResumeFn, } = useMutation({ mutationFn: importResume, onSuccess: (data) => { queryClient.setQueryData(["resume", { id: data.id }], data); queryClient.setQueryData(["resumes"], (cache) => { if (!cache) return [data]; return [...cache, data]; }); }, }); return { importResume: importResumeFn, loading, error }; };