@apollo/client 3.8.0-alpha.9 → 3.8.0-beta.1

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 (582) hide show
  1. package/apollo-client.cjs +1043 -686
  2. package/apollo-client.cjs.map +1 -1
  3. package/apollo-client.min.cjs +1 -1
  4. package/cache/cache.cjs +34 -31
  5. package/cache/cache.cjs.map +1 -1
  6. package/cache/cache.cjs.native.js +34 -31
  7. package/cache/core/cache.d.ts +5 -4
  8. package/cache/core/cache.d.ts.map +1 -1
  9. package/cache/core/cache.js +1 -0
  10. package/cache/core/cache.js.map +1 -1
  11. package/cache/core/types/Cache.d.ts +2 -2
  12. package/cache/core/types/Cache.d.ts.map +1 -1
  13. package/cache/core/types/Cache.js.map +1 -1
  14. package/cache/core/types/DataProxy.d.ts +4 -4
  15. package/cache/core/types/DataProxy.d.ts.map +1 -1
  16. package/cache/core/types/DataProxy.js.map +1 -1
  17. package/cache/core/types/common.d.ts +3 -3
  18. package/cache/core/types/common.d.ts.map +1 -1
  19. package/cache/core/types/common.js.map +1 -1
  20. package/cache/inmemory/entityStore.d.ts +5 -5
  21. package/cache/inmemory/entityStore.d.ts.map +1 -1
  22. package/cache/inmemory/entityStore.js +2 -2
  23. package/cache/inmemory/entityStore.js.map +1 -1
  24. package/cache/inmemory/fragmentRegistry.d.ts +1 -1
  25. package/cache/inmemory/fragmentRegistry.d.ts.map +1 -1
  26. package/cache/inmemory/fragmentRegistry.js.map +1 -1
  27. package/cache/inmemory/helpers.d.ts +6 -5
  28. package/cache/inmemory/helpers.d.ts.map +1 -1
  29. package/cache/inmemory/helpers.js.map +1 -1
  30. package/cache/inmemory/inMemoryCache.d.ts +9 -7
  31. package/cache/inmemory/inMemoryCache.d.ts.map +1 -1
  32. package/cache/inmemory/inMemoryCache.js +14 -16
  33. package/cache/inmemory/inMemoryCache.js.map +1 -1
  34. package/cache/inmemory/key-extractor.d.ts +1 -1
  35. package/cache/inmemory/key-extractor.d.ts.map +1 -1
  36. package/cache/inmemory/key-extractor.js +2 -2
  37. package/cache/inmemory/key-extractor.js.map +1 -1
  38. package/cache/inmemory/policies.d.ts +7 -6
  39. package/cache/inmemory/policies.d.ts.map +1 -1
  40. package/cache/inmemory/policies.js +6 -6
  41. package/cache/inmemory/policies.js.map +1 -1
  42. package/cache/inmemory/reactiveVars.d.ts +1 -1
  43. package/cache/inmemory/reactiveVars.d.ts.map +1 -1
  44. package/cache/inmemory/reactiveVars.js.map +1 -1
  45. package/cache/inmemory/readFromStore.d.ts +6 -6
  46. package/cache/inmemory/readFromStore.d.ts.map +1 -1
  47. package/cache/inmemory/readFromStore.js +10 -5
  48. package/cache/inmemory/readFromStore.js.map +1 -1
  49. package/cache/inmemory/types.d.ts +6 -6
  50. package/cache/inmemory/types.d.ts.map +1 -1
  51. package/cache/inmemory/types.js.map +1 -1
  52. package/cache/inmemory/writeToStore.d.ts +6 -6
  53. package/cache/inmemory/writeToStore.d.ts.map +1 -1
  54. package/cache/inmemory/writeToStore.js +7 -8
  55. package/cache/inmemory/writeToStore.js.map +1 -1
  56. package/config/jest/setup.d.ts +1 -0
  57. package/config/jest/setup.d.ts.map +1 -1
  58. package/config/jest/setup.js +3 -0
  59. package/config/jest/setup.js.map +1 -1
  60. package/core/ApolloClient.d.ts +12 -10
  61. package/core/ApolloClient.d.ts.map +1 -1
  62. package/core/ApolloClient.js +18 -16
  63. package/core/ApolloClient.js.map +1 -1
  64. package/core/LocalState.d.ts +7 -9
  65. package/core/LocalState.d.ts.map +1 -1
  66. package/core/LocalState.js +6 -10
  67. package/core/LocalState.js.map +1 -1
  68. package/core/ObservableQuery.d.ts +11 -8
  69. package/core/ObservableQuery.d.ts.map +1 -1
  70. package/core/ObservableQuery.js +48 -28
  71. package/core/ObservableQuery.js.map +1 -1
  72. package/core/QueryInfo.d.ts +9 -9
  73. package/core/QueryInfo.d.ts.map +1 -1
  74. package/core/QueryInfo.js.map +1 -1
  75. package/core/QueryManager.d.ts +14 -11
  76. package/core/QueryManager.d.ts.map +1 -1
  77. package/core/QueryManager.js +114 -108
  78. package/core/QueryManager.js.map +1 -1
  79. package/core/core.cjs +267 -172
  80. package/core/core.cjs.map +1 -1
  81. package/core/core.cjs.native.js +267 -172
  82. package/core/equalByQuery.d.ts +4 -0
  83. package/core/equalByQuery.d.ts.map +1 -0
  84. package/{react/hooks/compareResults.js → core/equalByQuery.js} +14 -10
  85. package/core/equalByQuery.js.map +1 -0
  86. package/core/index.d.ts +2 -2
  87. package/core/index.d.ts.map +1 -1
  88. package/core/index.js +2 -2
  89. package/core/index.js.map +1 -1
  90. package/core/networkStatus.d.ts +1 -0
  91. package/core/networkStatus.d.ts.map +1 -1
  92. package/core/networkStatus.js +3 -0
  93. package/core/networkStatus.js.map +1 -1
  94. package/core/types.d.ts +14 -14
  95. package/core/types.d.ts.map +1 -1
  96. package/core/types.js.map +1 -1
  97. package/core/watchQueryOptions.d.ts +6 -7
  98. package/core/watchQueryOptions.d.ts.map +1 -1
  99. package/core/watchQueryOptions.js.map +1 -1
  100. package/dev/dev.cjs +642 -0
  101. package/dev/dev.cjs.map +1 -0
  102. package/dev/dev.cjs.native.js +642 -0
  103. package/dev/index.d.ts +4 -0
  104. package/dev/index.d.ts.map +1 -0
  105. package/dev/index.js +4 -0
  106. package/dev/index.js.map +1 -0
  107. package/dev/loadDevMessages.d.ts +2 -0
  108. package/dev/loadDevMessages.d.ts.map +1 -0
  109. package/dev/loadDevMessages.js +6 -0
  110. package/dev/loadDevMessages.js.map +1 -0
  111. package/dev/loadErrorMessageHandler.d.ts +3 -0
  112. package/dev/loadErrorMessageHandler.d.ts.map +1 -0
  113. package/dev/loadErrorMessageHandler.js +26 -0
  114. package/dev/loadErrorMessageHandler.js.map +1 -0
  115. package/dev/loadErrorMessages.d.ts +2 -0
  116. package/dev/loadErrorMessages.d.ts.map +1 -0
  117. package/dev/loadErrorMessages.js +6 -0
  118. package/dev/loadErrorMessages.js.map +1 -0
  119. package/dev/package.json +8 -0
  120. package/errors/errors.cjs +17 -17
  121. package/errors/errors.cjs.map +1 -1
  122. package/errors/errors.cjs.native.js +17 -17
  123. package/errors/index.d.ts +26 -10
  124. package/errors/index.d.ts.map +1 -1
  125. package/errors/index.js +17 -19
  126. package/errors/index.js.map +1 -1
  127. package/invariantErrorCodes.d.ts +13 -0
  128. package/invariantErrorCodes.d.ts.map +1 -0
  129. package/invariantErrorCodes.js +331 -144
  130. package/invariantErrorCodes.js.map +1 -0
  131. package/link/batch/batchLink.d.ts +4 -3
  132. package/link/batch/batchLink.d.ts.map +1 -1
  133. package/link/batch/batchLink.js.map +1 -1
  134. package/link/batch/batching.d.ts +1 -1
  135. package/link/batch/batching.d.ts.map +1 -1
  136. package/link/batch/batching.js.map +1 -1
  137. package/link/batch-http/batch-http.cjs +23 -2
  138. package/link/batch-http/batch-http.cjs.map +1 -1
  139. package/link/batch-http/batch-http.cjs.native.js +23 -2
  140. package/link/batch-http/batchHttpLink.d.ts +3 -2
  141. package/link/batch-http/batchHttpLink.d.ts.map +1 -1
  142. package/link/batch-http/batchHttpLink.js +7 -2
  143. package/link/batch-http/batchHttpLink.js.map +1 -1
  144. package/link/context/index.d.ts +3 -2
  145. package/link/context/index.d.ts.map +1 -1
  146. package/link/context/index.js.map +1 -1
  147. package/link/core/ApolloLink.d.ts +3 -2
  148. package/link/core/ApolloLink.d.ts.map +1 -1
  149. package/link/core/ApolloLink.js +3 -13
  150. package/link/core/ApolloLink.js.map +1 -1
  151. package/link/core/core.cjs +2 -12
  152. package/link/core/core.cjs.map +1 -1
  153. package/link/core/core.cjs.native.js +2 -12
  154. package/link/core/types.d.ts +8 -3
  155. package/link/core/types.d.ts.map +1 -1
  156. package/link/core/types.js.map +1 -1
  157. package/link/error/index.d.ts +4 -3
  158. package/link/error/index.d.ts.map +1 -1
  159. package/link/error/index.js.map +1 -1
  160. package/link/http/HttpLink.d.ts +3 -2
  161. package/link/http/HttpLink.d.ts.map +1 -1
  162. package/link/http/HttpLink.js.map +1 -1
  163. package/link/http/checkFetcher.js +2 -2
  164. package/link/http/checkFetcher.js.map +1 -1
  165. package/link/http/createHttpLink.d.ts +1 -1
  166. package/link/http/createHttpLink.d.ts.map +1 -1
  167. package/link/http/createHttpLink.js +21 -20
  168. package/link/http/createHttpLink.js.map +1 -1
  169. package/link/http/http.cjs +73 -43
  170. package/link/http/http.cjs.map +1 -1
  171. package/link/http/http.cjs.native.js +73 -43
  172. package/link/http/iterators/nodeStream.d.ts +1 -1
  173. package/link/http/iterators/nodeStream.d.ts.map +1 -1
  174. package/link/http/iterators/nodeStream.js.map +1 -1
  175. package/link/http/parseAndCheckHttpResponse.d.ts +2 -2
  176. package/link/http/parseAndCheckHttpResponse.d.ts.map +1 -1
  177. package/link/http/parseAndCheckHttpResponse.js +47 -26
  178. package/link/http/parseAndCheckHttpResponse.js.map +1 -1
  179. package/link/http/responseIterator.d.ts +1 -1
  180. package/link/http/responseIterator.d.ts.map +1 -1
  181. package/link/http/responseIterator.js.map +1 -1
  182. package/link/http/rewriteURIForGET.d.ts +1 -1
  183. package/link/http/rewriteURIForGET.d.ts.map +1 -1
  184. package/link/http/rewriteURIForGET.js.map +1 -1
  185. package/link/http/selectHttpOptionsAndBody.d.ts +3 -2
  186. package/link/http/selectHttpOptionsAndBody.d.ts.map +1 -1
  187. package/link/http/selectHttpOptionsAndBody.js.map +1 -1
  188. package/link/http/selectURI.d.ts +1 -1
  189. package/link/http/selectURI.d.ts.map +1 -1
  190. package/link/http/selectURI.js.map +1 -1
  191. package/link/http/serializeFetchParameter.d.ts +1 -1
  192. package/link/http/serializeFetchParameter.d.ts.map +1 -1
  193. package/link/http/serializeFetchParameter.js +2 -2
  194. package/link/http/serializeFetchParameter.js.map +1 -1
  195. package/link/persisted-queries/index.d.ts +4 -3
  196. package/link/persisted-queries/index.d.ts.map +1 -1
  197. package/link/persisted-queries/index.js +16 -20
  198. package/link/persisted-queries/index.js.map +1 -1
  199. package/link/persisted-queries/persisted-queries.cjs +15 -19
  200. package/link/persisted-queries/persisted-queries.cjs.map +1 -1
  201. package/link/persisted-queries/persisted-queries.cjs.native.js +15 -19
  202. package/link/remove-typename/index.d.ts +2 -0
  203. package/link/remove-typename/index.d.ts.map +1 -0
  204. package/link/remove-typename/index.js +2 -0
  205. package/link/remove-typename/index.js.map +1 -0
  206. package/link/remove-typename/package.json +8 -0
  207. package/link/remove-typename/remove-typename.cjs +81 -0
  208. package/link/remove-typename/remove-typename.cjs.map +1 -0
  209. package/link/remove-typename/remove-typename.cjs.native.js +81 -0
  210. package/link/remove-typename/removeTypenameFromVariables.d.ts +11 -0
  211. package/link/remove-typename/removeTypenameFromVariables.d.ts.map +1 -0
  212. package/link/remove-typename/removeTypenameFromVariables.js +73 -0
  213. package/link/remove-typename/removeTypenameFromVariables.js.map +1 -0
  214. package/link/retry/delayFunction.d.ts +1 -1
  215. package/link/retry/delayFunction.d.ts.map +1 -1
  216. package/link/retry/delayFunction.js.map +1 -1
  217. package/link/retry/retryFunction.d.ts +1 -1
  218. package/link/retry/retryFunction.d.ts.map +1 -1
  219. package/link/retry/retryFunction.js.map +1 -1
  220. package/link/retry/retryLink.d.ts +4 -3
  221. package/link/retry/retryLink.d.ts.map +1 -1
  222. package/link/retry/retryLink.js.map +1 -1
  223. package/link/schema/index.d.ts +3 -2
  224. package/link/schema/index.d.ts.map +1 -1
  225. package/link/schema/index.js.map +1 -1
  226. package/link/subscriptions/index.d.ts +2 -1
  227. package/link/subscriptions/index.d.ts.map +1 -1
  228. package/link/subscriptions/index.js +8 -3
  229. package/link/subscriptions/index.js.map +1 -1
  230. package/link/subscriptions/subscriptions.cjs +8 -3
  231. package/link/subscriptions/subscriptions.cjs.map +1 -1
  232. package/link/subscriptions/subscriptions.cjs.native.js +8 -3
  233. package/link/utils/createOperation.d.ts +1 -1
  234. package/link/utils/createOperation.d.ts.map +1 -1
  235. package/link/utils/createOperation.js.map +1 -1
  236. package/link/utils/filterOperationVariables.d.ts +5 -0
  237. package/link/utils/filterOperationVariables.d.ts.map +1 -0
  238. package/link/utils/filterOperationVariables.js +18 -0
  239. package/link/utils/filterOperationVariables.js.map +1 -0
  240. package/link/utils/index.d.ts +1 -0
  241. package/link/utils/index.d.ts.map +1 -1
  242. package/link/utils/index.js +1 -0
  243. package/link/utils/index.js.map +1 -1
  244. package/link/utils/throwServerError.d.ts +1 -1
  245. package/link/utils/throwServerError.d.ts.map +1 -1
  246. package/link/utils/throwServerError.js.map +1 -1
  247. package/link/utils/toPromise.d.ts +1 -1
  248. package/link/utils/toPromise.d.ts.map +1 -1
  249. package/link/utils/toPromise.js +1 -1
  250. package/link/utils/toPromise.js.map +1 -1
  251. package/link/utils/transformOperation.d.ts +1 -1
  252. package/link/utils/transformOperation.d.ts.map +1 -1
  253. package/link/utils/transformOperation.js.map +1 -1
  254. package/link/utils/utils.cjs +20 -2
  255. package/link/utils/utils.cjs.map +1 -1
  256. package/link/utils/utils.cjs.native.js +20 -2
  257. package/link/utils/validateOperation.d.ts +1 -1
  258. package/link/utils/validateOperation.d.ts.map +1 -1
  259. package/link/utils/validateOperation.js +2 -2
  260. package/link/utils/validateOperation.js.map +1 -1
  261. package/link/ws/index.d.ts +5 -3
  262. package/link/ws/index.d.ts.map +1 -1
  263. package/link/ws/index.js.map +1 -1
  264. package/package.json +36 -32
  265. package/react/cache/QueryReference.d.ts +34 -0
  266. package/react/cache/QueryReference.d.ts.map +1 -0
  267. package/react/cache/QueryReference.js +107 -0
  268. package/react/cache/QueryReference.js.map +1 -0
  269. package/react/cache/SuspenseCache.d.ts +10 -13
  270. package/react/cache/SuspenseCache.d.ts.map +1 -1
  271. package/react/cache/SuspenseCache.js +18 -41
  272. package/react/cache/SuspenseCache.js.map +1 -1
  273. package/react/cache/types.d.ts +2 -0
  274. package/react/cache/types.d.ts.map +1 -0
  275. package/react/cache/types.js +2 -0
  276. package/react/cache/types.js.map +1 -0
  277. package/react/components/Mutation.d.ts +2 -2
  278. package/react/components/Mutation.d.ts.map +1 -1
  279. package/react/components/Mutation.js.map +1 -1
  280. package/react/components/Query.d.ts +2 -2
  281. package/react/components/Query.d.ts.map +1 -1
  282. package/react/components/Query.js.map +1 -1
  283. package/react/components/Subscription.d.ts +2 -2
  284. package/react/components/Subscription.d.ts.map +1 -1
  285. package/react/components/Subscription.js.map +1 -1
  286. package/react/components/types.d.ts +4 -4
  287. package/react/components/types.d.ts.map +1 -1
  288. package/react/components/types.js.map +1 -1
  289. package/react/context/ApolloConsumer.d.ts +1 -1
  290. package/react/context/ApolloConsumer.d.ts.map +1 -1
  291. package/react/context/ApolloConsumer.js +2 -3
  292. package/react/context/ApolloConsumer.js.map +1 -1
  293. package/react/context/ApolloContext.d.ts +10 -3
  294. package/react/context/ApolloContext.d.ts.map +1 -1
  295. package/react/context/ApolloContext.js +10 -8
  296. package/react/context/ApolloContext.js.map +1 -1
  297. package/react/context/ApolloProvider.d.ts +2 -2
  298. package/react/context/ApolloProvider.d.ts.map +1 -1
  299. package/react/context/ApolloProvider.js +8 -13
  300. package/react/context/ApolloProvider.js.map +1 -1
  301. package/react/context/context.cjs +18 -22
  302. package/react/context/context.cjs.map +1 -1
  303. package/react/context/context.cjs.native.js +18 -22
  304. package/react/context/index.d.ts +1 -1
  305. package/react/context/index.d.ts.map +1 -1
  306. package/react/context/index.js +1 -1
  307. package/react/context/index.js.map +1 -1
  308. package/react/hoc/graphql.d.ts +3 -3
  309. package/react/hoc/graphql.d.ts.map +1 -1
  310. package/react/hoc/graphql.js.map +1 -1
  311. package/react/hoc/hoc-utils.d.ts +2 -2
  312. package/react/hoc/hoc-utils.d.ts.map +1 -1
  313. package/react/hoc/hoc-utils.js +2 -3
  314. package/react/hoc/hoc-utils.js.map +1 -1
  315. package/react/hoc/hoc.cjs +2 -4
  316. package/react/hoc/hoc.cjs.map +1 -1
  317. package/react/hoc/hoc.cjs.native.js +2 -4
  318. package/react/hoc/mutation-hoc.d.ts +4 -4
  319. package/react/hoc/mutation-hoc.d.ts.map +1 -1
  320. package/react/hoc/mutation-hoc.js.map +1 -1
  321. package/react/hoc/query-hoc.d.ts +2 -2
  322. package/react/hoc/query-hoc.d.ts.map +1 -1
  323. package/react/hoc/query-hoc.js.map +1 -1
  324. package/react/hoc/subscription-hoc.d.ts +2 -2
  325. package/react/hoc/subscription-hoc.d.ts.map +1 -1
  326. package/react/hoc/subscription-hoc.js.map +1 -1
  327. package/react/hoc/types.d.ts +4 -4
  328. package/react/hoc/types.d.ts.map +1 -1
  329. package/react/hoc/types.js.map +1 -1
  330. package/react/hoc/withApollo.d.ts +1 -1
  331. package/react/hoc/withApollo.d.ts.map +1 -1
  332. package/react/hoc/withApollo.js +2 -3
  333. package/react/hoc/withApollo.js.map +1 -1
  334. package/react/hooks/hooks.cjs +223 -219
  335. package/react/hooks/hooks.cjs.map +1 -1
  336. package/react/hooks/hooks.cjs.native.js +223 -219
  337. package/react/hooks/index.d.ts +2 -1
  338. package/react/hooks/index.d.ts.map +1 -1
  339. package/react/hooks/index.js +2 -1
  340. package/react/hooks/index.js.map +1 -1
  341. package/react/hooks/internal/__use.d.ts +4 -0
  342. package/react/hooks/internal/__use.d.ts.map +1 -0
  343. package/react/hooks/internal/__use.js +17 -0
  344. package/react/hooks/internal/__use.js.map +1 -0
  345. package/react/hooks/internal/index.d.ts +2 -0
  346. package/react/hooks/internal/index.d.ts.map +1 -1
  347. package/react/hooks/internal/index.js +2 -0
  348. package/react/hooks/internal/index.js.map +1 -1
  349. package/react/hooks/internal/useDeepMemo.d.ts +1 -1
  350. package/react/hooks/internal/useDeepMemo.d.ts.map +1 -1
  351. package/react/hooks/internal/useDeepMemo.js.map +1 -1
  352. package/react/hooks/internal/useIsomorphicLayoutEffect.d.ts.map +1 -1
  353. package/react/hooks/internal/useIsomorphicLayoutEffect.js +2 -2
  354. package/react/hooks/internal/useIsomorphicLayoutEffect.js.map +1 -1
  355. package/react/hooks/internal/useStrictModeSafeCleanupEffect.d.ts +2 -0
  356. package/react/hooks/internal/useStrictModeSafeCleanupEffect.d.ts.map +1 -0
  357. package/react/hooks/internal/useStrictModeSafeCleanupEffect.js +11 -0
  358. package/react/hooks/internal/useStrictModeSafeCleanupEffect.js.map +1 -0
  359. package/react/hooks/useApolloClient.d.ts +1 -1
  360. package/react/hooks/useApolloClient.d.ts.map +1 -1
  361. package/react/hooks/useApolloClient.js +2 -4
  362. package/react/hooks/useApolloClient.js.map +1 -1
  363. package/react/hooks/useBackgroundQuery.d.ts +18 -0
  364. package/react/hooks/useBackgroundQuery.d.ts.map +1 -0
  365. package/react/hooks/useBackgroundQuery.js +69 -0
  366. package/react/hooks/useBackgroundQuery.js.map +1 -0
  367. package/react/hooks/useFragment.d.ts +14 -9
  368. package/react/hooks/useFragment.d.ts.map +1 -1
  369. package/react/hooks/useFragment.js +2 -2
  370. package/react/hooks/useFragment.js.map +1 -1
  371. package/react/hooks/useLazyQuery.d.ts +4 -4
  372. package/react/hooks/useLazyQuery.d.ts.map +1 -1
  373. package/react/hooks/useLazyQuery.js +13 -22
  374. package/react/hooks/useLazyQuery.js.map +1 -1
  375. package/react/hooks/useMutation.d.ts +4 -4
  376. package/react/hooks/useMutation.d.ts.map +1 -1
  377. package/react/hooks/useMutation.js +1 -1
  378. package/react/hooks/useMutation.js.map +1 -1
  379. package/react/hooks/useQuery.d.ts +6 -6
  380. package/react/hooks/useQuery.d.ts.map +1 -1
  381. package/react/hooks/useQuery.js +29 -28
  382. package/react/hooks/useQuery.js.map +1 -1
  383. package/react/hooks/useReactiveVar.d.ts +1 -1
  384. package/react/hooks/useReactiveVar.d.ts.map +1 -1
  385. package/react/hooks/useReactiveVar.js.map +1 -1
  386. package/react/hooks/useSubscription.d.ts +4 -4
  387. package/react/hooks/useSubscription.d.ts.map +1 -1
  388. package/react/hooks/useSubscription.js +27 -19
  389. package/react/hooks/useSubscription.js.map +1 -1
  390. package/react/hooks/useSuspenseCache.d.ts +1 -1
  391. package/react/hooks/useSuspenseCache.d.ts.map +1 -1
  392. package/react/hooks/useSuspenseCache.js +2 -4
  393. package/react/hooks/useSuspenseCache.js.map +1 -1
  394. package/react/hooks/useSuspenseQuery.d.ts +39 -7
  395. package/react/hooks/useSuspenseQuery.d.ts.map +1 -1
  396. package/react/hooks/useSuspenseQuery.js +68 -149
  397. package/react/hooks/useSuspenseQuery.js.map +1 -1
  398. package/react/hooks/useSyncExternalStore.js +1 -1
  399. package/react/index.d.ts +1 -1
  400. package/react/index.d.ts.map +1 -1
  401. package/react/index.js +1 -1
  402. package/react/index.js.map +1 -1
  403. package/react/parser/index.d.ts +1 -1
  404. package/react/parser/index.d.ts.map +1 -1
  405. package/react/parser/index.js +20 -17
  406. package/react/parser/index.js.map +1 -1
  407. package/react/parser/parser.cjs +19 -16
  408. package/react/parser/parser.cjs.map +1 -1
  409. package/react/parser/parser.cjs.native.js +19 -16
  410. package/react/react.cjs +116 -35
  411. package/react/react.cjs.map +1 -1
  412. package/react/react.cjs.native.js +116 -35
  413. package/react/ssr/RenderPromises.d.ts +2 -2
  414. package/react/ssr/RenderPromises.d.ts.map +1 -1
  415. package/react/ssr/RenderPromises.js.map +1 -1
  416. package/react/ssr/renderToStringWithData.d.ts +1 -1
  417. package/react/ssr/renderToStringWithData.d.ts.map +1 -1
  418. package/react/ssr/renderToStringWithData.js.map +1 -1
  419. package/react/types/types.d.ts +10 -13
  420. package/react/types/types.d.ts.map +1 -1
  421. package/react/types/types.js.map +1 -1
  422. package/testing/core/core.cjs +1 -1
  423. package/testing/core/core.cjs.map +1 -1
  424. package/testing/core/core.cjs.native.js +1 -1
  425. package/testing/core/mocking/mockClient.d.ts +2 -2
  426. package/testing/core/mocking/mockClient.d.ts.map +1 -1
  427. package/testing/core/mocking/mockClient.js.map +1 -1
  428. package/testing/core/mocking/mockLink.d.ts +2 -1
  429. package/testing/core/mocking/mockLink.d.ts.map +1 -1
  430. package/testing/core/mocking/mockLink.js +3 -3
  431. package/testing/core/mocking/mockLink.js.map +1 -1
  432. package/testing/core/mocking/mockQueryManager.d.ts +1 -1
  433. package/testing/core/mocking/mockQueryManager.d.ts.map +1 -1
  434. package/testing/core/mocking/mockQueryManager.js.map +1 -1
  435. package/testing/core/mocking/mockSubscriptionLink.d.ts +3 -2
  436. package/testing/core/mocking/mockSubscriptionLink.d.ts.map +1 -1
  437. package/testing/core/mocking/mockSubscriptionLink.js.map +1 -1
  438. package/testing/core/mocking/mockWatchQuery.d.ts +2 -2
  439. package/testing/core/mocking/mockWatchQuery.d.ts.map +1 -1
  440. package/testing/core/mocking/mockWatchQuery.js.map +1 -1
  441. package/testing/core/observableToPromise.d.ts +2 -2
  442. package/testing/core/observableToPromise.d.ts.map +1 -1
  443. package/testing/core/observableToPromise.js.map +1 -1
  444. package/testing/core/subscribeAndCount.d.ts +1 -1
  445. package/testing/core/subscribeAndCount.d.ts.map +1 -1
  446. package/testing/core/subscribeAndCount.js.map +1 -1
  447. package/testing/matchers/index.d.ts +2 -0
  448. package/testing/matchers/index.d.ts.map +1 -0
  449. package/testing/matchers/index.js +6 -0
  450. package/testing/matchers/index.js.map +1 -0
  451. package/testing/matchers/toMatchDocument.d.ts +4 -0
  452. package/testing/matchers/toMatchDocument.d.ts.map +1 -0
  453. package/testing/matchers/toMatchDocument.js +34 -0
  454. package/testing/matchers/toMatchDocument.js.map +1 -0
  455. package/testing/react/MockedProvider.d.ts +8 -7
  456. package/testing/react/MockedProvider.d.ts.map +1 -1
  457. package/testing/react/MockedProvider.js +7 -6
  458. package/testing/react/MockedProvider.js.map +1 -1
  459. package/testing/testing.cjs +7 -51
  460. package/testing/testing.cjs.map +1 -1
  461. package/testing/testing.cjs.native.js +7 -51
  462. package/utilities/common/compact.d.ts +1 -1
  463. package/utilities/common/compact.d.ts.map +1 -1
  464. package/utilities/common/compact.js.map +1 -1
  465. package/utilities/common/errorHandling.d.ts +1 -1
  466. package/utilities/common/errorHandling.d.ts.map +1 -1
  467. package/utilities/common/errorHandling.js.map +1 -1
  468. package/utilities/common/incrementalResult.d.ts +2 -1
  469. package/utilities/common/incrementalResult.d.ts.map +1 -1
  470. package/utilities/common/incrementalResult.js +4 -0
  471. package/utilities/common/incrementalResult.js.map +1 -1
  472. package/utilities/common/mergeOptions.d.ts +1 -1
  473. package/utilities/common/mergeOptions.d.ts.map +1 -1
  474. package/utilities/common/mergeOptions.js +1 -1
  475. package/utilities/common/mergeOptions.js.map +1 -1
  476. package/utilities/common/objects.d.ts +1 -0
  477. package/utilities/common/objects.d.ts.map +1 -1
  478. package/utilities/common/objects.js +6 -0
  479. package/utilities/common/objects.js.map +1 -1
  480. package/utilities/common/omitDeep.d.ts +3 -0
  481. package/utilities/common/omitDeep.d.ts.map +1 -0
  482. package/utilities/common/omitDeep.js +41 -0
  483. package/utilities/common/omitDeep.js.map +1 -0
  484. package/utilities/common/responseIterator.d.ts +2 -2
  485. package/utilities/common/responseIterator.d.ts.map +1 -1
  486. package/utilities/common/responseIterator.js.map +1 -1
  487. package/utilities/common/stringifyForDisplay.d.ts +1 -1
  488. package/utilities/common/stringifyForDisplay.d.ts.map +1 -1
  489. package/utilities/common/stringifyForDisplay.js +3 -2
  490. package/utilities/common/stringifyForDisplay.js.map +1 -1
  491. package/utilities/common/stripTypename.d.ts +2 -0
  492. package/utilities/common/stripTypename.d.ts.map +1 -0
  493. package/utilities/common/stripTypename.js +5 -0
  494. package/utilities/common/stripTypename.js.map +1 -0
  495. package/utilities/globals/global.d.ts +6 -3
  496. package/utilities/globals/global.d.ts.map +1 -1
  497. package/utilities/globals/global.js.map +1 -1
  498. package/utilities/globals/globals.cjs +67 -1
  499. package/utilities/globals/globals.cjs.map +1 -1
  500. package/utilities/globals/globals.cjs.native.js +67 -1
  501. package/utilities/globals/index.d.ts +2 -2
  502. package/utilities/globals/index.d.ts.map +1 -1
  503. package/utilities/globals/index.js +2 -2
  504. package/utilities/globals/index.js.map +1 -1
  505. package/utilities/globals/invariantWrappers.d.ts +24 -0
  506. package/utilities/globals/invariantWrappers.d.ts.map +1 -0
  507. package/utilities/globals/invariantWrappers.js +53 -0
  508. package/utilities/globals/invariantWrappers.js.map +1 -0
  509. package/utilities/graphql/DocumentTransform.d.ts +24 -0
  510. package/utilities/graphql/DocumentTransform.d.ts.map +1 -0
  511. package/utilities/graphql/DocumentTransform.js +69 -0
  512. package/utilities/graphql/DocumentTransform.js.map +1 -0
  513. package/utilities/graphql/directives.d.ts +1 -1
  514. package/utilities/graphql/directives.d.ts.map +1 -1
  515. package/utilities/graphql/directives.js +6 -7
  516. package/utilities/graphql/directives.js.map +1 -1
  517. package/utilities/graphql/fragments.d.ts +1 -1
  518. package/utilities/graphql/fragments.d.ts.map +1 -1
  519. package/utilities/graphql/fragments.js +8 -5
  520. package/utilities/graphql/fragments.js.map +1 -1
  521. package/utilities/graphql/getFromAST.d.ts +1 -1
  522. package/utilities/graphql/getFromAST.d.ts.map +1 -1
  523. package/utilities/graphql/getFromAST.js +9 -9
  524. package/utilities/graphql/getFromAST.js.map +1 -1
  525. package/utilities/graphql/operations.d.ts +5 -0
  526. package/utilities/graphql/operations.d.ts.map +1 -0
  527. package/utilities/graphql/operations.js +16 -0
  528. package/utilities/graphql/operations.js.map +1 -0
  529. package/utilities/graphql/storeUtils.d.ts +2 -2
  530. package/utilities/graphql/storeUtils.d.ts.map +1 -1
  531. package/utilities/graphql/storeUtils.js +16 -7
  532. package/utilities/graphql/storeUtils.js.map +1 -1
  533. package/utilities/graphql/transform.d.ts +1 -1
  534. package/utilities/graphql/transform.d.ts.map +1 -1
  535. package/utilities/graphql/transform.js +30 -21
  536. package/utilities/graphql/transform.js.map +1 -1
  537. package/utilities/index.d.ts +7 -0
  538. package/utilities/index.d.ts.map +1 -1
  539. package/utilities/index.js +5 -0
  540. package/utilities/index.js.map +1 -1
  541. package/utilities/observables/Concast.d.ts +2 -1
  542. package/utilities/observables/Concast.d.ts.map +1 -1
  543. package/utilities/observables/Concast.js.map +1 -1
  544. package/utilities/observables/Observable.d.ts +2 -1
  545. package/utilities/observables/Observable.d.ts.map +1 -1
  546. package/utilities/observables/Observable.js +1 -1
  547. package/utilities/observables/Observable.js.map +1 -1
  548. package/utilities/observables/asyncMap.d.ts.map +1 -1
  549. package/utilities/observables/asyncMap.js.map +1 -1
  550. package/utilities/observables/iteration.d.ts +1 -1
  551. package/utilities/observables/iteration.d.ts.map +1 -1
  552. package/utilities/observables/iteration.js.map +1 -1
  553. package/utilities/policies/pagination.d.ts +1 -1
  554. package/utilities/policies/pagination.d.ts.map +1 -1
  555. package/utilities/policies/pagination.js.map +1 -1
  556. package/utilities/promises/decoration.d.ts +17 -0
  557. package/utilities/promises/decoration.d.ts.map +1 -0
  558. package/utilities/promises/decoration.js +37 -0
  559. package/utilities/promises/decoration.js.map +1 -0
  560. package/utilities/types/DeepOmit.d.ts +10 -0
  561. package/utilities/types/DeepOmit.d.ts.map +1 -0
  562. package/utilities/types/DeepOmit.js +2 -0
  563. package/utilities/types/DeepOmit.js.map +1 -0
  564. package/utilities/types/DeepPartial.d.ts +12 -0
  565. package/utilities/types/DeepPartial.d.ts.map +1 -0
  566. package/utilities/types/DeepPartial.js +2 -0
  567. package/utilities/types/DeepPartial.js.map +1 -0
  568. package/utilities/types/Primitive.d.ts +2 -0
  569. package/utilities/types/Primitive.d.ts.map +1 -0
  570. package/utilities/types/Primitive.js +2 -0
  571. package/utilities/types/Primitive.js.map +1 -0
  572. package/utilities/utilities.cjs +261 -59
  573. package/utilities/utilities.cjs.map +1 -1
  574. package/utilities/utilities.cjs.native.js +261 -59
  575. package/version.js +1 -1
  576. package/cache/inmemory/__mocks__/optimism.d.ts +0 -2
  577. package/cache/inmemory/__mocks__/optimism.d.ts.map +0 -1
  578. package/cache/inmemory/__mocks__/optimism.js +0 -14
  579. package/cache/inmemory/__mocks__/optimism.js.map +0 -1
  580. package/react/hooks/compareResults.d.ts +0 -3
  581. package/react/hooks/compareResults.d.ts.map +0 -1
  582. package/react/hooks/compareResults.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"core.cjs","sources":["ApolloLink.js","empty.js","from.js","split.js","concat.js","execute.js"],"sourcesContent":["import { __extends } from \"tslib\";\nimport { InvariantError, invariant, __DEV__ } from '../../utilities/globals';\nimport { Observable } from '../../utilities';\nimport { validateOperation, createOperation, transformOperation, } from '../utils';\nfunction passthrough(op, forward) {\n return (forward ? forward(op) : Observable.of());\n}\nfunction toLink(handler) {\n return typeof handler === 'function' ? new ApolloLink(handler) : handler;\n}\nfunction isTerminating(link) {\n return link.request.length <= 1;\n}\nvar LinkError = (function (_super) {\n __extends(LinkError, _super);\n function LinkError(message, link) {\n var _this = _super.call(this, message) || this;\n _this.link = link;\n return _this;\n }\n return LinkError;\n}(Error));\nvar ApolloLink = (function () {\n function ApolloLink(request) {\n if (request)\n this.request = request;\n }\n ApolloLink.empty = function () {\n return new ApolloLink(function () { return Observable.of(); });\n };\n ApolloLink.from = function (links) {\n if (links.length === 0)\n return ApolloLink.empty();\n return links.map(toLink).reduce(function (x, y) { return x.concat(y); });\n };\n ApolloLink.split = function (test, left, right) {\n var leftLink = toLink(left);\n var rightLink = toLink(right || new ApolloLink(passthrough));\n if (isTerminating(leftLink) && isTerminating(rightLink)) {\n return new ApolloLink(function (operation) {\n return test(operation)\n ? leftLink.request(operation) || Observable.of()\n : rightLink.request(operation) || Observable.of();\n });\n }\n else {\n return new ApolloLink(function (operation, forward) {\n return test(operation)\n ? leftLink.request(operation, forward) || Observable.of()\n : rightLink.request(operation, forward) || Observable.of();\n });\n }\n };\n ApolloLink.execute = function (link, operation) {\n return (link.request(createOperation(operation.context, transformOperation(validateOperation(operation)))) || Observable.of());\n };\n ApolloLink.concat = function (first, second) {\n var firstLink = toLink(first);\n if (isTerminating(firstLink)) {\n __DEV__ && invariant.warn(new LinkError(\"You are calling concat on a terminating link, which will have no effect\", firstLink));\n return firstLink;\n }\n var nextLink = toLink(second);\n if (isTerminating(nextLink)) {\n return new ApolloLink(function (operation) {\n return firstLink.request(operation, function (op) { return nextLink.request(op) || Observable.of(); }) || Observable.of();\n });\n }\n else {\n return new ApolloLink(function (operation, forward) {\n return (firstLink.request(operation, function (op) {\n return nextLink.request(op, forward) || Observable.of();\n }) || Observable.of());\n });\n }\n };\n ApolloLink.prototype.split = function (test, left, right) {\n return this.concat(ApolloLink.split(test, left, right || new ApolloLink(passthrough)));\n };\n ApolloLink.prototype.concat = function (next) {\n return ApolloLink.concat(this, next);\n };\n ApolloLink.prototype.request = function (operation, forward) {\n throw __DEV__ ? new InvariantError('request is not implemented') : new InvariantError(22);\n };\n ApolloLink.prototype.onError = function (error, observer) {\n if (observer && observer.error) {\n observer.error(error);\n return false;\n }\n throw error;\n };\n ApolloLink.prototype.setOnError = function (fn) {\n this.onError = fn;\n return this;\n };\n return ApolloLink;\n}());\nexport { ApolloLink };\n//# sourceMappingURL=ApolloLink.js.map","import { ApolloLink } from './ApolloLink';\nexport var empty = ApolloLink.empty;\n//# sourceMappingURL=empty.js.map","import { ApolloLink } from './ApolloLink';\nexport var from = ApolloLink.from;\n//# sourceMappingURL=from.js.map","import { ApolloLink } from './ApolloLink';\nexport var split = ApolloLink.split;\n//# sourceMappingURL=split.js.map","import { ApolloLink } from './ApolloLink';\nexport var concat = ApolloLink.concat;\n//# sourceMappingURL=concat.js.map","import { ApolloLink } from './ApolloLink';\nexport var execute = ApolloLink.execute;\n//# sourceMappingURL=execute.js.map"],"names":["Observable","__extends","createOperation","transformOperation","validateOperation","__DEV__","invariant","InvariantError"],"mappings":"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"}
1
+ {"version":3,"file":"core.cjs","sources":["ApolloLink.js","empty.js","from.js","split.js","concat.js","execute.js"],"sourcesContent":["import { newInvariantError, invariant, __DEV__ } from '../../utilities/globals';\nimport { Observable } from '../../utilities';\nimport { validateOperation, createOperation, transformOperation, } from '../utils';\nfunction passthrough(op, forward) {\n return (forward ? forward(op) : Observable.of());\n}\nfunction toLink(handler) {\n return typeof handler === 'function' ? new ApolloLink(handler) : handler;\n}\nfunction isTerminating(link) {\n return link.request.length <= 1;\n}\nvar ApolloLink = (function () {\n function ApolloLink(request) {\n if (request)\n this.request = request;\n }\n ApolloLink.empty = function () {\n return new ApolloLink(function () { return Observable.of(); });\n };\n ApolloLink.from = function (links) {\n if (links.length === 0)\n return ApolloLink.empty();\n return links.map(toLink).reduce(function (x, y) { return x.concat(y); });\n };\n ApolloLink.split = function (test, left, right) {\n var leftLink = toLink(left);\n var rightLink = toLink(right || new ApolloLink(passthrough));\n if (isTerminating(leftLink) && isTerminating(rightLink)) {\n return new ApolloLink(function (operation) {\n return test(operation)\n ? leftLink.request(operation) || Observable.of()\n : rightLink.request(operation) || Observable.of();\n });\n }\n else {\n return new ApolloLink(function (operation, forward) {\n return test(operation)\n ? leftLink.request(operation, forward) || Observable.of()\n : rightLink.request(operation, forward) || Observable.of();\n });\n }\n };\n ApolloLink.execute = function (link, operation) {\n return (link.request(createOperation(operation.context, transformOperation(validateOperation(operation)))) || Observable.of());\n };\n ApolloLink.concat = function (first, second) {\n var firstLink = toLink(first);\n if (isTerminating(firstLink)) {\n __DEV__ && invariant.warn(34, firstLink);\n return firstLink;\n }\n var nextLink = toLink(second);\n if (isTerminating(nextLink)) {\n return new ApolloLink(function (operation) {\n return firstLink.request(operation, function (op) { return nextLink.request(op) || Observable.of(); }) || Observable.of();\n });\n }\n else {\n return new ApolloLink(function (operation, forward) {\n return (firstLink.request(operation, function (op) {\n return nextLink.request(op, forward) || Observable.of();\n }) || Observable.of());\n });\n }\n };\n ApolloLink.prototype.split = function (test, left, right) {\n return this.concat(ApolloLink.split(test, left, right || new ApolloLink(passthrough)));\n };\n ApolloLink.prototype.concat = function (next) {\n return ApolloLink.concat(this, next);\n };\n ApolloLink.prototype.request = function (operation, forward) {\n throw newInvariantError(35);\n };\n ApolloLink.prototype.onError = function (error, observer) {\n if (observer && observer.error) {\n observer.error(error);\n return false;\n }\n throw error;\n };\n ApolloLink.prototype.setOnError = function (fn) {\n this.onError = fn;\n return this;\n };\n return ApolloLink;\n}());\nexport { ApolloLink };\n//# sourceMappingURL=ApolloLink.js.map","import { ApolloLink } from './ApolloLink';\nexport var empty = ApolloLink.empty;\n//# sourceMappingURL=empty.js.map","import { ApolloLink } from './ApolloLink';\nexport var from = ApolloLink.from;\n//# sourceMappingURL=from.js.map","import { ApolloLink } from './ApolloLink';\nexport var split = ApolloLink.split;\n//# sourceMappingURL=split.js.map","import { ApolloLink } from './ApolloLink';\nexport var concat = ApolloLink.concat;\n//# sourceMappingURL=concat.js.map","import { ApolloLink } from './ApolloLink';\nexport var execute = ApolloLink.execute;\n//# sourceMappingURL=execute.js.map"],"names":["Observable","createOperation","transformOperation","validateOperation","__DEV__","invariant","newInvariantError"],"mappings":"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"}
@@ -3,7 +3,6 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var globals = require('../../utilities/globals');
6
- var tslib = require('tslib');
7
6
  var utilities = require('../../utilities');
8
7
  var utils = require('../utils');
9
8
 
@@ -16,15 +15,6 @@ function toLink(handler) {
16
15
  function isTerminating(link) {
17
16
  return link.request.length <= 1;
18
17
  }
19
- var LinkError = (function (_super) {
20
- tslib.__extends(LinkError, _super);
21
- function LinkError(message, link) {
22
- var _this = _super.call(this, message) || this;
23
- _this.link = link;
24
- return _this;
25
- }
26
- return LinkError;
27
- }(Error));
28
18
  var ApolloLink = (function () {
29
19
  function ApolloLink(request) {
30
20
  if (request)
@@ -62,7 +52,7 @@ var ApolloLink = (function () {
62
52
  ApolloLink.concat = function (first, second) {
63
53
  var firstLink = toLink(first);
64
54
  if (isTerminating(firstLink)) {
65
- globals.__DEV__ && globals.invariant.warn(new LinkError("You are calling concat on a terminating link, which will have no effect", firstLink));
55
+ globals.__DEV__ && globals.invariant.warn(34, firstLink);
66
56
  return firstLink;
67
57
  }
68
58
  var nextLink = toLink(second);
@@ -86,7 +76,7 @@ var ApolloLink = (function () {
86
76
  return ApolloLink.concat(this, next);
87
77
  };
88
78
  ApolloLink.prototype.request = function (operation, forward) {
89
- throw globals.__DEV__ ? new globals.InvariantError('request is not implemented') : new globals.InvariantError(22);
79
+ throw globals.newInvariantError(35);
90
80
  };
91
81
  ApolloLink.prototype.onError = function (error, observer) {
92
82
  if (observer && observer.error) {
@@ -1,7 +1,8 @@
1
- import { DocumentNode, ExecutionResult, GraphQLError } from "graphql";
2
- import { DefaultContext } from "../../core";
1
+ import type { ExecutionResult, GraphQLError } from "graphql";
2
+ import { DocumentNode } from "graphql";
3
+ import type { DefaultContext } from "../../core";
3
4
  export { DocumentNode };
4
- import { Observable } from "../../utilities";
5
+ import type { Observable } from "../../utilities";
5
6
  export type Path = ReadonlyArray<string | number>;
6
7
  interface ExecutionPatchResultBase {
7
8
  hasNext?: boolean;
@@ -25,6 +26,10 @@ export interface ExecutionPatchIncrementalResult<TData = Record<string, any>, TE
25
26
  errors?: never;
26
27
  extensions?: never;
27
28
  }
29
+ export interface ApolloPayloadResult<TData = Record<string, any>, TExtensions = Record<string, any>> {
30
+ payload: SingleExecutionResult | ExecutionPatchResult | null;
31
+ errors?: ReadonlyArray<Error | string>;
32
+ }
28
33
  export type ExecutionPatchResult<TData = Record<string, any>, TExtensions = Record<string, any>> = ExecutionPatchInitialResult<TData, TExtensions> | ExecutionPatchIncrementalResult<TData, TExtensions>;
29
34
  export interface GraphQLRequest<TVariables = Record<string, any>> {
30
35
  query: DocumentNode;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/link/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,MAAM,IAAI,GAAG,aAAa,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AAElD,UAAU,wBAAwB;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,2BAA2B,CAC1C,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACjC,SAAQ,wBAAwB;IAEhC,IAAI,EAAE,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,KAAK,CAAC;IACpB,MAAM,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,WAAW,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB,CACjC,KAAK,EACL,WAAW;IAIX,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACrC,UAAU,CAAC,EAAE,WAAW,CAAC;CAC1B;AAED,MAAM,WAAW,+BAA+B,CAC9C,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACjC,SAAQ,wBAAwB;IAGhC,WAAW,CAAC,EAAE,kBAAkB,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,CAAC;IACvD,IAAI,CAAC,EAAE,KAAK,CAAC;IAGb,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,UAAU,CAAC,EAAE,KAAK,CAAC;CACpB;AAED,MAAM,MAAM,oBAAoB,CAC9B,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAE/B,2BAA2B,CAAC,KAAK,EAAE,WAAW,CAAC,GAC/C,+BAA+B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;AAExD,MAAM,WAAW,cAAc,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAC9D,KAAK,EAAE,YAAY,CAAC;IACpB,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,YAAY,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,UAAU,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,cAAc,CAAC;IACxD,UAAU,EAAE,MAAM,cAAc,CAAC;CAClC;AAED,MAAM,WAAW,qBAAqB,CACpC,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,QAAQ,GAAG,cAAc,EACzB,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACjC,SAAQ,eAAe,CAAC,KAAK,EAAE,WAAW,CAAC;IAC3C,IAAI,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,OAAO,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED,MAAM,MAAM,WAAW,CACrB,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC3B,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC9B,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAE/B,qBAAqB,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,GACnD,oBAAoB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;AAE7C,MAAM,MAAM,QAAQ,GAAG,CAAC,SAAS,EAAE,SAAS,KAAK,UAAU,CAAC,WAAW,CAAC,CAAC;AAEzE,MAAM,MAAM,cAAc,GAAG,CAC3B,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,QAAQ,KACd,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/link/core/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/link/core/types.ts"],"names":[],"mappings":"","sourcesContent":["import { DocumentNode, ExecutionResult, GraphQLError } from \"graphql\";\nimport { DefaultContext } from \"../../core\";\nexport { DocumentNode };\n\nimport { Observable } from \"../../utilities\";\n\nexport type Path = ReadonlyArray<string | number>;\n\ninterface ExecutionPatchResultBase {\n hasNext?: boolean;\n}\n\nexport interface ExecutionPatchInitialResult<\n TData = Record<string, any>,\n TExtensions = Record<string, any>\n> extends ExecutionPatchResultBase {\n // if data is present, incremental is not\n data: TData | null | undefined;\n incremental?: never;\n errors?: ReadonlyArray<GraphQLError>;\n extensions?: TExtensions;\n}\n\nexport interface IncrementalPayload<\n TData,\n TExtensions,\n> {\n // data and path must both be present\n // https://github.com/graphql/graphql-spec/pull/742/files#diff-98d0cd153b72b63c417ad4238e8cc0d3385691ccbde7f7674bc0d2a718b896ecR288-R293\n data: TData | null;\n label?: string;\n path: Path;\n errors?: ReadonlyArray<GraphQLError>;\n extensions?: TExtensions;\n}\n\nexport interface ExecutionPatchIncrementalResult<\n TData = Record<string, any>,\n TExtensions = Record<string, any>\n> extends ExecutionPatchResultBase {\n // the reverse is also true: if incremental is present,\n // data (and errors and extensions) are not\n incremental?: IncrementalPayload<TData, TExtensions>[];\n data?: never;\n // Errors only exist for chunks, not at the top level\n // https://github.com/robrichard/defer-stream-wg/discussions/50#discussioncomment-3466739\n errors?: never;\n extensions?: never;\n}\n\nexport type ExecutionPatchResult<\n TData = Record<string, any>,\n TExtensions = Record<string, any>\n> =\n | ExecutionPatchInitialResult<TData, TExtensions>\n | ExecutionPatchIncrementalResult<TData, TExtensions>;\n\nexport interface GraphQLRequest<TVariables = Record<string, any>> {\n query: DocumentNode;\n variables?: TVariables;\n operationName?: string;\n context?: DefaultContext;\n extensions?: Record<string, any>;\n}\n\nexport interface Operation {\n query: DocumentNode;\n variables: Record<string, any>;\n operationName: string;\n extensions: Record<string, any>;\n setContext: (context: DefaultContext) => DefaultContext;\n getContext: () => DefaultContext;\n}\n\nexport interface SingleExecutionResult<\n TData = Record<string, any>,\n TContext = DefaultContext,\n TExtensions = Record<string, any>\n> extends ExecutionResult<TData, TExtensions> {\n data?: TData | null;\n context?: TContext;\n}\n\nexport type FetchResult<\n TData = Record<string, any>,\n TContext = Record<string, any>,\n TExtensions = Record<string, any>\n> =\n | SingleExecutionResult<TData, TContext, TExtensions>\n | ExecutionPatchResult<TData, TExtensions>;\n\nexport type NextLink = (operation: Operation) => Observable<FetchResult>;\n\nexport type RequestHandler = (\n operation: Operation,\n forward: NextLink\n) => Observable<FetchResult> | null;\n"]}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/link/core/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { ExecutionResult, GraphQLError } from \"graphql\";\nimport { DocumentNode } from \"graphql\";\nimport type { DefaultContext } from \"../../core\";\nexport { DocumentNode };\n\nimport type { Observable } from \"../../utilities\";\n\nexport type Path = ReadonlyArray<string | number>;\n\ninterface ExecutionPatchResultBase {\n hasNext?: boolean;\n}\n\nexport interface ExecutionPatchInitialResult<\n TData = Record<string, any>,\n TExtensions = Record<string, any>\n> extends ExecutionPatchResultBase {\n // if data is present, incremental is not\n data: TData | null | undefined;\n incremental?: never;\n errors?: ReadonlyArray<GraphQLError>;\n extensions?: TExtensions;\n}\n\nexport interface IncrementalPayload<TData, TExtensions> {\n // data and path must both be present\n // https://github.com/graphql/graphql-spec/pull/742/files#diff-98d0cd153b72b63c417ad4238e8cc0d3385691ccbde7f7674bc0d2a718b896ecR288-R293\n data: TData | null;\n label?: string;\n path: Path;\n errors?: ReadonlyArray<GraphQLError>;\n extensions?: TExtensions;\n}\n\nexport interface ExecutionPatchIncrementalResult<\n TData = Record<string, any>,\n TExtensions = Record<string, any>\n> extends ExecutionPatchResultBase {\n // the reverse is also true: if incremental is present,\n // data (and errors and extensions) are not\n incremental?: IncrementalPayload<TData, TExtensions>[];\n data?: never;\n // Errors only exist for chunks, not at the top level\n // https://github.com/robrichard/defer-stream-wg/discussions/50#discussioncomment-3466739\n errors?: never;\n extensions?: never;\n}\n\nexport interface ApolloPayloadResult<\n TData = Record<string, any>,\n TExtensions = Record<string, any>\n> {\n payload: SingleExecutionResult | ExecutionPatchResult | null;\n // Transport layer errors (as distinct from GraphQL or NetworkErrors),\n // these are fatal errors that will include done: true.\n errors?: ReadonlyArray<Error | string>;\n}\n\nexport type ExecutionPatchResult<\n TData = Record<string, any>,\n TExtensions = Record<string, any>\n> =\n | ExecutionPatchInitialResult<TData, TExtensions>\n | ExecutionPatchIncrementalResult<TData, TExtensions>;\n\nexport interface GraphQLRequest<TVariables = Record<string, any>> {\n query: DocumentNode;\n variables?: TVariables;\n operationName?: string;\n context?: DefaultContext;\n extensions?: Record<string, any>;\n}\n\nexport interface Operation {\n query: DocumentNode;\n variables: Record<string, any>;\n operationName: string;\n extensions: Record<string, any>;\n setContext: (context: DefaultContext) => DefaultContext;\n getContext: () => DefaultContext;\n}\n\nexport interface SingleExecutionResult<\n TData = Record<string, any>,\n TContext = DefaultContext,\n TExtensions = Record<string, any>\n> extends ExecutionResult<TData, TExtensions> {\n data?: TData | null;\n context?: TContext;\n}\n\nexport type FetchResult<\n TData = Record<string, any>,\n TContext = Record<string, any>,\n TExtensions = Record<string, any>\n> =\n | SingleExecutionResult<TData, TContext, TExtensions>\n | ExecutionPatchResult<TData, TExtensions>;\n\nexport type NextLink = (operation: Operation) => Observable<FetchResult>;\n\nexport type RequestHandler = (\n operation: Operation,\n forward: NextLink\n) => Observable<FetchResult> | null;\n"]}
@@ -1,7 +1,8 @@
1
- import { ExecutionResult } from 'graphql';
2
- import { NetworkError, GraphQLErrors } from '../../errors';
1
+ import type { ExecutionResult } from 'graphql';
2
+ import type { NetworkError, GraphQLErrors } from '../../errors';
3
3
  import { Observable } from '../../utilities';
4
- import { ApolloLink, Operation, FetchResult, NextLink } from '../core';
4
+ import type { Operation, FetchResult, NextLink } from '../core';
5
+ import { ApolloLink } from '../core';
5
6
  export interface ErrorResponse {
6
7
  graphQLErrors?: GraphQLErrors;
7
8
  networkError?: NetworkError;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/link/error/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEvE,MAAM,WAAW,aAAa;IAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,QAAQ,CAAC;CACnB;AAED,yBAAiB,SAAS,CAAC;IAIzB,UAAiB,YAAY;QAC3B,CAAC,KAAK,EAAE,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;KACxD;CACF;AAGD,MAAM,QAAQ,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;AAEpD,wBAAgB,OAAO,CAAC,YAAY,EAAE,YAAY,GAAG,UAAU,CAqE9D;AAED,qBAAa,SAAU,SAAQ,UAAU;IACvC,OAAO,CAAC,IAAI,CAAa;gBACb,YAAY,EAAE,SAAS,CAAC,YAAY;IAKzC,OAAO,CACZ,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,QAAQ,GAChB,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI;CAGlC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/link/error/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,MAAM,WAAW,aAAa;IAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,QAAQ,CAAC;CACnB;AAED,yBAAiB,SAAS,CAAC;IAIzB,UAAiB,YAAY;QAC3B,CAAC,KAAK,EAAE,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;KACxD;CACF;AAGD,MAAM,QAAQ,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;AAEpD,wBAAgB,OAAO,CAAC,YAAY,EAAE,YAAY,GAAG,UAAU,CAqE9D;AAED,qBAAa,SAAU,SAAQ,UAAU;IACvC,OAAO,CAAC,IAAI,CAAa;gBACb,YAAY,EAAE,SAAS,CAAC,YAAY;IAKzC,OAAO,CACZ,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,QAAQ,GAChB,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI;CAGlC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/link/error/index.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAoC,MAAM,SAAS,CAAC;AAsBvE,MAAM,UAAU,OAAO,CAAC,YAA0B;IAChD,OAAO,IAAI,UAAU,CAAC,UAAC,SAAS,EAAE,OAAO;QACvC,OAAO,IAAI,UAAU,CAAC,UAAA,QAAQ;YAC5B,IAAI,GAAQ,CAAC;YACb,IAAI,UAAe,CAAC;YACpB,IAAI,aAAkB,CAAC;YAEvB,IAAI;gBACF,GAAG,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC;oBACjC,IAAI,EAAE,UAAA,MAAM;wBACV,IAAI,MAAM,CAAC,MAAM,EAAE;4BACjB,aAAa,GAAG,YAAY,CAAC;gCAC3B,aAAa,EAAE,MAAM,CAAC,MAAM;gCAC5B,QAAQ,EAAE,MAAM;gCAChB,SAAS,WAAA;gCACT,OAAO,SAAA;6BACR,CAAC,CAAC;4BAEH,IAAI,aAAa,EAAE;gCACjB,UAAU,GAAG,aAAa,CAAC,SAAS,CAAC;oCACnC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;oCAClC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;oCACpC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;iCAC3C,CAAC,CAAC;gCACH,OAAO;6BACR;yBACF;wBACD,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACxB,CAAC;oBACD,KAAK,EAAE,UAAA,YAAY;wBACjB,aAAa,GAAG,YAAY,CAAC;4BAC3B,SAAS,WAAA;4BACT,YAAY,cAAA;4BAEZ,aAAa,EACX,YAAY;gCACZ,YAAY,CAAC,MAAM;gCACnB,YAAY,CAAC,MAAM,CAAC,MAAM;4BAC5B,OAAO,SAAA;yBACR,CAAC,CAAC;wBACH,IAAI,aAAa,EAAE;4BACjB,UAAU,GAAG,aAAa,CAAC,SAAS,CAAC;gCACnC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;gCAClC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;gCACpC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;6BAC3C,CAAC,CAAC;4BACH,OAAO;yBACR;wBACD,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBAC/B,CAAC;oBACD,QAAQ,EAAE;wBAGR,IAAI,CAAC,aAAa,EAAE;4BAClB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;yBACpC;oBACH,CAAC;iBACF,CAAC,CAAC;aACJ;YAAC,OAAO,CAAC,EAAE;gBACV,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,SAAS,WAAA,EAAE,OAAO,SAAA,EAAE,CAAC,CAAC;gBACtD,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACnB;YAED,OAAO;gBACL,IAAI,GAAG;oBAAE,GAAG,CAAC,WAAW,EAAE,CAAC;gBAC3B,IAAI,UAAU;oBAAE,GAAG,CAAC,WAAW,EAAE,CAAC;YACpC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;IAA+B,6BAAU;IAEvC,mBAAY,YAAoC;QAAhD,YACE,iBAAO,SAER;QADC,KAAI,CAAC,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;;IACpC,CAAC;IAEM,2BAAO,GAAd,UACE,SAAoB,EACpB,OAAiB;QAEjB,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IACH,gBAAC;AAAD,CAAC,AAbD,CAA+B,UAAU,GAaxC","sourcesContent":["import { ExecutionResult } from 'graphql';\n\nimport { NetworkError, GraphQLErrors } from '../../errors';\nimport { Observable } from '../../utilities';\nimport { ApolloLink, Operation, FetchResult, NextLink } from '../core';\n\nexport interface ErrorResponse {\n graphQLErrors?: GraphQLErrors;\n networkError?: NetworkError;\n response?: ExecutionResult;\n operation: Operation;\n forward: NextLink;\n}\n\nexport namespace ErrorLink {\n /**\n * Callback to be triggered when an error occurs within the link stack.\n */\n export interface ErrorHandler {\n (error: ErrorResponse): Observable<FetchResult> | void;\n }\n}\n\n// For backwards compatibility.\nexport import ErrorHandler = ErrorLink.ErrorHandler;\n\nexport function onError(errorHandler: ErrorHandler): ApolloLink {\n return new ApolloLink((operation, forward) => {\n return new Observable(observer => {\n let sub: any;\n let retriedSub: any;\n let retriedResult: any;\n\n try {\n sub = forward(operation).subscribe({\n next: result => {\n if (result.errors) {\n retriedResult = errorHandler({\n graphQLErrors: result.errors,\n response: result,\n operation,\n forward,\n });\n\n if (retriedResult) {\n retriedSub = retriedResult.subscribe({\n next: observer.next.bind(observer),\n error: observer.error.bind(observer),\n complete: observer.complete.bind(observer),\n });\n return;\n }\n }\n observer.next(result);\n },\n error: networkError => {\n retriedResult = errorHandler({\n operation,\n networkError,\n //Network errors can return GraphQL errors on for example a 403\n graphQLErrors:\n networkError &&\n networkError.result &&\n networkError.result.errors,\n forward,\n });\n if (retriedResult) {\n retriedSub = retriedResult.subscribe({\n next: observer.next.bind(observer),\n error: observer.error.bind(observer),\n complete: observer.complete.bind(observer),\n });\n return;\n }\n observer.error(networkError);\n },\n complete: () => {\n // disable the previous sub from calling complete on observable\n // if retry is in flight.\n if (!retriedResult) {\n observer.complete.bind(observer)();\n }\n },\n });\n } catch (e) {\n errorHandler({ networkError: e, operation, forward });\n observer.error(e);\n }\n\n return () => {\n if (sub) sub.unsubscribe();\n if (retriedSub) sub.unsubscribe();\n };\n });\n });\n}\n\nexport class ErrorLink extends ApolloLink {\n private link: ApolloLink;\n constructor(errorHandler: ErrorLink.ErrorHandler) {\n super();\n this.link = onError(errorHandler);\n }\n\n public request(\n operation: Operation,\n forward: NextLink,\n ): Observable<FetchResult> | null {\n return this.link.request(operation, forward);\n }\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/link/error/index.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ExecutionResult } from 'graphql';\n\nimport type { NetworkError, GraphQLErrors } from '../../errors';\nimport { Observable } from '../../utilities';\nimport type { Operation, FetchResult, NextLink } from '../core';\nimport { ApolloLink } from '../core';\n\nexport interface ErrorResponse {\n graphQLErrors?: GraphQLErrors;\n networkError?: NetworkError;\n response?: ExecutionResult;\n operation: Operation;\n forward: NextLink;\n}\n\nexport namespace ErrorLink {\n /**\n * Callback to be triggered when an error occurs within the link stack.\n */\n export interface ErrorHandler {\n (error: ErrorResponse): Observable<FetchResult> | void;\n }\n}\n\n// For backwards compatibility.\nexport import ErrorHandler = ErrorLink.ErrorHandler;\n\nexport function onError(errorHandler: ErrorHandler): ApolloLink {\n return new ApolloLink((operation, forward) => {\n return new Observable(observer => {\n let sub: any;\n let retriedSub: any;\n let retriedResult: any;\n\n try {\n sub = forward(operation).subscribe({\n next: result => {\n if (result.errors) {\n retriedResult = errorHandler({\n graphQLErrors: result.errors,\n response: result,\n operation,\n forward,\n });\n\n if (retriedResult) {\n retriedSub = retriedResult.subscribe({\n next: observer.next.bind(observer),\n error: observer.error.bind(observer),\n complete: observer.complete.bind(observer),\n });\n return;\n }\n }\n observer.next(result);\n },\n error: networkError => {\n retriedResult = errorHandler({\n operation,\n networkError,\n //Network errors can return GraphQL errors on for example a 403\n graphQLErrors:\n networkError &&\n networkError.result &&\n networkError.result.errors,\n forward,\n });\n if (retriedResult) {\n retriedSub = retriedResult.subscribe({\n next: observer.next.bind(observer),\n error: observer.error.bind(observer),\n complete: observer.complete.bind(observer),\n });\n return;\n }\n observer.error(networkError);\n },\n complete: () => {\n // disable the previous sub from calling complete on observable\n // if retry is in flight.\n if (!retriedResult) {\n observer.complete.bind(observer)();\n }\n },\n });\n } catch (e) {\n errorHandler({ networkError: e, operation, forward });\n observer.error(e);\n }\n\n return () => {\n if (sub) sub.unsubscribe();\n if (retriedSub) sub.unsubscribe();\n };\n });\n });\n}\n\nexport class ErrorLink extends ApolloLink {\n private link: ApolloLink;\n constructor(errorHandler: ErrorLink.ErrorHandler) {\n super();\n this.link = onError(errorHandler);\n }\n\n public request(\n operation: Operation,\n forward: NextLink,\n ): Observable<FetchResult> | null {\n return this.link.request(operation, forward);\n }\n}\n"]}
@@ -1,5 +1,6 @@
1
- import { ApolloLink, RequestHandler } from '../core';
2
- import { HttpOptions } from './selectHttpOptionsAndBody';
1
+ import type { RequestHandler } from '../core';
2
+ import { ApolloLink } from '../core';
3
+ import type { HttpOptions } from './selectHttpOptionsAndBody';
3
4
  export declare class HttpLink extends ApolloLink {
4
5
  options: HttpOptions;
5
6
  requester: RequestHandler;
@@ -1 +1 @@
1
- {"version":3,"file":"HttpLink.d.ts","sourceRoot":"","sources":["../../../src/link/http/HttpLink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAGzD,qBAAa,QAAS,SAAQ,UAAU;IAEnB,OAAO,EAAE,WAAW;IADhC,SAAS,EAAE,cAAc,CAAC;gBACd,OAAO,GAAE,WAAgB;CAG7C"}
1
+ {"version":3,"file":"HttpLink.d.ts","sourceRoot":"","sources":["../../../src/link/http/HttpLink.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAG9D,qBAAa,QAAS,SAAQ,UAAU;IAEnB,OAAO,EAAE,WAAW;IADhC,SAAS,EAAE,cAAc,CAAC;gBACd,OAAO,GAAE,WAAgB;CAG7C"}
@@ -1 +1 @@
1
- {"version":3,"file":"HttpLink.js","sourceRoot":"","sources":["../../../src/link/http/HttpLink.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAkB,MAAM,SAAS,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;IAA8B,4BAAU;IAEtC,kBAAmB,OAAyB;QAAzB,wBAAA,EAAA,YAAyB;QAA5C,YACE,kBAAM,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SACvC;QAFkB,aAAO,GAAP,OAAO,CAAkB;;IAE5C,CAAC;IACH,eAAC;AAAD,CAAC,AALD,CAA8B,UAAU,GAKvC","sourcesContent":["import { ApolloLink, RequestHandler } from '../core';\nimport { HttpOptions } from './selectHttpOptionsAndBody';\nimport { createHttpLink } from './createHttpLink';\n\nexport class HttpLink extends ApolloLink {\n public requester: RequestHandler;\n constructor(public options: HttpOptions = {}) {\n super(createHttpLink(options).request);\n }\n}\n"]}
1
+ {"version":3,"file":"HttpLink.js","sourceRoot":"","sources":["../../../src/link/http/HttpLink.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD;IAA8B,4BAAU;IAEtC,kBAAmB,OAAyB;QAAzB,wBAAA,EAAA,YAAyB;QAA5C,YACE,kBAAM,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SACvC;QAFkB,aAAO,GAAP,OAAO,CAAkB;;IAE5C,CAAC;IACH,eAAC;AAAD,CAAC,AALD,CAA8B,UAAU,GAKvC","sourcesContent":["import type { RequestHandler } from '../core';\nimport { ApolloLink } from '../core';\nimport type { HttpOptions } from './selectHttpOptionsAndBody';\nimport { createHttpLink } from './createHttpLink';\n\nexport class HttpLink extends ApolloLink {\n public requester: RequestHandler;\n constructor(public options: HttpOptions = {}) {\n super(createHttpLink(options).request);\n }\n}\n"]}
@@ -1,7 +1,7 @@
1
- import { InvariantError, __DEV__ } from "../../utilities/globals/index.js";
1
+ import { newInvariantError } from "../../utilities/globals/index.js";
2
2
  export var checkFetcher = function (fetcher) {
3
3
  if (!fetcher && typeof fetch === 'undefined') {
4
- throw __DEV__ ? new InvariantError("\n\"fetch\" has not been found globally and no fetcher has been configured. To fix this, install a fetch package (like https://www.npmjs.com/package/cross-fetch), instantiate the fetcher, and pass it into your HttpLink constructor. For example:\n\nimport fetch from 'cross-fetch';\nimport { ApolloClient, HttpLink } from '@apollo/client';\nconst client = new ApolloClient({\n link: new HttpLink({ uri: '/graphql', fetch })\n});\n ") : new InvariantError(23);
4
+ throw newInvariantError(36);
5
5
  }
6
6
  };
7
7
  //# sourceMappingURL=checkFetcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkFetcher.js","sourceRoot":"","sources":["../../../src/link/http/checkFetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,MAAM,CAAC,IAAM,YAAY,GAAG,UAAC,OAAuD;IAClF,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;QAC5C,MAAM,IAAI,cAAc,CAAC,obAWxB,CAAC,CAAC;KACJ;AACH,CAAC,CAAC","sourcesContent":["import { InvariantError } from '../../utilities/globals';\n\nexport const checkFetcher = (fetcher: WindowOrWorkerGlobalScope['fetch'] | undefined) => {\n if (!fetcher && typeof fetch === 'undefined') {\n throw new InvariantError(`\n\"fetch\" has not been found globally and no fetcher has been \\\nconfigured. To fix this, install a fetch package (like \\\nhttps://www.npmjs.com/package/cross-fetch), instantiate the \\\nfetcher, and pass it into your HttpLink constructor. For example:\n\nimport fetch from 'cross-fetch';\nimport { ApolloClient, HttpLink } from '@apollo/client';\nconst client = new ApolloClient({\n link: new HttpLink({ uri: '/graphql', fetch })\n});\n `);\n }\n};\n"]}
1
+ {"version":3,"file":"checkFetcher.js","sourceRoot":"","sources":["../../../src/link/http/checkFetcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,MAAM,CAAC,IAAM,YAAY,GAAG,UAAC,OAAuD;IAClF,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,KAAK,WAAW,EAAE;QAC5C,MAAM,iBAAiB,CAAC,obAWvB,CAAC,CAAC;KACJ;AACH,CAAC,CAAC","sourcesContent":["import { newInvariantError } from '../../utilities/globals';\n\nexport const checkFetcher = (fetcher: WindowOrWorkerGlobalScope['fetch'] | undefined) => {\n if (!fetcher && typeof fetch === 'undefined') {\n throw newInvariantError(`\n\"fetch\" has not been found globally and no fetcher has been \\\nconfigured. To fix this, install a fetch package (like \\\nhttps://www.npmjs.com/package/cross-fetch), instantiate the \\\nfetcher, and pass it into your HttpLink constructor. For example:\n\nimport fetch from 'cross-fetch';\nimport { ApolloClient, HttpLink } from '@apollo/client';\nconst client = new ApolloClient({\n link: new HttpLink({ uri: '/graphql', fetch })\n});\n `);\n }\n};\n"]}
@@ -1,4 +1,4 @@
1
1
  import { ApolloLink } from '../core';
2
- import { HttpOptions } from './selectHttpOptionsAndBody';
2
+ import type { HttpOptions } from './selectHttpOptionsAndBody';
3
3
  export declare const createHttpLink: (linkOptions?: HttpOptions) => ApolloLink;
4
4
  //# sourceMappingURL=createHttpLink.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createHttpLink.d.ts","sourceRoot":"","sources":["../../../src/link/http/createHttpLink.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAUrC,OAAO,EAIL,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAQpC,eAAO,MAAM,cAAc,iBAAiB,WAAW,eA6KtD,CAAC"}
1
+ {"version":3,"file":"createHttpLink.d.ts","sourceRoot":"","sources":["../../../src/link/http/createHttpLink.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAUrC,OAAO,KAAK,EACV,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAiBpC,eAAO,MAAM,cAAc,iBAAiB,WAAW,eA2KtD,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { __assign, __rest } from "tslib";
2
- import { __DEV__ } from "../../utilities/globals/index.js";
3
- import { visit } from 'graphql';
2
+ import { __DEV__, invariant } from "../../utilities/globals/index.js";
4
3
  import { ApolloLink } from "../core/index.js";
5
4
  import { Observable, hasDirectives } from "../../utilities/index.js";
6
5
  import { serializeFetchParameter } from "./serializeFetchParameter.js";
@@ -10,8 +9,8 @@ import { checkFetcher } from "./checkFetcher.js";
10
9
  import { selectHttpOptionsAndBodyInternal, defaultPrinter, fallbackHttpConfig } from "./selectHttpOptionsAndBody.js";
11
10
  import { createSignalIfSupported } from "./createSignalIfSupported.js";
12
11
  import { rewriteURIForGET } from "./rewriteURIForGET.js";
13
- import { fromError } from "../utils/index.js";
14
- import { maybe, removeClientSetsFromDocument } from "../../utilities/index.js";
12
+ import { fromError, filterOperationVariables } from "../utils/index.js";
13
+ import { maybe, getMainDefinition, removeClientSetsFromDocument } from "../../utilities/index.js";
15
14
  var backupFetch = maybe(function () { return fetch; });
16
15
  export var createHttpLink = function (linkOptions) {
17
16
  if (linkOptions === void 0) { linkOptions = {}; }
@@ -54,20 +53,7 @@ export var createHttpLink = function (linkOptions) {
54
53
  }
55
54
  var _b = selectHttpOptionsAndBodyInternal(operation, print, fallbackHttpConfig, linkConfig, contextConfig), options = _b.options, body = _b.body;
56
55
  if (body.variables && !includeUnusedVariables) {
57
- var unusedNames_1 = new Set(Object.keys(body.variables));
58
- visit(operation.query, {
59
- Variable: function (node, _key, parent) {
60
- if (parent && parent.kind !== 'VariableDefinition') {
61
- unusedNames_1.delete(node.name.value);
62
- }
63
- },
64
- });
65
- if (unusedNames_1.size) {
66
- body.variables = __assign({}, body.variables);
67
- unusedNames_1.forEach(function (name) {
68
- delete body.variables[name];
69
- });
70
- }
56
+ body.variables = filterOperationVariables(body.variables, operation);
71
57
  }
72
58
  var controller;
73
59
  if (!options.signal) {
@@ -79,13 +65,28 @@ export var createHttpLink = function (linkOptions) {
79
65
  var definitionIsMutation = function (d) {
80
66
  return d.kind === 'OperationDefinition' && d.operation === 'mutation';
81
67
  };
68
+ var definitionIsSubscription = function (d) {
69
+ return d.kind === 'OperationDefinition' && d.operation === 'subscription';
70
+ };
71
+ var isSubscription = definitionIsSubscription(getMainDefinition(operation.query));
72
+ var hasDefer = hasDirectives(['defer'], operation.query);
82
73
  if (useGETForQueries &&
83
74
  !operation.query.definitions.some(definitionIsMutation)) {
84
75
  options.method = 'GET';
85
76
  }
86
- if (hasDirectives(['defer'], operation.query)) {
77
+ if (hasDefer || isSubscription) {
87
78
  options.headers = options.headers || {};
88
- options.headers.accept = "multipart/mixed; deferSpec=20220824, application/json";
79
+ var acceptHeader = "multipart/mixed;";
80
+ if (isSubscription && hasDefer) {
81
+ __DEV__ && invariant.warn(37);
82
+ }
83
+ if (isSubscription) {
84
+ acceptHeader += 'boundary=graphql;subscriptionSpec=1.0,application/json';
85
+ }
86
+ else if (hasDefer) {
87
+ acceptHeader += 'deferSpec=20220824,application/json';
88
+ }
89
+ options.headers.accept = acceptHeader;
89
90
  }
90
91
  if (options.method === 'GET') {
91
92
  var _d = rewriteURIForGET(chosenURI, body), newURI = _d.newURI, parseError = _d.parseError;
@@ -1 +1 @@
1
- {"version":3,"file":"createHttpLink.js","sourceRoot":"","sources":["../../../src/link/http/createHttpLink.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD,OAAO,EAAE,KAAK,EAA0C,MAAM,SAAS,CAAC;AAExE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,YAAY,EACb,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,gCAAgC,EAChC,cAAc,EACd,kBAAkB,EAEnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAEtE,IAAM,WAAW,GAAG,KAAK,CAAC,cAAM,OAAA,KAAK,EAAL,CAAK,CAAC,CAAC;AAEvC,MAAM,CAAC,IAAM,cAAc,GAAG,UAAC,WAA6B;IAA7B,4BAAA,EAAA,gBAA6B;IAExD,IAAA,KASE,WAAW,IATG,EAAhB,GAAG,mBAAG,UAAU,KAAA,EAET,cAAc,GAOnB,WAAW,MAPQ,EACrB,KAME,WAAW,MANS,EAAtB,KAAK,mBAAG,cAAc,KAAA,EACtB,iBAAiB,GAKf,WAAW,kBALI,EACjB,kBAAkB,GAIhB,WAAW,mBAJK,EAClB,gBAAgB,GAGd,WAAW,iBAHG,EAChB,KAEE,WAAW,uBAFiB,EAA9B,sBAAsB,mBAAG,KAAK,KAAA,EAC3B,cAAc,UACf,WAAW,EAVX,kHAUH,CADkB,CACH;IAEhB,IAAI,OAAO,EAAE;QAGX,YAAY,CAAC,cAAc,IAAI,WAAW,CAAC,CAAC;KAC7C;IAED,IAAM,UAAU,GAAG;QACjB,IAAI,EAAE,EAAE,iBAAiB,mBAAA,EAAE,kBAAkB,oBAAA,EAAE;QAC/C,OAAO,EAAE,cAAc,CAAC,YAAY;QACpC,WAAW,EAAE,cAAc,CAAC,WAAW;QACvC,OAAO,EAAE,cAAc,CAAC,OAAO;KAChC,CAAC;IAEF,OAAO,IAAI,UAAU,CAAC,UAAA,SAAS;QAC7B,IAAI,SAAS,GAAG,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QAE1C,IAAM,OAAO,GAAG,SAAS,CAAC,UAAU,EAAE,CAAC;QAQvC,IAAM,sBAAsB,GAGxB,EAAE,CAAC;QAEP,IAAI,OAAO,CAAC,eAAe,EAAE;YACrB,IAAA,KAAoB,OAAO,CAAC,eAAe,EAAzC,MAAI,UAAA,EAAE,OAAO,aAA4B,CAAC;YAClD,IAAI,MAAI,EAAE;gBACR,sBAAsB,CAAC,2BAA2B,CAAC,GAAG,MAAI,CAAC;aAC5D;YACD,IAAI,OAAO,EAAE;gBACX,sBAAsB,CAAC,8BAA8B,CAAC,GAAG,OAAO,CAAC;aAClE;SACF;QAED,IAAM,cAAc,yBAAQ,sBAAsB,GAAK,OAAO,CAAC,OAAO,CAAE,CAAC;QAEzE,IAAM,aAAa,GAAG;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,OAAO,EAAE,OAAO,CAAC,YAAY;YAC7B,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,OAAO,EAAE,cAAc;SACxB,CAAC;QAEF,IAAI,aAAa,CAAC,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE;YAC9C,IAAM,gBAAgB,GAAG,4BAA4B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAEvE,IAAI,CAAC,gBAAgB,EAAE;gBACrB,OAAO,SAAS,CACd,IAAI,KAAK,CACP,uMAAuM,CACxM,CACF,CAAC;aACH;YAED,SAAS,CAAC,KAAK,GAAG,gBAAgB,CAAC;SACpC;QAGK,IAAA,KAAoB,gCAAgC,CACxD,SAAS,EACT,KAAK,EACL,kBAAkB,EAClB,UAAU,EACV,aAAa,CACd,EANO,OAAO,aAAA,EAAE,IAAI,UAMpB,CAAC;QAEF,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,sBAAsB,EAAE;YAC7C,IAAM,aAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACzD,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE;gBACrB,QAAQ,YAAC,IAAI,EAAE,IAAI,EAAE,MAAM;oBAKzB,IAAI,MAAM,IAAK,MAAiC,CAAC,IAAI,KAAK,oBAAoB,EAAE;wBAC9E,aAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;qBACrC;gBACH,CAAC;aACF,CAAC,CAAC;YACH,IAAI,aAAW,CAAC,IAAI,EAAE;gBAGpB,IAAI,CAAC,SAAS,gBAAQ,IAAI,CAAC,SAAS,CAAE,CAAC;gBACvC,aAAW,CAAC,OAAO,CAAC,UAAA,IAAI;oBACtB,OAAO,IAAI,CAAC,SAAU,CAAC,IAAI,CAAC,CAAC;gBAC/B,CAAC,CAAC,CAAC;aACJ;SACF;QAED,IAAI,UAAe,CAAC;QACpB,IAAI,CAAE,OAAe,CAAC,MAAM,EAAE;YACtB,IAAA,KAAsC,uBAAuB,EAAE,EAAjD,WAAW,gBAAA,EAAE,MAAM,YAA8B,CAAC;YACtE,UAAU,GAAG,WAAW,CAAC;YACzB,IAAI,UAAU;gBAAG,OAAe,CAAC,MAAM,GAAG,MAAM,CAAC;SAClD;QAGD,IAAM,oBAAoB,GAAG,UAAC,CAAiB;YAC7C,OAAO,CAAC,CAAC,IAAI,KAAK,qBAAqB,IAAI,CAAC,CAAC,SAAS,KAAK,UAAU,CAAC;QACxE,CAAC,CAAC;QACF,IACE,gBAAgB;YAChB,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,oBAAoB,CAAC,EACvD;YACA,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC;SACxB;QAGD,IAAI,aAAa,CAAC,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE;YAC7C,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;YACxC,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,uDAAuD,CAAC;SAClF;QAED,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,EAAE;YACtB,IAAA,KAAyB,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,EAAxD,MAAM,YAAA,EAAE,UAAU,gBAAsC,CAAC;YACjE,IAAI,UAAU,EAAE;gBACd,OAAO,SAAS,CAAC,UAAU,CAAC,CAAC;aAC9B;YACD,SAAS,GAAG,MAAM,CAAC;SACpB;aAAM;YACL,IAAI;gBACD,OAAe,CAAC,IAAI,GAAG,uBAAuB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;aAClE;YAAC,OAAO,UAAU,EAAE;gBACnB,OAAO,SAAS,CAAC,UAAU,CAAC,CAAC;aAC9B;SACF;QAED,OAAO,IAAI,UAAU,CAAC,UAAA,QAAQ;YAM5B,IAAM,YAAY,GAAG,cAAc,IAAI,KAAK,CAAC,cAAM,OAAA,KAAK,EAAL,CAAK,CAAC,IAAI,WAAW,CAAC;YAEzE,YAAa,CAAC,SAAS,EAAE,OAAO,CAAC;iBAC9B,IAAI,CAAC,UAAA,QAAQ;;gBACZ,SAAS,CAAC,UAAU,CAAC,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAC;gBACnC,IAAM,KAAK,GAAG,MAAA,QAAQ,CAAC,OAAO,0CAAE,GAAG,CAAC,cAAc,CAAC,CAAC;gBAEpD,IAAI,KAAK,KAAK,IAAI,IAAI,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACtD,OAAO,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;iBAC9C;qBAAM;oBACL,OAAO,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;iBACpD;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,UAAA,GAAG,IAAI,OAAA,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,EAA1B,CAA0B,CAAC,CAAC;YAE5C,OAAO;gBAGL,IAAI,UAAU;oBAAE,UAAU,CAAC,KAAK,EAAE,CAAC;YACrC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC","sourcesContent":["import { __DEV__ } from '../../utilities/globals';\n\nimport { visit, DefinitionNode, VariableDefinitionNode } from 'graphql';\n\nimport { ApolloLink } from '../core';\nimport { Observable, hasDirectives } from '../../utilities';\nimport { serializeFetchParameter } from './serializeFetchParameter';\nimport { selectURI } from './selectURI';\nimport {\n handleError,\n readMultipartBody,\n readJsonBody\n} from './parseAndCheckHttpResponse';\nimport { checkFetcher } from './checkFetcher';\nimport {\n selectHttpOptionsAndBodyInternal,\n defaultPrinter,\n fallbackHttpConfig,\n HttpOptions\n} from './selectHttpOptionsAndBody';\nimport { createSignalIfSupported } from './createSignalIfSupported';\nimport { rewriteURIForGET } from './rewriteURIForGET';\nimport { fromError } from '../utils';\nimport { maybe, removeClientSetsFromDocument } from '../../utilities';\n\nconst backupFetch = maybe(() => fetch);\n\nexport const createHttpLink = (linkOptions: HttpOptions = {}) => {\n let {\n uri = '/graphql',\n // use default global fetch if nothing passed in\n fetch: preferredFetch,\n print = defaultPrinter,\n includeExtensions,\n preserveHeaderCase,\n useGETForQueries,\n includeUnusedVariables = false,\n ...requestOptions\n } = linkOptions;\n\n if (__DEV__) {\n // Make sure at least one of preferredFetch, window.fetch, or backupFetch is\n // defined, so requests won't fail at runtime.\n checkFetcher(preferredFetch || backupFetch);\n }\n\n const linkConfig = {\n http: { includeExtensions, preserveHeaderCase },\n options: requestOptions.fetchOptions,\n credentials: requestOptions.credentials,\n headers: requestOptions.headers,\n };\n\n return new ApolloLink(operation => {\n let chosenURI = selectURI(operation, uri);\n\n const context = operation.getContext();\n\n // `apollographql-client-*` headers are automatically set if a\n // `clientAwareness` object is found in the context. These headers are\n // set first, followed by the rest of the headers pulled from\n // `context.headers`. If desired, `apollographql-client-*` headers set by\n // the `clientAwareness` object can be overridden by\n // `apollographql-client-*` headers set in `context.headers`.\n const clientAwarenessHeaders: {\n 'apollographql-client-name'?: string;\n 'apollographql-client-version'?: string;\n } = {};\n\n if (context.clientAwareness) {\n const { name, version } = context.clientAwareness;\n if (name) {\n clientAwarenessHeaders['apollographql-client-name'] = name;\n }\n if (version) {\n clientAwarenessHeaders['apollographql-client-version'] = version;\n }\n }\n\n const contextHeaders = { ...clientAwarenessHeaders, ...context.headers };\n\n const contextConfig = {\n http: context.http,\n options: context.fetchOptions,\n credentials: context.credentials,\n headers: contextHeaders,\n };\n\n if (hasDirectives(['client'], operation.query)) {\n const transformedQuery = removeClientSetsFromDocument(operation.query);\n\n if (!transformedQuery) {\n return fromError(\n new Error(\n 'HttpLink: Trying to send a client-only query to the server. To send to the server, ensure a non-client field is added to the query or set the `transformOptions.removeClientFields` option to `true`.'\n )\n );\n }\n\n operation.query = transformedQuery;\n }\n\n //uses fallback, link, and then context to build options\n const { options, body } = selectHttpOptionsAndBodyInternal(\n operation,\n print,\n fallbackHttpConfig,\n linkConfig,\n contextConfig,\n );\n\n if (body.variables && !includeUnusedVariables) {\n const unusedNames = new Set(Object.keys(body.variables));\n visit(operation.query, {\n Variable(node, _key, parent) {\n // A variable type definition at the top level of a query is not\n // enough to silence server-side errors about the variable being\n // unused, so variable definitions do not count as usage.\n // https://spec.graphql.org/draft/#sec-All-Variables-Used\n if (parent && (parent as VariableDefinitionNode).kind !== 'VariableDefinition') {\n unusedNames.delete(node.name.value);\n }\n },\n });\n if (unusedNames.size) {\n // Make a shallow copy of body.variables (with keys in the same\n // order) and then delete unused variables from the copy.\n body.variables = { ...body.variables };\n unusedNames.forEach(name => {\n delete body.variables![name];\n });\n }\n }\n\n let controller: any;\n if (!(options as any).signal) {\n const { controller: _controller, signal } = createSignalIfSupported();\n controller = _controller;\n if (controller) (options as any).signal = signal;\n }\n\n // If requested, set method to GET if there are no mutations.\n const definitionIsMutation = (d: DefinitionNode) => {\n return d.kind === 'OperationDefinition' && d.operation === 'mutation';\n };\n if (\n useGETForQueries &&\n !operation.query.definitions.some(definitionIsMutation)\n ) {\n options.method = 'GET';\n }\n\n // does not match custom directives beginning with @defer\n if (hasDirectives(['defer'], operation.query)) {\n options.headers = options.headers || {};\n options.headers.accept = \"multipart/mixed; deferSpec=20220824, application/json\";\n }\n\n if (options.method === 'GET') {\n const { newURI, parseError } = rewriteURIForGET(chosenURI, body);\n if (parseError) {\n return fromError(parseError);\n }\n chosenURI = newURI;\n } else {\n try {\n (options as any).body = serializeFetchParameter(body, 'Payload');\n } catch (parseError) {\n return fromError(parseError);\n }\n }\n\n return new Observable(observer => {\n // Prefer linkOptions.fetch (preferredFetch) if provided, and otherwise\n // fall back to the *current* global window.fetch function (see issue\n // #7832), or (if all else fails) the backupFetch function we saved when\n // this module was first evaluated. This last option protects against the\n // removal of window.fetch, which is unlikely but not impossible.\n const currentFetch = preferredFetch || maybe(() => fetch) || backupFetch;\n\n currentFetch!(chosenURI, options)\n .then(response => {\n operation.setContext({ response });\n const ctype = response.headers?.get('content-type');\n\n if (ctype !== null && /^multipart\\/mixed/i.test(ctype)) {\n return readMultipartBody(response, observer);\n } else {\n return readJsonBody(response, operation, observer);\n }\n })\n .catch(err => handleError(err, observer));\n\n return () => {\n // XXX support canceling this request\n // https://developers.google.com/web/updates/2017/09/abortable-fetch\n if (controller) controller.abort();\n };\n });\n });\n};\n"]}
1
+ {"version":3,"file":"createHttpLink.js","sourceRoot":"","sources":["../../../src/link/http/createHttpLink.ts"],"names":[],"mappings":"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","sourcesContent":["import { __DEV__, invariant } from '../../utilities/globals';\n\nimport type { DefinitionNode } from 'graphql';\n\nimport { ApolloLink } from '../core';\nimport { Observable, hasDirectives } from '../../utilities';\nimport { serializeFetchParameter } from './serializeFetchParameter';\nimport { selectURI } from './selectURI';\nimport {\n handleError,\n readMultipartBody,\n readJsonBody\n} from './parseAndCheckHttpResponse';\nimport { checkFetcher } from './checkFetcher';\nimport type {\n HttpOptions\n} from './selectHttpOptionsAndBody';\nimport {\n selectHttpOptionsAndBodyInternal,\n defaultPrinter,\n fallbackHttpConfig\n} from './selectHttpOptionsAndBody';\nimport { createSignalIfSupported } from './createSignalIfSupported';\nimport { rewriteURIForGET } from './rewriteURIForGET';\nimport { fromError, filterOperationVariables } from '../utils';\nimport {\n maybe,\n getMainDefinition,\n removeClientSetsFromDocument\n} from '../../utilities';\n\nconst backupFetch = maybe(() => fetch);\n\nexport const createHttpLink = (linkOptions: HttpOptions = {}) => {\n let {\n uri = '/graphql',\n // use default global fetch if nothing passed in\n fetch: preferredFetch,\n print = defaultPrinter,\n includeExtensions,\n preserveHeaderCase,\n useGETForQueries,\n includeUnusedVariables = false,\n ...requestOptions\n } = linkOptions;\n\n if (__DEV__) {\n // Make sure at least one of preferredFetch, window.fetch, or backupFetch is\n // defined, so requests won't fail at runtime.\n checkFetcher(preferredFetch || backupFetch);\n }\n\n const linkConfig = {\n http: { includeExtensions, preserveHeaderCase },\n options: requestOptions.fetchOptions,\n credentials: requestOptions.credentials,\n headers: requestOptions.headers,\n };\n\n return new ApolloLink(operation => {\n let chosenURI = selectURI(operation, uri);\n\n const context = operation.getContext();\n\n // `apollographql-client-*` headers are automatically set if a\n // `clientAwareness` object is found in the context. These headers are\n // set first, followed by the rest of the headers pulled from\n // `context.headers`. If desired, `apollographql-client-*` headers set by\n // the `clientAwareness` object can be overridden by\n // `apollographql-client-*` headers set in `context.headers`.\n const clientAwarenessHeaders: {\n 'apollographql-client-name'?: string;\n 'apollographql-client-version'?: string;\n } = {};\n\n if (context.clientAwareness) {\n const { name, version } = context.clientAwareness;\n if (name) {\n clientAwarenessHeaders['apollographql-client-name'] = name;\n }\n if (version) {\n clientAwarenessHeaders['apollographql-client-version'] = version;\n }\n }\n\n const contextHeaders = { ...clientAwarenessHeaders, ...context.headers };\n\n const contextConfig = {\n http: context.http,\n options: context.fetchOptions,\n credentials: context.credentials,\n headers: contextHeaders,\n };\n\n if (hasDirectives(['client'], operation.query)) {\n const transformedQuery = removeClientSetsFromDocument(operation.query);\n\n if (!transformedQuery) {\n return fromError(\n new Error(\n 'HttpLink: Trying to send a client-only query to the server. To send to the server, ensure a non-client field is added to the query or set the `transformOptions.removeClientFields` option to `true`.'\n )\n );\n }\n\n operation.query = transformedQuery;\n }\n\n //uses fallback, link, and then context to build options\n const { options, body } = selectHttpOptionsAndBodyInternal(\n operation,\n print,\n fallbackHttpConfig,\n linkConfig,\n contextConfig,\n );\n\n if (body.variables && !includeUnusedVariables) {\n body.variables = filterOperationVariables(body.variables, operation);\n }\n\n let controller: any;\n if (!(options as any).signal) {\n const { controller: _controller, signal } = createSignalIfSupported();\n controller = _controller;\n if (controller) (options as any).signal = signal;\n }\n\n // If requested, set method to GET if there are no mutations.\n const definitionIsMutation = (d: DefinitionNode) => {\n return d.kind === 'OperationDefinition' && d.operation === 'mutation';\n };\n const definitionIsSubscription = (d: DefinitionNode) => {\n return d.kind === 'OperationDefinition' && d.operation === 'subscription';\n };\n const isSubscription = definitionIsSubscription(getMainDefinition(operation.query));\n // does not match custom directives beginning with @defer\n const hasDefer = hasDirectives(['defer'], operation.query);\n if (\n useGETForQueries &&\n !operation.query.definitions.some(definitionIsMutation)\n ) {\n options.method = 'GET';\n }\n\n if (hasDefer || isSubscription) {\n options.headers = options.headers || {};\n let acceptHeader = \"multipart/mixed;\";\n // Omit defer-specific headers if the user attempts to defer a selection\n // set on a subscription and log a warning.\n if (isSubscription && hasDefer) {\n invariant.warn(\"Multipart-subscriptions do not support @defer\");\n }\n\n if (isSubscription) {\n acceptHeader += 'boundary=graphql;subscriptionSpec=1.0,application/json';\n } else if (hasDefer) {\n acceptHeader += 'deferSpec=20220824,application/json';\n }\n options.headers.accept = acceptHeader;\n }\n\n if (options.method === 'GET') {\n const { newURI, parseError } = rewriteURIForGET(chosenURI, body);\n if (parseError) {\n return fromError(parseError);\n }\n chosenURI = newURI;\n } else {\n try {\n (options as any).body = serializeFetchParameter(body, 'Payload');\n } catch (parseError) {\n return fromError(parseError);\n }\n }\n\n return new Observable(observer => {\n // Prefer linkOptions.fetch (preferredFetch) if provided, and otherwise\n // fall back to the *current* global window.fetch function (see issue\n // #7832), or (if all else fails) the backupFetch function we saved when\n // this module was first evaluated. This last option protects against the\n // removal of window.fetch, which is unlikely but not impossible.\n const currentFetch = preferredFetch || maybe(() => fetch) || backupFetch;\n\n currentFetch!(chosenURI, options)\n .then(response => {\n operation.setContext({ response });\n const ctype = response.headers?.get('content-type');\n\n if (ctype !== null && /^multipart\\/mixed/i.test(ctype)) {\n return readMultipartBody(response, observer);\n } else {\n return readJsonBody(response, operation, observer);\n }\n })\n .catch(err => handleError(err, observer));\n\n return () => {\n // XXX support canceling this request\n // https://developers.google.com/web/updates/2017/09/abortable-fetch\n if (controller) controller.abort();\n };\n });\n });\n};\n"]}
@@ -6,6 +6,7 @@ var globals = require('../../utilities/globals');
6
6
  var tslib = require('tslib');
7
7
  var utilities = require('../../utilities');
8
8
  var utils = require('../utils');
9
+ var errors = require('../../errors');
9
10
  var graphql = require('graphql');
10
11
  var core = require('../core');
11
12
 
@@ -152,60 +153,87 @@ function responseIterator(response) {
152
153
  throw new Error("Unknown body type for responseIterator. Please pass a streamable response.");
153
154
  }
154
155
 
156
+ function isNonNullObject(obj) {
157
+ return obj !== null && typeof obj === 'object';
158
+ }
159
+
160
+ function isApolloPayloadResult(value) {
161
+ return isNonNullObject(value) && "payload" in value;
162
+ }
163
+
155
164
  var hasOwnProperty = Object.prototype.hasOwnProperty;
156
165
  function readMultipartBody(response, observer) {
157
- var _a, _b, _c;
166
+ var _a, _b, _c, _d, _e;
158
167
  return tslib.__awaiter(this, void 0, void 0, function () {
159
- var decoder, contentType, delimiter, boundaryVal, boundary, buffer, iterator, running, _d, value, done, chunk, bi, message, i, headers, contentType_1, body, result;
160
- var _e;
161
- return tslib.__generator(this, function (_f) {
162
- switch (_f.label) {
168
+ var decoder, contentType, delimiter, boundaryVal, boundary, buffer, iterator, running, _f, value, done, chunk, searchFrom, bi, message, i, headers, contentType_1, body, result, next;
169
+ var _g, _h;
170
+ return tslib.__generator(this, function (_j) {
171
+ switch (_j.label) {
163
172
  case 0:
164
173
  if (TextDecoder === undefined) {
165
174
  throw new Error("TextDecoder must be defined in the environment: please import a polyfill.");
166
175
  }
167
176
  decoder = new TextDecoder("utf-8");
168
- contentType = (_a = response.headers) === null || _a === void 0 ? void 0 : _a.get('content-type');
177
+ contentType = (_a = response.headers) === null || _a === void 0 ? void 0 : _a.get("content-type");
169
178
  delimiter = "boundary=";
170
179
  boundaryVal = (contentType === null || contentType === void 0 ? void 0 : contentType.includes(delimiter))
171
180
  ? contentType === null || contentType === void 0 ? void 0 : contentType.substring((contentType === null || contentType === void 0 ? void 0 : contentType.indexOf(delimiter)) + delimiter.length).replace(/['"]/g, "").replace(/\;(.*)/gm, "").trim()
172
181
  : "-";
173
- boundary = "--".concat(boundaryVal);
182
+ boundary = "\r\n--".concat(boundaryVal);
174
183
  buffer = "";
175
184
  iterator = responseIterator(response);
176
185
  running = true;
177
- _f.label = 1;
186
+ _j.label = 1;
178
187
  case 1:
179
188
  if (!running) return [3, 3];
180
189
  return [4, iterator.next()];
181
190
  case 2:
182
- _d = _f.sent(), value = _d.value, done = _d.done;
191
+ _f = _j.sent(), value = _f.value, done = _f.done;
183
192
  chunk = typeof value === "string" ? value : decoder.decode(value);
193
+ searchFrom = buffer.length - boundary.length + 1;
184
194
  running = !done;
185
195
  buffer += chunk;
186
- bi = buffer.indexOf(boundary);
196
+ bi = buffer.indexOf(boundary, searchFrom);
187
197
  while (bi > -1) {
188
198
  message = void 0;
189
- _e = [
199
+ _g = [
190
200
  buffer.slice(0, bi),
191
201
  buffer.slice(bi + boundary.length),
192
- ], message = _e[0], buffer = _e[1];
193
- if (message.trim()) {
194
- i = message.indexOf("\r\n\r\n");
195
- headers = parseHeaders(message.slice(0, i));
196
- contentType_1 = headers["content-type"];
197
- if (contentType_1 &&
198
- contentType_1.toLowerCase().indexOf("application/json") === -1) {
199
- throw new Error("Unsupported patch content type: application/json is required.");
200
- }
201
- body = message.slice(i);
202
+ ], message = _g[0], buffer = _g[1];
203
+ i = message.indexOf("\r\n\r\n");
204
+ headers = parseHeaders(message.slice(0, i));
205
+ contentType_1 = headers["content-type"];
206
+ if (contentType_1 &&
207
+ contentType_1.toLowerCase().indexOf("application/json") === -1) {
208
+ throw new Error("Unsupported patch content type: application/json is required.");
209
+ }
210
+ body = message.slice(i);
211
+ if (body) {
202
212
  try {
203
- result = parseJsonBody(response, body.replace("\r\n", ""));
213
+ result = parseJsonBody(response, body);
204
214
  if (Object.keys(result).length > 1 ||
205
215
  "data" in result ||
206
216
  "incremental" in result ||
207
- "errors" in result) {
208
- (_b = observer.next) === null || _b === void 0 ? void 0 : _b.call(observer, result);
217
+ "errors" in result ||
218
+ "payload" in result) {
219
+ if (isApolloPayloadResult(result)) {
220
+ next = {};
221
+ if ("payload" in result) {
222
+ next = tslib.__assign({}, result.payload);
223
+ }
224
+ if ("errors" in result) {
225
+ next = tslib.__assign(tslib.__assign({}, next), { extensions: tslib.__assign(tslib.__assign({}, ("extensions" in next ? next.extensions : null)), (_h = {}, _h[errors.PROTOCOL_ERRORS_SYMBOL] = result.errors, _h)) });
226
+ }
227
+ (_b = observer.next) === null || _b === void 0 ? void 0 : _b.call(observer, next);
228
+ }
229
+ else {
230
+ (_c = observer.next) === null || _c === void 0 ? void 0 : _c.call(observer, result);
231
+ }
232
+ }
233
+ else if (Object.keys(result).length === 1 &&
234
+ "hasNext" in result &&
235
+ !result.hasNext) {
236
+ (_d = observer.complete) === null || _d === void 0 ? void 0 : _d.call(observer);
209
237
  }
210
238
  }
211
239
  catch (err) {
@@ -216,7 +244,7 @@ function readMultipartBody(response, observer) {
216
244
  }
217
245
  return [3, 1];
218
246
  case 3:
219
- (_c = observer.complete) === null || _c === void 0 ? void 0 : _c.call(observer);
247
+ (_e = observer.complete) === null || _e === void 0 ? void 0 : _e.call(observer);
220
248
  return [2];
221
249
  }
222
250
  });
@@ -303,7 +331,7 @@ var serializeFetchParameter = function (p, label) {
303
331
  serialized = JSON.stringify(p);
304
332
  }
305
333
  catch (e) {
306
- var parseError = globals.__DEV__ ? new globals.InvariantError("Network request failed. ".concat(label, " is not serializable: ").concat(e.message)) : new globals.InvariantError(24);
334
+ var parseError = globals.newInvariantError(38, label, e.message);
307
335
  parseError.parseError = e;
308
336
  throw parseError;
309
337
  }
@@ -386,7 +414,7 @@ function removeDuplicateHeaders(headers, preserveHeaderCase) {
386
414
 
387
415
  var checkFetcher = function (fetcher) {
388
416
  if (!fetcher && typeof fetch === 'undefined') {
389
- throw globals.__DEV__ ? new globals.InvariantError("\n\"fetch\" has not been found globally and no fetcher has been configured. To fix this, install a fetch package (like https://www.npmjs.com/package/cross-fetch), instantiate the fetcher, and pass it into your HttpLink constructor. For example:\n\nimport fetch from 'cross-fetch';\nimport { ApolloClient, HttpLink } from '@apollo/client';\nconst client = new ApolloClient({\n link: new HttpLink({ uri: '/graphql', fetch })\n});\n ") : new globals.InvariantError(23);
417
+ throw globals.newInvariantError(36);
390
418
  }
391
419
  };
392
420
 
@@ -496,20 +524,7 @@ var createHttpLink = function (linkOptions) {
496
524
  }
497
525
  var _b = selectHttpOptionsAndBodyInternal(operation, print, fallbackHttpConfig, linkConfig, contextConfig), options = _b.options, body = _b.body;
498
526
  if (body.variables && !includeUnusedVariables) {
499
- var unusedNames_1 = new Set(Object.keys(body.variables));
500
- graphql.visit(operation.query, {
501
- Variable: function (node, _key, parent) {
502
- if (parent && parent.kind !== 'VariableDefinition') {
503
- unusedNames_1.delete(node.name.value);
504
- }
505
- },
506
- });
507
- if (unusedNames_1.size) {
508
- body.variables = tslib.__assign({}, body.variables);
509
- unusedNames_1.forEach(function (name) {
510
- delete body.variables[name];
511
- });
512
- }
527
+ body.variables = utils.filterOperationVariables(body.variables, operation);
513
528
  }
514
529
  var controller;
515
530
  if (!options.signal) {
@@ -521,13 +536,28 @@ var createHttpLink = function (linkOptions) {
521
536
  var definitionIsMutation = function (d) {
522
537
  return d.kind === 'OperationDefinition' && d.operation === 'mutation';
523
538
  };
539
+ var definitionIsSubscription = function (d) {
540
+ return d.kind === 'OperationDefinition' && d.operation === 'subscription';
541
+ };
542
+ var isSubscription = definitionIsSubscription(utilities.getMainDefinition(operation.query));
543
+ var hasDefer = utilities.hasDirectives(['defer'], operation.query);
524
544
  if (useGETForQueries &&
525
545
  !operation.query.definitions.some(definitionIsMutation)) {
526
546
  options.method = 'GET';
527
547
  }
528
- if (utilities.hasDirectives(['defer'], operation.query)) {
548
+ if (hasDefer || isSubscription) {
529
549
  options.headers = options.headers || {};
530
- options.headers.accept = "multipart/mixed; deferSpec=20220824, application/json";
550
+ var acceptHeader = "multipart/mixed;";
551
+ if (isSubscription && hasDefer) {
552
+ globals.__DEV__ && globals.invariant.warn(37);
553
+ }
554
+ if (isSubscription) {
555
+ acceptHeader += 'boundary=graphql;subscriptionSpec=1.0,application/json';
556
+ }
557
+ else if (hasDefer) {
558
+ acceptHeader += 'deferSpec=20220824,application/json';
559
+ }
560
+ options.headers.accept = acceptHeader;
531
561
  }
532
562
  if (options.method === 'GET') {
533
563
  var _d = rewriteURIForGET(chosenURI, body), newURI = _d.newURI, parseError = _d.parseError;