1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | var tslib_1 = require("tslib");
|
4 | var arrays_1 = require("../util/arrays");
|
5 | function isApolloError(err) {
|
6 | return err.hasOwnProperty('graphQLErrors');
|
7 | }
|
8 | exports.isApolloError = isApolloError;
|
9 | var generateErrorMessage = function (err) {
|
10 | var message = '';
|
11 | if (arrays_1.isNonEmptyArray(err.graphQLErrors)) {
|
12 | err.graphQLErrors.forEach(function (graphQLError) {
|
13 | var errorMessage = graphQLError
|
14 | ? graphQLError.message
|
15 | : 'Error message not found.';
|
16 | message += "GraphQL error: " + errorMessage + "\n";
|
17 | });
|
18 | }
|
19 | if (err.networkError) {
|
20 | message += 'Network error: ' + err.networkError.message + '\n';
|
21 | }
|
22 | message = message.replace(/\n$/, '');
|
23 | return message;
|
24 | };
|
25 | var ApolloError = (function (_super) {
|
26 | tslib_1.__extends(ApolloError, _super);
|
27 | function ApolloError(_a) {
|
28 | var graphQLErrors = _a.graphQLErrors, networkError = _a.networkError, errorMessage = _a.errorMessage, extraInfo = _a.extraInfo;
|
29 | var _this = _super.call(this, errorMessage) || this;
|
30 | _this.graphQLErrors = graphQLErrors || [];
|
31 | _this.networkError = networkError || null;
|
32 | if (!errorMessage) {
|
33 | _this.message = generateErrorMessage(_this);
|
34 | }
|
35 | else {
|
36 | _this.message = errorMessage;
|
37 | }
|
38 | _this.extraInfo = extraInfo;
|
39 | _this.__proto__ = ApolloError.prototype;
|
40 | return _this;
|
41 | }
|
42 | return ApolloError;
|
43 | }(Error));
|
44 | exports.ApolloError = ApolloError;
|
45 |
|
\ | No newline at end of file |