@apollo/client 3.13.4 → 4.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1910) hide show
  1. package/.changeset/brave-radios-wait.md +5 -0
  2. package/.changeset/bright-ads-share.md +5 -0
  3. package/.changeset/calm-frogs-remain.md +7 -0
  4. package/.changeset/calm-seals-relate.md +5 -0
  5. package/.changeset/chatty-planes-grin.md +5 -0
  6. package/.changeset/clever-zebras-mate.md +5 -0
  7. package/.changeset/curvy-pianos-count.md +5 -0
  8. package/.changeset/dirty-trees-pump.md +5 -0
  9. package/.changeset/empty-rabbits-move.md +5 -0
  10. package/.changeset/fluffy-shoes-applaud.md +5 -0
  11. package/.changeset/forty-hairs-occur.md +5 -0
  12. package/.changeset/fresh-moose-hope.md +5 -0
  13. package/.changeset/good-dolphins-peel.md +113 -0
  14. package/.changeset/healthy-apes-sneeze.md +5 -0
  15. package/.changeset/hot-cycles-notice.md +5 -0
  16. package/.changeset/itchy-drinks-refuse.md +5 -0
  17. package/.changeset/itchy-roses-accept.md +5 -0
  18. package/.changeset/kind-fishes-develop.md +17 -0
  19. package/.changeset/late-trainers-peel.md +7 -0
  20. package/.changeset/light-dolphins-taste.md +5 -0
  21. package/.changeset/light-sloths-end.md +16 -0
  22. package/.changeset/lucky-hats-push.md +7 -0
  23. package/.changeset/many-papayas-hide.md +5 -0
  24. package/.changeset/metal-needles-search.md +5 -0
  25. package/.changeset/mighty-penguins-wink.md +16 -0
  26. package/.changeset/modern-feet-do.md +5 -0
  27. package/.changeset/moody-lobsters-listen.md +7 -0
  28. package/.changeset/nice-donkeys-reflect.md +5 -0
  29. package/.changeset/nice-waves-work.md +7 -0
  30. package/.changeset/polite-bees-care.md +26 -0
  31. package/.changeset/popular-games-sleep.md +5 -0
  32. package/.changeset/pre.json +66 -0
  33. package/.changeset/purple-lions-cough.md +5 -0
  34. package/.changeset/real-gorillas-move.md +21 -0
  35. package/.changeset/rich-eagles-cross.md +5 -0
  36. package/.changeset/rich-kids-carry.md +9 -0
  37. package/.changeset/rude-fans-study.md +5 -0
  38. package/.changeset/seven-foxes-melt.md +5 -0
  39. package/.changeset/shiny-carrots-invent.md +5 -0
  40. package/.changeset/short-jokes-jam.md +27 -0
  41. package/.changeset/silly-knives-exist.md +5 -0
  42. package/.changeset/slow-ravens-explain.md +19 -0
  43. package/.changeset/small-cycles-rescue.md +5 -0
  44. package/.changeset/small-kids-film.md +14 -0
  45. package/.changeset/smart-rats-explode.md +5 -0
  46. package/.changeset/smooth-coins-collect.md +5 -0
  47. package/.changeset/smooth-pens-reply.md +7 -0
  48. package/.changeset/soft-mails-clean.md +5 -0
  49. package/.changeset/sour-pillows-guess.md +7 -0
  50. package/.changeset/strange-seahorses-impress.md +17 -0
  51. package/.changeset/tall-cups-suffer.md +13 -0
  52. package/.changeset/tidy-squids-poke.md +12 -0
  53. package/.changeset/tough-taxis-smoke.md +7 -0
  54. package/.changeset/tough-tips-drop.md +15 -0
  55. package/.changeset/twenty-snakes-sort.md +7 -0
  56. package/.changeset/unlucky-sheep-change.md +5 -0
  57. package/.changeset/yellow-cats-judge.md +13 -0
  58. package/.changeset/young-turtles-explode.md +5 -0
  59. package/CHANGELOG.md +418 -0
  60. package/__cjs/cache/core/cache.cjs +208 -0
  61. package/__cjs/cache/core/cache.cjs.map +1 -0
  62. package/__cjs/cache/core/cache.d.cts +137 -0
  63. package/__cjs/cache/core/types/Cache.cjs +7 -0
  64. package/__cjs/cache/core/types/Cache.cjs.map +1 -0
  65. package/__cjs/cache/core/types/Cache.d.cts +63 -0
  66. package/__cjs/cache/core/types/DataProxy.cjs +3 -0
  67. package/__cjs/cache/core/types/DataProxy.cjs.map +1 -0
  68. package/__cjs/cache/core/types/DataProxy.d.cts +155 -0
  69. package/__cjs/cache/core/types/common.cjs +32 -0
  70. package/__cjs/cache/core/types/common.cjs.map +1 -0
  71. package/__cjs/cache/core/types/common.d.cts +64 -0
  72. package/__cjs/cache/index.cjs +26 -0
  73. package/__cjs/cache/index.cjs.map +1 -0
  74. package/__cjs/cache/index.d.cts +19 -0
  75. package/__cjs/cache/inmemory/entityStore.cjs +678 -0
  76. package/__cjs/cache/inmemory/entityStore.cjs.map +1 -0
  77. package/__cjs/cache/inmemory/entityStore.d.cts +92 -0
  78. package/__cjs/cache/inmemory/fixPolyfills.cjs +10 -0
  79. package/__cjs/cache/inmemory/fixPolyfills.cjs.map +1 -0
  80. package/__cjs/cache/inmemory/fixPolyfills.d.cts +2 -0
  81. package/__cjs/cache/inmemory/fixPolyfills.native.cjs +53 -0
  82. package/__cjs/cache/inmemory/fixPolyfills.native.cjs.map +1 -0
  83. package/__cjs/cache/inmemory/fixPolyfills.native.d.cts +2 -0
  84. package/__cjs/cache/inmemory/fragmentRegistry.cjs +128 -0
  85. package/__cjs/cache/inmemory/fragmentRegistry.cjs.map +1 -0
  86. package/__cjs/cache/inmemory/fragmentRegistry.d.cts +9 -0
  87. package/__cjs/cache/inmemory/helpers.cjs +101 -0
  88. package/__cjs/cache/inmemory/helpers.cjs.map +1 -0
  89. package/__cjs/cache/inmemory/helpers.d.cts +22 -0
  90. package/__cjs/cache/inmemory/inMemoryCache.cjs +470 -0
  91. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -0
  92. package/__cjs/cache/inmemory/inMemoryCache.d.cts +66 -0
  93. package/__cjs/cache/inmemory/key-extractor.cjs +192 -0
  94. package/__cjs/cache/inmemory/key-extractor.cjs.map +1 -0
  95. package/__cjs/cache/inmemory/key-extractor.d.cts +9 -0
  96. package/__cjs/cache/inmemory/object-canon.cjs +180 -0
  97. package/__cjs/cache/inmemory/object-canon.cjs.map +1 -0
  98. package/__cjs/cache/inmemory/object-canon.d.cts +12 -0
  99. package/__cjs/cache/inmemory/policies.cjs +608 -0
  100. package/__cjs/cache/inmemory/policies.cjs.map +1 -0
  101. package/__cjs/cache/inmemory/policies.d.cts +97 -0
  102. package/__cjs/cache/inmemory/reactiveVars.cjs +89 -0
  103. package/__cjs/cache/inmemory/reactiveVars.cjs.map +1 -0
  104. package/__cjs/cache/inmemory/reactiveVars.d.cts +19 -0
  105. package/__cjs/cache/inmemory/readFromStore.cjs +335 -0
  106. package/__cjs/cache/inmemory/readFromStore.cjs.map +1 -0
  107. package/__cjs/cache/inmemory/readFromStore.d.cts +32 -0
  108. package/__cjs/cache/inmemory/types.cjs +3 -0
  109. package/__cjs/cache/inmemory/types.cjs.map +1 -0
  110. package/__cjs/cache/inmemory/types.d.cts +125 -0
  111. package/__cjs/cache/inmemory/writeToStore.cjs +551 -0
  112. package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -0
  113. package/__cjs/cache/inmemory/writeToStore.d.cts +37 -0
  114. package/__cjs/config/jest/areCombinedGraphQLErrorsEqual.cjs +19 -0
  115. package/__cjs/config/jest/areCombinedGraphQLErrorsEqual.cjs.map +1 -0
  116. package/__cjs/config/jest/areCombinedGraphQLErrorsEqual.d.cts +3 -0
  117. package/__cjs/config/jest/areCombinedProtocolErrorsEqual.cjs +19 -0
  118. package/__cjs/config/jest/areCombinedProtocolErrorsEqual.cjs.map +1 -0
  119. package/__cjs/config/jest/areCombinedProtocolErrorsEqual.d.cts +3 -0
  120. package/__cjs/config/jest/areGraphQlErrorsEqual.cjs +11 -0
  121. package/__cjs/config/jest/areGraphQlErrorsEqual.cjs.map +1 -0
  122. package/__cjs/config/jest/areGraphQlErrorsEqual.d.cts +3 -0
  123. package/__cjs/config/jest/areMissingFieldErrorsEqual.cjs +21 -0
  124. package/__cjs/config/jest/areMissingFieldErrorsEqual.cjs.map +1 -0
  125. package/__cjs/config/jest/areMissingFieldErrorsEqual.d.cts +3 -0
  126. package/__cjs/config/jest/resolver.cjs +21 -0
  127. package/__cjs/config/jest/resolver.cjs.map +1 -0
  128. package/__cjs/config/jest/resolver.d.cts +3 -0
  129. package/__cjs/config/jest/setup.cjs +48 -0
  130. package/__cjs/config/jest/setup.cjs.map +1 -0
  131. package/__cjs/config/jest/setup.d.cts +3 -0
  132. package/__cjs/core/ApolloClient.cjs +612 -0
  133. package/__cjs/core/ApolloClient.cjs.map +1 -0
  134. package/__cjs/core/ApolloClient.d.cts +478 -0
  135. package/__cjs/core/LocalState.cjs +333 -0
  136. package/__cjs/core/LocalState.cjs.map +1 -0
  137. package/__cjs/core/LocalState.d.cts +53 -0
  138. package/__cjs/core/ObservableQuery.cjs +862 -0
  139. package/__cjs/core/ObservableQuery.cjs.map +1 -0
  140. package/__cjs/core/ObservableQuery.d.cts +131 -0
  141. package/__cjs/core/QueryInfo.cjs +380 -0
  142. package/__cjs/core/QueryInfo.cjs.map +1 -0
  143. package/__cjs/core/QueryInfo.d.cts +52 -0
  144. package/__cjs/core/QueryManager.cjs +1188 -0
  145. package/__cjs/core/QueryManager.cjs.map +1 -0
  146. package/__cjs/core/QueryManager.d.cts +140 -0
  147. package/__cjs/core/equalByQuery.cjs +88 -0
  148. package/__cjs/core/equalByQuery.cjs.map +1 -0
  149. package/__cjs/core/equalByQuery.d.cts +4 -0
  150. package/__cjs/core/index.cjs +58 -0
  151. package/__cjs/core/index.cjs.map +1 -0
  152. package/__cjs/core/index.d.cts +21 -0
  153. package/__cjs/core/networkStatus.cjs +61 -0
  154. package/__cjs/core/networkStatus.cjs.map +1 -0
  155. package/__cjs/core/networkStatus.d.cts +51 -0
  156. package/__cjs/core/types.cjs +3 -0
  157. package/__cjs/core/types.cjs.map +1 -0
  158. package/__cjs/core/types.d.cts +120 -0
  159. package/__cjs/core/watchQueryOptions.cjs +3 -0
  160. package/__cjs/core/watchQueryOptions.cjs.map +1 -0
  161. package/__cjs/core/watchQueryOptions.d.cts +472 -0
  162. package/__cjs/dev/index.cjs +12 -0
  163. package/__cjs/dev/index.cjs.map +1 -0
  164. package/__cjs/dev/index.d.cts +6 -0
  165. package/__cjs/dev/loadDevMessages.cjs +9 -0
  166. package/__cjs/dev/loadDevMessages.cjs.map +1 -0
  167. package/__cjs/dev/loadDevMessages.d.cts +2 -0
  168. package/__cjs/dev/loadErrorMessageHandler.cjs +28 -0
  169. package/__cjs/dev/loadErrorMessageHandler.cjs.map +1 -0
  170. package/__cjs/dev/loadErrorMessageHandler.d.cts +8 -0
  171. package/__cjs/dev/loadErrorMessages.cjs +9 -0
  172. package/__cjs/dev/loadErrorMessages.cjs.map +1 -0
  173. package/__cjs/dev/loadErrorMessages.d.cts +2 -0
  174. package/__cjs/dev/setErrorMessageHandler.cjs +13 -0
  175. package/__cjs/dev/setErrorMessageHandler.cjs.map +1 -0
  176. package/__cjs/dev/setErrorMessageHandler.d.cts +34 -0
  177. package/__cjs/dev/symbol.cjs +7 -0
  178. package/__cjs/dev/symbol.cjs.map +1 -0
  179. package/__cjs/dev/symbol.d.cts +10 -0
  180. package/__cjs/errors/CombinedGraphQLErrors.cjs +30 -0
  181. package/__cjs/errors/CombinedGraphQLErrors.cjs.map +1 -0
  182. package/__cjs/errors/CombinedGraphQLErrors.d.cts +13 -0
  183. package/__cjs/errors/CombinedProtocolErrors.cjs +24 -0
  184. package/__cjs/errors/CombinedProtocolErrors.cjs.map +1 -0
  185. package/__cjs/errors/CombinedProtocolErrors.d.cts +11 -0
  186. package/__cjs/errors/ServerError.cjs +31 -0
  187. package/__cjs/errors/ServerError.cjs.map +1 -0
  188. package/__cjs/errors/ServerError.d.cts +25 -0
  189. package/__cjs/errors/ServerParseError.cjs +32 -0
  190. package/__cjs/errors/ServerParseError.cjs.map +1 -0
  191. package/__cjs/errors/ServerParseError.d.cts +24 -0
  192. package/__cjs/errors/UnconventionalError.cjs +17 -0
  193. package/__cjs/errors/UnconventionalError.cjs.map +1 -0
  194. package/__cjs/errors/UnconventionalError.d.cts +9 -0
  195. package/__cjs/errors/index.cjs +26 -0
  196. package/__cjs/errors/index.cjs.map +1 -0
  197. package/__cjs/errors/index.d.cts +15 -0
  198. package/__cjs/index.cjs +8 -0
  199. package/__cjs/index.cjs.map +1 -0
  200. package/__cjs/index.d.cts +3 -0
  201. package/__cjs/invariantErrorCodes.cjs +625 -0
  202. package/__cjs/invariantErrorCodes.cjs.map +1 -0
  203. package/__cjs/invariantErrorCodes.d.cts +13 -0
  204. package/__cjs/link/batch/batchLink.cjs +33 -0
  205. package/__cjs/link/batch/batchLink.cjs.map +1 -0
  206. package/__cjs/link/batch/batchLink.d.cts +42 -0
  207. package/__cjs/link/batch/batching.cjs +156 -0
  208. package/__cjs/link/batch/batching.cjs.map +1 -0
  209. package/__cjs/link/batch/batching.d.cts +27 -0
  210. package/__cjs/link/batch/index.cjs +5 -0
  211. package/__cjs/link/batch/index.cjs.map +1 -0
  212. package/__cjs/link/batch/index.d.cts +2 -0
  213. package/__cjs/link/batch-http/batchHttpLink.cjs +190 -0
  214. package/__cjs/link/batch-http/batchHttpLink.cjs.map +1 -0
  215. package/__cjs/link/batch-http/batchHttpLink.d.cts +21 -0
  216. package/__cjs/link/batch-http/index.cjs +5 -0
  217. package/__cjs/link/batch-http/index.cjs.map +1 -0
  218. package/__cjs/link/batch-http/index.d.cts +2 -0
  219. package/__cjs/link/context/index.cjs +34 -0
  220. package/__cjs/link/context/index.cjs.map +1 -0
  221. package/__cjs/link/context/index.d.cts +6 -0
  222. package/__cjs/link/core/ApolloLink.cjs +121 -0
  223. package/__cjs/link/core/ApolloLink.cjs.map +1 -0
  224. package/__cjs/link/core/ApolloLink.d.cts +31 -0
  225. package/__cjs/link/core/concat.cjs +6 -0
  226. package/__cjs/link/core/concat.cjs.map +1 -0
  227. package/__cjs/link/core/concat.d.cts +3 -0
  228. package/__cjs/link/core/empty.cjs +6 -0
  229. package/__cjs/link/core/empty.cjs.map +1 -0
  230. package/__cjs/link/core/empty.d.cts +3 -0
  231. package/__cjs/link/core/execute.cjs +6 -0
  232. package/__cjs/link/core/execute.cjs.map +1 -0
  233. package/__cjs/link/core/execute.d.cts +3 -0
  234. package/__cjs/link/core/from.cjs +6 -0
  235. package/__cjs/link/core/from.cjs.map +1 -0
  236. package/__cjs/link/core/from.d.cts +3 -0
  237. package/__cjs/link/core/index.cjs +16 -0
  238. package/__cjs/link/core/index.cjs.map +1 -0
  239. package/__cjs/link/core/index.d.cts +8 -0
  240. package/__cjs/link/core/split.cjs +6 -0
  241. package/__cjs/link/core/split.cjs.map +1 -0
  242. package/__cjs/link/core/split.d.cts +3 -0
  243. package/__cjs/link/core/types.cjs +3 -0
  244. package/__cjs/link/core/types.cjs.map +1 -0
  245. package/__cjs/link/core/types.d.cts +61 -0
  246. package/__cjs/link/error/index.cjs +97 -0
  247. package/__cjs/link/error/index.cjs.map +1 -0
  248. package/__cjs/link/error/index.d.cts +41 -0
  249. package/__cjs/link/http/HttpLink.cjs +14 -0
  250. package/__cjs/link/http/HttpLink.cjs.map +1 -0
  251. package/__cjs/link/http/HttpLink.d.cts +7 -0
  252. package/__cjs/link/http/checkFetcher.cjs +9 -0
  253. package/__cjs/link/http/checkFetcher.cjs.map +1 -0
  254. package/__cjs/link/http/checkFetcher.d.cts +2 -0
  255. package/__cjs/link/http/createHttpLink.cjs +158 -0
  256. package/__cjs/link/http/createHttpLink.cjs.map +1 -0
  257. package/__cjs/link/http/createHttpLink.d.cts +3 -0
  258. package/__cjs/link/http/createSignalIfSupported.cjs +17 -0
  259. package/__cjs/link/http/createSignalIfSupported.cjs.map +1 -0
  260. package/__cjs/link/http/createSignalIfSupported.d.cts +13 -0
  261. package/__cjs/link/http/index.cjs +25 -0
  262. package/__cjs/link/http/index.cjs.map +1 -0
  263. package/__cjs/link/http/index.d.cts +12 -0
  264. package/__cjs/link/http/iterators/async.cjs +19 -0
  265. package/__cjs/link/http/iterators/async.cjs.map +1 -0
  266. package/__cjs/link/http/iterators/async.d.cts +6 -0
  267. package/__cjs/link/http/iterators/nodeStream.cjs +75 -0
  268. package/__cjs/link/http/iterators/nodeStream.cjs.map +1 -0
  269. package/__cjs/link/http/iterators/nodeStream.d.cts +7 -0
  270. package/__cjs/link/http/iterators/promise.cjs +32 -0
  271. package/__cjs/link/http/iterators/promise.cjs.map +1 -0
  272. package/__cjs/link/http/iterators/promise.d.cts +6 -0
  273. package/__cjs/link/http/iterators/reader.cjs +19 -0
  274. package/__cjs/link/http/iterators/reader.cjs.map +1 -0
  275. package/__cjs/link/http/iterators/reader.d.cts +6 -0
  276. package/__cjs/link/http/parseAndCheckHttpResponse.cjs +186 -0
  277. package/__cjs/link/http/parseAndCheckHttpResponse.cjs.map +1 -0
  278. package/__cjs/link/http/parseAndCheckHttpResponse.d.cts +6 -0
  279. package/__cjs/link/http/responseIterator.cjs +50 -0
  280. package/__cjs/link/http/responseIterator.cjs.map +1 -0
  281. package/__cjs/link/http/responseIterator.d.cts +7 -0
  282. package/__cjs/link/http/rewriteURIForGET.cjs +56 -0
  283. package/__cjs/link/http/rewriteURIForGET.cjs.map +1 -0
  284. package/__cjs/link/http/rewriteURIForGET.d.cts +9 -0
  285. package/__cjs/link/http/selectHttpOptionsAndBody.cjs +108 -0
  286. package/__cjs/link/http/selectHttpOptionsAndBody.cjs.map +1 -0
  287. package/__cjs/link/http/selectHttpOptionsAndBody.d.cts +104 -0
  288. package/__cjs/link/http/selectURI.cjs +18 -0
  289. package/__cjs/link/http/selectURI.cjs.map +1 -0
  290. package/__cjs/link/http/selectURI.d.cts +3 -0
  291. package/__cjs/link/http/serializeFetchParameter.cjs +18 -0
  292. package/__cjs/link/http/serializeFetchParameter.cjs.map +1 -0
  293. package/__cjs/link/http/serializeFetchParameter.d.cts +6 -0
  294. package/__cjs/link/persisted-queries/index.cjs +208 -0
  295. package/__cjs/link/persisted-queries/index.cjs.map +1 -0
  296. package/__cjs/link/persisted-queries/index.d.cts +37 -0
  297. package/__cjs/link/remove-typename/index.cjs +7 -0
  298. package/__cjs/link/remove-typename/index.cjs.map +1 -0
  299. package/__cjs/link/remove-typename/index.d.cts +3 -0
  300. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs +95 -0
  301. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs.map +1 -0
  302. package/__cjs/link/remove-typename/removeTypenameFromVariables.d.cts +10 -0
  303. package/__cjs/link/retry/delayFunction.cjs +21 -0
  304. package/__cjs/link/retry/delayFunction.cjs.map +1 -0
  305. package/__cjs/link/retry/delayFunction.d.cts +40 -0
  306. package/__cjs/link/retry/index.cjs +5 -0
  307. package/__cjs/link/retry/index.cjs.map +1 -0
  308. package/__cjs/link/retry/index.d.cts +2 -0
  309. package/__cjs/link/retry/retryFunction.cjs +12 -0
  310. package/__cjs/link/retry/retryFunction.cjs.map +1 -0
  311. package/__cjs/link/retry/retryFunction.d.cts +30 -0
  312. package/__cjs/link/retry/retryLink.cjs +97 -0
  313. package/__cjs/link/retry/retryLink.cjs.map +1 -0
  314. package/__cjs/link/retry/retryLink.d.cts +24 -0
  315. package/__cjs/link/schema/index.cjs +55 -0
  316. package/__cjs/link/schema/index.cjs.map +1 -0
  317. package/__cjs/link/schema/index.d.cts +36 -0
  318. package/__cjs/link/subscriptions/index.cjs +75 -0
  319. package/__cjs/link/subscriptions/index.cjs.map +1 -0
  320. package/__cjs/link/subscriptions/index.d.cts +10 -0
  321. package/__cjs/link/utils/createOperation.cjs +25 -0
  322. package/__cjs/link/utils/createOperation.cjs.map +1 -0
  323. package/__cjs/link/utils/createOperation.d.cts +3 -0
  324. package/__cjs/link/utils/filterOperationVariables.cjs +25 -0
  325. package/__cjs/link/utils/filterOperationVariables.cjs.map +1 -0
  326. package/__cjs/link/utils/filterOperationVariables.d.cts +5 -0
  327. package/__cjs/link/utils/index.cjs +12 -0
  328. package/__cjs/link/utils/index.cjs.map +1 -0
  329. package/__cjs/link/utils/index.d.cts +5 -0
  330. package/__cjs/link/utils/transformOperation.cjs +21 -0
  331. package/__cjs/link/utils/transformOperation.cjs.map +1 -0
  332. package/__cjs/link/utils/transformOperation.d.cts +3 -0
  333. package/__cjs/link/utils/validateOperation.cjs +20 -0
  334. package/__cjs/link/utils/validateOperation.cjs.map +1 -0
  335. package/__cjs/link/utils/validateOperation.d.cts +3 -0
  336. package/__cjs/link/ws/index.cjs +22 -0
  337. package/__cjs/link/ws/index.cjs.map +1 -0
  338. package/__cjs/link/ws/index.d.cts +31 -0
  339. package/__cjs/masking/__benches__/types.bench.cjs +223 -0
  340. package/__cjs/masking/__benches__/types.bench.cjs.map +1 -0
  341. package/__cjs/masking/__benches__/types.bench.d.cts +2 -0
  342. package/__cjs/masking/index.cjs +10 -0
  343. package/__cjs/masking/index.cjs.map +1 -0
  344. package/__cjs/masking/index.d.cts +5 -0
  345. package/__cjs/masking/internal/types.cjs +3 -0
  346. package/__cjs/masking/internal/types.cjs.map +1 -0
  347. package/__cjs/masking/internal/types.d.cts +122 -0
  348. package/__cjs/masking/maskDefinition.cjs +139 -0
  349. package/__cjs/masking/maskDefinition.cjs.map +1 -0
  350. package/__cjs/masking/maskDefinition.d.cts +14 -0
  351. package/__cjs/masking/maskFragment.cjs +46 -0
  352. package/__cjs/masking/maskFragment.cjs.map +1 -0
  353. package/__cjs/masking/maskFragment.d.cts +4 -0
  354. package/__cjs/masking/maskOperation.cjs +32 -0
  355. package/__cjs/masking/maskOperation.cjs.map +1 -0
  356. package/__cjs/masking/maskOperation.d.cts +4 -0
  357. package/__cjs/masking/types.cjs +3 -0
  358. package/__cjs/masking/types.cjs.map +1 -0
  359. package/__cjs/masking/types.d.cts +46 -0
  360. package/__cjs/masking/utils.cjs +22 -0
  361. package/__cjs/masking/utils.cjs.map +1 -0
  362. package/__cjs/masking/utils.d.cts +9 -0
  363. package/__cjs/react/context/ApolloConsumer.cjs +16 -0
  364. package/__cjs/react/context/ApolloConsumer.cjs.map +1 -0
  365. package/__cjs/react/context/ApolloConsumer.d.cts +7 -0
  366. package/__cjs/react/context/ApolloContext.cjs +26 -0
  367. package/__cjs/react/context/ApolloContext.cjs.map +1 -0
  368. package/__cjs/react/context/ApolloContext.d.cts +9 -0
  369. package/__cjs/react/context/ApolloProvider.cjs +21 -0
  370. package/__cjs/react/context/ApolloProvider.cjs.map +1 -0
  371. package/__cjs/react/context/ApolloProvider.d.cts +8 -0
  372. package/__cjs/react/context/index.cjs +10 -0
  373. package/__cjs/react/context/index.cjs.map +1 -0
  374. package/__cjs/react/context/index.d.cts +7 -0
  375. package/__cjs/react/hooks/constants.cjs +5 -0
  376. package/__cjs/react/hooks/constants.cjs.map +1 -0
  377. package/__cjs/react/hooks/constants.d.cts +3 -0
  378. package/__cjs/react/hooks/index.cjs +27 -0
  379. package/__cjs/react/hooks/index.cjs.map +1 -0
  380. package/__cjs/react/hooks/index.d.cts +22 -0
  381. package/__cjs/react/hooks/internal/__use.cjs +26 -0
  382. package/__cjs/react/hooks/internal/__use.cjs.map +1 -0
  383. package/__cjs/react/hooks/internal/__use.d.cts +2 -0
  384. package/__cjs/react/hooks/internal/index.cjs +13 -0
  385. package/__cjs/react/hooks/internal/index.cjs.map +1 -0
  386. package/__cjs/react/hooks/internal/index.d.cts +5 -0
  387. package/__cjs/react/hooks/internal/useDeepMemo.cjs +15 -0
  388. package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -0
  389. package/__cjs/react/hooks/internal/useDeepMemo.d.cts +3 -0
  390. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.cjs +13 -0
  391. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.cjs.map +1 -0
  392. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.d.cts +3 -0
  393. package/__cjs/react/hooks/internal/useRenderGuard.cjs +46 -0
  394. package/__cjs/react/hooks/internal/useRenderGuard.cjs.map +1 -0
  395. package/__cjs/react/hooks/internal/useRenderGuard.d.cts +2 -0
  396. package/__cjs/react/hooks/internal/wrapHook.cjs +46 -0
  397. package/__cjs/react/hooks/internal/wrapHook.cjs.map +1 -0
  398. package/__cjs/react/hooks/internal/wrapHook.d.cts +60 -0
  399. package/__cjs/react/hooks/useApolloClient.cjs +29 -0
  400. package/__cjs/react/hooks/useApolloClient.cjs.map +1 -0
  401. package/__cjs/react/hooks/useApolloClient.d.cts +18 -0
  402. package/__cjs/react/hooks/useBackgroundQuery.cjs +83 -0
  403. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -0
  404. package/__cjs/react/hooks/useBackgroundQuery.d.cts +76 -0
  405. package/__cjs/react/hooks/useFragment.cjs +100 -0
  406. package/__cjs/react/hooks/useFragment.cjs.map +1 -0
  407. package/__cjs/react/hooks/useFragment.d.cts +29 -0
  408. package/__cjs/react/hooks/useLazyQuery.cjs +184 -0
  409. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -0
  410. package/__cjs/react/hooks/useLazyQuery.d.cts +316 -0
  411. package/__cjs/react/hooks/useLoadableQuery.cjs +73 -0
  412. package/__cjs/react/hooks/useLoadableQuery.cjs.map +1 -0
  413. package/__cjs/react/hooks/useLoadableQuery.d.cts +104 -0
  414. package/__cjs/react/hooks/useMutation.cjs +165 -0
  415. package/__cjs/react/hooks/useMutation.cjs.map +1 -0
  416. package/__cjs/react/hooks/useMutation.d.cts +53 -0
  417. package/__cjs/react/hooks/useQuery.cjs +351 -0
  418. package/__cjs/react/hooks/useQuery.cjs.map +1 -0
  419. package/__cjs/react/hooks/useQuery.d.cts +39 -0
  420. package/__cjs/react/hooks/useQueryRefHandlers.cjs +72 -0
  421. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -0
  422. package/__cjs/react/hooks/useQueryRefHandlers.d.cts +43 -0
  423. package/__cjs/react/hooks/useReactiveVar.cjs +37 -0
  424. package/__cjs/react/hooks/useReactiveVar.cjs.map +1 -0
  425. package/__cjs/react/hooks/useReactiveVar.d.cts +20 -0
  426. package/__cjs/react/hooks/useReadQuery.cjs +45 -0
  427. package/__cjs/react/hooks/useReadQuery.cjs.map +1 -0
  428. package/__cjs/react/hooks/useReadQuery.d.cts +29 -0
  429. package/__cjs/react/hooks/useSubscription.cjs +282 -0
  430. package/__cjs/react/hooks/useSubscription.cjs.map +1 -0
  431. package/__cjs/react/hooks/useSubscription.d.cts +87 -0
  432. package/__cjs/react/hooks/useSuspenseFragment.cjs +50 -0
  433. package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -0
  434. package/__cjs/react/hooks/useSuspenseFragment.d.cts +45 -0
  435. package/__cjs/react/hooks/useSuspenseQuery.cjs +146 -0
  436. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -0
  437. package/__cjs/react/hooks/useSuspenseQuery.d.cts +54 -0
  438. package/__cjs/react/hooks/useSyncExternalStore.cjs +115 -0
  439. package/__cjs/react/hooks/useSyncExternalStore.cjs.map +1 -0
  440. package/__cjs/react/hooks/useSyncExternalStore.d.cts +4 -0
  441. package/__cjs/react/index.cjs +16 -0
  442. package/__cjs/react/index.cjs.map +1 -0
  443. package/__cjs/react/index.d.cts +9 -0
  444. package/__cjs/react/internal/cache/FragmentReference.cjs +132 -0
  445. package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -0
  446. package/__cjs/react/internal/cache/FragmentReference.d.cts +38 -0
  447. package/__cjs/react/internal/cache/QueryReference.cjs +320 -0
  448. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -0
  449. package/__cjs/react/internal/cache/QueryReference.d.cts +165 -0
  450. package/__cjs/react/internal/cache/SuspenseCache.cjs +44 -0
  451. package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -0
  452. package/__cjs/react/internal/cache/SuspenseCache.d.cts +29 -0
  453. package/__cjs/react/internal/cache/getSuspenseCache.cjs +12 -0
  454. package/__cjs/react/internal/cache/getSuspenseCache.cjs.map +1 -0
  455. package/__cjs/react/internal/cache/getSuspenseCache.d.cts +16 -0
  456. package/__cjs/react/internal/cache/types.cjs +3 -0
  457. package/__cjs/react/internal/cache/types.cjs.map +1 -0
  458. package/__cjs/react/internal/cache/types.d.cts +18 -0
  459. package/__cjs/react/internal/index.cjs +13 -0
  460. package/__cjs/react/internal/index.cjs.map +1 -0
  461. package/__cjs/react/internal/index.d.cts +7 -0
  462. package/__cjs/react/parser/index.cjs +115 -0
  463. package/__cjs/react/parser/index.cjs.map +1 -0
  464. package/__cjs/react/parser/index.d.cts +18 -0
  465. package/__cjs/react/query-preloader/createQueryPreloader.cjs +38 -0
  466. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -0
  467. package/__cjs/react/query-preloader/createQueryPreloader.d.cts +248 -0
  468. package/__cjs/react/ssr/RenderPromises.cjs +104 -0
  469. package/__cjs/react/ssr/RenderPromises.cjs.map +1 -0
  470. package/__cjs/react/ssr/RenderPromises.d.cts +22 -0
  471. package/__cjs/react/ssr/getDataFromTree.cjs +49 -0
  472. package/__cjs/react/ssr/getDataFromTree.cjs.map +1 -0
  473. package/__cjs/react/ssr/getDataFromTree.d.cts +14 -0
  474. package/__cjs/react/ssr/index.cjs +11 -0
  475. package/__cjs/react/ssr/index.cjs.map +1 -0
  476. package/__cjs/react/ssr/index.d.cts +4 -0
  477. package/__cjs/react/ssr/renderToStringWithData.cjs +12 -0
  478. package/__cjs/react/ssr/renderToStringWithData.cjs.map +1 -0
  479. package/__cjs/react/ssr/renderToStringWithData.d.cts +3 -0
  480. package/__cjs/react/types/types.cjs +3 -0
  481. package/__cjs/react/types/types.cjs.map +1 -0
  482. package/__cjs/react/types/types.d.cts +689 -0
  483. package/__cjs/react/types/types.documentation.cjs +3 -0
  484. package/__cjs/react/types/types.documentation.cjs.map +1 -0
  485. package/__cjs/react/types/types.documentation.d.cts +550 -0
  486. package/__cjs/testing/core/index.cjs +17 -0
  487. package/__cjs/testing/core/index.cjs.map +1 -0
  488. package/__cjs/testing/core/index.d.cts +7 -0
  489. package/__cjs/testing/core/mocking/mockClient.cjs +18 -0
  490. package/__cjs/testing/core/mocking/mockClient.cjs.map +1 -0
  491. package/__cjs/testing/core/mocking/mockClient.d.cts +5 -0
  492. package/__cjs/testing/core/mocking/mockLink.cjs +188 -0
  493. package/__cjs/testing/core/mocking/mockLink.cjs.map +1 -0
  494. package/__cjs/testing/core/mocking/mockLink.d.cts +38 -0
  495. package/__cjs/testing/core/mocking/mockSubscriptionLink.cjs +60 -0
  496. package/__cjs/testing/core/mocking/mockSubscriptionLink.cjs.map +1 -0
  497. package/__cjs/testing/core/mocking/mockSubscriptionLink.d.cts +22 -0
  498. package/__cjs/testing/core/wait.cjs +11 -0
  499. package/__cjs/testing/core/wait.cjs.map +1 -0
  500. package/__cjs/testing/core/wait.d.cts +3 -0
  501. package/__cjs/testing/core/withConsoleSpy.cjs +33 -0
  502. package/__cjs/testing/core/withConsoleSpy.cjs.map +1 -0
  503. package/__cjs/testing/core/withConsoleSpy.d.cts +7 -0
  504. package/__cjs/testing/experimental/createSchemaFetch.cjs +92 -0
  505. package/__cjs/testing/experimental/createSchemaFetch.cjs.map +1 -0
  506. package/__cjs/testing/experimental/createSchemaFetch.d.cts +43 -0
  507. package/__cjs/testing/experimental/createTestSchema.cjs +110 -0
  508. package/__cjs/testing/experimental/createTestSchema.cjs.map +1 -0
  509. package/__cjs/testing/experimental/createTestSchema.d.cts +57 -0
  510. package/__cjs/testing/experimental/graphql-tools/utils.cjs +177 -0
  511. package/__cjs/testing/experimental/graphql-tools/utils.cjs.map +1 -0
  512. package/__cjs/testing/experimental/graphql-tools/utils.d.cts +26 -0
  513. package/__cjs/testing/experimental/graphql-tools/utils.test.cjs +200 -0
  514. package/__cjs/testing/experimental/graphql-tools/utils.test.cjs.map +1 -0
  515. package/__cjs/testing/experimental/graphql-tools/utils.test.d.cts +2 -0
  516. package/__cjs/testing/experimental/index.cjs +8 -0
  517. package/__cjs/testing/experimental/index.cjs.map +1 -0
  518. package/__cjs/testing/experimental/index.d.cts +3 -0
  519. package/__cjs/testing/index.cjs +5 -0
  520. package/__cjs/testing/index.cjs.map +1 -0
  521. package/__cjs/testing/index.d.cts +2 -0
  522. package/__cjs/testing/internal/ObservableStream.cjs +98 -0
  523. package/__cjs/testing/internal/ObservableStream.cjs.map +1 -0
  524. package/__cjs/testing/internal/ObservableStream.d.cts +28 -0
  525. package/__cjs/testing/internal/disposables/enableFakeTimers.cjs +19 -0
  526. package/__cjs/testing/internal/disposables/enableFakeTimers.cjs.map +1 -0
  527. package/__cjs/testing/internal/disposables/enableFakeTimers.d.cts +7 -0
  528. package/__cjs/testing/internal/disposables/index.cjs +12 -0
  529. package/__cjs/testing/internal/disposables/index.cjs.map +1 -0
  530. package/__cjs/testing/internal/disposables/index.d.cts +5 -0
  531. package/__cjs/testing/internal/disposables/spyOnConsole.cjs +25 -0
  532. package/__cjs/testing/internal/disposables/spyOnConsole.cjs.map +1 -0
  533. package/__cjs/testing/internal/disposables/spyOnConsole.d.cts +9 -0
  534. package/__cjs/testing/internal/disposables/withCleanup.cjs +18 -0
  535. package/__cjs/testing/internal/disposables/withCleanup.cjs.map +1 -0
  536. package/__cjs/testing/internal/disposables/withCleanup.d.cts +3 -0
  537. package/__cjs/testing/internal/disposables/withProdMode.cjs +17 -0
  538. package/__cjs/testing/internal/disposables/withProdMode.cjs.map +1 -0
  539. package/__cjs/testing/internal/disposables/withProdMode.d.cts +4 -0
  540. package/__cjs/testing/internal/incremental.cjs +124 -0
  541. package/__cjs/testing/internal/incremental.cjs.map +1 -0
  542. package/__cjs/testing/internal/incremental.d.cts +15 -0
  543. package/__cjs/testing/internal/index.cjs +25 -0
  544. package/__cjs/testing/internal/index.cjs.map +1 -0
  545. package/__cjs/testing/internal/index.d.cts +10 -0
  546. package/__cjs/testing/internal/messageChannelPolyfill.cjs +18 -0
  547. package/__cjs/testing/internal/messageChannelPolyfill.cjs.map +1 -0
  548. package/__cjs/testing/internal/messageChannelPolyfill.d.cts +2 -0
  549. package/__cjs/testing/internal/renderHelpers.cjs +21 -0
  550. package/__cjs/testing/internal/renderHelpers.cjs.map +1 -0
  551. package/__cjs/testing/internal/renderHelpers.d.cts +14 -0
  552. package/__cjs/testing/internal/rtl/actAsync.cjs +18 -0
  553. package/__cjs/testing/internal/rtl/actAsync.cjs.map +1 -0
  554. package/__cjs/testing/internal/rtl/actAsync.d.cts +2 -0
  555. package/__cjs/testing/internal/rtl/renderAsync.cjs +15 -0
  556. package/__cjs/testing/internal/rtl/renderAsync.cjs.map +1 -0
  557. package/__cjs/testing/internal/rtl/renderAsync.d.cts +9 -0
  558. package/__cjs/testing/internal/rtl/renderHookAsync.cjs +37 -0
  559. package/__cjs/testing/internal/rtl/renderHookAsync.cjs.map +1 -0
  560. package/__cjs/testing/internal/rtl/renderHookAsync.d.cts +8 -0
  561. package/__cjs/testing/internal/scenarios/index.cjs +102 -0
  562. package/__cjs/testing/internal/scenarios/index.cjs.map +1 -0
  563. package/__cjs/testing/internal/scenarios/index.d.cts +74 -0
  564. package/__cjs/testing/matchers/index.cjs +40 -0
  565. package/__cjs/testing/matchers/index.cjs.map +1 -0
  566. package/__cjs/testing/matchers/index.d.cts +2 -0
  567. package/__cjs/testing/matchers/toBeDisposed.cjs +20 -0
  568. package/__cjs/testing/matchers/toBeDisposed.cjs.map +1 -0
  569. package/__cjs/testing/matchers/toBeDisposed.d.cts +3 -0
  570. package/__cjs/testing/matchers/toBeGarbageCollected.cjs +43 -0
  571. package/__cjs/testing/matchers/toBeGarbageCollected.cjs.map +1 -0
  572. package/__cjs/testing/matchers/toBeGarbageCollected.d.cts +8 -0
  573. package/__cjs/testing/matchers/toComplete.cjs +30 -0
  574. package/__cjs/testing/matchers/toComplete.cjs.map +1 -0
  575. package/__cjs/testing/matchers/toComplete.d.cts +4 -0
  576. package/__cjs/testing/matchers/toEmitAnything.cjs +33 -0
  577. package/__cjs/testing/matchers/toEmitAnything.cjs.map +1 -0
  578. package/__cjs/testing/matchers/toEmitAnything.d.cts +4 -0
  579. package/__cjs/testing/matchers/toEmitApolloQueryResult.cjs +40 -0
  580. package/__cjs/testing/matchers/toEmitApolloQueryResult.cjs.map +1 -0
  581. package/__cjs/testing/matchers/toEmitApolloQueryResult.d.cts +8 -0
  582. package/__cjs/testing/matchers/toEmitError.cjs +46 -0
  583. package/__cjs/testing/matchers/toEmitError.cjs.map +1 -0
  584. package/__cjs/testing/matchers/toEmitError.d.cts +7 -0
  585. package/__cjs/testing/matchers/toEmitFetchResult.cjs +40 -0
  586. package/__cjs/testing/matchers/toEmitFetchResult.cjs.map +1 -0
  587. package/__cjs/testing/matchers/toEmitFetchResult.d.cts +8 -0
  588. package/__cjs/testing/matchers/toEmitMatchedValue.cjs +40 -0
  589. package/__cjs/testing/matchers/toEmitMatchedValue.cjs.map +1 -0
  590. package/__cjs/testing/matchers/toEmitMatchedValue.d.cts +7 -0
  591. package/__cjs/testing/matchers/toEmitNext.cjs +30 -0
  592. package/__cjs/testing/matchers/toEmitNext.cjs.map +1 -0
  593. package/__cjs/testing/matchers/toEmitNext.d.cts +4 -0
  594. package/__cjs/testing/matchers/toEmitValue.cjs +41 -0
  595. package/__cjs/testing/matchers/toEmitValue.cjs.map +1 -0
  596. package/__cjs/testing/matchers/toEmitValue.d.cts +4 -0
  597. package/__cjs/testing/matchers/toEmitValueStrict.cjs +46 -0
  598. package/__cjs/testing/matchers/toEmitValueStrict.cjs.map +1 -0
  599. package/__cjs/testing/matchers/toEmitValueStrict.d.cts +7 -0
  600. package/__cjs/testing/matchers/toEqualApolloQueryResult.cjs +24 -0
  601. package/__cjs/testing/matchers/toEqualApolloQueryResult.cjs.map +1 -0
  602. package/__cjs/testing/matchers/toEqualApolloQueryResult.d.cts +6 -0
  603. package/__cjs/testing/matchers/toEqualFetchResult.cjs +24 -0
  604. package/__cjs/testing/matchers/toEqualFetchResult.cjs.map +1 -0
  605. package/__cjs/testing/matchers/toEqualFetchResult.d.cts +4 -0
  606. package/__cjs/testing/matchers/toEqualLazyQueryResult.cjs +40 -0
  607. package/__cjs/testing/matchers/toEqualLazyQueryResult.cjs.map +1 -0
  608. package/__cjs/testing/matchers/toEqualLazyQueryResult.d.cts +10 -0
  609. package/__cjs/testing/matchers/toEqualQueryResult.cjs +40 -0
  610. package/__cjs/testing/matchers/toEqualQueryResult.cjs.map +1 -0
  611. package/__cjs/testing/matchers/toEqualQueryResult.d.cts +9 -0
  612. package/__cjs/testing/matchers/toHaveSuspenseCacheEntryUsing.cjs +26 -0
  613. package/__cjs/testing/matchers/toHaveSuspenseCacheEntryUsing.cjs.map +1 -0
  614. package/__cjs/testing/matchers/toHaveSuspenseCacheEntryUsing.d.cts +11 -0
  615. package/__cjs/testing/matchers/toMatchDocument.cjs +36 -0
  616. package/__cjs/testing/matchers/toMatchDocument.cjs.map +1 -0
  617. package/__cjs/testing/matchers/toMatchDocument.d.cts +4 -0
  618. package/__cjs/testing/react/MockedProvider.cjs +39 -0
  619. package/__cjs/testing/react/MockedProvider.cjs.map +1 -0
  620. package/__cjs/testing/react/MockedProvider.d.cts +32 -0
  621. package/__cjs/testing/react/index.cjs +6 -0
  622. package/__cjs/testing/react/index.cjs.map +1 -0
  623. package/__cjs/testing/react/index.d.cts +3 -0
  624. package/__cjs/utilities/caching/caches.cjs +72 -0
  625. package/__cjs/utilities/caching/caches.cjs.map +1 -0
  626. package/__cjs/utilities/caching/caches.d.cts +34 -0
  627. package/__cjs/utilities/caching/getMemoryInternals.cjs +127 -0
  628. package/__cjs/utilities/caching/getMemoryInternals.cjs.map +1 -0
  629. package/__cjs/utilities/caching/getMemoryInternals.d.cts +76 -0
  630. package/__cjs/utilities/caching/index.cjs +9 -0
  631. package/__cjs/utilities/caching/index.cjs.map +1 -0
  632. package/__cjs/utilities/caching/index.d.cts +4 -0
  633. package/__cjs/utilities/caching/sizes.cjs +29 -0
  634. package/__cjs/utilities/caching/sizes.cjs.map +1 -0
  635. package/__cjs/utilities/caching/sizes.d.cts +311 -0
  636. package/__cjs/utilities/common/arrays.cjs +10 -0
  637. package/__cjs/utilities/common/arrays.cjs.map +1 -0
  638. package/__cjs/utilities/common/arrays.d.cts +3 -0
  639. package/__cjs/utilities/common/canUse.cjs +24 -0
  640. package/__cjs/utilities/common/canUse.cjs.map +1 -0
  641. package/__cjs/utilities/common/canUse.d.cts +3 -0
  642. package/__cjs/utilities/common/canonicalStringify.cjs +88 -0
  643. package/__cjs/utilities/common/canonicalStringify.cjs.map +1 -0
  644. package/__cjs/utilities/common/canonicalStringify.d.cts +21 -0
  645. package/__cjs/utilities/common/cloneDeep.cjs +41 -0
  646. package/__cjs/utilities/common/cloneDeep.cjs.map +1 -0
  647. package/__cjs/utilities/common/cloneDeep.d.cts +5 -0
  648. package/__cjs/utilities/common/compact.cjs +22 -0
  649. package/__cjs/utilities/common/compact.cjs.map +1 -0
  650. package/__cjs/utilities/common/compact.d.cts +7 -0
  651. package/__cjs/utilities/common/errorHandling.cjs +23 -0
  652. package/__cjs/utilities/common/errorHandling.cjs.map +1 -0
  653. package/__cjs/utilities/common/errorHandling.d.cts +4 -0
  654. package/__cjs/utilities/common/incrementalResult.cjs +45 -0
  655. package/__cjs/utilities/common/incrementalResult.cjs.map +1 -0
  656. package/__cjs/utilities/common/incrementalResult.d.cts +7 -0
  657. package/__cjs/utilities/common/makeUniqueId.cjs +12 -0
  658. package/__cjs/utilities/common/makeUniqueId.cjs.map +1 -0
  659. package/__cjs/utilities/common/makeUniqueId.d.cts +2 -0
  660. package/__cjs/utilities/common/maybeDeepFreeze.cjs +41 -0
  661. package/__cjs/utilities/common/maybeDeepFreeze.cjs.map +1 -0
  662. package/__cjs/utilities/common/maybeDeepFreeze.d.cts +3 -0
  663. package/__cjs/utilities/common/mergeDeep.cjs +84 -0
  664. package/__cjs/utilities/common/mergeDeep.cjs.map +1 -0
  665. package/__cjs/utilities/common/mergeDeep.d.cts +14 -0
  666. package/__cjs/utilities/common/mergeOptions.cjs +13 -0
  667. package/__cjs/utilities/common/mergeOptions.cjs.map +1 -0
  668. package/__cjs/utilities/common/mergeOptions.d.cts +5 -0
  669. package/__cjs/utilities/common/objects.cjs +14 -0
  670. package/__cjs/utilities/common/objects.cjs.map +1 -0
  671. package/__cjs/utilities/common/objects.d.cts +3 -0
  672. package/__cjs/utilities/common/omitDeep.cjs +43 -0
  673. package/__cjs/utilities/common/omitDeep.cjs.map +1 -0
  674. package/__cjs/utilities/common/omitDeep.d.cts +3 -0
  675. package/__cjs/utilities/common/stringifyForDisplay.cjs +13 -0
  676. package/__cjs/utilities/common/stringifyForDisplay.cjs.map +1 -0
  677. package/__cjs/utilities/common/stringifyForDisplay.d.cts +2 -0
  678. package/__cjs/utilities/common/stripTypename.cjs +8 -0
  679. package/__cjs/utilities/common/stripTypename.cjs.map +1 -0
  680. package/__cjs/utilities/common/stripTypename.d.cts +2 -0
  681. package/__cjs/utilities/environment/index.cjs +5 -0
  682. package/__cjs/utilities/environment/index.cjs.map +1 -0
  683. package/__cjs/utilities/environment/index.d.cts +2 -0
  684. package/__cjs/utilities/environment/index.development.cjs +5 -0
  685. package/__cjs/utilities/environment/index.development.cjs.map +1 -0
  686. package/__cjs/utilities/environment/index.development.d.cts +2 -0
  687. package/__cjs/utilities/environment/index.production.cjs +5 -0
  688. package/__cjs/utilities/environment/index.production.cjs.map +1 -0
  689. package/__cjs/utilities/environment/index.production.d.cts +2 -0
  690. package/__cjs/utilities/globals/global.cjs +17 -0
  691. package/__cjs/utilities/globals/global.cjs.map +1 -0
  692. package/__cjs/utilities/globals/global.d.cts +3 -0
  693. package/__cjs/utilities/globals/index.cjs +9 -0
  694. package/__cjs/utilities/globals/index.cjs.map +1 -0
  695. package/__cjs/utilities/globals/index.d.cts +3 -0
  696. package/__cjs/utilities/globals/maybe.cjs +10 -0
  697. package/__cjs/utilities/globals/maybe.cjs.map +1 -0
  698. package/__cjs/utilities/globals/maybe.d.cts +2 -0
  699. package/__cjs/utilities/graphql/DocumentTransform.cjs +103 -0
  700. package/__cjs/utilities/graphql/DocumentTransform.cjs.map +1 -0
  701. package/__cjs/utilities/graphql/DocumentTransform.d.cts +50 -0
  702. package/__cjs/utilities/graphql/directives.cjs +114 -0
  703. package/__cjs/utilities/graphql/directives.cjs.map +1 -0
  704. package/__cjs/utilities/graphql/directives.d.cts +20 -0
  705. package/__cjs/utilities/graphql/fragments.cjs +126 -0
  706. package/__cjs/utilities/graphql/fragments.cjs.map +1 -0
  707. package/__cjs/utilities/graphql/fragments.d.cts +35 -0
  708. package/__cjs/utilities/graphql/getFromAST.cjs +92 -0
  709. package/__cjs/utilities/graphql/getFromAST.cjs.map +1 -0
  710. package/__cjs/utilities/graphql/getFromAST.d.cts +15 -0
  711. package/__cjs/utilities/graphql/operations.cjs +19 -0
  712. package/__cjs/utilities/graphql/operations.cjs.map +1 -0
  713. package/__cjs/utilities/graphql/operations.d.cts +5 -0
  714. package/__cjs/utilities/graphql/print.cjs +25 -0
  715. package/__cjs/utilities/graphql/print.cjs.map +1 -0
  716. package/__cjs/utilities/graphql/print.d.cts +5 -0
  717. package/__cjs/utilities/graphql/storeUtils.cjs +213 -0
  718. package/__cjs/utilities/graphql/storeUtils.cjs.map +1 -0
  719. package/__cjs/utilities/graphql/storeUtils.d.cts +51 -0
  720. package/__cjs/utilities/graphql/transform.cjs +509 -0
  721. package/__cjs/utilities/graphql/transform.cjs.map +1 -0
  722. package/__cjs/utilities/graphql/transform.d.cts +28 -0
  723. package/__cjs/utilities/index.cjs +96 -0
  724. package/__cjs/utilities/index.cjs.map +1 -0
  725. package/__cjs/utilities/index.d.cts +46 -0
  726. package/__cjs/utilities/internal/index.cjs +6 -0
  727. package/__cjs/utilities/internal/index.cjs.map +1 -0
  728. package/__cjs/utilities/internal/index.d.cts +2 -0
  729. package/__cjs/utilities/internal/observables.cjs +29 -0
  730. package/__cjs/utilities/internal/observables.cjs.map +1 -0
  731. package/__cjs/utilities/internal/observables.d.cts +14 -0
  732. package/__cjs/utilities/invariant/index.cjs +96 -0
  733. package/__cjs/utilities/invariant/index.cjs.map +1 -0
  734. package/__cjs/utilities/invariant/index.d.cts +47 -0
  735. package/__cjs/utilities/invariant/index.development.cjs +15 -0
  736. package/__cjs/utilities/invariant/index.development.cjs.map +1 -0
  737. package/__cjs/utilities/invariant/index.development.d.cts +4 -0
  738. package/__cjs/utilities/policies/pagination.cjs +221 -0
  739. package/__cjs/utilities/policies/pagination.cjs.map +1 -0
  740. package/__cjs/utilities/policies/pagination.d.cts +28 -0
  741. package/__cjs/utilities/promises/decoration.cjs +45 -0
  742. package/__cjs/utilities/promises/decoration.cjs.map +1 -0
  743. package/__cjs/utilities/promises/decoration.d.cts +18 -0
  744. package/__cjs/utilities/promises/preventUnhandledRejection.cjs +8 -0
  745. package/__cjs/utilities/promises/preventUnhandledRejection.cjs.map +1 -0
  746. package/__cjs/utilities/promises/preventUnhandledRejection.d.cts +2 -0
  747. package/__cjs/utilities/subscriptions/relay/index.cjs +55 -0
  748. package/__cjs/utilities/subscriptions/relay/index.cjs.map +1 -0
  749. package/__cjs/utilities/subscriptions/relay/index.d.cts +10 -0
  750. package/__cjs/utilities/types/DeepOmit.cjs +3 -0
  751. package/__cjs/utilities/types/DeepOmit.cjs.map +1 -0
  752. package/__cjs/utilities/types/DeepOmit.d.cts +10 -0
  753. package/__cjs/utilities/types/DeepPartial.cjs +7 -0
  754. package/__cjs/utilities/types/DeepPartial.cjs.map +1 -0
  755. package/__cjs/utilities/types/DeepPartial.d.cts +12 -0
  756. package/__cjs/utilities/types/IsStrictlyAny.cjs +3 -0
  757. package/__cjs/utilities/types/IsStrictlyAny.cjs.map +1 -0
  758. package/__cjs/utilities/types/IsStrictlyAny.d.cts +5 -0
  759. package/__cjs/utilities/types/NoInfer.cjs +3 -0
  760. package/__cjs/utilities/types/NoInfer.cjs.map +1 -0
  761. package/__cjs/utilities/types/NoInfer.d.cts +27 -0
  762. package/__cjs/utilities/types/OnlyRequiredProperties.cjs +3 -0
  763. package/__cjs/utilities/types/OnlyRequiredProperties.cjs.map +1 -0
  764. package/__cjs/utilities/types/OnlyRequiredProperties.d.cts +7 -0
  765. package/__cjs/utilities/types/Prettify.cjs +3 -0
  766. package/__cjs/utilities/types/Prettify.cjs.map +1 -0
  767. package/__cjs/utilities/types/Prettify.d.cts +4 -0
  768. package/__cjs/utilities/types/Primitive.cjs +3 -0
  769. package/__cjs/utilities/types/Primitive.cjs.map +1 -0
  770. package/__cjs/utilities/types/Primitive.d.cts +2 -0
  771. package/__cjs/utilities/types/RemoveIndexSignature.cjs +3 -0
  772. package/__cjs/utilities/types/RemoveIndexSignature.cjs.map +1 -0
  773. package/__cjs/utilities/types/RemoveIndexSignature.d.cts +4 -0
  774. package/__cjs/utilities/types/TODO.cjs +3 -0
  775. package/__cjs/utilities/types/TODO.cjs.map +1 -0
  776. package/__cjs/utilities/types/TODO.d.cts +3 -0
  777. package/__cjs/utilities/types/UnionToIntersection.cjs +3 -0
  778. package/__cjs/utilities/types/UnionToIntersection.cjs.map +1 -0
  779. package/__cjs/utilities/types/UnionToIntersection.d.cts +2 -0
  780. package/__cjs/version.cjs +5 -0
  781. package/__cjs/version.cjs.map +1 -0
  782. package/__cjs/version.d.cts +2 -0
  783. package/cache/core/cache.d.ts +28 -17
  784. package/cache/core/cache.js +124 -91
  785. package/cache/core/cache.js.map +1 -1
  786. package/cache/core/types/Cache.d.ts +4 -4
  787. package/cache/core/types/Cache.js +1 -1
  788. package/cache/core/types/Cache.js.map +1 -1
  789. package/cache/core/types/DataProxy.d.ts +24 -19
  790. package/cache/core/types/DataProxy.js +1 -1
  791. package/cache/core/types/DataProxy.js.map +1 -1
  792. package/cache/core/types/common.d.ts +2 -2
  793. package/cache/core/types/common.js +20 -21
  794. package/cache/core/types/common.js.map +1 -1
  795. package/cache/index.d.ts +7 -8
  796. package/cache/index.js +4 -6
  797. package/cache/index.js.map +1 -1
  798. package/cache/inmemory/entityStore.d.ts +6 -6
  799. package/cache/inmemory/entityStore.js +270 -273
  800. package/cache/inmemory/entityStore.js.map +1 -1
  801. package/cache/inmemory/fixPolyfills.d.ts +2 -1
  802. package/cache/inmemory/fixPolyfills.js +2 -2
  803. package/cache/inmemory/fixPolyfills.js.map +1 -1
  804. package/cache/inmemory/fixPolyfills.native.d.ts +1 -1
  805. package/cache/inmemory/fixPolyfills.native.js +13 -21
  806. package/cache/inmemory/fixPolyfills.native.js.map +1 -1
  807. package/cache/inmemory/fragmentRegistry.d.ts +1 -1
  808. package/cache/inmemory/fragmentRegistry.js +51 -66
  809. package/cache/inmemory/fragmentRegistry.js.map +1 -1
  810. package/cache/inmemory/helpers.d.ts +6 -12
  811. package/cache/inmemory/helpers.js +22 -29
  812. package/cache/inmemory/helpers.js.map +1 -1
  813. package/cache/inmemory/inMemoryCache.d.ts +10 -9
  814. package/cache/inmemory/inMemoryCache.js +157 -174
  815. package/cache/inmemory/inMemoryCache.js.map +1 -1
  816. package/cache/inmemory/key-extractor.d.ts +2 -2
  817. package/cache/inmemory/key-extractor.js +41 -48
  818. package/cache/inmemory/key-extractor.js.map +1 -1
  819. package/cache/inmemory/object-canon.d.ts +1 -1
  820. package/cache/inmemory/object-canon.js +51 -56
  821. package/cache/inmemory/object-canon.js.map +1 -1
  822. package/cache/inmemory/policies.d.ts +6 -6
  823. package/cache/inmemory/policies.js +188 -193
  824. package/cache/inmemory/policies.js.map +1 -1
  825. package/cache/inmemory/reactiveVars.d.ts +4 -3
  826. package/cache/inmemory/reactiveVars.js +17 -17
  827. package/cache/inmemory/reactiveVars.js.map +1 -1
  828. package/cache/inmemory/readFromStore.d.ts +5 -13
  829. package/cache/inmemory/readFromStore.js +117 -117
  830. package/cache/inmemory/readFromStore.js.map +1 -1
  831. package/cache/inmemory/types.d.ts +5 -6
  832. package/cache/inmemory/types.js +1 -1
  833. package/cache/inmemory/types.js.map +1 -1
  834. package/cache/inmemory/writeToStore.d.ts +6 -6
  835. package/cache/inmemory/writeToStore.js +178 -164
  836. package/cache/inmemory/writeToStore.js.map +1 -1
  837. package/config/jest/areCombinedGraphQLErrorsEqual.d.ts +3 -0
  838. package/config/jest/areCombinedGraphQLErrorsEqual.js +15 -0
  839. package/config/jest/areCombinedGraphQLErrorsEqual.js.map +1 -0
  840. package/config/jest/areCombinedProtocolErrorsEqual.d.ts +3 -0
  841. package/config/jest/areCombinedProtocolErrorsEqual.js +15 -0
  842. package/config/jest/areCombinedProtocolErrorsEqual.js.map +1 -0
  843. package/config/jest/areGraphQlErrorsEqual.d.ts +1 -1
  844. package/config/jest/areGraphQlErrorsEqual.js +2 -2
  845. package/config/jest/areGraphQlErrorsEqual.js.map +1 -1
  846. package/config/jest/areMissingFieldErrorsEqual.d.ts +3 -0
  847. package/config/jest/areMissingFieldErrorsEqual.js +17 -0
  848. package/config/jest/areMissingFieldErrorsEqual.js.map +1 -0
  849. package/config/jest/resolver.d.ts +3 -0
  850. package/config/jest/resolver.js +18 -0
  851. package/config/jest/resolver.js.map +1 -0
  852. package/config/jest/setup.d.ts +1 -1
  853. package/config/jest/setup.js +21 -12
  854. package/config/jest/setup.js.map +1 -1
  855. package/core/ApolloClient.d.ts +15 -15
  856. package/core/ApolloClient.js +240 -172
  857. package/core/ApolloClient.js.map +1 -1
  858. package/core/LocalState.d.ts +8 -20
  859. package/core/LocalState.js +229 -256
  860. package/core/LocalState.js.map +1 -1
  861. package/core/ObservableQuery.d.ts +24 -23
  862. package/core/ObservableQuery.js +380 -389
  863. package/core/ObservableQuery.js.map +1 -1
  864. package/core/QueryInfo.d.ts +6 -15
  865. package/core/QueryInfo.js +101 -125
  866. package/core/QueryInfo.js.map +1 -1
  867. package/core/QueryManager.d.ts +18 -19
  868. package/core/QueryManager.js +564 -579
  869. package/core/QueryManager.js.map +1 -1
  870. package/core/equalByQuery.d.ts +1 -1
  871. package/core/equalByQuery.js +16 -19
  872. package/core/equalByQuery.js.map +1 -1
  873. package/core/index.d.ts +12 -14
  874. package/core/index.js +8 -12
  875. package/core/index.js.map +1 -1
  876. package/core/networkStatus.d.ts +1 -1
  877. package/core/networkStatus.js +1 -1
  878. package/core/networkStatus.js.map +1 -1
  879. package/core/types.d.ts +51 -18
  880. package/core/types.js +1 -1
  881. package/core/types.js.map +1 -1
  882. package/core/watchQueryOptions.d.ts +289 -319
  883. package/core/watchQueryOptions.js +1 -1
  884. package/core/watchQueryOptions.js.map +1 -1
  885. package/dev/index.d.ts +1 -1
  886. package/dev/index.js +1 -1
  887. package/dev/index.js.map +1 -1
  888. package/dev/loadDevMessages.d.ts +1 -1
  889. package/dev/loadDevMessages.js +1 -1
  890. package/dev/loadDevMessages.js.map +1 -1
  891. package/dev/loadErrorMessageHandler.d.ts +1 -1
  892. package/dev/loadErrorMessageHandler.js +9 -14
  893. package/dev/loadErrorMessageHandler.js.map +1 -1
  894. package/dev/loadErrorMessages.d.ts +1 -1
  895. package/dev/loadErrorMessages.js +1 -1
  896. package/dev/loadErrorMessages.js.map +1 -1
  897. package/dev/setErrorMessageHandler.d.ts +1 -1
  898. package/dev/setErrorMessageHandler.js +3 -3
  899. package/dev/setErrorMessageHandler.js.map +1 -1
  900. package/dev/symbol.d.ts +10 -0
  901. package/dev/symbol.js +4 -0
  902. package/dev/symbol.js.map +1 -0
  903. package/errors/CombinedGraphQLErrors.d.ts +13 -0
  904. package/errors/CombinedGraphQLErrors.js +26 -0
  905. package/errors/CombinedGraphQLErrors.js.map +1 -0
  906. package/errors/CombinedProtocolErrors.d.ts +11 -0
  907. package/errors/CombinedProtocolErrors.js +20 -0
  908. package/errors/CombinedProtocolErrors.js.map +1 -0
  909. package/errors/ServerError.d.ts +25 -0
  910. package/errors/ServerError.js +27 -0
  911. package/errors/ServerError.js.map +1 -0
  912. package/errors/ServerParseError.d.ts +24 -0
  913. package/errors/ServerParseError.js +28 -0
  914. package/errors/ServerParseError.js.map +1 -0
  915. package/errors/UnconventionalError.d.ts +9 -0
  916. package/errors/UnconventionalError.js +13 -0
  917. package/errors/UnconventionalError.js.map +1 -0
  918. package/errors/index.d.ts +9 -42
  919. package/errors/index.js +9 -52
  920. package/errors/index.js.map +1 -1
  921. package/index.d.ts +3 -3
  922. package/index.js +3 -3
  923. package/index.js.map +1 -1
  924. package/invariantErrorCodes.d.ts +1 -1
  925. package/invariantErrorCodes.js +365 -346
  926. package/invariantErrorCodes.js.map +1 -1
  927. package/legacyEntryPoints/apollo-client.cjs +1 -0
  928. package/legacyEntryPoints/apollo-client.d.cts +1 -0
  929. package/legacyEntryPoints/cache/cache.cjs +1 -0
  930. package/legacyEntryPoints/cache/cache.d.cts +1 -0
  931. package/legacyEntryPoints/cache/index.d.ts +1 -0
  932. package/legacyEntryPoints/cache/index.js +1 -0
  933. package/legacyEntryPoints/core/core.cjs +1 -0
  934. package/legacyEntryPoints/core/core.d.cts +1 -0
  935. package/legacyEntryPoints/core/index.d.ts +1 -0
  936. package/legacyEntryPoints/core/index.js +1 -0
  937. package/legacyEntryPoints/dev/dev.cjs +1 -0
  938. package/legacyEntryPoints/dev/dev.d.cts +1 -0
  939. package/legacyEntryPoints/dev/index.d.ts +1 -0
  940. package/legacyEntryPoints/dev/index.js +1 -0
  941. package/legacyEntryPoints/errors/errors.cjs +1 -0
  942. package/legacyEntryPoints/errors/errors.d.cts +1 -0
  943. package/legacyEntryPoints/errors/index.d.ts +1 -0
  944. package/legacyEntryPoints/errors/index.js +1 -0
  945. package/legacyEntryPoints/index.d.ts +1 -0
  946. package/legacyEntryPoints/index.js +1 -0
  947. package/legacyEntryPoints/link/batch/batch.cjs +1 -0
  948. package/legacyEntryPoints/link/batch/batch.d.cts +1 -0
  949. package/legacyEntryPoints/link/batch/index.d.ts +1 -0
  950. package/legacyEntryPoints/link/batch/index.js +1 -0
  951. package/legacyEntryPoints/link/batch-http/batch-http.cjs +1 -0
  952. package/legacyEntryPoints/link/batch-http/batch-http.d.cts +1 -0
  953. package/legacyEntryPoints/link/batch-http/index.d.ts +1 -0
  954. package/legacyEntryPoints/link/batch-http/index.js +1 -0
  955. package/legacyEntryPoints/link/context/context.cjs +1 -0
  956. package/legacyEntryPoints/link/context/context.d.cts +1 -0
  957. package/legacyEntryPoints/link/context/index.d.ts +1 -0
  958. package/legacyEntryPoints/link/context/index.js +1 -0
  959. package/legacyEntryPoints/link/core/core.cjs +1 -0
  960. package/legacyEntryPoints/link/core/core.d.cts +1 -0
  961. package/legacyEntryPoints/link/core/index.d.ts +1 -0
  962. package/legacyEntryPoints/link/core/index.js +1 -0
  963. package/legacyEntryPoints/link/error/error.cjs +1 -0
  964. package/legacyEntryPoints/link/error/error.d.cts +1 -0
  965. package/legacyEntryPoints/link/error/index.d.ts +1 -0
  966. package/legacyEntryPoints/link/error/index.js +1 -0
  967. package/legacyEntryPoints/link/http/http.cjs +1 -0
  968. package/legacyEntryPoints/link/http/http.d.cts +1 -0
  969. package/legacyEntryPoints/link/http/index.d.ts +1 -0
  970. package/legacyEntryPoints/link/http/index.js +1 -0
  971. package/legacyEntryPoints/link/persisted-queries/index.d.ts +1 -0
  972. package/legacyEntryPoints/link/persisted-queries/index.js +1 -0
  973. package/legacyEntryPoints/link/persisted-queries/persisted-queries.cjs +1 -0
  974. package/legacyEntryPoints/link/persisted-queries/persisted-queries.d.cts +1 -0
  975. package/legacyEntryPoints/link/remove-typename/index.d.ts +1 -0
  976. package/legacyEntryPoints/link/remove-typename/index.js +1 -0
  977. package/legacyEntryPoints/link/remove-typename/remove-typename.cjs +1 -0
  978. package/legacyEntryPoints/link/remove-typename/remove-typename.d.cts +1 -0
  979. package/legacyEntryPoints/link/retry/index.d.ts +1 -0
  980. package/legacyEntryPoints/link/retry/index.js +1 -0
  981. package/legacyEntryPoints/link/retry/retry.cjs +1 -0
  982. package/legacyEntryPoints/link/retry/retry.d.cts +1 -0
  983. package/legacyEntryPoints/link/schema/index.d.ts +1 -0
  984. package/legacyEntryPoints/link/schema/index.js +1 -0
  985. package/legacyEntryPoints/link/schema/schema.cjs +1 -0
  986. package/legacyEntryPoints/link/schema/schema.d.cts +1 -0
  987. package/legacyEntryPoints/link/subscriptions/index.d.ts +1 -0
  988. package/legacyEntryPoints/link/subscriptions/index.js +1 -0
  989. package/legacyEntryPoints/link/subscriptions/subscriptions.cjs +1 -0
  990. package/legacyEntryPoints/link/subscriptions/subscriptions.d.cts +1 -0
  991. package/legacyEntryPoints/link/utils/index.d.ts +1 -0
  992. package/legacyEntryPoints/link/utils/index.js +1 -0
  993. package/legacyEntryPoints/link/utils/utils.cjs +1 -0
  994. package/legacyEntryPoints/link/utils/utils.d.cts +1 -0
  995. package/legacyEntryPoints/link/ws/index.d.ts +1 -0
  996. package/legacyEntryPoints/link/ws/index.js +1 -0
  997. package/legacyEntryPoints/link/ws/ws.cjs +1 -0
  998. package/legacyEntryPoints/link/ws/ws.d.cts +1 -0
  999. package/legacyEntryPoints/main.cjs +1 -0
  1000. package/legacyEntryPoints/main.d.cts +1 -0
  1001. package/legacyEntryPoints/masking/index.d.ts +1 -0
  1002. package/legacyEntryPoints/masking/index.js +1 -0
  1003. package/legacyEntryPoints/masking/masking.cjs +1 -0
  1004. package/legacyEntryPoints/masking/masking.d.cts +1 -0
  1005. package/legacyEntryPoints/react/context/context.cjs +1 -0
  1006. package/legacyEntryPoints/react/context/context.d.cts +1 -0
  1007. package/legacyEntryPoints/react/context/index.d.ts +1 -0
  1008. package/legacyEntryPoints/react/context/index.js +1 -0
  1009. package/legacyEntryPoints/react/hooks/hooks.cjs +1 -0
  1010. package/legacyEntryPoints/react/hooks/hooks.d.cts +1 -0
  1011. package/legacyEntryPoints/react/hooks/index.d.ts +1 -0
  1012. package/legacyEntryPoints/react/hooks/index.js +1 -0
  1013. package/legacyEntryPoints/react/index.d.ts +1 -0
  1014. package/legacyEntryPoints/react/index.js +1 -0
  1015. package/legacyEntryPoints/react/internal/index.d.ts +1 -0
  1016. package/legacyEntryPoints/react/internal/index.js +1 -0
  1017. package/legacyEntryPoints/react/internal/internal.cjs +1 -0
  1018. package/legacyEntryPoints/react/internal/internal.d.cts +1 -0
  1019. package/legacyEntryPoints/react/parser/index.d.ts +1 -0
  1020. package/legacyEntryPoints/react/parser/index.js +1 -0
  1021. package/legacyEntryPoints/react/parser/parser.cjs +1 -0
  1022. package/legacyEntryPoints/react/parser/parser.d.cts +1 -0
  1023. package/legacyEntryPoints/react/react.cjs +1 -0
  1024. package/legacyEntryPoints/react/react.d.cts +1 -0
  1025. package/legacyEntryPoints/react/ssr/index.d.ts +1 -0
  1026. package/legacyEntryPoints/react/ssr/index.js +1 -0
  1027. package/legacyEntryPoints/react/ssr/ssr.cjs +1 -0
  1028. package/legacyEntryPoints/react/ssr/ssr.d.cts +1 -0
  1029. package/legacyEntryPoints/testing/core/core.cjs +1 -0
  1030. package/legacyEntryPoints/testing/core/core.d.cts +1 -0
  1031. package/legacyEntryPoints/testing/core/index.d.ts +1 -0
  1032. package/legacyEntryPoints/testing/core/index.js +1 -0
  1033. package/legacyEntryPoints/testing/experimental/experimental.cjs +1 -0
  1034. package/legacyEntryPoints/testing/experimental/experimental.d.cts +1 -0
  1035. package/legacyEntryPoints/testing/experimental/index.d.ts +1 -0
  1036. package/legacyEntryPoints/testing/experimental/index.js +1 -0
  1037. package/legacyEntryPoints/testing/index.d.ts +1 -0
  1038. package/legacyEntryPoints/testing/index.js +1 -0
  1039. package/legacyEntryPoints/testing/react/index.d.ts +1 -0
  1040. package/legacyEntryPoints/testing/react/index.js +1 -0
  1041. package/legacyEntryPoints/testing/react/react.cjs +1 -0
  1042. package/legacyEntryPoints/testing/react/react.d.cts +1 -0
  1043. package/legacyEntryPoints/testing/testing.cjs +1 -0
  1044. package/legacyEntryPoints/testing/testing.d.cts +1 -0
  1045. package/legacyEntryPoints/utilities/environment/environment.cjs +1 -0
  1046. package/legacyEntryPoints/utilities/environment/environment.d.cts +1 -0
  1047. package/legacyEntryPoints/utilities/environment/index.d.ts +1 -0
  1048. package/legacyEntryPoints/utilities/environment/index.js +1 -0
  1049. package/legacyEntryPoints/utilities/globals/globals.cjs +1 -0
  1050. package/legacyEntryPoints/utilities/globals/globals.d.cts +1 -0
  1051. package/legacyEntryPoints/utilities/globals/index.d.ts +1 -0
  1052. package/legacyEntryPoints/utilities/globals/index.js +1 -0
  1053. package/legacyEntryPoints/utilities/index.d.ts +1 -0
  1054. package/legacyEntryPoints/utilities/index.js +1 -0
  1055. package/legacyEntryPoints/utilities/internal/index.d.ts +1 -0
  1056. package/legacyEntryPoints/utilities/internal/index.js +1 -0
  1057. package/legacyEntryPoints/utilities/internal/internal.cjs +1 -0
  1058. package/legacyEntryPoints/utilities/internal/internal.d.cts +1 -0
  1059. package/legacyEntryPoints/utilities/invariant/index.d.ts +1 -0
  1060. package/legacyEntryPoints/utilities/invariant/index.js +1 -0
  1061. package/legacyEntryPoints/utilities/invariant/invariant.cjs +1 -0
  1062. package/legacyEntryPoints/utilities/invariant/invariant.d.cts +1 -0
  1063. package/legacyEntryPoints/utilities/subscriptions/relay/index.d.ts +1 -0
  1064. package/legacyEntryPoints/utilities/subscriptions/relay/index.js +1 -0
  1065. package/legacyEntryPoints/utilities/subscriptions/relay/relay.cjs +1 -0
  1066. package/legacyEntryPoints/utilities/subscriptions/relay/relay.d.cts +1 -0
  1067. package/legacyEntryPoints/utilities/utilities.cjs +1 -0
  1068. package/legacyEntryPoints/utilities/utilities.d.cts +1 -0
  1069. package/link/batch/batchLink.d.ts +4 -4
  1070. package/link/batch/batchLink.js +19 -23
  1071. package/link/batch/batchLink.js.map +1 -1
  1072. package/link/batch/batching.d.ts +3 -3
  1073. package/link/batch/batching.js +63 -59
  1074. package/link/batch/batching.js.map +1 -1
  1075. package/link/batch/index.d.ts +1 -1
  1076. package/link/batch/index.js +1 -1
  1077. package/link/batch/index.js.map +1 -1
  1078. package/link/batch-http/batchHttpLink.d.ts +6 -6
  1079. package/link/batch-http/batchHttpLink.js +61 -67
  1080. package/link/batch-http/batchHttpLink.js.map +1 -1
  1081. package/link/batch-http/index.d.ts +1 -1
  1082. package/link/batch-http/index.js +1 -1
  1083. package/link/batch-http/index.js.map +1 -1
  1084. package/link/context/index.d.ts +4 -4
  1085. package/link/context/index.js +11 -12
  1086. package/link/context/index.js.map +1 -1
  1087. package/link/core/ApolloLink.d.ts +4 -5
  1088. package/link/core/ApolloLink.js +69 -56
  1089. package/link/core/ApolloLink.js.map +1 -1
  1090. package/link/core/concat.d.ts +1 -1
  1091. package/link/core/concat.js +2 -2
  1092. package/link/core/concat.js.map +1 -1
  1093. package/link/core/empty.d.ts +1 -1
  1094. package/link/core/empty.js +2 -2
  1095. package/link/core/empty.js.map +1 -1
  1096. package/link/core/execute.d.ts +1 -1
  1097. package/link/core/execute.js +2 -2
  1098. package/link/core/execute.js.map +1 -1
  1099. package/link/core/from.d.ts +1 -1
  1100. package/link/core/from.js +2 -2
  1101. package/link/core/from.js.map +1 -1
  1102. package/link/core/index.d.ts +1 -2
  1103. package/link/core/index.js +1 -2
  1104. package/link/core/index.js.map +1 -1
  1105. package/link/core/split.d.ts +1 -1
  1106. package/link/core/split.js +2 -2
  1107. package/link/core/split.js.map +1 -1
  1108. package/link/core/types.d.ts +3 -3
  1109. package/link/core/types.js +1 -1
  1110. package/link/core/types.js.map +1 -1
  1111. package/link/error/index.d.ts +6 -6
  1112. package/link/error/index.js +29 -33
  1113. package/link/error/index.js.map +1 -1
  1114. package/link/http/HttpLink.d.ts +2 -2
  1115. package/link/http/HttpLink.js +8 -13
  1116. package/link/http/HttpLink.js.map +1 -1
  1117. package/link/http/checkFetcher.d.ts +1 -1
  1118. package/link/http/checkFetcher.js +4 -6
  1119. package/link/http/checkFetcher.js.map +1 -1
  1120. package/link/http/createHttpLink.d.ts +2 -2
  1121. package/link/http/createHttpLink.js +54 -60
  1122. package/link/http/createHttpLink.js.map +1 -1
  1123. package/link/http/createSignalIfSupported.d.ts +1 -1
  1124. package/link/http/createSignalIfSupported.js +5 -5
  1125. package/link/http/createSignalIfSupported.js.map +1 -1
  1126. package/link/http/index.d.ts +2 -4
  1127. package/link/http/index.js +2 -3
  1128. package/link/http/index.js.map +1 -1
  1129. package/link/http/iterators/async.d.ts +1 -1
  1130. package/link/http/iterators/async.js +7 -9
  1131. package/link/http/iterators/async.js.map +1 -1
  1132. package/link/http/iterators/nodeStream.d.ts +1 -1
  1133. package/link/http/iterators/nodeStream.js +14 -17
  1134. package/link/http/iterators/nodeStream.js.map +1 -1
  1135. package/link/http/iterators/promise.d.ts +1 -1
  1136. package/link/http/iterators/promise.js +7 -10
  1137. package/link/http/iterators/promise.js.map +1 -1
  1138. package/link/http/iterators/reader.d.ts +1 -1
  1139. package/link/http/iterators/reader.js +6 -9
  1140. package/link/http/iterators/reader.js.map +1 -1
  1141. package/link/http/parseAndCheckHttpResponse.d.ts +4 -11
  1142. package/link/http/parseAndCheckHttpResponse.js +113 -122
  1143. package/link/http/parseAndCheckHttpResponse.js.map +1 -1
  1144. package/link/http/responseIterator.d.ts +1 -1
  1145. package/link/http/responseIterator.js +3 -5
  1146. package/link/http/responseIterator.js.map +1 -1
  1147. package/link/http/rewriteURIForGET.d.ts +1 -1
  1148. package/link/http/rewriteURIForGET.js +13 -13
  1149. package/link/http/rewriteURIForGET.js.map +1 -1
  1150. package/link/http/selectHttpOptionsAndBody.d.ts +7 -6
  1151. package/link/http/selectHttpOptionsAndBody.js +38 -38
  1152. package/link/http/selectHttpOptionsAndBody.js.map +1 -1
  1153. package/link/http/selectURI.d.ts +2 -2
  1154. package/link/http/selectURI.js +4 -4
  1155. package/link/http/selectURI.js.map +1 -1
  1156. package/link/http/serializeFetchParameter.d.ts +2 -2
  1157. package/link/http/serializeFetchParameter.js +5 -5
  1158. package/link/http/serializeFetchParameter.js.map +1 -1
  1159. package/link/persisted-queries/index.d.ts +4 -4
  1160. package/link/persisted-queries/index.js +60 -75
  1161. package/link/persisted-queries/index.js.map +1 -1
  1162. package/link/remove-typename/index.d.ts +2 -2
  1163. package/link/remove-typename/index.js +2 -2
  1164. package/link/remove-typename/index.js.map +1 -1
  1165. package/link/remove-typename/removeTypenameFromVariables.d.ts +2 -2
  1166. package/link/remove-typename/removeTypenameFromVariables.js +29 -30
  1167. package/link/remove-typename/removeTypenameFromVariables.js.map +1 -1
  1168. package/link/retry/delayFunction.d.ts +2 -2
  1169. package/link/retry/delayFunction.js +4 -4
  1170. package/link/retry/delayFunction.js.map +1 -1
  1171. package/link/retry/index.d.ts +1 -1
  1172. package/link/retry/index.js +1 -1
  1173. package/link/retry/index.js.map +1 -1
  1174. package/link/retry/retryFunction.d.ts +2 -2
  1175. package/link/retry/retryFunction.js +2 -2
  1176. package/link/retry/retryFunction.js.map +1 -1
  1177. package/link/retry/retryLink.d.ts +4 -4
  1178. package/link/retry/retryLink.js +52 -65
  1179. package/link/retry/retryLink.js.map +1 -1
  1180. package/link/schema/index.d.ts +4 -4
  1181. package/link/schema/index.js +29 -33
  1182. package/link/schema/index.js.map +1 -1
  1183. package/link/subscriptions/index.d.ts +4 -4
  1184. package/link/subscriptions/index.js +21 -28
  1185. package/link/subscriptions/index.js.map +1 -1
  1186. package/link/utils/createOperation.d.ts +2 -2
  1187. package/link/utils/createOperation.js +6 -7
  1188. package/link/utils/createOperation.js.map +1 -1
  1189. package/link/utils/filterOperationVariables.d.ts +1 -1
  1190. package/link/utils/filterOperationVariables.js +5 -6
  1191. package/link/utils/filterOperationVariables.js.map +1 -1
  1192. package/link/utils/index.d.ts +1 -7
  1193. package/link/utils/index.js +1 -6
  1194. package/link/utils/index.js.map +1 -1
  1195. package/link/utils/transformOperation.d.ts +2 -2
  1196. package/link/utils/transformOperation.js +3 -3
  1197. package/link/utils/transformOperation.js.map +1 -1
  1198. package/link/utils/validateOperation.d.ts +2 -2
  1199. package/link/utils/validateOperation.js +5 -6
  1200. package/link/utils/validateOperation.js.map +1 -1
  1201. package/link/ws/index.d.ts +4 -4
  1202. package/link/ws/index.js +11 -15
  1203. package/link/ws/index.js.map +1 -1
  1204. package/masking/__benches__/types.bench.d.ts +1 -1
  1205. package/masking/__benches__/types.bench.js +85 -86
  1206. package/masking/__benches__/types.bench.js.map +1 -1
  1207. package/masking/index.d.ts +1 -1
  1208. package/masking/index.js +1 -1
  1209. package/masking/index.js.map +1 -1
  1210. package/masking/internal/types.d.ts +2 -2
  1211. package/masking/internal/types.js +1 -1
  1212. package/masking/internal/types.js.map +1 -1
  1213. package/masking/maskDefinition.d.ts +3 -3
  1214. package/masking/maskDefinition.js +30 -32
  1215. package/masking/maskDefinition.js.map +1 -1
  1216. package/masking/maskFragment.d.ts +2 -2
  1217. package/masking/maskFragment.js +12 -13
  1218. package/masking/maskFragment.js.map +1 -1
  1219. package/masking/maskOperation.d.ts +2 -2
  1220. package/masking/maskOperation.js +11 -11
  1221. package/masking/maskOperation.js.map +1 -1
  1222. package/masking/types.d.ts +2 -2
  1223. package/masking/types.js +1 -1
  1224. package/masking/types.js.map +1 -1
  1225. package/masking/utils.d.ts +1 -3
  1226. package/masking/utils.js +6 -8
  1227. package/masking/utils.js.map +1 -1
  1228. package/package.json +400 -112
  1229. package/react/context/ApolloConsumer.d.ts +2 -2
  1230. package/react/context/ApolloConsumer.js +6 -6
  1231. package/react/context/ApolloConsumer.js.map +1 -1
  1232. package/react/context/ApolloContext.d.ts +3 -9
  1233. package/react/context/ApolloContext.js +5 -12
  1234. package/react/context/ApolloContext.js.map +1 -1
  1235. package/react/context/ApolloProvider.d.ts +2 -2
  1236. package/react/context/ApolloProvider.js +11 -10
  1237. package/react/context/ApolloProvider.js.map +1 -1
  1238. package/react/context/index.d.ts +2 -3
  1239. package/react/context/index.js +2 -3
  1240. package/react/context/index.js.map +1 -1
  1241. package/react/hooks/constants.d.ts +1 -1
  1242. package/react/hooks/constants.js +2 -2
  1243. package/react/hooks/constants.js.map +1 -1
  1244. package/react/hooks/index.d.ts +2 -3
  1245. package/react/hooks/index.js +1 -2
  1246. package/react/hooks/index.js.map +1 -1
  1247. package/react/hooks/internal/__use.d.ts +1 -1
  1248. package/react/hooks/internal/__use.js +6 -6
  1249. package/react/hooks/internal/__use.js.map +1 -1
  1250. package/react/hooks/internal/index.d.ts +1 -2
  1251. package/react/hooks/internal/index.js +1 -2
  1252. package/react/hooks/internal/index.js.map +1 -1
  1253. package/react/hooks/internal/useDeepMemo.d.ts +1 -1
  1254. package/react/hooks/internal/useDeepMemo.js +4 -4
  1255. package/react/hooks/internal/useDeepMemo.js.map +1 -1
  1256. package/react/hooks/internal/useIsomorphicLayoutEffect.d.ts +1 -1
  1257. package/react/hooks/internal/useIsomorphicLayoutEffect.js +3 -3
  1258. package/react/hooks/internal/useIsomorphicLayoutEffect.js.map +1 -1
  1259. package/react/hooks/internal/useRenderGuard.d.ts +1 -1
  1260. package/react/hooks/internal/useRenderGuard.js +4 -4
  1261. package/react/hooks/internal/useRenderGuard.js.map +1 -1
  1262. package/react/hooks/internal/wrapHook.d.ts +5 -5
  1263. package/react/hooks/internal/wrapHook.js +5 -5
  1264. package/react/hooks/internal/wrapHook.js.map +1 -1
  1265. package/react/hooks/useApolloClient.d.ts +2 -2
  1266. package/react/hooks/useApolloClient.js +6 -6
  1267. package/react/hooks/useApolloClient.js.map +1 -1
  1268. package/react/hooks/useBackgroundQuery.d.ts +17 -17
  1269. package/react/hooks/useBackgroundQuery.js +29 -32
  1270. package/react/hooks/useBackgroundQuery.js.map +1 -1
  1271. package/react/hooks/useFragment.d.ts +6 -6
  1272. package/react/hooks/useFragment.js +41 -33
  1273. package/react/hooks/useFragment.js.map +1 -1
  1274. package/react/hooks/useLazyQuery.d.ts +279 -4
  1275. package/react/hooks/useLazyQuery.js +121 -89
  1276. package/react/hooks/useLazyQuery.js.map +1 -1
  1277. package/react/hooks/useLoadableQuery.d.ts +27 -27
  1278. package/react/hooks/useLoadableQuery.js +34 -38
  1279. package/react/hooks/useLoadableQuery.js.map +1 -1
  1280. package/react/hooks/useMutation.d.ts +4 -4
  1281. package/react/hooks/useMutation.js +54 -61
  1282. package/react/hooks/useMutation.js.map +1 -1
  1283. package/react/hooks/useQuery.d.ts +4 -37
  1284. package/react/hooks/useQuery.js +95 -225
  1285. package/react/hooks/useQuery.js.map +1 -1
  1286. package/react/hooks/useQueryRefHandlers.d.ts +15 -15
  1287. package/react/hooks/useQueryRefHandlers.js +14 -14
  1288. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  1289. package/react/hooks/useReactiveVar.d.ts +2 -2
  1290. package/react/hooks/useReactiveVar.js +2 -2
  1291. package/react/hooks/useReactiveVar.js.map +1 -1
  1292. package/react/hooks/useReadQuery.d.ts +5 -6
  1293. package/react/hooks/useReadQuery.js +13 -14
  1294. package/react/hooks/useReadQuery.js.map +1 -1
  1295. package/react/hooks/useSubscription.d.ts +5 -6
  1296. package/react/hooks/useSubscription.js +77 -79
  1297. package/react/hooks/useSubscription.js.map +1 -1
  1298. package/react/hooks/useSuspenseFragment.d.ts +4 -4
  1299. package/react/hooks/useSuspenseFragment.js +19 -22
  1300. package/react/hooks/useSuspenseFragment.js.map +1 -1
  1301. package/react/hooks/useSuspenseQuery.d.ts +8 -9
  1302. package/react/hooks/useSuspenseQuery.js +65 -67
  1303. package/react/hooks/useSuspenseQuery.js.map +1 -1
  1304. package/react/hooks/useSyncExternalStore.d.ts +1 -1
  1305. package/react/hooks/useSyncExternalStore.js +24 -24
  1306. package/react/hooks/useSyncExternalStore.js.map +1 -1
  1307. package/react/index.d.ts +3 -4
  1308. package/react/index.js +2 -3
  1309. package/react/index.js.map +1 -1
  1310. package/react/internal/cache/FragmentReference.d.ts +6 -5
  1311. package/react/internal/cache/FragmentReference.js +68 -63
  1312. package/react/internal/cache/FragmentReference.js.map +1 -1
  1313. package/react/internal/cache/QueryReference.d.ts +45 -45
  1314. package/react/internal/cache/QueryReference.js +144 -158
  1315. package/react/internal/cache/QueryReference.js.map +1 -1
  1316. package/react/internal/cache/SuspenseCache.d.ts +3 -3
  1317. package/react/internal/cache/SuspenseCache.js +19 -22
  1318. package/react/internal/cache/SuspenseCache.js.map +1 -1
  1319. package/react/internal/cache/getSuspenseCache.d.ts +4 -4
  1320. package/react/internal/cache/getSuspenseCache.js +3 -4
  1321. package/react/internal/cache/getSuspenseCache.js.map +1 -1
  1322. package/react/internal/cache/types.d.ts +1 -1
  1323. package/react/internal/cache/types.js +1 -1
  1324. package/react/internal/cache/types.js.map +1 -1
  1325. package/react/internal/index.d.ts +3 -3
  1326. package/react/internal/index.js +2 -2
  1327. package/react/internal/index.js.map +1 -1
  1328. package/react/parser/index.d.ts +1 -1
  1329. package/react/parser/index.js +27 -27
  1330. package/react/parser/index.js.map +1 -1
  1331. package/react/query-preloader/createQueryPreloader.d.ts +161 -161
  1332. package/react/query-preloader/createQueryPreloader.js +9 -9
  1333. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  1334. package/react/ssr/RenderPromises.d.ts +3 -3
  1335. package/react/ssr/RenderPromises.js +50 -57
  1336. package/react/ssr/RenderPromises.js.map +1 -1
  1337. package/react/ssr/getDataFromTree.d.ts +3 -2
  1338. package/react/ssr/getDataFromTree.js +16 -21
  1339. package/react/ssr/getDataFromTree.js.map +1 -1
  1340. package/react/ssr/index.d.ts +2 -2
  1341. package/react/ssr/index.js +2 -2
  1342. package/react/ssr/index.js.map +1 -1
  1343. package/react/ssr/renderToStringWithData.d.ts +1 -1
  1344. package/react/ssr/renderToStringWithData.js +2 -2
  1345. package/react/ssr/renderToStringWithData.js.map +1 -1
  1346. package/react/types/types.d.ts +469 -596
  1347. package/react/types/types.documentation.d.ts +30 -55
  1348. package/react/types/types.documentation.js +1 -1
  1349. package/react/types/types.documentation.js.map +1 -1
  1350. package/react/types/types.js +1 -1
  1351. package/react/types/types.js.map +1 -1
  1352. package/testing/core/index.d.ts +3 -5
  1353. package/testing/core/index.js +3 -5
  1354. package/testing/core/index.js.map +1 -1
  1355. package/testing/core/mocking/mockClient.d.ts +3 -3
  1356. package/testing/core/mocking/mockClient.js +8 -9
  1357. package/testing/core/mocking/mockClient.js.map +1 -1
  1358. package/testing/core/mocking/mockLink.d.ts +8 -10
  1359. package/testing/core/mocking/mockLink.js +73 -91
  1360. package/testing/core/mocking/mockLink.js.map +1 -1
  1361. package/testing/core/mocking/mockSubscriptionLink.d.ts +4 -7
  1362. package/testing/core/mocking/mockSubscriptionLink.js +31 -38
  1363. package/testing/core/mocking/mockSubscriptionLink.js.map +1 -1
  1364. package/testing/core/wait.d.ts +1 -1
  1365. package/testing/core/wait.js +5 -14
  1366. package/testing/core/wait.js.map +1 -1
  1367. package/testing/core/withConsoleSpy.d.ts +1 -1
  1368. package/testing/core/withConsoleSpy.js +13 -30
  1369. package/testing/core/withConsoleSpy.js.map +1 -1
  1370. package/testing/experimental/createSchemaFetch.d.ts +1 -1
  1371. package/testing/experimental/createSchemaFetch.js +40 -54
  1372. package/testing/experimental/createSchemaFetch.js.map +1 -1
  1373. package/testing/experimental/createTestSchema.d.ts +2 -2
  1374. package/testing/experimental/createTestSchema.js +14 -19
  1375. package/testing/experimental/createTestSchema.js.map +1 -1
  1376. package/testing/experimental/graphql-tools/utils.d.ts +1 -1
  1377. package/testing/experimental/graphql-tools/utils.js +51 -49
  1378. package/testing/experimental/graphql-tools/utils.js.map +1 -1
  1379. package/testing/experimental/graphql-tools/utils.test.d.ts +1 -1
  1380. package/testing/experimental/graphql-tools/utils.test.js +185 -126
  1381. package/testing/experimental/graphql-tools/utils.test.js.map +1 -1
  1382. package/testing/experimental/index.d.ts +1 -1
  1383. package/testing/experimental/index.js +1 -1
  1384. package/testing/experimental/index.js.map +1 -1
  1385. package/testing/index.d.ts +1 -4
  1386. package/testing/index.js +1 -3
  1387. package/testing/index.js.map +1 -1
  1388. package/testing/internal/ObservableStream.d.ts +3 -3
  1389. package/testing/internal/ObservableStream.js +46 -76
  1390. package/testing/internal/ObservableStream.js.map +1 -1
  1391. package/testing/internal/disposables/enableFakeTimers.d.ts +1 -1
  1392. package/testing/internal/disposables/enableFakeTimers.js +3 -3
  1393. package/testing/internal/disposables/enableFakeTimers.js.map +1 -1
  1394. package/testing/internal/disposables/index.d.ts +1 -1
  1395. package/testing/internal/disposables/index.js +1 -1
  1396. package/testing/internal/disposables/index.js.map +1 -1
  1397. package/testing/internal/disposables/spyOnConsole.d.ts +1 -1
  1398. package/testing/internal/disposables/spyOnConsole.js +12 -25
  1399. package/testing/internal/disposables/spyOnConsole.js.map +1 -1
  1400. package/testing/internal/disposables/withCleanup.d.ts +1 -1
  1401. package/testing/internal/disposables/withCleanup.js +12 -11
  1402. package/testing/internal/disposables/withCleanup.js.map +1 -1
  1403. package/testing/internal/disposables/withProdMode.d.ts +1 -1
  1404. package/testing/internal/disposables/withProdMode.js +9 -6
  1405. package/testing/internal/disposables/withProdMode.js.map +1 -1
  1406. package/testing/internal/incremental.d.ts +3 -10
  1407. package/testing/internal/incremental.js +31 -35
  1408. package/testing/internal/incremental.js.map +1 -1
  1409. package/testing/internal/index.d.ts +5 -6
  1410. package/testing/internal/index.js +4 -4
  1411. package/testing/internal/index.js.map +1 -1
  1412. package/testing/internal/messageChannelPolyfill.d.ts +2 -0
  1413. package/testing/internal/messageChannelPolyfill.js +16 -0
  1414. package/testing/internal/messageChannelPolyfill.js.map +1 -0
  1415. package/testing/internal/renderHelpers.d.ts +3 -12
  1416. package/testing/internal/renderHelpers.js +8 -22
  1417. package/testing/internal/renderHelpers.js.map +1 -1
  1418. package/testing/internal/rtl/actAsync.d.ts +1 -1
  1419. package/testing/internal/rtl/actAsync.js +5 -12
  1420. package/testing/internal/rtl/actAsync.js.map +1 -1
  1421. package/testing/internal/rtl/renderAsync.d.ts +1 -1
  1422. package/testing/internal/rtl/renderAsync.js +5 -16
  1423. package/testing/internal/rtl/renderAsync.js.map +1 -1
  1424. package/testing/internal/rtl/renderHookAsync.d.ts +1 -1
  1425. package/testing/internal/rtl/renderHookAsync.js +24 -37
  1426. package/testing/internal/rtl/renderHookAsync.js.map +1 -1
  1427. package/testing/internal/scenarios/index.d.ts +10 -10
  1428. package/testing/internal/scenarios/index.js +65 -41
  1429. package/testing/internal/scenarios/index.js.map +1 -1
  1430. package/testing/matchers/index.d.ts +1 -1
  1431. package/testing/matchers/index.js +23 -21
  1432. package/testing/matchers/index.js.map +1 -1
  1433. package/testing/matchers/toBeDisposed.d.ts +1 -1
  1434. package/testing/matchers/toBeDisposed.js +9 -10
  1435. package/testing/matchers/toBeDisposed.js.map +1 -1
  1436. package/testing/matchers/toBeGarbageCollected.d.ts +1 -1
  1437. package/testing/matchers/toBeGarbageCollected.js +37 -46
  1438. package/testing/matchers/toBeGarbageCollected.js.map +1 -1
  1439. package/testing/matchers/toComplete.d.ts +1 -1
  1440. package/testing/matchers/toComplete.js +25 -41
  1441. package/testing/matchers/toComplete.js.map +1 -1
  1442. package/testing/matchers/toEmitAnything.d.ts +1 -1
  1443. package/testing/matchers/toEmitAnything.js +28 -45
  1444. package/testing/matchers/toEmitAnything.js.map +1 -1
  1445. package/testing/matchers/toEmitApolloQueryResult.d.ts +2 -2
  1446. package/testing/matchers/toEmitApolloQueryResult.js +34 -49
  1447. package/testing/matchers/toEmitApolloQueryResult.js.map +1 -1
  1448. package/testing/matchers/toEmitError.d.ts +1 -1
  1449. package/testing/matchers/toEmitError.js +35 -52
  1450. package/testing/matchers/toEmitError.js.map +1 -1
  1451. package/testing/matchers/toEmitFetchResult.d.ts +2 -2
  1452. package/testing/matchers/toEmitFetchResult.js +34 -49
  1453. package/testing/matchers/toEmitFetchResult.js.map +1 -1
  1454. package/testing/matchers/toEmitMatchedValue.d.ts +1 -1
  1455. package/testing/matchers/toEmitMatchedValue.js +35 -50
  1456. package/testing/matchers/toEmitMatchedValue.js.map +1 -1
  1457. package/testing/matchers/toEmitNext.d.ts +1 -1
  1458. package/testing/matchers/toEmitNext.js +25 -41
  1459. package/testing/matchers/toEmitNext.js.map +1 -1
  1460. package/testing/matchers/toEmitValue.d.ts +1 -1
  1461. package/testing/matchers/toEmitValue.js +35 -51
  1462. package/testing/matchers/toEmitValue.js.map +1 -1
  1463. package/testing/matchers/toEmitValueStrict.d.ts +1 -1
  1464. package/testing/matchers/toEmitValueStrict.js +40 -54
  1465. package/testing/matchers/toEmitValueStrict.js.map +1 -1
  1466. package/testing/matchers/toEqualApolloQueryResult.d.ts +2 -2
  1467. package/testing/matchers/toEqualApolloQueryResult.js +11 -11
  1468. package/testing/matchers/toEqualApolloQueryResult.js.map +1 -1
  1469. package/testing/matchers/toEqualFetchResult.d.ts +2 -2
  1470. package/testing/matchers/toEqualFetchResult.js +11 -11
  1471. package/testing/matchers/toEqualFetchResult.js.map +1 -1
  1472. package/testing/matchers/toEqualLazyQueryResult.d.ts +10 -0
  1473. package/testing/matchers/toEqualLazyQueryResult.js +36 -0
  1474. package/testing/matchers/toEqualLazyQueryResult.js.map +1 -0
  1475. package/testing/matchers/toEqualQueryResult.d.ts +3 -3
  1476. package/testing/matchers/toEqualQueryResult.js +14 -18
  1477. package/testing/matchers/toEqualQueryResult.js.map +1 -1
  1478. package/testing/matchers/toHaveSuspenseCacheEntryUsing.d.ts +2 -2
  1479. package/testing/matchers/toHaveSuspenseCacheEntryUsing.js +13 -15
  1480. package/testing/matchers/toHaveSuspenseCacheEntryUsing.js.map +1 -1
  1481. package/testing/matchers/toMatchDocument.d.ts +2 -2
  1482. package/testing/matchers/toMatchDocument.js +14 -15
  1483. package/testing/matchers/toMatchDocument.js.map +1 -1
  1484. package/testing/react/MockedProvider.d.ts +9 -10
  1485. package/testing/react/MockedProvider.js +25 -33
  1486. package/testing/react/MockedProvider.js.map +1 -1
  1487. package/testing/react/index.d.ts +3 -0
  1488. package/testing/react/index.js +2 -0
  1489. package/testing/react/index.js.map +1 -0
  1490. package/utilities/caching/caches.d.ts +2 -2
  1491. package/utilities/caching/caches.js +10 -10
  1492. package/utilities/caching/caches.js.map +1 -1
  1493. package/utilities/caching/getMemoryInternals.d.ts +1 -1
  1494. package/utilities/caching/getMemoryInternals.js +44 -33
  1495. package/utilities/caching/getMemoryInternals.js.map +1 -1
  1496. package/utilities/caching/index.d.ts +1 -1
  1497. package/utilities/caching/index.js +1 -1
  1498. package/utilities/caching/index.js.map +1 -1
  1499. package/utilities/caching/sizes.d.ts +1 -1
  1500. package/utilities/caching/sizes.js +4 -5
  1501. package/utilities/caching/sizes.js.map +1 -1
  1502. package/utilities/common/arrays.d.ts +1 -1
  1503. package/utilities/common/arrays.js +2 -2
  1504. package/utilities/common/arrays.js.map +1 -1
  1505. package/utilities/common/canUse.d.ts +1 -5
  1506. package/utilities/common/canUse.js +7 -12
  1507. package/utilities/common/canUse.js.map +1 -1
  1508. package/utilities/common/canonicalStringify.d.ts +1 -1
  1509. package/utilities/common/canonicalStringify.js +16 -15
  1510. package/utilities/common/canonicalStringify.js.map +1 -1
  1511. package/utilities/common/cloneDeep.d.ts +1 -1
  1512. package/utilities/common/cloneDeep.js +12 -12
  1513. package/utilities/common/cloneDeep.js.map +1 -1
  1514. package/utilities/common/compact.d.ts +1 -1
  1515. package/utilities/common/compact.js +6 -10
  1516. package/utilities/common/compact.js.map +1 -1
  1517. package/utilities/common/errorHandling.d.ts +2 -2
  1518. package/utilities/common/errorHandling.js +5 -5
  1519. package/utilities/common/errorHandling.js.map +1 -1
  1520. package/utilities/common/incrementalResult.d.ts +2 -2
  1521. package/utilities/common/incrementalResult.js +11 -12
  1522. package/utilities/common/incrementalResult.js.map +1 -1
  1523. package/utilities/common/makeUniqueId.d.ts +1 -1
  1524. package/utilities/common/makeUniqueId.js +4 -4
  1525. package/utilities/common/makeUniqueId.js.map +1 -1
  1526. package/utilities/common/maybeDeepFreeze.d.ts +1 -1
  1527. package/utilities/common/maybeDeepFreeze.js +7 -6
  1528. package/utilities/common/maybeDeepFreeze.js.map +1 -1
  1529. package/utilities/common/mergeDeep.d.ts +1 -1
  1530. package/utilities/common/mergeDeep.js +27 -38
  1531. package/utilities/common/mergeDeep.js.map +1 -1
  1532. package/utilities/common/mergeOptions.d.ts +2 -2
  1533. package/utilities/common/mergeOptions.js +5 -3
  1534. package/utilities/common/mergeOptions.js.map +1 -1
  1535. package/utilities/common/objects.d.ts +1 -1
  1536. package/utilities/common/objects.js +1 -1
  1537. package/utilities/common/objects.js.map +1 -1
  1538. package/utilities/common/omitDeep.d.ts +1 -1
  1539. package/utilities/common/omitDeep.js +17 -18
  1540. package/utilities/common/omitDeep.js.map +1 -1
  1541. package/utilities/common/stringifyForDisplay.d.ts +1 -1
  1542. package/utilities/common/stringifyForDisplay.js +4 -5
  1543. package/utilities/common/stringifyForDisplay.js.map +1 -1
  1544. package/utilities/common/stripTypename.d.ts +1 -1
  1545. package/utilities/common/stripTypename.js +1 -1
  1546. package/utilities/common/stripTypename.js.map +1 -1
  1547. package/utilities/environment/index.d.ts +2 -0
  1548. package/utilities/environment/index.development.d.ts +2 -0
  1549. package/utilities/environment/index.development.js +2 -0
  1550. package/utilities/environment/index.development.js.map +1 -0
  1551. package/utilities/environment/index.js +2 -0
  1552. package/utilities/environment/index.js.map +1 -0
  1553. package/utilities/environment/index.production.d.ts +2 -0
  1554. package/utilities/environment/index.production.js +2 -0
  1555. package/utilities/environment/index.production.js.map +1 -0
  1556. package/utilities/globals/global.d.ts +1 -6
  1557. package/utilities/globals/global.js +6 -6
  1558. package/utilities/globals/global.js.map +1 -1
  1559. package/utilities/globals/index.d.ts +1 -9
  1560. package/utilities/globals/index.js +1 -12
  1561. package/utilities/globals/index.js.map +1 -1
  1562. package/utilities/globals/maybe.d.ts +1 -1
  1563. package/utilities/globals/maybe.js +2 -2
  1564. package/utilities/globals/maybe.js.map +1 -1
  1565. package/utilities/graphql/DocumentTransform.d.ts +1 -1
  1566. package/utilities/graphql/DocumentTransform.js +53 -48
  1567. package/utilities/graphql/DocumentTransform.js.map +1 -1
  1568. package/utilities/graphql/directives.d.ts +2 -2
  1569. package/utilities/graphql/directives.js +32 -45
  1570. package/utilities/graphql/directives.js.map +1 -1
  1571. package/utilities/graphql/fragments.d.ts +1 -1
  1572. package/utilities/graphql/fragments.js +24 -22
  1573. package/utilities/graphql/fragments.js.map +1 -1
  1574. package/utilities/graphql/getFromAST.d.ts +2 -2
  1575. package/utilities/graphql/getFromAST.js +25 -32
  1576. package/utilities/graphql/getFromAST.js.map +1 -1
  1577. package/utilities/graphql/operations.d.ts +2 -2
  1578. package/utilities/graphql/operations.js +2 -3
  1579. package/utilities/graphql/operations.js.map +1 -1
  1580. package/utilities/graphql/print.d.ts +1 -1
  1581. package/utilities/graphql/print.js +9 -8
  1582. package/utilities/graphql/print.js.map +1 -1
  1583. package/utilities/graphql/storeUtils.d.ts +2 -2
  1584. package/utilities/graphql/storeUtils.js +38 -51
  1585. package/utilities/graphql/storeUtils.js.map +1 -1
  1586. package/utilities/graphql/transform.d.ts +2 -2
  1587. package/utilities/graphql/transform.js +129 -134
  1588. package/utilities/graphql/transform.js.map +1 -1
  1589. package/utilities/index.d.ts +11 -16
  1590. package/utilities/index.js +10 -14
  1591. package/utilities/index.js.map +1 -1
  1592. package/utilities/internal/index.d.ts +2 -0
  1593. package/utilities/internal/index.js +2 -0
  1594. package/utilities/internal/index.js.map +1 -0
  1595. package/utilities/internal/observables.d.ts +14 -0
  1596. package/utilities/internal/observables.js +26 -0
  1597. package/utilities/internal/observables.js.map +1 -0
  1598. package/utilities/invariant/index.d.ts +47 -0
  1599. package/utilities/invariant/index.development.d.ts +4 -0
  1600. package/utilities/invariant/index.development.js +11 -0
  1601. package/utilities/invariant/index.development.js.map +1 -0
  1602. package/utilities/invariant/index.js +89 -0
  1603. package/utilities/invariant/index.js.map +1 -0
  1604. package/utilities/policies/pagination.d.ts +6 -6
  1605. package/utilities/policies/pagination.js +65 -49
  1606. package/utilities/policies/pagination.js.map +1 -1
  1607. package/utilities/promises/decoration.d.ts +5 -4
  1608. package/utilities/promises/decoration.js +9 -9
  1609. package/utilities/promises/decoration.js.map +1 -1
  1610. package/utilities/promises/preventUnhandledRejection.d.ts +1 -1
  1611. package/utilities/promises/preventUnhandledRejection.js +2 -2
  1612. package/utilities/promises/preventUnhandledRejection.js.map +1 -1
  1613. package/utilities/subscriptions/relay/index.d.ts +8 -4
  1614. package/utilities/subscriptions/relay/index.js +27 -18
  1615. package/utilities/subscriptions/relay/index.js.map +1 -1
  1616. package/utilities/types/DeepOmit.d.ts +2 -2
  1617. package/utilities/types/DeepOmit.js +1 -1
  1618. package/utilities/types/DeepOmit.js.map +1 -1
  1619. package/utilities/types/DeepPartial.d.ts +1 -1
  1620. package/utilities/types/DeepPartial.js +1 -1
  1621. package/utilities/types/DeepPartial.js.map +1 -1
  1622. package/utilities/types/IsStrictlyAny.d.ts +1 -1
  1623. package/utilities/types/IsStrictlyAny.js +1 -1
  1624. package/utilities/types/IsStrictlyAny.js.map +1 -1
  1625. package/utilities/types/NoInfer.d.ts +2 -2
  1626. package/utilities/types/NoInfer.js +1 -1
  1627. package/utilities/types/NoInfer.js.map +1 -1
  1628. package/utilities/types/OnlyRequiredProperties.d.ts +1 -1
  1629. package/utilities/types/OnlyRequiredProperties.js +1 -1
  1630. package/utilities/types/OnlyRequiredProperties.js.map +1 -1
  1631. package/utilities/types/Prettify.d.ts +1 -1
  1632. package/utilities/types/Prettify.js +1 -1
  1633. package/utilities/types/Prettify.js.map +1 -1
  1634. package/utilities/types/Primitive.d.ts +1 -1
  1635. package/utilities/types/Primitive.js +1 -1
  1636. package/utilities/types/Primitive.js.map +1 -1
  1637. package/utilities/types/RemoveIndexSignature.d.ts +1 -1
  1638. package/utilities/types/RemoveIndexSignature.js +1 -1
  1639. package/utilities/types/RemoveIndexSignature.js.map +1 -1
  1640. package/utilities/types/TODO.d.ts +1 -1
  1641. package/utilities/types/TODO.js +1 -1
  1642. package/utilities/types/TODO.js.map +1 -1
  1643. package/utilities/types/UnionToIntersection.d.ts +1 -1
  1644. package/utilities/types/UnionToIntersection.js +1 -1
  1645. package/utilities/types/UnionToIntersection.js.map +1 -1
  1646. package/version.d.ts +2 -2
  1647. package/version.js +2 -2
  1648. package/version.js.map +1 -1
  1649. package/apollo-client.cjs +0 -9476
  1650. package/apollo-client.cjs.map +0 -1
  1651. package/apollo-client.min.cjs +0 -1
  1652. package/cache/cache.cjs +0 -2691
  1653. package/cache/cache.cjs.map +0 -1
  1654. package/cache/cache.cjs.native.js +0 -2691
  1655. package/cache/cache.d.cts +0 -1
  1656. package/cache/package.json +0 -8
  1657. package/config/jest/areApolloErrorsEqual.d.ts +0 -3
  1658. package/config/jest/areApolloErrorsEqual.js +0 -23
  1659. package/config/jest/areApolloErrorsEqual.js.map +0 -1
  1660. package/core/core.cjs +0 -2761
  1661. package/core/core.cjs.map +0 -1
  1662. package/core/core.cjs.native.js +0 -2761
  1663. package/core/core.d.cts +0 -1
  1664. package/core/package.json +0 -8
  1665. package/dev/dev.cjs +0 -628
  1666. package/dev/dev.cjs.map +0 -1
  1667. package/dev/dev.cjs.native.js +0 -628
  1668. package/dev/dev.d.cts +0 -1
  1669. package/dev/package.json +0 -8
  1670. package/errors/errors.cjs +0 -55
  1671. package/errors/errors.cjs.map +0 -1
  1672. package/errors/errors.cjs.native.js +0 -55
  1673. package/errors/errors.d.cts +0 -1
  1674. package/errors/package.json +0 -8
  1675. package/link/batch/batch.cjs +0 -159
  1676. package/link/batch/batch.cjs.map +0 -1
  1677. package/link/batch/batch.cjs.native.js +0 -159
  1678. package/link/batch/batch.d.cts +0 -1
  1679. package/link/batch/package.json +0 -8
  1680. package/link/batch-http/batch-http.cjs +0 -161
  1681. package/link/batch-http/batch-http.cjs.map +0 -1
  1682. package/link/batch-http/batch-http.cjs.native.js +0 -161
  1683. package/link/batch-http/batch-http.d.cts +0 -1
  1684. package/link/batch-http/package.json +0 -8
  1685. package/link/context/context.cjs +0 -38
  1686. package/link/context/context.cjs.map +0 -1
  1687. package/link/context/context.cjs.native.js +0 -38
  1688. package/link/context/context.d.cts +0 -1
  1689. package/link/context/package.json +0 -8
  1690. package/link/core/core.cjs +0 -115
  1691. package/link/core/core.cjs.map +0 -1
  1692. package/link/core/core.cjs.native.js +0 -115
  1693. package/link/core/core.d.cts +0 -1
  1694. package/link/core/package.json +0 -8
  1695. package/link/error/error.cjs +0 -100
  1696. package/link/error/error.cjs.map +0 -1
  1697. package/link/error/error.cjs.native.js +0 -100
  1698. package/link/error/error.d.cts +0 -1
  1699. package/link/error/package.json +0 -8
  1700. package/link/http/http.cjs +0 -634
  1701. package/link/http/http.cjs.map +0 -1
  1702. package/link/http/http.cjs.native.js +0 -634
  1703. package/link/http/http.d.cts +0 -1
  1704. package/link/http/package.json +0 -8
  1705. package/link/persisted-queries/package.json +0 -8
  1706. package/link/persisted-queries/persisted-queries.cjs +0 -194
  1707. package/link/persisted-queries/persisted-queries.cjs.map +0 -1
  1708. package/link/persisted-queries/persisted-queries.cjs.native.js +0 -194
  1709. package/link/persisted-queries/persisted-queries.d.cts +0 -1
  1710. package/link/remove-typename/package.json +0 -8
  1711. package/link/remove-typename/remove-typename.cjs +0 -100
  1712. package/link/remove-typename/remove-typename.cjs.map +0 -1
  1713. package/link/remove-typename/remove-typename.cjs.native.js +0 -100
  1714. package/link/remove-typename/remove-typename.d.cts +0 -1
  1715. package/link/retry/package.json +0 -8
  1716. package/link/retry/retry.cjs +0 -123
  1717. package/link/retry/retry.cjs.map +0 -1
  1718. package/link/retry/retry.cjs.native.js +0 -123
  1719. package/link/retry/retry.d.cts +0 -1
  1720. package/link/schema/package.json +0 -8
  1721. package/link/schema/schema.cjs +0 -61
  1722. package/link/schema/schema.cjs.map +0 -1
  1723. package/link/schema/schema.cjs.native.js +0 -61
  1724. package/link/schema/schema.d.cts +0 -1
  1725. package/link/subscriptions/package.json +0 -8
  1726. package/link/subscriptions/subscriptions.cjs +0 -50
  1727. package/link/subscriptions/subscriptions.cjs.map +0 -1
  1728. package/link/subscriptions/subscriptions.cjs.native.js +0 -50
  1729. package/link/subscriptions/subscriptions.d.cts +0 -1
  1730. package/link/utils/fromError.d.ts +0 -3
  1731. package/link/utils/fromError.js +0 -7
  1732. package/link/utils/fromError.js.map +0 -1
  1733. package/link/utils/fromPromise.d.ts +0 -3
  1734. package/link/utils/fromPromise.js +0 -12
  1735. package/link/utils/fromPromise.js.map +0 -1
  1736. package/link/utils/package.json +0 -8
  1737. package/link/utils/throwServerError.d.ts +0 -7
  1738. package/link/utils/throwServerError.js +0 -9
  1739. package/link/utils/throwServerError.js.map +0 -1
  1740. package/link/utils/toPromise.d.ts +0 -3
  1741. package/link/utils/toPromise.js +0 -19
  1742. package/link/utils/toPromise.js.map +0 -1
  1743. package/link/utils/utils.cjs +0 -134
  1744. package/link/utils/utils.cjs.map +0 -1
  1745. package/link/utils/utils.cjs.native.js +0 -134
  1746. package/link/utils/utils.d.cts +0 -1
  1747. package/link/ws/package.json +0 -8
  1748. package/link/ws/ws.cjs +0 -28
  1749. package/link/ws/ws.cjs.map +0 -1
  1750. package/link/ws/ws.cjs.native.js +0 -28
  1751. package/link/ws/ws.d.cts +0 -1
  1752. package/main.cjs +0 -16
  1753. package/main.cjs.map +0 -1
  1754. package/main.cjs.native.js +0 -16
  1755. package/main.d.cts +0 -1
  1756. package/masking/masking.cjs +0 -205
  1757. package/masking/masking.cjs.map +0 -1
  1758. package/masking/masking.cjs.native.js +0 -205
  1759. package/masking/masking.d.cts +0 -1
  1760. package/masking/package.json +0 -8
  1761. package/react/components/Mutation.d.ts +0 -18
  1762. package/react/components/Mutation.js +0 -28
  1763. package/react/components/Mutation.js.map +0 -1
  1764. package/react/components/Query.d.ts +0 -18
  1765. package/react/components/Query.js +0 -29
  1766. package/react/components/Query.js.map +0 -1
  1767. package/react/components/Subscription.d.ts +0 -18
  1768. package/react/components/Subscription.js +0 -23
  1769. package/react/components/Subscription.js.map +0 -1
  1770. package/react/components/components.cjs +0 -81
  1771. package/react/components/components.cjs.map +0 -1
  1772. package/react/components/components.cjs.native.js +0 -81
  1773. package/react/components/components.d.cts +0 -1
  1774. package/react/components/index.d.ts +0 -5
  1775. package/react/components/index.js +0 -4
  1776. package/react/components/index.js.map +0 -1
  1777. package/react/components/package.json +0 -8
  1778. package/react/components/types.d.ts +0 -21
  1779. package/react/components/types.js +0 -2
  1780. package/react/components/types.js.map +0 -1
  1781. package/react/context/context.cjs +0 -64
  1782. package/react/context/context.cjs.map +0 -1
  1783. package/react/context/context.cjs.native.js +0 -64
  1784. package/react/context/context.d.cts +0 -1
  1785. package/react/context/package.json +0 -8
  1786. package/react/hoc/graphql.d.ts +0 -11
  1787. package/react/hoc/graphql.js +0 -22
  1788. package/react/hoc/graphql.js.map +0 -1
  1789. package/react/hoc/hoc-utils.d.ts +0 -17
  1790. package/react/hoc/hoc-utils.js +0 -48
  1791. package/react/hoc/hoc-utils.js.map +0 -1
  1792. package/react/hoc/hoc.cjs +0 -322
  1793. package/react/hoc/hoc.cjs.map +0 -1
  1794. package/react/hoc/hoc.cjs.native.js +0 -322
  1795. package/react/hoc/hoc.d.cts +0 -1
  1796. package/react/hoc/index.d.ts +0 -8
  1797. package/react/hoc/index.js +0 -7
  1798. package/react/hoc/index.js.map +0 -1
  1799. package/react/hoc/mutation-hoc.d.ts +0 -12
  1800. package/react/hoc/mutation-hoc.js +0 -83
  1801. package/react/hoc/mutation-hoc.js.map +0 -1
  1802. package/react/hoc/package.json +0 -8
  1803. package/react/hoc/query-hoc.d.ts +0 -10
  1804. package/react/hoc/query-hoc.js +0 -81
  1805. package/react/hoc/query-hoc.js.map +0 -1
  1806. package/react/hoc/subscription-hoc.d.ts +0 -10
  1807. package/react/hoc/subscription-hoc.js +0 -90
  1808. package/react/hoc/subscription-hoc.js.map +0 -1
  1809. package/react/hoc/types.d.ts +0 -42
  1810. package/react/hoc/types.js +0 -2
  1811. package/react/hoc/types.js.map +0 -1
  1812. package/react/hoc/withApollo.d.ts +0 -9
  1813. package/react/hoc/withApollo.js +0 -48
  1814. package/react/hoc/withApollo.js.map +0 -1
  1815. package/react/hooks/hooks.cjs +0 -1260
  1816. package/react/hooks/hooks.cjs.map +0 -1
  1817. package/react/hooks/hooks.cjs.native.js +0 -1260
  1818. package/react/hooks/hooks.d.cts +0 -1
  1819. package/react/hooks/package.json +0 -8
  1820. package/react/internal/internal.cjs +0 -533
  1821. package/react/internal/internal.cjs.map +0 -1
  1822. package/react/internal/internal.cjs.native.js +0 -533
  1823. package/react/internal/internal.d.cts +0 -1
  1824. package/react/internal/package.json +0 -8
  1825. package/react/package.json +0 -8
  1826. package/react/parser/package.json +0 -8
  1827. package/react/parser/parser.cjs +0 -122
  1828. package/react/parser/parser.cjs.map +0 -1
  1829. package/react/parser/parser.cjs.native.js +0 -122
  1830. package/react/parser/parser.d.cts +0 -1
  1831. package/react/react.cjs +0 -45
  1832. package/react/react.cjs.map +0 -1
  1833. package/react/react.cjs.native.js +0 -45
  1834. package/react/react.d.cts +0 -1
  1835. package/react/ssr/package.json +0 -8
  1836. package/react/ssr/ssr.cjs +0 -150
  1837. package/react/ssr/ssr.cjs.map +0 -1
  1838. package/react/ssr/ssr.cjs.native.js +0 -150
  1839. package/react/ssr/ssr.d.cts +0 -1
  1840. package/testing/core/core.cjs +0 -370
  1841. package/testing/core/core.cjs.map +0 -1
  1842. package/testing/core/core.cjs.native.js +0 -370
  1843. package/testing/core/core.d.cts +0 -1
  1844. package/testing/core/itAsync.d.ts +0 -6
  1845. package/testing/core/itAsync.js +0 -23
  1846. package/testing/core/itAsync.js.map +0 -1
  1847. package/testing/core/mocking/mockFetch.d.ts +0 -24
  1848. package/testing/core/mocking/mockFetch.js +0 -87
  1849. package/testing/core/mocking/mockFetch.js.map +0 -1
  1850. package/testing/core/package.json +0 -8
  1851. package/testing/core/subscribeAndCount.d.ts +0 -3
  1852. package/testing/core/subscribeAndCount.js +0 -21
  1853. package/testing/core/subscribeAndCount.js.map +0 -1
  1854. package/testing/core/wrap.d.ts +0 -4
  1855. package/testing/core/wrap.js +0 -30
  1856. package/testing/core/wrap.js.map +0 -1
  1857. package/testing/experimental/experimental.cjs +0 -276
  1858. package/testing/experimental/experimental.cjs.map +0 -1
  1859. package/testing/experimental/experimental.cjs.native.js +0 -276
  1860. package/testing/experimental/experimental.d.cts +0 -1
  1861. package/testing/experimental/package.json +0 -8
  1862. package/testing/package.json +0 -8
  1863. package/testing/testing.cjs +0 -64
  1864. package/testing/testing.cjs.map +0 -1
  1865. package/testing/testing.cjs.native.js +0 -64
  1866. package/testing/testing.d.cts +0 -1
  1867. package/utilities/globals/globals.cjs +0 -119
  1868. package/utilities/globals/globals.cjs.map +0 -1
  1869. package/utilities/globals/globals.cjs.native.js +0 -119
  1870. package/utilities/globals/globals.d.cts +0 -1
  1871. package/utilities/globals/invariantWrappers.d.ts +0 -64
  1872. package/utilities/globals/invariantWrappers.js +0 -84
  1873. package/utilities/globals/invariantWrappers.js.map +0 -1
  1874. package/utilities/globals/package.json +0 -8
  1875. package/utilities/observables/Concast.d.ts +0 -28
  1876. package/utilities/observables/Concast.js +0 -216
  1877. package/utilities/observables/Concast.js.map +0 -1
  1878. package/utilities/observables/Observable.d.ts +0 -6
  1879. package/utilities/observables/Observable.js +0 -17
  1880. package/utilities/observables/Observable.js.map +0 -1
  1881. package/utilities/observables/asyncMap.d.ts +0 -3
  1882. package/utilities/observables/asyncMap.js +0 -44
  1883. package/utilities/observables/asyncMap.js.map +0 -1
  1884. package/utilities/observables/iteration.d.ts +0 -3
  1885. package/utilities/observables/iteration.js +0 -9
  1886. package/utilities/observables/iteration.js.map +0 -1
  1887. package/utilities/observables/subclassing.d.ts +0 -3
  1888. package/utilities/observables/subclassing.js +0 -27
  1889. package/utilities/observables/subclassing.js.map +0 -1
  1890. package/utilities/package.json +0 -8
  1891. package/utilities/subscriptions/relay/package.json +0 -8
  1892. package/utilities/subscriptions/relay/relay.cjs +0 -372
  1893. package/utilities/subscriptions/relay/relay.cjs.map +0 -1
  1894. package/utilities/subscriptions/relay/relay.cjs.native.js +0 -372
  1895. package/utilities/subscriptions/relay/relay.d.cts +0 -1
  1896. package/utilities/subscriptions/shared.d.ts +0 -9
  1897. package/utilities/subscriptions/shared.js +0 -7
  1898. package/utilities/subscriptions/shared.js.map +0 -1
  1899. package/utilities/subscriptions/urql/index.d.ts +0 -7
  1900. package/utilities/subscriptions/urql/index.js +0 -40
  1901. package/utilities/subscriptions/urql/index.js.map +0 -1
  1902. package/utilities/subscriptions/urql/package.json +0 -8
  1903. package/utilities/subscriptions/urql/urql.cjs +0 -368
  1904. package/utilities/subscriptions/urql/urql.cjs.map +0 -1
  1905. package/utilities/subscriptions/urql/urql.cjs.native.js +0 -368
  1906. package/utilities/subscriptions/urql/urql.d.cts +0 -1
  1907. package/utilities/utilities.cjs +0 -1809
  1908. package/utilities/utilities.cjs.map +0 -1
  1909. package/utilities/utilities.cjs.native.js +0 -1809
  1910. package/utilities/utilities.d.cts +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ObservableQuery.js","sourceRoot":"","sources":["../../src/core/ObservableQuery.ts"],"names":[],"mappings":"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","sourcesContent":["import { invariant } from \"../utilities/globals/index.js\";\nimport type { DocumentNode } from \"graphql\";\nimport { equal } from \"@wry/equality\";\n\nimport { NetworkStatus, isNetworkRequestInFlight } from \"./networkStatus.js\";\nimport type {\n Concast,\n Observer,\n ObservableSubscription,\n} from \"../utilities/index.js\";\nimport {\n cloneDeep,\n compact,\n getOperationDefinition,\n Observable,\n iterateObserversSafely,\n fixObservableSubclass,\n getQueryDefinition,\n preventUnhandledRejection,\n} from \"../utilities/index.js\";\nimport { ApolloError, isApolloError } from \"../errors/index.js\";\nimport type { QueryManager } from \"./QueryManager.js\";\nimport type {\n ApolloQueryResult,\n OperationVariables,\n TypedDocumentNode,\n} from \"./types.js\";\nimport type {\n WatchQueryOptions,\n FetchMoreQueryOptions,\n SubscribeToMoreOptions,\n NextFetchPolicyContext,\n WatchQueryFetchPolicy,\n UpdateQueryMapFn,\n UpdateQueryOptions,\n} from \"./watchQueryOptions.js\";\nimport type { QueryInfo } from \"./QueryInfo.js\";\nimport type { MissingFieldError } from \"../cache/index.js\";\nimport type { MissingTree } from \"../cache/core/types/common.js\";\nimport { equalByQuery } from \"./equalByQuery.js\";\nimport type { TODO } from \"../utilities/types/TODO.js\";\nimport type { MaybeMasked, Unmasked } from \"../masking/index.js\";\n\nconst { assign, hasOwnProperty } = Object;\n\nexport interface FetchMoreOptions<\n TData = any,\n TVariables = OperationVariables,\n> {\n updateQuery?: (\n previousQueryResult: TData,\n options: {\n fetchMoreResult?: TData;\n variables?: TVariables;\n }\n ) => TData;\n}\n\ninterface Last<TData, TVariables> {\n result: ApolloQueryResult<TData>;\n variables?: TVariables;\n error?: ApolloError;\n}\n\nexport class ObservableQuery<\n TData = any,\n TVariables extends OperationVariables = OperationVariables,\n> extends Observable<ApolloQueryResult<MaybeMasked<TData>>> {\n public readonly options: WatchQueryOptions<TVariables, TData>;\n public readonly queryId: string;\n public readonly queryName?: string;\n\n // The `query` computed property will always reflect the document transformed\n // by the last run query. `this.options.query` will always reflect the raw\n // untransformed query to ensure document transforms with runtime conditionals\n // are run on the original document.\n public get query(): TypedDocumentNode<TData, TVariables> {\n return this.lastQuery || this.options.query;\n }\n\n // Computed shorthand for this.options.variables, preserved for\n // backwards compatibility.\n /**\n * An object containing the variables that were provided for the query.\n */\n public get variables(): TVariables | undefined {\n return this.options.variables;\n }\n\n private isTornDown: boolean;\n private queryManager: QueryManager<any>;\n private observers = new Set<\n Observer<ApolloQueryResult<MaybeMasked<TData>>>\n >();\n private subscriptions = new Set<ObservableSubscription>();\n\n private waitForOwnResult: boolean;\n private last?: Last<TData, TVariables>;\n private lastQuery?: DocumentNode;\n\n private queryInfo: QueryInfo;\n\n // When this.concast is defined, this.observer is the Observer currently\n // subscribed to that Concast.\n private concast?: Concast<ApolloQueryResult<TData>>;\n private observer?: Observer<ApolloQueryResult<TData>>;\n\n private pollingInfo?: {\n interval: number;\n timeout: ReturnType<typeof setTimeout>;\n };\n\n constructor({\n queryManager,\n queryInfo,\n options,\n }: {\n queryManager: QueryManager<any>;\n queryInfo: QueryInfo;\n options: WatchQueryOptions<TVariables, TData>;\n }) {\n super((observer: Observer<ApolloQueryResult<MaybeMasked<TData>>>) => {\n // Zen Observable has its own error function, so in order to log correctly\n // we need to provide a custom error callback.\n try {\n var subObserver = (observer as any)._subscription._observer;\n if (subObserver && !subObserver.error) {\n subObserver.error = defaultSubscriptionObserverErrorCallback;\n }\n } catch {}\n\n const first = !this.observers.size;\n this.observers.add(observer);\n\n // Deliver most recent error or result.\n const last = this.last;\n if (last && last.error) {\n observer.error && observer.error(last.error);\n } else if (last && last.result) {\n observer.next && observer.next(this.maskResult(last.result));\n }\n\n // Initiate observation of this query if it hasn't been reported to\n // the QueryManager yet.\n if (first) {\n // Blindly catching here prevents unhandled promise rejections,\n // and is safe because the ObservableQuery handles this error with\n // this.observer.error, so we're not just swallowing the error by\n // ignoring it here.\n this.reobserve().catch(() => {});\n }\n\n return () => {\n if (this.observers.delete(observer) && !this.observers.size) {\n this.tearDownQuery();\n }\n };\n });\n\n // related classes\n this.queryInfo = queryInfo;\n this.queryManager = queryManager;\n\n // active state\n this.waitForOwnResult = skipCacheDataFor(options.fetchPolicy);\n this.isTornDown = false;\n\n this.subscribeToMore = this.subscribeToMore.bind(this);\n this.maskResult = this.maskResult.bind(this);\n\n const {\n watchQuery: { fetchPolicy: defaultFetchPolicy = \"cache-first\" } = {},\n } = queryManager.defaultOptions;\n\n const {\n fetchPolicy = defaultFetchPolicy,\n // Make sure we don't store \"standby\" as the initialFetchPolicy.\n initialFetchPolicy = fetchPolicy === \"standby\" ? defaultFetchPolicy : (\n fetchPolicy\n ),\n } = options;\n\n this.options = {\n ...options,\n\n // Remember the initial options.fetchPolicy so we can revert back to this\n // policy when variables change. This information can also be specified\n // (or overridden) by providing options.initialFetchPolicy explicitly.\n initialFetchPolicy,\n\n // This ensures this.options.fetchPolicy always has a string value, in\n // case options.fetchPolicy was not provided.\n fetchPolicy,\n };\n\n this.queryId = queryInfo.queryId || queryManager.generateQueryId();\n\n const opDef = getOperationDefinition(this.query);\n this.queryName = opDef && opDef.name && opDef.name.value;\n }\n\n public result(): Promise<ApolloQueryResult<MaybeMasked<TData>>> {\n return new Promise((resolve, reject) => {\n // TODO: this code doesn’t actually make sense insofar as the observer\n // will never exist in this.observers due how zen-observable wraps observables.\n // https://github.com/zenparsing/zen-observable/blob/master/src/Observable.js#L169\n const observer: Observer<ApolloQueryResult<MaybeMasked<TData>>> = {\n next: (result) => {\n resolve(result);\n\n // Stop the query within the QueryManager if we can before\n // this function returns.\n //\n // We do this in order to prevent observers piling up within\n // the QueryManager. Notice that we only fully unsubscribe\n // from the subscription in a setTimeout(..., 0) call. This call can\n // actually be handled by the browser at a much later time. If queries\n // are fired in the meantime, observers that should have been removed\n // from the QueryManager will continue to fire, causing an unnecessary\n // performance hit.\n this.observers.delete(observer);\n if (!this.observers.size) {\n this.queryManager.removeQuery(this.queryId);\n }\n\n setTimeout(() => {\n subscription.unsubscribe();\n }, 0);\n },\n error: reject,\n };\n const subscription = this.subscribe(observer);\n });\n }\n\n /** @internal */\n public resetDiff() {\n this.queryInfo.resetDiff();\n }\n\n private getCurrentFullResult(\n saveAsLastResult = true\n ): ApolloQueryResult<TData> {\n // Use the last result as long as the variables match this.variables.\n const lastResult = this.getLastResult(true);\n\n const networkStatus =\n this.queryInfo.networkStatus ||\n (lastResult && lastResult.networkStatus) ||\n NetworkStatus.ready;\n\n const result = {\n ...lastResult,\n loading: isNetworkRequestInFlight(networkStatus),\n networkStatus,\n } as ApolloQueryResult<TData>;\n\n const { fetchPolicy = \"cache-first\" } = this.options;\n if (\n // These fetch policies should never deliver data from the cache, unless\n // redelivering a previously delivered result.\n skipCacheDataFor(fetchPolicy) ||\n // If this.options.query has @client(always: true) fields, we cannot\n // trust diff.result, since it was read from the cache without running\n // local resolvers (and it's too late to run resolvers now, since we must\n // return a result synchronously).\n this.queryManager.getDocumentInfo(this.query).hasForcedResolvers\n ) {\n // Fall through.\n } else if (this.waitForOwnResult) {\n // This would usually be a part of `QueryInfo.getDiff()`.\n // which we skip in the waitForOwnResult case since we are not\n // interested in the diff.\n this.queryInfo[\"updateWatch\"]();\n } else {\n const diff = this.queryInfo.getDiff();\n\n if (diff.complete || this.options.returnPartialData) {\n result.data = diff.result;\n }\n\n if (equal(result.data, {})) {\n result.data = void 0 as any;\n }\n\n if (diff.complete) {\n // Similar to setting result.partial to false, but taking advantage of the\n // falsiness of missing fields.\n delete result.partial;\n\n // If the diff is complete, and we're using a FetchPolicy that\n // terminates after a complete cache read, we can assume the next result\n // we receive will have NetworkStatus.ready and !loading.\n if (\n diff.complete &&\n result.networkStatus === NetworkStatus.loading &&\n (fetchPolicy === \"cache-first\" || fetchPolicy === \"cache-only\")\n ) {\n result.networkStatus = NetworkStatus.ready;\n result.loading = false;\n }\n } else {\n result.partial = true;\n }\n\n // We need to check for both both `error` and `errors` field because there\n // are cases where sometimes `error` is set, but not `errors` and\n // vice-versa. This will be updated in the next major version when\n // `errors` is deprecated in favor of `error`.\n if (\n result.networkStatus === NetworkStatus.ready &&\n (result.error || result.errors)\n ) {\n result.networkStatus = NetworkStatus.error;\n }\n\n if (\n __DEV__ &&\n !diff.complete &&\n !this.options.partialRefetch &&\n !result.loading &&\n !result.data &&\n !result.error\n ) {\n logMissingFieldErrors(diff.missing);\n }\n }\n\n if (saveAsLastResult) {\n this.updateLastResult(result);\n }\n\n return result;\n }\n\n public getCurrentResult(\n saveAsLastResult = true\n ): ApolloQueryResult<MaybeMasked<TData>> {\n return this.maskResult(this.getCurrentFullResult(saveAsLastResult));\n }\n\n // Compares newResult to the snapshot we took of this.lastResult when it was\n // first received.\n public isDifferentFromLastResult(\n newResult: ApolloQueryResult<TData>,\n variables?: TVariables\n ) {\n if (!this.last) {\n return true;\n }\n\n const documentInfo = this.queryManager.getDocumentInfo(this.query);\n const dataMasking = this.queryManager.dataMasking;\n const query = dataMasking ? documentInfo.nonReactiveQuery : this.query;\n\n const resultIsDifferent =\n dataMasking || documentInfo.hasNonreactiveDirective ?\n !equalByQuery(query, this.last.result, newResult, this.variables)\n : !equal(this.last.result, newResult);\n\n return (\n resultIsDifferent || (variables && !equal(this.last.variables, variables))\n );\n }\n\n private getLast<K extends keyof Last<TData, TVariables>>(\n key: K,\n variablesMustMatch?: boolean\n ) {\n const last = this.last;\n if (\n last &&\n last[key] &&\n (!variablesMustMatch || equal(last.variables, this.variables))\n ) {\n return last[key];\n }\n }\n\n public getLastResult(\n variablesMustMatch?: boolean\n ): ApolloQueryResult<TData> | undefined {\n return this.getLast(\"result\", variablesMustMatch);\n }\n\n public getLastError(variablesMustMatch?: boolean): ApolloError | undefined {\n return this.getLast(\"error\", variablesMustMatch);\n }\n\n public resetLastResults(): void {\n delete this.last;\n this.isTornDown = false;\n }\n\n public resetQueryStoreErrors() {\n this.queryManager.resetErrors(this.queryId);\n }\n\n /**\n * Update the variables of this observable query, and fetch the new results.\n * This method should be preferred over `setVariables` in most use cases.\n *\n * @param variables - The new set of variables. If there are missing variables,\n * the previous values of those variables will be used.\n */\n public refetch(\n variables?: Partial<TVariables>\n ): Promise<ApolloQueryResult<MaybeMasked<TData>>> {\n const reobserveOptions: Partial<WatchQueryOptions<TVariables, TData>> = {\n // Always disable polling for refetches.\n pollInterval: 0,\n };\n\n // Unless the provided fetchPolicy always consults the network\n // (no-cache, network-only, or cache-and-network), override it with\n // network-only to force the refetch for this fetchQuery call.\n const { fetchPolicy } = this.options;\n if (fetchPolicy === \"no-cache\") {\n reobserveOptions.fetchPolicy = \"no-cache\";\n } else {\n reobserveOptions.fetchPolicy = \"network-only\";\n }\n\n if (__DEV__ && variables && hasOwnProperty.call(variables, \"variables\")) {\n const queryDef = getQueryDefinition(this.query);\n const vars = queryDef.variableDefinitions;\n if (!vars || !vars.some((v) => v.variable.name.value === \"variables\")) {\n invariant.warn(\n `Called refetch(%o) for query %o, which does not declare a $variables variable.\nDid you mean to call refetch(variables) instead of refetch({ variables })?`,\n variables,\n queryDef.name?.value || queryDef\n );\n }\n }\n\n if (variables && !equal(this.options.variables, variables)) {\n // Update the existing options with new variables\n reobserveOptions.variables = this.options.variables = {\n ...this.options.variables,\n ...variables,\n } as TVariables;\n }\n\n this.queryInfo.resetLastWrite();\n return this.reobserve(reobserveOptions, NetworkStatus.refetch);\n }\n\n /**\n * A function that helps you fetch the next set of results for a [paginated list field](https://www.apollographql.com/docs/react/pagination/core-api/).\n */\n public fetchMore<\n TFetchData = TData,\n TFetchVars extends OperationVariables = TVariables,\n >(\n fetchMoreOptions: FetchMoreQueryOptions<TFetchVars, TFetchData> & {\n updateQuery?: (\n previousQueryResult: Unmasked<TData>,\n options: {\n fetchMoreResult: Unmasked<TFetchData>;\n variables: TFetchVars;\n }\n ) => Unmasked<TData>;\n }\n ): Promise<ApolloQueryResult<MaybeMasked<TFetchData>>> {\n const combinedOptions = {\n ...(fetchMoreOptions.query ? fetchMoreOptions : (\n {\n ...this.options,\n query: this.options.query,\n ...fetchMoreOptions,\n variables: {\n ...this.options.variables,\n ...fetchMoreOptions.variables,\n },\n }\n )),\n // The fetchMore request goes immediately to the network and does\n // not automatically write its result to the cache (hence no-cache\n // instead of network-only), because we allow the caller of\n // fetchMore to provide an updateQuery callback that determines how\n // the data gets written to the cache.\n fetchPolicy: \"no-cache\",\n } as WatchQueryOptions<TFetchVars, TFetchData>;\n\n combinedOptions.query = this.transformDocument(combinedOptions.query);\n\n const qid = this.queryManager.generateQueryId();\n\n // If a temporary query is passed to `fetchMore`, we don't want to store\n // it as the last query result since it may be an optimized query for\n // pagination. We will however run the transforms on the original document\n // as well as the document passed in `fetchMoreOptions` to ensure the cache\n // uses the most up-to-date document which may rely on runtime conditionals.\n this.lastQuery =\n fetchMoreOptions.query ?\n this.transformDocument(this.options.query)\n : combinedOptions.query;\n\n // Simulate a loading result for the original query with\n // result.networkStatus === NetworkStatus.fetchMore.\n const { queryInfo } = this;\n const originalNetworkStatus = queryInfo.networkStatus;\n queryInfo.networkStatus = NetworkStatus.fetchMore;\n if (combinedOptions.notifyOnNetworkStatusChange) {\n this.observe();\n }\n\n const updatedQuerySet = new Set<DocumentNode>();\n\n const updateQuery = fetchMoreOptions?.updateQuery;\n const isCached = this.options.fetchPolicy !== \"no-cache\";\n\n if (!isCached) {\n invariant(\n updateQuery,\n \"You must provide an `updateQuery` function when using `fetchMore` with a `no-cache` fetch policy.\"\n );\n }\n\n return this.queryManager\n .fetchQuery(qid, combinedOptions, NetworkStatus.fetchMore)\n .then((fetchMoreResult) => {\n this.queryManager.removeQuery(qid);\n\n if (queryInfo.networkStatus === NetworkStatus.fetchMore) {\n queryInfo.networkStatus = originalNetworkStatus;\n }\n\n if (isCached) {\n // Performing this cache update inside a cache.batch transaction ensures\n // any affected cache.watch watchers are notified at most once about any\n // updates. Most watchers will be using the QueryInfo class, which\n // responds to notifications by calling reobserveCacheFirst to deliver\n // fetchMore cache results back to this ObservableQuery.\n this.queryManager.cache.batch({\n update: (cache) => {\n const { updateQuery } = fetchMoreOptions;\n if (updateQuery) {\n cache.updateQuery(\n {\n query: this.query,\n variables: this.variables,\n returnPartialData: true,\n optimistic: false,\n },\n (previous) =>\n updateQuery(previous! as any, {\n fetchMoreResult: fetchMoreResult.data as any,\n variables: combinedOptions.variables as TFetchVars,\n })\n );\n } else {\n // If we're using a field policy instead of updateQuery, the only\n // thing we need to do is write the new data to the cache using\n // combinedOptions.variables (instead of this.variables, which is\n // what this.updateQuery uses, because it works by abusing the\n // original field value, keyed by the original variables).\n cache.writeQuery({\n query: combinedOptions.query,\n variables: combinedOptions.variables,\n data: fetchMoreResult.data as Unmasked<TFetchData>,\n });\n }\n },\n\n onWatchUpdated: (watch) => {\n // Record the DocumentNode associated with any watched query whose\n // data were updated by the cache writes above.\n updatedQuerySet.add(watch.query);\n },\n });\n } else {\n // There is a possibility `lastResult` may not be set when\n // `fetchMore` is called which would cause this to crash. This should\n // only happen if we haven't previously reported a result. We don't\n // quite know what the right behavior should be here since this block\n // of code runs after the fetch result has executed on the network.\n // We plan to let it crash in the meantime.\n //\n // If we get bug reports due to the `data` property access on\n // undefined, this should give us a real-world scenario that we can\n // use to test against and determine the right behavior. If we do end\n // up changing this behavior, this may require, for example, an\n // adjustment to the types on `updateQuery` since that function\n // expects that the first argument always contains previous result\n // data, but not `undefined`.\n const lastResult = this.getLast(\"result\")!;\n const data = updateQuery!(lastResult.data as Unmasked<TData>, {\n fetchMoreResult: fetchMoreResult.data as Unmasked<TFetchData>,\n variables: combinedOptions.variables as TFetchVars,\n });\n\n this.reportResult(\n {\n ...lastResult,\n networkStatus: originalNetworkStatus!,\n loading: isNetworkRequestInFlight(originalNetworkStatus),\n data: data as TData,\n },\n this.variables\n );\n }\n\n return this.maskResult(fetchMoreResult);\n })\n .finally(() => {\n // In case the cache writes above did not generate a broadcast\n // notification (which would have been intercepted by onWatchUpdated),\n // likely because the written data were the same as what was already in\n // the cache, we still want fetchMore to deliver its final loading:false\n // result with the unchanged data.\n if (isCached && !updatedQuerySet.has(this.query)) {\n reobserveCacheFirst(this);\n }\n });\n }\n\n // XXX the subscription variables are separate from the query variables.\n // if you want to update subscription variables, right now you have to do that separately,\n // and you can only do it by stopping the subscription and then subscribing again with new variables.\n /**\n * A function that enables you to execute a [subscription](https://www.apollographql.com/docs/react/data/subscriptions/), usually to subscribe to specific fields that were included in the query.\n *\n * This function returns _another_ function that you can call to terminate the subscription.\n */\n public subscribeToMore<\n TSubscriptionData = TData,\n TSubscriptionVariables extends OperationVariables = TVariables,\n >(\n options: SubscribeToMoreOptions<\n TData,\n TSubscriptionVariables,\n TSubscriptionData,\n TVariables\n >\n ): () => void {\n const subscription = this.queryManager\n .startGraphQLSubscription({\n query: options.document,\n variables: options.variables,\n context: options.context,\n })\n .subscribe({\n next: (subscriptionData: { data: Unmasked<TSubscriptionData> }) => {\n const { updateQuery } = options;\n if (updateQuery) {\n this.updateQuery((previous, updateOptions) =>\n updateQuery(previous, {\n subscriptionData,\n ...updateOptions,\n })\n );\n }\n },\n error: (err: any) => {\n if (options.onError) {\n options.onError(err);\n return;\n }\n invariant.error(\"Unhandled GraphQL subscription error\", err);\n },\n });\n\n this.subscriptions.add(subscription);\n\n return () => {\n if (this.subscriptions.delete(subscription)) {\n subscription.unsubscribe();\n }\n };\n }\n\n public setOptions(\n newOptions: Partial<WatchQueryOptions<TVariables, TData>>\n ): Promise<ApolloQueryResult<MaybeMasked<TData>>> {\n return this.reobserve(newOptions);\n }\n\n public silentSetOptions(\n newOptions: Partial<WatchQueryOptions<TVariables, TData>>\n ) {\n const mergedOptions = compact(this.options, newOptions || {});\n assign(this.options, mergedOptions);\n }\n\n /**\n * Update the variables of this observable query, and fetch the new results\n * if they've changed. Most users should prefer `refetch` instead of\n * `setVariables` in order to to be properly notified of results even when\n * they come from the cache.\n *\n * Note: the `next` callback will *not* fire if the variables have not changed\n * or if the result is coming from cache.\n *\n * Note: the promise will return the old results immediately if the variables\n * have not changed.\n *\n * Note: the promise will return null immediately if the query is not active\n * (there are no subscribers).\n *\n * @param variables - The new set of variables. If there are missing variables,\n * the previous values of those variables will be used.\n */\n public setVariables(\n variables: TVariables\n ): Promise<ApolloQueryResult<MaybeMasked<TData>> | void> {\n if (equal(this.variables, variables)) {\n // If we have no observers, then we don't actually want to make a network\n // request. As soon as someone observes the query, the request will kick\n // off. For now, we just store any changes. (See #1077)\n return this.observers.size ? this.result() : Promise.resolve();\n }\n\n this.options.variables = variables;\n\n // See comment above\n if (!this.observers.size) {\n return Promise.resolve();\n }\n\n return this.reobserve(\n {\n // Reset options.fetchPolicy to its original value.\n fetchPolicy: this.options.initialFetchPolicy,\n variables,\n },\n NetworkStatus.setVariables\n );\n }\n\n /**\n * A function that enables you to update the query's cached result without executing a followup GraphQL operation.\n *\n * See [using updateQuery and updateFragment](https://www.apollographql.com/docs/react/caching/cache-interaction/#using-updatequery-and-updatefragment) for additional information.\n */\n public updateQuery(mapFn: UpdateQueryMapFn<TData, TVariables>): void {\n const { queryManager } = this;\n const { result, complete } = queryManager.cache.diff<TData>({\n query: this.options.query,\n variables: this.variables,\n returnPartialData: true,\n optimistic: false,\n });\n\n const newResult = mapFn(\n result! as Unmasked<TData>,\n {\n variables: this.variables,\n complete: !!complete,\n previousData: result,\n } as UpdateQueryOptions<TData, TVariables>\n );\n\n if (newResult) {\n queryManager.cache.writeQuery({\n query: this.options.query,\n data: newResult,\n variables: this.variables,\n });\n\n queryManager.broadcastQueries();\n }\n }\n\n /**\n * A function that instructs the query to begin re-executing at a specified interval (in milliseconds).\n */\n public startPolling(pollInterval: number) {\n this.options.pollInterval = pollInterval;\n this.updatePolling();\n }\n\n /**\n * A function that instructs the query to stop polling after a previous call to `startPolling`.\n */\n public stopPolling() {\n this.options.pollInterval = 0;\n this.updatePolling();\n }\n\n // Update options.fetchPolicy according to options.nextFetchPolicy.\n private applyNextFetchPolicy(\n reason: NextFetchPolicyContext<TData, TVariables>[\"reason\"],\n // It's possible to use this method to apply options.nextFetchPolicy to\n // options.fetchPolicy even if options !== this.options, though that happens\n // most often when the options are temporary, used for only one request and\n // then thrown away, so nextFetchPolicy may not end up mattering.\n options: WatchQueryOptions<TVariables, TData>\n ) {\n if (options.nextFetchPolicy) {\n const { fetchPolicy = \"cache-first\", initialFetchPolicy = fetchPolicy } =\n options;\n\n if (fetchPolicy === \"standby\") {\n // Do nothing, leaving options.fetchPolicy unchanged.\n } else if (typeof options.nextFetchPolicy === \"function\") {\n // When someone chooses \"cache-and-network\" or \"network-only\" as their\n // initial FetchPolicy, they often do not want future cache updates to\n // trigger unconditional network requests, which is what repeatedly\n // applying the \"cache-and-network\" or \"network-only\" policies would\n // seem to imply. Instead, when the cache reports an update after the\n // initial network request, it may be desirable for subsequent network\n // requests to be triggered only if the cache result is incomplete. To\n // that end, the options.nextFetchPolicy option provides an easy way to\n // update options.fetchPolicy after the initial network request, without\n // having to call observableQuery.setOptions.\n options.fetchPolicy = options.nextFetchPolicy(fetchPolicy, {\n reason,\n options,\n observable: this,\n initialFetchPolicy,\n });\n } else if (reason === \"variables-changed\") {\n options.fetchPolicy = initialFetchPolicy;\n } else {\n options.fetchPolicy = options.nextFetchPolicy;\n }\n }\n\n return options.fetchPolicy;\n }\n\n private fetch(\n options: WatchQueryOptions<TVariables, TData>,\n newNetworkStatus?: NetworkStatus,\n query?: DocumentNode\n ) {\n // TODO Make sure we update the networkStatus (and infer fetchVariables)\n // before actually committing to the fetch.\n this.queryManager.setObservableQuery(this);\n return this.queryManager[\"fetchConcastWithInfo\"](\n this.queryId,\n options,\n newNetworkStatus,\n query\n );\n }\n\n // Turns polling on or off based on this.options.pollInterval.\n private updatePolling() {\n // Avoid polling in SSR mode\n if (this.queryManager.ssrMode) {\n return;\n }\n\n const {\n pollingInfo,\n options: { pollInterval },\n } = this;\n\n if (!pollInterval || !this.hasObservers()) {\n if (pollingInfo) {\n clearTimeout(pollingInfo.timeout);\n delete this.pollingInfo;\n }\n return;\n }\n\n if (pollingInfo && pollingInfo.interval === pollInterval) {\n return;\n }\n\n invariant(\n pollInterval,\n \"Attempted to start a polling query without a polling interval.\"\n );\n\n const info = pollingInfo || (this.pollingInfo = {} as any);\n info.interval = pollInterval;\n\n const maybeFetch = () => {\n if (this.pollingInfo) {\n if (\n !isNetworkRequestInFlight(this.queryInfo.networkStatus) &&\n !this.options.skipPollAttempt?.()\n ) {\n this.reobserve(\n {\n // Most fetchPolicy options don't make sense to use in a polling context, as\n // users wouldn't want to be polling the cache directly. However, network-only and\n // no-cache are both useful for when the user wants to control whether or not the\n // polled results are written to the cache.\n fetchPolicy:\n this.options.initialFetchPolicy === \"no-cache\" ?\n \"no-cache\"\n : \"network-only\",\n },\n NetworkStatus.poll\n ).then(poll, poll);\n } else {\n poll();\n }\n }\n };\n\n const poll = () => {\n const info = this.pollingInfo;\n if (info) {\n clearTimeout(info.timeout);\n info.timeout = setTimeout(maybeFetch, info.interval);\n }\n };\n\n poll();\n }\n\n private updateLastResult(\n newResult: ApolloQueryResult<TData>,\n variables = this.variables\n ) {\n let error: ApolloError | undefined = this.getLastError();\n // Preserve this.last.error unless the variables have changed.\n if (error && this.last && !equal(variables, this.last.variables)) {\n error = void 0;\n }\n return (this.last = {\n result:\n this.queryManager.assumeImmutableResults ?\n newResult\n : cloneDeep(newResult),\n variables,\n ...(error ? { error } : null),\n });\n }\n\n public reobserveAsConcast(\n newOptions?: Partial<WatchQueryOptions<TVariables, TData>>,\n newNetworkStatus?: NetworkStatus\n ): Concast<ApolloQueryResult<TData>> {\n this.isTornDown = false;\n\n const useDisposableConcast =\n // Refetching uses a disposable Concast to allow refetches using different\n // options/variables, without permanently altering the options of the\n // original ObservableQuery.\n newNetworkStatus === NetworkStatus.refetch ||\n // The fetchMore method does not actually call the reobserve method, but,\n // if it did, it would definitely use a disposable Concast.\n newNetworkStatus === NetworkStatus.fetchMore ||\n // Polling uses a disposable Concast so the polling options (which force\n // fetchPolicy to be \"network-only\" or \"no-cache\") won't override the original options.\n newNetworkStatus === NetworkStatus.poll;\n\n // Save the old variables, since Object.assign may modify them below.\n const oldVariables = this.options.variables;\n const oldFetchPolicy = this.options.fetchPolicy;\n\n const mergedOptions = compact(this.options, newOptions || {});\n const options =\n useDisposableConcast ?\n // Disposable Concast fetches receive a shallow copy of this.options\n // (merged with newOptions), leaving this.options unmodified.\n mergedOptions\n : assign(this.options, mergedOptions);\n\n // Don't update options.query with the transformed query to avoid\n // overwriting this.options.query when we aren't using a disposable concast.\n // We want to ensure we can re-run the custom document transforms the next\n // time a request is made against the original query.\n const query = this.transformDocument(options.query);\n\n this.lastQuery = query;\n\n if (!useDisposableConcast) {\n // We can skip calling updatePolling if we're not changing this.options.\n this.updatePolling();\n\n // Reset options.fetchPolicy to its original value when variables change,\n // unless a new fetchPolicy was provided by newOptions.\n if (\n newOptions &&\n newOptions.variables &&\n !equal(newOptions.variables, oldVariables) &&\n // Don't mess with the fetchPolicy if it's currently \"standby\".\n options.fetchPolicy !== \"standby\" &&\n // If we're changing the fetchPolicy anyway, don't try to change it here\n // using applyNextFetchPolicy. The explicit options.fetchPolicy wins.\n (options.fetchPolicy === oldFetchPolicy ||\n // A `nextFetchPolicy` function has even higher priority, though,\n // so in that case `applyNextFetchPolicy` must be called.\n typeof options.nextFetchPolicy === \"function\")\n ) {\n this.applyNextFetchPolicy(\"variables-changed\", options);\n if (newNetworkStatus === void 0) {\n newNetworkStatus = NetworkStatus.setVariables;\n }\n }\n }\n\n this.waitForOwnResult &&= skipCacheDataFor(options.fetchPolicy);\n const finishWaitingForOwnResult = () => {\n if (this.concast === concast) {\n this.waitForOwnResult = false;\n }\n };\n\n const variables = options.variables && { ...options.variables };\n const { concast, fromLink } = this.fetch(options, newNetworkStatus, query);\n const observer: Observer<ApolloQueryResult<TData>> = {\n next: (result) => {\n if (equal(this.variables, variables)) {\n finishWaitingForOwnResult();\n this.reportResult(result, variables);\n }\n },\n error: (error) => {\n if (equal(this.variables, variables)) {\n // Coming from `getResultsFromLink`, `error` here should always be an `ApolloError`.\n // However, calling `concast.cancel` can inject another type of error, so we have to\n // wrap it again here.\n if (!isApolloError(error)) {\n error = new ApolloError({ networkError: error });\n }\n finishWaitingForOwnResult();\n this.reportError(error, variables);\n }\n },\n };\n\n if (!useDisposableConcast && (fromLink || !this.concast)) {\n // We use the {add,remove}Observer methods directly to avoid wrapping\n // observer with an unnecessary SubscriptionObserver object.\n if (this.concast && this.observer) {\n this.concast.removeObserver(this.observer);\n }\n\n this.concast = concast;\n this.observer = observer;\n }\n\n concast.addObserver(observer);\n\n return concast;\n }\n\n public reobserve(\n newOptions?: Partial<WatchQueryOptions<TVariables, TData>>,\n newNetworkStatus?: NetworkStatus\n ): Promise<ApolloQueryResult<MaybeMasked<TData>>> {\n return preventUnhandledRejection(\n this.reobserveAsConcast(newOptions, newNetworkStatus).promise.then(\n this.maskResult as TODO\n )\n );\n }\n\n public resubscribeAfterError(\n onNext: (value: ApolloQueryResult<MaybeMasked<TData>>) => void,\n onError?: (error: any) => void,\n onComplete?: () => void\n ): ObservableSubscription;\n\n public resubscribeAfterError(\n observer: Observer<ApolloQueryResult<TData>>\n ): ObservableSubscription;\n\n public resubscribeAfterError(...args: [any, any?, any?]) {\n // If `lastError` is set in the current when the subscription is re-created,\n // the subscription will immediately receive the error, which will\n // cause it to terminate again. To avoid this, we first clear\n // the last error/result from the `observableQuery` before re-starting\n // the subscription, and restore the last value afterwards so that the\n // subscription has a chance to stay open.\n const last = this.last;\n this.resetLastResults();\n\n const subscription = this.subscribe(...args);\n this.last = last;\n\n return subscription;\n }\n\n // (Re)deliver the current result to this.observers without applying fetch\n // policies or making network requests.\n private observe() {\n this.reportResult(\n // Passing false is important so that this.getCurrentResult doesn't\n // save the fetchMore result as this.lastResult, causing it to be\n // ignored due to the this.isDifferentFromLastResult check in\n // this.reportResult.\n this.getCurrentFullResult(false),\n this.variables\n );\n }\n\n private reportResult(\n result: ApolloQueryResult<TData>,\n variables: TVariables | undefined\n ) {\n const lastError = this.getLastError();\n const isDifferent = this.isDifferentFromLastResult(result, variables);\n // Update the last result even when isDifferentFromLastResult returns false,\n // because the query may be using the @nonreactive directive, and we want to\n // save the the latest version of any nonreactive subtrees (in case\n // getCurrentResult is called), even though we skip broadcasting changes.\n if (lastError || !result.partial || this.options.returnPartialData) {\n this.updateLastResult(result, variables);\n }\n if (lastError || isDifferent) {\n iterateObserversSafely(this.observers, \"next\", this.maskResult(result));\n }\n }\n\n private reportError(error: ApolloError, variables: TVariables | undefined) {\n // Since we don't get the current result on errors, only the error, we\n // must mirror the updates that occur in QueryStore.markQueryError here\n const errorResult = {\n ...this.getLastResult(),\n error,\n errors: error.graphQLErrors,\n networkStatus: NetworkStatus.error,\n loading: false,\n } as ApolloQueryResult<TData>;\n\n this.updateLastResult(errorResult, variables);\n\n iterateObserversSafely(this.observers, \"error\", (this.last!.error = error));\n }\n\n public hasObservers() {\n return this.observers.size > 0;\n }\n\n private tearDownQuery() {\n if (this.isTornDown) return;\n if (this.concast && this.observer) {\n this.concast.removeObserver(this.observer);\n delete this.concast;\n delete this.observer;\n }\n\n this.stopPolling();\n // stop all active GraphQL subscriptions\n this.subscriptions.forEach((sub) => sub.unsubscribe());\n this.subscriptions.clear();\n this.queryManager.stopQuery(this.queryId);\n this.observers.clear();\n this.isTornDown = true;\n }\n\n private transformDocument(document: DocumentNode) {\n return this.queryManager.transform(document);\n }\n\n private maskResult<T = TData>(\n result: ApolloQueryResult<T>\n ): ApolloQueryResult<MaybeMasked<T>> {\n return result && \"data\" in result ?\n {\n ...result,\n data: this.queryManager.maskOperation({\n document: this.query,\n data: result.data,\n fetchPolicy: this.options.fetchPolicy,\n id: this.queryId,\n }),\n }\n : result;\n }\n}\n\n// Necessary because the ObservableQuery constructor has a different\n// signature than the Observable constructor.\nfixObservableSubclass(ObservableQuery);\n\n// Reobserve with fetchPolicy effectively set to \"cache-first\", triggering\n// delivery of any new data from the cache, possibly falling back to the network\n// if any cache data are missing. This allows _complete_ cache results to be\n// delivered without also kicking off unnecessary network requests when\n// this.options.fetchPolicy is \"cache-and-network\" or \"network-only\". When\n// this.options.fetchPolicy is any other policy (\"cache-first\", \"cache-only\",\n// \"standby\", or \"no-cache\"), we call this.reobserve() as usual.\nexport function reobserveCacheFirst<TData, TVars extends OperationVariables>(\n obsQuery: ObservableQuery<TData, TVars>\n) {\n const { fetchPolicy, nextFetchPolicy } = obsQuery.options;\n\n if (fetchPolicy === \"cache-and-network\" || fetchPolicy === \"network-only\") {\n return obsQuery.reobserve({\n fetchPolicy: \"cache-first\",\n // Use a temporary nextFetchPolicy function that replaces itself with the\n // previous nextFetchPolicy value and returns the original fetchPolicy.\n nextFetchPolicy(\n this: WatchQueryOptions<TVars, TData>,\n currentFetchPolicy: WatchQueryFetchPolicy,\n context: NextFetchPolicyContext<TData, TVars>\n ) {\n // Replace this nextFetchPolicy function in the options object with the\n // original this.options.nextFetchPolicy value.\n this.nextFetchPolicy = nextFetchPolicy;\n // If the original nextFetchPolicy value was a function, give it a\n // chance to decide what happens here.\n if (typeof this.nextFetchPolicy === \"function\") {\n return this.nextFetchPolicy(currentFetchPolicy, context);\n }\n // Otherwise go back to the original this.options.fetchPolicy.\n return fetchPolicy!;\n },\n });\n }\n\n return obsQuery.reobserve();\n}\n\nfunction defaultSubscriptionObserverErrorCallback(error: ApolloError) {\n invariant.error(\"Unhandled error\", error.message, error.stack);\n}\n\nexport function logMissingFieldErrors(\n missing: MissingFieldError[] | MissingTree | undefined\n) {\n if (__DEV__ && missing) {\n invariant.debug(`Missing cache result fields: %o`, missing);\n }\n}\n\nfunction skipCacheDataFor(\n fetchPolicy?: WatchQueryFetchPolicy /* `undefined` would mean `\"cache-first\"` */\n) {\n return (\n fetchPolicy === \"network-only\" ||\n fetchPolicy === \"no-cache\" ||\n fetchPolicy === \"standby\"\n );\n}\n"]}
1
+ {"version":3,"file":"ObservableQuery.js","sources":["../../src/core/ObservableQuery.ts"],"sourcesContent":["import { equal } from \"@wry/equality\";\nimport type { DocumentNode } from \"graphql\";\nimport type {\n InteropObservable,\n Observer,\n Subscribable,\n Subscription,\n} from \"rxjs\";\nimport type { Observable } from \"rxjs\";\nimport { BehaviorSubject, filter, lastValueFrom, tap } from \"rxjs\";\n\nimport type { MissingFieldError } from \"@apollo/client/cache\";\nimport type { MissingTree } from \"@apollo/client/cache\";\nimport type { MaybeMasked, Unmasked } from \"@apollo/client/masking\";\nimport {\n cloneDeep,\n compact,\n getOperationDefinition,\n getQueryDefinition,\n preventUnhandledRejection,\n} from \"@apollo/client/utilities\";\nimport { __DEV__ } from \"@apollo/client/utilities/environment\";\nimport { invariant } from \"@apollo/client/utilities/invariant\";\n\nimport { equalByQuery } from \"./equalByQuery.js\";\nimport { isNetworkRequestInFlight, NetworkStatus } from \"./networkStatus.js\";\nimport type { QueryInfo } from \"./QueryInfo.js\";\nimport type { QueryManager } from \"./QueryManager.js\";\nimport type {\n ApolloQueryResult,\n ErrorLike,\n OperationVariables,\n TypedDocumentNode,\n} from \"./types.js\";\nimport type {\n FetchMoreQueryOptions,\n NextFetchPolicyContext,\n SubscribeToMoreOptions,\n UpdateQueryMapFn,\n UpdateQueryOptions,\n WatchQueryFetchPolicy,\n WatchQueryOptions,\n} from \"./watchQueryOptions.js\";\n\nconst { assign, hasOwnProperty } = Object;\n\nexport interface FetchMoreOptions<\n TData = any,\n TVariables = OperationVariables,\n> {\n updateQuery?: (\n previousQueryResult: TData,\n options: {\n fetchMoreResult?: TData;\n variables?: TVariables;\n }\n ) => TData;\n}\n\ninterface Last<TData, TVariables> {\n result: ApolloQueryResult<TData>;\n variables?: TVariables;\n error?: ErrorLike;\n}\n\nexport class ObservableQuery<\n TData = any,\n TVariables extends OperationVariables = OperationVariables,\n >\n implements\n Subscribable<ApolloQueryResult<MaybeMasked<TData>>>,\n InteropObservable<ApolloQueryResult<MaybeMasked<TData>>>\n{\n public readonly options: WatchQueryOptions<TVariables, TData>;\n public readonly queryId: string;\n public readonly queryName?: string;\n\n // The `query` computed property will always reflect the document transformed\n // by the last run query. `this.options.query` will always reflect the raw\n // untransformed query to ensure document transforms with runtime conditionals\n // are run on the original document.\n public get query(): TypedDocumentNode<TData, TVariables> {\n return this.lastQuery || this.options.query;\n }\n\n // Computed shorthand for this.options.variables, preserved for\n // backwards compatibility.\n /**\n * An object containing the variables that were provided for the query.\n */\n public get variables(): TVariables | undefined {\n return this.options.variables;\n }\n\n private subject: BehaviorSubject<ApolloQueryResult<MaybeMasked<TData>>>;\n private readonly observable: Observable<\n ApolloQueryResult<MaybeMasked<TData>>\n >;\n private initialResult: ApolloQueryResult<MaybeMasked<TData>>;\n\n private isTornDown: boolean;\n private queryManager: QueryManager<any>;\n private subscriptions = new Set<Subscription>();\n\n private waitForOwnResult: boolean;\n private last?: Last<TData, TVariables>;\n private lastQuery?: DocumentNode;\n\n private queryInfo: QueryInfo;\n\n private linkSubscription?: Subscription;\n private linkObservable?: Observable<ApolloQueryResult<TData>>;\n\n private pollingInfo?: {\n interval: number;\n timeout: ReturnType<typeof setTimeout>;\n };\n\n private networkStatus: NetworkStatus;\n\n constructor({\n queryManager,\n queryInfo,\n options,\n }: {\n queryManager: QueryManager<any>;\n queryInfo: QueryInfo;\n options: WatchQueryOptions<TVariables, TData>;\n }) {\n this.networkStatus = NetworkStatus.loading;\n this.initialResult = {\n data: undefined,\n loading: true,\n networkStatus: this.networkStatus,\n partial: true,\n };\n\n this.subject = new BehaviorSubject(this.initialResult);\n this.observable = this.subject.pipe(\n tap({\n subscribe: () => {\n if (!this.subject.observed) {\n this.reobserve();\n\n // TODO: See if we can rework updatePolling to better handle this.\n // reobserve calls updatePolling but this `subscribe` callback is\n // called before the subject is subscribed to so `updatePolling`\n // can't accurately detect if there is an active subscription.\n // Calling it again here ensures that it can detect if it can poll\n setTimeout(() => this.updatePolling());\n }\n },\n unsubscribe: () => {\n if (!this.subject.observed) {\n this.tearDownQuery();\n }\n },\n }),\n // TODO: Conditionally filter when notifyOnNetworkStatusChange is true or\n // not. We want to emit the loading result if notifyOnNetworkStatusChange\n // is true.\n filter(\n (result) =>\n // TODO: Remove this behavior when unifying loading state for notifyOnNetworkStatusChange\n (this.options.fetchPolicy === \"no-cache\" &&\n this.options.notifyOnNetworkStatusChange) ||\n // TODO: Remove this behavior when unifying loading state for notifyOnNetworkStatusChange\n (this.options.fetchPolicy === \"network-only\" &&\n this.queryInfo.getDiff().complete) ||\n result !== this.initialResult\n )\n );\n\n this[\"@@observable\"] = () => this;\n if (Symbol.observable) {\n this[Symbol.observable] = () => this;\n }\n this.pipe = this.observable.pipe.bind(this.observable);\n this.subscribe = this.observable.subscribe.bind(this.observable);\n\n // related classes\n this.queryInfo = queryInfo;\n this.queryManager = queryManager;\n\n // active state\n this.waitForOwnResult = skipCacheDataFor(options.fetchPolicy);\n this.isTornDown = false;\n\n this.subscribe = this.subscribe.bind(this);\n this.subscribeToMore = this.subscribeToMore.bind(this);\n this.maskResult = this.maskResult.bind(this);\n\n const {\n watchQuery: { fetchPolicy: defaultFetchPolicy = \"cache-first\" } = {},\n } = queryManager.defaultOptions;\n\n const {\n fetchPolicy = defaultFetchPolicy,\n // Make sure we don't store \"standby\" as the initialFetchPolicy.\n initialFetchPolicy = fetchPolicy === \"standby\" ? defaultFetchPolicy : (\n fetchPolicy\n ),\n } = options;\n\n this.options = {\n ...options,\n\n // Remember the initial options.fetchPolicy so we can revert back to this\n // policy when variables change. This information can also be specified\n // (or overridden) by providing options.initialFetchPolicy explicitly.\n initialFetchPolicy,\n\n // This ensures this.options.fetchPolicy always has a string value, in\n // case options.fetchPolicy was not provided.\n fetchPolicy,\n };\n\n this.queryId = queryInfo.queryId || queryManager.generateQueryId();\n\n const opDef = getOperationDefinition(this.query);\n this.queryName = opDef && opDef.name && opDef.name.value;\n }\n\n // We can't use Observable['subscribe'] here as the type as it conflicts with\n // the ability to infer T from Subscribable<T>. This limits the surface area\n // to the non-deprecated signature which works properly with type inference.\n public subscribe: (\n observer:\n | Partial<Observer<ApolloQueryResult<MaybeMasked<TData>>>>\n | ((value: ApolloQueryResult<MaybeMasked<TData>>) => void)\n ) => Subscription;\n\n public pipe: Observable<ApolloQueryResult<MaybeMasked<TData>>>[\"pipe\"];\n\n public [Symbol.observable]!: () => Subscribable<\n ApolloQueryResult<MaybeMasked<TData>>\n >;\n public [\"@@observable\"]: () => Subscribable<\n ApolloQueryResult<MaybeMasked<TData>>\n >;\n\n /** @internal */\n public resetDiff() {\n this.queryInfo.resetDiff();\n }\n\n private getCurrentFullResult(\n saveAsLastResult = true\n ): ApolloQueryResult<TData> {\n // Use the last result as long as the variables match this.variables.\n const lastResult = this.getLastResult(true);\n const networkStatus = this.networkStatus;\n\n const result: ApolloQueryResult<TData> = {\n data: undefined,\n partial: true,\n ...lastResult,\n loading: isNetworkRequestInFlight(networkStatus),\n networkStatus,\n };\n\n const { fetchPolicy = \"cache-first\" } = this.options;\n if (\n // These fetch policies should never deliver data from the cache, unless\n // redelivering a previously delivered result.\n skipCacheDataFor(fetchPolicy) ||\n // If this.options.query has @client(always: true) fields, we cannot\n // trust diff.result, since it was read from the cache without running\n // local resolvers (and it's too late to run resolvers now, since we must\n // return a result synchronously).\n this.queryManager.getDocumentInfo(this.query).hasForcedResolvers\n ) {\n // Fall through.\n } else if (this.waitForOwnResult) {\n // This would usually be a part of `QueryInfo.getDiff()`.\n // which we skip in the waitForOwnResult case since we are not\n // interested in the diff.\n this.queryInfo[\"updateWatch\"]();\n } else {\n const diff = this.queryInfo.getDiff();\n\n result.partial = !diff.complete;\n\n if (diff.complete || this.options.returnPartialData) {\n result.data = diff.result;\n }\n\n if (result.data === null) {\n result.data = void 0 as any;\n }\n\n if (diff.complete) {\n // If the diff is complete, and we're using a FetchPolicy that\n // terminates after a complete cache read, we can assume the next result\n // we receive will have NetworkStatus.ready and !loading.\n if (\n diff.complete &&\n result.networkStatus === NetworkStatus.loading &&\n (fetchPolicy === \"cache-first\" || fetchPolicy === \"cache-only\")\n ) {\n result.networkStatus = NetworkStatus.ready;\n result.loading = false;\n }\n }\n\n // We need to check for both both `error` and `errors` field because there\n // are cases where sometimes `error` is set, but not `errors` and\n // vice-versa. This will be updated in the next major version when\n // `errors` is deprecated in favor of `error`.\n if (result.networkStatus === NetworkStatus.ready && result.error) {\n result.networkStatus = NetworkStatus.error;\n }\n\n if (\n __DEV__ &&\n !diff.complete &&\n !result.loading &&\n !result.data &&\n !result.error\n ) {\n logMissingFieldErrors(diff.missing);\n }\n }\n\n if (saveAsLastResult) {\n this.updateLastResult(result);\n }\n\n return result;\n }\n\n public getCurrentResult(\n saveAsLastResult = true\n ): ApolloQueryResult<MaybeMasked<TData>> {\n return this.maskResult(this.getCurrentFullResult(saveAsLastResult));\n }\n\n // Compares newResult to the snapshot we took of this.lastResult when it was\n // first received.\n public isDifferentFromLastResult(\n newResult: ApolloQueryResult<TData>,\n variables?: TVariables\n ) {\n if (!this.last) {\n return true;\n }\n\n const documentInfo = this.queryManager.getDocumentInfo(this.query);\n const dataMasking = this.queryManager.dataMasking;\n const query = dataMasking ? documentInfo.nonReactiveQuery : this.query;\n\n const resultIsDifferent =\n dataMasking || documentInfo.hasNonreactiveDirective ?\n !equalByQuery(query, this.last.result, newResult, this.variables)\n : !equal(this.last.result, newResult);\n\n return (\n resultIsDifferent || (variables && !equal(this.last.variables, variables))\n );\n }\n\n private getLast<K extends keyof Last<TData, TVariables>>(\n key: K,\n variablesMustMatch?: boolean\n ) {\n const last = this.last;\n if (\n last &&\n last[key] &&\n (!variablesMustMatch || equal(last.variables, this.variables))\n ) {\n return last[key];\n }\n }\n\n // TODO: Consider deprecating this function\n public getLastResult(\n variablesMustMatch?: boolean\n ): ApolloQueryResult<TData> | undefined {\n return this.getLast(\"result\", variablesMustMatch);\n }\n\n // TODO: Consider deprecating this function\n public getLastError(variablesMustMatch?: boolean): ErrorLike | undefined {\n return this.getLast(\"error\", variablesMustMatch);\n }\n\n // TODO: Consider deprecating this function\n public resetLastResults(): void {\n delete this.last;\n // TODO: This will need to be removed when tearing down an ObservableQuery\n // since the observable will terminate.\n this.isTornDown = false;\n }\n\n /**\n * Update the variables of this observable query, and fetch the new results.\n * This method should be preferred over `setVariables` in most use cases.\n *\n * @param variables - The new set of variables. If there are missing variables,\n * the previous values of those variables will be used.\n */\n public refetch(\n variables?: Partial<TVariables>\n ): Promise<ApolloQueryResult<MaybeMasked<TData>>> {\n const reobserveOptions: Partial<WatchQueryOptions<TVariables, TData>> = {\n // Always disable polling for refetches.\n pollInterval: 0,\n };\n\n // Unless the provided fetchPolicy always consults the network\n // (no-cache, network-only, or cache-and-network), override it with\n // network-only to force the refetch for this fetchQuery call.\n const { fetchPolicy } = this.options;\n if (fetchPolicy === \"no-cache\") {\n reobserveOptions.fetchPolicy = \"no-cache\";\n } else {\n reobserveOptions.fetchPolicy = \"network-only\";\n }\n\n if (__DEV__ && variables && hasOwnProperty.call(variables, \"variables\")) {\n const queryDef = getQueryDefinition(this.query);\n const vars = queryDef.variableDefinitions;\n if (!vars || !vars.some((v) => v.variable.name.value === \"variables\")) {\n invariant.warn(\n `Called refetch(%o) for query %o, which does not declare a $variables variable.\nDid you mean to call refetch(variables) instead of refetch({ variables })?`,\n variables,\n queryDef.name?.value || queryDef\n );\n }\n }\n\n if (variables && !equal(this.options.variables, variables)) {\n // Update the existing options with new variables\n reobserveOptions.variables = this.options.variables = {\n ...this.options.variables,\n ...variables,\n } as TVariables;\n }\n\n this.queryInfo.resetLastWrite();\n return this.reobserve(reobserveOptions, NetworkStatus.refetch);\n }\n\n /**\n * A function that helps you fetch the next set of results for a [paginated list field](https://www.apollographql.com/docs/react/pagination/core-api/).\n */\n public fetchMore<\n TFetchData = TData,\n TFetchVars extends OperationVariables = TVariables,\n >(\n fetchMoreOptions: FetchMoreQueryOptions<TFetchVars, TFetchData> & {\n updateQuery?: (\n previousQueryResult: Unmasked<TData>,\n options: {\n fetchMoreResult: Unmasked<TFetchData>;\n variables: TFetchVars;\n }\n ) => Unmasked<TData>;\n }\n ): Promise<ApolloQueryResult<MaybeMasked<TFetchData>>> {\n const combinedOptions = {\n ...(fetchMoreOptions.query ? fetchMoreOptions : (\n {\n ...this.options,\n query: this.options.query,\n ...fetchMoreOptions,\n variables: {\n ...this.options.variables,\n ...fetchMoreOptions.variables,\n },\n }\n )),\n // The fetchMore request goes immediately to the network and does\n // not automatically write its result to the cache (hence no-cache\n // instead of network-only), because we allow the caller of\n // fetchMore to provide an updateQuery callback that determines how\n // the data gets written to the cache.\n fetchPolicy: \"no-cache\",\n } as WatchQueryOptions<TFetchVars, TFetchData>;\n\n combinedOptions.query = this.transformDocument(combinedOptions.query);\n\n const qid = this.queryManager.generateQueryId();\n\n // If a temporary query is passed to `fetchMore`, we don't want to store\n // it as the last query result since it may be an optimized query for\n // pagination. We will however run the transforms on the original document\n // as well as the document passed in `fetchMoreOptions` to ensure the cache\n // uses the most up-to-date document which may rely on runtime conditionals.\n this.lastQuery =\n fetchMoreOptions.query ?\n this.transformDocument(this.options.query)\n : combinedOptions.query;\n\n // Simulate a loading result for the original query with\n // result.networkStatus === NetworkStatus.fetchMore.\n const originalNetworkStatus = this.networkStatus;\n this.networkStatus = NetworkStatus.fetchMore;\n if (combinedOptions.notifyOnNetworkStatusChange) {\n this.observe();\n }\n\n const updatedQuerySet = new Set<DocumentNode>();\n\n const updateQuery = fetchMoreOptions?.updateQuery;\n const isCached = this.options.fetchPolicy !== \"no-cache\";\n\n if (!isCached) {\n invariant(\n updateQuery,\n \"You must provide an `updateQuery` function when using `fetchMore` with a `no-cache` fetch policy.\"\n );\n }\n\n return this.queryManager\n .fetchQuery(qid, combinedOptions, NetworkStatus.fetchMore)\n .then((fetchMoreResult) => {\n this.queryManager.removeQuery(qid);\n\n if (this.networkStatus === NetworkStatus.fetchMore) {\n this.networkStatus = originalNetworkStatus;\n }\n\n if (isCached) {\n // Performing this cache update inside a cache.batch transaction ensures\n // any affected cache.watch watchers are notified at most once about any\n // updates. Most watchers will be using the QueryInfo class, which\n // responds to notifications by calling reobserveCacheFirst to deliver\n // fetchMore cache results back to this ObservableQuery.\n this.queryManager.cache.batch({\n update: (cache) => {\n const { updateQuery } = fetchMoreOptions;\n if (updateQuery) {\n cache.updateQuery(\n {\n query: this.query,\n variables: this.variables,\n returnPartialData: true,\n optimistic: false,\n },\n (previous) =>\n updateQuery(previous! as any, {\n fetchMoreResult: fetchMoreResult.data as any,\n variables: combinedOptions.variables as TFetchVars,\n })\n );\n } else {\n // If we're using a field policy instead of updateQuery, the only\n // thing we need to do is write the new data to the cache using\n // combinedOptions.variables (instead of this.variables, which is\n // what this.updateQuery uses, because it works by abusing the\n // original field value, keyed by the original variables).\n cache.writeQuery({\n query: combinedOptions.query,\n variables: combinedOptions.variables,\n data: fetchMoreResult.data as Unmasked<TFetchData>,\n });\n }\n },\n\n onWatchUpdated: (watch) => {\n // Record the DocumentNode associated with any watched query whose\n // data were updated by the cache writes above.\n updatedQuerySet.add(watch.query);\n },\n });\n } else {\n // There is a possibility `lastResult` may not be set when\n // `fetchMore` is called which would cause this to crash. This should\n // only happen if we haven't previously reported a result. We don't\n // quite know what the right behavior should be here since this block\n // of code runs after the fetch result has executed on the network.\n // We plan to let it crash in the meantime.\n //\n // If we get bug reports due to the `data` property access on\n // undefined, this should give us a real-world scenario that we can\n // use to test against and determine the right behavior. If we do end\n // up changing this behavior, this may require, for example, an\n // adjustment to the types on `updateQuery` since that function\n // expects that the first argument always contains previous result\n // data, but not `undefined`.\n const lastResult = this.getLast(\"result\")!;\n const data = updateQuery!(lastResult.data as Unmasked<TData>, {\n fetchMoreResult: fetchMoreResult.data as Unmasked<TFetchData>,\n variables: combinedOptions.variables as TFetchVars,\n });\n\n this.reportResult(\n {\n ...lastResult,\n networkStatus: originalNetworkStatus,\n loading: isNetworkRequestInFlight(originalNetworkStatus),\n data: data as TData,\n },\n this.variables\n );\n }\n\n return this.maskResult(fetchMoreResult);\n })\n .finally(() => {\n // In case the cache writes above did not generate a broadcast\n // notification (which would have been intercepted by onWatchUpdated),\n // likely because the written data were the same as what was already in\n // the cache, we still want fetchMore to deliver its final loading:false\n // result with the unchanged data.\n if (isCached && !updatedQuerySet.has(this.query)) {\n reobserveCacheFirst(this);\n }\n });\n }\n\n // XXX the subscription variables are separate from the query variables.\n // if you want to update subscription variables, right now you have to do that separately,\n // and you can only do it by stopping the subscription and then subscribing again with new variables.\n /**\n * A function that enables you to execute a [subscription](https://www.apollographql.com/docs/react/data/subscriptions/), usually to subscribe to specific fields that were included in the query.\n *\n * This function returns _another_ function that you can call to terminate the subscription.\n */\n public subscribeToMore<\n TSubscriptionData = TData,\n TSubscriptionVariables extends OperationVariables = TVariables,\n >(\n options: SubscribeToMoreOptions<\n TData,\n TSubscriptionVariables,\n TSubscriptionData,\n TVariables\n >\n ): () => void {\n const subscription = this.queryManager\n .startGraphQLSubscription({\n query: options.document,\n variables: options.variables,\n context: options.context,\n })\n .subscribe({\n next: (subscriptionData) => {\n const { updateQuery } = options;\n if (updateQuery) {\n this.updateQuery((previous, updateOptions) =>\n updateQuery(previous, {\n subscriptionData: subscriptionData as {\n data: Unmasked<TSubscriptionData>;\n },\n ...updateOptions,\n })\n );\n }\n },\n error: (err: any) => {\n if (options.onError) {\n options.onError(err);\n return;\n }\n invariant.error(\"Unhandled GraphQL subscription error\", err);\n },\n });\n\n this.subscriptions.add(subscription);\n\n return () => {\n if (this.subscriptions.delete(subscription)) {\n subscription.unsubscribe();\n }\n };\n }\n\n public setOptions(\n newOptions: Partial<WatchQueryOptions<TVariables, TData>>\n ): Promise<ApolloQueryResult<MaybeMasked<TData>>> {\n return this.reobserve(newOptions);\n }\n\n public silentSetOptions(\n newOptions: Partial<WatchQueryOptions<TVariables, TData>>\n ) {\n const mergedOptions = compact(this.options, newOptions || {});\n assign(this.options, mergedOptions);\n }\n\n /**\n * Update the variables of this observable query, and fetch the new results\n * if they've changed. Most users should prefer `refetch` instead of\n * `setVariables` in order to to be properly notified of results even when\n * they come from the cache.\n *\n * Note: the `next` callback will *not* fire if the variables have not changed\n * or if the result is coming from cache.\n *\n * Note: the promise will return the old results immediately if the variables\n * have not changed.\n *\n * Note: the promise will return the last result immediately if the query is not active\n * (there are no subscribers).\n *\n * @param variables - The new set of variables. If there are missing variables,\n * the previous values of those variables will be used.\n */\n public async setVariables(\n variables: TVariables\n ): Promise<ApolloQueryResult<MaybeMasked<TData>>> {\n if (equal(this.variables, variables)) {\n // If we have no observers, then we don't actually want to make a network\n // request. As soon as someone observes the query, the request will kick\n // off. For now, we just store any changes. (See #1077)\n return this.subject.getValue();\n }\n\n this.options.variables = variables;\n\n // See comment above\n if (!this.hasObservers()) {\n return this.subject.getValue();\n }\n\n return this.reobserve(\n {\n // Reset options.fetchPolicy to its original value.\n fetchPolicy: this.options.initialFetchPolicy,\n variables,\n },\n NetworkStatus.setVariables\n );\n }\n\n /**\n * A function that enables you to update the query's cached result without executing a followup GraphQL operation.\n *\n * See [using updateQuery and updateFragment](https://www.apollographql.com/docs/react/caching/cache-interaction/#using-updatequery-and-updatefragment) for additional information.\n */\n public updateQuery(mapFn: UpdateQueryMapFn<TData, TVariables>): void {\n const { queryManager } = this;\n const { result, complete } = queryManager.cache.diff<TData>({\n query: this.options.query,\n variables: this.variables,\n returnPartialData: true,\n optimistic: false,\n });\n\n const newResult = mapFn(\n result! as Unmasked<TData>,\n {\n variables: this.variables,\n complete: !!complete,\n previousData: result,\n } as UpdateQueryOptions<TData, TVariables>\n );\n\n if (newResult) {\n queryManager.cache.writeQuery({\n query: this.options.query,\n data: newResult,\n variables: this.variables,\n });\n\n queryManager.broadcastQueries();\n }\n }\n\n /**\n * A function that instructs the query to begin re-executing at a specified interval (in milliseconds).\n */\n public startPolling(pollInterval: number) {\n this.options.pollInterval = pollInterval;\n this.updatePolling();\n }\n\n /**\n * A function that instructs the query to stop polling after a previous call to `startPolling`.\n */\n public stopPolling() {\n this.options.pollInterval = 0;\n this.updatePolling();\n }\n\n // Update options.fetchPolicy according to options.nextFetchPolicy.\n private applyNextFetchPolicy(\n reason: NextFetchPolicyContext<TData, TVariables>[\"reason\"],\n // It's possible to use this method to apply options.nextFetchPolicy to\n // options.fetchPolicy even if options !== this.options, though that happens\n // most often when the options are temporary, used for only one request and\n // then thrown away, so nextFetchPolicy may not end up mattering.\n options: WatchQueryOptions<TVariables, TData>\n ) {\n if (options.nextFetchPolicy) {\n const { fetchPolicy = \"cache-first\", initialFetchPolicy = fetchPolicy } =\n options;\n\n if (fetchPolicy === \"standby\") {\n // Do nothing, leaving options.fetchPolicy unchanged.\n } else if (typeof options.nextFetchPolicy === \"function\") {\n // When someone chooses \"cache-and-network\" or \"network-only\" as their\n // initial FetchPolicy, they often do not want future cache updates to\n // trigger unconditional network requests, which is what repeatedly\n // applying the \"cache-and-network\" or \"network-only\" policies would\n // seem to imply. Instead, when the cache reports an update after the\n // initial network request, it may be desirable for subsequent network\n // requests to be triggered only if the cache result is incomplete. To\n // that end, the options.nextFetchPolicy option provides an easy way to\n // update options.fetchPolicy after the initial network request, without\n // having to call observableQuery.setOptions.\n options.fetchPolicy = options.nextFetchPolicy(fetchPolicy, {\n reason,\n options,\n observable: this,\n initialFetchPolicy,\n });\n } else if (reason === \"variables-changed\") {\n options.fetchPolicy = initialFetchPolicy;\n } else {\n options.fetchPolicy = options.nextFetchPolicy;\n }\n }\n\n return options.fetchPolicy;\n }\n\n private fetch(\n options: WatchQueryOptions<TVariables, TData>,\n newNetworkStatus: NetworkStatus,\n emitLoadingState: boolean,\n query?: DocumentNode\n ) {\n // TODO Make sure we update the networkStatus (and infer fetchVariables)\n // before actually committing to the fetch.\n this.queryManager.setObservableQuery(this);\n return this.queryManager.fetchObservableWithInfo(\n this.queryId,\n options,\n newNetworkStatus,\n query,\n emitLoadingState\n );\n }\n\n // Turns polling on or off based on this.options.pollInterval.\n private updatePolling() {\n // Avoid polling in SSR mode\n if (this.queryManager.ssrMode) {\n return;\n }\n\n const {\n pollingInfo,\n options: { pollInterval },\n } = this;\n\n if (!pollInterval || !this.hasObservers()) {\n if (pollingInfo) {\n clearTimeout(pollingInfo.timeout);\n delete this.pollingInfo;\n }\n return;\n }\n\n if (pollingInfo && pollingInfo.interval === pollInterval) {\n return;\n }\n\n invariant(\n pollInterval,\n \"Attempted to start a polling query without a polling interval.\"\n );\n\n const info = pollingInfo || (this.pollingInfo = {} as any);\n info.interval = pollInterval;\n\n const maybeFetch = () => {\n if (this.pollingInfo) {\n if (\n !isNetworkRequestInFlight(this.networkStatus) &&\n !this.options.skipPollAttempt?.()\n ) {\n this.reobserve(\n {\n // Most fetchPolicy options don't make sense to use in a polling context, as\n // users wouldn't want to be polling the cache directly. However, network-only and\n // no-cache are both useful for when the user wants to control whether or not the\n // polled results are written to the cache.\n fetchPolicy:\n this.options.initialFetchPolicy === \"no-cache\" ?\n \"no-cache\"\n : \"network-only\",\n },\n NetworkStatus.poll\n ).then(poll, poll);\n } else {\n poll();\n }\n }\n };\n\n const poll = () => {\n const info = this.pollingInfo;\n if (info) {\n clearTimeout(info.timeout);\n info.timeout = setTimeout(maybeFetch, info.interval);\n }\n };\n\n poll();\n }\n\n private updateLastResult(\n newResult: ApolloQueryResult<TData>,\n variables = this.variables\n ) {\n let error = this.getLastError();\n // Preserve this.last.error unless the variables have changed.\n if (error && this.last && !equal(variables, this.last.variables)) {\n error = void 0;\n }\n return (this.last = {\n result:\n this.queryManager.assumeImmutableResults ?\n newResult\n : cloneDeep(newResult),\n variables,\n ...(error ? { error } : null),\n });\n }\n\n // TODO: catch `EmptyError` and rethrow as network error if `complete`\n // notification is emitted without a value.\n public reobserve(\n newOptions?: Partial<WatchQueryOptions<TVariables, TData>>,\n newNetworkStatus?: NetworkStatus\n ): Promise<ApolloQueryResult<MaybeMasked<TData>>> {\n this.isTornDown = false;\n\n const useDisposableObservable =\n // Refetching uses a disposable Observable to allow refetches using different\n // options/variables, without permanently altering the options of the\n // original ObservableQuery.\n newNetworkStatus === NetworkStatus.refetch ||\n // The fetchMore method does not actually call the reobserve method, but,\n // if it did, it would definitely use a disposable Observable.\n newNetworkStatus === NetworkStatus.fetchMore ||\n // Polling uses a disposable Observable so the polling options (which force\n // fetchPolicy to be \"network-only\" or \"no-cache\") won't override the original options.\n newNetworkStatus === NetworkStatus.poll;\n\n // Save the old variables, since Object.assign may modify them below.\n const oldVariables = this.options.variables;\n const oldFetchPolicy = this.options.fetchPolicy;\n\n const mergedOptions = compact(this.options, newOptions || {});\n const options =\n useDisposableObservable ?\n // Disposable Observable fetches receive a shallow copy of this.options\n // (merged with newOptions), leaving this.options unmodified.\n mergedOptions\n : assign(this.options, mergedOptions);\n\n // Don't update options.query with the transformed query to avoid\n // overwriting this.options.query when we aren't using a disposable concast.\n // We want to ensure we can re-run the custom document transforms the next\n // time a request is made against the original query.\n const query = this.transformDocument(options.query);\n\n this.lastQuery = query;\n\n if (!useDisposableObservable) {\n // We can skip calling updatePolling if we're not changing this.options.\n this.updatePolling();\n\n // Reset options.fetchPolicy to its original value when variables change,\n // unless a new fetchPolicy was provided by newOptions.\n if (\n newOptions &&\n newOptions.variables &&\n !equal(newOptions.variables, oldVariables) &&\n // Don't mess with the fetchPolicy if it's currently \"standby\".\n options.fetchPolicy !== \"standby\" &&\n // If we're changing the fetchPolicy anyway, don't try to change it here\n // using applyNextFetchPolicy. The explicit options.fetchPolicy wins.\n (options.fetchPolicy === oldFetchPolicy ||\n // A `nextFetchPolicy` function has even higher priority, though,\n // so in that case `applyNextFetchPolicy` must be called.\n typeof options.nextFetchPolicy === \"function\")\n ) {\n this.applyNextFetchPolicy(\"variables-changed\", options);\n if (newNetworkStatus === void 0) {\n newNetworkStatus = NetworkStatus.setVariables;\n }\n }\n }\n\n const oldNetworkStatus = this.networkStatus;\n\n if (!newNetworkStatus) {\n newNetworkStatus = NetworkStatus.loading;\n\n if (\n oldNetworkStatus !== NetworkStatus.loading &&\n newOptions?.variables &&\n !equal(newOptions.variables, oldVariables)\n ) {\n newNetworkStatus = NetworkStatus.setVariables;\n }\n }\n\n this.networkStatus = newNetworkStatus;\n this.waitForOwnResult &&= skipCacheDataFor(options.fetchPolicy);\n const finishWaitingForOwnResult = () => {\n if (this.linkObservable === observable) {\n this.waitForOwnResult = false;\n }\n };\n\n const variables = options.variables && { ...options.variables };\n const { notifyOnNetworkStatusChange = false } = options;\n const { observable, fromLink } = this.fetch(\n options,\n newNetworkStatus,\n notifyOnNetworkStatusChange &&\n oldNetworkStatus !== newNetworkStatus &&\n isNetworkRequestInFlight(newNetworkStatus),\n query\n );\n const observer: Partial<Observer<ApolloQueryResult<TData>>> = {\n next: (result) => {\n if (equal(this.variables, variables)) {\n finishWaitingForOwnResult();\n this.reportResult(result, variables);\n }\n },\n error: (error) => {\n if (equal(this.variables, variables)) {\n finishWaitingForOwnResult();\n this.reportError(error, variables);\n }\n },\n };\n\n if (!useDisposableObservable && (fromLink || !this.linkSubscription)) {\n if (this.linkSubscription) {\n this.linkSubscription.unsubscribe();\n }\n\n this.linkObservable = observable;\n this.linkSubscription = observable.subscribe(observer);\n } else {\n observable.subscribe(observer);\n }\n\n return preventUnhandledRejection(\n // Note: lastValueFrom will create a separate subscription to the\n // observable which means that terminating this ObservableQuery will not\n // cancel the request from the link chain.\n lastValueFrom(observable).then(this.maskResult)\n );\n }\n\n // (Re)deliver the current result to this.observers without applying fetch\n // policies or making network requests.\n private observe() {\n this.reportResult(\n // Passing false is important so that this.getCurrentResult doesn't\n // save the fetchMore result as this.lastResult, causing it to be\n // ignored due to the this.isDifferentFromLastResult check in\n // this.reportResult.\n this.getCurrentFullResult(false),\n this.variables\n );\n }\n\n private reportResult(\n result: ApolloQueryResult<TData>,\n variables: TVariables | undefined\n ) {\n const lastError = this.getLastError();\n const isDifferent = this.isDifferentFromLastResult(result, variables);\n // Update the last result even when isDifferentFromLastResult returns false,\n // because the query may be using the @nonreactive directive, and we want to\n // save the the latest version of any nonreactive subtrees (in case\n // getCurrentResult is called), even though we skip broadcasting changes.\n this.updateLastResult(result, variables);\n this.networkStatus = result.networkStatus;\n if (lastError || isDifferent) {\n this.subject.next(this.maskResult(result));\n }\n }\n\n private reportError(error: Error, variables: TVariables | undefined) {\n // Since we don't get the current result on errors, only the error, we\n // must mirror the updates that occur in QueryStore.markQueryError here\n const errorResult: ApolloQueryResult<TData> = {\n data: undefined,\n partial: true,\n ...this.getLastResult(),\n error,\n networkStatus: NetworkStatus.error,\n loading: false,\n };\n\n this.updateLastResult(errorResult, variables);\n this.networkStatus = NetworkStatus.error;\n this.last!.error = error;\n this.subject.next(errorResult);\n }\n\n public hasObservers() {\n return this.subject.observed;\n }\n\n private tearDownQuery() {\n if (this.isTornDown) return;\n if (this.linkObservable && this.linkSubscription) {\n this.linkSubscription.unsubscribe();\n delete this.linkObservable;\n delete this.linkSubscription;\n }\n\n this.stopPolling();\n // stop all active GraphQL subscriptions\n this.subscriptions.forEach((sub) => sub.unsubscribe());\n this.subscriptions.clear();\n this.queryManager.stopQuery(this.queryId);\n this.isTornDown = true;\n }\n\n private transformDocument(document: DocumentNode) {\n return this.queryManager.transform(document);\n }\n\n private maskResult<T = TData>(\n result: ApolloQueryResult<T>\n ): ApolloQueryResult<MaybeMasked<T>> {\n return result && \"data\" in result ?\n {\n ...result,\n data: this.queryManager.maskOperation({\n document: this.query,\n data: result.data,\n fetchPolicy: this.options.fetchPolicy,\n id: this.queryId,\n }),\n }\n : result;\n }\n}\n\n// Reobserve with fetchPolicy effectively set to \"cache-first\", triggering\n// delivery of any new data from the cache, possibly falling back to the network\n// if any cache data are missing. This allows _complete_ cache results to be\n// delivered without also kicking off unnecessary network requests when\n// this.options.fetchPolicy is \"cache-and-network\" or \"network-only\". When\n// this.options.fetchPolicy is any other policy (\"cache-first\", \"cache-only\",\n// \"standby\", or \"no-cache\"), we call this.reobserve() as usual.\nexport function reobserveCacheFirst<TData, TVars extends OperationVariables>(\n obsQuery: ObservableQuery<TData, TVars>\n) {\n const { fetchPolicy, nextFetchPolicy } = obsQuery.options;\n\n if (fetchPolicy === \"cache-and-network\" || fetchPolicy === \"network-only\") {\n return obsQuery.reobserve({\n fetchPolicy: \"cache-first\",\n // Use a temporary nextFetchPolicy function that replaces itself with the\n // previous nextFetchPolicy value and returns the original fetchPolicy.\n nextFetchPolicy(\n this: WatchQueryOptions<TVars, TData>,\n currentFetchPolicy: WatchQueryFetchPolicy,\n context: NextFetchPolicyContext<TData, TVars>\n ) {\n // Replace this nextFetchPolicy function in the options object with the\n // original this.options.nextFetchPolicy value.\n this.nextFetchPolicy = nextFetchPolicy;\n // If the original nextFetchPolicy value was a function, give it a\n // chance to decide what happens here.\n if (typeof this.nextFetchPolicy === \"function\") {\n return this.nextFetchPolicy(currentFetchPolicy, context);\n }\n // Otherwise go back to the original this.options.fetchPolicy.\n return fetchPolicy!;\n },\n });\n }\n\n return obsQuery.reobserve();\n}\n\nexport function logMissingFieldErrors(\n missing: MissingFieldError | MissingTree | undefined\n) {\n if (__DEV__ && missing) {\n invariant.debug(`Missing cache result fields: %o`, missing);\n }\n}\n\nfunction skipCacheDataFor(\n fetchPolicy?: WatchQueryFetchPolicy /* `undefined` would mean `\"cache-first\"` */\n) {\n return (\n fetchPolicy === \"network-only\" ||\n fetchPolicy === \"no-cache\" ||\n fetchPolicy === \"standby\"\n );\n}\n"],"names":[],"mappings":"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CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB,EAAE,CAAnB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA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CAAA,CAAA,CAAA,CAAA,CAAoB,EAAE;gBACZ,CAAV,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,CAAA,CAAA,CAAA,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,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;gBACU,CAAV;gBACU,CAAV,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;gBACU,CAAV,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA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AA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;gBACQ,CAAR,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,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;gBACQ,CAAR,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;gBACQ,CAAR,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;gBACQ,CAAR,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA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AA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAA2B,CAA3B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAwC,CAAC,CAAzC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAA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0C,CAAC;QAEvC,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,CAAA,CAAA,CAAA,EAAU,CAAV,CAAA,CAAA,CAAA,E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CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA;AACA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;AACA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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"}