Files
zhixing-system/zhixing-web/src/features/sector-radar/api/sector-radar.query.ts
T

36 lines
977 B
TypeScript
Raw Normal View History

import { useQuery } from "@tanstack/react-query"
import { getSectorRadarDates, getSectorRadarRankings } from "./sector-radar.api"
import type { RadarRankingsQuery } from "./sector-radar.types"
export const sectorRadarDatesQueryKey = ["sectorRadar", "dates"] as const
export const sectorRadarRankingsQueryKey = (query: RadarRankingsQuery) =>
[
"sectorRadar",
"rankings",
query.tradeDate ?? "latest",
query.sectorType,
query.view,
query.rankChangeMetric,
query.rankChangeDays,
query.side,
query.search ?? "",
query.page,
query.pageSize,
] as const
export function useSectorRadarDates() {
return useQuery({
queryFn: ({ signal }) => getSectorRadarDates(signal),
queryKey: sectorRadarDatesQueryKey,
})
}
export function useSectorRadarRankings(query: RadarRankingsQuery) {
return useQuery({
queryFn: ({ signal }) => getSectorRadarRankings(query, signal),
queryKey: sectorRadarRankingsQueryKey(query),
})
}