socketOrServerException<T> function
Implementation
Future<Either<ErrorResponseDto, T>> socketOrServerException<T>(DioException e) {
// if (e.error.toString().contains('SocketException')) {
// final errorMessage = e.message ?? 'Socket Error';
// return Future.value(left(ErrorResponseDto(message: errorMessage)));
// }
// catch 422
if (DioExceptionType.values.contains(e.type)) {
// if error body available
if (e.response?.data != null) {
final errorResponse = ErrorResponseDto.fromJson(e.response?.data);
return Future.value(left(errorResponse));
}
return Future.value(
left(ErrorResponseDto(message: e.message ?? 'Unknown Error')),
);
}
if (e.response?.data['errors'] == null) {
return Future.value(
left(ErrorResponseDto(message: e.response?.data['message'])),
);
}
return Future.value(left(ErrorResponseDto.fromJson(e.response!.data)));
}