Files
automatisch/packages/web/src/hooks/useAdminUpdateUser.js
2024-09-20 13:11:46 +03:00

35 lines
935 B
JavaScript

import { useMutation, useQueryClient } from '@tanstack/react-query';
import api from 'helpers/api';
import useEnqueueSnackbar from 'hooks/useEnqueueSnackbar';
import useFormatMessage from 'hooks/useFormatMessage';
export default function useAdminUpdateUser(userId) {
const queryClient = useQueryClient();
const enqueueSnackbar = useEnqueueSnackbar();
const formatMessage = useFormatMessage();
const query = useMutation({
mutationFn: async (payload) => {
const { data } = await api.patch(`/v1/admin/users/${userId}`, payload);
return data;
},
onSuccess: () => {
queryClient.invalidateQueries({
queryKey: ['admin', 'users'],
});
},
onError: () => {
enqueueSnackbar(formatMessage('editUser.error'), {
variant: 'error',
persist: true,
SnackbarProps: {
'data-test': 'snackbar-error',
},
});
},
});
return query;
}