23 lines
696 B
TypeScript
Executable File
23 lines
696 B
TypeScript
Executable File
import { useMutation } from '@tanstack/react-query';
|
|
import { toast } from 'sonner';
|
|
import { axiosClient } from '#infrastructure/axios';
|
|
import { ErrorResponse, SuccessMutationResponse } from '#infrastructure/reactQuery';
|
|
import { MODULE_API_ENDPOINT } from '../config/meta';
|
|
|
|
export const useUpdate = () => {
|
|
return useMutation<
|
|
SuccessMutationResponse,
|
|
ErrorResponse,
|
|
{ id: number } & Record<string, unknown>
|
|
>({
|
|
mutationFn: async (payload) => {
|
|
return axiosClient
|
|
.put<SuccessMutationResponse>(`${MODULE_API_ENDPOINT}/${payload.id}`, payload)
|
|
.then((data) => data.data);
|
|
},
|
|
onSuccess(data) {
|
|
toast.success(data.message);
|
|
}
|
|
});
|
|
};
|