1/// Utility class for transforming technical error messages into user-friendly ones 2class ErrorMessages { 3 /// Transform technical error messages into user-friendly ones 4 static String getUserFriendly(String error) { 5 final lowerError = error.toLowerCase(); 6 7 if (lowerError.contains('socketexception') || 8 lowerError.contains('network') || 9 lowerError.contains('connection refused')) { 10 return 'Please check your internet connection'; 11 } else if (lowerError.contains('timeoutexception') || 12 lowerError.contains('timeout')) { 13 return 'Request timed out. Please try again'; 14 } else if (lowerError.contains('401') || 15 lowerError.contains('unauthorized')) { 16 return 'Authentication failed. Please sign in again'; 17 } else if (lowerError.contains('404') || lowerError.contains('not found')) { 18 return 'Content not found'; 19 } else if (lowerError.contains('500') || 20 lowerError.contains('internal server')) { 21 return 'Server error. Please try again later'; 22 } 23 24 // Fallback to generic message for unknown errors 25 return 'Something went wrong. Please try again'; 26 } 27}