@apollo/client 3.3.10 → 3.3.14

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 (65) hide show
  1. package/apollo-client.cjs.js +39 -30
  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 +1 -0
  16. package/core/QueryManager.js.map +1 -1
  17. package/core/core.cjs.js +3 -1
  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/SubscriptionData.d.ts.map +1 -1
  27. package/react/data/SubscriptionData.js +9 -5
  28. package/react/data/SubscriptionData.js.map +1 -1
  29. package/react/data/data.cjs.js +9 -5
  30. package/react/data/data.cjs.js.map +1 -1
  31. package/react/hooks/hooks.cjs.js +11 -18
  32. package/react/hooks/hooks.cjs.js.map +1 -1
  33. package/react/hooks/utils/useBaseQuery.d.ts.map +1 -1
  34. package/react/hooks/utils/useBaseQuery.js +11 -18
  35. package/react/hooks/utils/useBaseQuery.js.map +1 -1
  36. package/react/ssr/RenderPromises.d.ts +1 -0
  37. package/react/ssr/RenderPromises.d.ts.map +1 -1
  38. package/react/ssr/RenderPromises.js +4 -0
  39. package/react/ssr/RenderPromises.js.map +1 -1
  40. package/react/ssr/getDataFromTree.d.ts.map +1 -1
  41. package/react/ssr/getDataFromTree.js +2 -0
  42. package/react/ssr/getDataFromTree.js.map +1 -1
  43. package/react/ssr/ssr.cjs.js +6 -0
  44. package/react/ssr/ssr.cjs.js.map +1 -1
  45. package/react/types/types.d.ts +1 -0
  46. package/react/types/types.d.ts.map +1 -1
  47. package/react/types/types.js.map +1 -1
  48. package/testing/testing.cjs.js +14 -6
  49. package/testing/testing.cjs.js.map +1 -1
  50. package/utilities/observables/Observable.d.ts +0 -5
  51. package/utilities/observables/Observable.d.ts.map +1 -1
  52. package/utilities/observables/Observable.js +5 -1
  53. package/utilities/observables/Observable.js.map +1 -1
  54. package/utilities/observables/asyncMap.d.ts.map +1 -1
  55. package/utilities/observables/asyncMap.js +11 -3
  56. package/utilities/observables/asyncMap.js.map +1 -1
  57. package/utilities/testing/mocking/MockedProvider.d.ts +1 -1
  58. package/utilities/testing/mocking/MockedProvider.d.ts.map +1 -1
  59. package/utilities/testing/mocking/MockedProvider.js +1 -1
  60. package/utilities/testing/mocking/MockedProvider.js.map +1 -1
  61. package/utilities/testing/mocking/mockSubscriptionLink.js +2 -2
  62. package/utilities/testing/mocking/mockSubscriptionLink.js.map +1 -1
  63. package/utilities/utilities.cjs.js +11 -3
  64. package/utilities/utilities.cjs.js.map +1 -1
  65. 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.10';
1237
+ var version = '3.3.14';
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
  }
@@ -5363,7 +5375,8 @@ var SubscriptionData = (function (_super) {
5363
5375
  this.currentObservable.query = this.refreshClient().client.subscribe({
5364
5376
  query: options.subscription,
5365
5377
  variables: options.variables,
5366
- fetchPolicy: options.fetchPolicy
5378
+ fetchPolicy: options.fetchPolicy,
5379
+ context: options.context,
5367
5380
  });
5368
5381
  };
5369
5382
  SubscriptionData.prototype.startSubscription = function () {
@@ -5408,10 +5421,13 @@ var SubscriptionData = (function (_super) {
5408
5421
  });
5409
5422
  };
5410
5423
  SubscriptionData.prototype.completeSubscription = function () {
5411
- var onSubscriptionComplete = this.getOptions().onSubscriptionComplete;
5412
- if (onSubscriptionComplete)
5413
- onSubscriptionComplete();
5414
- this.endSubscription();
5424
+ var _this = this;
5425
+ Promise.resolve().then(function () {
5426
+ var onSubscriptionComplete = _this.getOptions().onSubscriptionComplete;
5427
+ if (onSubscriptionComplete)
5428
+ onSubscriptionComplete();
5429
+ _this.endSubscription();
5430
+ });
5415
5431
  };
5416
5432
  SubscriptionData.prototype.endSubscription = function () {
5417
5433
  if (this.currentObservable.subscription) {
@@ -5836,24 +5852,20 @@ function useBaseQuery(query, options, lazy) {
5836
5852
  var _a = React.useReducer(function (x) { return x + 1; }, 0), tick = _a[0], forceUpdate = _a[1];
5837
5853
  var updatedOptions = options ? tslib.__assign(tslib.__assign({}, options), { query: query }) : { query: query };
5838
5854
  var queryDataRef = React.useRef();
5839
- var queryData = queryDataRef.current ||
5840
- new QueryData({
5841
- options: updatedOptions,
5842
- context: context,
5843
- onNewData: function () {
5844
- if (!queryData.ssrInitiated() && queryDataRef.current) {
5845
- Promise.resolve().then(forceUpdate);
5846
- }
5847
- else {
5848
- forceUpdate();
5849
- }
5855
+ var queryData = queryDataRef.current || (queryDataRef.current = new QueryData({
5856
+ options: updatedOptions,
5857
+ context: context,
5858
+ onNewData: function () {
5859
+ if (!queryData.ssrInitiated()) {
5860
+ Promise.resolve().then(function () { return queryDataRef.current && forceUpdate(); });
5850
5861
  }
5851
- });
5862
+ else {
5863
+ forceUpdate();
5864
+ }
5865
+ }
5866
+ }));
5852
5867
  queryData.setOptions(updatedOptions);
5853
5868
  queryData.context = context;
5854
- if (queryData.ssrInitiated() && !queryDataRef.current) {
5855
- queryDataRef.current = queryData;
5856
- }
5857
5869
  var memo = {
5858
5870
  options: tslib.__assign(tslib.__assign({}, updatedOptions), { onError: undefined, onCompleted: undefined }),
5859
5871
  context: context,
@@ -5864,9 +5876,6 @@ function useBaseQuery(query, options, lazy) {
5864
5876
  ? result[1]
5865
5877
  : result;
5866
5878
  React.useEffect(function () {
5867
- if (!queryDataRef.current) {
5868
- queryDataRef.current = queryData;
5869
- }
5870
5879
  return function () { return queryData.cleanup(); };
5871
5880
  }, []);
5872
5881
  React.useEffect(function () { return queryData.afterExecute({ lazy: lazy }); }, [