safeApiCall<T> function

Future<NetworkResponse<T>> safeApiCall<T>(
  1. Future<T> call()
)

Helper — wraps an async API call and maps exceptions to NetworkError.

Implementation

Future<NetworkResponse<T>> safeApiCall<T>(
  Future<T> Function() call,
) async {
  try {
    final result = await call();
    return NetworkSuccess(result);
  } on DioNetworkException catch (e) {
    return NetworkError(e.message, code: e.statusCode);
  } catch (e) {
    return NetworkError(e.toString());
  }
}