import { keepPreviousData, useQuery } from '@tanstack/react-query'; import { api } from '../../shared/api/endpoints'; import { queryKeys } from '../../shared/api/queryKeys'; import type { Fix } from '../../shared/api/types/fixes'; export function useFixes( page: number ) { return useQuery( { queryKey: queryKeys.fixesList( page ), queryFn: ( { signal } ) => api.fixes( page, signal ), placeholderData: keepPreviousData, } ); } export async function continueFix( stoppedFix: Fix ): Promise< Fix > { let fix = stoppedFix; while ( fix.state === 'running' ) { fix = await api.runFix( fix.id ); } return fix; }