UNPKG

@apollo/client

Version:

A fully-featured caching GraphQL client.

33 lines 1.32 kB
import { throwServerError } from "../utils/index.js"; var hasOwnProperty = Object.prototype.hasOwnProperty; export function parseAndCheckHttpResponse(operations) { return function (response) { return response .text() .then(function (bodyText) { try { return JSON.parse(bodyText); } catch (err) { var parseError = err; parseError.name = 'ServerParseError'; parseError.response = response; parseError.statusCode = response.status; parseError.bodyText = bodyText; throw parseError; } }) .then(function (result) { if (response.status >= 300) { throwServerError(response, result, "Response not successful: Received status code ".concat(response.status)); } if (!Array.isArray(result) && !hasOwnProperty.call(result, 'data') && !hasOwnProperty.call(result, 'errors')) { throwServerError(response, result, "Server response was missing for query '".concat(Array.isArray(operations) ? operations.map(function (op) { return op.operationName; }) : operations.operationName, "'.")); } return result; }); }; } //# sourceMappingURL=parseAndCheckHttpResponse.js.map