@apollo/client 4.0.11 → 4.0.12-beta.0

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 (317) hide show
  1. package/CHANGELOG.md +204 -0
  2. package/__cjs/cache/core/cache.cjs +216 -52
  3. package/__cjs/cache/core/cache.cjs.map +1 -1
  4. package/__cjs/cache/core/cache.d.cts +141 -25
  5. package/__cjs/cache/core/types/Cache.d.cts +77 -17
  6. package/__cjs/cache/index.cjs.map +1 -1
  7. package/__cjs/cache/index.d.cts +1 -1
  8. package/__cjs/cache/inmemory/entityStore.cjs +6 -4
  9. package/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
  10. package/__cjs/cache/inmemory/helpers.d.cts +1 -1
  11. package/__cjs/cache/inmemory/inMemoryCache.cjs +62 -1
  12. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  13. package/__cjs/cache/inmemory/inMemoryCache.d.cts +48 -0
  14. package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  15. package/__cjs/cache/inmemory/key-extractor.cjs.map +1 -1
  16. package/__cjs/cache/inmemory/policies.cjs +56 -17
  17. package/__cjs/cache/inmemory/policies.cjs.map +1 -1
  18. package/__cjs/cache/inmemory/policies.d.cts +30 -6
  19. package/__cjs/cache/inmemory/readFromStore.cjs +3 -3
  20. package/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
  21. package/__cjs/cache/inmemory/types.d.cts +2 -0
  22. package/__cjs/cache/inmemory/writeToStore.cjs +24 -10
  23. package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  24. package/__cjs/cache/inmemory/writeToStore.d.cts +2 -1
  25. package/__cjs/core/ApolloClient.cjs +31 -49
  26. package/__cjs/core/ApolloClient.cjs.map +1 -1
  27. package/__cjs/core/ApolloClient.d.cts +143 -17
  28. package/__cjs/core/ObservableQuery.cjs +162 -128
  29. package/__cjs/core/ObservableQuery.cjs.map +1 -1
  30. package/__cjs/core/ObservableQuery.d.cts +1 -0
  31. package/__cjs/core/QueryInfo.cjs +9 -1
  32. package/__cjs/core/QueryInfo.cjs.map +1 -1
  33. package/__cjs/core/QueryInfo.d.cts +2 -1
  34. package/__cjs/core/QueryManager.cjs +46 -24
  35. package/__cjs/core/QueryManager.cjs.map +1 -1
  36. package/__cjs/core/QueryManager.d.cts +18 -2
  37. package/__cjs/incremental/handlers/defer20220824.cjs +44 -19
  38. package/__cjs/incremental/handlers/defer20220824.cjs.map +1 -1
  39. package/__cjs/incremental/handlers/defer20220824.d.cts +15 -7
  40. package/__cjs/incremental/handlers/graphql17Alpha9.cjs +222 -0
  41. package/__cjs/incremental/handlers/graphql17Alpha9.cjs.map +1 -0
  42. package/__cjs/incremental/handlers/graphql17Alpha9.d.cts +98 -0
  43. package/__cjs/incremental/handlers/notImplemented.cjs +1 -1
  44. package/__cjs/incremental/handlers/notImplemented.cjs.map +1 -1
  45. package/__cjs/incremental/index.cjs +3 -1
  46. package/__cjs/incremental/index.cjs.map +1 -1
  47. package/__cjs/incremental/index.d.cts +1 -0
  48. package/__cjs/incremental/types.d.cts +9 -0
  49. package/__cjs/invariantErrorCodes.cjs +78 -62
  50. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs +13 -1
  51. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs.map +1 -1
  52. package/__cjs/link/client-awareness/ClientAwarenessLink.d.cts +1 -1
  53. package/__cjs/link/core/ApolloLink.cjs +3 -3
  54. package/__cjs/link/error/index.cjs +1 -1
  55. package/__cjs/link/error/index.cjs.map +1 -1
  56. package/__cjs/link/error/index.d.cts +1 -1
  57. package/__cjs/link/http/checkFetcher.cjs +1 -1
  58. package/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
  59. package/__cjs/link/persisted-queries/index.cjs +2 -2
  60. package/__cjs/link/ws/index.cjs +1 -1
  61. package/__cjs/local-state/LocalState.cjs +28 -14
  62. package/__cjs/local-state/LocalState.cjs.map +1 -1
  63. package/__cjs/local-state/LocalState.d.cts +3 -2
  64. package/__cjs/masking/types.d.cts +2 -1
  65. package/__cjs/react/hooks/internal/useDeepMemo.cjs +2 -0
  66. package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -1
  67. package/__cjs/react/hooks/useBackgroundQuery.cjs +1 -3
  68. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  69. package/__cjs/react/hooks/useFragment.cjs +38 -87
  70. package/__cjs/react/hooks/useFragment.cjs.map +1 -1
  71. package/__cjs/react/hooks/useFragment.d.cts +65 -6
  72. package/__cjs/react/hooks/useLazyQuery.cjs +2 -0
  73. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  74. package/__cjs/react/hooks/useMutation.cjs +7 -1
  75. package/__cjs/react/hooks/useMutation.cjs.map +1 -1
  76. package/__cjs/react/hooks/useMutation.d.cts +13 -1
  77. package/__cjs/react/hooks/useQuery.cjs +1 -4
  78. package/__cjs/react/hooks/useQuery.cjs.map +1 -1
  79. package/__cjs/react/hooks/useQuery.d.cts +1 -1
  80. package/__cjs/react/hooks/useQueryRefHandlers.cjs +1 -3
  81. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
  82. package/__cjs/react/hooks/useReadQuery.cjs +1 -3
  83. package/__cjs/react/hooks/useReadQuery.cjs.map +1 -1
  84. package/__cjs/react/hooks/useSubscription.cjs +1 -1
  85. package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  86. package/__cjs/react/hooks/useSuspenseFragment.cjs +16 -16
  87. package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
  88. package/__cjs/react/hooks/useSuspenseFragment.d.cts +33 -7
  89. package/__cjs/react/hooks/useSuspenseQuery.cjs +4 -4
  90. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  91. package/__cjs/react/internal/cache/FragmentReference.cjs +3 -22
  92. package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -1
  93. package/__cjs/react/internal/cache/FragmentReference.d.cts +2 -4
  94. package/__cjs/react/internal/cache/QueryReference.cjs +16 -0
  95. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
  96. package/__cjs/react/internal/cache/QueryReference.d.cts +5 -0
  97. package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -1
  98. package/__cjs/react/internal/cache/SuspenseCache.d.cts +1 -1
  99. package/__cjs/react/internal/cache/types.d.cts +2 -2
  100. package/__cjs/react/query-preloader/createQueryPreloader.cjs +41 -1
  101. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  102. package/__cjs/react/ssr/useSSRQuery.cjs +1 -0
  103. package/__cjs/react/ssr/useSSRQuery.cjs.map +1 -1
  104. package/__cjs/utilities/DeepPartial.cjs.map +1 -1
  105. package/__cjs/utilities/DeepPartial.d.cts +1 -1
  106. package/__cjs/utilities/internal/DeepMerger.cjs +36 -4
  107. package/__cjs/utilities/internal/DeepMerger.cjs.map +1 -1
  108. package/__cjs/utilities/internal/DeepMerger.d.cts +20 -4
  109. package/__cjs/utilities/internal/combineLatestBatched.cjs +71 -0
  110. package/__cjs/utilities/internal/combineLatestBatched.cjs.map +1 -0
  111. package/__cjs/utilities/internal/combineLatestBatched.d.cts +14 -0
  112. package/__cjs/utilities/internal/constants.cjs +17 -1
  113. package/__cjs/utilities/internal/constants.cjs.map +1 -1
  114. package/__cjs/utilities/internal/constants.d.cts +16 -0
  115. package/__cjs/utilities/internal/getStoreKeyName.cjs +1 -0
  116. package/__cjs/utilities/internal/getStoreKeyName.cjs.map +1 -1
  117. package/__cjs/utilities/internal/index.cjs +8 -2
  118. package/__cjs/utilities/internal/index.cjs.map +1 -1
  119. package/__cjs/utilities/internal/index.d.cts +4 -1
  120. package/__cjs/utilities/internal/mapObservableFragment.cjs +27 -0
  121. package/__cjs/utilities/internal/mapObservableFragment.cjs.map +1 -0
  122. package/__cjs/utilities/internal/mapObservableFragment.d.cts +3 -0
  123. package/__cjs/utilities/internal/memoize.cjs +2 -2
  124. package/__cjs/utilities/internal/memoize.cjs.map +1 -1
  125. package/__cjs/utilities/internal/memoize.d.cts +2 -1
  126. package/__cjs/utilities/internal/ponyfills/FinalizationRegistry.cjs +61 -0
  127. package/__cjs/utilities/internal/ponyfills/FinalizationRegistry.cjs.map +1 -0
  128. package/__cjs/utilities/internal/ponyfills/FinalizationRegistry.d.cts +11 -0
  129. package/__cjs/utilities/internal/ponyfills/index.cjs +6 -0
  130. package/__cjs/utilities/internal/ponyfills/index.cjs.map +1 -0
  131. package/__cjs/utilities/internal/ponyfills/index.d.cts +3 -0
  132. package/__cjs/utilities/internal/ponyfills/index.react-native.cjs +6 -0
  133. package/__cjs/utilities/internal/ponyfills/index.react-native.cjs.map +1 -0
  134. package/__cjs/utilities/internal/ponyfills/index.react-native.d.cts +2 -0
  135. package/__cjs/utilities/internal/types/ExtensionsWithStreamDetails.cjs +3 -0
  136. package/__cjs/utilities/internal/types/ExtensionsWithStreamDetails.cjs.map +1 -0
  137. package/__cjs/utilities/internal/types/ExtensionsWithStreamDetails.d.cts +24 -0
  138. package/__cjs/version.cjs +1 -1
  139. package/__cjs/version.cjs.map +1 -1
  140. package/cache/core/cache.d.ts +141 -25
  141. package/cache/core/cache.js +219 -55
  142. package/cache/core/cache.js.map +1 -1
  143. package/cache/core/types/Cache.d.ts +77 -17
  144. package/cache/core/types/Cache.js.map +1 -1
  145. package/cache/index.d.ts +1 -1
  146. package/cache/index.js.map +1 -1
  147. package/cache/inmemory/entityStore.js +6 -4
  148. package/cache/inmemory/entityStore.js.map +1 -1
  149. package/cache/inmemory/helpers.d.ts +1 -1
  150. package/cache/inmemory/inMemoryCache.d.ts +48 -0
  151. package/cache/inmemory/inMemoryCache.js +62 -1
  152. package/cache/inmemory/inMemoryCache.js.map +1 -1
  153. package/cache/inmemory/key-extractor.js +1 -1
  154. package/cache/inmemory/key-extractor.js.map +1 -1
  155. package/cache/inmemory/policies.d.ts +30 -6
  156. package/cache/inmemory/policies.js +45 -7
  157. package/cache/inmemory/policies.js.map +1 -1
  158. package/cache/inmemory/readFromStore.js +3 -3
  159. package/cache/inmemory/readFromStore.js.map +1 -1
  160. package/cache/inmemory/types.d.ts +2 -0
  161. package/cache/inmemory/types.js.map +1 -1
  162. package/cache/inmemory/writeToStore.d.ts +2 -1
  163. package/cache/inmemory/writeToStore.js +26 -12
  164. package/cache/inmemory/writeToStore.js.map +1 -1
  165. package/core/ApolloClient.d.ts +143 -17
  166. package/core/ApolloClient.js +32 -50
  167. package/core/ApolloClient.js.map +1 -1
  168. package/core/ObservableQuery.d.ts +1 -0
  169. package/core/ObservableQuery.js +165 -131
  170. package/core/ObservableQuery.js.map +1 -1
  171. package/core/QueryInfo.d.ts +2 -1
  172. package/core/QueryInfo.js +10 -2
  173. package/core/QueryInfo.js.map +1 -1
  174. package/core/QueryManager.d.ts +18 -2
  175. package/core/QueryManager.js +47 -25
  176. package/core/QueryManager.js.map +1 -1
  177. package/incremental/handlers/defer20220824.d.ts +15 -7
  178. package/incremental/handlers/defer20220824.js +44 -19
  179. package/incremental/handlers/defer20220824.js.map +1 -1
  180. package/incremental/handlers/graphql17Alpha9.d.ts +98 -0
  181. package/incremental/handlers/graphql17Alpha9.js +218 -0
  182. package/incremental/handlers/graphql17Alpha9.js.map +1 -0
  183. package/incremental/handlers/notImplemented.js +1 -1
  184. package/incremental/handlers/notImplemented.js.map +1 -1
  185. package/incremental/index.d.ts +1 -0
  186. package/incremental/index.js +3 -2
  187. package/incremental/index.js.map +1 -1
  188. package/incremental/types.d.ts +9 -0
  189. package/incremental/types.js.map +1 -1
  190. package/invariantErrorCodes.js +78 -62
  191. package/legacyEntryPoints/utilities/internal/ponyfills/index.d.ts +1 -0
  192. package/legacyEntryPoints/utilities/internal/ponyfills/index.js +1 -0
  193. package/legacyEntryPoints/utilities/internal/ponyfills/ponyfills.cjs +1 -0
  194. package/legacyEntryPoints/utilities/internal/ponyfills/ponyfills.d.cts +1 -0
  195. package/link/client-awareness/ClientAwarenessLink.d.ts +1 -1
  196. package/link/client-awareness/ClientAwarenessLink.js +13 -1
  197. package/link/client-awareness/ClientAwarenessLink.js.map +1 -1
  198. package/link/core/ApolloLink.js +3 -3
  199. package/link/error/index.d.ts +1 -1
  200. package/link/error/index.js +1 -1
  201. package/link/error/index.js.map +1 -1
  202. package/link/http/checkFetcher.js +1 -1
  203. package/link/http/parseAndCheckHttpResponse.js +1 -1
  204. package/link/persisted-queries/index.js +2 -2
  205. package/link/ws/index.js +1 -1
  206. package/local-state/LocalState.d.ts +3 -2
  207. package/local-state/LocalState.js +28 -14
  208. package/local-state/LocalState.js.map +1 -1
  209. package/masking/types.d.ts +2 -1
  210. package/masking/types.js.map +1 -1
  211. package/package.json +15 -1
  212. package/react/hooks/internal/useDeepMemo.js +2 -0
  213. package/react/hooks/internal/useDeepMemo.js.map +1 -1
  214. package/react/hooks/useBackgroundQuery.js +1 -3
  215. package/react/hooks/useBackgroundQuery.js.map +1 -1
  216. package/react/hooks/useFragment.d.ts +65 -6
  217. package/react/hooks/useFragment.js +38 -87
  218. package/react/hooks/useFragment.js.map +1 -1
  219. package/react/hooks/useLazyQuery.js +2 -0
  220. package/react/hooks/useLazyQuery.js.map +1 -1
  221. package/react/hooks/useMutation.d.ts +13 -1
  222. package/react/hooks/useMutation.js +7 -1
  223. package/react/hooks/useMutation.js.map +1 -1
  224. package/react/hooks/useQuery.js +1 -4
  225. package/react/hooks/useQuery.js.map +1 -1
  226. package/react/hooks/useQueryRefHandlers.js +1 -3
  227. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  228. package/react/hooks/useReadQuery.js +1 -3
  229. package/react/hooks/useReadQuery.js.map +1 -1
  230. package/react/hooks/useSubscription.js +1 -1
  231. package/react/hooks/useSubscription.js.map +1 -1
  232. package/react/hooks/useSuspenseFragment.d.ts +33 -7
  233. package/react/hooks/useSuspenseFragment.js +17 -17
  234. package/react/hooks/useSuspenseFragment.js.map +1 -1
  235. package/react/hooks/useSuspenseQuery.js +4 -4
  236. package/react/hooks/useSuspenseQuery.js.map +1 -1
  237. package/react/hooks-compiled/internal/useDeepMemo.js +2 -0
  238. package/react/hooks-compiled/internal/useDeepMemo.js.map +1 -1
  239. package/react/hooks-compiled/internal/useSuspenseHookCacheKey.js +0 -2
  240. package/react/hooks-compiled/internal/useSuspenseHookCacheKey.js.map +1 -1
  241. package/react/hooks-compiled/useBackgroundQuery.js +1 -3
  242. package/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
  243. package/react/hooks-compiled/useFragment.d.ts +65 -6
  244. package/react/hooks-compiled/useFragment.js +110 -88
  245. package/react/hooks-compiled/useFragment.js.map +1 -1
  246. package/react/hooks-compiled/useLazyQuery.js +2 -0
  247. package/react/hooks-compiled/useLazyQuery.js.map +1 -1
  248. package/react/hooks-compiled/useLoadableQuery.js +69 -75
  249. package/react/hooks-compiled/useMutation.d.ts +13 -1
  250. package/react/hooks-compiled/useMutation.js +5 -13
  251. package/react/hooks-compiled/useMutation.js.map +1 -1
  252. package/react/hooks-compiled/useQuery.js +44 -56
  253. package/react/hooks-compiled/useQuery.js.map +1 -1
  254. package/react/hooks-compiled/useQueryRefHandlers.js +1 -5
  255. package/react/hooks-compiled/useQueryRefHandlers.js.map +1 -1
  256. package/react/hooks-compiled/useReadQuery.js +77 -14
  257. package/react/hooks-compiled/useReadQuery.js.map +1 -1
  258. package/react/hooks-compiled/useSubscription.js +237 -93
  259. package/react/hooks-compiled/useSubscription.js.map +1 -1
  260. package/react/hooks-compiled/useSuspenseFragment.d.ts +33 -7
  261. package/react/hooks-compiled/useSuspenseFragment.js +17 -17
  262. package/react/hooks-compiled/useSuspenseFragment.js.map +1 -1
  263. package/react/hooks-compiled/useSuspenseQuery.js +4 -8
  264. package/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
  265. package/react/index.compiled.d.ts +1 -1
  266. package/react/index.compiled.js +1 -1
  267. package/react/index.compiled.js.map +1 -1
  268. package/react/internal/cache/FragmentReference.d.ts +2 -4
  269. package/react/internal/cache/FragmentReference.js +3 -22
  270. package/react/internal/cache/FragmentReference.js.map +1 -1
  271. package/react/internal/cache/QueryReference.d.ts +5 -0
  272. package/react/internal/cache/QueryReference.js +16 -0
  273. package/react/internal/cache/QueryReference.js.map +1 -1
  274. package/react/internal/cache/SuspenseCache.d.ts +1 -1
  275. package/react/internal/cache/SuspenseCache.js.map +1 -1
  276. package/react/internal/cache/types.d.ts +2 -2
  277. package/react/internal/cache/types.js.map +1 -1
  278. package/react/query-preloader/createQueryPreloader.js +41 -1
  279. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  280. package/react/ssr/useSSRQuery.js +1 -0
  281. package/react/ssr/useSSRQuery.js.map +1 -1
  282. package/utilities/DeepPartial.d.ts +1 -1
  283. package/utilities/DeepPartial.js.map +1 -1
  284. package/utilities/internal/DeepMerger.d.ts +20 -4
  285. package/utilities/internal/DeepMerger.js +36 -4
  286. package/utilities/internal/DeepMerger.js.map +1 -1
  287. package/utilities/internal/combineLatestBatched.d.ts +14 -0
  288. package/utilities/internal/combineLatestBatched.js +68 -0
  289. package/utilities/internal/combineLatestBatched.js.map +1 -0
  290. package/utilities/internal/constants.d.ts +16 -0
  291. package/utilities/internal/constants.js +16 -0
  292. package/utilities/internal/constants.js.map +1 -1
  293. package/utilities/internal/getStoreKeyName.js +1 -0
  294. package/utilities/internal/getStoreKeyName.js.map +1 -1
  295. package/utilities/internal/index.d.ts +4 -1
  296. package/utilities/internal/index.js +3 -1
  297. package/utilities/internal/index.js.map +1 -1
  298. package/utilities/internal/mapObservableFragment.d.ts +3 -0
  299. package/utilities/internal/mapObservableFragment.js +24 -0
  300. package/utilities/internal/mapObservableFragment.js.map +1 -0
  301. package/utilities/internal/memoize.d.ts +2 -1
  302. package/utilities/internal/memoize.js +2 -2
  303. package/utilities/internal/memoize.js.map +1 -1
  304. package/utilities/internal/ponyfills/FinalizationRegistry.d.ts +11 -0
  305. package/utilities/internal/ponyfills/FinalizationRegistry.js +57 -0
  306. package/utilities/internal/ponyfills/FinalizationRegistry.js.map +1 -0
  307. package/utilities/internal/ponyfills/index.d.ts +3 -0
  308. package/utilities/internal/ponyfills/index.js +3 -0
  309. package/utilities/internal/ponyfills/index.js.map +1 -0
  310. package/utilities/internal/ponyfills/index.react-native.d.ts +2 -0
  311. package/utilities/internal/ponyfills/index.react-native.js +2 -0
  312. package/utilities/internal/ponyfills/index.react-native.js.map +1 -0
  313. package/utilities/internal/types/ExtensionsWithStreamDetails.d.ts +24 -0
  314. package/utilities/internal/types/ExtensionsWithStreamDetails.js +2 -0
  315. package/utilities/internal/types/ExtensionsWithStreamDetails.js.map +1 -0
  316. package/version.js +1 -1
  317. package/version.js.map +1 -1
@@ -9,7 +9,7 @@ import { execute } from "@apollo/client/link";
9
9
  import { maskFragment, maskOperation } from "@apollo/client/masking";
10
10
  import { cacheSizes, DocumentTransform, isNetworkRequestInFlight, print, } from "@apollo/client/utilities";
11
11
  import { __DEV__ } from "@apollo/client/utilities/environment";
12
- import { AutoCleanedWeakCache, checkDocument, filterMap, getDefaultValues, getOperationDefinition, getOperationName, graphQLResultHasError, hasDirectives, hasForcedResolvers, isDocumentNode, isNonNullObject, makeUniqueId, removeDirectivesFromDocument, toQueryResult, } from "@apollo/client/utilities/internal";
12
+ import { AutoCleanedWeakCache, checkDocument, extensionsSymbol, filterMap, getDefaultValues, getOperationDefinition, getOperationName, graphQLResultHasError, hasDirectives, hasForcedResolvers, isDocumentNode, isNonNullObject, makeUniqueId, removeDirectivesFromDocument, streamDetailsSymbol, toQueryResult, } from "@apollo/client/utilities/internal";
13
13
  import { invariant, newInvariantError, } from "@apollo/client/utilities/invariant";
14
14
  import { NetworkStatus } from "./networkStatus.js";
15
15
  import { logMissingFieldErrors, ObservableQuery } from "./ObservableQuery.js";
@@ -92,7 +92,7 @@ export class QueryManager {
92
92
  */
93
93
  stop() {
94
94
  this.obsQueries.forEach((oq) => oq.stop());
95
- this.cancelPendingFetches(newInvariantError(84));
95
+ this.cancelPendingFetches(newInvariantError(87));
96
96
  }
97
97
  cancelPendingFetches(error) {
98
98
  this.fetchCancelFns.forEach((cancel) => cancel(error));
@@ -105,7 +105,7 @@ export class QueryManager {
105
105
  variables = this.getVariables(mutation, variables);
106
106
  if (hasClientExports) {
107
107
  if (__DEV__) {
108
- invariant(this.localState, 85, getOperationName(mutation, "(anonymous)"));
108
+ invariant(this.localState, 88, getOperationName(mutation, "(anonymous)"));
109
109
  }
110
110
  variables = await this.localState.getExportedVariables({
111
111
  client: this.client,
@@ -140,7 +140,7 @@ export class QueryManager {
140
140
  return this.getObservableFromLink(mutation, {
141
141
  ...context,
142
142
  optimisticResponse: isOptimistic ? optimisticResponse : void 0,
143
- }, variables, {}, false)
143
+ }, variables, fetchPolicy, {}, false)
144
144
  .observable.pipe(validateDidEmitValue(), mergeMap((result) => {
145
145
  const storeResult = { ...result };
146
146
  return from(queryInfo.markMutationResult(storeResult, {
@@ -163,7 +163,7 @@ export class QueryManager {
163
163
  .pipe(map((storeResult) => {
164
164
  const hasErrors = graphQLResultHasError(storeResult);
165
165
  if (hasErrors && errorPolicy === "none") {
166
- throw new CombinedGraphQLErrors(storeResult);
166
+ throw new CombinedGraphQLErrors(removeStreamDetailsFromExtensions(storeResult));
167
167
  }
168
168
  if (mutationStoreValue) {
169
169
  mutationStoreValue.loading = false;
@@ -342,7 +342,7 @@ export class QueryManager {
342
342
  // depend on values that previously existed in the data portion of the
343
343
  // store. So, we cancel the promises and observers that we have issued
344
344
  // so far and not yet resolved (in the case of queries).
345
- this.cancelPendingFetches(newInvariantError(86));
345
+ this.cancelPendingFetches(newInvariantError(89));
346
346
  this.obsQueries.forEach((observableQuery) => {
347
347
  // Set loading to true so listeners don't trigger unless they want
348
348
  // results with partial data.
@@ -412,10 +412,10 @@ export class QueryManager {
412
412
  if (!included) {
413
413
  const queryName = queryNames.get(nameOrQueryString);
414
414
  if (queryName) {
415
- __DEV__ && invariant.warn(87, queryName);
415
+ __DEV__ && invariant.warn(90, queryName);
416
416
  }
417
417
  else {
418
- __DEV__ && invariant.warn(88);
418
+ __DEV__ && invariant.warn(91);
419
419
  }
420
420
  }
421
421
  });
@@ -436,7 +436,7 @@ export class QueryManager {
436
436
  }
437
437
  startGraphQLSubscription(options) {
438
438
  let { query, variables } = options;
439
- const { fetchPolicy, errorPolicy = "none", context = {}, extensions = {}, } = options;
439
+ const { fetchPolicy = "cache-first", errorPolicy = "none", context = {}, extensions = {}, } = options;
440
440
  checkDocument(query, OperationTypeNode.SUBSCRIPTION);
441
441
  query = this.transform(query);
442
442
  variables = this.getVariables(query, variables);
@@ -444,7 +444,7 @@ export class QueryManager {
444
444
  if (__DEV__) {
445
445
  invariant(
446
446
  !this.getDocumentInfo(query).hasClientExports || this.localState,
447
- 89,
447
+ 92,
448
448
  getOperationName(query, "(anonymous)")
449
449
  );
450
450
  }
@@ -456,7 +456,7 @@ export class QueryManager {
456
456
  context,
457
457
  }))
458
458
  : of(variables)).pipe(mergeMap((variables) => {
459
- const { observable, restart: res } = this.getObservableFromLink(query, context, variables, extensions);
459
+ const { observable, restart: res } = this.getObservableFromLink(query, context, variables, fetchPolicy, extensions);
460
460
  const queryInfo = new QueryInfo(this);
461
461
  restart = res;
462
462
  return observable.pipe(map((rawResult) => {
@@ -509,7 +509,7 @@ export class QueryManager {
509
509
  // Use protected instead of private field so
510
510
  // @apollo/experimental-nextjs-app-support can access type info.
511
511
  inFlightLinkObservables = new Trie(false);
512
- getObservableFromLink(query, context, variables, extensions,
512
+ getObservableFromLink(query, context, variables, fetchPolicy, extensions,
513
513
  // Prefer context.queryDeduplication if specified.
514
514
  deduplication = context?.queryDeduplication ??
515
515
  this.queryDeduplication) {
@@ -588,14 +588,14 @@ export class QueryManager {
588
588
  if (__DEV__) {
589
589
  invariant(
590
590
  this.localState,
591
- 90,
591
+ 93,
592
592
  operation[0].toUpperCase() + operation.slice(1),
593
593
  operationName ?? "(anonymous)"
594
594
  );
595
595
  }
596
596
  invariant(
597
597
  !hasIncrementalDirective,
598
- 91,
598
+ 94,
599
599
  operation[0].toUpperCase() + operation.slice(1),
600
600
  operationName ?? "(anonymous)"
601
601
  );
@@ -606,6 +606,7 @@ export class QueryManager {
606
606
  remoteResult: result,
607
607
  context,
608
608
  variables,
609
+ fetchPolicy,
609
610
  }));
610
611
  }));
611
612
  }
@@ -618,14 +619,14 @@ export class QueryManager {
618
619
  })),
619
620
  };
620
621
  }
621
- getResultsFromLink(options, { queryInfo, cacheWriteBehavior, observableQuery, }) {
622
+ getResultsFromLink(options, { queryInfo, cacheWriteBehavior, observableQuery, exposeExtensions, }) {
622
623
  const requestId = (queryInfo.lastRequestId = this.generateRequestId());
623
624
  const { errorPolicy } = options;
624
625
  // Performing transformForLink here gives this.cache a chance to fill in
625
626
  // missing fragment definitions (for example) before sending this document
626
627
  // through the link chain.
627
628
  const linkDocument = this.cache.transformForLink(options.query);
628
- return this.getObservableFromLink(linkDocument, options.context, options.variables).observable.pipe(map((incoming) => {
629
+ return this.getObservableFromLink(linkDocument, options.context, options.variables, options.fetchPolicy).observable.pipe(map((incoming) => {
629
630
  // Use linkDocument rather than queryInfo.document so the
630
631
  // operation/fragments used to write the result are the same as the
631
632
  // ones used to obtain it from the link.
@@ -638,7 +639,7 @@ export class QueryManager {
638
639
  if (hasErrors && errorPolicy === "none") {
639
640
  queryInfo.resetLastWrite();
640
641
  observableQuery?.["resetNotifications"]();
641
- throw new CombinedGraphQLErrors(result);
642
+ throw new CombinedGraphQLErrors(removeStreamDetailsFromExtensions(result));
642
643
  }
643
644
  const aqr = {
644
645
  data: result.data,
@@ -656,6 +657,9 @@ export class QueryManager {
656
657
  partial: !result.data,
657
658
  }),
658
659
  };
660
+ if (exposeExtensions && "extensions" in result) {
661
+ aqr[extensionsSymbol] = result.extensions;
662
+ }
659
663
  // In the case we start multiple network requests simultaneously, we
660
664
  // want to ensure we properly set `data` if we're reporting on an old
661
665
  // result which will not be caught by the conditional above that ends up
@@ -666,7 +670,7 @@ export class QueryManager {
666
670
  aqr.dataState = "empty";
667
671
  }
668
672
  if (errorPolicy !== "ignore") {
669
- aqr.error = new CombinedGraphQLErrors(result);
673
+ aqr.error = new CombinedGraphQLErrors(removeStreamDetailsFromExtensions(result));
670
674
  if (aqr.dataState !== "streaming") {
671
675
  aqr.networkStatus = NetworkStatus.error;
672
676
  }
@@ -698,7 +702,7 @@ export class QueryManager {
698
702
  // The initial networkStatus for this fetch, most often
699
703
  // NetworkStatus.loading, but also possibly fetchMore, poll, refetch,
700
704
  // or setVariables.
701
- networkStatus = NetworkStatus.loading, query = options.query, fetchQueryOperator = (x) => x, onCacheHit = () => { }, observableQuery, }) {
705
+ networkStatus = NetworkStatus.loading, query = options.query, fetchQueryOperator = (x) => x, onCacheHit = () => { }, observableQuery, exposeExtensions, }) {
702
706
  const variables = this.getVariables(query, options.variables);
703
707
  const defaults = this.defaultOptions.watchQuery;
704
708
  let { fetchPolicy = (defaults && defaults.fetchPolicy) || "cache-first", errorPolicy = (defaults && defaults.errorPolicy) || "none", returnPartialData = false, notifyOnNetworkStatusChange = true, context = {}, } = options;
@@ -728,7 +732,13 @@ export class QueryManager {
728
732
  normalized.refetchWritePolicy !== "merge") ?
729
733
  1 /* CacheWriteBehavior.OVERWRITE */
730
734
  : 2 /* CacheWriteBehavior.MERGE */;
731
- const observableWithInfo = this.fetchQueryByPolicy(normalized, { queryInfo, cacheWriteBehavior, onCacheHit, observableQuery });
735
+ const observableWithInfo = this.fetchQueryByPolicy(normalized, {
736
+ queryInfo,
737
+ cacheWriteBehavior,
738
+ onCacheHit,
739
+ observableQuery,
740
+ exposeExtensions,
741
+ });
732
742
  observableWithInfo.observable =
733
743
  observableWithInfo.observable.pipe(fetchQueryOperator);
734
744
  if (
@@ -762,7 +772,7 @@ export class QueryManager {
762
772
  // we deprecated and removed LocalState.
763
773
  if (this.getDocumentInfo(normalized.query).hasClientExports) {
764
774
  if (__DEV__) {
765
- invariant(this.localState, 92, getOperationName(normalized.query, "(anonymous)"));
775
+ invariant(this.localState, 95, getOperationName(normalized.query, "(anonymous)"));
766
776
  }
767
777
  observable = from(this.localState.getExportedVariables({
768
778
  client: this.client,
@@ -935,7 +945,7 @@ export class QueryManager {
935
945
  !isFullyUnmaskedOperation(document) &&
936
946
  !this.noCacheWarningsByCause.has(cause)) {
937
947
  this.noCacheWarningsByCause.add(cause);
938
- __DEV__ && invariant.warn(93, getOperationName(document, `Unnamed ${operationType ?? "operation"}`));
948
+ __DEV__ && invariant.warn(96, getOperationName(document, `Unnamed ${operationType ?? "operation"}`));
939
949
  }
940
950
  }
941
951
  return (this.dataMasking ?
@@ -948,7 +958,7 @@ export class QueryManager {
948
958
  maskFragment(data, fragment, this.cache, fragmentName)
949
959
  : data;
950
960
  }
951
- fetchQueryByPolicy({ query, variables, fetchPolicy, errorPolicy, returnPartialData, context, }, { cacheWriteBehavior, onCacheHit, queryInfo, observableQuery, }) {
961
+ fetchQueryByPolicy({ query, variables, fetchPolicy, errorPolicy, returnPartialData, context, }, { cacheWriteBehavior, onCacheHit, queryInfo, observableQuery, exposeExtensions, }) {
952
962
  const readCache = () => this.cache.diff({
953
963
  query,
954
964
  variables,
@@ -993,7 +1003,7 @@ export class QueryManager {
993
1003
  (diff.complete || returnPartialData) &&
994
1004
  this.getDocumentInfo(query).hasForcedResolvers) {
995
1005
  if (__DEV__) {
996
- invariant(this.localState, 94, getOperationName(query, "(anonymous)"));
1006
+ invariant(this.localState, 97, getOperationName(query, "(anonymous)"));
997
1007
  }
998
1008
  onCacheHit();
999
1009
  return from(this.localState.execute({
@@ -1004,6 +1014,7 @@ export class QueryManager {
1004
1014
  variables,
1005
1015
  onlyRunForcedResolvers: true,
1006
1016
  returnPartialData: true,
1017
+ fetchPolicy,
1007
1018
  }).then((resolved) => ({
1008
1019
  kind: "N",
1009
1020
  value: toResult(resolved.data || void 0),
@@ -1031,6 +1042,7 @@ export class QueryManager {
1031
1042
  cacheWriteBehavior,
1032
1043
  queryInfo,
1033
1044
  observableQuery,
1045
+ exposeExtensions,
1034
1046
  }).pipe(validateDidEmitValue(), materialize(), map((result) => ({
1035
1047
  ...result,
1036
1048
  source: "network",
@@ -1084,7 +1096,7 @@ function validateDidEmitValue() {
1084
1096
  didEmitValue = true;
1085
1097
  },
1086
1098
  complete() {
1087
- invariant(didEmitValue, 95);
1099
+ invariant(didEmitValue, 98);
1088
1100
  },
1089
1101
  });
1090
1102
  }
@@ -1123,4 +1135,14 @@ function addNonReactiveToNamedFragments(document) {
1123
1135
  },
1124
1136
  });
1125
1137
  }
1138
+ function removeStreamDetailsFromExtensions(original) {
1139
+ if (original.extensions?.[streamDetailsSymbol] == null) {
1140
+ return original;
1141
+ }
1142
+ const { extensions: { [streamDetailsSymbol]: _, ...extensions }, ...result } = original;
1143
+ if (Object.keys(extensions).length > 0) {
1144
+ result.extensions = extensions;
1145
+ }
1146
+ return result;
1147
+ }
1126
1148
  //# sourceMappingURL=QueryManager.js.map