🚨(frontend) adapt signatures to @tanstack/react-query to >5.90

Recent upgrade of @tanstack/react-query to
version >5.90 introduced a breaking change in the
onSuccess and onError callback signatures for
the useMutation hook.
The context parameter has been replaced with an
onMutateResult parameter, which provides
information about the result of the
onMutate callback.
This commit is contained in:
Anthony LC
2025-10-15 17:08:31 +02:00
parent 5ebdf4b4d4
commit 2003e41c22
9 changed files with 34 additions and 34 deletions

View File

@@ -80,7 +80,7 @@ export function useDuplicateDoc(options?: DuplicateDocOptions) {
return await duplicateDoc(variables);
},
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
void queryClient.resetQueries({
queryKey: [KEY_LIST_DOC],
});
@@ -89,14 +89,14 @@ export function useDuplicateDoc(options?: DuplicateDocOptions) {
duration: 3000,
});
void options?.onSuccess?.(data, variables, context);
void options?.onSuccess?.(data, variables, onMutateResult, context);
},
onError: (error, variables, context) => {
onError: (error, variables, onMutateResult, context) => {
toast(t('Failed to duplicate the document...'), VariantType.ERROR, {
duration: 3000,
});
void options?.onError?.(error, variables, context);
void options?.onError?.(error, variables, onMutateResult, context);
},
});
}

View File

@@ -33,19 +33,19 @@ export const useRemoveDoc = ({
return useMutation<void, APIError, RemoveDocProps>({
mutationFn: removeDoc,
...options,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
listInvalidQueries?.forEach((queryKey) => {
void queryClient.invalidateQueries({
queryKey: [queryKey],
});
});
if (options?.onSuccess) {
void options.onSuccess(data, variables, context);
void options.onSuccess(data, variables, onMutateResult, context);
}
},
onError: (error, variables, context) => {
onError: (error, variables, onMutateResult, context) => {
if (options?.onError) {
void options.onError(error, variables, context);
void options.onError(error, variables, onMutateResult, context);
}
},
});

View File

@@ -36,19 +36,19 @@ export const useRestoreDoc = ({
return useMutation<void, APIError, RestoreDocProps>({
mutationFn: restoreDoc,
...options,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
listInvalidQueries?.forEach((queryKey) => {
void queryClient.invalidateQueries({
queryKey: [queryKey],
});
});
if (options?.onSuccess) {
void options.onSuccess(data, variables, context);
void options.onSuccess(data, variables, onMutateResult, context);
}
},
onError: (error, variables, context) => {
onError: (error, variables, onMutateResult, context) => {
if (options?.onError) {
void options.onError(error, variables, context);
void options.onError(error, variables, onMutateResult, context);
}
},
});

View File

@@ -42,7 +42,7 @@ export function useUpdateDoc(queryConfig?: UseUpdateDoc) {
return useMutation<Doc, APIError, UpdateDocParams>({
mutationFn: updateDoc,
...queryConfig,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
queryConfig?.listInvalideQueries?.forEach((queryKey) => {
void queryClient.invalidateQueries({
queryKey: [queryKey],
@@ -50,10 +50,10 @@ export function useUpdateDoc(queryConfig?: UseUpdateDoc) {
});
if (queryConfig?.onSuccess) {
void queryConfig.onSuccess(data, variables, context);
void queryConfig.onSuccess(data, variables, onMutateResult, context);
}
},
onError: (error, variables, context) => {
onError: (error, variables, onMutateResult, context) => {
// If error it means the user is probably not allowed to edit the doc
// so we invalidate the canEdit query to update the UI accordingly
void queryClient.invalidateQueries({
@@ -61,7 +61,7 @@ export function useUpdateDoc(queryConfig?: UseUpdateDoc) {
});
if (queryConfig?.onError) {
queryConfig.onError(error, variables, context);
queryConfig.onError(error, variables, onMutateResult, context);
}
},
});

View File

@@ -45,7 +45,7 @@ export const useDeleteDocAccess = (options?: UseDeleteDocAccessOptions) => {
return useMutation<void, APIError, DeleteDocAccessProps>({
mutationFn: deleteDocAccess,
...options,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
void queryClient.invalidateQueries({
queryKey: [KEY_LIST_DOC_ACCESSES],
});
@@ -63,7 +63,7 @@ export const useDeleteDocAccess = (options?: UseDeleteDocAccessOptions) => {
queryKey: [KEY_LIST_USER],
});
if (options?.onSuccess) {
void options.onSuccess(data, variables, context);
void options.onSuccess(data, variables, onMutateResult, context);
}
},
});

View File

@@ -53,17 +53,17 @@ export const useDeleteDocInvitation = (
>({
mutationFn: deleteDocInvitation,
...options,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
void queryClient.invalidateQueries({
queryKey: [KEY_LIST_DOC_INVITATIONS],
});
if (options?.onSuccess) {
void options.onSuccess(data, variables, context);
void options.onSuccess(data, variables, onMutateResult, context);
}
},
onError: (error, variables, context) => {
onError: (error, variables, onMutateResult, context) => {
if (options?.onError) {
void options.onError(error, variables, context);
void options.onError(error, variables, onMutateResult, context);
}
},
});

View File

@@ -59,12 +59,12 @@ export function useCreateDocAccessRequest(
return useMutation<void, APIError, CreateDocAccessRequestParams>({
mutationFn: createDocAccessRequest,
...options,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
void queryClient.resetQueries({
queryKey: [KEY_LIST_DOC_ACCESS_REQUESTS],
});
void options?.onSuccess?.(data, variables, context);
void options?.onSuccess?.(data, variables, onMutateResult, context);
},
});
}
@@ -169,7 +169,7 @@ export const useAcceptDocAccessRequest = (
return useMutation<void, APIError, acceptDocAccessRequestsParams>({
mutationFn: acceptDocAccessRequests,
...options,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
void queryClient.invalidateQueries({
queryKey: [KEY_LIST_DOC_ACCESSES],
});
@@ -179,7 +179,7 @@ export const useAcceptDocAccessRequest = (
});
if (options?.onSuccess) {
void options.onSuccess(data, variables, context);
void options.onSuccess(data, variables, onMutateResult, context);
}
},
});
@@ -223,13 +223,13 @@ export const useDeleteDocAccessRequest = (
return useMutation<void, APIError, DeleteDocAccessRequestParams>({
mutationFn: deleteDocAccessRequest,
...options,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
void queryClient.invalidateQueries({
queryKey: [KEY_LIST_DOC_ACCESS_REQUESTS],
});
if (options?.onSuccess) {
void options.onSuccess(data, variables, context);
void options.onSuccess(data, variables, onMutateResult, context);
}
},
});

View File

@@ -50,7 +50,7 @@ export const useUpdateDocAccess = (options?: UseUpdateDocAccessOptions) => {
return useMutation<Access, APIError, UpdateDocAccessProps>({
mutationFn: updateDocAccess,
...options,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
void queryClient.invalidateQueries({
queryKey: [KEY_LIST_DOC_ACCESSES],
});
@@ -65,7 +65,7 @@ export const useUpdateDocAccess = (options?: UseUpdateDocAccessOptions) => {
queryKey: [KEY_LIST_DOC],
});
if (options?.onSuccess) {
void options.onSuccess(data, variables, context);
void options.onSuccess(data, variables, onMutateResult, context);
}
},
});

View File

@@ -62,17 +62,17 @@ export const useUpdateDocInvitation = (
>({
mutationFn: updateDocInvitation,
...options,
onSuccess: (data, variables, context) => {
onSuccess: (data, variables, onMutateResult, context) => {
void queryClient.invalidateQueries({
queryKey: [KEY_LIST_DOC_INVITATIONS],
});
if (options?.onSuccess) {
void options.onSuccess(data, variables, context);
void options.onSuccess(data, variables, onMutateResult, context);
}
},
onError: (error, variables, context) => {
onError: (error, variables, onMutateResult, context) => {
if (options?.onError) {
void options.onError(error, variables, context);
void options.onError(error, variables, onMutateResult, context);
}
},
});