@apollo/client 3.3.11 → 3.3.15

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 (63) hide show
  1. package/apollo-client.cjs.js +35 -24
  2. package/apollo-client.cjs.js.map +1 -1
  3. package/apollo-client.cjs.min.js +1 -1
  4. package/cache/cache.cjs.js +4 -1
  5. package/cache/cache.cjs.js.map +1 -1
  6. package/cache/inmemory/policies.d.ts +2 -2
  7. package/cache/inmemory/policies.d.ts.map +1 -1
  8. package/cache/inmemory/policies.js +4 -1
  9. package/cache/inmemory/policies.js.map +1 -1
  10. package/cache/inmemory/writeToStore.js.map +1 -1
  11. package/core/QueryInfo.d.ts.map +1 -1
  12. package/core/QueryInfo.js +1 -0
  13. package/core/QueryInfo.js.map +1 -1
  14. package/core/QueryManager.d.ts.map +1 -1
  15. package/core/QueryManager.js +4 -4
  16. package/core/QueryManager.js.map +1 -1
  17. package/core/core.cjs.js +6 -5
  18. package/core/core.cjs.js.map +1 -1
  19. package/invariantErrorCodes.js +1 -1
  20. package/link/http/createHttpLink.d.ts.map +1 -1
  21. package/link/http/createHttpLink.js +1 -1
  22. package/link/http/createHttpLink.js.map +1 -1
  23. package/link/http/http.cjs.js +1 -2
  24. package/link/http/http.cjs.js.map +1 -1
  25. package/package.json +17 -17
  26. package/react/data/QueryData.d.ts.map +1 -1
  27. package/react/data/QueryData.js +4 -9
  28. package/react/data/QueryData.js.map +1 -1
  29. package/react/data/SubscriptionData.d.ts.map +1 -1
  30. package/react/data/SubscriptionData.js +9 -5
  31. package/react/data/SubscriptionData.js.map +1 -1
  32. package/react/data/data.cjs.js +13 -13
  33. package/react/data/data.cjs.js.map +1 -1
  34. package/react/ssr/RenderPromises.d.ts +1 -0
  35. package/react/ssr/RenderPromises.d.ts.map +1 -1
  36. package/react/ssr/RenderPromises.js +4 -0
  37. package/react/ssr/RenderPromises.js.map +1 -1
  38. package/react/ssr/getDataFromTree.d.ts.map +1 -1
  39. package/react/ssr/getDataFromTree.js +2 -0
  40. package/react/ssr/getDataFromTree.js.map +1 -1
  41. package/react/ssr/ssr.cjs.js +6 -0
  42. package/react/ssr/ssr.cjs.js.map +1 -1
  43. package/react/types/types.d.ts +1 -0
  44. package/react/types/types.d.ts.map +1 -1
  45. package/react/types/types.js.map +1 -1
  46. package/testing/testing.cjs.js +14 -6
  47. package/testing/testing.cjs.js.map +1 -1
  48. package/utilities/observables/Observable.d.ts +0 -5
  49. package/utilities/observables/Observable.d.ts.map +1 -1
  50. package/utilities/observables/Observable.js +5 -1
  51. package/utilities/observables/Observable.js.map +1 -1
  52. package/utilities/observables/asyncMap.d.ts.map +1 -1
  53. package/utilities/observables/asyncMap.js +11 -3
  54. package/utilities/observables/asyncMap.js.map +1 -1
  55. package/utilities/testing/mocking/MockedProvider.d.ts +1 -1
  56. package/utilities/testing/mocking/MockedProvider.d.ts.map +1 -1
  57. package/utilities/testing/mocking/MockedProvider.js +1 -1
  58. package/utilities/testing/mocking/MockedProvider.js.map +1 -1
  59. package/utilities/testing/mocking/mockSubscriptionLink.js +2 -2
  60. package/utilities/testing/mocking/mockSubscriptionLink.js.map +1 -1
  61. package/utilities/utilities.cjs.js +11 -3
  62. package/utilities/utilities.cjs.js.map +1 -1
  63. package/version.js +1 -1
@@ -10,7 +10,6 @@ var graphql = require('graphql');
10
10
  var stringify = _interopDefault(require('fast-json-stable-stringify'));
11
11
  var Observable = _interopDefault(require('zen-observable'));
12
12
  require('symbol-observable');
13
- var visitor = require('graphql/language/visitor');
14
13
  var equality = require('@wry/equality');
15
14
  var optimism = require('optimism');
16
15
  var context = require('@wry/context');
@@ -816,19 +815,27 @@ function asyncMap(observable, mapFn, catchFn) {
816
815
  var next = observer.next, error = observer.error, complete = observer.complete;
817
816
  var activeCallbackCount = 0;
818
817
  var completed = false;
818
+ var promiseQueue = {
819
+ then: function (callback) {
820
+ return new Promise(function (resolve) { return resolve(callback()); });
821
+ },
822
+ };
819
823
  function makeCallback(examiner, delegate) {
820
824
  if (examiner) {
821
825
  return function (arg) {
822
826
  ++activeCallbackCount;
823
- new Promise(function (resolve) { return resolve(examiner(arg)); }).then(function (result) {
827
+ var both = function () { return examiner(arg); };
828
+ promiseQueue = promiseQueue.then(both, both).then(function (result) {
824
829
  --activeCallbackCount;
825
830
  next && next.call(observer, result);
826
831
  if (completed) {
827
832
  handler.complete();
828
833
  }
829
- }, function (e) {
834
+ }, function (error) {
830
835
  --activeCallbackCount;
831
- error && error.call(observer, e);
836
+ throw error;
837
+ }).catch(function (caught) {
838
+ error && error.call(observer, caught);
832
839
  });
833
840
  };
834
841
  }
@@ -1227,7 +1234,7 @@ var concat = ApolloLink.concat;
1227
1234
 
1228
1235
  var execute = ApolloLink.execute;
1229
1236
 
1230
- var version = '3.3.11';
1237
+ var version = '3.3.15';
1231
1238
 
1232
1239
  var hasOwnProperty$1 = Object.prototype.hasOwnProperty;
1233
1240
  function parseAndCheckHttpResponse(operations) {
@@ -1421,7 +1428,7 @@ var createHttpLink = function (linkOptions) {
1421
1428
  var _b = selectHttpOptionsAndBody(operation, fallbackHttpConfig, linkConfig, contextConfig), options = _b.options, body = _b.body;
1422
1429
  if (body.variables && !includeUnusedVariables) {
1423
1430
  var unusedNames_1 = new Set(Object.keys(body.variables));
1424
- visitor.visit(operation.query, {
1431
+ graphql.visit(operation.query, {
1425
1432
  Variable: function (node, _key, parent) {
1426
1433
  if (parent && parent.kind !== 'VariableDefinition') {
1427
1434
  unusedNames_1.delete(node.name.value);
@@ -3114,7 +3121,7 @@ var Policies = (function () {
3114
3121
  break;
3115
3122
  }
3116
3123
  }
3117
- id = id && String(id);
3124
+ id = id ? String(id) : void 0;
3118
3125
  return context.keyObject ? [id, context.keyObject] : [id];
3119
3126
  };
3120
3127
  Policies.prototype.addTypePolicies = function (typePolicies) {
@@ -3320,6 +3327,9 @@ var Policies = (function () {
3320
3327
  ? storeKeyNameFromField(fieldSpec.field, fieldSpec.variables)
3321
3328
  : getStoreKeyName(fieldName, argsFromFieldSpecifier(fieldSpec));
3322
3329
  }
3330
+ if (storeFieldName === false) {
3331
+ return fieldName;
3332
+ }
3323
3333
  return fieldName === fieldNameFromStoreName(storeFieldName)
3324
3334
  ? storeFieldName
3325
3335
  : fieldName + ":" + storeFieldName;
@@ -4141,6 +4151,7 @@ var QueryInfo = (function () {
4141
4151
  QueryInfo.prototype.stop = function () {
4142
4152
  if (!this.stopped) {
4143
4153
  this.stopped = true;
4154
+ this.reset();
4144
4155
  this.cancel();
4145
4156
  delete this.cancel;
4146
4157
  this.subscriptions.forEach(function (sub) { return sub.unsubscribe(); });
@@ -4396,6 +4407,7 @@ var QueryManager = (function () {
4396
4407
  self.queries.forEach(function (_a) {
4397
4408
  var observableQuery = _a.observableQuery;
4398
4409
  if (observableQuery &&
4410
+ observableQuery.hasObservers() &&
4399
4411
  observableQuery.queryName === refetchQuery) {
4400
4412
  refetchQueryPromises.push(observableQuery.refetch());
4401
4413
  }
@@ -4753,10 +4765,10 @@ var QueryManager = (function () {
4753
4765
  return observable;
4754
4766
  };
4755
4767
  QueryManager.prototype.getResultsFromLink = function (queryInfo, allowCacheWrite, options) {
4756
- var lastRequestId = queryInfo.lastRequestId;
4768
+ var requestId = queryInfo.lastRequestId = this.generateRequestId();
4757
4769
  return asyncMap(this.getObservableFromLink(queryInfo.document, options.context, options.variables), function (result) {
4758
4770
  var hasErrors = isNonEmptyArray(result.errors);
4759
- if (lastRequestId >= queryInfo.lastRequestId) {
4771
+ if (requestId >= queryInfo.lastRequestId) {
4760
4772
  if (hasErrors && options.errorPolicy === "none") {
4761
4773
  throw queryInfo.markError(new ApolloError({
4762
4774
  graphQLErrors: result.errors,
@@ -4778,7 +4790,7 @@ var QueryManager = (function () {
4778
4790
  var error = isApolloError(networkError)
4779
4791
  ? networkError
4780
4792
  : new ApolloError({ networkError: networkError });
4781
- if (lastRequestId >= queryInfo.lastRequestId) {
4793
+ if (requestId >= queryInfo.lastRequestId) {
4782
4794
  queryInfo.markError(error);
4783
4795
  }
4784
4796
  throw error;
@@ -4843,7 +4855,6 @@ var QueryManager = (function () {
4843
4855
  queryInfo.init({
4844
4856
  document: query,
4845
4857
  variables: variables,
4846
- lastRequestId: this.generateRequestId(),
4847
4858
  networkStatus: networkStatus,
4848
4859
  });
4849
4860
  var readCache = function () { return queryInfo.getDiff(variables); };
@@ -5363,7 +5374,8 @@ var SubscriptionData = (function (_super) {
5363
5374
  this.currentObservable.query = this.refreshClient().client.subscribe({
5364
5375
  query: options.subscription,
5365
5376
  variables: options.variables,
5366
- fetchPolicy: options.fetchPolicy
5377
+ fetchPolicy: options.fetchPolicy,
5378
+ context: options.context,
5367
5379
  });
5368
5380
  };
5369
5381
  SubscriptionData.prototype.startSubscription = function () {
@@ -5408,10 +5420,13 @@ var SubscriptionData = (function (_super) {
5408
5420
  });
5409
5421
  };
5410
5422
  SubscriptionData.prototype.completeSubscription = function () {
5411
- var onSubscriptionComplete = this.getOptions().onSubscriptionComplete;
5412
- if (onSubscriptionComplete)
5413
- onSubscriptionComplete();
5414
- this.endSubscription();
5423
+ var _this = this;
5424
+ Promise.resolve().then(function () {
5425
+ var onSubscriptionComplete = _this.getOptions().onSubscriptionComplete;
5426
+ if (onSubscriptionComplete)
5427
+ onSubscriptionComplete();
5428
+ _this.endSubscription();
5429
+ });
5415
5430
  };
5416
5431
  SubscriptionData.prototype.endSubscription = function () {
5417
5432
  if (this.currentObservable.subscription) {
@@ -5678,17 +5693,13 @@ var QueryData = (function (_super) {
5678
5693
  this.previous.result = ssrLoading;
5679
5694
  return ssrLoading;
5680
5695
  }
5681
- var result;
5682
5696
  if (this.ssrInitiated()) {
5683
- if (skip) {
5684
- result = this.getQueryResult();
5685
- }
5686
- else {
5687
- result =
5688
- this.context.renderPromises.addQueryPromise(this, this.getQueryResult) || ssrLoading;
5697
+ var result = this.getQueryResult() || ssrLoading;
5698
+ if (result.loading && !skip) {
5699
+ this.context.renderPromises.addQueryPromise(this, function () { return null; });
5689
5700
  }
5701
+ return result;
5690
5702
  }
5691
- return result;
5692
5703
  };
5693
5704
  QueryData.prototype.prepareObservableQueryOptions = function () {
5694
5705
  var options = this.getOptions();