import { useQuery } from "@tanstack/react-query";
import { getPullCodeAlerts } from "~/fns/security";
export type PullCodeAlert = Awaited<ReturnType<typeof getPullCodeAlerts>>[number];
const NO_ALERTS: PullCodeAlert[] = [];
export const pullCodeAlertsQueryKey = (owner: string, repo: string, number: number) =>
["pull-code-alerts", owner, repo, number] as const;
/** Loads code scanning alerts for a pull request after render, so diffs never wait on them. */
export function usePullCodeAlerts(owner: string, repo: string, number: number): PullCodeAlert[] {
const query = useQuery({
queryKey: pullCodeAlertsQueryKey(owner, repo, number),
queryFn: () => getPullCodeAlerts({ data: { owner, repo, number } }),
});
return query.data ?? NO_ALERTS;
}