@apollo/client 4.0.0-rc.0 → 4.0.0-rc.10

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 (1155) hide show
  1. package/CHANGELOG.md +394 -0
  2. package/README.md +40 -40
  3. package/__cjs/cache/core/cache.cjs +16 -19
  4. package/__cjs/cache/core/cache.cjs.map +1 -1
  5. package/__cjs/cache/core/cache.d.cts +108 -73
  6. package/__cjs/cache/core/types/Cache.cjs +0 -4
  7. package/__cjs/cache/core/types/Cache.cjs.map +1 -1
  8. package/__cjs/cache/core/types/Cache.d.cts +200 -15
  9. package/__cjs/cache/{core/types/DataProxy.cjs → deprecated.cjs} +1 -1
  10. package/__cjs/cache/deprecated.cjs.map +1 -0
  11. package/__cjs/cache/deprecated.d.cts +6 -0
  12. package/__cjs/cache/index.cjs.map +1 -1
  13. package/__cjs/cache/index.d.cts +3 -3
  14. package/__cjs/cache/inmemory/entityStore.cjs +28 -31
  15. package/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
  16. package/__cjs/cache/inmemory/entityStore.d.cts +18 -17
  17. package/__cjs/cache/inmemory/helpers.cjs.map +1 -1
  18. package/__cjs/cache/inmemory/inMemoryCache.cjs +3 -8
  19. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  20. package/__cjs/cache/inmemory/inMemoryCache.d.cts +4 -4
  21. package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  22. package/__cjs/cache/inmemory/key-extractor.cjs.map +1 -1
  23. package/__cjs/cache/inmemory/policies.cjs +4 -4
  24. package/__cjs/cache/inmemory/policies.cjs.map +1 -1
  25. package/__cjs/cache/inmemory/policies.d.cts +3 -2
  26. package/__cjs/cache/inmemory/reactiveVars.cjs.map +1 -1
  27. package/__cjs/cache/inmemory/readFromStore.cjs +4 -6
  28. package/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
  29. package/__cjs/cache/inmemory/readFromStore.d.cts +0 -1
  30. package/__cjs/cache/inmemory/types.d.cts +1 -6
  31. package/__cjs/cache/inmemory/writeToStore.cjs +4 -4
  32. package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  33. package/__cjs/cache/inmemory/writeToStore.d.cts +1 -1
  34. package/__cjs/core/ApolloClient.cjs +160 -131
  35. package/__cjs/core/ApolloClient.cjs.map +1 -1
  36. package/__cjs/core/ApolloClient.d.cts +788 -191
  37. package/__cjs/core/ObservableQuery.cjs +50 -20
  38. package/__cjs/core/ObservableQuery.cjs.map +1 -1
  39. package/__cjs/core/ObservableQuery.d.cts +190 -107
  40. package/__cjs/core/QueryInfo.cjs +2 -6
  41. package/__cjs/core/QueryInfo.cjs.map +1 -1
  42. package/__cjs/core/QueryInfo.d.cts +9 -8
  43. package/__cjs/core/QueryManager.cjs +15 -14
  44. package/__cjs/core/QueryManager.cjs.map +1 -1
  45. package/__cjs/core/QueryManager.d.cts +20 -20
  46. package/__cjs/core/deprecated.cjs +3 -0
  47. package/__cjs/core/deprecated.cjs.map +1 -0
  48. package/__cjs/core/deprecated.d.cts +29 -0
  49. package/__cjs/core/index.cjs +1 -2
  50. package/__cjs/core/index.cjs.map +1 -1
  51. package/__cjs/core/index.d.cts +12 -9
  52. package/__cjs/core/networkStatus.cjs.map +1 -1
  53. package/__cjs/core/types.d.cts +186 -145
  54. package/__cjs/core/watchQueryOptions.d.cts +14 -303
  55. package/__cjs/dev/index.cjs.map +1 -1
  56. package/__cjs/dev/loadDevMessages.cjs.map +1 -1
  57. package/__cjs/dev/loadErrorMessageHandler.cjs.map +1 -1
  58. package/__cjs/dev/loadErrorMessages.cjs.map +1 -1
  59. package/__cjs/dev/setErrorMessageHandler.cjs.map +1 -1
  60. package/__cjs/dev/setErrorMessageHandler.d.cts +4 -4
  61. package/__cjs/dev/symbol.cjs.map +1 -1
  62. package/__cjs/errors/CombinedGraphQLErrors.cjs +64 -11
  63. package/__cjs/errors/CombinedGraphQLErrors.cjs.map +1 -1
  64. package/__cjs/errors/CombinedGraphQLErrors.d.cts +168 -14
  65. package/__cjs/errors/CombinedProtocolErrors.cjs +54 -1
  66. package/__cjs/errors/CombinedProtocolErrors.cjs.map +1 -1
  67. package/__cjs/errors/CombinedProtocolErrors.d.cts +132 -2
  68. package/__cjs/errors/LinkError.cjs +45 -2
  69. package/__cjs/errors/LinkError.cjs.map +1 -1
  70. package/__cjs/errors/LinkError.d.cts +45 -2
  71. package/__cjs/errors/LocalStateError.cjs +35 -5
  72. package/__cjs/errors/LocalStateError.cjs.map +1 -1
  73. package/__cjs/errors/LocalStateError.d.cts +41 -5
  74. package/__cjs/errors/ServerError.cjs +51 -8
  75. package/__cjs/errors/ServerError.cjs.map +1 -1
  76. package/__cjs/errors/ServerError.d.cts +71 -11
  77. package/__cjs/errors/ServerParseError.cjs +46 -8
  78. package/__cjs/errors/ServerParseError.cjs.map +1 -1
  79. package/__cjs/errors/ServerParseError.d.cts +72 -16
  80. package/__cjs/errors/UnconventionalError.cjs +46 -2
  81. package/__cjs/errors/UnconventionalError.cjs.map +1 -1
  82. package/__cjs/errors/UnconventionalError.d.cts +46 -2
  83. package/__cjs/errors/index.cjs.map +1 -1
  84. package/__cjs/errors/isErrorLike.cjs.map +1 -1
  85. package/__cjs/errors/utils.cjs.map +1 -1
  86. package/__cjs/incremental/handlers/defer20220824.cjs.map +1 -1
  87. package/__cjs/incremental/handlers/defer20220824.d.cts +4 -4
  88. package/__cjs/incremental/handlers/notImplemented.cjs +1 -1
  89. package/__cjs/incremental/handlers/notImplemented.cjs.map +1 -1
  90. package/__cjs/incremental/handlers/notImplemented.d.cts +2 -2
  91. package/__cjs/incremental/index.cjs.map +1 -1
  92. package/__cjs/incremental/types.d.cts +4 -4
  93. package/__cjs/invariantErrorCodes.cjs +84 -93
  94. package/__cjs/invariantErrorCodes.cjs.map +1 -1
  95. package/__cjs/link/batch/batchLink.cjs +33 -13
  96. package/__cjs/link/batch/batchLink.cjs.map +1 -1
  97. package/__cjs/link/batch/batchLink.d.cts +103 -28
  98. package/__cjs/link/batch/batching.cjs +1 -1
  99. package/__cjs/link/batch/batching.cjs.map +1 -1
  100. package/__cjs/link/batch/batching.d.cts +8 -8
  101. package/__cjs/link/batch/index.cjs +1 -2
  102. package/__cjs/link/batch/index.cjs.map +1 -1
  103. package/__cjs/link/batch/index.d.cts +1 -2
  104. package/__cjs/link/batch-http/BaseBatchHttpLink.cjs +156 -0
  105. package/__cjs/link/batch-http/BaseBatchHttpLink.cjs.map +1 -0
  106. package/__cjs/link/batch-http/BaseBatchHttpLink.d.cts +68 -0
  107. package/__cjs/link/batch-http/batchHttpLink.cjs +28 -130
  108. package/__cjs/link/batch-http/batchHttpLink.cjs.map +1 -1
  109. package/__cjs/link/batch-http/batchHttpLink.d.cts +40 -17
  110. package/__cjs/link/batch-http/index.cjs +2 -1
  111. package/__cjs/link/batch-http/index.cjs.map +1 -1
  112. package/__cjs/link/batch-http/index.d.cts +2 -1
  113. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs +36 -3
  114. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs.map +1 -1
  115. package/__cjs/link/client-awareness/ClientAwarenessLink.d.cts +59 -7
  116. package/__cjs/link/client-awareness/index.cjs.map +1 -1
  117. package/__cjs/link/context/index.cjs +37 -14
  118. package/__cjs/link/context/index.cjs.map +1 -1
  119. package/__cjs/link/context/index.d.cts +78 -5
  120. package/__cjs/link/core/ApolloLink.cjs +227 -55
  121. package/__cjs/link/core/ApolloLink.cjs.map +1 -1
  122. package/__cjs/link/core/ApolloLink.d.cts +355 -9
  123. package/__cjs/link/core/concat.cjs +4 -0
  124. package/__cjs/link/core/concat.cjs.map +1 -1
  125. package/__cjs/link/core/concat.d.cts +4 -0
  126. package/__cjs/link/core/deprecated.cjs +3 -0
  127. package/__cjs/link/core/deprecated.cjs.map +1 -0
  128. package/__cjs/link/core/deprecated.d.cts +10 -0
  129. package/__cjs/link/core/empty.cjs +4 -0
  130. package/__cjs/link/core/empty.cjs.map +1 -1
  131. package/__cjs/link/core/empty.d.cts +4 -0
  132. package/__cjs/link/core/execute.cjs.map +1 -1
  133. package/__cjs/link/core/from.cjs +4 -0
  134. package/__cjs/link/core/from.cjs.map +1 -1
  135. package/__cjs/link/core/from.d.cts +4 -0
  136. package/__cjs/link/core/split.cjs +4 -0
  137. package/__cjs/link/core/split.cjs.map +1 -1
  138. package/__cjs/link/core/split.d.cts +4 -0
  139. package/__cjs/link/core/types.d.cts +1 -30
  140. package/__cjs/link/error/index.cjs +44 -0
  141. package/__cjs/link/error/index.cjs.map +1 -1
  142. package/__cjs/link/error/index.d.cts +84 -10
  143. package/__cjs/link/http/BaseHttpLink.cjs +62 -12
  144. package/__cjs/link/http/BaseHttpLink.cjs.map +1 -1
  145. package/__cjs/link/http/BaseHttpLink.d.cts +256 -2
  146. package/__cjs/link/http/HttpLink.cjs +27 -2
  147. package/__cjs/link/http/HttpLink.cjs.map +1 -1
  148. package/__cjs/link/http/HttpLink.d.cts +45 -135
  149. package/__cjs/link/http/checkFetcher.cjs +1 -1
  150. package/__cjs/link/http/index.cjs +1 -3
  151. package/__cjs/link/http/index.cjs.map +1 -1
  152. package/__cjs/link/http/index.d.cts +0 -2
  153. package/__cjs/link/http/parseAndCheckHttpResponse.cjs +41 -26
  154. package/__cjs/link/http/parseAndCheckHttpResponse.cjs.map +1 -1
  155. package/__cjs/link/http/parseAndCheckHttpResponse.d.cts +2 -2
  156. package/__cjs/link/http/rewriteURIForGET.cjs +2 -3
  157. package/__cjs/link/http/rewriteURIForGET.cjs.map +1 -1
  158. package/__cjs/link/http/rewriteURIForGET.d.cts +2 -2
  159. package/__cjs/link/http/selectHttpOptionsAndBody.cjs.map +1 -1
  160. package/__cjs/link/http/selectHttpOptionsAndBody.d.cts +9 -9
  161. package/__cjs/link/http/selectURI.cjs.map +1 -1
  162. package/__cjs/link/http/selectURI.d.cts +2 -2
  163. package/__cjs/link/index.cjs.map +1 -1
  164. package/__cjs/link/index.d.cts +2 -1
  165. package/__cjs/link/persisted-queries/index.cjs +18 -2
  166. package/__cjs/link/persisted-queries/index.cjs.map +1 -1
  167. package/__cjs/link/persisted-queries/index.d.cts +207 -28
  168. package/__cjs/link/remove-typename/index.cjs.map +1 -1
  169. package/__cjs/link/remove-typename/index.d.cts +0 -1
  170. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs +48 -0
  171. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs.map +1 -1
  172. package/__cjs/link/remove-typename/removeTypenameFromVariables.d.cts +124 -8
  173. package/__cjs/link/retry/delayFunction.cjs.map +1 -1
  174. package/__cjs/link/retry/delayFunction.d.cts +2 -39
  175. package/__cjs/link/retry/index.cjs.map +1 -1
  176. package/__cjs/link/retry/retryFunction.cjs.map +1 -1
  177. package/__cjs/link/retry/retryFunction.d.cts +2 -29
  178. package/__cjs/link/retry/retryLink.cjs +37 -12
  179. package/__cjs/link/retry/retryLink.cjs.map +1 -1
  180. package/__cjs/link/retry/retryLink.d.cts +130 -6
  181. package/__cjs/link/schema/index.cjs +20 -0
  182. package/__cjs/link/schema/index.cjs.map +1 -1
  183. package/__cjs/link/schema/index.d.cts +130 -9
  184. package/__cjs/link/subscriptions/index.cjs +23 -0
  185. package/__cjs/link/subscriptions/index.cjs.map +1 -1
  186. package/__cjs/link/subscriptions/index.d.cts +24 -2
  187. package/__cjs/link/utils/createOperation.cjs +12 -4
  188. package/__cjs/link/utils/createOperation.cjs.map +1 -1
  189. package/__cjs/link/utils/createOperation.d.cts +2 -2
  190. package/__cjs/link/utils/filterOperationVariables.cjs.map +1 -1
  191. package/__cjs/link/utils/index.cjs +1 -5
  192. package/__cjs/link/utils/index.cjs.map +1 -1
  193. package/__cjs/link/utils/index.d.cts +0 -2
  194. package/__cjs/link/ws/index.cjs +35 -1
  195. package/__cjs/link/ws/index.cjs.map +1 -1
  196. package/__cjs/link/ws/index.d.cts +64 -7
  197. package/__cjs/local-state/LocalState.cjs +55 -12
  198. package/__cjs/local-state/LocalState.cjs.map +1 -1
  199. package/__cjs/local-state/LocalState.d.cts +94 -0
  200. package/__cjs/local-state/index.cjs.map +1 -1
  201. package/__cjs/masking/GraphQLCodegenDataMasking.d.cts +11 -44
  202. package/__cjs/masking/PreserveTypes.cjs +3 -0
  203. package/__cjs/masking/PreserveTypes.cjs.map +1 -0
  204. package/__cjs/masking/PreserveTypes.d.cts +26 -0
  205. package/__cjs/masking/index.cjs.map +1 -1
  206. package/__cjs/masking/index.d.cts +1 -1
  207. package/__cjs/masking/internal/types.d.cts +70 -71
  208. package/__cjs/masking/maskDefinition.cjs +2 -2
  209. package/__cjs/masking/maskDefinition.cjs.map +1 -1
  210. package/__cjs/masking/maskFragment.cjs +2 -2
  211. package/__cjs/masking/maskFragment.cjs.map +1 -1
  212. package/__cjs/masking/maskOperation.cjs +1 -1
  213. package/__cjs/masking/maskOperation.cjs.map +1 -1
  214. package/__cjs/masking/types.d.cts +5 -23
  215. package/__cjs/masking/utils.cjs +3 -3
  216. package/__cjs/masking/utils.cjs.map +1 -1
  217. package/__cjs/react/context/ApolloContext.cjs +1 -1
  218. package/__cjs/react/context/ApolloContext.cjs.map +1 -1
  219. package/__cjs/react/context/ApolloProvider.cjs +1 -1
  220. package/__cjs/react/hooks/constants.cjs.map +1 -1
  221. package/__cjs/react/hooks/internal/__use.cjs.map +1 -1
  222. package/__cjs/react/hooks/internal/index.cjs.map +1 -1
  223. package/__cjs/react/hooks/internal/useDeepMemo.cjs +0 -3
  224. package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -1
  225. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.cjs.map +1 -1
  226. package/__cjs/react/hooks/internal/useRenderGuard.cjs.map +1 -1
  227. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs.map +1 -1
  228. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.d.cts +2 -2
  229. package/__cjs/react/hooks/internal/wrapHook.cjs +1 -0
  230. package/__cjs/react/hooks/internal/wrapHook.cjs.map +1 -1
  231. package/__cjs/react/hooks/internal/wrapHook.d.cts +8 -7
  232. package/__cjs/react/hooks/useApolloClient.cjs +2 -2
  233. package/__cjs/react/hooks/useApolloClient.cjs.map +1 -1
  234. package/__cjs/react/hooks/useApolloClient.d.cts +2 -2
  235. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  236. package/__cjs/react/hooks/useBackgroundQuery.d.cts +850 -86
  237. package/__cjs/react/hooks/useFragment.cjs +11 -5
  238. package/__cjs/react/hooks/useFragment.cjs.map +1 -1
  239. package/__cjs/react/hooks/useFragment.d.cts +56 -8
  240. package/__cjs/react/hooks/useLazyQuery.cjs +0 -38
  241. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  242. package/__cjs/react/hooks/useLazyQuery.d.cts +317 -161
  243. package/__cjs/react/hooks/useLoadableQuery.cjs.map +1 -1
  244. package/__cjs/react/hooks/useLoadableQuery.d.cts +246 -69
  245. package/__cjs/react/hooks/useMutation.cjs +6 -7
  246. package/__cjs/react/hooks/useMutation.cjs.map +1 -1
  247. package/__cjs/react/hooks/useMutation.d.cts +88 -66
  248. package/__cjs/react/hooks/useQuery.cjs +12 -38
  249. package/__cjs/react/hooks/useQuery.cjs.map +1 -1
  250. package/__cjs/react/hooks/useQuery.d.cts +367 -239
  251. package/__cjs/react/hooks/useQueryRefHandlers.cjs +2 -1
  252. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
  253. package/__cjs/react/hooks/useQueryRefHandlers.d.cts +36 -3
  254. package/__cjs/react/hooks/useReactiveVar.cjs +2 -1
  255. package/__cjs/react/hooks/useReactiveVar.cjs.map +1 -1
  256. package/__cjs/react/hooks/useReactiveVar.d.cts +2 -1
  257. package/__cjs/react/hooks/useReadQuery.cjs +29 -0
  258. package/__cjs/react/hooks/useReadQuery.cjs.map +1 -1
  259. package/__cjs/react/hooks/useReadQuery.d.cts +92 -16
  260. package/__cjs/react/hooks/useSubscription.cjs +8 -9
  261. package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  262. package/__cjs/react/hooks/useSubscription.d.cts +160 -68
  263. package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
  264. package/__cjs/react/hooks/useSuspenseFragment.d.cts +62 -30
  265. package/__cjs/react/hooks/useSuspenseQuery.cjs +4 -1
  266. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  267. package/__cjs/react/hooks/useSuspenseQuery.d.cts +585 -159
  268. package/__cjs/react/hooks/useSyncExternalStore.cjs +2 -6
  269. package/__cjs/react/hooks/useSyncExternalStore.cjs.map +1 -1
  270. package/__cjs/react/index.cjs +2 -5
  271. package/__cjs/react/index.cjs.map +1 -1
  272. package/__cjs/react/index.d.cts +1 -2
  273. package/__cjs/react/index.react-server.cjs +1 -3
  274. package/__cjs/react/index.react-server.cjs.map +1 -1
  275. package/__cjs/react/index.react-server.d.cts +0 -1
  276. package/__cjs/react/internal/cache/FragmentReference.cjs +1 -1
  277. package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -1
  278. package/__cjs/react/internal/cache/FragmentReference.d.cts +2 -3
  279. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
  280. package/__cjs/react/internal/cache/QueryReference.d.cts +14 -12
  281. package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -1
  282. package/__cjs/react/internal/cache/SuspenseCache.d.cts +2 -2
  283. package/__cjs/react/internal/cache/getSuspenseCache.cjs.map +1 -1
  284. package/__cjs/react/internal/cache/getSuspenseCache.d.cts +6 -4
  285. package/__cjs/react/internal/compiler-runtime/index.cjs +32 -0
  286. package/__cjs/react/internal/compiler-runtime/index.cjs.map +1 -0
  287. package/__cjs/react/internal/compiler-runtime/index.d.cts +8 -0
  288. package/__cjs/react/internal/index.cjs +1 -0
  289. package/__cjs/react/internal/index.cjs.map +1 -1
  290. package/__cjs/react/internal/index.d.cts +1 -1
  291. package/__cjs/react/internal/types.d.cts +3 -3
  292. package/__cjs/react/query-preloader/createQueryPreloader.cjs +1 -1
  293. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  294. package/__cjs/react/query-preloader/createQueryPreloader.d.cts +60 -51
  295. package/__cjs/react/ssr/getDataFromTree.cjs.map +1 -1
  296. package/__cjs/react/ssr/index.cjs.map +1 -1
  297. package/__cjs/react/ssr/prerenderStatic.cjs +5 -4
  298. package/__cjs/react/ssr/prerenderStatic.cjs.map +1 -1
  299. package/__cjs/react/ssr/prerenderStatic.d.cts +11 -9
  300. package/__cjs/react/ssr/renderToStringWithData.cjs.map +1 -1
  301. package/__cjs/react/ssr/useSSRQuery.cjs.map +1 -1
  302. package/__cjs/react/types/deprecated.d.cts +1 -1
  303. package/__cjs/react/types/types.documentation.d.cts +27 -16
  304. package/__cjs/testing/core/mocking/mockLink.cjs.map +1 -1
  305. package/__cjs/testing/core/mocking/mockLink.d.cts +8 -8
  306. package/__cjs/testing/core/mocking/mockSubscriptionLink.cjs.map +1 -1
  307. package/__cjs/testing/core/mocking/mockSubscriptionLink.d.cts +3 -4
  308. package/__cjs/testing/core/types/deprecated.d.cts +3 -2
  309. package/__cjs/testing/index.cjs.map +1 -1
  310. package/__cjs/testing/react/MockedProvider.cjs +2 -2
  311. package/__cjs/testing/react/MockedProvider.cjs.map +1 -1
  312. package/__cjs/testing/react/MockedProvider.d.cts +2 -7
  313. package/__cjs/testing/react/index.cjs.map +1 -1
  314. package/__cjs/utilities/HKT.d.cts +8 -7
  315. package/__cjs/utilities/caching/index.cjs.map +1 -1
  316. package/__cjs/utilities/caching/sizes.cjs +3 -3
  317. package/__cjs/utilities/caching/sizes.cjs.map +1 -1
  318. package/__cjs/utilities/caching/sizes.d.cts +4 -6
  319. package/__cjs/utilities/common/stripTypename.cjs +11 -0
  320. package/__cjs/utilities/common/stripTypename.cjs.map +1 -1
  321. package/__cjs/utilities/common/stripTypename.d.cts +11 -0
  322. package/__cjs/utilities/environment/index.cjs.map +1 -1
  323. package/__cjs/utilities/environment/index.development.cjs.map +1 -1
  324. package/__cjs/utilities/environment/index.production.cjs.map +1 -1
  325. package/__cjs/utilities/graphql/DocumentTransform.cjs +86 -3
  326. package/__cjs/utilities/graphql/DocumentTransform.cjs.map +1 -1
  327. package/__cjs/utilities/graphql/DocumentTransform.d.cts +94 -5
  328. package/__cjs/utilities/graphql/isFormattedExecutionResult.cjs +27 -0
  329. package/__cjs/utilities/graphql/isFormattedExecutionResult.cjs.map +1 -1
  330. package/__cjs/utilities/graphql/isFormattedExecutionResult.d.cts +27 -0
  331. package/__cjs/utilities/graphql/operations.cjs +54 -3
  332. package/__cjs/utilities/graphql/operations.cjs.map +1 -1
  333. package/__cjs/utilities/graphql/operations.d.cts +54 -3
  334. package/__cjs/utilities/graphql/print.cjs.map +1 -1
  335. package/__cjs/utilities/graphql/storeUtils.cjs +9 -0
  336. package/__cjs/utilities/graphql/storeUtils.cjs.map +1 -1
  337. package/__cjs/utilities/graphql/storeUtils.d.cts +9 -0
  338. package/__cjs/utilities/graphql/transform.cjs +12 -1
  339. package/__cjs/utilities/graphql/transform.cjs.map +1 -1
  340. package/__cjs/utilities/graphql/transform.d.cts +12 -1
  341. package/__cjs/utilities/index.cjs +4 -3
  342. package/__cjs/utilities/index.cjs.map +1 -1
  343. package/__cjs/utilities/index.d.cts +1 -1
  344. package/__cjs/utilities/internal/argumentsObjectFromField.cjs.map +1 -1
  345. package/__cjs/utilities/internal/caches.cjs.map +1 -1
  346. package/__cjs/utilities/internal/canUseDOM.cjs.map +1 -1
  347. package/__cjs/utilities/{shared → internal}/canonicalStringify.cjs +35 -14
  348. package/__cjs/utilities/internal/canonicalStringify.cjs.map +1 -0
  349. package/__cjs/utilities/internal/canonicalStringify.d.cts +44 -0
  350. package/__cjs/utilities/internal/checkDocument.cjs +2 -2
  351. package/__cjs/utilities/internal/checkDocument.cjs.map +1 -1
  352. package/__cjs/utilities/internal/cloneDeep.cjs.map +1 -1
  353. package/__cjs/utilities/internal/compact.cjs.map +1 -1
  354. package/__cjs/utilities/internal/createFragmentMap.cjs.map +1 -1
  355. package/__cjs/utilities/internal/createFulfilledPromise.cjs.map +1 -1
  356. package/__cjs/utilities/internal/createRejectedPromise.cjs.map +1 -1
  357. package/__cjs/utilities/internal/dealias.cjs.map +1 -1
  358. package/__cjs/utilities/internal/decoratePromise.cjs.map +1 -1
  359. package/__cjs/utilities/internal/deepFreeze.cjs.map +1 -1
  360. package/__cjs/{core → utilities/internal}/equalByQuery.cjs +13 -7
  361. package/__cjs/utilities/internal/equalByQuery.cjs.map +1 -0
  362. package/__cjs/utilities/internal/equalByQuery.d.cts +5 -0
  363. package/__cjs/utilities/internal/filterMap.cjs.map +1 -1
  364. package/__cjs/utilities/internal/getDefaultValues.cjs.map +1 -1
  365. package/__cjs/utilities/internal/getFragmentDefinition.cjs.map +1 -1
  366. package/__cjs/utilities/internal/getFragmentDefinitions.cjs.map +1 -1
  367. package/__cjs/utilities/internal/getFragmentFromSelection.cjs.map +1 -1
  368. package/__cjs/utilities/internal/getFragmentQueryDocument.cjs +13 -3
  369. package/__cjs/utilities/internal/getFragmentQueryDocument.cjs.map +1 -1
  370. package/__cjs/utilities/internal/getFragmentQueryDocument.d.cts +13 -3
  371. package/__cjs/utilities/internal/getGraphQLErrorsFromResult.cjs.map +1 -1
  372. package/__cjs/utilities/internal/getMainDefinition.cjs +37 -14
  373. package/__cjs/utilities/internal/getMainDefinition.cjs.map +1 -1
  374. package/__cjs/utilities/internal/getMainDefinition.d.cts +36 -8
  375. package/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -1
  376. package/__cjs/utilities/internal/getOperationDefinition.cjs.map +1 -1
  377. package/__cjs/utilities/internal/getOperationName.cjs.map +1 -1
  378. package/__cjs/utilities/internal/getQueryDefinition.cjs.map +1 -1
  379. package/__cjs/utilities/internal/getStoreKeyName.cjs +9 -7
  380. package/__cjs/utilities/internal/getStoreKeyName.cjs.map +1 -1
  381. package/__cjs/utilities/internal/globals/global.cjs.map +1 -1
  382. package/__cjs/utilities/internal/globals/index.cjs.map +1 -1
  383. package/__cjs/utilities/internal/globals/maybe.cjs.map +1 -1
  384. package/__cjs/utilities/internal/graphQLResultHasError.cjs.map +1 -1
  385. package/__cjs/utilities/internal/hasDirectives.cjs.map +1 -1
  386. package/__cjs/utilities/internal/hasForcedResolvers.cjs.map +1 -1
  387. package/__cjs/utilities/internal/index.cjs +8 -2
  388. package/__cjs/utilities/internal/index.cjs.map +1 -1
  389. package/__cjs/utilities/internal/index.d.cts +4 -0
  390. package/__cjs/utilities/internal/index.production.cjs.map +1 -1
  391. package/__cjs/utilities/internal/isArray.cjs.map +1 -1
  392. package/__cjs/utilities/internal/isDocumentNode.cjs.map +1 -1
  393. package/__cjs/utilities/internal/isField.cjs.map +1 -1
  394. package/__cjs/utilities/internal/isNonEmptyArray.cjs.map +1 -1
  395. package/__cjs/utilities/internal/isNonNullObject.cjs.map +1 -1
  396. package/__cjs/utilities/internal/isPlainObject.cjs.map +1 -1
  397. package/__cjs/utilities/internal/makeReference.cjs.map +1 -1
  398. package/__cjs/utilities/internal/makeUniqueId.cjs.map +1 -1
  399. package/__cjs/utilities/internal/maybeDeepFreeze.cjs.map +1 -1
  400. package/__cjs/utilities/internal/mergeDeep.cjs.map +1 -1
  401. package/__cjs/utilities/internal/mergeDeepArray.cjs.map +1 -1
  402. package/__cjs/utilities/internal/mergeOptions.cjs.map +1 -1
  403. package/__cjs/utilities/internal/mergeOptions.d.cts +2 -2
  404. package/__cjs/utilities/internal/omitDeep.cjs.map +1 -1
  405. package/__cjs/utilities/internal/preventUnhandledRejection.cjs.map +1 -1
  406. package/__cjs/utilities/internal/removeDirectivesFromDocument.cjs +2 -6
  407. package/__cjs/utilities/internal/removeDirectivesFromDocument.cjs.map +1 -1
  408. package/__cjs/utilities/internal/removeFragmentSpreads.cjs +14 -0
  409. package/__cjs/utilities/internal/removeFragmentSpreads.cjs.map +1 -0
  410. package/__cjs/utilities/internal/removeFragmentSpreads.d.cts +3 -0
  411. package/__cjs/utilities/internal/resultKeyNameFromField.cjs.map +1 -1
  412. package/__cjs/utilities/internal/shouldInclude.cjs.map +1 -1
  413. package/__cjs/utilities/internal/storeKeyNameFromField.cjs.map +1 -1
  414. package/__cjs/utilities/internal/stringifyForDisplay.cjs.map +1 -1
  415. package/__cjs/utilities/internal/toQueryResult.cjs.map +1 -1
  416. package/__cjs/utilities/internal/toQueryResult.d.cts +2 -2
  417. package/__cjs/utilities/internal/types/DocumentationTypes.cjs +3 -0
  418. package/__cjs/utilities/internal/types/DocumentationTypes.cjs.map +1 -0
  419. package/__cjs/utilities/internal/types/DocumentationTypes.d.cts +88 -0
  420. package/__cjs/utilities/internal/types/NoInfer.d.cts +31 -25
  421. package/__cjs/utilities/internal/types/VariablesOption.d.cts +2 -6
  422. package/__cjs/utilities/internal/valueToObjectRepresentation.cjs.map +1 -1
  423. package/__cjs/utilities/invariant/index.cjs.map +1 -1
  424. package/__cjs/utilities/invariant/index.development.cjs.map +1 -1
  425. package/__cjs/utilities/policies/pagination.cjs.map +1 -1
  426. package/__cjs/utilities/subscriptions/relay/index.cjs +3 -2
  427. package/__cjs/utilities/subscriptions/relay/index.cjs.map +1 -1
  428. package/__cjs/version.cjs +1 -1
  429. package/__cjs/version.cjs.map +1 -1
  430. package/cache/core/cache.d.ts +108 -73
  431. package/cache/core/cache.js +17 -20
  432. package/cache/core/cache.js.map +1 -1
  433. package/cache/core/types/Cache.d.ts +201 -16
  434. package/cache/core/types/Cache.js +2 -4
  435. package/cache/core/types/Cache.js.map +1 -1
  436. package/cache/core/types/common.d.ts +1 -1
  437. package/cache/core/types/common.js +1 -1
  438. package/cache/core/types/common.js.map +1 -1
  439. package/cache/deprecated.d.ts +6 -0
  440. package/cache/deprecated.js +2 -0
  441. package/cache/deprecated.js.map +1 -0
  442. package/cache/index.d.ts +4 -4
  443. package/cache/index.js +1 -1
  444. package/cache/index.js.map +1 -1
  445. package/cache/inmemory/entityStore.d.ts +19 -18
  446. package/cache/inmemory/entityStore.js +28 -31
  447. package/cache/inmemory/entityStore.js.map +1 -1
  448. package/cache/inmemory/fragmentRegistry.d.ts +1 -1
  449. package/cache/inmemory/fragmentRegistry.js +1 -1
  450. package/cache/inmemory/fragmentRegistry.js.map +1 -1
  451. package/cache/inmemory/helpers.d.ts +1 -1
  452. package/cache/inmemory/helpers.js +1 -1
  453. package/cache/inmemory/helpers.js.map +1 -1
  454. package/cache/inmemory/inMemoryCache.d.ts +4 -4
  455. package/cache/inmemory/inMemoryCache.js +3 -8
  456. package/cache/inmemory/inMemoryCache.js.map +1 -1
  457. package/cache/inmemory/key-extractor.d.ts +1 -1
  458. package/cache/inmemory/key-extractor.js +1 -1
  459. package/cache/inmemory/key-extractor.js.map +1 -1
  460. package/cache/inmemory/policies.d.ts +4 -3
  461. package/cache/inmemory/policies.js +4 -4
  462. package/cache/inmemory/policies.js.map +1 -1
  463. package/cache/inmemory/reactiveVars.d.ts +1 -1
  464. package/cache/inmemory/reactiveVars.js +1 -1
  465. package/cache/inmemory/reactiveVars.js.map +1 -1
  466. package/cache/inmemory/readFromStore.d.ts +1 -2
  467. package/cache/inmemory/readFromStore.js +4 -6
  468. package/cache/inmemory/readFromStore.js.map +1 -1
  469. package/cache/inmemory/types.d.ts +2 -7
  470. package/cache/inmemory/types.js +1 -1
  471. package/cache/inmemory/types.js.map +1 -1
  472. package/cache/inmemory/writeToStore.d.ts +2 -2
  473. package/cache/inmemory/writeToStore.js +4 -4
  474. package/cache/inmemory/writeToStore.js.map +1 -1
  475. package/core/ApolloClient.d.ts +788 -191
  476. package/core/ApolloClient.js +161 -132
  477. package/core/ApolloClient.js.map +1 -1
  478. package/core/ObservableQuery.d.ts +190 -107
  479. package/core/ObservableQuery.js +50 -20
  480. package/core/ObservableQuery.js.map +1 -1
  481. package/core/QueryInfo.d.ts +9 -8
  482. package/core/QueryInfo.js +1 -2
  483. package/core/QueryInfo.js.map +1 -1
  484. package/core/QueryManager.d.ts +21 -21
  485. package/core/QueryManager.js +15 -14
  486. package/core/QueryManager.js.map +1 -1
  487. package/core/deprecated.d.ts +29 -0
  488. package/core/deprecated.js +2 -0
  489. package/core/deprecated.js.map +1 -0
  490. package/core/index.d.ts +13 -10
  491. package/core/index.js +2 -2
  492. package/core/index.js.map +1 -1
  493. package/core/networkStatus.d.ts +1 -1
  494. package/core/networkStatus.js +1 -1
  495. package/core/networkStatus.js.map +1 -1
  496. package/core/types.d.ts +186 -145
  497. package/core/types.js +1 -1
  498. package/core/types.js.map +1 -1
  499. package/core/watchQueryOptions.d.ts +15 -304
  500. package/core/watchQueryOptions.js +1 -1
  501. package/core/watchQueryOptions.js.map +1 -1
  502. package/dev/index.d.ts +1 -1
  503. package/dev/index.js +1 -1
  504. package/dev/index.js.map +1 -1
  505. package/dev/loadDevMessages.d.ts +1 -1
  506. package/dev/loadDevMessages.js +1 -1
  507. package/dev/loadDevMessages.js.map +1 -1
  508. package/dev/loadErrorMessageHandler.d.ts +1 -1
  509. package/dev/loadErrorMessageHandler.js +1 -1
  510. package/dev/loadErrorMessageHandler.js.map +1 -1
  511. package/dev/loadErrorMessages.d.ts +1 -1
  512. package/dev/loadErrorMessages.js +1 -1
  513. package/dev/loadErrorMessages.js.map +1 -1
  514. package/dev/setErrorMessageHandler.d.ts +5 -5
  515. package/dev/setErrorMessageHandler.js +1 -1
  516. package/dev/setErrorMessageHandler.js.map +1 -1
  517. package/dev/symbol.d.ts +1 -1
  518. package/dev/symbol.js +1 -1
  519. package/dev/symbol.js.map +1 -1
  520. package/errors/CombinedGraphQLErrors.d.ts +168 -14
  521. package/errors/CombinedGraphQLErrors.js +64 -11
  522. package/errors/CombinedGraphQLErrors.js.map +1 -1
  523. package/errors/CombinedProtocolErrors.d.ts +132 -2
  524. package/errors/CombinedProtocolErrors.js +54 -1
  525. package/errors/CombinedProtocolErrors.js.map +1 -1
  526. package/errors/LinkError.d.ts +45 -2
  527. package/errors/LinkError.js +45 -2
  528. package/errors/LinkError.js.map +1 -1
  529. package/errors/LocalStateError.d.ts +41 -5
  530. package/errors/LocalStateError.js +35 -5
  531. package/errors/LocalStateError.js.map +1 -1
  532. package/errors/ServerError.d.ts +71 -11
  533. package/errors/ServerError.js +51 -8
  534. package/errors/ServerError.js.map +1 -1
  535. package/errors/ServerParseError.d.ts +72 -16
  536. package/errors/ServerParseError.js +46 -8
  537. package/errors/ServerParseError.js.map +1 -1
  538. package/errors/UnconventionalError.d.ts +47 -3
  539. package/errors/UnconventionalError.js +47 -3
  540. package/errors/UnconventionalError.js.map +1 -1
  541. package/errors/index.d.ts +1 -1
  542. package/errors/index.js +1 -1
  543. package/errors/index.js.map +1 -1
  544. package/errors/isErrorLike.d.ts +1 -1
  545. package/errors/isErrorLike.js +1 -1
  546. package/errors/isErrorLike.js.map +1 -1
  547. package/errors/utils.d.ts +1 -1
  548. package/errors/utils.js +1 -1
  549. package/errors/utils.js.map +1 -1
  550. package/incremental/handlers/defer20220824.d.ts +5 -5
  551. package/incremental/handlers/defer20220824.js +1 -1
  552. package/incremental/handlers/defer20220824.js.map +1 -1
  553. package/incremental/handlers/notImplemented.d.ts +3 -3
  554. package/incremental/handlers/notImplemented.js +1 -1
  555. package/incremental/handlers/notImplemented.js.map +1 -1
  556. package/incremental/index.d.ts +1 -1
  557. package/incremental/index.js.map +1 -1
  558. package/incremental/types.d.ts +4 -4
  559. package/incremental/types.js +1 -1
  560. package/incremental/types.js.map +1 -1
  561. package/invariantErrorCodes.d.ts +1 -1
  562. package/invariantErrorCodes.js +88 -94
  563. package/invariantErrorCodes.js.map +1 -1
  564. package/legacyEntryPoints/react/internal/compiler-runtime/compiler-runtime.cjs +1 -0
  565. package/legacyEntryPoints/react/internal/compiler-runtime/compiler-runtime.d.cts +1 -0
  566. package/legacyEntryPoints/react/internal/compiler-runtime/index.d.ts +1 -0
  567. package/legacyEntryPoints/react/internal/compiler-runtime/index.js +1 -0
  568. package/link/batch/batchLink.d.ts +103 -28
  569. package/link/batch/batchLink.js +33 -12
  570. package/link/batch/batchLink.js.map +1 -1
  571. package/link/batch/batching.d.ts +9 -9
  572. package/link/batch/batching.js +3 -3
  573. package/link/batch/batching.js.map +1 -1
  574. package/link/batch/index.d.ts +2 -3
  575. package/link/batch/index.js +2 -2
  576. package/link/batch/index.js.map +1 -1
  577. package/link/batch-http/BaseBatchHttpLink.d.ts +68 -0
  578. package/link/batch-http/BaseBatchHttpLink.js +152 -0
  579. package/link/batch-http/BaseBatchHttpLink.js.map +1 -0
  580. package/link/batch-http/batchHttpLink.d.ts +41 -18
  581. package/link/batch-http/batchHttpLink.js +28 -129
  582. package/link/batch-http/batchHttpLink.js.map +1 -1
  583. package/link/batch-http/index.d.ts +3 -2
  584. package/link/batch-http/index.js +3 -2
  585. package/link/batch-http/index.js.map +1 -1
  586. package/link/client-awareness/ClientAwarenessLink.d.ts +59 -7
  587. package/link/client-awareness/ClientAwarenessLink.js +37 -4
  588. package/link/client-awareness/ClientAwarenessLink.js.map +1 -1
  589. package/link/client-awareness/index.d.ts +1 -1
  590. package/link/client-awareness/index.js +1 -1
  591. package/link/client-awareness/index.js.map +1 -1
  592. package/link/context/index.d.ts +78 -5
  593. package/link/context/index.js +38 -15
  594. package/link/context/index.js.map +1 -1
  595. package/link/core/ApolloLink.d.ts +355 -9
  596. package/link/core/ApolloLink.js +228 -57
  597. package/link/core/ApolloLink.js.map +1 -1
  598. package/link/core/concat.d.ts +5 -1
  599. package/link/core/concat.js +5 -1
  600. package/link/core/concat.js.map +1 -1
  601. package/link/core/deprecated.d.ts +10 -0
  602. package/link/core/deprecated.js +2 -0
  603. package/link/core/deprecated.js.map +1 -0
  604. package/link/core/empty.d.ts +5 -1
  605. package/link/core/empty.js +5 -1
  606. package/link/core/empty.js.map +1 -1
  607. package/link/core/execute.d.ts +1 -1
  608. package/link/core/execute.js +1 -1
  609. package/link/core/execute.js.map +1 -1
  610. package/link/core/from.d.ts +5 -1
  611. package/link/core/from.js +5 -1
  612. package/link/core/from.js.map +1 -1
  613. package/link/core/split.d.ts +5 -1
  614. package/link/core/split.js +5 -1
  615. package/link/core/split.js.map +1 -1
  616. package/link/core/types.d.ts +2 -31
  617. package/link/core/types.js +1 -1
  618. package/link/core/types.js.map +1 -1
  619. package/link/error/index.d.ts +84 -10
  620. package/link/error/index.js +45 -1
  621. package/link/error/index.js.map +1 -1
  622. package/link/http/BaseHttpLink.d.ts +256 -2
  623. package/link/http/BaseHttpLink.js +63 -13
  624. package/link/http/BaseHttpLink.js.map +1 -1
  625. package/link/http/HttpLink.d.ts +46 -136
  626. package/link/http/HttpLink.js +28 -3
  627. package/link/http/HttpLink.js.map +1 -1
  628. package/link/http/checkFetcher.d.ts +1 -1
  629. package/link/http/checkFetcher.js +1 -1
  630. package/link/http/checkFetcher.js.map +1 -1
  631. package/link/http/createSignalIfSupported.d.ts +1 -1
  632. package/link/http/createSignalIfSupported.js +1 -1
  633. package/link/http/createSignalIfSupported.js.map +1 -1
  634. package/link/http/index.d.ts +1 -3
  635. package/link/http/index.js +1 -2
  636. package/link/http/index.js.map +1 -1
  637. package/link/http/parseAndCheckHttpResponse.d.ts +3 -3
  638. package/link/http/parseAndCheckHttpResponse.js +41 -26
  639. package/link/http/parseAndCheckHttpResponse.js.map +1 -1
  640. package/link/http/rewriteURIForGET.d.ts +3 -3
  641. package/link/http/rewriteURIForGET.js +3 -4
  642. package/link/http/rewriteURIForGET.js.map +1 -1
  643. package/link/http/selectHttpOptionsAndBody.d.ts +10 -10
  644. package/link/http/selectHttpOptionsAndBody.js +1 -1
  645. package/link/http/selectHttpOptionsAndBody.js.map +1 -1
  646. package/link/http/selectURI.d.ts +3 -3
  647. package/link/http/selectURI.js +1 -1
  648. package/link/http/selectURI.js.map +1 -1
  649. package/link/index.d.ts +3 -2
  650. package/link/index.js +1 -1
  651. package/link/index.js.map +1 -1
  652. package/link/persisted-queries/index.d.ts +207 -28
  653. package/link/persisted-queries/index.js +18 -2
  654. package/link/persisted-queries/index.js.map +1 -1
  655. package/link/remove-typename/index.d.ts +1 -2
  656. package/link/remove-typename/index.js.map +1 -1
  657. package/link/remove-typename/removeTypenameFromVariables.d.ts +125 -9
  658. package/link/remove-typename/removeTypenameFromVariables.js +49 -1
  659. package/link/remove-typename/removeTypenameFromVariables.js.map +1 -1
  660. package/link/retry/delayFunction.d.ts +3 -40
  661. package/link/retry/delayFunction.js +1 -1
  662. package/link/retry/delayFunction.js.map +1 -1
  663. package/link/retry/index.d.ts +1 -1
  664. package/link/retry/index.js +1 -1
  665. package/link/retry/index.js.map +1 -1
  666. package/link/retry/retryFunction.d.ts +3 -30
  667. package/link/retry/retryFunction.js +1 -1
  668. package/link/retry/retryFunction.js.map +1 -1
  669. package/link/retry/retryLink.d.ts +130 -6
  670. package/link/retry/retryLink.js +39 -14
  671. package/link/retry/retryLink.js.map +1 -1
  672. package/link/schema/index.d.ts +130 -9
  673. package/link/schema/index.js +21 -1
  674. package/link/schema/index.js.map +1 -1
  675. package/link/subscriptions/index.d.ts +25 -3
  676. package/link/subscriptions/index.js +24 -1
  677. package/link/subscriptions/index.js.map +1 -1
  678. package/link/utils/createOperation.d.ts +3 -3
  679. package/link/utils/createOperation.js +13 -5
  680. package/link/utils/createOperation.js.map +1 -1
  681. package/link/utils/filterOperationVariables.d.ts +1 -1
  682. package/link/utils/filterOperationVariables.js +1 -1
  683. package/link/utils/filterOperationVariables.js.map +1 -1
  684. package/link/utils/index.d.ts +1 -3
  685. package/link/utils/index.js +1 -3
  686. package/link/utils/index.js.map +1 -1
  687. package/link/ws/index.d.ts +65 -8
  688. package/link/ws/index.js +30 -0
  689. package/link/ws/index.js.map +1 -1
  690. package/local-state/LocalState.d.ts +95 -1
  691. package/local-state/LocalState.js +55 -12
  692. package/local-state/LocalState.js.map +1 -1
  693. package/local-state/index.d.ts +1 -1
  694. package/local-state/index.js +1 -1
  695. package/local-state/index.js.map +1 -1
  696. package/masking/GraphQLCodegenDataMasking.d.ts +12 -45
  697. package/masking/GraphQLCodegenDataMasking.js +1 -1
  698. package/masking/GraphQLCodegenDataMasking.js.map +1 -1
  699. package/masking/PreserveTypes.d.ts +26 -0
  700. package/masking/PreserveTypes.js +2 -0
  701. package/masking/PreserveTypes.js.map +1 -0
  702. package/masking/index.d.ts +2 -2
  703. package/masking/index.js +1 -1
  704. package/masking/index.js.map +1 -1
  705. package/masking/internal/types.d.ts +71 -72
  706. package/masking/internal/types.js +1 -1
  707. package/masking/internal/types.js.map +1 -1
  708. package/masking/maskDefinition.d.ts +1 -1
  709. package/masking/maskDefinition.js +2 -2
  710. package/masking/maskDefinition.js.map +1 -1
  711. package/masking/maskFragment.js +2 -2
  712. package/masking/maskFragment.js.map +1 -1
  713. package/masking/maskOperation.js +1 -1
  714. package/masking/maskOperation.js.map +1 -1
  715. package/masking/types.d.ts +6 -24
  716. package/masking/types.js +1 -1
  717. package/masking/types.js.map +1 -1
  718. package/masking/utils.js +3 -3
  719. package/masking/utils.js.map +1 -1
  720. package/package.json +12 -5
  721. package/react/compiled/index.d.ts +2 -0
  722. package/react/compiled/index.js +2 -0
  723. package/react/compiled/index.js.map +1 -0
  724. package/react/context/ApolloContext.d.ts +1 -1
  725. package/react/context/ApolloContext.js +1 -1
  726. package/react/context/ApolloContext.js.map +1 -1
  727. package/react/context/ApolloProvider.d.ts +1 -1
  728. package/react/context/ApolloProvider.js +1 -1
  729. package/react/context/ApolloProvider.js.map +1 -1
  730. package/react/hooks/constants.d.ts +1 -1
  731. package/react/hooks/constants.js +1 -1
  732. package/react/hooks/constants.js.map +1 -1
  733. package/react/hooks/internal/__use.d.ts +1 -1
  734. package/react/hooks/internal/__use.js +1 -1
  735. package/react/hooks/internal/__use.js.map +1 -1
  736. package/react/hooks/internal/index.d.ts +1 -1
  737. package/react/hooks/internal/index.js +1 -1
  738. package/react/hooks/internal/index.js.map +1 -1
  739. package/react/hooks/internal/useDeepMemo.d.ts +1 -1
  740. package/react/hooks/internal/useDeepMemo.js +1 -4
  741. package/react/hooks/internal/useDeepMemo.js.map +1 -1
  742. package/react/hooks/internal/useIsomorphicLayoutEffect.d.ts +1 -1
  743. package/react/hooks/internal/useIsomorphicLayoutEffect.js +1 -1
  744. package/react/hooks/internal/useIsomorphicLayoutEffect.js.map +1 -1
  745. package/react/hooks/internal/useRenderGuard.d.ts +1 -1
  746. package/react/hooks/internal/useRenderGuard.js +1 -1
  747. package/react/hooks/internal/useRenderGuard.js.map +1 -1
  748. package/react/hooks/internal/validateSuspenseHookOptions.d.ts +3 -3
  749. package/react/hooks/internal/validateSuspenseHookOptions.js.map +1 -1
  750. package/react/hooks/internal/wrapHook.d.ts +8 -7
  751. package/react/hooks/internal/wrapHook.js +1 -0
  752. package/react/hooks/internal/wrapHook.js.map +1 -1
  753. package/react/hooks/useApolloClient.d.ts +3 -3
  754. package/react/hooks/useApolloClient.js +3 -16
  755. package/react/hooks/useApolloClient.js.map +1 -1
  756. package/react/hooks/useBackgroundQuery.d.ts +850 -86
  757. package/react/hooks/useBackgroundQuery.js +7 -7
  758. package/react/hooks/useBackgroundQuery.js.map +1 -1
  759. package/react/hooks/useFragment.d.ts +56 -8
  760. package/react/hooks/useFragment.js +22 -16
  761. package/react/hooks/useFragment.js.map +1 -1
  762. package/react/hooks/useLazyQuery.d.ts +317 -161
  763. package/react/hooks/useLazyQuery.js +14 -52
  764. package/react/hooks/useLazyQuery.js.map +1 -1
  765. package/react/hooks/useLoadableQuery.d.ts +246 -69
  766. package/react/hooks/useLoadableQuery.js +69 -229
  767. package/react/hooks/useLoadableQuery.js.map +1 -1
  768. package/react/hooks/useMutation.d.ts +88 -66
  769. package/react/hooks/useMutation.js +88 -199
  770. package/react/hooks/useMutation.js.map +1 -1
  771. package/react/hooks/useQuery.d.ts +367 -239
  772. package/react/hooks/useQuery.js +65 -262
  773. package/react/hooks/useQuery.js.map +1 -1
  774. package/react/hooks/useQueryRefHandlers.d.ts +36 -3
  775. package/react/hooks/useQueryRefHandlers.js +26 -65
  776. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  777. package/react/hooks/useReactiveVar.d.ts +3 -2
  778. package/react/hooks/useReactiveVar.js +3 -2
  779. package/react/hooks/useReactiveVar.js.map +1 -1
  780. package/react/hooks/useReadQuery.d.ts +92 -16
  781. package/react/hooks/useReadQuery.js +32 -3
  782. package/react/hooks/useReadQuery.js.map +1 -1
  783. package/react/hooks/useSubscription.d.ts +160 -68
  784. package/react/hooks/useSubscription.js +12 -13
  785. package/react/hooks/useSubscription.js.map +1 -1
  786. package/react/hooks/useSuspenseFragment.d.ts +62 -30
  787. package/react/hooks/useSuspenseFragment.js +1 -1
  788. package/react/hooks/useSuspenseFragment.js.map +1 -1
  789. package/react/hooks/useSuspenseQuery.d.ts +585 -159
  790. package/react/hooks/useSuspenseQuery.js +35 -57
  791. package/react/hooks/useSuspenseQuery.js.map +1 -1
  792. package/react/hooks/useSyncExternalStore.d.ts +1 -1
  793. package/react/hooks/useSyncExternalStore.js +1 -1
  794. package/react/hooks/useSyncExternalStore.js.map +1 -1
  795. package/react/hooks-compiled/constants.d.ts +3 -0
  796. package/react/hooks-compiled/constants.js +2 -0
  797. package/react/hooks-compiled/constants.js.map +1 -0
  798. package/react/hooks-compiled/internal/__use.d.ts +4 -0
  799. package/react/hooks-compiled/internal/__use.js +22 -0
  800. package/react/hooks-compiled/internal/__use.js.map +1 -0
  801. package/react/hooks-compiled/internal/index.d.ts +5 -0
  802. package/react/hooks-compiled/internal/index.js +6 -0
  803. package/react/hooks-compiled/internal/index.js.map +1 -0
  804. package/react/hooks-compiled/internal/useDeepMemo.d.ts +3 -0
  805. package/react/hooks-compiled/internal/useDeepMemo.js +10 -0
  806. package/react/hooks-compiled/internal/useDeepMemo.js.map +1 -0
  807. package/react/hooks-compiled/internal/useIsomorphicLayoutEffect.d.ts +3 -0
  808. package/react/hooks-compiled/internal/useIsomorphicLayoutEffect.js +9 -0
  809. package/react/hooks-compiled/internal/useIsomorphicLayoutEffect.js.map +1 -0
  810. package/react/hooks-compiled/internal/useRenderGuard.d.ts +2 -0
  811. package/react/hooks-compiled/internal/useRenderGuard.js +42 -0
  812. package/react/hooks-compiled/internal/useRenderGuard.js.map +1 -0
  813. package/react/hooks-compiled/internal/validateSuspenseHookOptions.d.ts +3 -0
  814. package/react/hooks-compiled/internal/validateSuspenseHookOptions.js +22 -0
  815. package/react/hooks-compiled/internal/validateSuspenseHookOptions.js.map +1 -0
  816. package/react/hooks-compiled/internal/wrapHook.d.ts +67 -0
  817. package/react/hooks-compiled/internal/wrapHook.js +65 -0
  818. package/react/hooks-compiled/internal/wrapHook.js.map +1 -0
  819. package/react/hooks-compiled/useApolloClient.d.ts +18 -0
  820. package/react/hooks-compiled/useApolloClient.js +36 -0
  821. package/react/hooks-compiled/useApolloClient.js.map +1 -0
  822. package/react/hooks-compiled/useBackgroundQuery.d.ts +974 -0
  823. package/react/hooks-compiled/useBackgroundQuery.js +80 -0
  824. package/react/hooks-compiled/useBackgroundQuery.js.map +1 -0
  825. package/react/hooks-compiled/useFragment.d.ts +103 -0
  826. package/react/hooks-compiled/useFragment.js +103 -0
  827. package/react/hooks-compiled/useFragment.js.map +1 -0
  828. package/react/hooks-compiled/useLazyQuery.d.ts +436 -0
  829. package/react/hooks-compiled/useLazyQuery.js +143 -0
  830. package/react/hooks-compiled/useLazyQuery.js.map +1 -0
  831. package/react/hooks-compiled/useLoadableQuery.d.ts +352 -0
  832. package/react/hooks-compiled/useLoadableQuery.js +247 -0
  833. package/react/hooks-compiled/useLoadableQuery.js.map +1 -0
  834. package/react/hooks-compiled/useMutation.d.ts +302 -0
  835. package/react/hooks-compiled/useMutation.js +262 -0
  836. package/react/hooks-compiled/useMutation.js.map +1 -0
  837. package/react/hooks-compiled/useQuery.d.ts +393 -0
  838. package/react/hooks-compiled/useQuery.js +361 -0
  839. package/react/hooks-compiled/useQuery.js.map +1 -0
  840. package/react/hooks-compiled/useQueryRefHandlers.d.ts +77 -0
  841. package/react/hooks-compiled/useQueryRefHandlers.js +110 -0
  842. package/react/hooks-compiled/useQueryRefHandlers.js.map +1 -0
  843. package/react/hooks-compiled/useReactiveVar.d.ts +21 -0
  844. package/react/hooks-compiled/useReactiveVar.js +34 -0
  845. package/react/hooks-compiled/useReactiveVar.js.map +1 -0
  846. package/react/hooks-compiled/useReadQuery.d.ts +100 -0
  847. package/react/hooks-compiled/useReadQuery.js +72 -0
  848. package/react/hooks-compiled/useReadQuery.js.map +1 -0
  849. package/react/hooks-compiled/useSubscription.d.ts +270 -0
  850. package/react/hooks-compiled/useSubscription.js +222 -0
  851. package/react/hooks-compiled/useSubscription.js.map +1 -0
  852. package/react/hooks-compiled/useSuspenseFragment.d.ts +79 -0
  853. package/react/hooks-compiled/useSuspenseFragment.js +47 -0
  854. package/react/hooks-compiled/useSuspenseFragment.js.map +1 -0
  855. package/react/hooks-compiled/useSuspenseQuery.d.ts +630 -0
  856. package/react/hooks-compiled/useSuspenseQuery.js +144 -0
  857. package/react/hooks-compiled/useSuspenseQuery.js.map +1 -0
  858. package/react/hooks-compiled/useSyncExternalStore.d.ts +4 -0
  859. package/react/hooks-compiled/useSyncExternalStore.js +126 -0
  860. package/react/hooks-compiled/useSyncExternalStore.js.map +1 -0
  861. package/react/index.compiled.d.ts +24 -0
  862. package/react/index.compiled.js +19 -0
  863. package/react/index.compiled.js.map +1 -0
  864. package/react/index.d.ts +2 -3
  865. package/react/index.js +2 -3
  866. package/react/index.js.map +1 -1
  867. package/react/index.react-server.d.ts +1 -2
  868. package/react/index.react-server.js +1 -3
  869. package/react/index.react-server.js.map +1 -1
  870. package/react/internal/cache/FragmentReference.d.ts +3 -4
  871. package/react/internal/cache/FragmentReference.js +2 -2
  872. package/react/internal/cache/FragmentReference.js.map +1 -1
  873. package/react/internal/cache/QueryReference.d.ts +14 -12
  874. package/react/internal/cache/QueryReference.js.map +1 -1
  875. package/react/internal/cache/SuspenseCache.d.ts +3 -3
  876. package/react/internal/cache/SuspenseCache.js +1 -1
  877. package/react/internal/cache/SuspenseCache.js.map +1 -1
  878. package/react/internal/cache/getSuspenseCache.d.ts +7 -5
  879. package/react/internal/cache/getSuspenseCache.js +1 -1
  880. package/react/internal/cache/getSuspenseCache.js.map +1 -1
  881. package/react/internal/cache/types.d.ts +1 -1
  882. package/react/internal/cache/types.js +1 -1
  883. package/react/internal/cache/types.js.map +1 -1
  884. package/react/internal/compiler-runtime/index.d.ts +8 -0
  885. package/react/internal/compiler-runtime/index.js +28 -0
  886. package/react/internal/compiler-runtime/index.js.map +1 -0
  887. package/react/internal/index.d.ts +2 -2
  888. package/react/internal/index.js +2 -1
  889. package/react/internal/index.js.map +1 -1
  890. package/react/internal/types.d.ts +4 -4
  891. package/react/internal/types.js +1 -1
  892. package/react/internal/types.js.map +1 -1
  893. package/react/query-preloader/createQueryPreloader.d.ts +60 -51
  894. package/react/query-preloader/createQueryPreloader.js +2 -2
  895. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  896. package/react/ssr/getDataFromTree.d.ts +1 -1
  897. package/react/ssr/getDataFromTree.js.map +1 -1
  898. package/react/ssr/index.d.ts +1 -1
  899. package/react/ssr/index.js +1 -1
  900. package/react/ssr/index.js.map +1 -1
  901. package/react/ssr/prerenderStatic.d.ts +12 -10
  902. package/react/ssr/prerenderStatic.js +5 -4
  903. package/react/ssr/prerenderStatic.js.map +1 -1
  904. package/react/ssr/renderToStringWithData.d.ts +1 -1
  905. package/react/ssr/renderToStringWithData.js +1 -1
  906. package/react/ssr/renderToStringWithData.js.map +1 -1
  907. package/react/ssr/useSSRQuery.d.ts +1 -1
  908. package/react/ssr/useSSRQuery.js +1 -1
  909. package/react/ssr/useSSRQuery.js.map +1 -1
  910. package/react/types/deprecated.d.ts +2 -2
  911. package/react/types/deprecated.js +1 -1
  912. package/react/types/deprecated.js.map +1 -1
  913. package/react/types/types.documentation.d.ts +27 -16
  914. package/react/types/types.documentation.js +1 -1
  915. package/react/types/types.documentation.js.map +1 -1
  916. package/testing/core/mocking/mockLink.d.ts +8 -8
  917. package/testing/core/mocking/mockLink.js.map +1 -1
  918. package/testing/core/mocking/mockSubscriptionLink.d.ts +4 -5
  919. package/testing/core/mocking/mockSubscriptionLink.js +1 -1
  920. package/testing/core/mocking/mockSubscriptionLink.js.map +1 -1
  921. package/testing/core/types/deprecated.d.ts +4 -3
  922. package/testing/core/types/deprecated.js +1 -1
  923. package/testing/core/types/deprecated.js.map +1 -1
  924. package/testing/index.d.ts +1 -1
  925. package/testing/index.js +1 -1
  926. package/testing/index.js.map +1 -1
  927. package/testing/react/MockedProvider.d.ts +3 -8
  928. package/testing/react/MockedProvider.js +3 -3
  929. package/testing/react/MockedProvider.js.map +1 -1
  930. package/testing/react/index.d.ts +1 -1
  931. package/testing/react/index.js +1 -1
  932. package/testing/react/index.js.map +1 -1
  933. package/utilities/DeepPartial.d.ts +1 -1
  934. package/utilities/DeepPartial.js +1 -1
  935. package/utilities/DeepPartial.js.map +1 -1
  936. package/utilities/HKT.d.ts +9 -8
  937. package/utilities/HKT.js +1 -1
  938. package/utilities/HKT.js.map +1 -1
  939. package/utilities/caching/index.d.ts +1 -1
  940. package/utilities/caching/index.js +1 -1
  941. package/utilities/caching/index.js.map +1 -1
  942. package/utilities/caching/sizes.d.ts +5 -7
  943. package/utilities/caching/sizes.js +4 -4
  944. package/utilities/caching/sizes.js.map +1 -1
  945. package/utilities/common/stripTypename.d.ts +12 -1
  946. package/utilities/common/stripTypename.js +12 -1
  947. package/utilities/common/stripTypename.js.map +1 -1
  948. package/utilities/environment/index.d.ts +1 -1
  949. package/utilities/environment/index.development.d.ts +1 -1
  950. package/utilities/environment/index.development.js +1 -1
  951. package/utilities/environment/index.development.js.map +1 -1
  952. package/utilities/environment/index.js +1 -1
  953. package/utilities/environment/index.js.map +1 -1
  954. package/utilities/environment/index.production.d.ts +1 -1
  955. package/utilities/environment/index.production.js +1 -1
  956. package/utilities/environment/index.production.js.map +1 -1
  957. package/utilities/graphql/DocumentTransform.d.ts +94 -5
  958. package/utilities/graphql/DocumentTransform.js +85 -2
  959. package/utilities/graphql/DocumentTransform.js.map +1 -1
  960. package/utilities/graphql/isFormattedExecutionResult.d.ts +28 -1
  961. package/utilities/graphql/isFormattedExecutionResult.js +28 -1
  962. package/utilities/graphql/isFormattedExecutionResult.js.map +1 -1
  963. package/utilities/graphql/operations.d.ts +55 -4
  964. package/utilities/graphql/operations.js +55 -4
  965. package/utilities/graphql/operations.js.map +1 -1
  966. package/utilities/graphql/print.d.ts +1 -1
  967. package/utilities/graphql/print.js +1 -1
  968. package/utilities/graphql/print.js.map +1 -1
  969. package/utilities/graphql/storeUtils.d.ts +10 -1
  970. package/utilities/graphql/storeUtils.js +10 -1
  971. package/utilities/graphql/storeUtils.js.map +1 -1
  972. package/utilities/graphql/transform.d.ts +13 -2
  973. package/utilities/graphql/transform.js +13 -2
  974. package/utilities/graphql/transform.js.map +1 -1
  975. package/utilities/index.d.ts +2 -2
  976. package/utilities/index.js +2 -2
  977. package/utilities/index.js.map +1 -1
  978. package/utilities/internal/argumentsObjectFromField.js.map +1 -1
  979. package/utilities/internal/caches.js.map +1 -1
  980. package/utilities/internal/canUseDOM.js.map +1 -1
  981. package/utilities/internal/canonicalStringify.d.ts +44 -0
  982. package/utilities/{shared → internal}/canonicalStringify.js +35 -14
  983. package/utilities/internal/canonicalStringify.js.map +1 -0
  984. package/utilities/internal/checkDocument.js +1 -1
  985. package/utilities/internal/checkDocument.js.map +1 -1
  986. package/utilities/internal/cloneDeep.js.map +1 -1
  987. package/utilities/internal/compact.js.map +1 -1
  988. package/utilities/internal/createFragmentMap.js.map +1 -1
  989. package/utilities/internal/createFulfilledPromise.js.map +1 -1
  990. package/utilities/internal/createRejectedPromise.js.map +1 -1
  991. package/utilities/internal/dealias.d.ts +1 -1
  992. package/utilities/internal/dealias.js +1 -1
  993. package/utilities/internal/dealias.js.map +1 -1
  994. package/utilities/internal/decoratePromise.js.map +1 -1
  995. package/utilities/internal/deepFreeze.js.map +1 -1
  996. package/utilities/internal/equalByQuery.d.ts +5 -0
  997. package/{core → utilities/internal}/equalByQuery.js +8 -2
  998. package/utilities/internal/equalByQuery.js.map +1 -0
  999. package/utilities/internal/filterMap.d.ts +1 -1
  1000. package/utilities/internal/filterMap.js +1 -1
  1001. package/utilities/internal/filterMap.js.map +1 -1
  1002. package/utilities/internal/getDefaultValues.js.map +1 -1
  1003. package/utilities/internal/getFragmentDefinition.js.map +1 -1
  1004. package/utilities/internal/getFragmentDefinitions.js.map +1 -1
  1005. package/utilities/internal/getFragmentFromSelection.js.map +1 -1
  1006. package/utilities/internal/getFragmentQueryDocument.d.ts +13 -3
  1007. package/utilities/internal/getFragmentQueryDocument.js +13 -3
  1008. package/utilities/internal/getFragmentQueryDocument.js.map +1 -1
  1009. package/utilities/internal/getGraphQLErrorsFromResult.js.map +1 -1
  1010. package/utilities/internal/getMainDefinition.d.ts +37 -9
  1011. package/utilities/internal/getMainDefinition.js +37 -14
  1012. package/utilities/internal/getMainDefinition.js.map +1 -1
  1013. package/utilities/internal/getMemoryInternals.js.map +1 -1
  1014. package/utilities/internal/getOperationDefinition.js.map +1 -1
  1015. package/utilities/internal/getOperationName.js.map +1 -1
  1016. package/utilities/internal/getQueryDefinition.js.map +1 -1
  1017. package/utilities/internal/getStoreKeyName.js +9 -7
  1018. package/utilities/internal/getStoreKeyName.js.map +1 -1
  1019. package/utilities/internal/globals/global.d.ts +1 -1
  1020. package/utilities/internal/globals/index.d.ts +1 -1
  1021. package/utilities/internal/globals/index.js +1 -1
  1022. package/utilities/internal/globals/index.js.map +1 -1
  1023. package/utilities/internal/globals/maybe.d.ts +1 -1
  1024. package/utilities/internal/globals/maybe.js +1 -1
  1025. package/utilities/internal/globals/maybe.js.map +1 -1
  1026. package/utilities/internal/graphQLResultHasError.js.map +1 -1
  1027. package/utilities/internal/hasDirectives.js.map +1 -1
  1028. package/utilities/internal/hasForcedResolvers.d.ts +1 -1
  1029. package/utilities/internal/hasForcedResolvers.js +1 -1
  1030. package/utilities/internal/hasForcedResolvers.js.map +1 -1
  1031. package/utilities/internal/index.d.ts +5 -1
  1032. package/utilities/internal/index.js +4 -1
  1033. package/utilities/internal/index.js.map +1 -1
  1034. package/utilities/internal/index.production.d.ts +1 -1
  1035. package/utilities/internal/index.production.js +1 -1
  1036. package/utilities/internal/index.production.js.map +1 -1
  1037. package/utilities/internal/isArray.js.map +1 -1
  1038. package/utilities/internal/isDocumentNode.js.map +1 -1
  1039. package/utilities/internal/isField.js.map +1 -1
  1040. package/utilities/internal/isNonEmptyArray.js.map +1 -1
  1041. package/utilities/internal/isNonNullObject.js.map +1 -1
  1042. package/utilities/internal/isPlainObject.js.map +1 -1
  1043. package/utilities/internal/makeReference.js.map +1 -1
  1044. package/utilities/internal/makeUniqueId.js.map +1 -1
  1045. package/utilities/internal/maybeDeepFreeze.js.map +1 -1
  1046. package/utilities/internal/mergeDeep.js.map +1 -1
  1047. package/utilities/internal/mergeDeepArray.js.map +1 -1
  1048. package/utilities/internal/mergeOptions.d.ts +2 -2
  1049. package/utilities/internal/mergeOptions.js.map +1 -1
  1050. package/utilities/internal/omitDeep.js.map +1 -1
  1051. package/utilities/internal/preventUnhandledRejection.d.ts +1 -1
  1052. package/utilities/internal/preventUnhandledRejection.js +1 -1
  1053. package/utilities/internal/preventUnhandledRejection.js.map +1 -1
  1054. package/utilities/internal/removeDirectivesFromDocument.js +1 -2
  1055. package/utilities/internal/removeDirectivesFromDocument.js.map +1 -1
  1056. package/utilities/internal/removeFragmentSpreads.d.ts +3 -0
  1057. package/utilities/internal/removeFragmentSpreads.js +11 -0
  1058. package/utilities/internal/removeFragmentSpreads.js.map +1 -0
  1059. package/utilities/internal/resultKeyNameFromField.js.map +1 -1
  1060. package/utilities/internal/shouldInclude.js.map +1 -1
  1061. package/utilities/internal/storeKeyNameFromField.js.map +1 -1
  1062. package/utilities/internal/stringifyForDisplay.js.map +1 -1
  1063. package/utilities/internal/toQueryResult.d.ts +2 -2
  1064. package/utilities/internal/toQueryResult.js.map +1 -1
  1065. package/utilities/internal/types/ApplyHKT.js +1 -1
  1066. package/utilities/internal/types/ApplyHKT.js.map +1 -1
  1067. package/utilities/internal/types/ApplyHKTImplementationWithDefault.js +1 -1
  1068. package/utilities/internal/types/ApplyHKTImplementationWithDefault.js.map +1 -1
  1069. package/utilities/internal/types/DecoratedPromise.js +1 -1
  1070. package/utilities/internal/types/DecoratedPromise.js.map +1 -1
  1071. package/utilities/internal/types/DeepOmit.js +1 -1
  1072. package/utilities/internal/types/DeepOmit.js.map +1 -1
  1073. package/utilities/internal/types/DocumentationTypes.d.ts +88 -0
  1074. package/utilities/internal/types/DocumentationTypes.js +2 -0
  1075. package/utilities/internal/types/DocumentationTypes.js.map +1 -0
  1076. package/utilities/internal/types/FragmentMap.js +1 -1
  1077. package/utilities/internal/types/FragmentMap.js.map +1 -1
  1078. package/utilities/internal/types/FragmentMapFunction.js +1 -1
  1079. package/utilities/internal/types/FragmentMapFunction.js.map +1 -1
  1080. package/utilities/internal/types/FulfilledPromise.js +1 -1
  1081. package/utilities/internal/types/FulfilledPromise.js.map +1 -1
  1082. package/utilities/internal/types/IsAny.js +1 -1
  1083. package/utilities/internal/types/IsAny.js.map +1 -1
  1084. package/utilities/internal/types/NoInfer.d.ts +32 -26
  1085. package/utilities/internal/types/NoInfer.js +1 -1
  1086. package/utilities/internal/types/NoInfer.js.map +1 -1
  1087. package/utilities/internal/types/PendingPromise.js +1 -1
  1088. package/utilities/internal/types/PendingPromise.js.map +1 -1
  1089. package/utilities/internal/types/Prettify.js +1 -1
  1090. package/utilities/internal/types/Prettify.js.map +1 -1
  1091. package/utilities/internal/types/Primitive.js +1 -1
  1092. package/utilities/internal/types/Primitive.js.map +1 -1
  1093. package/utilities/internal/types/RejectedPromise.js +1 -1
  1094. package/utilities/internal/types/RejectedPromise.js.map +1 -1
  1095. package/utilities/internal/types/RemoveIndexSignature.js +1 -1
  1096. package/utilities/internal/types/RemoveIndexSignature.js.map +1 -1
  1097. package/utilities/internal/types/TupleToIntersection.d.ts +1 -1
  1098. package/utilities/internal/types/TupleToIntersection.js +1 -1
  1099. package/utilities/internal/types/TupleToIntersection.js.map +1 -1
  1100. package/utilities/internal/types/VariablesOption.d.ts +2 -6
  1101. package/utilities/internal/types/VariablesOption.js +1 -1
  1102. package/utilities/internal/types/VariablesOption.js.map +1 -1
  1103. package/utilities/internal/valueToObjectRepresentation.js.map +1 -1
  1104. package/utilities/invariant/index.d.ts +1 -1
  1105. package/utilities/invariant/index.development.d.ts +1 -1
  1106. package/utilities/invariant/index.development.js +1 -1
  1107. package/utilities/invariant/index.development.js.map +1 -1
  1108. package/utilities/invariant/index.js +1 -1
  1109. package/utilities/invariant/index.js.map +1 -1
  1110. package/utilities/policies/pagination.d.ts +1 -1
  1111. package/utilities/policies/pagination.js +1 -1
  1112. package/utilities/policies/pagination.js.map +1 -1
  1113. package/utilities/subscriptions/relay/index.d.ts +1 -1
  1114. package/utilities/subscriptions/relay/index.js +4 -3
  1115. package/utilities/subscriptions/relay/index.js.map +1 -1
  1116. package/version.d.ts +1 -1
  1117. package/version.js +1 -1
  1118. package/version.js.map +1 -1
  1119. package/__cjs/cache/core/types/DataProxy.cjs.map +0 -1
  1120. package/__cjs/cache/core/types/DataProxy.d.cts +0 -140
  1121. package/__cjs/core/equalByQuery.cjs.map +0 -1
  1122. package/__cjs/core/equalByQuery.d.cts +0 -4
  1123. package/__cjs/link/http/serializeFetchParameter.cjs +0 -18
  1124. package/__cjs/link/http/serializeFetchParameter.cjs.map +0 -1
  1125. package/__cjs/link/http/serializeFetchParameter.d.cts +0 -6
  1126. package/__cjs/link/utils/transformOperation.cjs +0 -21
  1127. package/__cjs/link/utils/transformOperation.cjs.map +0 -1
  1128. package/__cjs/link/utils/transformOperation.d.cts +0 -3
  1129. package/__cjs/link/utils/validateOperation.cjs +0 -20
  1130. package/__cjs/link/utils/validateOperation.cjs.map +0 -1
  1131. package/__cjs/link/utils/validateOperation.d.cts +0 -3
  1132. package/__cjs/react/context/ApolloConsumer.cjs +0 -16
  1133. package/__cjs/react/context/ApolloConsumer.cjs.map +0 -1
  1134. package/__cjs/react/context/ApolloConsumer.d.cts +0 -10
  1135. package/__cjs/utilities/shared/canonicalStringify.cjs.map +0 -1
  1136. package/__cjs/utilities/shared/canonicalStringify.d.cts +0 -21
  1137. package/cache/core/types/DataProxy.d.ts +0 -140
  1138. package/cache/core/types/DataProxy.js +0 -2
  1139. package/cache/core/types/DataProxy.js.map +0 -1
  1140. package/core/equalByQuery.d.ts +0 -4
  1141. package/core/equalByQuery.js.map +0 -1
  1142. package/link/http/serializeFetchParameter.d.ts +0 -6
  1143. package/link/http/serializeFetchParameter.js +0 -14
  1144. package/link/http/serializeFetchParameter.js.map +0 -1
  1145. package/link/utils/transformOperation.d.ts +0 -3
  1146. package/link/utils/transformOperation.js +0 -18
  1147. package/link/utils/transformOperation.js.map +0 -1
  1148. package/link/utils/validateOperation.d.ts +0 -3
  1149. package/link/utils/validateOperation.js +0 -17
  1150. package/link/utils/validateOperation.js.map +0 -1
  1151. package/react/context/ApolloConsumer.d.ts +0 -10
  1152. package/react/context/ApolloConsumer.js +0 -11
  1153. package/react/context/ApolloConsumer.js.map +0 -1
  1154. package/utilities/shared/canonicalStringify.d.ts +0 -21
  1155. package/utilities/shared/canonicalStringify.js.map +0 -1
@@ -1,5 +1,24 @@
1
1
  import { ApolloLink } from "@apollo/client/link";
2
2
  export declare namespace ClientAwarenessLink {
3
+ /**
4
+ * Options passed to `ClientAwarenessLink` through [request context](https://apollographql.com/docs/react/api/link/introduction#managing-context). Previous
5
+ * non-terminating links in the link chain also can set these values to
6
+ * customize the behavior of `ClientAwarenessLink` for each operation.
7
+ *
8
+ * > [!NOTE]
9
+ * > Some of these values can also be provided to the `ClientAwarenessLink`
10
+ * > constructor. If a value is provided to both, the value in `context` takes
11
+ * > precedence.
12
+ */
13
+ interface ContextOptions {
14
+ /**
15
+ * Configures the "client awareness" feature.
16
+ * This feature allows you to identify distinct applications in Apollo Studio
17
+ * and Apollo Server logs (and other monitoring or analytics tools) by adding
18
+ * information about the your application to outgoing requests.
19
+ */
20
+ clientAwareness?: ClientAwarenessLink.ClientAwarenessOptions;
21
+ }
3
22
  interface ClientAwarenessOptions {
4
23
  /**
5
24
  * A custom name (e.g., `iOS`) that identifies this particular client among your set of clients. Apollo Server and Apollo Studio use this property as part of the [client awareness](https://www.apollographql.com/docs/apollo-server/monitoring/metrics#identifying-distinct-clients) feature.
@@ -21,8 +40,8 @@ export declare namespace ClientAwarenessLink {
21
40
  * If `name` and `version` are not provided, this option will be ignored.
22
41
  * (These options can either be set as part of the Apollo Client constructor call or when manually constructing a `HttpLink`, `BatchHttpLink` or `ClientAwarenessLink`.)
23
42
  *
24
- * * If set to `"headers"`, `name` and `version` will be sent in the request headers as `apollographql-client-name` and `apollographql-client-version`, respectively.
25
- * * If set to `false`, `name` and `version` will not be included in outgoing requests.
43
+ * - If set to `"headers"`, `name` and `version` will be sent in the request headers as `apollographql-client-name` and `apollographql-client-version`, respectively.
44
+ * - If set to `false`, `name` and `version` will not be included in outgoing requests.
26
45
  *
27
46
  * @defaultValue "headers"
28
47
  */
@@ -32,8 +51,8 @@ export declare namespace ClientAwarenessLink {
32
51
  /**
33
52
  * Determines how the the version information of Apollo Client is sent in outgoing requests.
34
53
  *
35
- * * If set to `"extensions"`, library `name` and `version` will be sent in an object in the request extensions as `clientLibrary`.
36
- * * If set to `false`, library name and version will not be included in outgoing requests.
54
+ * - If set to `"extensions"`, library `name` and `version` will be sent in an object in the request extensions as `clientLibrary`.
55
+ * - If set to `false`, library name and version will not be included in outgoing requests.
37
56
  *
38
57
  * @defaultValue "extensions"
39
58
  */
@@ -46,17 +65,50 @@ export declare namespace ClientAwarenessLink {
46
65
  * and Apollo Server logs (and other monitoring or analytics tools) by adding
47
66
  * information about the your application to outgoing requests.
48
67
  */
49
- clientAwareness?: ClientAwarenessOptions;
68
+ clientAwareness?: ClientAwarenessLink.ClientAwarenessOptions;
50
69
  /**
51
70
  * Configures the "enhanced client awareness" feature.
52
71
  * This feature allows you to identify the version of the Apollo Client library
53
72
  * used in your application in Apollo Studio (and other monitoring or analytics tools)
54
73
  * by adding information about the Apollo Client library to outgoing requests.
55
74
  */
56
- enhancedClientAwareness?: EnhancedClientAwarenessOptions;
75
+ enhancedClientAwareness?: ClientAwarenessLink.EnhancedClientAwarenessOptions;
57
76
  }
58
77
  }
78
+ /**
79
+ * `ClientAwarenessLink` provides support for providing client awareness
80
+ * features.
81
+ *
82
+ * @remarks
83
+ *
84
+ * Client awareness adds identifying information about the client to HTTP
85
+ * requests for use with metrics reporting tools, such as [Apollo GraphOS](https://apollographql.com/docs/graphos/platform).
86
+ * It is included in the functionality of [`HttpLink`](https://apollographql.com/docs/react/api/link/apollo-link-http) by default.
87
+ *
88
+ * Client awareness distinguishes between user-provided client awareness
89
+ * (provided by the `clientAwareness` option) and enhanced client awareness
90
+ * (provided by the `enhancedClientAwareness` option). User-provided client
91
+ * awareness enables you to set a customized client name and version for
92
+ * identification in metrics reporting tools. Enhanced client awareness enables
93
+ * the identification of the Apollo Client package name and version.
94
+ *
95
+ * @example
96
+ *
97
+ * ```ts
98
+ * import { ClientAwarenessLink } from "@apollo/client/link/client-awareness";
99
+ *
100
+ * const link = new ClientAwarenessLink({
101
+ * clientAwareness: {
102
+ * name: "My Client",
103
+ * version: "1",
104
+ * },
105
+ * enhancedClientAwareness: {
106
+ * transport: "extensions",
107
+ * },
108
+ * });
109
+ * ```
110
+ */
59
111
  export declare class ClientAwarenessLink extends ApolloLink {
60
- constructor(constructorOptions?: ClientAwarenessLink.Options);
112
+ constructor(options?: ClientAwarenessLink.Options);
61
113
  }
62
114
  //# sourceMappingURL=ClientAwarenessLink.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/link/client-awareness/index.ts"],"sourcesContent":["export { ClientAwarenessLink } from \"./ClientAwarenessLink.js\";\n"],"names":[],"mappings":";;;AAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAS,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA4B,EAA5B,EAAA,CAAA,CAAA;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/link/client-awareness/index.ts"],"sourcesContent":["export { ClientAwarenessLink } from \"./ClientAwarenessLink.js\";\n"],"names":[],"mappings":";;;AAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,4BAAA,CAAA;AAAS,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAS,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA4B,EAA5B,EAAA,CAAA,CAAA;"}
@@ -6,36 +6,59 @@ const rxjs_1 = require("rxjs");
6
6
  const link_1 = require("@apollo/client/link");
7
7
  /**
8
8
  * @deprecated
9
- * Use `SetContextLink` from `@apollo/client/link/context` instead.
9
+ * Use `SetContextLink` from `@apollo/client/link/context` instead. Note you
10
+ * will need to flip the arguments when using `SetContextLink` as `prevContext`
11
+ * is the first argument.
12
+ *
13
+ * ```ts
14
+ * new SetContextLink((prevContext, operation) => {
15
+ * // ...
16
+ * });
17
+ * ```
10
18
  */
11
19
  function setContext(setter) {
12
- return new SetContextLink(setter);
20
+ return new SetContextLink((prevContext, operation) => setter(operation, prevContext));
13
21
  }
22
+ /**
23
+ * `SetContextLink` is a non-terminating link that allows you to modify the
24
+ * context of GraphQL operations before they're passed to the next link in the
25
+ * chain. This is commonly used for authentication, adding headers, and other
26
+ * request-time configuration.
27
+ *
28
+ * @example
29
+ *
30
+ * ```ts
31
+ * import { SetContextLink } from "@apollo/client/link/context";
32
+ *
33
+ * const link = new SetContextLink((prevContext, operation) => {
34
+ * return {
35
+ * credentials: "include",
36
+ * // ...
37
+ * };
38
+ * });
39
+ * ```
40
+ */
14
41
  class SetContextLink extends link_1.ApolloLink {
15
42
  constructor(setter) {
16
43
  super((operation, forward) => {
17
44
  const { ...request } = operation;
45
+ Object.defineProperty(request, "client", {
46
+ enumerable: false,
47
+ value: operation.client,
48
+ });
18
49
  return new rxjs_1.Observable((observer) => {
19
- let handle;
20
50
  let closed = false;
21
51
  Promise.resolve(request)
22
- .then((req) => setter(req, operation.getContext()))
52
+ .then((req) => setter(operation.getContext(), req))
23
53
  .then(operation.setContext)
24
54
  .then(() => {
25
- // if the observer is already closed, no need to subscribe.
26
- if (closed)
27
- return;
28
- handle = forward(operation).subscribe({
29
- next: observer.next.bind(observer),
30
- error: observer.error.bind(observer),
31
- complete: observer.complete.bind(observer),
32
- });
55
+ if (!closed) {
56
+ forward(operation).subscribe(observer);
57
+ }
33
58
  })
34
59
  .catch(observer.error.bind(observer));
35
60
  return () => {
36
61
  closed = true;
37
- if (handle)
38
- handle.unsubscribe();
39
62
  };
40
63
  });
41
64
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/link/context/index.ts"],"sourcesContent":["import type { Subscription } from \"rxjs\";\nimport { Observable } from \"rxjs\";\n\nimport type { GraphQLRequest, OperationContext } from \"@apollo/client/link\";\nimport { ApolloLink } from \"@apollo/client/link\";\n\nexport type ContextSetter = (\n operation: GraphQLRequest,\n prevContext: OperationContext\n) => Promise<Partial<OperationContext>> | Partial<OperationContext>;\n\n/**\n * @deprecated\n * Use `SetContextLink` from `@apollo/client/link/context` instead.\n */\nexport function setContext(setter: ContextSetter) {\n return new SetContextLink(setter);\n}\nexport class SetContextLink extends ApolloLink {\n constructor(setter: ContextSetter) {\n super((operation, forward) => {\n const { ...request } = operation;\n\n return new Observable((observer) => {\n let handle: Subscription;\n let closed = false;\n Promise.resolve(request)\n .then((req) => setter(req, operation.getContext()))\n .then(operation.setContext)\n .then(() => {\n // if the observer is already closed, no need to subscribe.\n if (closed) return;\n handle = forward(operation).subscribe({\n next: observer.next.bind(observer),\n error: observer.error.bind(observer),\n complete: observer.complete.bind(observer),\n });\n })\n .catch(observer.error.bind(observer));\n\n return () => {\n closed = true;\n if (handle) handle.unsubscribe();\n };\n });\n });\n }\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/link/context/index.ts"],"sourcesContent":["import { Observable } from \"rxjs\";\n\nimport { ApolloLink } from \"@apollo/client/link\";\n\nexport declare namespace SetContextLink {\n namespace SetContextLinkDocumentationTypes {\n /**\n * A function that returns an updated context object for an Apollo Link\n * operation.\n *\n * The context setter function is called for each operation and allows you to\n * modify the operation's context before it's passed to the next link in the\n * chain. The returned context object is shallowly merged with the previous\n * context object.\n *\n * @param prevContext - The previous context of the operation (e.g. the value\n * of `operation.getContext()`)\n * @param operation - The GraphQL operation being executed, without the\n * `getContext` and `setContext` methods\n * @returns A partial context object or a promise that resolves to a partial context object\n */\n export function ContextSetter(\n prevContext: Readonly<ApolloLink.OperationContext>,\n operation: SetContextLink.SetContextOperation\n ):\n | Promise<Partial<ApolloLink.OperationContext>>\n | Partial<ApolloLink.OperationContext>;\n }\n\n /** {@inheritDoc @apollo/client/link/context!SetContextLink.SetContextLinkDocumentationTypes.ContextSetter:function(1)} */\n export type ContextSetter = (\n prevContext: Readonly<ApolloLink.OperationContext>,\n operation: SetContextLink.SetContextOperation\n ) =>\n | Promise<Partial<ApolloLink.OperationContext>>\n | Partial<ApolloLink.OperationContext>;\n\n /**\n * @deprecated\n * Use `ContextSetter` instead. This type is used by the deprecated\n * `setContext` function.\n */\n export type LegacyContextSetter = (\n operation: SetContextLink.SetContextOperation,\n prevContext: Readonly<ApolloLink.OperationContext>\n ) =>\n | Promise<Partial<ApolloLink.OperationContext>>\n | Partial<ApolloLink.OperationContext>;\n\n /**\n * An `ApolloLink.Operation` object without the `getContext` and `setContext`\n * methods. This prevents context setters from directly manipulating the\n * context during the setter function execution.\n */\n export type SetContextOperation = Omit<\n ApolloLink.Operation,\n \"getContext\" | \"setContext\"\n >;\n}\n\n/**\n * @deprecated\n * Use `SetContextLink` from `@apollo/client/link/context` instead. Note you\n * will need to flip the arguments when using `SetContextLink` as `prevContext`\n * is the first argument.\n *\n * ```ts\n * new SetContextLink((prevContext, operation) => {\n * // ...\n * });\n * ```\n */\nexport function setContext(setter: SetContextLink.LegacyContextSetter) {\n return new SetContextLink((prevContext, operation) =>\n setter(operation, prevContext)\n );\n}\n/**\n * `SetContextLink` is a non-terminating link that allows you to modify the\n * context of GraphQL operations before they're passed to the next link in the\n * chain. This is commonly used for authentication, adding headers, and other\n * request-time configuration.\n *\n * @example\n *\n * ```ts\n * import { SetContextLink } from \"@apollo/client/link/context\";\n *\n * const link = new SetContextLink((prevContext, operation) => {\n * return {\n * credentials: \"include\",\n * // ...\n * };\n * });\n * ```\n */\nexport class SetContextLink extends ApolloLink {\n constructor(setter: SetContextLink.ContextSetter) {\n super((operation, forward) => {\n const { ...request } = operation as SetContextLink.SetContextOperation;\n\n Object.defineProperty(request, \"client\", {\n enumerable: false,\n value: operation.client,\n });\n\n return new Observable((observer) => {\n let closed = false;\n Promise.resolve(request)\n .then((req) => setter(operation.getContext(), req))\n .then(operation.setContext)\n .then(() => {\n if (!closed) {\n forward(operation).subscribe(observer);\n }\n })\n .catch(observer.error.bind(observer));\n\n return () => {\n closed = true;\n };\n });\n });\n }\n}\n"],"names":[],"mappings":"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"}
@@ -1,12 +1,85 @@
1
- import type { GraphQLRequest, OperationContext } from "@apollo/client/link";
2
1
  import { ApolloLink } from "@apollo/client/link";
3
- export type ContextSetter = (operation: GraphQLRequest, prevContext: OperationContext) => Promise<Partial<OperationContext>> | Partial<OperationContext>;
2
+ export declare namespace SetContextLink {
3
+ namespace SetContextLinkDocumentationTypes {
4
+ /**
5
+ * A function that returns an updated context object for an Apollo Link
6
+ * operation.
7
+ *
8
+ * The context setter function is called for each operation and allows you to
9
+ * modify the operation's context before it's passed to the next link in the
10
+ * chain. The returned context object is shallowly merged with the previous
11
+ * context object.
12
+ *
13
+ * @param prevContext - The previous context of the operation (e.g. the value
14
+ * of `operation.getContext()`)
15
+ * @param operation - The GraphQL operation being executed, without the
16
+ * `getContext` and `setContext` methods
17
+ * @returns A partial context object or a promise that resolves to a partial context object
18
+ */
19
+ function ContextSetter(prevContext: Readonly<ApolloLink.OperationContext>, operation: SetContextLink.SetContextOperation): Promise<Partial<ApolloLink.OperationContext>> | Partial<ApolloLink.OperationContext>;
20
+ }
21
+ /**
22
+ * A function that returns an updated context object for an Apollo Link
23
+ * operation.
24
+ *
25
+ * The context setter function is called for each operation and allows you to
26
+ * modify the operation's context before it's passed to the next link in the
27
+ * chain. The returned context object is shallowly merged with the previous
28
+ * context object.
29
+ *
30
+ * @param prevContext - The previous context of the operation (e.g. the value
31
+ * of `operation.getContext()`)
32
+ * @param operation - The GraphQL operation being executed, without the
33
+ * `getContext` and `setContext` methods
34
+ * @returns A partial context object or a promise that resolves to a partial context object
35
+ */
36
+ type ContextSetter = (prevContext: Readonly<ApolloLink.OperationContext>, operation: SetContextLink.SetContextOperation) => Promise<Partial<ApolloLink.OperationContext>> | Partial<ApolloLink.OperationContext>;
37
+ /**
38
+ * @deprecated
39
+ * Use `ContextSetter` instead. This type is used by the deprecated
40
+ * `setContext` function.
41
+ */
42
+ type LegacyContextSetter = (operation: SetContextLink.SetContextOperation, prevContext: Readonly<ApolloLink.OperationContext>) => Promise<Partial<ApolloLink.OperationContext>> | Partial<ApolloLink.OperationContext>;
43
+ /**
44
+ * An `ApolloLink.Operation` object without the `getContext` and `setContext`
45
+ * methods. This prevents context setters from directly manipulating the
46
+ * context during the setter function execution.
47
+ */
48
+ type SetContextOperation = Omit<ApolloLink.Operation, "getContext" | "setContext">;
49
+ }
4
50
  /**
5
51
  * @deprecated
6
- * Use `SetContextLink` from `@apollo/client/link/context` instead.
52
+ * Use `SetContextLink` from `@apollo/client/link/context` instead. Note you
53
+ * will need to flip the arguments when using `SetContextLink` as `prevContext`
54
+ * is the first argument.
55
+ *
56
+ * ```ts
57
+ * new SetContextLink((prevContext, operation) => {
58
+ * // ...
59
+ * });
60
+ * ```
61
+ */
62
+ export declare function setContext(setter: SetContextLink.LegacyContextSetter): SetContextLink;
63
+ /**
64
+ * `SetContextLink` is a non-terminating link that allows you to modify the
65
+ * context of GraphQL operations before they're passed to the next link in the
66
+ * chain. This is commonly used for authentication, adding headers, and other
67
+ * request-time configuration.
68
+ *
69
+ * @example
70
+ *
71
+ * ```ts
72
+ * import { SetContextLink } from "@apollo/client/link/context";
73
+ *
74
+ * const link = new SetContextLink((prevContext, operation) => {
75
+ * return {
76
+ * credentials: "include",
77
+ * // ...
78
+ * };
79
+ * });
80
+ * ```
7
81
  */
8
- export declare function setContext(setter: ContextSetter): SetContextLink;
9
82
  export declare class SetContextLink extends ApolloLink {
10
- constructor(setter: ContextSetter);
83
+ constructor(setter: SetContextLink.ContextSetter);
11
84
  }
12
85
  //# sourceMappingURL=index.d.cts.map
@@ -7,81 +7,253 @@ Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.ApolloLink = void 0;
8
8
  const rxjs_1 = require("rxjs");
9
9
  const utils_1 = require("@apollo/client/link/utils");
10
+ const environment_1 = require("@apollo/client/utilities/environment");
10
11
  const invariant_1 = require("@apollo/client/utilities/invariant");
11
- function passthrough(op, forward) {
12
- return (forward ? forward(op) : rxjs_1.EMPTY);
13
- }
14
- function toLink(handler) {
15
- return typeof handler === "function" ? new ApolloLink(handler) : handler;
16
- }
17
- function isTerminating(link) {
18
- return link.request.length <= 1;
19
- }
12
+ /**
13
+ * The base class for all links in Apollo Client. A link represents either a
14
+ * self-contained modification to a GraphQL operation or a side effect (such as
15
+ * logging).
16
+ *
17
+ * @remarks
18
+ *
19
+ * Links enable you to customize Apollo Client's request flow by composing
20
+ * together different pieces of functionality into a chain of links. Each
21
+ * link represents a specific capability, such as adding authentication headers,
22
+ * retrying failed requests, batching operations, or sending requests to a
23
+ * GraphQL server.
24
+ *
25
+ * Every link must define a request handler via its constructor or by extending
26
+ * this class and implementing the `request` method.
27
+ *
28
+ * @example
29
+ *
30
+ * ```ts
31
+ * import { ApolloLink } from "@apollo/client";
32
+ *
33
+ * const link = new ApolloLink((operation, forward) => {
34
+ * console.log("Operation:", operation.operationName);
35
+ * return forward(operation);
36
+ * });
37
+ * ```
38
+ */
20
39
  class ApolloLink {
40
+ /**
41
+ * Creates a link that completes immediately and does not emit a result.
42
+ *
43
+ * @example
44
+ *
45
+ * ```ts
46
+ * const link = ApolloLink.empty();
47
+ * ```
48
+ */
21
49
  static empty() {
22
50
  return new ApolloLink(() => rxjs_1.EMPTY);
23
51
  }
52
+ /**
53
+ * Composes multiple links into a single composed link that executes each
54
+ * provided link in serial order.
55
+ *
56
+ * @example
57
+ *
58
+ * ```ts
59
+ * import { from, HttpLink, ApolloLink } from "@apollo/client";
60
+ * import { RetryLink } from "@apollo/client/link/retry";
61
+ * import MyAuthLink from "../auth";
62
+ *
63
+ * const link = ApolloLink.from([
64
+ * new RetryLink(),
65
+ * new MyAuthLink(),
66
+ * new HttpLink({ uri: "http://localhost:4000/graphql" }),
67
+ * ]);
68
+ * ```
69
+ *
70
+ * @param links - An array of `ApolloLink` instances or request handlers that
71
+ * are executed in serial order.
72
+ */
24
73
  static from(links) {
25
74
  if (links.length === 0)
26
75
  return ApolloLink.empty();
27
- return links.map(toLink).reduce((x, y) => x.concat(y));
76
+ const [first, ...rest] = links;
77
+ return first.concat(...rest);
28
78
  }
29
- static split(test, left, right) {
30
- const leftLink = toLink(left);
31
- const rightLink = toLink(right || new ApolloLink(passthrough));
32
- let ret;
33
- if (isTerminating(leftLink) && isTerminating(rightLink)) {
34
- ret = new ApolloLink((operation) => {
35
- return test(operation) ?
36
- leftLink.request(operation) || rxjs_1.EMPTY
37
- : rightLink.request(operation) || rxjs_1.EMPTY;
38
- });
39
- }
40
- else {
41
- ret = new ApolloLink((operation, forward) => {
42
- return test(operation) ?
43
- leftLink.request(operation, forward) || rxjs_1.EMPTY
44
- : rightLink.request(operation, forward) || rxjs_1.EMPTY;
45
- });
46
- }
47
- return Object.assign(ret, { left: leftLink, right: rightLink });
79
+ /**
80
+ * Creates a link that conditionally routes a request to different links.
81
+ *
82
+ * @example
83
+ *
84
+ * ```ts
85
+ * import { ApolloLink, HttpLink } from "@apollo/client";
86
+ *
87
+ * const link = ApolloLink.split(
88
+ * (operation) => operation.getContext().version === 1,
89
+ * new HttpLink({ uri: "http://localhost:4000/v1/graphql" }),
90
+ * new HttpLink({ uri: "http://localhost:4000/v2/graphql" })
91
+ * );
92
+ * ```
93
+ *
94
+ * @param test - A predicate function that receives the current `operation`
95
+ * and returns a boolean indicating which link to execute. Returning `true`
96
+ * executes the `left` link. Returning `false` executes the `right` link.
97
+ *
98
+ * @param left - The link that executes when the `test` function returns
99
+ * `true`.
100
+ *
101
+ * @param right - The link that executes when the `test` function returns
102
+ * `false`. If the `right` link is not provided, the request is forwarded to
103
+ * the next link in the chain.
104
+ */
105
+ static split(test, left, right = new ApolloLink((op, forward) => forward(op))) {
106
+ const link = new ApolloLink((operation, forward) => {
107
+ const result = test(operation);
108
+ if (environment_1.__DEV__) {
109
+ if (typeof result !== "boolean") {
110
+ __DEV__ && invariant_1.invariant.warn(61, result);
111
+ }
112
+ }
113
+ return result ?
114
+ left.request(operation, forward)
115
+ : right.request(operation, forward);
116
+ });
117
+ return Object.assign(link, { left, right });
48
118
  }
49
- static execute(link, operation, context) {
50
- return (link.request((0, utils_1.createOperation)(operation.context, (0, utils_1.transformOperation)((0, utils_1.validateOperation)(operation)), context)) || rxjs_1.EMPTY);
119
+ /**
120
+ * Executes a GraphQL request against a link. The `execute` function begins
121
+ * the request by calling the request handler of the link.
122
+ *
123
+ * @example
124
+ *
125
+ * ```ts
126
+ * const observable = ApolloLink.execute(link, { query, variables }, { client });
127
+ *
128
+ * observable.subscribe({
129
+ * next(value) {
130
+ * console.log("Received", value);
131
+ * },
132
+ * error(error) {
133
+ * console.error("Oops got error", error);
134
+ * },
135
+ * complete() {
136
+ * console.log("Request complete");
137
+ * },
138
+ * });
139
+ * ```
140
+ *
141
+ * @param link - The `ApolloLink` instance to execute the request.
142
+ *
143
+ * @param request - The GraphQL request details, such as the `query` and
144
+ * `variables`.
145
+ *
146
+ * @param context - The execution context for the request, such as the
147
+ * `client` making the request.
148
+ */
149
+ static execute(link, request, context) {
150
+ return link.request((0, utils_1.createOperation)(request, context), () => {
151
+ if (environment_1.__DEV__) {
152
+ __DEV__ && invariant_1.invariant.warn(62);
153
+ }
154
+ return rxjs_1.EMPTY;
155
+ });
51
156
  }
52
- static concat(first, second) {
53
- const firstLink = toLink(first);
54
- if (isTerminating(firstLink)) {
55
- __DEV__ && invariant_1.invariant.warn(64, firstLink);
56
- return firstLink;
57
- }
58
- const nextLink = toLink(second);
59
- let ret;
60
- if (isTerminating(nextLink)) {
61
- ret = new ApolloLink((operation) => firstLink.request(operation, (op) => nextLink.request(op) || rxjs_1.EMPTY) ||
62
- rxjs_1.EMPTY);
63
- }
64
- else {
65
- ret = new ApolloLink((operation, forward) => {
66
- return (firstLink.request(operation, (op) => {
67
- return nextLink.request(op, forward) || rxjs_1.EMPTY;
68
- }) || rxjs_1.EMPTY);
69
- });
70
- }
71
- return Object.assign(ret, { left: firstLink, right: nextLink });
157
+ /**
158
+ * Combines multiple links into a single composed link.
159
+ *
160
+ * @example
161
+ *
162
+ * ```ts
163
+ * const link = ApolloLink.concat(firstLink, secondLink, thirdLink);
164
+ * ```
165
+ *
166
+ * @param links - The links to concatenate into a single link. Each link will
167
+ * execute in serial order.
168
+ *
169
+ * @deprecated Use `ApolloLink.from` instead. `ApolloLink.concat` will be
170
+ * removed in a future major version.
171
+ */
172
+ static concat(...links) {
173
+ return ApolloLink.from(links);
72
174
  }
73
175
  constructor(request) {
74
176
  if (request)
75
177
  this.request = request;
76
178
  }
179
+ /**
180
+ * Concatenates a link that conditionally routes a request to different links.
181
+ *
182
+ * @example
183
+ *
184
+ * ```ts
185
+ * import { ApolloLink, HttpLink } from "@apollo/client";
186
+ *
187
+ * const previousLink = new ApolloLink((operation, forward) => {
188
+ * // Handle the request
189
+ *
190
+ * return forward(operation);
191
+ * });
192
+ *
193
+ * const link = previousLink.split(
194
+ * (operation) => operation.getContext().version === 1,
195
+ * new HttpLink({ uri: "http://localhost:4000/v1/graphql" }),
196
+ * new HttpLink({ uri: "http://localhost:4000/v2/graphql" })
197
+ * );
198
+ * ```
199
+ *
200
+ * @param test - A predicate function that receives the current `operation`
201
+ * and returns a boolean indicating which link to execute. Returning `true`
202
+ * executes the `left` link. Returning `false` executes the `right` link.
203
+ *
204
+ * @param left - The link that executes when the `test` function returns
205
+ * `true`.
206
+ *
207
+ * @param right - The link that executes when the `test` function returns
208
+ * `false`. If the `right` link is not provided, the request is forwarded to
209
+ * the next link in the chain.
210
+ */
77
211
  split(test, left, right) {
78
- return this.concat(ApolloLink.split(test, left, right || new ApolloLink(passthrough)));
212
+ return this.concat(ApolloLink.split(test, left, right));
79
213
  }
80
- concat(next) {
81
- return ApolloLink.concat(this, next);
214
+ /**
215
+ * Combines the link with other links into a single composed link.
216
+ *
217
+ * @example
218
+ *
219
+ * ```ts
220
+ * import { ApolloLink, HttpLink } from "@apollo/client";
221
+ *
222
+ * const previousLink = new ApolloLink((operation, forward) => {
223
+ * // Handle the request
224
+ *
225
+ * return forward(operation);
226
+ * });
227
+ *
228
+ * const link = previousLink.concat(
229
+ * link1,
230
+ * link2,
231
+ * new HttpLink({ uri: "http://localhost:4000/graphql" })
232
+ * );
233
+ * ```
234
+ */
235
+ concat(...links) {
236
+ if (links.length === 0) {
237
+ return this;
238
+ }
239
+ return links.reduce(this.combine.bind(this), this);
82
240
  }
241
+ combine(left, right) {
242
+ const link = new ApolloLink((operation, forward) => {
243
+ return left.request(operation, (op) => right.request(op, forward));
244
+ });
245
+ return Object.assign(link, { left, right });
246
+ }
247
+ /**
248
+ * Runs the request handler for the provided operation.
249
+ *
250
+ * > [!NOTE]
251
+ * > This is called by the `ApolloLink.execute` function for you and should
252
+ * > not be called directly. Prefer using `ApolloLink.execute` to make the
253
+ * > request instead.
254
+ */
83
255
  request(operation, forward) {
84
- throw (0, invariant_1.newInvariantError)(65);
256
+ throw (0, invariant_1.newInvariantError)(63);
85
257
  }
86
258
  /**
87
259
  * @internal