import { useMutation, useQueryClient } from '@tanstack/react-query'; import { syncClock } from '../lib/clock'; import { api } from './endpoints'; import { queryKeys } from './queryKeys'; import type { ScanAction, Status } from './types/status'; export function useScanAction() { const queryClient = useQueryClient(); return useMutation( { mutationFn: ( action: ScanAction ) => api.scan( action ), onSuccess: ( status: Status ) => { syncClock( status.now ); queryClient.setQueryData( queryKeys.status, status ); }, } ); }