import { useQuery } from '@tanstack/react-query' import { integrationKeys } from './keys' import { get } from '@/data/fetchers' import type { ResponseError, UseCustomQueryOptions } from '@/types' // FIXME(kamil): Do not retry, a single check is fine. export async function getGitHubAuthorization(signal?: AbortSignal) { const { data, error } = await get('/platform/integrations/github/authorization', { signal, }) return error ? null : data } export type GitHubAuthorizationData = Awaited> export type ProjectGitHubRepositoryConnectionsData = Awaited< ReturnType > export type GitHubAuthorizationError = ResponseError export const useGitHubAuthorizationQuery = ({ enabled = true, ...options }: UseCustomQueryOptions = {}) => { return useQuery({ queryKey: integrationKeys.githubAuthorization(), queryFn: ({ signal }) => getGitHubAuthorization(signal), enabled, staleTime: 0, ...options, }) }