@apollo/client 4.0.0-alpha.1 → 4.0.0-alpha.3

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 (238) hide show
  1. package/.changeset/cuddly-spiders-tie.md +5 -0
  2. package/.changeset/four-ghosts-watch.md +5 -0
  3. package/.changeset/gorgeous-chefs-tap.md +5 -0
  4. package/.changeset/hip-vans-act.md +5 -0
  5. package/.changeset/nervous-goats-allow.md +5 -0
  6. package/.changeset/pre.json +10 -0
  7. package/.changeset/slimy-maps-press.md +5 -0
  8. package/.changeset/small-buttons-rhyme.md +5 -0
  9. package/.changeset/tall-bikes-develop.md +5 -0
  10. package/.changeset/unlucky-kiwis-sell.md +5 -0
  11. package/.changeset/young-phones-fold.md +5 -0
  12. package/CHANGELOG.md +36 -0
  13. package/__cjs/cache/core/cache.cjs +1 -1
  14. package/__cjs/cache/core/cache.cjs.map +1 -1
  15. package/__cjs/cache/core/cache.d.cts +17 -17
  16. package/__cjs/cache/core/types/Cache.cjs.map +1 -1
  17. package/__cjs/cache/core/types/Cache.d.cts +9 -16
  18. package/__cjs/cache/core/types/DataProxy.d.cts +8 -23
  19. package/__cjs/cache/inmemory/entityStore.cjs +2 -4
  20. package/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
  21. package/__cjs/cache/inmemory/entityStore.d.cts +2 -2
  22. package/__cjs/cache/inmemory/fragmentRegistry.cjs +3 -3
  23. package/__cjs/cache/inmemory/fragmentRegistry.cjs.map +1 -1
  24. package/__cjs/cache/inmemory/helpers.cjs +0 -8
  25. package/__cjs/cache/inmemory/helpers.cjs.map +1 -1
  26. package/__cjs/cache/inmemory/helpers.d.cts +3 -4
  27. package/__cjs/cache/inmemory/inMemoryCache.cjs +4 -12
  28. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  29. package/__cjs/cache/inmemory/inMemoryCache.d.cts +7 -8
  30. package/__cjs/cache/inmemory/policies.cjs +5 -5
  31. package/__cjs/cache/inmemory/policies.cjs.map +1 -1
  32. package/__cjs/cache/inmemory/policies.d.cts +1 -1
  33. package/__cjs/cache/inmemory/reactiveVars.cjs.map +1 -1
  34. package/__cjs/cache/inmemory/reactiveVars.d.cts +6 -6
  35. package/__cjs/cache/inmemory/readFromStore.cjs +12 -54
  36. package/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
  37. package/__cjs/cache/inmemory/readFromStore.d.cts +1 -6
  38. package/__cjs/cache/inmemory/types.d.cts +3 -17
  39. package/__cjs/cache/inmemory/writeToStore.cjs +4 -4
  40. package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  41. package/__cjs/cache/inmemory/writeToStore.d.cts +2 -2
  42. package/__cjs/core/ApolloClient.cjs.map +1 -1
  43. package/__cjs/core/ApolloClient.d.cts +18 -18
  44. package/__cjs/core/LocalState.cjs.map +1 -1
  45. package/__cjs/core/LocalState.d.cts +8 -8
  46. package/__cjs/core/ObservableQuery.cjs.map +1 -1
  47. package/__cjs/core/ObservableQuery.d.cts +4 -4
  48. package/__cjs/core/QueryInfo.cjs +8 -8
  49. package/__cjs/core/QueryInfo.cjs.map +1 -1
  50. package/__cjs/core/QueryInfo.d.cts +2 -1
  51. package/__cjs/core/QueryManager.cjs +22 -11
  52. package/__cjs/core/QueryManager.cjs.map +1 -1
  53. package/__cjs/core/QueryManager.d.cts +26 -16
  54. package/__cjs/core/types.d.cts +4 -4
  55. package/__cjs/core/watchQueryOptions.d.cts +10 -26
  56. package/__cjs/link/http/createHttpLink.d.cts +2 -1
  57. package/__cjs/link/persisted-queries/index.cjs +1 -1
  58. package/__cjs/link/persisted-queries/index.cjs.map +1 -1
  59. package/__cjs/link/persisted-queries/index.d.cts +12 -1
  60. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs +1 -1
  61. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs.map +1 -1
  62. package/__cjs/link/remove-typename/removeTypenameFromVariables.d.cts +10 -1
  63. package/__cjs/masking/maskDefinition.cjs.map +1 -1
  64. package/__cjs/masking/maskDefinition.d.cts +1 -1
  65. package/__cjs/masking/maskFragment.cjs.map +1 -1
  66. package/__cjs/masking/maskFragment.d.cts +1 -1
  67. package/__cjs/masking/maskOperation.cjs.map +1 -1
  68. package/__cjs/masking/maskOperation.d.cts +1 -1
  69. package/__cjs/react/context/ApolloConsumer.cjs.map +1 -1
  70. package/__cjs/react/context/ApolloConsumer.d.cts +1 -1
  71. package/__cjs/react/context/ApolloContext.cjs.map +1 -1
  72. package/__cjs/react/context/ApolloContext.d.cts +1 -1
  73. package/__cjs/react/context/ApolloProvider.cjs.map +1 -1
  74. package/__cjs/react/context/ApolloProvider.d.cts +3 -3
  75. package/__cjs/react/hooks/internal/__use.d.cts +3 -1
  76. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.d.cts +1 -1
  77. package/__cjs/react/hooks/internal/wrapHook.cjs.map +1 -1
  78. package/__cjs/react/hooks/internal/wrapHook.d.cts +1 -1
  79. package/__cjs/react/hooks/useApolloClient.cjs.map +1 -1
  80. package/__cjs/react/hooks/useApolloClient.d.cts +1 -1
  81. package/__cjs/react/hooks/useFragment.cjs.map +1 -1
  82. package/__cjs/react/hooks/useFragment.d.cts +3 -3
  83. package/__cjs/react/hooks/useLazyQuery.cjs +2 -2
  84. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  85. package/__cjs/react/hooks/useLazyQuery.d.cts +8 -20
  86. package/__cjs/react/hooks/useMutation.cjs.map +1 -1
  87. package/__cjs/react/hooks/useMutation.d.cts +1 -1
  88. package/__cjs/react/hooks/useQuery.cjs +11 -21
  89. package/__cjs/react/hooks/useQuery.cjs.map +1 -1
  90. package/__cjs/react/hooks/useQuery.d.cts +1 -1
  91. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
  92. package/__cjs/react/hooks/useReadQuery.cjs.map +1 -1
  93. package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  94. package/__cjs/react/hooks/useSubscription.d.cts +7 -1
  95. package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
  96. package/__cjs/react/hooks/useSuspenseFragment.d.cts +1 -1
  97. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  98. package/__cjs/react/hooks/useSuspenseQuery.d.cts +2 -2
  99. package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -1
  100. package/__cjs/react/internal/cache/FragmentReference.d.cts +3 -3
  101. package/__cjs/react/internal/cache/QueryReference.cjs +3 -14
  102. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
  103. package/__cjs/react/internal/cache/QueryReference.d.cts +6 -6
  104. package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -1
  105. package/__cjs/react/internal/cache/SuspenseCache.d.cts +3 -3
  106. package/__cjs/react/internal/cache/getSuspenseCache.cjs.map +1 -1
  107. package/__cjs/react/internal/cache/getSuspenseCache.d.cts +2 -2
  108. package/__cjs/react/parser/index.cjs +1 -1
  109. package/__cjs/react/parser/index.cjs.map +1 -1
  110. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  111. package/__cjs/react/query-preloader/createQueryPreloader.d.cts +1 -9
  112. package/__cjs/react/types/types.d.cts +31 -59
  113. package/__cjs/react/types/types.documentation.d.cts +0 -20
  114. package/__cjs/testing/core/mocking/mockClient.cjs.map +1 -1
  115. package/__cjs/testing/core/mocking/mockClient.d.cts +1 -2
  116. package/__cjs/testing/internal/disposables/withProdMode.d.cts +1 -1
  117. package/__cjs/testing/internal/incremental.d.cts +3 -2
  118. package/__cjs/testing/internal/renderHelpers.cjs.map +1 -1
  119. package/__cjs/testing/internal/renderHelpers.d.cts +2 -2
  120. package/__cjs/testing/internal/scenarios/index.d.cts +16 -5
  121. package/__cjs/testing/matchers/toEqualQueryResult.cjs +0 -1
  122. package/__cjs/testing/matchers/toEqualQueryResult.cjs.map +1 -1
  123. package/__cjs/testing/matchers/toEqualQueryResult.d.cts +1 -1
  124. package/__cjs/testing/react/MockedProvider.cjs.map +1 -1
  125. package/__cjs/testing/react/MockedProvider.d.cts +3 -3
  126. package/__cjs/utilities/common/errorHandling.d.cts +1 -1
  127. package/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -1
  128. package/__cjs/utilities/internal/getMemoryInternals.d.cts +1 -1
  129. package/__cjs/utilities/types/NoInfer.d.cts +1 -1
  130. package/__cjs/version.cjs +1 -1
  131. package/__cjs/version.d.cts +1 -1
  132. package/cache/core/cache.d.ts +17 -17
  133. package/cache/core/cache.js.map +1 -1
  134. package/cache/core/types/Cache.d.ts +9 -16
  135. package/cache/core/types/Cache.js.map +1 -1
  136. package/cache/core/types/DataProxy.d.ts +8 -23
  137. package/cache/inmemory/entityStore.d.ts +2 -2
  138. package/cache/inmemory/entityStore.js +2 -4
  139. package/cache/inmemory/entityStore.js.map +1 -1
  140. package/cache/inmemory/helpers.d.ts +0 -1
  141. package/cache/inmemory/helpers.js +0 -7
  142. package/cache/inmemory/helpers.js.map +1 -1
  143. package/cache/inmemory/inMemoryCache.d.ts +7 -8
  144. package/cache/inmemory/inMemoryCache.js +4 -12
  145. package/cache/inmemory/inMemoryCache.js.map +1 -1
  146. package/cache/inmemory/policies.d.ts +1 -1
  147. package/cache/inmemory/policies.js +5 -5
  148. package/cache/inmemory/policies.js.map +1 -1
  149. package/cache/inmemory/reactiveVars.d.ts +6 -6
  150. package/cache/inmemory/reactiveVars.js.map +1 -1
  151. package/cache/inmemory/readFromStore.d.ts +1 -6
  152. package/cache/inmemory/readFromStore.js +12 -54
  153. package/cache/inmemory/readFromStore.js.map +1 -1
  154. package/cache/inmemory/types.d.ts +3 -17
  155. package/cache/inmemory/writeToStore.d.ts +2 -2
  156. package/cache/inmemory/writeToStore.js +4 -4
  157. package/cache/inmemory/writeToStore.js.map +1 -1
  158. package/core/ApolloClient.d.ts +18 -18
  159. package/core/ApolloClient.js.map +1 -1
  160. package/core/LocalState.d.ts +6 -6
  161. package/core/LocalState.js.map +1 -1
  162. package/core/ObservableQuery.d.ts +3 -3
  163. package/core/ObservableQuery.js.map +1 -1
  164. package/core/QueryInfo.d.ts +2 -1
  165. package/core/QueryInfo.js +8 -8
  166. package/core/QueryInfo.js.map +1 -1
  167. package/core/QueryManager.d.ts +13 -13
  168. package/core/QueryManager.js +21 -10
  169. package/core/QueryManager.js.map +1 -1
  170. package/core/types.d.ts +4 -4
  171. package/core/watchQueryOptions.d.ts +10 -26
  172. package/masking/maskDefinition.d.ts +1 -1
  173. package/masking/maskDefinition.js.map +1 -1
  174. package/masking/maskFragment.d.ts +1 -1
  175. package/masking/maskFragment.js.map +1 -1
  176. package/masking/maskOperation.d.ts +1 -1
  177. package/masking/maskOperation.js.map +1 -1
  178. package/package.json +1 -1
  179. package/react/context/ApolloConsumer.d.ts +1 -1
  180. package/react/context/ApolloConsumer.js.map +1 -1
  181. package/react/context/ApolloContext.d.ts +1 -1
  182. package/react/context/ApolloContext.js.map +1 -1
  183. package/react/context/ApolloProvider.d.ts +3 -3
  184. package/react/context/ApolloProvider.js.map +1 -1
  185. package/react/hooks/internal/wrapHook.d.ts +1 -1
  186. package/react/hooks/internal/wrapHook.js.map +1 -1
  187. package/react/hooks/useApolloClient.d.ts +1 -1
  188. package/react/hooks/useApolloClient.js.map +1 -1
  189. package/react/hooks/useFragment.d.ts +3 -3
  190. package/react/hooks/useFragment.js.map +1 -1
  191. package/react/hooks/useLazyQuery.d.ts +8 -20
  192. package/react/hooks/useLazyQuery.js +2 -2
  193. package/react/hooks/useLazyQuery.js.map +1 -1
  194. package/react/hooks/useMutation.d.ts +1 -1
  195. package/react/hooks/useMutation.js.map +1 -1
  196. package/react/hooks/useQuery.d.ts +1 -1
  197. package/react/hooks/useQuery.js +11 -21
  198. package/react/hooks/useQuery.js.map +1 -1
  199. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  200. package/react/hooks/useReadQuery.js.map +1 -1
  201. package/react/hooks/useSubscription.d.ts +1 -1
  202. package/react/hooks/useSubscription.js.map +1 -1
  203. package/react/hooks/useSuspenseFragment.d.ts +1 -1
  204. package/react/hooks/useSuspenseFragment.js.map +1 -1
  205. package/react/hooks/useSuspenseQuery.d.ts +2 -2
  206. package/react/hooks/useSuspenseQuery.js.map +1 -1
  207. package/react/internal/cache/FragmentReference.d.ts +3 -3
  208. package/react/internal/cache/FragmentReference.js.map +1 -1
  209. package/react/internal/cache/QueryReference.d.ts +1 -1
  210. package/react/internal/cache/QueryReference.js +3 -14
  211. package/react/internal/cache/QueryReference.js.map +1 -1
  212. package/react/internal/cache/SuspenseCache.d.ts +3 -3
  213. package/react/internal/cache/SuspenseCache.js.map +1 -1
  214. package/react/internal/cache/getSuspenseCache.d.ts +1 -1
  215. package/react/internal/cache/getSuspenseCache.js.map +1 -1
  216. package/react/query-preloader/createQueryPreloader.d.ts +1 -9
  217. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  218. package/react/types/types.d.ts +31 -59
  219. package/react/types/types.documentation.d.ts +0 -20
  220. package/testing/core/mocking/mockClient.d.ts +1 -2
  221. package/testing/core/mocking/mockClient.js.map +1 -1
  222. package/testing/internal/renderHelpers.d.ts +2 -2
  223. package/testing/internal/renderHelpers.js.map +1 -1
  224. package/testing/matchers/toEqualQueryResult.d.ts +1 -1
  225. package/testing/matchers/toEqualQueryResult.js +0 -1
  226. package/testing/matchers/toEqualQueryResult.js.map +1 -1
  227. package/testing/react/MockedProvider.d.ts +3 -3
  228. package/testing/react/MockedProvider.js.map +1 -1
  229. package/utilities/internal/getMemoryInternals.js.map +1 -1
  230. package/utilities/types/NoInfer.d.ts +1 -1
  231. package/version.d.ts +1 -1
  232. package/version.js +1 -1
  233. package/__cjs/cache/inmemory/object-canon.cjs +0 -180
  234. package/__cjs/cache/inmemory/object-canon.cjs.map +0 -1
  235. package/__cjs/cache/inmemory/object-canon.d.cts +0 -12
  236. package/cache/inmemory/object-canon.d.ts +0 -12
  237. package/cache/inmemory/object-canon.js +0 -176
  238. package/cache/inmemory/object-canon.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  import type { TypedDocumentNode } from "@graphql-typed-document-node/core";
2
2
  import type { DocumentNode } from "graphql";
3
+ import type { OperationVariables } from "@apollo/client/core";
3
4
  import type { Unmasked } from "@apollo/client/masking";
4
5
  import type { DeepPartial, Reference } from "@apollo/client/utilities";
5
6
  import type { MissingFieldError } from "./common.js";
@@ -59,14 +60,6 @@ export declare namespace DataProxy {
59
60
  * readQuery method can be omitted. Defaults to false.
60
61
  */
61
62
  optimistic?: boolean;
62
- /**
63
- * Whether to canonize cache results before returning them. Canonization takes some extra time, but it speeds up future deep equality comparisons. Defaults to false.
64
- *
65
- * @deprecated
66
- *
67
- * Using `canonizeResults` can result in memory leaks so we generally do not recommend using this option anymore. A future version of Apollo Client will contain a similar feature without the risk of memory leaks.
68
- */
69
- canonizeResults?: boolean;
70
63
  }
71
64
  interface ReadFragmentOptions<TData, TVariables> extends Fragment<TVariables, TData> {
72
65
  /**
@@ -80,14 +73,6 @@ export declare namespace DataProxy {
80
73
  * readQuery method can be omitted. Defaults to false.
81
74
  */
82
75
  optimistic?: boolean;
83
- /**
84
- * Whether to canonize cache results before returning them. Canonization takes some extra time, but it speeds up future deep equality comparisons. Defaults to false.
85
- *
86
- * @deprecated
87
- *
88
- * Using `canonizeResults` can result in memory leaks so we generally do not recommend using this option anymore. A future version of Apollo Client will contain a similar feature without the risk of memory leaks.
89
- */
90
- canonizeResults?: boolean;
91
76
  }
92
77
  interface WriteOptions<TData> {
93
78
  /**
@@ -112,13 +97,13 @@ export declare namespace DataProxy {
112
97
  }
113
98
  interface UpdateFragmentOptions<TData, TVariables> extends Omit<ReadFragmentOptions<TData, TVariables> & WriteFragmentOptions<TData, TVariables>, "data"> {
114
99
  }
115
- type DiffResult<T> = {
116
- result: T;
100
+ type DiffResult<TData> = {
101
+ result: TData;
117
102
  complete: true;
118
103
  missing?: never;
119
104
  fromOptimisticTransaction?: boolean;
120
105
  } | {
121
- result: DeepPartial<T> | null;
106
+ result: DeepPartial<TData> | null;
122
107
  complete: false;
123
108
  missing?: MissingFieldError;
124
109
  fromOptimisticTransaction?: boolean;
@@ -134,22 +119,22 @@ export interface DataProxy {
134
119
  /**
135
120
  * Reads a GraphQL query from the root query id.
136
121
  */
137
- readQuery<QueryType, TVariables = any>(options: DataProxy.ReadQueryOptions<QueryType, TVariables>, optimistic?: boolean): Unmasked<QueryType> | null;
122
+ readQuery<TData = unknown, TVariables = OperationVariables>(options: DataProxy.ReadQueryOptions<TData, TVariables>, optimistic?: boolean): Unmasked<TData> | null;
138
123
  /**
139
124
  * Reads a GraphQL fragment from any arbitrary id. If there is more than
140
125
  * one fragment in the provided document then a `fragmentName` must be
141
126
  * provided to select the correct fragment.
142
127
  */
143
- readFragment<FragmentType, TVariables = any>(options: DataProxy.ReadFragmentOptions<FragmentType, TVariables>, optimistic?: boolean): Unmasked<FragmentType> | null;
128
+ readFragment<TData = unknown, TVariables = OperationVariables>(options: DataProxy.ReadFragmentOptions<TData, TVariables>, optimistic?: boolean): Unmasked<TData> | null;
144
129
  /**
145
130
  * Writes a GraphQL query to the root query id.
146
131
  */
147
- writeQuery<TData = any, TVariables = any>(options: DataProxy.WriteQueryOptions<TData, TVariables>): Reference | undefined;
132
+ writeQuery<TData = unknown, TVariables = OperationVariables>(options: DataProxy.WriteQueryOptions<TData, TVariables>): Reference | undefined;
148
133
  /**
149
134
  * Writes a GraphQL fragment to any arbitrary id. If there is more than
150
135
  * one fragment in the provided document then a `fragmentName` must be
151
136
  * provided to select the correct fragment.
152
137
  */
153
- writeFragment<TData = any, TVariables = any>(options: DataProxy.WriteFragmentOptions<TData, TVariables>): Reference | undefined;
138
+ writeFragment<TData = unknown, TVariables = OperationVariables>(options: DataProxy.WriteFragmentOptions<TData, TVariables>): Reference | undefined;
154
139
  }
155
140
  //# sourceMappingURL=DataProxy.d.ts.map
@@ -34,7 +34,7 @@ export declare abstract class EntityStore implements NormalizedCache {
34
34
  /** overload for `InMemoryCache.maybeBroadcastWatch` */
35
35
  makeCacheKey(document: DocumentNode, callback: Cache.WatchCallback<any>, details: string): object;
36
36
  /** overload for `StoreReader.executeSelectionSet` */
37
- makeCacheKey(selectionSet: SelectionSetNode, parent: string | StoreObject, varString: string | undefined, canonizeResults: boolean): object;
37
+ makeCacheKey(selectionSet: SelectionSetNode, parent: string | StoreObject, varString: string | undefined): object;
38
38
  /** overload for `StoreReader.executeSubSelectedArray` */
39
39
  makeCacheKey(field: FieldNode, array: readonly any[], varString: string | undefined): object;
40
40
  /** @deprecated This is only meant for internal usage,
@@ -80,7 +80,7 @@ declare class Layer extends EntityStore {
80
80
  removeLayer(layerId: string): EntityStore;
81
81
  toObject(): NormalizedCacheObject;
82
82
  findChildRefIds(dataId: string): Record<string, true>;
83
- getStorage(): StorageType;
83
+ getStorage(...args: Parameters<EntityStore["getStorage"]>): StorageType;
84
84
  }
85
85
  declare class Stump extends Layer {
86
86
  constructor(root: EntityStore.Root);
@@ -621,13 +621,11 @@ class Layer extends EntityStore {
621
621
  }
622
622
  : fromParent;
623
623
  }
624
- getStorage() {
624
+ getStorage(...args) {
625
625
  let p = this.parent;
626
626
  while (p.parent)
627
627
  p = p.parent;
628
- return p.getStorage.apply(p,
629
- // @ts-expect-error
630
- arguments);
628
+ return p.getStorage(...args);
631
629
  }
632
630
  }
633
631
  // Represents a Layer permanently installed just above the Root, which allows