import {isNetworkError} from 'lib/strings/errors' export async function retry
( retries: number, cond: (err: any) => boolean, fn: () => Promise
, ): Promise
{ let lastErr while (retries > 0) { try { return await fn() } catch (e: any) { lastErr = e if (cond(e)) { retries-- continue } throw e } } throw lastErr } export async function networkRetry
( retries: number, fn: () => Promise
, ): Promise
{ return retry(retries, isNetworkError, fn) }