Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | 21x 357x 42x 21x 357x 357x | import { customInstance } from "@services/api";
import { useQuery } from "react-query";
import { TUnderwritingTasksStats } from "../types";
import {
GENERAL_STALE_TIME_15,
UNDERWRITING_CHALLENGE_API_KEYS,
} from "@features/Merchants/MerchantSidePanel/constants";
type Props = {
merchantId: number;
};
const useTasksStatsQuery = ({ merchantId }: Props) => {
return useQuery({
queryKey: [...UNDERWRITING_CHALLENGE_API_KEYS.GET_STATS, merchantId],
queryFn: async () =>
await customInstance({
url: `/merchants/${merchantId}/tasks/stats`,
method: "GET",
}),
enabled: Boolean(merchantId),
refetchOnMount: false,
refetchOnWindowFocus: false,
staleTime: GENERAL_STALE_TIME_15,
});
};
export const useGetUnderwritingTasksStats = ({ merchantId }: Props) => {
const { data: stats, isLoading: isStatsLoading, error, refetch } = useTasksStatsQuery({
merchantId,
});
return {
stats: stats as TUnderwritingTasksStats,
isLoading: isStatsLoading,
error,
refetch,
counts: {
completed: stats?.completedTasksCount || 0,
incomplete: stats?.readyForUnderwritingTasksCount || 0,
incomplete2: stats?.inProgressTasksCount || 0,
disabled: stats?.openTasksCount || 0,
hasData: !!stats && !isStatsLoading,
},
};
};
|