resolveBody static method

FutureOr<Object?> resolveBody(
  1. Object? payload,
  2. APIResponse apiResponse
)

Resolves a payload to an HTTP body (accepts payload as a Future). See resolveBodySync.

Implementation

static FutureOr<Object?> resolveBody(
  Object? payload,
  APIResponse apiResponse,
) {
  if (payload == null) return null;

  if (payload is Future) {
    return payload.then(
      (value) {
        if (value == null) return null;
        return _resolveBodyImpl(value, apiResponse);
      },
      onError: (e, s) {
        return apiResponse.asError(error: 'ERROR: $e\n$s');
      },
    );
  }

  return _resolveBodyImpl(payload, apiResponse);
}