import type { ServiceUserUserInfoData } from '@/client'; import { useMutation, useQueryClient } from '@tanstack/react-query'; import { getUserInfoByUserIdQueryKey, getUserInfoQueryKey, patchUserUpdateMutation } from '@/client/@tanstack/react-query.gen'; export function useUpdateUser() { const queryClient = useQueryClient(); const data: { data: ServiceUserUserInfoData | undefined } | undefined = queryClient.getQueryData(getUserInfoQueryKey()); return useMutation({ ...patchUserUpdateMutation(), onSuccess: async () => { await queryClient.invalidateQueries({ queryKey: getUserInfoQueryKey() }); if ((data?.data?.user_id) != null) { await queryClient.invalidateQueries({ queryKey: getUserInfoByUserIdQueryKey({ path: { user_id: data.data.user_id } }) }); } }, }); }