@apollo/client 3.6.8 → 3.6.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/README.md +4 -0
  2. package/apollo-client.cjs +45 -26
  3. package/apollo-client.cjs.map +1 -1
  4. package/apollo-client.min.cjs +1 -1
  5. package/cache/cache.cjs +10 -6
  6. package/cache/cache.cjs.map +1 -1
  7. package/cache/cache.cjs.native.js +10 -6
  8. package/cache/core/types/common.d.ts +1 -1
  9. package/cache/core/types/common.d.ts.map +1 -1
  10. package/cache/core/types/common.js +11 -6
  11. package/cache/core/types/common.js.map +1 -1
  12. package/cache/index.d.ts +1 -1
  13. package/cache/index.d.ts.map +1 -1
  14. package/cache/index.js.map +1 -1
  15. package/core/ObservableQuery.d.ts.map +1 -1
  16. package/core/ObservableQuery.js +5 -2
  17. package/core/ObservableQuery.js.map +1 -1
  18. package/core/QueryManager.d.ts.map +1 -1
  19. package/core/QueryManager.js +10 -7
  20. package/core/QueryManager.js.map +1 -1
  21. package/core/core.cjs +15 -10
  22. package/core/core.cjs.map +1 -1
  23. package/core/core.cjs.native.js +15 -10
  24. package/core/types.d.ts.map +1 -1
  25. package/core/types.js.map +1 -1
  26. package/invariantErrorCodes.js +1 -1
  27. package/link/http/http.cjs +11 -3
  28. package/link/http/http.cjs.map +1 -1
  29. package/link/http/http.cjs.native.js +11 -3
  30. package/link/http/parseAndCheckHttpResponse.d.ts.map +1 -1
  31. package/link/http/parseAndCheckHttpResponse.js +11 -3
  32. package/link/http/parseAndCheckHttpResponse.js.map +1 -1
  33. package/package.json +40 -32
  34. package/react/hooks/hooks.cjs +9 -7
  35. package/react/hooks/hooks.cjs.map +1 -1
  36. package/react/hooks/hooks.cjs.native.js +9 -7
  37. package/react/hooks/useMutation.d.ts.map +1 -1
  38. package/react/hooks/useMutation.js +8 -6
  39. package/react/hooks/useMutation.js.map +1 -1
  40. package/react/hooks/useQuery.d.ts.map +1 -1
  41. package/react/hooks/useQuery.js +1 -1
  42. package/react/hooks/useQuery.js.map +1 -1
  43. package/react/ssr/getDataFromTree.d.ts.map +1 -1
  44. package/react/ssr/getDataFromTree.js +3 -2
  45. package/react/ssr/getDataFromTree.js.map +1 -1
  46. package/react/ssr/renderToStringWithData.d.ts.map +1 -1
  47. package/react/ssr/renderToStringWithData.js +2 -1
  48. package/react/ssr/renderToStringWithData.js.map +1 -1
  49. package/react/ssr/ssr.cjs +4 -3
  50. package/react/ssr/ssr.cjs.map +1 -1
  51. package/react/ssr/ssr.cjs.native.js +4 -3
  52. package/react/types/types.d.ts +2 -3
  53. package/react/types/types.d.ts.map +1 -1
  54. package/react/types/types.js.map +1 -1
  55. package/testing/core/core.cjs +1 -1
  56. package/testing/core/core.cjs.map +1 -1
  57. package/testing/core/core.cjs.native.js +1 -1
  58. package/testing/core/itAsync.d.ts +3 -3
  59. package/testing/core/itAsync.d.ts.map +1 -1
  60. package/testing/core/mocking/mockLink.js +1 -1
  61. package/testing/core/mocking/mockLink.js.map +1 -1
  62. package/utilities/graphql/storeUtils.d.ts +1 -1
  63. package/utilities/graphql/storeUtils.d.ts.map +1 -1
  64. package/utilities/observables/Concast.d.ts +1 -0
  65. package/utilities/observables/Concast.d.ts.map +1 -1
  66. package/utilities/observables/Concast.js.map +1 -1
  67. package/version.js +1 -1
package/README.md CHANGED
@@ -22,8 +22,12 @@ Learn how to use Apollo Client with self-paced hands-on training on Odyssey, Apo
22
22
  ## Apollo Maintainers
23
23
 
24
24
  - [@benjamn](https://github.com/benjamn)
25
+ - [@alessbell](https://github.com/alessbell)
26
+ - [@bignimbus](https://github.com/bignimbus)
25
27
  - [@hwillson](https://github.com/hwillson)
26
28
  - [@jpvajda](https://github.com/jpvajda)
29
+ - [@mrdoombringer](https://github.com/mrdoombringer)
30
+ - [@jerelmiller](https://github.com/jerelmiller)
27
31
 
28
32
  ## Who is Apollo?
29
33
 
package/apollo-client.cjs CHANGED
@@ -1300,13 +1300,24 @@ var concat = ApolloLink.concat;
1300
1300
 
1301
1301
  var execute = ApolloLink.execute;
1302
1302
 
1303
- var version = '3.6.8';
1303
+ var version = '3.6.10';
1304
1304
 
1305
1305
  var hasOwnProperty$3 = Object.prototype.hasOwnProperty;
1306
1306
  function parseAndCheckHttpResponse(operations) {
1307
1307
  return function (response) { return response
1308
1308
  .text()
1309
1309
  .then(function (bodyText) {
1310
+ if (response.status >= 300) {
1311
+ var getResult = function () {
1312
+ try {
1313
+ return JSON.parse(bodyText);
1314
+ }
1315
+ catch (err) {
1316
+ return bodyText;
1317
+ }
1318
+ };
1319
+ throwServerError(response, getResult(), "Response not successful: Received status code ".concat(response.status));
1320
+ }
1310
1321
  try {
1311
1322
  return JSON.parse(bodyText);
1312
1323
  }
@@ -1320,9 +1331,6 @@ function parseAndCheckHttpResponse(operations) {
1320
1331
  }
1321
1332
  })
1322
1333
  .then(function (result) {
1323
- if (response.status >= 300) {
1324
- throwServerError(response, result, "Response not successful: Received status code ".concat(response.status));
1325
- }
1326
1334
  if (!Array.isArray(result) &&
1327
1335
  !hasOwnProperty$3.call(result, 'data') &&
1328
1336
  !hasOwnProperty$3.call(result, 'errors')) {
@@ -1682,15 +1690,19 @@ exports.Cache = void 0;
1682
1690
  (function (Cache) {
1683
1691
  })(exports.Cache || (exports.Cache = {}));
1684
1692
 
1685
- var MissingFieldError = (function () {
1693
+ var MissingFieldError = (function (_super) {
1694
+ tslib.__extends(MissingFieldError, _super);
1686
1695
  function MissingFieldError(message, path, query, variables) {
1687
- this.message = message;
1688
- this.path = path;
1689
- this.query = query;
1690
- this.variables = variables;
1696
+ var _this = _super.call(this, message) || this;
1697
+ _this.message = message;
1698
+ _this.path = path;
1699
+ _this.query = query;
1700
+ _this.variables = variables;
1701
+ _this.__proto__ = MissingFieldError.prototype;
1702
+ return _this;
1691
1703
  }
1692
1704
  return MissingFieldError;
1693
- }());
1705
+ }(Error));
1694
1706
 
1695
1707
  var hasOwn = Object.prototype.hasOwnProperty;
1696
1708
  function defaultDataIdFromObject(_a, context) {
@@ -4223,7 +4235,8 @@ var ObservableQuery = (function (_super) {
4223
4235
  ObservableQuery.prototype.applyNextFetchPolicy = function (reason, options) {
4224
4236
  if (options.nextFetchPolicy) {
4225
4237
  var _a = options.fetchPolicy, fetchPolicy = _a === void 0 ? "cache-first" : _a, _b = options.initialFetchPolicy, initialFetchPolicy = _b === void 0 ? fetchPolicy : _b;
4226
- if (typeof options.nextFetchPolicy === "function") {
4238
+ if (fetchPolicy === "standby") ;
4239
+ else if (typeof options.nextFetchPolicy === "function") {
4227
4240
  options.fetchPolicy = options.nextFetchPolicy(fetchPolicy, {
4228
4241
  reason: reason,
4229
4242
  options: options,
@@ -4312,7 +4325,8 @@ var ObservableQuery = (function (_super) {
4312
4325
  if (newOptions &&
4313
4326
  newOptions.variables &&
4314
4327
  !equality.equal(newOptions.variables, oldVariables) &&
4315
- (!newOptions.fetchPolicy || newOptions.fetchPolicy === oldFetchPolicy)) {
4328
+ options.fetchPolicy !== "standby" &&
4329
+ options.fetchPolicy === oldFetchPolicy) {
4316
4330
  this.applyNextFetchPolicy("variables-changed", options);
4317
4331
  if (newNetworkStatus === void 0) {
4318
4332
  newNetworkStatus = exports.NetworkStatus.setVariables;
@@ -5561,20 +5575,23 @@ var QueryManager = (function () {
5561
5575
  });
5562
5576
  var fromVariables = function (variables) {
5563
5577
  normalized.variables = variables;
5564
- return _this.fetchQueryByPolicy(queryInfo, normalized, networkStatus);
5578
+ var concastSources = _this.fetchQueryByPolicy(queryInfo, normalized, networkStatus);
5579
+ if (normalized.fetchPolicy !== "standby" &&
5580
+ concastSources.length > 0 &&
5581
+ queryInfo.observableQuery) {
5582
+ queryInfo.observableQuery["applyNextFetchPolicy"]("after-fetch", options);
5583
+ }
5584
+ return concastSources;
5565
5585
  };
5586
+ var cleanupCancelFn = function () { return _this.fetchCancelFns.delete(queryId); };
5566
5587
  this.fetchCancelFns.set(queryId, function (reason) {
5588
+ cleanupCancelFn();
5567
5589
  setTimeout(function () { return concast.cancel(reason); });
5568
5590
  });
5569
5591
  var concast = new Concast(this.transform(normalized.query).hasClientExports
5570
5592
  ? this.localState.addExportedVariables(normalized.query, normalized.variables, normalized.context).then(fromVariables)
5571
5593
  : fromVariables(normalized.variables));
5572
- concast.cleanup(function () {
5573
- _this.fetchCancelFns.delete(queryId);
5574
- if (queryInfo.observableQuery) {
5575
- queryInfo.observableQuery["applyNextFetchPolicy"]("after-fetch", options);
5576
- }
5577
- });
5594
+ concast.promise.then(cleanupCancelFn, cleanupCancelFn);
5578
5595
  return concast;
5579
5596
  };
5580
5597
  QueryManager.prototype.refetchQueries = function (_a) {
@@ -6335,7 +6352,7 @@ var InternalState = (function () {
6335
6352
  InternalState.prototype.createWatchQueryOptions = function (_a) {
6336
6353
  var _b;
6337
6354
  if (_a === void 0) { _a = {}; }
6338
- var skip = _a.skip; _a.ssr; _a.onCompleted; _a.onError; _a.displayName; _a.defaultOptions; var otherOptions = tslib.__rest(_a, ["skip", "ssr", "onCompleted", "onError", "displayName", "defaultOptions"]);
6355
+ var skip = _a.skip; _a.ssr; _a.onCompleted; _a.onError; _a.defaultOptions; var otherOptions = tslib.__rest(_a, ["skip", "ssr", "onCompleted", "onError", "defaultOptions"]);
6339
6356
  var watchQueryOptions = Object.assign(otherOptions, { query: this.query });
6340
6357
  if (this.renderPromises &&
6341
6358
  (watchQueryOptions.fetchPolicy === 'network-only' ||
@@ -6519,7 +6536,7 @@ function useMutation(mutation, options) {
6519
6536
  if (executeOptions === void 0) { executeOptions = {}; }
6520
6537
  var _a = ref.current, client = _a.client, options = _a.options, mutation = _a.mutation;
6521
6538
  var baseOptions = tslib.__assign(tslib.__assign({}, options), { mutation: mutation });
6522
- if (!ref.current.result.loading && !baseOptions.ignoreResults) {
6539
+ if (!ref.current.result.loading && !baseOptions.ignoreResults && ref.current.isMounted) {
6523
6540
  setResult(ref.current.result = {
6524
6541
  loading: true,
6525
6542
  error: void 0,
@@ -6549,8 +6566,8 @@ function useMutation(mutation, options) {
6549
6566
  setResult(ref.current.result = result_1);
6550
6567
  }
6551
6568
  }
6552
- (_b = (_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.onCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, response.data);
6553
- (_c = executeOptions.onCompleted) === null || _c === void 0 ? void 0 : _c.call(executeOptions, response.data);
6569
+ (_b = (_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.onCompleted) === null || _b === void 0 ? void 0 : _b.call(_a, response.data, clientOptions);
6570
+ (_c = executeOptions.onCompleted) === null || _c === void 0 ? void 0 : _c.call(executeOptions, response.data, clientOptions);
6554
6571
  return response;
6555
6572
  }).catch(function (error) {
6556
6573
  var _a, _b, _c, _d;
@@ -6568,15 +6585,17 @@ function useMutation(mutation, options) {
6568
6585
  }
6569
6586
  }
6570
6587
  if (((_a = ref.current.options) === null || _a === void 0 ? void 0 : _a.onError) || clientOptions.onError) {
6571
- (_c = (_b = ref.current.options) === null || _b === void 0 ? void 0 : _b.onError) === null || _c === void 0 ? void 0 : _c.call(_b, error);
6572
- (_d = executeOptions.onError) === null || _d === void 0 ? void 0 : _d.call(executeOptions, error);
6588
+ (_c = (_b = ref.current.options) === null || _b === void 0 ? void 0 : _b.onError) === null || _c === void 0 ? void 0 : _c.call(_b, error, clientOptions);
6589
+ (_d = executeOptions.onError) === null || _d === void 0 ? void 0 : _d.call(executeOptions, error, clientOptions);
6573
6590
  return { data: void 0, errors: error };
6574
6591
  }
6575
6592
  throw error;
6576
6593
  });
6577
6594
  }, []);
6578
6595
  var reset = React.useCallback(function () {
6579
- setResult({ called: false, loading: false, client: client });
6596
+ if (ref.current.isMounted) {
6597
+ setResult({ called: false, loading: false, client: client });
6598
+ }
6580
6599
  }, []);
6581
6600
  React.useEffect(function () {
6582
6601
  ref.current.isMounted = true;