Something went wrong. Try again.
An ATproto social media client -- with an independent Appview.
Something went wrong. Try again.
1.1 kB · 44 lines
TypeScript
at commit 8ce9bdb2
123456789101112131415161718192021222324252627282930313233343536373839404142434445import {t} from '@lingui/macro'
export function cleanError(str: any): string { if (!str) { return '' } if (typeof str !== 'string') { str = str.toString() } if (isNetworkError(str)) { return t`Unable to connect. Please check your internet connection and try again.` } if ( str.includes('Upstream Failure') || str.includes('NotEnoughResources') || str.includes('pipethrough network error') ) { return t`The server appears to be experiencing issues. Please try again in a few moments.` } if (str.includes('Bad token scope')) { return t`This feature is not available while using an App Password. Please sign in with your main password.` } if (str.startsWith('Error: ')) { return str.slice('Error: '.length) } return str}
const NETWORK_ERRORS = [ 'Abort', 'Network request failed', 'Failed to fetch', 'Load failed',]
export function isNetworkError(e: unknown) { const str = String(e) for (const err of NETWORK_ERRORS) { if (str.includes(err)) { return true } } return false}