1import * as Log from '../../log'; 2import { APISettings } from '../settings'; 3import { FetchLike } from './client.types'; 4 5/** Wrap fetch with support for APISettings offline mode. */ 6export function wrapFetchWithOffline(fetchFunction: FetchLike): FetchLike { 7 return async function fetchWithOffline(url, options = {}) { 8 if (APISettings.isOffline) { 9 Log.debug('[fetch] Offline: Skipping network request: ' + url); 10 options.timeout = 1; 11 } 12 return fetchFunction(url, options); 13 }; 14} 15