Newer
Older
taehui / qwilight-fe / src / hof / useGetAbility9KHOF.ts
@Taehui Taehui on 16 Mar 954 bytes 2024-03-17 오전 1:28
import { useQuery } from "@tanstack/react-query";
import { useLocation } from "react-router-dom";
import { sprintf } from "sprintf-js";

import { wwwAXIOS } from "@/Www";
import { GetHOFAPI } from "@/wwwAPI";
import { useHOFStore } from "@/Stores";
import { formatText } from "@/Utility";

export default function useGetAbility9KHOF() {
  const { tabPosition, abilityTabPosition } = useHOFStore();

  const { pathname } = useLocation();

  return useQuery<
    {
      avatarID: string;
      avatarName: string;
      text: string;
    }[]
  >({
    enabled:
      tabPosition === 2 &&
      abilityTabPosition === 2 &&
      pathname.startsWith("/hof"),
    queryKey: ["ability9KHOF"],
    queryFn: async () => {
      const { data } = await wwwAXIOS.get<GetHOFAPI[]>("/hof/ability/9K");
      return data.map((hof) => ({
        ...hof,
        text: sprintf(sprintf("%s Point", formatText(hof.value))),
      }));
    },
    initialData: [],
  });
}