@apollo/client 4.0.9 → 4.1.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 (370) hide show
  1. package/CHANGELOG.md +445 -0
  2. package/__cjs/cache/core/cache.cjs +217 -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 +78 -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/fragmentRegistry.cjs +5 -0
  11. package/__cjs/cache/inmemory/fragmentRegistry.cjs.map +1 -1
  12. package/__cjs/cache/inmemory/helpers.d.cts +1 -1
  13. package/__cjs/cache/inmemory/inMemoryCache.cjs +62 -1
  14. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  15. package/__cjs/cache/inmemory/inMemoryCache.d.cts +48 -0
  16. package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  17. package/__cjs/cache/inmemory/key-extractor.cjs.map +1 -1
  18. package/__cjs/cache/inmemory/policies.cjs +76 -17
  19. package/__cjs/cache/inmemory/policies.cjs.map +1 -1
  20. package/__cjs/cache/inmemory/policies.d.cts +33 -6
  21. package/__cjs/cache/inmemory/readFromStore.cjs +9 -8
  22. package/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
  23. package/__cjs/cache/inmemory/types.d.cts +3 -0
  24. package/__cjs/cache/inmemory/writeToStore.cjs +25 -10
  25. package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  26. package/__cjs/cache/inmemory/writeToStore.d.cts +1 -1
  27. package/__cjs/core/ApolloClient.cjs +31 -49
  28. package/__cjs/core/ApolloClient.cjs.map +1 -1
  29. package/__cjs/core/ApolloClient.d.cts +159 -18
  30. package/__cjs/core/ObservableQuery.cjs +178 -131
  31. package/__cjs/core/ObservableQuery.cjs.map +1 -1
  32. package/__cjs/core/ObservableQuery.d.cts +2 -0
  33. package/__cjs/core/QueryInfo.cjs +9 -1
  34. package/__cjs/core/QueryInfo.cjs.map +1 -1
  35. package/__cjs/core/QueryInfo.d.cts +4 -3
  36. package/__cjs/core/QueryManager.cjs +47 -25
  37. package/__cjs/core/QueryManager.cjs.map +1 -1
  38. package/__cjs/core/QueryManager.d.cts +19 -2
  39. package/__cjs/incremental/handlers/defer20220824.cjs +44 -19
  40. package/__cjs/incremental/handlers/defer20220824.cjs.map +1 -1
  41. package/__cjs/incremental/handlers/defer20220824.d.cts +15 -7
  42. package/__cjs/incremental/handlers/graphql17Alpha9.cjs +227 -0
  43. package/__cjs/incremental/handlers/graphql17Alpha9.cjs.map +1 -0
  44. package/__cjs/incremental/handlers/graphql17Alpha9.d.cts +98 -0
  45. package/__cjs/incremental/handlers/notImplemented.cjs +1 -1
  46. package/__cjs/incremental/handlers/notImplemented.cjs.map +1 -1
  47. package/__cjs/incremental/index.cjs +3 -1
  48. package/__cjs/incremental/index.cjs.map +1 -1
  49. package/__cjs/incremental/index.d.cts +1 -0
  50. package/__cjs/incremental/types.d.cts +9 -0
  51. package/__cjs/invariantErrorCodes.cjs +83 -61
  52. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs +13 -1
  53. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs.map +1 -1
  54. package/__cjs/link/client-awareness/ClientAwarenessLink.d.cts +1 -1
  55. package/__cjs/link/core/ApolloLink.cjs +3 -3
  56. package/__cjs/link/error/index.cjs +1 -1
  57. package/__cjs/link/error/index.cjs.map +1 -1
  58. package/__cjs/link/error/index.d.cts +1 -1
  59. package/__cjs/link/http/checkFetcher.cjs +1 -1
  60. package/__cjs/link/http/parseAndCheckHttpResponse.cjs +2 -2
  61. package/__cjs/link/http/parseAndCheckHttpResponse.cjs.map +1 -1
  62. package/__cjs/link/persisted-queries/index.cjs +2 -2
  63. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs +51 -50
  64. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs.map +1 -1
  65. package/__cjs/link/remove-typename/removeTypenameFromVariables.d.cts +3 -0
  66. package/__cjs/link/schema/index.cjs +1 -1
  67. package/__cjs/link/schema/index.cjs.map +1 -1
  68. package/__cjs/link/schema/index.d.cts +1 -1
  69. package/__cjs/link/ws/index.cjs +1 -1
  70. package/__cjs/local-state/LocalState.cjs +29 -15
  71. package/__cjs/local-state/LocalState.cjs.map +1 -1
  72. package/__cjs/local-state/LocalState.d.cts +3 -2
  73. package/__cjs/masking/types.d.cts +2 -1
  74. package/__cjs/react/hooks/internal/useDeepMemo.cjs +2 -0
  75. package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -1
  76. package/__cjs/react/hooks/useApolloClient.cjs +1 -1
  77. package/__cjs/react/hooks/useApolloClient.cjs.map +1 -1
  78. package/__cjs/react/hooks/useApolloClient.d.cts +1 -1
  79. package/__cjs/react/hooks/useBackgroundQuery.cjs +1 -3
  80. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  81. package/__cjs/react/hooks/useFragment.cjs +38 -87
  82. package/__cjs/react/hooks/useFragment.cjs.map +1 -1
  83. package/__cjs/react/hooks/useFragment.d.cts +65 -6
  84. package/__cjs/react/hooks/useLazyQuery.cjs +3 -0
  85. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  86. package/__cjs/react/hooks/useMutation.cjs +7 -1
  87. package/__cjs/react/hooks/useMutation.cjs.map +1 -1
  88. package/__cjs/react/hooks/useMutation.d.cts +13 -1
  89. package/__cjs/react/hooks/useQuery.cjs +8 -8
  90. package/__cjs/react/hooks/useQuery.cjs.map +1 -1
  91. package/__cjs/react/hooks/useQuery.d.cts +1 -1
  92. package/__cjs/react/hooks/useQueryRefHandlers.cjs +1 -3
  93. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
  94. package/__cjs/react/hooks/useReadQuery.cjs +1 -3
  95. package/__cjs/react/hooks/useReadQuery.cjs.map +1 -1
  96. package/__cjs/react/hooks/useSubscription.cjs +1 -1
  97. package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  98. package/__cjs/react/hooks/useSuspenseFragment.cjs +16 -16
  99. package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
  100. package/__cjs/react/hooks/useSuspenseFragment.d.cts +33 -7
  101. package/__cjs/react/hooks/useSuspenseQuery.cjs +6 -4
  102. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  103. package/__cjs/react/internal/cache/FragmentReference.cjs +3 -22
  104. package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -1
  105. package/__cjs/react/internal/cache/FragmentReference.d.cts +2 -4
  106. package/__cjs/react/internal/cache/QueryReference.cjs +16 -0
  107. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
  108. package/__cjs/react/internal/cache/QueryReference.d.cts +5 -0
  109. package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -1
  110. package/__cjs/react/internal/cache/SuspenseCache.d.cts +1 -1
  111. package/__cjs/react/internal/cache/types.d.cts +2 -2
  112. package/__cjs/react/query-preloader/createQueryPreloader.cjs +41 -1
  113. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  114. package/__cjs/react/ssr/prerenderStatic.cjs +17 -4
  115. package/__cjs/react/ssr/prerenderStatic.cjs.map +1 -1
  116. package/__cjs/react/ssr/prerenderStatic.d.cts +23 -4
  117. package/__cjs/react/ssr/useSSRQuery.cjs +7 -4
  118. package/__cjs/react/ssr/useSSRQuery.cjs.map +1 -1
  119. package/__cjs/react/ssr/useSSRQuery.d.cts +2 -1
  120. package/__cjs/utilities/DeepPartial.cjs.map +1 -1
  121. package/__cjs/utilities/DeepPartial.d.cts +1 -1
  122. package/__cjs/utilities/internal/DeepMerger.cjs +36 -4
  123. package/__cjs/utilities/internal/DeepMerger.cjs.map +1 -1
  124. package/__cjs/utilities/internal/DeepMerger.d.cts +20 -4
  125. package/__cjs/utilities/internal/bindCacheKey.cjs +21 -0
  126. package/__cjs/utilities/internal/bindCacheKey.cjs.map +1 -0
  127. package/__cjs/utilities/internal/bindCacheKey.d.cts +15 -0
  128. package/__cjs/utilities/internal/checkDocument.cjs +2 -4
  129. package/__cjs/utilities/internal/checkDocument.cjs.map +1 -1
  130. package/__cjs/utilities/internal/combineLatestBatched.cjs +71 -0
  131. package/__cjs/utilities/internal/combineLatestBatched.cjs.map +1 -0
  132. package/__cjs/utilities/internal/combineLatestBatched.d.cts +14 -0
  133. package/__cjs/utilities/internal/compact.cjs +1 -1
  134. package/__cjs/utilities/internal/compact.cjs.map +1 -1
  135. package/__cjs/utilities/internal/constants.cjs +26 -0
  136. package/__cjs/utilities/internal/constants.cjs.map +1 -0
  137. package/__cjs/utilities/internal/constants.d.cts +23 -0
  138. package/__cjs/utilities/internal/getStoreKeyName.cjs +1 -0
  139. package/__cjs/utilities/internal/getStoreKeyName.cjs.map +1 -1
  140. package/__cjs/utilities/internal/index.cjs +12 -2
  141. package/__cjs/utilities/internal/index.cjs.map +1 -1
  142. package/__cjs/utilities/internal/index.d.cts +6 -0
  143. package/__cjs/utilities/internal/mapObservableFragment.cjs +27 -0
  144. package/__cjs/utilities/internal/mapObservableFragment.cjs.map +1 -0
  145. package/__cjs/utilities/internal/mapObservableFragment.d.cts +3 -0
  146. package/__cjs/utilities/internal/memoize.cjs +31 -0
  147. package/__cjs/utilities/internal/memoize.cjs.map +1 -0
  148. package/__cjs/utilities/internal/memoize.d.cts +8 -0
  149. package/__cjs/utilities/internal/ponyfills/FinalizationRegistry.cjs +61 -0
  150. package/__cjs/utilities/internal/ponyfills/FinalizationRegistry.cjs.map +1 -0
  151. package/__cjs/utilities/internal/ponyfills/FinalizationRegistry.d.cts +11 -0
  152. package/__cjs/utilities/internal/ponyfills/index.cjs +6 -0
  153. package/__cjs/utilities/internal/ponyfills/index.cjs.map +1 -0
  154. package/__cjs/utilities/internal/ponyfills/index.d.cts +3 -0
  155. package/__cjs/utilities/internal/ponyfills/index.react-native.cjs +6 -0
  156. package/__cjs/utilities/internal/ponyfills/index.react-native.cjs.map +1 -0
  157. package/__cjs/utilities/internal/ponyfills/index.react-native.d.cts +2 -0
  158. package/__cjs/utilities/internal/types/ExtensionsWithStreamDetails.cjs +3 -0
  159. package/__cjs/utilities/internal/types/ExtensionsWithStreamDetails.cjs.map +1 -0
  160. package/__cjs/utilities/internal/types/ExtensionsWithStreamDetails.d.cts +12 -0
  161. package/__cjs/utilities/internal/types/StreamInfoTrie.cjs +3 -0
  162. package/__cjs/utilities/internal/types/StreamInfoTrie.cjs.map +1 -0
  163. package/__cjs/utilities/internal/types/StreamInfoTrie.d.cts +16 -0
  164. package/__cjs/version.cjs +1 -1
  165. package/cache/core/cache.d.ts +141 -25
  166. package/cache/core/cache.js +220 -55
  167. package/cache/core/cache.js.map +1 -1
  168. package/cache/core/types/Cache.d.ts +78 -17
  169. package/cache/core/types/Cache.js.map +1 -1
  170. package/cache/index.d.ts +1 -1
  171. package/cache/index.js.map +1 -1
  172. package/cache/inmemory/entityStore.js +6 -4
  173. package/cache/inmemory/entityStore.js.map +1 -1
  174. package/cache/inmemory/fragmentRegistry.js +6 -1
  175. package/cache/inmemory/fragmentRegistry.js.map +1 -1
  176. package/cache/inmemory/helpers.d.ts +1 -1
  177. package/cache/inmemory/inMemoryCache.d.ts +48 -0
  178. package/cache/inmemory/inMemoryCache.js +62 -1
  179. package/cache/inmemory/inMemoryCache.js.map +1 -1
  180. package/cache/inmemory/key-extractor.js +1 -1
  181. package/cache/inmemory/key-extractor.js.map +1 -1
  182. package/cache/inmemory/policies.d.ts +33 -6
  183. package/cache/inmemory/policies.js +65 -7
  184. package/cache/inmemory/policies.js.map +1 -1
  185. package/cache/inmemory/readFromStore.js +9 -8
  186. package/cache/inmemory/readFromStore.js.map +1 -1
  187. package/cache/inmemory/types.d.ts +3 -0
  188. package/cache/inmemory/types.js.map +1 -1
  189. package/cache/inmemory/writeToStore.d.ts +1 -1
  190. package/cache/inmemory/writeToStore.js +27 -12
  191. package/cache/inmemory/writeToStore.js.map +1 -1
  192. package/core/ApolloClient.d.ts +159 -18
  193. package/core/ApolloClient.js +32 -50
  194. package/core/ApolloClient.js.map +1 -1
  195. package/core/ObservableQuery.d.ts +2 -0
  196. package/core/ObservableQuery.js +181 -134
  197. package/core/ObservableQuery.js.map +1 -1
  198. package/core/QueryInfo.d.ts +4 -3
  199. package/core/QueryInfo.js +10 -2
  200. package/core/QueryInfo.js.map +1 -1
  201. package/core/QueryManager.d.ts +19 -2
  202. package/core/QueryManager.js +48 -26
  203. package/core/QueryManager.js.map +1 -1
  204. package/incremental/handlers/defer20220824.d.ts +15 -7
  205. package/incremental/handlers/defer20220824.js +44 -19
  206. package/incremental/handlers/defer20220824.js.map +1 -1
  207. package/incremental/handlers/graphql17Alpha9.d.ts +98 -0
  208. package/incremental/handlers/graphql17Alpha9.js +223 -0
  209. package/incremental/handlers/graphql17Alpha9.js.map +1 -0
  210. package/incremental/handlers/notImplemented.js +1 -1
  211. package/incremental/handlers/notImplemented.js.map +1 -1
  212. package/incremental/index.d.ts +1 -0
  213. package/incremental/index.js +3 -2
  214. package/incremental/index.js.map +1 -1
  215. package/incremental/types.d.ts +9 -0
  216. package/incremental/types.js.map +1 -1
  217. package/invariantErrorCodes.js +83 -61
  218. package/legacyEntryPoints/utilities/internal/ponyfills/index.d.ts +1 -0
  219. package/legacyEntryPoints/utilities/internal/ponyfills/index.js +1 -0
  220. package/legacyEntryPoints/utilities/internal/ponyfills/ponyfills.cjs +1 -0
  221. package/legacyEntryPoints/utilities/internal/ponyfills/ponyfills.d.cts +1 -0
  222. package/link/client-awareness/ClientAwarenessLink.d.ts +1 -1
  223. package/link/client-awareness/ClientAwarenessLink.js +13 -1
  224. package/link/client-awareness/ClientAwarenessLink.js.map +1 -1
  225. package/link/core/ApolloLink.js +3 -3
  226. package/link/error/index.d.ts +1 -1
  227. package/link/error/index.js +1 -1
  228. package/link/error/index.js.map +1 -1
  229. package/link/http/checkFetcher.js +1 -1
  230. package/link/http/parseAndCheckHttpResponse.js +2 -2
  231. package/link/http/parseAndCheckHttpResponse.js.map +1 -1
  232. package/link/persisted-queries/index.js +2 -2
  233. package/link/remove-typename/removeTypenameFromVariables.d.ts +3 -0
  234. package/link/remove-typename/removeTypenameFromVariables.js +51 -50
  235. package/link/remove-typename/removeTypenameFromVariables.js.map +1 -1
  236. package/link/schema/index.d.ts +1 -1
  237. package/link/schema/index.js +1 -1
  238. package/link/schema/index.js.map +1 -1
  239. package/link/ws/index.js +1 -1
  240. package/local-state/LocalState.d.ts +3 -2
  241. package/local-state/LocalState.js +29 -15
  242. package/local-state/LocalState.js.map +1 -1
  243. package/masking/types.d.ts +2 -1
  244. package/masking/types.js.map +1 -1
  245. package/package.json +15 -1
  246. package/react/hooks/internal/useDeepMemo.js +2 -0
  247. package/react/hooks/internal/useDeepMemo.js.map +1 -1
  248. package/react/hooks/useApolloClient.d.ts +1 -1
  249. package/react/hooks/useApolloClient.js +1 -1
  250. package/react/hooks/useApolloClient.js.map +1 -1
  251. package/react/hooks/useBackgroundQuery.js +1 -3
  252. package/react/hooks/useBackgroundQuery.js.map +1 -1
  253. package/react/hooks/useFragment.d.ts +65 -6
  254. package/react/hooks/useFragment.js +38 -87
  255. package/react/hooks/useFragment.js.map +1 -1
  256. package/react/hooks/useLazyQuery.js +4 -1
  257. package/react/hooks/useLazyQuery.js.map +1 -1
  258. package/react/hooks/useMutation.d.ts +13 -1
  259. package/react/hooks/useMutation.js +7 -1
  260. package/react/hooks/useMutation.js.map +1 -1
  261. package/react/hooks/useQuery.js +9 -9
  262. package/react/hooks/useQuery.js.map +1 -1
  263. package/react/hooks/useQueryRefHandlers.js +1 -3
  264. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  265. package/react/hooks/useReadQuery.js +1 -3
  266. package/react/hooks/useReadQuery.js.map +1 -1
  267. package/react/hooks/useSubscription.js +1 -1
  268. package/react/hooks/useSubscription.js.map +1 -1
  269. package/react/hooks/useSuspenseFragment.d.ts +33 -7
  270. package/react/hooks/useSuspenseFragment.js +17 -17
  271. package/react/hooks/useSuspenseFragment.js.map +1 -1
  272. package/react/hooks/useSuspenseQuery.js +6 -4
  273. package/react/hooks/useSuspenseQuery.js.map +1 -1
  274. package/react/hooks-compiled/internal/useDeepMemo.js +2 -0
  275. package/react/hooks-compiled/internal/useDeepMemo.js.map +1 -1
  276. package/react/hooks-compiled/internal/useSuspenseHookCacheKey.js +0 -2
  277. package/react/hooks-compiled/internal/useSuspenseHookCacheKey.js.map +1 -1
  278. package/react/hooks-compiled/useApolloClient.d.ts +1 -1
  279. package/react/hooks-compiled/useApolloClient.js +1 -1
  280. package/react/hooks-compiled/useApolloClient.js.map +1 -1
  281. package/react/hooks-compiled/useBackgroundQuery.js +1 -3
  282. package/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
  283. package/react/hooks-compiled/useFragment.d.ts +65 -6
  284. package/react/hooks-compiled/useFragment.js +110 -88
  285. package/react/hooks-compiled/useFragment.js.map +1 -1
  286. package/react/hooks-compiled/useLazyQuery.js +4 -1
  287. package/react/hooks-compiled/useLazyQuery.js.map +1 -1
  288. package/react/hooks-compiled/useLoadableQuery.js +69 -75
  289. package/react/hooks-compiled/useMutation.d.ts +13 -1
  290. package/react/hooks-compiled/useMutation.js +5 -13
  291. package/react/hooks-compiled/useMutation.js.map +1 -1
  292. package/react/hooks-compiled/useQuery.js +53 -61
  293. package/react/hooks-compiled/useQuery.js.map +1 -1
  294. package/react/hooks-compiled/useQueryRefHandlers.js +1 -5
  295. package/react/hooks-compiled/useQueryRefHandlers.js.map +1 -1
  296. package/react/hooks-compiled/useReadQuery.js +77 -14
  297. package/react/hooks-compiled/useReadQuery.js.map +1 -1
  298. package/react/hooks-compiled/useSubscription.js +237 -93
  299. package/react/hooks-compiled/useSubscription.js.map +1 -1
  300. package/react/hooks-compiled/useSuspenseFragment.d.ts +33 -7
  301. package/react/hooks-compiled/useSuspenseFragment.js +17 -17
  302. package/react/hooks-compiled/useSuspenseFragment.js.map +1 -1
  303. package/react/hooks-compiled/useSuspenseQuery.js +7 -9
  304. package/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
  305. package/react/index.compiled.d.ts +1 -1
  306. package/react/index.compiled.js +1 -1
  307. package/react/index.compiled.js.map +1 -1
  308. package/react/internal/cache/FragmentReference.d.ts +2 -4
  309. package/react/internal/cache/FragmentReference.js +3 -22
  310. package/react/internal/cache/FragmentReference.js.map +1 -1
  311. package/react/internal/cache/QueryReference.d.ts +5 -0
  312. package/react/internal/cache/QueryReference.js +16 -0
  313. package/react/internal/cache/QueryReference.js.map +1 -1
  314. package/react/internal/cache/SuspenseCache.d.ts +1 -1
  315. package/react/internal/cache/SuspenseCache.js.map +1 -1
  316. package/react/internal/cache/types.d.ts +2 -2
  317. package/react/internal/cache/types.js.map +1 -1
  318. package/react/query-preloader/createQueryPreloader.js +41 -1
  319. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  320. package/react/ssr/prerenderStatic.d.ts +24 -5
  321. package/react/ssr/prerenderStatic.js +17 -4
  322. package/react/ssr/prerenderStatic.js.map +1 -1
  323. package/react/ssr/useSSRQuery.d.ts +2 -1
  324. package/react/ssr/useSSRQuery.js +8 -5
  325. package/react/ssr/useSSRQuery.js.map +1 -1
  326. package/utilities/DeepPartial.d.ts +1 -1
  327. package/utilities/DeepPartial.js.map +1 -1
  328. package/utilities/internal/DeepMerger.d.ts +20 -4
  329. package/utilities/internal/DeepMerger.js +36 -4
  330. package/utilities/internal/DeepMerger.js.map +1 -1
  331. package/utilities/internal/bindCacheKey.d.ts +15 -0
  332. package/utilities/internal/bindCacheKey.js +18 -0
  333. package/utilities/internal/bindCacheKey.js.map +1 -0
  334. package/utilities/internal/checkDocument.js +2 -4
  335. package/utilities/internal/checkDocument.js.map +1 -1
  336. package/utilities/internal/combineLatestBatched.d.ts +14 -0
  337. package/utilities/internal/combineLatestBatched.js +68 -0
  338. package/utilities/internal/combineLatestBatched.js.map +1 -0
  339. package/utilities/internal/compact.js +1 -1
  340. package/utilities/internal/compact.js.map +1 -1
  341. package/utilities/internal/constants.d.ts +23 -0
  342. package/utilities/internal/constants.js +23 -0
  343. package/utilities/internal/constants.js.map +1 -0
  344. package/utilities/internal/getStoreKeyName.js +1 -0
  345. package/utilities/internal/getStoreKeyName.js.map +1 -1
  346. package/utilities/internal/index.d.ts +6 -0
  347. package/utilities/internal/index.js +4 -0
  348. package/utilities/internal/index.js.map +1 -1
  349. package/utilities/internal/mapObservableFragment.d.ts +3 -0
  350. package/utilities/internal/mapObservableFragment.js +24 -0
  351. package/utilities/internal/mapObservableFragment.js.map +1 -0
  352. package/utilities/internal/memoize.d.ts +8 -0
  353. package/utilities/internal/memoize.js +28 -0
  354. package/utilities/internal/memoize.js.map +1 -0
  355. package/utilities/internal/ponyfills/FinalizationRegistry.d.ts +11 -0
  356. package/utilities/internal/ponyfills/FinalizationRegistry.js +57 -0
  357. package/utilities/internal/ponyfills/FinalizationRegistry.js.map +1 -0
  358. package/utilities/internal/ponyfills/index.d.ts +3 -0
  359. package/utilities/internal/ponyfills/index.js +3 -0
  360. package/utilities/internal/ponyfills/index.js.map +1 -0
  361. package/utilities/internal/ponyfills/index.react-native.d.ts +2 -0
  362. package/utilities/internal/ponyfills/index.react-native.js +2 -0
  363. package/utilities/internal/ponyfills/index.react-native.js.map +1 -0
  364. package/utilities/internal/types/ExtensionsWithStreamDetails.d.ts +12 -0
  365. package/utilities/internal/types/ExtensionsWithStreamDetails.js +2 -0
  366. package/utilities/internal/types/ExtensionsWithStreamDetails.js.map +1 -0
  367. package/utilities/internal/types/StreamInfoTrie.d.ts +16 -0
  368. package/utilities/internal/types/StreamInfoTrie.js +2 -0
  369. package/utilities/internal/types/StreamInfoTrie.js.map +1 -0
  370. package/version.js +1 -1
@@ -64,7 +64,7 @@ export class LocalState {
64
64
  addResolvers(resolvers) {
65
65
  this.resolvers = mergeDeep(this.resolvers, resolvers);
66
66
  }
67
- async execute({ document, client, context, remoteResult, variables = {}, onlyRunForcedResolvers = false, returnPartialData = false, }) {
67
+ async execute({ document, client, context, remoteResult, variables = {}, onlyRunForcedResolvers = false, returnPartialData = false, fetchPolicy, }) {
68
68
  if (__DEV__) {
69
69
  invariant(hasDirectives(["client"], document), 47);
70
70
  validateCacheImplementation(client.cache);
@@ -78,12 +78,14 @@ export class LocalState {
78
78
  }
79
79
  const { selectionsToResolve, exportedVariableDefs, operationDefinition, fragmentMap, } = this.collectQueryDetail(document);
80
80
  const rootValue = remoteResult ? remoteResult.data : {};
81
- const diff = client.cache.diff({
82
- query: toQueryOperation(document),
83
- variables,
84
- returnPartialData: true,
85
- optimistic: false,
86
- });
81
+ const diff = fetchPolicy === "no-cache" ?
82
+ { result: null, complete: false }
83
+ : client.cache.diff({
84
+ query: toQueryOperation(document),
85
+ variables,
86
+ returnPartialData: true,
87
+ optimistic: false,
88
+ });
87
89
  const requestContext = { ...client.defaultContext, ...context };
88
90
  const execContext = {
89
91
  client,
@@ -105,6 +107,7 @@ export class LocalState {
105
107
  exportedVariableDefs,
106
108
  diff,
107
109
  returnPartialData,
110
+ fetchPolicy,
108
111
  };
109
112
  const localResult = await this.resolveSelectionSet(operationDefinition.selectionSet, false, rootValue, execContext, []);
110
113
  const errors = (remoteResult?.errors ?? []).concat(execContext.errors);
@@ -221,7 +224,7 @@ export class LocalState {
221
224
  : rootValue;
222
225
  }
223
226
  resolveServerField(field, rootValue, execContext, path) {
224
- const result = rootValue?.[field.name.value];
227
+ const result = rootValue?.[resultKeyNameFromField(field)];
225
228
  if (!field.selectionSet) {
226
229
  return result;
227
230
  }
@@ -241,7 +244,8 @@ export class LocalState {
241
244
  return this.resolveSelectionSet(field.selectionSet, false, result, execContext, path);
242
245
  }
243
246
  async resolveClientField(field, isClientFieldDescendant, rootValue, execContext, parentSelectionSet, path) {
244
- const { client, diff, variables, operationDefinition, phase, returnPartialData, onlyRunForcedResolvers, } = execContext;
247
+ const { client, diff, variables, operationDefinition, phase, onlyRunForcedResolvers, fetchPolicy, } = execContext;
248
+ let { returnPartialData } = execContext;
245
249
  const isRootField = parentSelectionSet === operationDefinition.selectionSet;
246
250
  const fieldName = field.name.value;
247
251
  const typename = isRootField ?
@@ -263,7 +267,17 @@ export class LocalState {
263
267
  if (fieldFromCache !== undefined) {
264
268
  return fieldFromCache;
265
269
  }
270
+ if (client.cache.resolvesClientField?.(typename, fieldName)) {
271
+ if (fetchPolicy === "no-cache") {
272
+ __DEV__ && invariant.warn(50, resolverName);
273
+ return null;
274
+ }
275
+ // assume the cache will handle returning the correct value
276
+ returnPartialData = true;
277
+ return;
278
+ }
266
279
  if (!returnPartialData) {
280
+ __DEV__ && invariant.warn(51, resolverName);
267
281
  return null;
268
282
  }
269
283
  });
@@ -329,13 +343,13 @@ export class LocalState {
329
343
  if (result === undefined && !returnPartialData) {
330
344
  if (__DEV__ && phase === "resolve") {
331
345
  if (resolver && !onlyRunForcedResolvers) {
332
- __DEV__ && invariant.warn(50, resolverName);
346
+ __DEV__ && invariant.warn(52, resolverName);
333
347
  }
334
348
  else if (onlyRunForcedResolvers) {
335
- __DEV__ && invariant.warn(51, resolverName);
349
+ __DEV__ && invariant.warn(53, resolverName);
336
350
  }
337
351
  else {
338
- __DEV__ && invariant.warn(52, fieldName, rootValue);
352
+ __DEV__ && invariant.warn(54, fieldName, rootValue);
339
353
  }
340
354
  }
341
355
  result = null;
@@ -347,7 +361,7 @@ export class LocalState {
347
361
  return this.resolveSubSelectedArray(field, true, result, execContext, path);
348
362
  }
349
363
  if (phase === "resolve" && !result.__typename) {
350
- this.addError(newInvariantError(53, result, resolverName), path, execContext, { resolver: resolverName });
364
+ this.addError(newInvariantError(55, result, resolverName), path, execContext, { resolver: resolverName });
351
365
  return null;
352
366
  }
353
367
  return this.resolveSelectionSet(field.selectionSet, true, result, execContext, path);
@@ -458,7 +472,7 @@ export class LocalState {
458
472
  },
459
473
  FragmentSpread(spread, _, __, ___, ancestors) {
460
474
  const fragment = fragmentMap[spread.name.value];
461
- invariant(fragment, 54, spread.name.value);
475
+ invariant(fragment, 56, spread.name.value);
462
476
  const { selectionsToResolve: fragmentSelections } = traverse(fragment);
463
477
  if (fragmentSelections.size > 0) {
464
478
  // Fragment for this spread contains @client directive (either directly or transitively)
@@ -517,7 +531,7 @@ function getExportedVariableName(directive) {
517
531
  }
518
532
  }
519
533
  function validateCacheImplementation(cache) {
520
- invariant(cache.fragmentMatches, 55);
534
+ invariant(cache.fragmentMatches, 57);
521
535
  }
522
536
  function getCacheResultAtPath(diff, path) {
523
537
  if (diff.result === null) {