@apollo/client 4.3.0-rc.0 → 4.3.0-rc.2

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 (191) hide show
  1. package/CHANGELOG.md +112 -0
  2. package/__cjs/cache/core/cache.cjs +3 -3
  3. package/__cjs/cache/core/cache.cjs.map +1 -1
  4. package/__cjs/cache/core/cache.d.cts +3 -3
  5. package/__cjs/cache/index.cjs.map +1 -1
  6. package/__cjs/cache/index.d.cts +1 -1
  7. package/__cjs/cache/inmemory/entityStore.cjs +25 -10
  8. package/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
  9. package/__cjs/cache/inmemory/helpers.cjs +12 -0
  10. package/__cjs/cache/inmemory/helpers.cjs.map +1 -1
  11. package/__cjs/cache/inmemory/helpers.d.cts +2 -1
  12. package/__cjs/cache/inmemory/inMemoryCache.cjs +34 -22
  13. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  14. package/__cjs/cache/inmemory/inMemoryCache.d.cts +3 -3
  15. package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  16. package/__cjs/cache/inmemory/policies.cjs +7 -8
  17. package/__cjs/cache/inmemory/policies.cjs.map +1 -1
  18. package/__cjs/cache/inmemory/policies.d.cts +3 -4
  19. package/__cjs/cache/inmemory/readFromStore.cjs +3 -3
  20. package/__cjs/cache/inmemory/types.d.cts +3 -1
  21. package/__cjs/cache/inmemory/writeToStore.cjs +4 -4
  22. package/__cjs/core/ApolloClient.cjs +14 -14
  23. package/__cjs/core/ObservableQuery.cjs +8 -8
  24. package/__cjs/core/QueryInfo.cjs +1 -1
  25. package/__cjs/core/QueryManager.cjs +12 -12
  26. package/__cjs/core/RefetchEventManager.cjs +3 -3
  27. package/__cjs/core/index.cjs.map +1 -1
  28. package/__cjs/core/index.d.cts +1 -1
  29. package/__cjs/core/types.d.cts +1 -1
  30. package/__cjs/incremental/handlers/graphql17Alpha9.cjs +1 -1
  31. package/__cjs/incremental/handlers/notImplemented.cjs +1 -1
  32. package/__cjs/invariantErrorCodes.cjs +131 -116
  33. package/__cjs/link/core/ApolloLink.cjs +3 -3
  34. package/__cjs/link/http/checkFetcher.cjs +1 -1
  35. package/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
  36. package/__cjs/link/persisted-queries/index.cjs +2 -2
  37. package/__cjs/link/ws/index.cjs +1 -1
  38. package/__cjs/local-state/LocalState.cjs +11 -11
  39. package/__cjs/masking/maskDefinition.cjs +2 -2
  40. package/__cjs/masking/maskFragment.cjs +2 -2
  41. package/__cjs/masking/maskOperation.cjs +1 -1
  42. package/__cjs/masking/utils.cjs +3 -3
  43. package/__cjs/react/context/ApolloContext.cjs +1 -1
  44. package/__cjs/react/context/ApolloProvider.cjs +1 -1
  45. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs +2 -2
  46. package/__cjs/react/hooks/useApolloClient.cjs +1 -1
  47. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  48. package/__cjs/react/hooks/useBackgroundQuery.d.cts +2 -2
  49. package/__cjs/react/hooks/useLazyQuery.cjs +2 -2
  50. package/__cjs/react/hooks/useLoadableQuery.cjs +2 -2
  51. package/__cjs/react/hooks/useQuery.cjs.map +1 -1
  52. package/__cjs/react/hooks/useQuery.d.cts +15 -2
  53. package/__cjs/react/hooks/useSubscription.cjs +1 -1
  54. package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  55. package/__cjs/react/hooks/useSubscription.d.cts +20 -1
  56. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  57. package/__cjs/react/hooks/useSuspenseQuery.d.cts +29 -29
  58. package/__cjs/react/hooks/useSyncExternalStore.cjs +1 -1
  59. package/__cjs/react/internal/cache/QueryReference.cjs +1 -1
  60. package/__cjs/react/ssr/prerenderStatic.cjs +2 -2
  61. package/__cjs/react/types/types.documentation.d.cts +12 -1
  62. package/__cjs/testing/core/mocking/mockLink.cjs +4 -4
  63. package/__cjs/utilities/graphql/DocumentTransform.cjs +1 -1
  64. package/__cjs/utilities/internal/coerceScalarFieldsToParsed.cjs +45 -12
  65. package/__cjs/utilities/internal/coerceScalarFieldsToParsed.cjs.map +1 -1
  66. package/__cjs/utilities/internal/getFragmentDefinition.cjs +3 -3
  67. package/__cjs/utilities/internal/getFragmentDefinition.cjs.map +1 -1
  68. package/__cjs/utilities/internal/getFragmentFromSelection.cjs +1 -1
  69. package/__cjs/utilities/internal/getFragmentQueryDocument.cjs +2 -2
  70. package/__cjs/utilities/internal/getMainDefinition.cjs +1 -1
  71. package/__cjs/utilities/internal/getQueryDefinition.cjs +1 -1
  72. package/__cjs/utilities/internal/index.cjs +6 -4
  73. package/__cjs/utilities/internal/index.cjs.map +1 -1
  74. package/__cjs/utilities/internal/index.d.cts +2 -1
  75. package/__cjs/utilities/internal/matchScalarList.cjs +12 -0
  76. package/__cjs/utilities/internal/matchScalarList.cjs.map +1 -0
  77. package/__cjs/utilities/internal/matchScalarList.d.cts +8 -0
  78. package/__cjs/utilities/internal/removeDirectivesFromDocument.cjs +1 -1
  79. package/__cjs/utilities/internal/shouldInclude.cjs +4 -4
  80. package/__cjs/utilities/internal/unwrapScalarType.cjs +12 -0
  81. package/__cjs/utilities/internal/unwrapScalarType.cjs.map +1 -0
  82. package/__cjs/utilities/internal/unwrapScalarType.d.cts +10 -0
  83. package/__cjs/utilities/internal/valueToObjectRepresentation.cjs +1 -1
  84. package/__cjs/version.cjs +1 -1
  85. package/cache/core/cache.d.ts +3 -3
  86. package/cache/core/cache.js +3 -3
  87. package/cache/core/cache.js.map +1 -1
  88. package/cache/index.d.ts +1 -1
  89. package/cache/index.js.map +1 -1
  90. package/cache/inmemory/entityStore.js +26 -11
  91. package/cache/inmemory/entityStore.js.map +1 -1
  92. package/cache/inmemory/helpers.d.ts +2 -1
  93. package/cache/inmemory/helpers.js +11 -0
  94. package/cache/inmemory/helpers.js.map +1 -1
  95. package/cache/inmemory/inMemoryCache.d.ts +3 -3
  96. package/cache/inmemory/inMemoryCache.js +36 -24
  97. package/cache/inmemory/inMemoryCache.js.map +1 -1
  98. package/cache/inmemory/key-extractor.js +1 -1
  99. package/cache/inmemory/policies.d.ts +3 -4
  100. package/cache/inmemory/policies.js +7 -8
  101. package/cache/inmemory/policies.js.map +1 -1
  102. package/cache/inmemory/readFromStore.js +3 -3
  103. package/cache/inmemory/types.d.ts +3 -1
  104. package/cache/inmemory/types.js.map +1 -1
  105. package/cache/inmemory/writeToStore.js +4 -4
  106. package/core/ApolloClient.js +14 -14
  107. package/core/ObservableQuery.js +8 -8
  108. package/core/QueryInfo.js +1 -1
  109. package/core/QueryManager.js +12 -12
  110. package/core/RefetchEventManager.js +3 -3
  111. package/core/index.d.ts +1 -1
  112. package/core/index.js.map +1 -1
  113. package/core/types.d.ts +1 -1
  114. package/core/types.js.map +1 -1
  115. package/incremental/handlers/graphql17Alpha9.js +1 -1
  116. package/incremental/handlers/notImplemented.js +1 -1
  117. package/invariantErrorCodes.js +131 -116
  118. package/link/core/ApolloLink.js +3 -3
  119. package/link/http/checkFetcher.js +1 -1
  120. package/link/http/parseAndCheckHttpResponse.js +1 -1
  121. package/link/persisted-queries/index.js +2 -2
  122. package/link/ws/index.js +1 -1
  123. package/local-state/LocalState.js +11 -11
  124. package/masking/maskDefinition.js +2 -2
  125. package/masking/maskFragment.js +2 -2
  126. package/masking/maskOperation.js +1 -1
  127. package/masking/utils.js +3 -3
  128. package/package.json +1 -1
  129. package/react/context/ApolloContext.js +1 -1
  130. package/react/context/ApolloProvider.js +1 -1
  131. package/react/hooks/internal/validateSuspenseHookOptions.js +2 -2
  132. package/react/hooks/useApolloClient.js +1 -1
  133. package/react/hooks/useBackgroundQuery.d.ts +2 -2
  134. package/react/hooks/useBackgroundQuery.js.map +1 -1
  135. package/react/hooks/useLazyQuery.js +2 -2
  136. package/react/hooks/useLoadableQuery.js +2 -2
  137. package/react/hooks/useQuery.d.ts +15 -2
  138. package/react/hooks/useQuery.js.map +1 -1
  139. package/react/hooks/useSubscription.d.ts +20 -1
  140. package/react/hooks/useSubscription.js +1 -1
  141. package/react/hooks/useSubscription.js.map +1 -1
  142. package/react/hooks/useSuspenseQuery.d.ts +29 -29
  143. package/react/hooks/useSuspenseQuery.js.map +1 -1
  144. package/react/hooks/useSyncExternalStore.js +1 -1
  145. package/react/hooks-compiled/internal/validateSuspenseHookOptions.js +2 -2
  146. package/react/hooks-compiled/useApolloClient.js +1 -1
  147. package/react/hooks-compiled/useBackgroundQuery.d.ts +2 -2
  148. package/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
  149. package/react/hooks-compiled/useLazyQuery.js +2 -2
  150. package/react/hooks-compiled/useLoadableQuery.js +2 -2
  151. package/react/hooks-compiled/useQuery.d.ts +15 -2
  152. package/react/hooks-compiled/useQuery.js.map +1 -1
  153. package/react/hooks-compiled/useSubscription.d.ts +20 -1
  154. package/react/hooks-compiled/useSubscription.js +1 -1
  155. package/react/hooks-compiled/useSubscription.js.map +1 -1
  156. package/react/hooks-compiled/useSuspenseQuery.d.ts +29 -29
  157. package/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
  158. package/react/hooks-compiled/useSyncExternalStore.js +1 -1
  159. package/react/internal/cache/QueryReference.js +1 -1
  160. package/react/ssr/prerenderStatic.js +2 -2
  161. package/react/types/types.documentation.d.ts +12 -1
  162. package/react/types/types.documentation.js.map +1 -1
  163. package/testing/core/mocking/mockLink.js +4 -4
  164. package/utilities/graphql/DocumentTransform.js +1 -1
  165. package/utilities/internal/coerceScalarFieldsToParsed.js +40 -11
  166. package/utilities/internal/coerceScalarFieldsToParsed.js.map +1 -1
  167. package/utilities/internal/getFragmentDefinition.js +3 -3
  168. package/utilities/internal/getFragmentDefinition.js.map +1 -1
  169. package/utilities/internal/getFragmentFromSelection.js +1 -1
  170. package/utilities/internal/getFragmentQueryDocument.js +2 -2
  171. package/utilities/internal/getMainDefinition.js +1 -1
  172. package/utilities/internal/getQueryDefinition.js +1 -1
  173. package/utilities/internal/index.d.ts +2 -1
  174. package/utilities/internal/index.js +2 -1
  175. package/utilities/internal/index.js.map +1 -1
  176. package/utilities/internal/matchScalarList.d.ts +8 -0
  177. package/utilities/internal/matchScalarList.js +9 -0
  178. package/utilities/internal/matchScalarList.js.map +1 -0
  179. package/utilities/internal/removeDirectivesFromDocument.js +1 -1
  180. package/utilities/internal/shouldInclude.js +4 -4
  181. package/utilities/internal/unwrapScalarType.d.ts +10 -0
  182. package/utilities/internal/unwrapScalarType.js +9 -0
  183. package/utilities/internal/unwrapScalarType.js.map +1 -0
  184. package/utilities/internal/valueToObjectRepresentation.js +1 -1
  185. package/version.js +1 -1
  186. package/__cjs/utilities/internal/getUnwrappedType.cjs +0 -20
  187. package/__cjs/utilities/internal/getUnwrappedType.cjs.map +0 -1
  188. package/__cjs/utilities/internal/getUnwrappedType.d.cts +0 -8
  189. package/utilities/internal/getUnwrappedType.d.ts +0 -8
  190. package/utilities/internal/getUnwrappedType.js +0 -17
  191. package/utilities/internal/getUnwrappedType.js.map +0 -1
@@ -4,10 +4,9 @@ import type { Incremental } from "@apollo/client/incremental";
4
4
  import type { Reference, StoreObject, StoreValue } from "@apollo/client/utilities";
5
5
  import { isReference } from "@apollo/client/utilities";
6
6
  import type { FragmentMap } from "@apollo/client/utilities/internal";
7
- import type { Scalar } from "../core/Scalar.js";
8
7
  import type { CanReadFunction, FieldSpecifier, ReadFieldFunction, ReadFieldOptions, SafeReadonly, ToReferenceFunction } from "../core/types/common.js";
9
8
  import type { InMemoryCache } from "./inMemoryCache.js";
10
- import type { IdGetter, MergeInfo, ReadMergeModifyContext, ScalarNames } from "./types.js";
9
+ import type { IdGetter, MergeInfo, ReadMergeModifyContext, ScalarType } from "./types.js";
11
10
  import type { WriteContext } from "./writeToStore.js";
12
11
  export type TypePolicies = {
13
12
  [__typename: string]: TypePolicy;
@@ -42,7 +41,7 @@ export type FieldPolicy<TExisting = any, TIncoming = TExisting, TReadResult = TI
42
41
  keyArgs?: KeySpecifier | KeyArgsFunction | false;
43
42
  read?: FieldReadFunction<TExisting, TReadResult, TReadOptions>;
44
43
  merge?: FieldMergeFunction<TExisting, TIncoming, TMergeOptions> | boolean;
45
- scalar?: ScalarNames;
44
+ scalar?: ScalarType;
46
45
  };
47
46
  export type StorageType = Record<string, any>;
48
47
  export interface FieldFunctionOptions<TArgs = Record<string, any>, TVariables extends OperationVariables = Record<string, any>> {
@@ -118,7 +117,7 @@ export declare class Policies {
118
117
  fragmentMatches(fragment: InlineFragmentNode | FragmentDefinitionNode, typename: string | undefined, result?: Record<string, any>, variables?: Record<string, any>): boolean;
119
118
  hasKeyArgs(typename: string | undefined, fieldName: string): boolean;
120
119
  getStoreFieldName(fieldSpec: FieldSpecifier): string;
121
- getScalarForField(typename: string, fieldName: string): Scalar<any, any> | undefined;
120
+ getScalarTypeForField(typename: string, fieldName: string): ScalarType | undefined;
122
121
  readField<V = StoreValue>(options: ReadFieldOptions, context: ReadMergeModifyContext): SafeReadonly<V> | undefined;
123
122
  getReadFunction(typename: string | undefined, fieldName: string): FieldReadFunction | undefined;
124
123
  getMergeFunction(parentTypename: string | undefined, fieldName: string, childTypename: string | undefined): FieldMergeFunction | undefined;
@@ -242,7 +242,7 @@ export class Policies {
242
242
  const rootId = "ROOT_" + which.toUpperCase();
243
243
  const old = this.rootTypenamesById[rootId];
244
244
  if (typename !== old) {
245
- invariant(!old || old === which, 111, which);
245
+ invariant(!old || old === which, 114, which);
246
246
  // First, delete any old __typename associated with this rootId from
247
247
  // rootIdsByTypename.
248
248
  if (old)
@@ -385,7 +385,7 @@ export class Policies {
385
385
  if (supertypeSet.has(supertype)) {
386
386
  if (!typenameSupertypeSet.has(supertype)) {
387
387
  if (checkingFuzzySubtypes) {
388
- __DEV__ && invariant.warn(112, typename, supertype);
388
+ __DEV__ && invariant.warn(115, typename, supertype);
389
389
  }
390
390
  // Record positive results for faster future lookup.
391
391
  // Unfortunately, we cannot safely cache negative results,
@@ -472,9 +472,8 @@ export class Policies {
472
472
  return fieldName === fieldNameFromStoreName(storeFieldName) ? storeFieldName
473
473
  : fieldName + ":" + storeFieldName;
474
474
  }
475
- getScalarForField(typename, fieldName) {
476
- const policy = this.getFieldPolicy(typename, fieldName);
477
- return policy?.scalar ? this.cache.getScalar(policy.scalar) : undefined;
475
+ getScalarTypeForField(typename, fieldName) {
476
+ return this.getFieldPolicy(typename, fieldName)?.scalar;
478
477
  }
479
478
  readField(options, context) {
480
479
  const objectOrReference = options.from;
@@ -641,7 +640,7 @@ export function normalizeReadFieldOptions(readFieldArgs, objectOrReference, vari
641
640
  }
642
641
  }
643
642
  if (__DEV__ && options.from === void 0) {
644
- __DEV__ && invariant.warn(113, stringifyForDisplay(Array.from(readFieldArgs)));
643
+ __DEV__ && invariant.warn(116, stringifyForDisplay(Array.from(readFieldArgs)));
645
644
  }
646
645
  if (void 0 === options.variables) {
647
646
  options.variables = variables;
@@ -651,7 +650,7 @@ export function normalizeReadFieldOptions(readFieldArgs, objectOrReference, vari
651
650
  function makeMergeObjectsFunction(store) {
652
651
  return function mergeObjects(existing, incoming) {
653
652
  if (isArray(existing) || isArray(incoming)) {
654
- throw newInvariantError(114);
653
+ throw newInvariantError(117);
655
654
  }
656
655
  // These dynamic checks are necessary because the parameters of a
657
656
  // custom merge function can easily have the any type, so the type
@@ -688,6 +687,6 @@ function makeMergeObjectsFunction(store) {
688
687
  };
689
688
  }
690
689
  function warnAboutScalarConfig(typename, fieldName, scalar, kind) {
691
- __DEV__ && invariant.warn(115, `${typename}.${fieldName}`, scalar, kind);
690
+ __DEV__ && invariant.warn(118, `${typename}.${fieldName}`, scalar, kind);
692
691
  }
693
692
  //# sourceMappingURL=policies.js.map