Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { useMutation, useQueryClient } from '@tanstack/react-query';
import { useMutation } from '@tanstack/react-query';
import { useNavigate } from 'react-router-dom';
import { useAuth } from '@/modules/auth/hooks/use-auth';
import { browserAuthProvider } from '@/shared/contexts/browser-auth-provider';
Expand All @@ -8,7 +8,6 @@ import { routerPaths } from '@/router/router-paths';
import { authService } from '../authorized-http-api-client';

export function useAccessTokenRefresh() {
const queryClient = useQueryClient();
const navigate = useNavigate();
const { signOut: web2SignOut, user: web2User } = useAuth();

Expand Down Expand Up @@ -41,12 +40,6 @@ export function useAccessTokenRefresh() {
});
}
},
onSuccess: async () => {
await queryClient.invalidateQueries();
},
onError: async () => {
await queryClient.invalidateQueries();
},
scope: {
id: 'refresh-access-token',
},
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { useMutation, useQueryClient } from '@tanstack/react-query';
import { useMutation } from '@tanstack/react-query';
import { useNavigate } from 'react-router-dom';
import { routerPaths } from '@/router/router-paths';
import { env } from '@/shared/env';
Expand All @@ -13,18 +13,13 @@ function signInMutationFn(data: SignInDto) {
}

export function useSignInMutation() {
const queryClient = useQueryClient();
const navigate = useNavigate();

return useMutation({
mutationFn: signInMutationFn,
onSuccess: async () => {
onSuccess: () => {
navigate(routerPaths.worker.profile);
window.location.reload();
await queryClient.invalidateQueries();
},
onError: async () => {
await queryClient.invalidateQueries();
},
});
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { useMutation, useQueryClient } from '@tanstack/react-query';
import { useMutation } from '@tanstack/react-query';
import { useNavigate } from 'react-router-dom';
import { ethers } from 'ethers';
import { stakingStake } from '@/modules/smart-contracts/Staking/staking-stake';
Expand Down Expand Up @@ -62,7 +62,6 @@ export function useAddStake() {
} = useConnectedWallet();
const { data: HMTDecimals } = useHMTokenDecimals();

const queryClient = useQueryClient();
const navigate = useNavigate();

return useMutation({
Expand All @@ -75,12 +74,8 @@ export function useAddStake() {
chainId,
decimals: HMTDecimals,
}),
onSuccess: async () => {
onSuccess: () => {
navigate(routerPaths.operator.addKeys);
await queryClient.invalidateQueries();
},
onError: async () => {
await queryClient.invalidateQueries();
},
mutationKey: ['addStake', address],
});
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,4 @@
import {
useMutation,
useMutationState,
useQueryClient,
} from '@tanstack/react-query';
import { useMutation, useMutationState } from '@tanstack/react-query';
import last from 'lodash/last';
import { useNavigate } from 'react-router-dom';
import type { JsonRpcSigner } from 'ethers';
Expand Down Expand Up @@ -50,7 +46,7 @@ export function useEditExistingKeysMutation() {
chainId,
web3ProviderMutation: { data: web3Data },
} = useConnectedWallet();
const queryClient = useQueryClient();

const navigate = useNavigate();

return useMutation({
Expand All @@ -60,12 +56,8 @@ export function useEditExistingKeysMutation() {
chainId,
signer: web3Data?.signer,
}),
onSuccess: async () => {
onSuccess: () => {
navigate(routerPaths.operator.editExistingKeysSuccess);
await queryClient.invalidateQueries();
},
onError: async () => {
await queryClient.invalidateQueries();
},
mutationKey: ['editKeys', address],
});
Expand Down
Original file line number Diff line number Diff line change
@@ -1,25 +1,20 @@
import { useMutation, useQueryClient } from '@tanstack/react-query';
import { useMutation } from '@tanstack/react-query';
import { useNavigate } from 'react-router-dom';
import { routerPaths } from '@/router/router-paths';
import * as signupService from '@/modules/signup/services/signup.service';
import { type SignUpDto } from '../schema';

export function useSignUpMutation() {
const queryClient = useQueryClient();
const navigate = useNavigate();

return useMutation({
mutationFn: async (data: Omit<SignUpDto, 'confirmPassword'>) => {
return signupService.workerSignUp(data);
},
onSuccess: async (_, { email }) => {
onSuccess: (_, { email }) => {
navigate(routerPaths.worker.verifyEmail, {
state: { routerState: { email } },
});
await queryClient.invalidateQueries();
},
onError: async () => {
await queryClient.invalidateQueries();
},
});
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { useMutation, useQueryClient } from '@tanstack/react-query';
import { useMutation } from '@tanstack/react-query';
import { t } from 'i18next';
import { useAuth } from '@/modules/auth/hooks/use-auth';
import { type ResendEmailVerificationDto } from '../schemas';
Expand All @@ -20,18 +20,11 @@ async function resendEmailVerificationMutationFn(
const resendEmailVerificationKey = 'resendEmailVerification';

export function useResendEmailVerificationWorkerMutation() {
const queryClient = useQueryClient();
const { user } = useAuth();

return useMutation({
mutationFn: (dto: ResendEmailVerificationDto) =>
resendEmailVerificationMutationFn(dto, Boolean(user)),
onSuccess: async () => {
await queryClient.invalidateQueries();
},
onError: async () => {
await queryClient.invalidateQueries();
},
mutationKey: [resendEmailVerificationKey],
});
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
import { useMutation, useQueryClient } from '@tanstack/react-query';
import { useMutation } from '@tanstack/react-query';
import { useNavigate } from 'react-router-dom';
import { routerPaths } from '@/router/router-paths';
import { useAccessTokenRefresh } from '@/api/hooks/use-access-token-refresh';
import * as hCaptchaLabelingService from '../services/hcaptcha-labeling.service';

export function useEnableHCaptchaLabelingMutation() {
const queryClient = useQueryClient();
const navigate = useNavigate();
const { refreshAccessTokenAsync } = useAccessTokenRefresh();
const mutation = useMutation({
Expand All @@ -16,12 +15,8 @@ export function useEnableHCaptchaLabelingMutation() {

return result;
},
onSuccess: async () => {
onSuccess: () => {
navigate(routerPaths.worker.HcaptchaLabeling);
await queryClient.invalidateQueries();
},
onError: async () => {
await queryClient.invalidateQueries();
},
});

Expand Down
Original file line number Diff line number Diff line change
@@ -1,30 +1,20 @@
import { useMutation, useQueryClient } from '@tanstack/react-query';
import { useMutation } from '@tanstack/react-query';
import type { ResponseError } from '@/shared/types/global.type';
import * as hCaptchaLabelingService from '../services/hcaptcha-labeling.service';
import { type VerifyHCaptchaLabelingBody } from '../types';

export function useSolveHCaptchaMutation(callbacks?: {
onSuccess?: (() => void) | (() => Promise<void>);
onError?:
| ((error: ResponseError) => void)
| ((error: ResponseError) => Promise<void>);
export function useSolveHCaptchaMutation(callbacks: {
onSuccess: () => void | Promise<void>;
onError: (error: ResponseError) => void | Promise<void>;
}) {
const queryClient = useQueryClient();

return useMutation({
mutationFn: async (data: VerifyHCaptchaLabelingBody) =>
hCaptchaLabelingService.verifyHCaptchaLabeling(data),
onSuccess: async () => {
if (callbacks?.onSuccess) {
await callbacks.onSuccess();
}
await queryClient.invalidateQueries();
await callbacks.onSuccess();
},
onError: async (error) => {
if (callbacks?.onError) {
await callbacks.onError(error);
}
await queryClient.invalidateQueries();
await callbacks.onError(error);
},
});
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { useMutation, useQueryClient } from '@tanstack/react-query';
import { useMutation } from '@tanstack/react-query';
import { t } from 'i18next';
import { useAuthenticatedUser } from '@/modules/auth/hooks/use-authenticated-user';
import { useAccessTokenRefresh } from '@/api/hooks/use-access-token-refresh';
Expand All @@ -9,12 +9,11 @@ import { PrepareSignatureType } from '@/shared/services/signature.service';
import * as profileService from '../profile/services/profile.service';

interface RegisterAddressCallbacks {
onSuccess?: () => void | Promise<void>;
onError?: (error: ResponseError) => void | Promise<void>;
onSuccess: () => void | Promise<void>;
onError: (error: ResponseError) => void | Promise<void>;
}

function useRegisterAddressMutation(callbacks?: RegisterAddressCallbacks) {
const queryClient = useQueryClient();
function useRegisterAddressMutation(callbacks: RegisterAddressCallbacks) {
const { user, updateUserData } = useAuthenticatedUser();
const { refreshAccessTokenAsync } = useAccessTokenRefresh();
const { address, chainId, signMessage } = useWalletConnect();
Expand Down Expand Up @@ -45,29 +44,19 @@ function useRegisterAddressMutation(callbacks?: RegisterAddressCallbacks) {
});
};

const onSuccess = async () => {
if (callbacks?.onSuccess) {
await callbacks.onSuccess();
}
await queryClient.invalidateQueries();
};

const onError = async (error: ResponseError) => {
if (callbacks?.onError) {
await callbacks.onError(error);
}
await queryClient.invalidateQueries();
};

return useMutation({
mutationFn,
onSuccess,
onError,
onSuccess: async () => {
await callbacks.onSuccess();
},
onError: async (error: ResponseError) => {
await callbacks.onError(error);
},
mutationKey: [user.wallet_address],
});
}

export function useRegisterAddress(callbacks?: RegisterAddressCallbacks) {
export function useRegisterAddress(callbacks: RegisterAddressCallbacks) {
const mutation = useRegisterAddressMutation(callbacks);

return {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,5 @@
import { z } from 'zod';
import {
type MutationKey,
useMutation,
useQueryClient,
} from '@tanstack/react-query';
import { type MutationKey, useMutation } from '@tanstack/react-query';
import * as jobsService from '../../services/jobs.service';
import { type AssignJobBody } from '../../types';

Expand All @@ -16,16 +12,12 @@ export function useAssignJobMutation(
},
mutationKey?: MutationKey
) {
const queryClient = useQueryClient();

return useMutation({
mutationFn: async (data: AssignJobBody) => jobsService.assignJob(data),
onSuccess: async () => {
await queryClient.invalidateQueries();
onSuccess: () => {
callbacks?.onSuccess();
},
onError: async (error) => {
await queryClient.invalidateQueries();
onError: (error) => {
callbacks?.onError(error);
},
mutationKey,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ export function useGetMyJobsData() {
};

return useQuery({
queryKey: ['myJobs', queryParams],
queryKey: ['fetchMyJobs', queryParams],
queryFn: async ({ signal }) =>
jobsService.fetchMyJobs({ queryParams, signal }),
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,12 @@ export function useRefreshJobsMutation(callbacks?: {
if (callbacks?.onSuccess) {
void callbacks.onSuccess();
}
await queryClient.invalidateQueries();
await queryClient.invalidateQueries({ queryKey: ['fetchMyJobs'] });
},
onError: async (error) => {
onError: (error) => {
if (callbacks?.onError) {
void callbacks.onError(error);
}
await queryClient.invalidateQueries();
},
});
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,12 @@ export function useResignJobMutation(callbacks?: {
if (callbacks?.onSuccess) {
void callbacks.onSuccess();
}
await queryClient.invalidateQueries();
await queryClient.invalidateQueries({ queryKey: ['fetchMyJobs'] });
},
onError: async (error) => {
onError: (error) => {
if (callbacks?.onError) {
void callbacks.onError(error);
}
await queryClient.invalidateQueries();
},
});
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,9 @@ export function useExchangeOracleRegistrationMutation() {
mutationFn: async (data: RegistrationInExchangeOracleDto) =>
oracleRegistrationService.registerInExchangeOracle(data),
onSuccess: async () => {
await queryClient.invalidateQueries();
},
onError: async () => {
await queryClient.invalidateQueries();
await queryClient.invalidateQueries({
queryKey: ['getRegistrationDataInOracles'],
});
},
});
}
Original file line number Diff line number Diff line change
@@ -1,19 +1,12 @@
import { useMutation, useQueryClient } from '@tanstack/react-query';
import { useMutation } from '@tanstack/react-query';
import { useAuthenticatedUser } from '@/modules/auth/hooks/use-authenticated-user';
import * as profileService from '../services/profile.service';

export function useIdvStartMutation() {
const queryClient = useQueryClient();
const { user } = useAuthenticatedUser();

return useMutation({
mutationFn: async () => profileService.startIdv(),
onError: () => {
void queryClient.invalidateQueries();
},
onSuccess: () => {
void queryClient.invalidateQueries();
},
mutationKey: ['idvStart', user.email],
});
}
Loading
Loading