@apollo/client 4.0.0-alpha.0 → 4.0.0-alpha.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 (399) hide show
  1. package/.changeset/clean-sheep-hide.md +6 -0
  2. package/.changeset/cool-bikes-shake.md +12 -0
  3. package/.changeset/cuddly-spiders-tie.md +5 -0
  4. package/.changeset/gorgeous-chefs-tap.md +5 -0
  5. package/.changeset/hip-vans-act.md +5 -0
  6. package/.changeset/nervous-goats-allow.md +5 -0
  7. package/.changeset/pre.json +12 -0
  8. package/.changeset/rare-houses-prove.md +5 -0
  9. package/.changeset/slimy-maps-press.md +5 -0
  10. package/.changeset/small-buttons-rhyme.md +5 -0
  11. package/.changeset/tall-bikes-develop.md +5 -0
  12. package/.changeset/tame-doors-shop.md +14 -0
  13. package/.changeset/young-phones-fold.md +5 -0
  14. package/CHANGELOG.md +53 -0
  15. package/__cjs/cache/core/cache.cjs +4 -4
  16. package/__cjs/cache/core/cache.cjs.map +1 -1
  17. package/__cjs/cache/core/cache.d.cts +18 -18
  18. package/__cjs/cache/core/types/Cache.cjs.map +1 -1
  19. package/__cjs/cache/core/types/Cache.d.cts +9 -16
  20. package/__cjs/cache/core/types/DataProxy.d.cts +8 -23
  21. package/__cjs/cache/inmemory/entityStore.cjs +5 -7
  22. package/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
  23. package/__cjs/cache/inmemory/entityStore.d.cts +2 -2
  24. package/__cjs/cache/inmemory/fragmentRegistry.cjs +3 -3
  25. package/__cjs/cache/inmemory/fragmentRegistry.cjs.map +1 -1
  26. package/__cjs/cache/inmemory/helpers.cjs +0 -8
  27. package/__cjs/cache/inmemory/helpers.cjs.map +1 -1
  28. package/__cjs/cache/inmemory/helpers.d.cts +3 -4
  29. package/__cjs/cache/inmemory/inMemoryCache.cjs +6 -18
  30. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  31. package/__cjs/cache/inmemory/inMemoryCache.d.cts +8 -10
  32. package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  33. package/__cjs/cache/inmemory/policies.cjs +9 -9
  34. package/__cjs/cache/inmemory/policies.cjs.map +1 -1
  35. package/__cjs/cache/inmemory/policies.d.cts +1 -1
  36. package/__cjs/cache/inmemory/reactiveVars.cjs.map +1 -1
  37. package/__cjs/cache/inmemory/reactiveVars.d.cts +6 -6
  38. package/__cjs/cache/inmemory/readFromStore.cjs +14 -56
  39. package/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
  40. package/__cjs/cache/inmemory/readFromStore.d.cts +1 -6
  41. package/__cjs/cache/inmemory/types.d.cts +3 -17
  42. package/__cjs/cache/inmemory/writeToStore.cjs +8 -8
  43. package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  44. package/__cjs/cache/inmemory/writeToStore.d.cts +2 -2
  45. package/__cjs/core/ApolloClient.cjs +5 -5
  46. package/__cjs/core/ApolloClient.cjs.map +1 -1
  47. package/__cjs/core/ApolloClient.d.cts +19 -19
  48. package/__cjs/core/LocalState.cjs +2 -2
  49. package/__cjs/core/LocalState.cjs.map +1 -1
  50. package/__cjs/core/LocalState.d.cts +8 -8
  51. package/__cjs/core/ObservableQuery.cjs +5 -5
  52. package/__cjs/core/ObservableQuery.cjs.map +1 -1
  53. package/__cjs/core/ObservableQuery.d.cts +4 -4
  54. package/__cjs/core/QueryInfo.cjs +0 -1
  55. package/__cjs/core/QueryInfo.cjs.map +1 -1
  56. package/__cjs/core/QueryInfo.d.cts +1 -1
  57. package/__cjs/core/QueryManager.cjs +12 -12
  58. package/__cjs/core/QueryManager.cjs.map +1 -1
  59. package/__cjs/core/QueryManager.d.cts +26 -16
  60. package/__cjs/core/types.d.cts +4 -4
  61. package/__cjs/core/watchQueryOptions.d.cts +10 -26
  62. package/__cjs/invariantErrorCodes.cjs +44 -38
  63. package/__cjs/link/batch/batching.cjs.map +1 -1
  64. package/__cjs/link/core/ApolloLink.cjs +2 -2
  65. package/__cjs/link/http/createHttpLink.d.cts +2 -1
  66. package/__cjs/link/http/parseAndCheckHttpResponse.cjs +4 -3
  67. package/__cjs/link/http/parseAndCheckHttpResponse.cjs.map +1 -1
  68. package/__cjs/link/http/serializeFetchParameter.cjs +1 -1
  69. package/__cjs/link/persisted-queries/index.cjs +1 -1
  70. package/__cjs/link/persisted-queries/index.cjs.map +1 -1
  71. package/__cjs/link/persisted-queries/index.d.cts +12 -1
  72. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs +1 -1
  73. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs.map +1 -1
  74. package/__cjs/link/remove-typename/removeTypenameFromVariables.d.cts +10 -1
  75. package/__cjs/masking/maskDefinition.cjs.map +1 -1
  76. package/__cjs/masking/maskDefinition.d.cts +1 -1
  77. package/__cjs/masking/maskFragment.cjs.map +1 -1
  78. package/__cjs/masking/maskFragment.d.cts +1 -1
  79. package/__cjs/masking/maskOperation.cjs.map +1 -1
  80. package/__cjs/masking/maskOperation.d.cts +1 -1
  81. package/__cjs/react/context/ApolloConsumer.cjs +1 -1
  82. package/__cjs/react/context/ApolloConsumer.cjs.map +1 -1
  83. package/__cjs/react/context/ApolloConsumer.d.cts +1 -1
  84. package/__cjs/react/context/ApolloContext.cjs +1 -1
  85. package/__cjs/react/context/ApolloContext.cjs.map +1 -1
  86. package/__cjs/react/context/ApolloContext.d.cts +1 -1
  87. package/__cjs/react/context/ApolloProvider.cjs +1 -1
  88. package/__cjs/react/context/ApolloProvider.cjs.map +1 -1
  89. package/__cjs/react/context/ApolloProvider.d.cts +3 -3
  90. package/__cjs/react/hooks/internal/__use.cjs +1 -1
  91. package/__cjs/react/hooks/internal/__use.cjs.map +1 -1
  92. package/__cjs/react/hooks/internal/__use.d.cts +3 -1
  93. package/__cjs/react/hooks/internal/useDeepMemo.cjs +3 -1
  94. package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -1
  95. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.cjs +1 -1
  96. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.cjs.map +1 -1
  97. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.d.cts +2 -2
  98. package/__cjs/react/hooks/internal/useRenderGuard.cjs +1 -1
  99. package/__cjs/react/hooks/internal/useRenderGuard.cjs.map +1 -1
  100. package/__cjs/react/hooks/internal/wrapHook.cjs.map +1 -1
  101. package/__cjs/react/hooks/internal/wrapHook.d.cts +1 -1
  102. package/__cjs/react/hooks/useApolloClient.cjs +1 -1
  103. package/__cjs/react/hooks/useApolloClient.cjs.map +1 -1
  104. package/__cjs/react/hooks/useApolloClient.d.cts +1 -1
  105. package/__cjs/react/hooks/useBackgroundQuery.cjs +1 -1
  106. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  107. package/__cjs/react/hooks/useFragment.cjs +1 -1
  108. package/__cjs/react/hooks/useFragment.cjs.map +1 -1
  109. package/__cjs/react/hooks/useFragment.d.cts +3 -3
  110. package/__cjs/react/hooks/useLazyQuery.cjs +6 -4
  111. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  112. package/__cjs/react/hooks/useLazyQuery.d.cts +4 -12
  113. package/__cjs/react/hooks/useLoadableQuery.cjs +1 -1
  114. package/__cjs/react/hooks/useLoadableQuery.cjs.map +1 -1
  115. package/__cjs/react/hooks/useMutation.cjs +1 -2
  116. package/__cjs/react/hooks/useMutation.cjs.map +1 -1
  117. package/__cjs/react/hooks/useMutation.d.cts +1 -1
  118. package/__cjs/react/hooks/useQuery.cjs +12 -21
  119. package/__cjs/react/hooks/useQuery.cjs.map +1 -1
  120. package/__cjs/react/hooks/useQuery.d.cts +1 -1
  121. package/__cjs/react/hooks/useQueryRefHandlers.cjs +1 -1
  122. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
  123. package/__cjs/react/hooks/useReactiveVar.cjs +1 -1
  124. package/__cjs/react/hooks/useReactiveVar.cjs.map +1 -1
  125. package/__cjs/react/hooks/useReadQuery.cjs +1 -1
  126. package/__cjs/react/hooks/useReadQuery.cjs.map +1 -1
  127. package/__cjs/react/hooks/useSubscription.cjs +2 -1
  128. package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  129. package/__cjs/react/hooks/useSubscription.d.cts +7 -1
  130. package/__cjs/react/hooks/useSuspenseFragment.cjs +1 -1
  131. package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
  132. package/__cjs/react/hooks/useSuspenseFragment.d.cts +1 -1
  133. package/__cjs/react/hooks/useSuspenseQuery.cjs +1 -1
  134. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  135. package/__cjs/react/hooks/useSuspenseQuery.d.cts +2 -2
  136. package/__cjs/react/hooks/useSyncExternalStore.cjs +1 -1
  137. package/__cjs/react/hooks/useSyncExternalStore.cjs.map +1 -1
  138. package/__cjs/react/index.react-server.cjs +52 -0
  139. package/__cjs/react/index.react-server.cjs.map +1 -0
  140. package/__cjs/react/index.react-server.d.cts +20 -0
  141. package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -1
  142. package/__cjs/react/internal/cache/FragmentReference.d.cts +3 -3
  143. package/__cjs/react/internal/cache/QueryReference.cjs +1 -6
  144. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
  145. package/__cjs/react/internal/cache/QueryReference.d.cts +6 -6
  146. package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -1
  147. package/__cjs/react/internal/cache/SuspenseCache.d.cts +3 -3
  148. package/__cjs/react/internal/cache/getSuspenseCache.cjs.map +1 -1
  149. package/__cjs/react/internal/cache/getSuspenseCache.d.cts +2 -2
  150. package/__cjs/react/parser/index.cjs +3 -3
  151. package/__cjs/react/parser/index.cjs.map +1 -1
  152. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  153. package/__cjs/react/query-preloader/createQueryPreloader.d.cts +1 -9
  154. package/__cjs/react/ssr/getDataFromTree.cjs +1 -1
  155. package/__cjs/react/ssr/getDataFromTree.cjs.map +1 -1
  156. package/__cjs/react/types/types.d.cts +31 -49
  157. package/__cjs/react/types/types.documentation.d.cts +0 -12
  158. package/__cjs/testing/core/mocking/mockClient.cjs.map +1 -1
  159. package/__cjs/testing/core/mocking/mockClient.d.cts +1 -2
  160. package/__cjs/testing/core/mocking/mockLink.cjs.map +1 -1
  161. package/__cjs/testing/internal/disposables/withProdMode.d.cts +1 -1
  162. package/__cjs/testing/internal/incremental.d.cts +3 -2
  163. package/__cjs/testing/internal/renderHelpers.cjs.map +1 -1
  164. package/__cjs/testing/internal/renderHelpers.d.cts +2 -2
  165. package/__cjs/testing/internal/scenarios/index.d.cts +16 -5
  166. package/__cjs/testing/react/MockedProvider.cjs.map +1 -1
  167. package/__cjs/testing/react/MockedProvider.d.cts +3 -3
  168. package/__cjs/utilities/common/canonicalStringify.cjs +2 -2
  169. package/__cjs/utilities/common/canonicalStringify.cjs.map +1 -1
  170. package/__cjs/utilities/common/errorHandling.d.cts +1 -1
  171. package/__cjs/utilities/common/maybeDeepFreeze.cjs +1 -0
  172. package/__cjs/utilities/common/maybeDeepFreeze.cjs.map +1 -1
  173. package/__cjs/utilities/common/maybeDeepFreeze.d.cts +1 -0
  174. package/__cjs/utilities/graphql/print.cjs +2 -2
  175. package/__cjs/utilities/graphql/print.cjs.map +1 -1
  176. package/__cjs/utilities/{caching → internal}/getMemoryInternals.cjs +1 -1
  177. package/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -0
  178. package/__cjs/utilities/{caching → internal}/getMemoryInternals.d.cts +1 -1
  179. package/__cjs/utilities/internal/index.cjs +6 -1
  180. package/__cjs/utilities/internal/index.cjs.map +1 -1
  181. package/__cjs/utilities/internal/index.d.cts +1 -0
  182. package/__cjs/utilities/internal/index.production.cjs +10 -0
  183. package/__cjs/utilities/internal/index.production.cjs.map +1 -0
  184. package/__cjs/utilities/internal/index.production.d.cts +3 -0
  185. package/__cjs/utilities/types/NoInfer.d.cts +1 -1
  186. package/__cjs/version.cjs +1 -1
  187. package/__cjs/version.d.cts +1 -1
  188. package/cache/core/cache.d.ts +18 -18
  189. package/cache/core/cache.js +2 -2
  190. package/cache/core/cache.js.map +1 -1
  191. package/cache/core/types/Cache.d.ts +9 -16
  192. package/cache/core/types/Cache.js.map +1 -1
  193. package/cache/core/types/DataProxy.d.ts +8 -23
  194. package/cache/inmemory/entityStore.d.ts +2 -2
  195. package/cache/inmemory/entityStore.js +5 -7
  196. package/cache/inmemory/entityStore.js.map +1 -1
  197. package/cache/inmemory/helpers.d.ts +0 -1
  198. package/cache/inmemory/helpers.js +0 -7
  199. package/cache/inmemory/helpers.js.map +1 -1
  200. package/cache/inmemory/inMemoryCache.d.ts +8 -10
  201. package/cache/inmemory/inMemoryCache.js +5 -17
  202. package/cache/inmemory/inMemoryCache.js.map +1 -1
  203. package/cache/inmemory/key-extractor.js +1 -1
  204. package/cache/inmemory/policies.d.ts +1 -1
  205. package/cache/inmemory/policies.js +9 -9
  206. package/cache/inmemory/policies.js.map +1 -1
  207. package/cache/inmemory/reactiveVars.d.ts +6 -6
  208. package/cache/inmemory/reactiveVars.js.map +1 -1
  209. package/cache/inmemory/readFromStore.d.ts +1 -6
  210. package/cache/inmemory/readFromStore.js +14 -56
  211. package/cache/inmemory/readFromStore.js.map +1 -1
  212. package/cache/inmemory/types.d.ts +3 -17
  213. package/cache/inmemory/writeToStore.d.ts +2 -2
  214. package/cache/inmemory/writeToStore.js +8 -8
  215. package/cache/inmemory/writeToStore.js.map +1 -1
  216. package/core/ApolloClient.d.ts +19 -19
  217. package/core/ApolloClient.js +4 -4
  218. package/core/ApolloClient.js.map +1 -1
  219. package/core/LocalState.d.ts +6 -6
  220. package/core/LocalState.js +2 -2
  221. package/core/LocalState.js.map +1 -1
  222. package/core/ObservableQuery.d.ts +3 -3
  223. package/core/ObservableQuery.js +5 -5
  224. package/core/ObservableQuery.js.map +1 -1
  225. package/core/QueryInfo.d.ts +1 -1
  226. package/core/QueryInfo.js +0 -1
  227. package/core/QueryInfo.js.map +1 -1
  228. package/core/QueryManager.d.ts +13 -13
  229. package/core/QueryManager.js +11 -11
  230. package/core/QueryManager.js.map +1 -1
  231. package/core/types.d.ts +4 -4
  232. package/core/watchQueryOptions.d.ts +10 -26
  233. package/invariantErrorCodes.js +44 -38
  234. package/link/batch/batching.js +1 -1
  235. package/link/batch/batching.js.map +1 -1
  236. package/link/core/ApolloLink.js +2 -2
  237. package/link/http/parseAndCheckHttpResponse.js +4 -3
  238. package/link/http/parseAndCheckHttpResponse.js.map +1 -1
  239. package/link/http/serializeFetchParameter.js +1 -1
  240. package/masking/maskDefinition.d.ts +1 -1
  241. package/masking/maskDefinition.js.map +1 -1
  242. package/masking/maskFragment.d.ts +1 -1
  243. package/masking/maskFragment.js.map +1 -1
  244. package/masking/maskOperation.d.ts +1 -1
  245. package/masking/maskOperation.js.map +1 -1
  246. package/package.json +39 -17
  247. package/react/context/ApolloConsumer.d.ts +1 -1
  248. package/react/context/ApolloConsumer.js +1 -1
  249. package/react/context/ApolloConsumer.js.map +1 -1
  250. package/react/context/ApolloContext.d.ts +1 -1
  251. package/react/context/ApolloContext.js +1 -1
  252. package/react/context/ApolloContext.js.map +1 -1
  253. package/react/context/ApolloProvider.d.ts +3 -3
  254. package/react/context/ApolloProvider.js +1 -1
  255. package/react/context/ApolloProvider.js.map +1 -1
  256. package/react/hooks/internal/__use.js +1 -1
  257. package/react/hooks/internal/__use.js.map +1 -1
  258. package/react/hooks/internal/useDeepMemo.js +3 -1
  259. package/react/hooks/internal/useDeepMemo.js.map +1 -1
  260. package/react/hooks/internal/useIsomorphicLayoutEffect.d.ts +1 -1
  261. package/react/hooks/internal/useIsomorphicLayoutEffect.js +1 -1
  262. package/react/hooks/internal/useIsomorphicLayoutEffect.js.map +1 -1
  263. package/react/hooks/internal/useRenderGuard.js +1 -1
  264. package/react/hooks/internal/useRenderGuard.js.map +1 -1
  265. package/react/hooks/internal/wrapHook.d.ts +1 -1
  266. package/react/hooks/internal/wrapHook.js.map +1 -1
  267. package/react/hooks/useApolloClient.d.ts +1 -1
  268. package/react/hooks/useApolloClient.js +1 -1
  269. package/react/hooks/useApolloClient.js.map +1 -1
  270. package/react/hooks/useBackgroundQuery.js +1 -1
  271. package/react/hooks/useBackgroundQuery.js.map +1 -1
  272. package/react/hooks/useFragment.d.ts +3 -3
  273. package/react/hooks/useFragment.js +1 -1
  274. package/react/hooks/useFragment.js.map +1 -1
  275. package/react/hooks/useLazyQuery.d.ts +4 -12
  276. package/react/hooks/useLazyQuery.js +6 -4
  277. package/react/hooks/useLazyQuery.js.map +1 -1
  278. package/react/hooks/useLoadableQuery.js +1 -1
  279. package/react/hooks/useLoadableQuery.js.map +1 -1
  280. package/react/hooks/useMutation.d.ts +1 -1
  281. package/react/hooks/useMutation.js +1 -2
  282. package/react/hooks/useMutation.js.map +1 -1
  283. package/react/hooks/useQuery.d.ts +1 -1
  284. package/react/hooks/useQuery.js +12 -21
  285. package/react/hooks/useQuery.js.map +1 -1
  286. package/react/hooks/useQueryRefHandlers.js +1 -1
  287. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  288. package/react/hooks/useReactiveVar.js +1 -1
  289. package/react/hooks/useReactiveVar.js.map +1 -1
  290. package/react/hooks/useReadQuery.js +1 -1
  291. package/react/hooks/useReadQuery.js.map +1 -1
  292. package/react/hooks/useSubscription.d.ts +1 -1
  293. package/react/hooks/useSubscription.js +2 -1
  294. package/react/hooks/useSubscription.js.map +1 -1
  295. package/react/hooks/useSuspenseFragment.d.ts +1 -1
  296. package/react/hooks/useSuspenseFragment.js +1 -1
  297. package/react/hooks/useSuspenseFragment.js.map +1 -1
  298. package/react/hooks/useSuspenseQuery.d.ts +2 -2
  299. package/react/hooks/useSuspenseQuery.js +1 -1
  300. package/react/hooks/useSuspenseQuery.js.map +1 -1
  301. package/react/hooks/useSyncExternalStore.js +1 -1
  302. package/react/hooks/useSyncExternalStore.js.map +1 -1
  303. package/react/index.react-server.d.ts +20 -0
  304. package/react/index.react-server.js +46 -0
  305. package/react/index.react-server.js.map +1 -0
  306. package/react/internal/cache/FragmentReference.d.ts +3 -3
  307. package/react/internal/cache/FragmentReference.js.map +1 -1
  308. package/react/internal/cache/QueryReference.d.ts +1 -1
  309. package/react/internal/cache/QueryReference.js +1 -6
  310. package/react/internal/cache/QueryReference.js.map +1 -1
  311. package/react/internal/cache/SuspenseCache.d.ts +3 -3
  312. package/react/internal/cache/SuspenseCache.js.map +1 -1
  313. package/react/internal/cache/getSuspenseCache.d.ts +1 -1
  314. package/react/internal/cache/getSuspenseCache.js.map +1 -1
  315. package/react/parser/index.js +1 -1
  316. package/react/parser/index.js.map +1 -1
  317. package/react/query-preloader/createQueryPreloader.d.ts +1 -9
  318. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  319. package/react/ssr/getDataFromTree.js +1 -1
  320. package/react/ssr/getDataFromTree.js.map +1 -1
  321. package/react/types/types.d.ts +31 -49
  322. package/react/types/types.documentation.d.ts +0 -12
  323. package/testing/core/mocking/mockClient.d.ts +1 -2
  324. package/testing/core/mocking/mockClient.js.map +1 -1
  325. package/testing/core/mocking/mockLink.js +1 -1
  326. package/testing/core/mocking/mockLink.js.map +1 -1
  327. package/testing/internal/renderHelpers.d.ts +2 -2
  328. package/testing/internal/renderHelpers.js.map +1 -1
  329. package/testing/react/MockedProvider.d.ts +3 -3
  330. package/testing/react/MockedProvider.js.map +1 -1
  331. package/utilities/common/canonicalStringify.js +1 -1
  332. package/utilities/common/canonicalStringify.js.map +1 -1
  333. package/utilities/common/maybeDeepFreeze.d.ts +1 -0
  334. package/utilities/common/maybeDeepFreeze.js +1 -0
  335. package/utilities/common/maybeDeepFreeze.js.map +1 -1
  336. package/utilities/graphql/print.js +1 -1
  337. package/utilities/graphql/print.js.map +1 -1
  338. package/utilities/{caching → internal}/getMemoryInternals.js +1 -1
  339. package/utilities/internal/getMemoryInternals.js.map +1 -0
  340. package/utilities/internal/index.d.ts +1 -0
  341. package/utilities/internal/index.js +1 -0
  342. package/utilities/internal/index.js.map +1 -1
  343. package/utilities/internal/index.production.d.ts +3 -0
  344. package/utilities/internal/index.production.js +6 -0
  345. package/utilities/internal/index.production.js.map +1 -0
  346. package/utilities/types/NoInfer.d.ts +1 -1
  347. package/version.d.ts +1 -1
  348. package/version.js +1 -1
  349. package/__cjs/cache/inmemory/fixPolyfills.cjs +0 -10
  350. package/__cjs/cache/inmemory/fixPolyfills.cjs.map +0 -1
  351. package/__cjs/cache/inmemory/fixPolyfills.d.cts +0 -2
  352. package/__cjs/cache/inmemory/fixPolyfills.native.cjs +0 -53
  353. package/__cjs/cache/inmemory/fixPolyfills.native.cjs.map +0 -1
  354. package/__cjs/cache/inmemory/fixPolyfills.native.d.cts +0 -2
  355. package/__cjs/cache/inmemory/object-canon.cjs +0 -180
  356. package/__cjs/cache/inmemory/object-canon.cjs.map +0 -1
  357. package/__cjs/cache/inmemory/object-canon.d.cts +0 -12
  358. package/__cjs/link/http/iterators/async.cjs +0 -19
  359. package/__cjs/link/http/iterators/async.cjs.map +0 -1
  360. package/__cjs/link/http/iterators/async.d.cts +0 -6
  361. package/__cjs/link/http/iterators/nodeStream.cjs +0 -75
  362. package/__cjs/link/http/iterators/nodeStream.cjs.map +0 -1
  363. package/__cjs/link/http/iterators/nodeStream.d.cts +0 -7
  364. package/__cjs/link/http/iterators/promise.cjs +0 -32
  365. package/__cjs/link/http/iterators/promise.cjs.map +0 -1
  366. package/__cjs/link/http/iterators/promise.d.cts +0 -6
  367. package/__cjs/link/http/iterators/reader.cjs +0 -19
  368. package/__cjs/link/http/iterators/reader.cjs.map +0 -1
  369. package/__cjs/link/http/iterators/reader.d.cts +0 -6
  370. package/__cjs/link/http/responseIterator.cjs +0 -50
  371. package/__cjs/link/http/responseIterator.cjs.map +0 -1
  372. package/__cjs/link/http/responseIterator.d.cts +0 -7
  373. package/__cjs/utilities/caching/getMemoryInternals.cjs.map +0 -1
  374. package/cache/inmemory/fixPolyfills.d.ts +0 -2
  375. package/cache/inmemory/fixPolyfills.js +0 -10
  376. package/cache/inmemory/fixPolyfills.js.map +0 -1
  377. package/cache/inmemory/fixPolyfills.native.d.ts +0 -2
  378. package/cache/inmemory/fixPolyfills.native.js +0 -53
  379. package/cache/inmemory/fixPolyfills.native.js.map +0 -1
  380. package/cache/inmemory/object-canon.d.ts +0 -12
  381. package/cache/inmemory/object-canon.js +0 -176
  382. package/cache/inmemory/object-canon.js.map +0 -1
  383. package/link/http/iterators/async.d.ts +0 -6
  384. package/link/http/iterators/async.js +0 -16
  385. package/link/http/iterators/async.js.map +0 -1
  386. package/link/http/iterators/nodeStream.d.ts +0 -7
  387. package/link/http/iterators/nodeStream.js +0 -72
  388. package/link/http/iterators/nodeStream.js.map +0 -1
  389. package/link/http/iterators/promise.d.ts +0 -6
  390. package/link/http/iterators/promise.js +0 -29
  391. package/link/http/iterators/promise.js.map +0 -1
  392. package/link/http/iterators/reader.d.ts +0 -6
  393. package/link/http/iterators/reader.js +0 -16
  394. package/link/http/iterators/reader.js.map +0 -1
  395. package/link/http/responseIterator.d.ts +0 -7
  396. package/link/http/responseIterator.js +0 -46
  397. package/link/http/responseIterator.js.map +0 -1
  398. package/utilities/caching/getMemoryInternals.js.map +0 -1
  399. /package/utilities/{caching → internal}/getMemoryInternals.d.ts +0 -0
@@ -0,0 +1,6 @@
1
+ ---
2
+ "@apollo/client": minor
3
+ ---
4
+
5
+ Drop `rehackt` dependency.
6
+ We can now directly import from `react` without causing build errors in RSC.
@@ -0,0 +1,12 @@
1
+ ---
2
+ "@apollo/client": minor
3
+ ---
4
+
5
+ Remove polyfills for Object.freeze,seal and preventExtensions in React Native
6
+
7
+ These polyfills were only necessary until React Native 0.59, which
8
+ [patched the problem](https://github.com/facebook/react-native/pull/21492) on
9
+ the React Native side.
10
+
11
+ With React Native 0.61, the `Map` function was [completely replaced](https://github.com/facebook/react-native/commit/93b9ac74e59bbe84ea388d7c1879857b4acab114)
12
+ with a native implementation that never had the problems we guarded against.
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@apollo/client": major
3
+ ---
4
+
5
+ Remove `TSerialized` generic argument to `ApolloCache`. The `ApolloCache` base cache abstraction now returns `unknown` for `cache.extract` which can be overridden by a cache subclass.
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@apollo/client": major
3
+ ---
4
+
5
+ Remove the `TCacheShape` generic argument to `ApolloClient`. `client.extract()` now returns `unknown` by default. You will either need to type-cast this to the expected serialized shape, or use the `cache.extract()` directly from the subclass to get more specific types.
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@apollo/client": patch
3
+ ---
4
+
5
+ Default `TVariables` generic type to `OperationVariables` instead of `any` throughout the client in areas that did not yet have the default as such.
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@apollo/client": major
3
+ ---
4
+
5
+ Removes the `defaultOptions` option from `useQuery`. Use options directly or use the global `ApolloClient` `defaultOptions`.
@@ -10,7 +10,10 @@
10
10
  "calm-frogs-remain",
11
11
  "calm-seals-relate",
12
12
  "chatty-planes-grin",
13
+ "clean-sheep-hide",
13
14
  "clever-zebras-mate",
15
+ "cool-bikes-shake",
16
+ "cuddly-spiders-tie",
14
17
  "curvy-pianos-count",
15
18
  "dirty-trees-pump",
16
19
  "empty-rabbits-move",
@@ -18,7 +21,9 @@
18
21
  "forty-hairs-occur",
19
22
  "fresh-moose-hope",
20
23
  "good-dolphins-peel",
24
+ "gorgeous-chefs-tap",
21
25
  "healthy-apes-sneeze",
26
+ "hip-vans-act",
22
27
  "hot-cycles-notice",
23
28
  "itchy-drinks-refuse",
24
29
  "itchy-roses-accept",
@@ -32,11 +37,13 @@
32
37
  "mighty-penguins-wink",
33
38
  "modern-feet-do",
34
39
  "moody-lobsters-listen",
40
+ "nervous-goats-allow",
35
41
  "nice-donkeys-reflect",
36
42
  "nice-waves-work",
37
43
  "polite-bees-care",
38
44
  "popular-games-sleep",
39
45
  "purple-lions-cough",
46
+ "rare-houses-prove",
40
47
  "real-gorillas-move",
41
48
  "rich-eagles-cross",
42
49
  "rich-kids-carry",
@@ -45,7 +52,9 @@
45
52
  "shiny-carrots-invent",
46
53
  "short-jokes-jam",
47
54
  "silly-knives-exist",
55
+ "slimy-maps-press",
48
56
  "slow-ravens-explain",
57
+ "small-buttons-rhyme",
49
58
  "small-cycles-rescue",
50
59
  "small-kids-film",
51
60
  "smart-rats-explode",
@@ -54,13 +63,16 @@
54
63
  "soft-mails-clean",
55
64
  "sour-pillows-guess",
56
65
  "strange-seahorses-impress",
66
+ "tall-bikes-develop",
57
67
  "tall-cups-suffer",
68
+ "tame-doors-shop",
58
69
  "tidy-squids-poke",
59
70
  "tough-taxis-smoke",
60
71
  "tough-tips-drop",
61
72
  "twenty-snakes-sort",
62
73
  "unlucky-sheep-change",
63
74
  "yellow-cats-judge",
75
+ "young-phones-fold",
64
76
  "young-turtles-explode"
65
77
  ]
66
78
  }
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@apollo/client": minor
3
+ ---
4
+
5
+ Add `react-server` entry point with stubs for normal exports.
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@apollo/client": patch
3
+ ---
4
+
5
+ Fix up the 4.0 CommonJS build
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@apollo/client": major
3
+ ---
4
+
5
+ Remove the deprecated `canonizeResults` option. It was prone to memory leaks. As such, some results that were referentially equal when `canonizeResults` option was set to `true` no longer retain the same object identity.
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@apollo/client": major
3
+ ---
4
+
5
+ Remove `resetResultIdentities` option from `InMemoryCache.gc()`. This affected object canonization which has been removed.
@@ -0,0 +1,14 @@
1
+ ---
2
+ "@apollo/client": major
3
+ ---
4
+
5
+ Remove workarounds for streaming with non-WhatWG response bodies to reduce bundle size.
6
+
7
+ This removes support for `fetch` implementations that return Node Streams, Async Iterators or Blob instances as `Response.body`.
8
+
9
+ In the WhatWG Fetch specification, [`Response.body`](https://fetch.spec.whatwg.org/#body) is specified as a WhatWG [ReadableStream](https://streams.spec.whatwg.org/#readablestream).
10
+
11
+ At this point in time, this is natively supported in browsers, `node` and React Native (via [react-native-fetch-api](https://www.npmjs.com/package/react-native-fetch-api), see our [setup instructions for React Native](https://www.apollographql.com/docs/react/integrations/react-native#consuming-multipart-http-via-text-streaming)).
12
+
13
+ If you are using an older `fetch` polyfill that deviates from the spec, this might not be compatible - for example, [node-fetch](https://github.com/node-fetch/node-fetch?tab=readme-ov-file#interface-body) returns a node `Readable` instead of a `ReadableStream`.
14
+ In those cases, please switch to a compatible alternative such as the `node`-native `fetch`, or `undici`.
@@ -0,0 +1,5 @@
1
+ ---
2
+ "@apollo/client": major
3
+ ---
4
+
5
+ Default the `TData` generic type to `unknown` in all APIs that use a `TData` generic argument such as `useQuery`, `client.query`, etc.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,58 @@
1
1
  # @apollo/client
2
2
 
3
+ ## 4.0.0-alpha.2
4
+
5
+ ### Major Changes
6
+
7
+ - [#12450](https://github.com/apollographql/apollo-client/pull/12450) [`876d070`](https://github.com/apollographql/apollo-client/commit/876d07042cf3348b3769b2bb415aa5f70ce9844c) Thanks [@jerelmiller](https://github.com/jerelmiller)! - Remove `TSerialized` generic argument to `ApolloCache`. The `ApolloCache` base cache abstraction now returns `unknown` for `cache.extract` which can be overridden by a cache subclass.
8
+
9
+ - [#12450](https://github.com/apollographql/apollo-client/pull/12450) [`876d070`](https://github.com/apollographql/apollo-client/commit/876d07042cf3348b3769b2bb415aa5f70ce9844c) Thanks [@jerelmiller](https://github.com/jerelmiller)! - Remove the `TCacheShape` generic argument to `ApolloClient`. `client.extract()` now returns `unknown` by default. You will either need to type-cast this to the expected serialized shape, or use the `cache.extract()` directly from the subclass to get more specific types.
10
+
11
+ - [#12446](https://github.com/apollographql/apollo-client/pull/12446) [`ab920d2`](https://github.com/apollographql/apollo-client/commit/ab920d2701aa276482dbc78b44a1c25c76467bc9) Thanks [@jerelmiller](https://github.com/jerelmiller)! - Removes the `defaultOptions` option from `useQuery`. Use options directly or use the global `ApolloClient` `defaultOptions`.
12
+
13
+ - [#12442](https://github.com/apollographql/apollo-client/pull/12442) [`c5ead08`](https://github.com/apollographql/apollo-client/commit/c5ead08d0f10ddd6232b742defe9620533bf41e6) Thanks [@jerelmiller](https://github.com/jerelmiller)! - Remove the deprecated `canonizeResults` option. It was prone to memory leaks. As such, some results that were referentially equal when `canonizeResults` option was set to `true` no longer retain the same object identity.
14
+
15
+ - [#12442](https://github.com/apollographql/apollo-client/pull/12442) [`c5ead08`](https://github.com/apollographql/apollo-client/commit/c5ead08d0f10ddd6232b742defe9620533bf41e6) Thanks [@jerelmiller](https://github.com/jerelmiller)! - Remove `resetResultIdentities` option from `InMemoryCache.gc()`. This affected object canonization which has been removed.
16
+
17
+ - [#12451](https://github.com/apollographql/apollo-client/pull/12451) [`77e1b13`](https://github.com/apollographql/apollo-client/commit/77e1b133bdba32c67b5a840090dbacb16282dee9) Thanks [@jerelmiller](https://github.com/jerelmiller)! - Default the `TData` generic type to `unknown` in all APIs that use a `TData` generic argument such as `useQuery`, `client.query`, etc.
18
+
19
+ ### Patch Changes
20
+
21
+ - [#12451](https://github.com/apollographql/apollo-client/pull/12451) [`77e1b13`](https://github.com/apollographql/apollo-client/commit/77e1b133bdba32c67b5a840090dbacb16282dee9) Thanks [@jerelmiller](https://github.com/jerelmiller)! - Default `TVariables` generic type to `OperationVariables` instead of `any` throughout the client in areas that did not yet have the default as such.
22
+
23
+ - [#12454](https://github.com/apollographql/apollo-client/pull/12454) [`925548a`](https://github.com/apollographql/apollo-client/commit/925548a9baadb19b7bb78ee84c6f9e64b55c39e9) Thanks [@phryneas](https://github.com/phryneas)! - Fix up the 4.0 CommonJS build
24
+
25
+ ## 4.0.0-alpha.1
26
+
27
+ ### Major Changes
28
+
29
+ - [#12433](https://github.com/apollographql/apollo-client/pull/12433) [`b86e50b`](https://github.com/apollographql/apollo-client/commit/b86e50b1dc121cd67fe73655256b6c61afc18cb4) Thanks [@phryneas](https://github.com/phryneas)! - Remove workarounds for streaming with non-WhatWG response bodies to reduce bundle size.
30
+
31
+ This removes support for `fetch` implementations that return Node Streams, Async Iterators or Blob instances as `Response.body`.
32
+
33
+ In the WhatWG Fetch specification, [`Response.body`](https://fetch.spec.whatwg.org/#body) is specified as a WhatWG [ReadableStream](https://streams.spec.whatwg.org/#readablestream).
34
+
35
+ At this point in time, this is natively supported in browsers, `node` and React Native (via [react-native-fetch-api](https://www.npmjs.com/package/react-native-fetch-api), see our [setup instructions for React Native](https://www.apollographql.com/docs/react/integrations/react-native#consuming-multipart-http-via-text-streaming)).
36
+
37
+ If you are using an older `fetch` polyfill that deviates from the spec, this might not be compatible - for example, [node-fetch](https://github.com/node-fetch/node-fetch?tab=readme-ov-file#interface-body) returns a node `Readable` instead of a `ReadableStream`.
38
+ In those cases, please switch to a compatible alternative such as the `node`-native `fetch`, or `undici`.
39
+
40
+ ### Minor Changes
41
+
42
+ - [#12438](https://github.com/apollographql/apollo-client/pull/12438) [`5089516`](https://github.com/apollographql/apollo-client/commit/5089516aa3ad140df22bb8a458faeeb884ed0388) Thanks [@phryneas](https://github.com/phryneas)! - Drop `rehackt` dependency.
43
+ We can now directly import from `react` without causing build errors in RSC.
44
+
45
+ - [#12437](https://github.com/apollographql/apollo-client/pull/12437) [`4779dc7`](https://github.com/apollographql/apollo-client/commit/4779dc7badaba10d8c7a271eb0da6a079049b65d) Thanks [@phryneas](https://github.com/phryneas)! - Remove polyfills for Object.freeze,seal and preventExtensions in React Native
46
+
47
+ These polyfills were only necessary until React Native 0.59, which
48
+ [patched the problem](https://github.com/facebook/react-native/pull/21492) on
49
+ the React Native side.
50
+
51
+ With React Native 0.61, the `Map` function was [completely replaced](https://github.com/facebook/react-native/commit/93b9ac74e59bbe84ea388d7c1879857b4acab114)
52
+ with a native implementation that never had the problems we guarded against.
53
+
54
+ - [#12438](https://github.com/apollographql/apollo-client/pull/12438) [`5089516`](https://github.com/apollographql/apollo-client/commit/5089516aa3ad140df22bb8a458faeeb884ed0388) Thanks [@phryneas](https://github.com/phryneas)! - Add `react-server` entry point with stubs for normal exports.
55
+
3
56
  ## 4.0.0-alpha.0
4
57
 
5
58
  ### Major Changes
@@ -11,9 +11,9 @@ const rxjs_1 = require("rxjs");
11
11
  const masking_1 = require("@apollo/client/masking");
12
12
  const utilities_1 = require("@apollo/client/utilities");
13
13
  const environment_1 = require("@apollo/client/utilities/environment");
14
+ const internal_1 = require("@apollo/client/utilities/internal");
14
15
  const invariant_1 = require("@apollo/client/utilities/invariant");
15
16
  const equalByQuery_js_1 = require("../../core/equalByQuery.cjs");
16
- const getMemoryInternals_js_1 = require("../../utilities/caching/getMemoryInternals.cjs");
17
17
  class ApolloCache {
18
18
  assumeImmutableResults = false;
19
19
  // Function used to lookup a fragment when a fragment definition is not part
@@ -94,7 +94,7 @@ class ApolloCache {
94
94
  if (environment_1.__DEV__) {
95
95
  const actualFragmentName = fragmentName || (0, utilities_1.getFragmentDefinition)(fragment).name.value;
96
96
  if (!id) {
97
- __DEV__ && invariant_1.invariant.warn(96, actualFragmentName);
97
+ __DEV__ && invariant_1.invariant.warn(97, actualFragmentName);
98
98
  }
99
99
  }
100
100
  const diffOptions = {
@@ -144,7 +144,7 @@ class ApolloCache {
144
144
  // time we receive the same fragment in readFragment.
145
145
  getFragmentDoc = (0, optimism_1.wrap)(utilities_1.getFragmentQueryDocument, {
146
146
  max: utilities_1.cacheSizes["cache.fragmentQueryDocuments"] ||
147
- utilities_1.defaultCacheSizes["cache.fragmentQueryDocuments"],
147
+ 1000 /* defaultCacheSizes["cache.fragmentQueryDocuments"] */,
148
148
  cache: caches_1.WeakCache,
149
149
  });
150
150
  readFragment(options, optimistic = !!options.optimistic) {
@@ -203,6 +203,6 @@ class ApolloCache {
203
203
  }
204
204
  exports.ApolloCache = ApolloCache;
205
205
  if (environment_1.__DEV__) {
206
- ApolloCache.prototype.getMemoryInternals = getMemoryInternals_js_1.getApolloCacheMemoryInternals;
206
+ ApolloCache.prototype.getMemoryInternals = internal_1.getApolloCacheMemoryInternals;
207
207
  }
208
208
  //# sourceMappingURL=cache.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"cache.cjs","sources":["../../../../src/cache/core/cache.ts"],"sourcesContent":["import { WeakCache } from \"@wry/caches\";\nimport type {\n DocumentNode,\n FragmentDefinitionNode,\n InlineFragmentNode,\n} from \"graphql\";\nimport { wrap } from \"optimism\";\nimport { Observable } from \"rxjs\";\n\nimport type {\n OperationVariables,\n TypedDocumentNode,\n} from \"@apollo/client/core\";\nimport type {\n FragmentType,\n MaybeMasked,\n Unmasked,\n} from \"@apollo/client/masking\";\nimport { maskFragment } from \"@apollo/client/masking\";\nimport type {\n DeepPartial,\n NoInfer,\n Reference,\n StoreObject,\n} from \"@apollo/client/utilities\";\nimport {\n cacheSizes,\n defaultCacheSizes,\n getFragmentDefinition,\n getFragmentQueryDocument,\n} from \"@apollo/client/utilities\";\nimport { __DEV__ } from \"@apollo/client/utilities/environment\";\nimport { invariant } from \"@apollo/client/utilities/invariant\";\n\nimport { equalByQuery } from \"../../core/equalByQuery.js\";\nimport { getApolloCacheMemoryInternals } from \"../../utilities/caching/getMemoryInternals.js\";\n\nimport type { Cache } from \"./types/Cache.js\";\nimport type { MissingTree } from \"./types/common.js\";\nimport type { DataProxy } from \"./types/DataProxy.js\";\n\nexport type Transaction<T> = (c: ApolloCache<T>) => void;\n\n/**\n * Watched fragment options.\n */\nexport interface WatchFragmentOptions<TData, TVars> {\n /**\n * A GraphQL fragment document parsed into an AST with the `gql`\n * template literal.\n *\n * @docGroup 1. Required options\n */\n fragment: DocumentNode | TypedDocumentNode<TData, TVars>;\n /**\n * An object containing a `__typename` and primary key fields\n * (such as `id`) identifying the entity object from which the fragment will\n * be retrieved, or a `{ __ref: \"...\" }` reference, or a `string` ID\n * (uncommon).\n *\n * @docGroup 1. Required options\n */\n from: StoreObject | Reference | FragmentType<NoInfer<TData>> | string;\n /**\n * Any variables that the GraphQL fragment may depend on.\n *\n * @docGroup 2. Cache options\n */\n variables?: TVars;\n /**\n * The name of the fragment defined in the fragment document.\n *\n * Required if the fragment document includes more than one fragment,\n * optional otherwise.\n *\n * @docGroup 2. Cache options\n */\n fragmentName?: string;\n /**\n * If `true`, `watchFragment` returns optimistic results.\n *\n * The default value is `true`.\n *\n * @docGroup 2. Cache options\n */\n optimistic?: boolean;\n}\n\n/**\n * Watched fragment results.\n */\nexport type WatchFragmentResult<TData> =\n | {\n data: MaybeMasked<TData>;\n complete: true;\n missing?: never;\n }\n | {\n data: DeepPartial<MaybeMasked<TData>>;\n complete: false;\n missing: MissingTree;\n };\n\nexport abstract class ApolloCache<TSerialized> implements DataProxy {\n public readonly assumeImmutableResults: boolean = false;\n\n // required to implement\n // core API\n public abstract read<TData = any, TVariables = any>(\n query: Cache.ReadOptions<TVariables, TData>\n ): Unmasked<TData> | null;\n public abstract write<TData = any, TVariables = any>(\n write: Cache.WriteOptions<TData, TVariables>\n ): Reference | undefined;\n\n /**\n * Returns data read from the cache for a given query along with information\n * about the cache result such as whether the result is complete and details\n * about missing fields.\n *\n * Will return `complete` as `true` if it can fulfill the full cache result or\n * `false` if not. When no data can be fulfilled from the cache, `null` is\n * returned. When `returnPartialData` is `true`, non-null partial results are\n * returned if it contains at least one field that can be fulfilled from the\n * cache.\n */\n public abstract diff<T>(query: Cache.DiffOptions): Cache.DiffResult<T>;\n public abstract watch<TData = any, TVariables = any>(\n watch: Cache.WatchOptions<TData, TVariables>\n ): () => void;\n\n // Empty the cache and restart all current watches (unless\n // options.discardWatches is true).\n public abstract reset(options?: Cache.ResetOptions): Promise<void>;\n\n // Remove whole objects from the cache by passing just options.id, or\n // specific fields by passing options.field and/or options.args. If no\n // options.args are provided, all fields matching options.field (even\n // those with arguments) will be removed. Returns true iff any data was\n // removed from the cache.\n public abstract evict(options: Cache.EvictOptions): boolean;\n\n // initializer / offline / ssr API\n /**\n * Replaces existing state in the cache (if any) with the values expressed by\n * `serializedState`.\n *\n * Called when hydrating a cache (server side rendering, or offline storage),\n * and also (potentially) during hot reloads.\n */\n public abstract restore(\n serializedState: TSerialized\n ): ApolloCache<TSerialized>;\n\n /**\n * Exposes the cache's complete state, in a serializable format for later restoration.\n */\n public abstract extract(optimistic?: boolean): TSerialized;\n\n // Optimistic API\n\n public abstract removeOptimistic(id: string): void;\n\n // Data masking API\n\n // Used by data masking to determine if an inline fragment with a type\n // condition matches a given typename.\n //\n // If not implemented by a cache subclass, data masking will effectively be\n // disabled since we will not be able to accurately determine if a given type\n // condition for a union or interface matches a particular type.\n public fragmentMatches?(\n fragment: InlineFragmentNode,\n typename: string\n ): boolean;\n\n // Function used to lookup a fragment when a fragment definition is not part\n // of the GraphQL document. This is useful for caches, such as InMemoryCache,\n // that register fragments ahead of time so they can be referenced by name.\n public lookupFragment(fragmentName: string): FragmentDefinitionNode | null {\n return null;\n }\n\n // Transactional API\n\n // The batch method is intended to replace/subsume both performTransaction\n // and recordOptimisticTransaction, but performTransaction came first, so we\n // provide a default batch implementation that's just another way of calling\n // performTransaction. Subclasses of ApolloCache (such as InMemoryCache) can\n // override the batch method to do more interesting things with its options.\n public batch<U>(options: Cache.BatchOptions<this, U>): U {\n const optimisticId =\n typeof options.optimistic === \"string\" ? options.optimistic\n : options.optimistic === false ? null\n : void 0;\n let updateResult: U;\n this.performTransaction(\n () => (updateResult = options.update(this)),\n optimisticId\n );\n return updateResult!;\n }\n\n public abstract performTransaction(\n transaction: Transaction<TSerialized>,\n // Although subclasses may implement recordOptimisticTransaction\n // however they choose, the default implementation simply calls\n // performTransaction with a string as the second argument, allowing\n // performTransaction to handle both optimistic and non-optimistic\n // (broadcast-batching) transactions. Passing null for optimisticId is\n // also allowed, and indicates that performTransaction should apply\n // the transaction non-optimistically (ignoring optimistic data).\n optimisticId?: string | null\n ): void;\n\n public recordOptimisticTransaction(\n transaction: Transaction<TSerialized>,\n optimisticId: string\n ) {\n this.performTransaction(transaction, optimisticId);\n }\n\n // Optional API\n\n // Called once per input document, allowing the cache to make static changes\n // to the query, such as adding __typename fields.\n public transformDocument(document: DocumentNode): DocumentNode {\n return document;\n }\n\n // Called before each ApolloLink request, allowing the cache to make dynamic\n // changes to the query, such as filling in missing fragment definitions.\n public transformForLink(document: DocumentNode): DocumentNode {\n return document;\n }\n\n public identify(object: StoreObject | Reference): string | undefined {\n return;\n }\n\n public gc(): string[] {\n return [];\n }\n\n public modify<Entity extends Record<string, any> = Record<string, any>>(\n options: Cache.ModifyOptions<Entity>\n ): boolean {\n return false;\n }\n\n // DataProxy API\n public readQuery<QueryType, TVariables = any>(\n options: Cache.ReadQueryOptions<QueryType, TVariables>,\n optimistic = !!options.optimistic\n ): Unmasked<QueryType> | null {\n return this.read({\n ...options,\n rootId: options.id || \"ROOT_QUERY\",\n optimistic,\n });\n }\n\n /** {@inheritDoc @apollo/client!ApolloClient#watchFragment:member(1)} */\n public watchFragment<TData = any, TVars = OperationVariables>(\n options: WatchFragmentOptions<TData, TVars>\n ): Observable<WatchFragmentResult<TData>> {\n const {\n fragment,\n fragmentName,\n from,\n optimistic = true,\n ...otherOptions\n } = options;\n const query = this.getFragmentDoc(fragment, fragmentName);\n // While our TypeScript types do not allow for `undefined` as a valid\n // `from`, its possible `useFragment` gives us an `undefined` since it\n // calls` cache.identify` and provides that value to `from`. We are\n // adding this fix here however to ensure those using plain JavaScript\n // and using `cache.identify` themselves will avoid seeing the obscure\n // warning.\n const id =\n typeof from === \"undefined\" || typeof from === \"string\" ?\n from\n : this.identify(from);\n const dataMasking = !!(options as any)[Symbol.for(\"apollo.dataMasking\")];\n\n if (__DEV__) {\n const actualFragmentName =\n fragmentName || getFragmentDefinition(fragment).name.value;\n\n if (!id) {\n invariant.warn(\n \"Could not identify object passed to `from` for '%s' fragment, either because the object is non-normalized or the key fields are missing. If you are masking this object, please ensure the key fields are requested by the parent object.\",\n actualFragmentName\n );\n }\n }\n\n const diffOptions: Cache.DiffOptions<TData, TVars> = {\n ...otherOptions,\n returnPartialData: true,\n id,\n query,\n optimistic,\n };\n\n let latestDiff: DataProxy.DiffResult<TData> | undefined;\n\n return new Observable((observer) => {\n return this.watch<TData, TVars>({\n ...diffOptions,\n immediate: true,\n callback: (diff) => {\n let data =\n dataMasking ?\n maskFragment(diff.result, fragment, this, fragmentName)\n : diff.result;\n\n // TODO: Remove this once `watchFragment` supports `null` as valid\n // value emitted\n if (data === null) {\n data = {} as any;\n }\n\n if (\n // Always ensure we deliver the first result\n latestDiff &&\n equalByQuery(\n query,\n { data: latestDiff.result },\n { data },\n // TODO: Fix the type on WatchFragmentOptions so that TVars\n // extends OperationVariables\n options.variables as OperationVariables\n )\n ) {\n return;\n }\n\n const result = {\n data,\n complete: !!diff.complete,\n } as WatchFragmentResult<TData>;\n\n if (diff.missing) {\n result.missing = diff.missing.missing;\n }\n\n latestDiff = { ...diff, result: data } as DataProxy.DiffResult<TData>;\n observer.next(result);\n },\n });\n });\n }\n\n // Make sure we compute the same (===) fragment query document every\n // time we receive the same fragment in readFragment.\n private getFragmentDoc = wrap(getFragmentQueryDocument, {\n max:\n cacheSizes[\"cache.fragmentQueryDocuments\"] ||\n defaultCacheSizes[\"cache.fragmentQueryDocuments\"],\n cache: WeakCache,\n });\n\n public readFragment<FragmentType, TVariables = any>(\n options: Cache.ReadFragmentOptions<FragmentType, TVariables>,\n optimistic = !!options.optimistic\n ): Unmasked<FragmentType> | null {\n return this.read({\n ...options,\n query: this.getFragmentDoc(options.fragment, options.fragmentName),\n rootId: options.id,\n optimistic,\n });\n }\n\n public writeQuery<TData = any, TVariables = any>({\n id,\n data,\n ...options\n }: Cache.WriteQueryOptions<TData, TVariables>): Reference | undefined {\n return this.write(\n Object.assign(options, {\n dataId: id || \"ROOT_QUERY\",\n result: data,\n })\n );\n }\n\n public writeFragment<TData = any, TVariables = any>({\n id,\n data,\n fragment,\n fragmentName,\n ...options\n }: Cache.WriteFragmentOptions<TData, TVariables>): Reference | undefined {\n return this.write(\n Object.assign(options, {\n query: this.getFragmentDoc(fragment, fragmentName),\n dataId: id,\n result: data,\n })\n );\n }\n\n public updateQuery<TData = any, TVariables = any>(\n options: Cache.UpdateQueryOptions<TData, TVariables>,\n update: (data: Unmasked<TData> | null) => Unmasked<TData> | null | void\n ): Unmasked<TData> | null {\n return this.batch({\n update(cache) {\n const value = cache.readQuery<TData, TVariables>(options);\n const data = update(value);\n if (data === void 0 || data === null) return value;\n cache.writeQuery<TData, TVariables>({ ...options, data });\n return data;\n },\n });\n }\n\n public updateFragment<TData = any, TVariables = any>(\n options: Cache.UpdateFragmentOptions<TData, TVariables>,\n update: (data: Unmasked<TData> | null) => Unmasked<TData> | null | void\n ): Unmasked<TData> | null {\n return this.batch({\n update(cache) {\n const value = cache.readFragment<TData, TVariables>(options);\n const data = update(value);\n if (data === void 0 || data === null) return value;\n cache.writeFragment<TData, TVariables>({ ...options, data });\n return data;\n },\n });\n }\n\n /**\n * @experimental\n * @internal\n * This is not a stable API - it is used in development builds to expose\n * information to the DevTools.\n * Use at your own risk!\n */\n public getMemoryInternals?: typeof getApolloCacheMemoryInternals;\n}\n\nif (__DEV__) {\n ApolloCache.prototype.getMemoryInternals = getApolloCacheMemoryInternals;\n}\n"],"names":[],"mappings":";;;;;;;AAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAMA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAWA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAOA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAMA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA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A,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA4D,CAAC;QACzD,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,C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"}
1
+ {"version":3,"file":"cache.cjs","sources":["../../../../src/cache/core/cache.ts"],"sourcesContent":["import { WeakCache } from \"@wry/caches\";\nimport type {\n DocumentNode,\n FragmentDefinitionNode,\n InlineFragmentNode,\n} from \"graphql\";\nimport { wrap } from \"optimism\";\nimport { Observable } from \"rxjs\";\n\nimport type {\n OperationVariables,\n TypedDocumentNode,\n} from \"@apollo/client/core\";\nimport type {\n FragmentType,\n MaybeMasked,\n Unmasked,\n} from \"@apollo/client/masking\";\nimport { maskFragment } from \"@apollo/client/masking\";\nimport type {\n DeepPartial,\n NoInfer,\n Reference,\n StoreObject,\n} from \"@apollo/client/utilities\";\nimport {\n cacheSizes,\n defaultCacheSizes,\n getFragmentDefinition,\n getFragmentQueryDocument,\n} from \"@apollo/client/utilities\";\nimport { __DEV__ } from \"@apollo/client/utilities/environment\";\nimport { getApolloCacheMemoryInternals } from \"@apollo/client/utilities/internal\";\nimport { invariant } from \"@apollo/client/utilities/invariant\";\n\nimport { equalByQuery } from \"../../core/equalByQuery.js\";\n\nimport type { Cache } from \"./types/Cache.js\";\nimport type { MissingTree } from \"./types/common.js\";\nimport type { DataProxy } from \"./types/DataProxy.js\";\n\nexport type Transaction = (c: ApolloCache) => void;\n\n/**\n * Watched fragment options.\n */\nexport interface WatchFragmentOptions<TData, TVars> {\n /**\n * A GraphQL fragment document parsed into an AST with the `gql`\n * template literal.\n *\n * @docGroup 1. Required options\n */\n fragment: DocumentNode | TypedDocumentNode<TData, TVars>;\n /**\n * An object containing a `__typename` and primary key fields\n * (such as `id`) identifying the entity object from which the fragment will\n * be retrieved, or a `{ __ref: \"...\" }` reference, or a `string` ID\n * (uncommon).\n *\n * @docGroup 1. Required options\n */\n from: StoreObject | Reference | FragmentType<NoInfer<TData>> | string;\n /**\n * Any variables that the GraphQL fragment may depend on.\n *\n * @docGroup 2. Cache options\n */\n variables?: TVars;\n /**\n * The name of the fragment defined in the fragment document.\n *\n * Required if the fragment document includes more than one fragment,\n * optional otherwise.\n *\n * @docGroup 2. Cache options\n */\n fragmentName?: string;\n /**\n * If `true`, `watchFragment` returns optimistic results.\n *\n * The default value is `true`.\n *\n * @docGroup 2. Cache options\n */\n optimistic?: boolean;\n}\n\n/**\n * Watched fragment results.\n */\nexport type WatchFragmentResult<TData> =\n | {\n data: MaybeMasked<TData>;\n complete: true;\n missing?: never;\n }\n | {\n data: DeepPartial<MaybeMasked<TData>>;\n complete: false;\n missing: MissingTree;\n };\n\nexport abstract class ApolloCache implements DataProxy {\n public readonly assumeImmutableResults: boolean = false;\n\n // required to implement\n // core API\n public abstract read<TData = unknown, TVariables = OperationVariables>(\n query: Cache.ReadOptions<TVariables, TData>\n ): Unmasked<TData> | null;\n public abstract write<TData = unknown, TVariables = OperationVariables>(\n write: Cache.WriteOptions<TData, TVariables>\n ): Reference | undefined;\n\n /**\n * Returns data read from the cache for a given query along with information\n * about the cache result such as whether the result is complete and details\n * about missing fields.\n *\n * Will return `complete` as `true` if it can fulfill the full cache result or\n * `false` if not. When no data can be fulfilled from the cache, `null` is\n * returned. When `returnPartialData` is `true`, non-null partial results are\n * returned if it contains at least one field that can be fulfilled from the\n * cache.\n */\n public abstract diff<\n TData = unknown,\n TVariables extends OperationVariables = OperationVariables,\n >(query: Cache.DiffOptions<TData, TVariables>): Cache.DiffResult<TData>;\n public abstract watch<TData = unknown, TVariables = OperationVariables>(\n watch: Cache.WatchOptions<TData, TVariables>\n ): () => void;\n\n // Empty the cache and restart all current watches (unless\n // options.discardWatches is true).\n public abstract reset(options?: Cache.ResetOptions): Promise<void>;\n\n // Remove whole objects from the cache by passing just options.id, or\n // specific fields by passing options.field and/or options.args. If no\n // options.args are provided, all fields matching options.field (even\n // those with arguments) will be removed. Returns true iff any data was\n // removed from the cache.\n public abstract evict(options: Cache.EvictOptions): boolean;\n\n // initializer / offline / ssr API\n /**\n * Replaces existing state in the cache (if any) with the values expressed by\n * `serializedState`.\n *\n * Called when hydrating a cache (server side rendering, or offline storage),\n * and also (potentially) during hot reloads.\n */\n public abstract restore(serializedState: unknown): this;\n\n /**\n * Exposes the cache's complete state, in a serializable format for later restoration.\n */\n public abstract extract(optimistic?: boolean): unknown;\n\n // Optimistic API\n\n public abstract removeOptimistic(id: string): void;\n\n // Data masking API\n\n // Used by data masking to determine if an inline fragment with a type\n // condition matches a given typename.\n //\n // If not implemented by a cache subclass, data masking will effectively be\n // disabled since we will not be able to accurately determine if a given type\n // condition for a union or interface matches a particular type.\n public fragmentMatches?(\n fragment: InlineFragmentNode,\n typename: string\n ): boolean;\n\n // Function used to lookup a fragment when a fragment definition is not part\n // of the GraphQL document. This is useful for caches, such as InMemoryCache,\n // that register fragments ahead of time so they can be referenced by name.\n public lookupFragment(fragmentName: string): FragmentDefinitionNode | null {\n return null;\n }\n\n // Transactional API\n\n // The batch method is intended to replace/subsume both performTransaction\n // and recordOptimisticTransaction, but performTransaction came first, so we\n // provide a default batch implementation that's just another way of calling\n // performTransaction. Subclasses of ApolloCache (such as InMemoryCache) can\n // override the batch method to do more interesting things with its options.\n public batch<U>(options: Cache.BatchOptions<this, U>): U {\n const optimisticId =\n typeof options.optimistic === \"string\" ? options.optimistic\n : options.optimistic === false ? null\n : void 0;\n let updateResult: U;\n this.performTransaction(\n () => (updateResult = options.update(this)),\n optimisticId\n );\n return updateResult!;\n }\n\n public abstract performTransaction(\n transaction: Transaction,\n // Although subclasses may implement recordOptimisticTransaction\n // however they choose, the default implementation simply calls\n // performTransaction with a string as the second argument, allowing\n // performTransaction to handle both optimistic and non-optimistic\n // (broadcast-batching) transactions. Passing null for optimisticId is\n // also allowed, and indicates that performTransaction should apply\n // the transaction non-optimistically (ignoring optimistic data).\n optimisticId?: string | null\n ): void;\n\n public recordOptimisticTransaction(\n transaction: Transaction,\n optimisticId: string\n ) {\n this.performTransaction(transaction, optimisticId);\n }\n\n // Optional API\n\n // Called once per input document, allowing the cache to make static changes\n // to the query, such as adding __typename fields.\n public transformDocument(document: DocumentNode): DocumentNode {\n return document;\n }\n\n // Called before each ApolloLink request, allowing the cache to make dynamic\n // changes to the query, such as filling in missing fragment definitions.\n public transformForLink(document: DocumentNode): DocumentNode {\n return document;\n }\n\n public identify(object: StoreObject | Reference): string | undefined {\n return;\n }\n\n public gc(): string[] {\n return [];\n }\n\n public modify<Entity extends Record<string, any> = Record<string, any>>(\n options: Cache.ModifyOptions<Entity>\n ): boolean {\n return false;\n }\n\n // DataProxy API\n public readQuery<TData = unknown, TVariables = OperationVariables>(\n options: Cache.ReadQueryOptions<TData, TVariables>,\n optimistic = !!options.optimistic\n ): Unmasked<TData> | null {\n return this.read({\n ...options,\n rootId: options.id || \"ROOT_QUERY\",\n optimistic,\n });\n }\n\n /** {@inheritDoc @apollo/client!ApolloClient#watchFragment:member(1)} */\n public watchFragment<TData = unknown, TVars = OperationVariables>(\n options: WatchFragmentOptions<TData, TVars>\n ): Observable<WatchFragmentResult<TData>> {\n const {\n fragment,\n fragmentName,\n from,\n optimistic = true,\n ...otherOptions\n } = options;\n const query = this.getFragmentDoc(fragment, fragmentName);\n // While our TypeScript types do not allow for `undefined` as a valid\n // `from`, its possible `useFragment` gives us an `undefined` since it\n // calls` cache.identify` and provides that value to `from`. We are\n // adding this fix here however to ensure those using plain JavaScript\n // and using `cache.identify` themselves will avoid seeing the obscure\n // warning.\n const id =\n typeof from === \"undefined\" || typeof from === \"string\" ?\n from\n : this.identify(from);\n const dataMasking = !!(options as any)[Symbol.for(\"apollo.dataMasking\")];\n\n if (__DEV__) {\n const actualFragmentName =\n fragmentName || getFragmentDefinition(fragment).name.value;\n\n if (!id) {\n invariant.warn(\n \"Could not identify object passed to `from` for '%s' fragment, either because the object is non-normalized or the key fields are missing. If you are masking this object, please ensure the key fields are requested by the parent object.\",\n actualFragmentName\n );\n }\n }\n\n const diffOptions: Cache.DiffOptions<TData, TVars> = {\n ...otherOptions,\n returnPartialData: true,\n id,\n query,\n optimistic,\n };\n\n let latestDiff: DataProxy.DiffResult<TData> | undefined;\n\n return new Observable((observer) => {\n return this.watch<TData, TVars>({\n ...diffOptions,\n immediate: true,\n callback: (diff) => {\n let data =\n dataMasking ?\n maskFragment(diff.result, fragment, this, fragmentName)\n : diff.result;\n\n // TODO: Remove this once `watchFragment` supports `null` as valid\n // value emitted\n if (data === null) {\n data = {} as any;\n }\n\n if (\n // Always ensure we deliver the first result\n latestDiff &&\n equalByQuery(\n query,\n { data: latestDiff.result },\n { data },\n // TODO: Fix the type on WatchFragmentOptions so that TVars\n // extends OperationVariables\n options.variables as OperationVariables\n )\n ) {\n return;\n }\n\n const result = {\n data,\n complete: !!diff.complete,\n } as WatchFragmentResult<TData>;\n\n if (diff.missing) {\n result.missing = diff.missing.missing;\n }\n\n latestDiff = { ...diff, result: data } as DataProxy.DiffResult<TData>;\n observer.next(result);\n },\n });\n });\n }\n\n // Make sure we compute the same (===) fragment query document every\n // time we receive the same fragment in readFragment.\n private getFragmentDoc = wrap(getFragmentQueryDocument, {\n max:\n cacheSizes[\"cache.fragmentQueryDocuments\"] ||\n defaultCacheSizes[\"cache.fragmentQueryDocuments\"],\n cache: WeakCache,\n });\n\n public readFragment<TData = unknown, TVariables = OperationVariables>(\n options: Cache.ReadFragmentOptions<TData, TVariables>,\n optimistic = !!options.optimistic\n ): Unmasked<TData> | null {\n return this.read({\n ...options,\n query: this.getFragmentDoc(options.fragment, options.fragmentName),\n rootId: options.id,\n optimistic,\n });\n }\n\n public writeQuery<TData = unknown, TVariables = OperationVariables>({\n id,\n data,\n ...options\n }: Cache.WriteQueryOptions<TData, TVariables>): Reference | undefined {\n return this.write(\n Object.assign(options, {\n dataId: id || \"ROOT_QUERY\",\n result: data,\n })\n );\n }\n\n public writeFragment<TData = unknown, TVariables = OperationVariables>({\n id,\n data,\n fragment,\n fragmentName,\n ...options\n }: Cache.WriteFragmentOptions<TData, TVariables>): Reference | undefined {\n return this.write(\n Object.assign(options, {\n query: this.getFragmentDoc(fragment, fragmentName),\n dataId: id,\n result: data,\n })\n );\n }\n\n public updateQuery<TData = unknown, TVariables = OperationVariables>(\n options: Cache.UpdateQueryOptions<TData, TVariables>,\n update: (data: Unmasked<TData> | null) => Unmasked<TData> | null | void\n ): Unmasked<TData> | null {\n return this.batch({\n update(cache) {\n const value = cache.readQuery<TData, TVariables>(options);\n const data = update(value);\n if (data === void 0 || data === null) return value;\n cache.writeQuery<TData, TVariables>({ ...options, data });\n return data;\n },\n });\n }\n\n public updateFragment<TData = unknown, TVariables = OperationVariables>(\n options: Cache.UpdateFragmentOptions<TData, TVariables>,\n update: (data: Unmasked<TData> | null) => Unmasked<TData> | null | void\n ): Unmasked<TData> | null {\n return this.batch({\n update(cache) {\n const value = cache.readFragment<TData, TVariables>(options);\n const data = update(value);\n if (data === void 0 || data === null) return value;\n cache.writeFragment<TData, TVariables>({ ...options, data });\n return data;\n },\n });\n }\n\n /**\n * @experimental\n * @internal\n * This is not a stable API - it is used in development builds to expose\n * information to the DevTools.\n * Use at your own risk!\n */\n public getMemoryInternals?: typeof getApolloCacheMemoryInternals;\n}\n\nif (__DEV__) {\n ApolloCache.prototype.getMemoryInternals = getApolloCacheMemoryInternals;\n}\n"],"names":[],"mappings":";;;;;;;AAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAMA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAWA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAOA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAMA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAoEA,CAAA,CAAA,CAAA,CAAA,EAAsB,CAAtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA;IACkB,CAAlB,CAAA,CAAA,CAA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AAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,C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"}
@@ -3,11 +3,11 @@ import { Observable } from "rxjs";
3
3
  import type { OperationVariables, TypedDocumentNode } from "@apollo/client/core";
4
4
  import type { FragmentType, MaybeMasked, Unmasked } from "@apollo/client/masking";
5
5
  import type { DeepPartial, NoInfer, Reference, StoreObject } from "@apollo/client/utilities";
6
- import { getApolloCacheMemoryInternals } from "../../utilities/caching/getMemoryInternals.cjs";
6
+ import { getApolloCacheMemoryInternals } from "@apollo/client/utilities/internal";
7
7
  import type { Cache } from "./types/Cache.cjs";
8
8
  import type { MissingTree } from "./types/common.cjs";
9
9
  import type { DataProxy } from "./types/DataProxy.cjs";
10
- export type Transaction<T> = (c: ApolloCache<T>) => void;
10
+ export type Transaction = (c: ApolloCache) => void;
11
11
  /**
12
12
  * Watched fragment options.
13
13
  */
@@ -64,10 +64,10 @@ export type WatchFragmentResult<TData> = {
64
64
  complete: false;
65
65
  missing: MissingTree;
66
66
  };
67
- export declare abstract class ApolloCache<TSerialized> implements DataProxy {
67
+ export declare abstract class ApolloCache implements DataProxy {
68
68
  readonly assumeImmutableResults: boolean;
69
- abstract read<TData = any, TVariables = any>(query: Cache.ReadOptions<TVariables, TData>): Unmasked<TData> | null;
70
- abstract write<TData = any, TVariables = any>(write: Cache.WriteOptions<TData, TVariables>): Reference | undefined;
69
+ abstract read<TData = unknown, TVariables = OperationVariables>(query: Cache.ReadOptions<TVariables, TData>): Unmasked<TData> | null;
70
+ abstract write<TData = unknown, TVariables = OperationVariables>(write: Cache.WriteOptions<TData, TVariables>): Reference | undefined;
71
71
  /**
72
72
  * Returns data read from the cache for a given query along with information
73
73
  * about the cache result such as whether the result is complete and details
@@ -79,8 +79,8 @@ export declare abstract class ApolloCache<TSerialized> implements DataProxy {
79
79
  * returned if it contains at least one field that can be fulfilled from the
80
80
  * cache.
81
81
  */
82
- abstract diff<T>(query: Cache.DiffOptions): Cache.DiffResult<T>;
83
- abstract watch<TData = any, TVariables = any>(watch: Cache.WatchOptions<TData, TVariables>): () => void;
82
+ abstract diff<TData = unknown, TVariables extends OperationVariables = OperationVariables>(query: Cache.DiffOptions<TData, TVariables>): Cache.DiffResult<TData>;
83
+ abstract watch<TData = unknown, TVariables = OperationVariables>(watch: Cache.WatchOptions<TData, TVariables>): () => void;
84
84
  abstract reset(options?: Cache.ResetOptions): Promise<void>;
85
85
  abstract evict(options: Cache.EvictOptions): boolean;
86
86
  /**
@@ -90,23 +90,23 @@ export declare abstract class ApolloCache<TSerialized> implements DataProxy {
90
90
  * Called when hydrating a cache (server side rendering, or offline storage),
91
91
  * and also (potentially) during hot reloads.
92
92
  */
93
- abstract restore(serializedState: TSerialized): ApolloCache<TSerialized>;
93
+ abstract restore(serializedState: unknown): this;
94
94
  /**
95
95
  * Exposes the cache's complete state, in a serializable format for later restoration.
96
96
  */
97
- abstract extract(optimistic?: boolean): TSerialized;
97
+ abstract extract(optimistic?: boolean): unknown;
98
98
  abstract removeOptimistic(id: string): void;
99
99
  fragmentMatches?(fragment: InlineFragmentNode, typename: string): boolean;
100
100
  lookupFragment(fragmentName: string): FragmentDefinitionNode | null;
101
101
  batch<U>(options: Cache.BatchOptions<this, U>): U;
102
- abstract performTransaction(transaction: Transaction<TSerialized>, optimisticId?: string | null): void;
103
- recordOptimisticTransaction(transaction: Transaction<TSerialized>, optimisticId: string): void;
102
+ abstract performTransaction(transaction: Transaction, optimisticId?: string | null): void;
103
+ recordOptimisticTransaction(transaction: Transaction, optimisticId: string): void;
104
104
  transformDocument(document: DocumentNode): DocumentNode;
105
105
  transformForLink(document: DocumentNode): DocumentNode;
106
106
  identify(object: StoreObject | Reference): string | undefined;
107
107
  gc(): string[];
108
108
  modify<Entity extends Record<string, any> = Record<string, any>>(options: Cache.ModifyOptions<Entity>): boolean;
109
- readQuery<QueryType, TVariables = any>(options: Cache.ReadQueryOptions<QueryType, TVariables>, optimistic?: boolean): Unmasked<QueryType> | null;
109
+ readQuery<TData = unknown, TVariables = OperationVariables>(options: Cache.ReadQueryOptions<TData, TVariables>, optimistic?: boolean): Unmasked<TData> | null;
110
110
  /**
111
111
  * Watches the cache store of the fragment according to the options specified and returns an `Observable`. We can subscribe to this `Observable` and receive updated results through an observer when the cache store changes.
112
112
  *
@@ -118,13 +118,13 @@ export declare abstract class ApolloCache<TSerialized> implements DataProxy {
118
118
  *
119
119
  * 3.10.0
120
120
  */
121
- watchFragment<TData = any, TVars = OperationVariables>(options: WatchFragmentOptions<TData, TVars>): Observable<WatchFragmentResult<TData>>;
121
+ watchFragment<TData = unknown, TVars = OperationVariables>(options: WatchFragmentOptions<TData, TVars>): Observable<WatchFragmentResult<TData>>;
122
122
  private getFragmentDoc;
123
- readFragment<FragmentType, TVariables = any>(options: Cache.ReadFragmentOptions<FragmentType, TVariables>, optimistic?: boolean): Unmasked<FragmentType> | null;
124
- writeQuery<TData = any, TVariables = any>({ id, data, ...options }: Cache.WriteQueryOptions<TData, TVariables>): Reference | undefined;
125
- writeFragment<TData = any, TVariables = any>({ id, data, fragment, fragmentName, ...options }: Cache.WriteFragmentOptions<TData, TVariables>): Reference | undefined;
126
- updateQuery<TData = any, TVariables = any>(options: Cache.UpdateQueryOptions<TData, TVariables>, update: (data: Unmasked<TData> | null) => Unmasked<TData> | null | void): Unmasked<TData> | null;
127
- updateFragment<TData = any, TVariables = any>(options: Cache.UpdateFragmentOptions<TData, TVariables>, update: (data: Unmasked<TData> | null) => Unmasked<TData> | null | void): Unmasked<TData> | null;
123
+ readFragment<TData = unknown, TVariables = OperationVariables>(options: Cache.ReadFragmentOptions<TData, TVariables>, optimistic?: boolean): Unmasked<TData> | null;
124
+ writeQuery<TData = unknown, TVariables = OperationVariables>({ id, data, ...options }: Cache.WriteQueryOptions<TData, TVariables>): Reference | undefined;
125
+ writeFragment<TData = unknown, TVariables = OperationVariables>({ id, data, fragment, fragmentName, ...options }: Cache.WriteFragmentOptions<TData, TVariables>): Reference | undefined;
126
+ updateQuery<TData = unknown, TVariables = OperationVariables>(options: Cache.UpdateQueryOptions<TData, TVariables>, update: (data: Unmasked<TData> | null) => Unmasked<TData> | null | void): Unmasked<TData> | null;
127
+ updateFragment<TData = unknown, TVariables = OperationVariables>(options: Cache.UpdateFragmentOptions<TData, TVariables>, update: (data: Unmasked<TData> | null) => Unmasked<TData> | null | void): Unmasked<TData> | null;
128
128
  /**
129
129
  * @experimental
130
130
  * @internal
@@ -1 +1 @@
1
- {"version":3,"file":"Cache.cjs","sources":["../../../../../src/cache/core/types/Cache.ts"],"sourcesContent":["import type { Unmasked } from \"@apollo/client/masking\";\n\nimport type { ApolloCache } from \"../cache.js\";\n\nimport type { AllFieldsModifier, Modifiers } from \"./common.js\";\nimport { DataProxy } from \"./DataProxy.js\";\n\nexport namespace Cache {\n export type WatchCallback<TData = any> = (\n diff: Cache.DiffResult<TData>,\n lastDiff?: Cache.DiffResult<TData>\n ) => void;\n\n export interface ReadOptions<TVariables = any, TData = any>\n extends DataProxy.Query<TVariables, TData> {\n rootId?: string;\n previousResult?: any;\n optimistic: boolean;\n returnPartialData?: boolean;\n /**\n * @deprecated\n * Using `canonizeResults` can result in memory leaks so we generally do not\n * recommend using this option anymore.\n * A future version of Apollo Client will contain a similar feature without\n * the risk of memory leaks.\n */\n canonizeResults?: boolean;\n }\n\n export interface WriteOptions<TResult = any, TVariables = any>\n extends Omit<DataProxy.Query<TVariables, TResult>, \"id\">,\n Omit<DataProxy.WriteOptions<TResult>, \"data\"> {\n dataId?: string;\n result: Unmasked<TResult>;\n }\n\n export interface DiffOptions<TData = any, TVariables = any>\n extends Omit<ReadOptions<TVariables, TData>, \"rootId\"> {\n // The DiffOptions interface is currently just an alias for\n // ReadOptions, though DiffOptions used to be responsible for\n // declaring the returnPartialData option.\n }\n\n export interface WatchOptions<TData = any, TVariables = any>\n extends DiffOptions<TData, TVariables> {\n watcher?: object;\n immediate?: boolean;\n callback: WatchCallback<TData>;\n lastDiff?: DiffResult<TData>;\n }\n\n export interface EvictOptions {\n id?: string;\n fieldName?: string;\n args?: Record<string, any>;\n broadcast?: boolean;\n }\n\n // Although you can call cache.reset() without options, its behavior can be\n // configured by passing a Cache.ResetOptions object.\n export interface ResetOptions {\n discardWatches?: boolean;\n }\n\n export interface ModifyOptions<\n Entity extends Record<string, any> = Record<string, any>,\n > {\n id?: string;\n fields: Modifiers<Entity> | AllFieldsModifier<Entity>;\n optimistic?: boolean;\n broadcast?: boolean;\n }\n\n export interface BatchOptions<\n TCache extends ApolloCache<any>,\n TUpdateResult = void,\n > {\n // Same as the first parameter of performTransaction, except the cache\n // argument will have the subclass type rather than ApolloCache.\n update(cache: TCache): TUpdateResult;\n\n // Passing a string for this option creates a new optimistic layer, with the\n // given string as its layer.id, just like passing a string for the\n // optimisticId parameter of performTransaction. Passing true is the same as\n // passing undefined to performTransaction (running the batch operation\n // against the current top layer of the cache), and passing false is the\n // same as passing null (running the operation against root/non-optimistic\n // cache data).\n optimistic?: string | boolean;\n\n // If you specify the ID of an optimistic layer using this option, that\n // layer will be removed as part of the batch transaction, triggering at\n // most one broadcast for both the transaction and the removal of the layer.\n // Note: this option is needed because calling cache.removeOptimistic during\n // the transaction function may not be not safe, since any modifications to\n // cache layers may be discarded after the transaction finishes.\n removeOptimistic?: string;\n\n // If you want to find out which watched queries were invalidated during\n // this batch operation, pass this optional callback function. Returning\n // false from the callback will prevent broadcasting this result.\n onWatchUpdated?: (\n this: TCache,\n watch: Cache.WatchOptions,\n diff: Cache.DiffResult<any>,\n lastDiff?: Cache.DiffResult<any> | undefined\n ) => any;\n }\n\n export import DiffResult = DataProxy.DiffResult;\n export import ReadQueryOptions = DataProxy.ReadQueryOptions;\n export import ReadFragmentOptions = DataProxy.ReadFragmentOptions;\n export import WriteQueryOptions = DataProxy.WriteQueryOptions;\n export import WriteFragmentOptions = DataProxy.WriteFragmentOptions;\n export import UpdateQueryOptions = DataProxy.UpdateQueryOptions;\n export import UpdateFragmentOptions = DataProxy.UpdateFragmentOptions;\n export import Fragment = DataProxy.Fragment;\n}\n"],"names":[],"mappings":";;;AAOA,CAAA,CAAA,EAAiB,CAAjB,CAAA,CAAA,CAAA,CAAsB;AAAtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAiB,CAAjB,CAAA,CAAA,CAAA,CAAsB,EAAtB;AA8GA,CAAC,CAAD,CA9GiB,CA8GjB,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EA9GiB,CA8GjB,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA;"}
1
+ {"version":3,"file":"Cache.cjs","sources":["../../../../../src/cache/core/types/Cache.ts"],"sourcesContent":["import type { OperationVariables } from \"@apollo/client/core\";\nimport type { Unmasked } from \"@apollo/client/masking\";\n\nimport type { ApolloCache } from \"../cache.js\";\n\nimport type { AllFieldsModifier, Modifiers } from \"./common.js\";\nimport { DataProxy } from \"./DataProxy.js\";\n\nexport namespace Cache {\n export type WatchCallback<TData = unknown> = (\n diff: Cache.DiffResult<TData>,\n lastDiff?: Cache.DiffResult<TData>\n ) => void;\n\n export interface ReadOptions<TVariables = OperationVariables, TData = unknown>\n extends DataProxy.Query<TVariables, TData> {\n rootId?: string;\n previousResult?: any;\n optimistic: boolean;\n returnPartialData?: boolean;\n }\n\n export interface WriteOptions<\n TData = unknown,\n TVariables = OperationVariables,\n > extends Omit<DataProxy.Query<TVariables, TData>, \"id\">,\n Omit<DataProxy.WriteOptions<TData>, \"data\"> {\n dataId?: string;\n result: Unmasked<TData>;\n }\n\n export interface DiffOptions<TData = unknown, TVariables = OperationVariables>\n extends Omit<ReadOptions<TVariables, TData>, \"rootId\"> {\n // The DiffOptions interface is currently just an alias for\n // ReadOptions, though DiffOptions used to be responsible for\n // declaring the returnPartialData option.\n }\n\n export interface WatchOptions<\n TData = unknown,\n TVariables = OperationVariables,\n > extends DiffOptions<TData, TVariables> {\n watcher?: object;\n immediate?: boolean;\n callback: WatchCallback<TData>;\n lastDiff?: DiffResult<TData>;\n }\n\n export interface EvictOptions {\n id?: string;\n fieldName?: string;\n args?: Record<string, any>;\n broadcast?: boolean;\n }\n\n // Although you can call cache.reset() without options, its behavior can be\n // configured by passing a Cache.ResetOptions object.\n export interface ResetOptions {\n discardWatches?: boolean;\n }\n\n export interface ModifyOptions<\n Entity extends Record<string, any> = Record<string, any>,\n > {\n id?: string;\n fields: Modifiers<Entity> | AllFieldsModifier<Entity>;\n optimistic?: boolean;\n broadcast?: boolean;\n }\n\n export interface BatchOptions<\n TCache extends ApolloCache,\n TUpdateResult = void,\n > {\n // Same as the first parameter of performTransaction, except the cache\n // argument will have the subclass type rather than ApolloCache.\n update(cache: TCache): TUpdateResult;\n\n // Passing a string for this option creates a new optimistic layer, with the\n // given string as its layer.id, just like passing a string for the\n // optimisticId parameter of performTransaction. Passing true is the same as\n // passing undefined to performTransaction (running the batch operation\n // against the current top layer of the cache), and passing false is the\n // same as passing null (running the operation against root/non-optimistic\n // cache data).\n optimistic?: string | boolean;\n\n // If you specify the ID of an optimistic layer using this option, that\n // layer will be removed as part of the batch transaction, triggering at\n // most one broadcast for both the transaction and the removal of the layer.\n // Note: this option is needed because calling cache.removeOptimistic during\n // the transaction function may not be not safe, since any modifications to\n // cache layers may be discarded after the transaction finishes.\n removeOptimistic?: string;\n\n // If you want to find out which watched queries were invalidated during\n // this batch operation, pass this optional callback function. Returning\n // false from the callback will prevent broadcasting this result.\n onWatchUpdated?: (\n this: TCache,\n watch: Cache.WatchOptions,\n diff: Cache.DiffResult<any>,\n lastDiff?: Cache.DiffResult<any> | undefined\n ) => any;\n }\n\n export import DiffResult = DataProxy.DiffResult;\n export import ReadQueryOptions = DataProxy.ReadQueryOptions;\n export import ReadFragmentOptions = DataProxy.ReadFragmentOptions;\n export import WriteQueryOptions = DataProxy.WriteQueryOptions;\n export import WriteFragmentOptions = DataProxy.WriteFragmentOptions;\n export import UpdateQueryOptions = DataProxy.UpdateQueryOptions;\n export import UpdateFragmentOptions = DataProxy.UpdateFragmentOptions;\n export import Fragment = DataProxy.Fragment;\n}\n"],"names":[],"mappings":";;;AAQA,CAAA,CAAA,EAAiB,CAAjB,CAAA,CAAA,CAAA,CAAsB;AAAtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAiB,CAAjB,CAAA,CAAA,CAAA,CAAsB,EAAtB;AA0GA,CAAC,CAAD,CA1GiB,CA0GjB,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EA1GiB,CA0GjB,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA;"}