@apollo/client 4.3.0-alpha.4 → 4.3.0-alpha.6

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 (158) hide show
  1. package/CHANGELOG.md +116 -0
  2. package/README.md +3 -7
  3. package/__cjs/cache/core/cache.cjs +1 -1
  4. package/__cjs/cache/core/cache.cjs.map +1 -1
  5. package/__cjs/cache/core/cache.d.cts +5 -1
  6. package/__cjs/cache/inmemory/entityStore.cjs +3 -3
  7. package/__cjs/cache/inmemory/inMemoryCache.cjs +0 -4
  8. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  9. package/__cjs/cache/inmemory/inMemoryCache.d.cts +3 -4
  10. package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  11. package/__cjs/cache/inmemory/policies.cjs +28 -6
  12. package/__cjs/cache/inmemory/policies.cjs.map +1 -1
  13. package/__cjs/cache/inmemory/readFromStore.cjs +71 -54
  14. package/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
  15. package/__cjs/cache/inmemory/readFromStore.d.cts +1 -1
  16. package/__cjs/cache/inmemory/types.d.cts +1 -2
  17. package/__cjs/cache/inmemory/writeToStore.cjs +4 -4
  18. package/__cjs/core/ApolloClient.cjs +21 -22
  19. package/__cjs/core/ApolloClient.cjs.map +1 -1
  20. package/__cjs/core/ApolloClient.d.cts +44 -10
  21. package/__cjs/core/ObservableQuery.cjs +56 -14
  22. package/__cjs/core/ObservableQuery.cjs.map +1 -1
  23. package/__cjs/core/ObservableQuery.d.cts +13 -2
  24. package/__cjs/core/QueryInfo.cjs +175 -161
  25. package/__cjs/core/QueryInfo.cjs.map +1 -1
  26. package/__cjs/core/QueryInfo.d.cts +15 -5
  27. package/__cjs/core/QueryManager.cjs +63 -38
  28. package/__cjs/core/QueryManager.cjs.map +1 -1
  29. package/__cjs/core/RefetchEventManager.cjs +3 -3
  30. package/__cjs/core/dataStateErrorCache.cjs +12 -0
  31. package/__cjs/core/dataStateErrorCache.cjs.map +1 -0
  32. package/__cjs/core/dataStateErrorCache.d.cts +3 -0
  33. package/__cjs/core/types.d.cts +2 -0
  34. package/__cjs/incremental/handlers/graphql17Alpha9.cjs +34 -11
  35. package/__cjs/incremental/handlers/graphql17Alpha9.cjs.map +1 -1
  36. package/__cjs/incremental/handlers/graphql17Alpha9.d.cts +26 -3
  37. package/__cjs/incremental/types.d.cts +41 -3
  38. package/__cjs/invariantErrorCodes.cjs +56 -32
  39. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  40. package/__cjs/react/hooks/useBackgroundQuery.d.cts +100 -47
  41. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  42. package/__cjs/react/hooks/useLazyQuery.d.cts +26 -20
  43. package/__cjs/react/hooks/useLoadableQuery.cjs.map +1 -1
  44. package/__cjs/react/hooks/useLoadableQuery.d.cts +23 -15
  45. package/__cjs/react/hooks/useMutation.cjs.map +1 -1
  46. package/__cjs/react/hooks/useMutation.d.cts +10 -7
  47. package/__cjs/react/hooks/useQuery.cjs.map +1 -1
  48. package/__cjs/react/hooks/useQuery.d.cts +74 -32
  49. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
  50. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  51. package/__cjs/react/hooks/useSuspenseQuery.d.cts +83 -34
  52. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
  53. package/__cjs/react/internal/types.d.cts +14 -3
  54. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  55. package/__cjs/react/query-preloader/createQueryPreloader.d.cts +20 -5
  56. package/__cjs/testing/core/mocking/mockLink.cjs +21 -1
  57. package/__cjs/testing/core/mocking/mockLink.cjs.map +1 -1
  58. package/__cjs/testing/core/mocking/mockLink.d.cts +1 -2
  59. package/__cjs/utilities/internal/addDeferFragmentLabels.cjs +33 -0
  60. package/__cjs/utilities/internal/addDeferFragmentLabels.cjs.map +1 -0
  61. package/__cjs/utilities/internal/addDeferFragmentLabels.d.cts +3 -0
  62. package/__cjs/utilities/internal/getDirectiveArgValue.cjs +19 -0
  63. package/__cjs/utilities/internal/getDirectiveArgValue.cjs.map +1 -0
  64. package/__cjs/utilities/internal/getDirectiveArgValue.d.cts +9 -0
  65. package/__cjs/utilities/internal/index.cjs +8 -2
  66. package/__cjs/utilities/internal/index.cjs.map +1 -1
  67. package/__cjs/utilities/internal/index.d.cts +3 -0
  68. package/__cjs/utilities/internal/toDiffWithDataState.cjs +20 -0
  69. package/__cjs/utilities/internal/toDiffWithDataState.cjs.map +1 -0
  70. package/__cjs/utilities/internal/toDiffWithDataState.d.cts +8 -0
  71. package/__cjs/version.cjs +1 -1
  72. package/cache/core/cache.d.ts +5 -1
  73. package/cache/core/cache.js +1 -1
  74. package/cache/core/cache.js.map +1 -1
  75. package/cache/inmemory/entityStore.js +3 -3
  76. package/cache/inmemory/inMemoryCache.d.ts +3 -4
  77. package/cache/inmemory/inMemoryCache.js +1 -5
  78. package/cache/inmemory/inMemoryCache.js.map +1 -1
  79. package/cache/inmemory/key-extractor.js +1 -1
  80. package/cache/inmemory/policies.js +28 -6
  81. package/cache/inmemory/policies.js.map +1 -1
  82. package/cache/inmemory/readFromStore.d.ts +1 -1
  83. package/cache/inmemory/readFromStore.js +72 -55
  84. package/cache/inmemory/readFromStore.js.map +1 -1
  85. package/cache/inmemory/types.d.ts +1 -2
  86. package/cache/inmemory/types.js.map +1 -1
  87. package/cache/inmemory/writeToStore.js +4 -4
  88. package/core/ApolloClient.d.ts +44 -10
  89. package/core/ApolloClient.js +21 -22
  90. package/core/ApolloClient.js.map +1 -1
  91. package/core/ObservableQuery.d.ts +13 -2
  92. package/core/ObservableQuery.js +57 -15
  93. package/core/ObservableQuery.js.map +1 -1
  94. package/core/QueryInfo.d.ts +15 -5
  95. package/core/QueryInfo.js +171 -161
  96. package/core/QueryInfo.js.map +1 -1
  97. package/core/QueryManager.js +63 -38
  98. package/core/QueryManager.js.map +1 -1
  99. package/core/RefetchEventManager.js +3 -3
  100. package/core/dataStateErrorCache.d.ts +3 -0
  101. package/core/dataStateErrorCache.js +9 -0
  102. package/core/dataStateErrorCache.js.map +1 -0
  103. package/core/types.d.ts +2 -0
  104. package/core/types.js.map +1 -1
  105. package/incremental/handlers/graphql17Alpha9.d.ts +26 -3
  106. package/incremental/handlers/graphql17Alpha9.js +35 -12
  107. package/incremental/handlers/graphql17Alpha9.js.map +1 -1
  108. package/incremental/types.d.ts +41 -3
  109. package/incremental/types.js.map +1 -1
  110. package/invariantErrorCodes.js +56 -32
  111. package/package.json +1 -1
  112. package/react/hooks/useBackgroundQuery.d.ts +100 -47
  113. package/react/hooks/useBackgroundQuery.js.map +1 -1
  114. package/react/hooks/useLazyQuery.d.ts +26 -20
  115. package/react/hooks/useLazyQuery.js.map +1 -1
  116. package/react/hooks/useLoadableQuery.d.ts +23 -15
  117. package/react/hooks/useLoadableQuery.js.map +1 -1
  118. package/react/hooks/useMutation.d.ts +10 -7
  119. package/react/hooks/useMutation.js.map +1 -1
  120. package/react/hooks/useQuery.d.ts +74 -32
  121. package/react/hooks/useQuery.js.map +1 -1
  122. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  123. package/react/hooks/useSuspenseQuery.d.ts +83 -34
  124. package/react/hooks/useSuspenseQuery.js.map +1 -1
  125. package/react/hooks-compiled/useBackgroundQuery.d.ts +100 -47
  126. package/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
  127. package/react/hooks-compiled/useLazyQuery.d.ts +26 -20
  128. package/react/hooks-compiled/useLazyQuery.js.map +1 -1
  129. package/react/hooks-compiled/useLoadableQuery.d.ts +23 -15
  130. package/react/hooks-compiled/useLoadableQuery.js.map +1 -1
  131. package/react/hooks-compiled/useMutation.d.ts +10 -7
  132. package/react/hooks-compiled/useMutation.js.map +1 -1
  133. package/react/hooks-compiled/useQuery.d.ts +74 -32
  134. package/react/hooks-compiled/useQuery.js.map +1 -1
  135. package/react/hooks-compiled/useQueryRefHandlers.js.map +1 -1
  136. package/react/hooks-compiled/useSuspenseQuery.d.ts +83 -34
  137. package/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
  138. package/react/internal/cache/QueryReference.js.map +1 -1
  139. package/react/internal/types.d.ts +15 -4
  140. package/react/internal/types.js.map +1 -1
  141. package/react/query-preloader/createQueryPreloader.d.ts +20 -5
  142. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  143. package/testing/core/mocking/mockLink.d.ts +1 -2
  144. package/testing/core/mocking/mockLink.js +21 -1
  145. package/testing/core/mocking/mockLink.js.map +1 -1
  146. package/utilities/internal/addDeferFragmentLabels.d.ts +3 -0
  147. package/utilities/internal/addDeferFragmentLabels.js +30 -0
  148. package/utilities/internal/addDeferFragmentLabels.js.map +1 -0
  149. package/utilities/internal/getDirectiveArgValue.d.ts +9 -0
  150. package/utilities/internal/getDirectiveArgValue.js +16 -0
  151. package/utilities/internal/getDirectiveArgValue.js.map +1 -0
  152. package/utilities/internal/index.d.ts +3 -0
  153. package/utilities/internal/index.js +3 -0
  154. package/utilities/internal/index.js.map +1 -1
  155. package/utilities/internal/toDiffWithDataState.d.ts +8 -0
  156. package/utilities/internal/toDiffWithDataState.js +17 -0
  157. package/utilities/internal/toDiffWithDataState.js.map +1 -0
  158. package/version.js +1 -1
@@ -194,13 +194,32 @@ class Policies {
194
194
  }
195
195
  const incoming = fields[fieldName];
196
196
  if (typeof incoming === "function") {
197
- existing.read = incoming;
197
+ if (existing.scalar) {
198
+ if (environment_1.__DEV__) {
199
+ warnAboutScalarConfig(typename, fieldName, existing.scalar, "read");
200
+ }
201
+ }
202
+ else {
203
+ existing.read = incoming;
204
+ }
198
205
  }
199
206
  else {
200
- const { keyArgs, read, merge, scalar } = incoming;
207
+ let { keyArgs, read, merge, scalar } = incoming;
201
208
  if (scalar) {
202
209
  existing.scalar = scalar;
203
210
  }
211
+ if (existing.scalar) {
212
+ if (environment_1.__DEV__) {
213
+ if (read !== undefined || existing.read !== undefined) {
214
+ warnAboutScalarConfig(typename, fieldName, existing.scalar, "read");
215
+ }
216
+ if (merge !== undefined || existing.merge !== undefined) {
217
+ warnAboutScalarConfig(typename, fieldName, existing.scalar, "merge");
218
+ }
219
+ }
220
+ existing.read = read = undefined;
221
+ existing.merge = merge = undefined;
222
+ }
204
223
  existing.keyFn =
205
224
  // Pass false to disable argument-based differentiation of
206
225
  // field identities.
@@ -232,7 +251,7 @@ class Policies {
232
251
  const rootId = "ROOT_" + which.toUpperCase();
233
252
  const old = this.rootTypenamesById[rootId];
234
253
  if (typename !== old) {
235
- (0, invariant_1.invariant)(!old || old === which, 108, which);
254
+ (0, invariant_1.invariant)(!old || old === which, 109, which);
236
255
  // First, delete any old __typename associated with this rootId from
237
256
  // rootIdsByTypename.
238
257
  if (old)
@@ -375,7 +394,7 @@ class Policies {
375
394
  if (supertypeSet.has(supertype)) {
376
395
  if (!typenameSupertypeSet.has(supertype)) {
377
396
  if (checkingFuzzySubtypes) {
378
- __DEV__ && invariant_1.invariant.warn(109, typename, supertype);
397
+ __DEV__ && invariant_1.invariant.warn(110, typename, supertype);
379
398
  }
380
399
  // Record positive results for faster future lookup.
381
400
  // Unfortunately, we cannot safely cache negative results,
@@ -632,7 +651,7 @@ function normalizeReadFieldOptions(readFieldArgs, objectOrReference, variables)
632
651
  }
633
652
  }
634
653
  if (environment_1.__DEV__ && options.from === void 0) {
635
- __DEV__ && invariant_1.invariant.warn(110, (0, internal_2.stringifyForDisplay)(Array.from(readFieldArgs)));
654
+ __DEV__ && invariant_1.invariant.warn(111, (0, internal_2.stringifyForDisplay)(Array.from(readFieldArgs)));
636
655
  }
637
656
  if (void 0 === options.variables) {
638
657
  options.variables = variables;
@@ -642,7 +661,7 @@ function normalizeReadFieldOptions(readFieldArgs, objectOrReference, variables)
642
661
  function makeMergeObjectsFunction(store) {
643
662
  return function mergeObjects(existing, incoming) {
644
663
  if ((0, internal_2.isArray)(existing) || (0, internal_2.isArray)(incoming)) {
645
- throw (0, invariant_1.newInvariantError)(111);
664
+ throw (0, invariant_1.newInvariantError)(112);
646
665
  }
647
666
  // These dynamic checks are necessary because the parameters of a
648
667
  // custom merge function can easily have the any type, so the type
@@ -678,4 +697,7 @@ function makeMergeObjectsFunction(store) {
678
697
  return incoming;
679
698
  };
680
699
  }
700
+ function warnAboutScalarConfig(typename, fieldName, scalar, kind) {
701
+ __DEV__ && invariant_1.invariant.warn(113, `${typename}.${fieldName}`, scalar, kind);
702
+ }
681
703
  //# sourceMappingURL=policies.cjs.map