@apollo/client 3.13.8 → 3.13.9-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2101) hide show
  1. package/CHANGELOG.md +1794 -0
  2. package/__cjs/cache/core/cache.cjs +210 -0
  3. package/__cjs/cache/core/cache.cjs.map +1 -0
  4. package/__cjs/cache/core/cache.d.cts +140 -0
  5. package/__cjs/cache/core/types/Cache.cjs +7 -0
  6. package/__cjs/cache/core/types/Cache.cjs.map +1 -0
  7. package/__cjs/cache/core/types/Cache.d.cts +56 -0
  8. package/__cjs/cache/core/types/DataProxy.cjs +3 -0
  9. package/__cjs/cache/core/types/DataProxy.cjs.map +1 -0
  10. package/__cjs/cache/core/types/DataProxy.d.cts +140 -0
  11. package/__cjs/cache/core/types/common.cjs +33 -0
  12. package/__cjs/cache/core/types/common.cjs.map +1 -0
  13. package/__cjs/cache/core/types/common.d.cts +64 -0
  14. package/__cjs/cache/index.cjs +25 -0
  15. package/__cjs/cache/index.cjs.map +1 -0
  16. package/__cjs/cache/index.d.cts +19 -0
  17. package/__cjs/cache/inmemory/entityStore.cjs +680 -0
  18. package/__cjs/cache/inmemory/entityStore.cjs.map +1 -0
  19. package/__cjs/cache/inmemory/entityStore.d.cts +93 -0
  20. package/__cjs/cache/inmemory/fragmentRegistry.cjs +129 -0
  21. package/__cjs/cache/inmemory/fragmentRegistry.cjs.map +1 -0
  22. package/__cjs/cache/inmemory/fragmentRegistry.d.cts +9 -0
  23. package/__cjs/cache/inmemory/helpers.cjs +93 -0
  24. package/__cjs/cache/inmemory/helpers.cjs.map +1 -0
  25. package/__cjs/cache/inmemory/helpers.d.cts +21 -0
  26. package/__cjs/cache/inmemory/inMemoryCache.cjs +458 -0
  27. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -0
  28. package/__cjs/cache/inmemory/inMemoryCache.d.cts +66 -0
  29. package/__cjs/cache/inmemory/key-extractor.cjs +192 -0
  30. package/__cjs/cache/inmemory/key-extractor.cjs.map +1 -0
  31. package/__cjs/cache/inmemory/key-extractor.d.cts +9 -0
  32. package/__cjs/cache/inmemory/policies.cjs +609 -0
  33. package/__cjs/cache/inmemory/policies.cjs.map +1 -0
  34. package/__cjs/cache/inmemory/policies.d.cts +98 -0
  35. package/__cjs/cache/inmemory/reactiveVars.cjs +89 -0
  36. package/__cjs/cache/inmemory/reactiveVars.cjs.map +1 -0
  37. package/__cjs/cache/inmemory/reactiveVars.d.cts +19 -0
  38. package/__cjs/cache/inmemory/readFromStore.cjs +294 -0
  39. package/__cjs/cache/inmemory/readFromStore.cjs.map +1 -0
  40. package/__cjs/cache/inmemory/readFromStore.d.cts +27 -0
  41. package/__cjs/cache/inmemory/types.cjs +3 -0
  42. package/__cjs/cache/inmemory/types.cjs.map +1 -0
  43. package/__cjs/cache/inmemory/types.d.cts +111 -0
  44. package/__cjs/cache/inmemory/writeToStore.cjs +579 -0
  45. package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -0
  46. package/__cjs/cache/inmemory/writeToStore.d.cts +38 -0
  47. package/__cjs/core/ApolloClient.cjs +604 -0
  48. package/__cjs/core/ApolloClient.cjs.map +1 -0
  49. package/__cjs/core/ApolloClient.d.cts +462 -0
  50. package/__cjs/core/ObservableQuery.cjs +1319 -0
  51. package/__cjs/core/ObservableQuery.cjs.map +1 -0
  52. package/__cjs/core/ObservableQuery.d.cts +382 -0
  53. package/__cjs/core/QueryInfo.cjs +397 -0
  54. package/__cjs/core/QueryInfo.cjs.map +1 -0
  55. package/__cjs/core/QueryInfo.d.cts +68 -0
  56. package/__cjs/core/QueryManager.cjs +1148 -0
  57. package/__cjs/core/QueryManager.cjs.map +1 -0
  58. package/__cjs/core/QueryManager.d.cts +151 -0
  59. package/__cjs/core/equalByQuery.cjs +88 -0
  60. package/__cjs/core/equalByQuery.cjs.map +1 -0
  61. package/__cjs/core/equalByQuery.d.cts +4 -0
  62. package/__cjs/core/index.cjs +79 -0
  63. package/__cjs/core/index.cjs.map +1 -0
  64. package/__cjs/core/index.d.cts +21 -0
  65. package/__cjs/core/networkStatus.cjs +67 -0
  66. package/__cjs/core/networkStatus.cjs.map +1 -0
  67. package/__cjs/core/networkStatus.d.cts +57 -0
  68. package/__cjs/core/types.cjs +3 -0
  69. package/__cjs/core/types.cjs.map +1 -0
  70. package/__cjs/core/types.d.cts +286 -0
  71. package/__cjs/core/watchQueryOptions.cjs +3 -0
  72. package/__cjs/core/watchQueryOptions.cjs.map +1 -0
  73. package/__cjs/core/watchQueryOptions.d.cts +364 -0
  74. package/__cjs/dev/index.cjs +12 -0
  75. package/__cjs/dev/index.cjs.map +1 -0
  76. package/__cjs/dev/index.d.cts +6 -0
  77. package/__cjs/dev/loadDevMessages.cjs +9 -0
  78. package/__cjs/dev/loadDevMessages.cjs.map +1 -0
  79. package/__cjs/dev/loadDevMessages.d.cts +2 -0
  80. package/__cjs/dev/loadErrorMessageHandler.cjs +27 -0
  81. package/__cjs/dev/loadErrorMessageHandler.cjs.map +1 -0
  82. package/__cjs/dev/loadErrorMessageHandler.d.cts +8 -0
  83. package/__cjs/dev/loadErrorMessages.cjs +9 -0
  84. package/__cjs/dev/loadErrorMessages.cjs.map +1 -0
  85. package/__cjs/dev/loadErrorMessages.d.cts +2 -0
  86. package/__cjs/dev/setErrorMessageHandler.cjs +12 -0
  87. package/__cjs/dev/setErrorMessageHandler.cjs.map +1 -0
  88. package/__cjs/dev/setErrorMessageHandler.d.cts +34 -0
  89. package/__cjs/dev/symbol.cjs +7 -0
  90. package/__cjs/dev/symbol.cjs.map +1 -0
  91. package/__cjs/dev/symbol.d.cts +10 -0
  92. package/__cjs/errors/CombinedGraphQLErrors.cjs +52 -0
  93. package/__cjs/errors/CombinedGraphQLErrors.cjs.map +1 -0
  94. package/__cjs/errors/CombinedGraphQLErrors.d.cts +37 -0
  95. package/__cjs/errors/CombinedProtocolErrors.cjs +31 -0
  96. package/__cjs/errors/CombinedProtocolErrors.cjs.map +1 -0
  97. package/__cjs/errors/CombinedProtocolErrors.d.cts +20 -0
  98. package/__cjs/errors/LinkError.cjs +24 -0
  99. package/__cjs/errors/LinkError.cjs.map +1 -0
  100. package/__cjs/errors/LinkError.d.cts +18 -0
  101. package/__cjs/errors/LocalStateError.cjs +27 -0
  102. package/__cjs/errors/LocalStateError.cjs.map +1 -0
  103. package/__cjs/errors/LocalStateError.d.cts +20 -0
  104. package/__cjs/errors/ServerError.cjs +36 -0
  105. package/__cjs/errors/ServerError.cjs.map +1 -0
  106. package/__cjs/errors/ServerError.d.cts +27 -0
  107. package/__cjs/errors/ServerParseError.cjs +38 -0
  108. package/__cjs/errors/ServerParseError.cjs.map +1 -0
  109. package/__cjs/errors/ServerParseError.d.cts +26 -0
  110. package/__cjs/errors/UnconventionalError.cjs +23 -0
  111. package/__cjs/errors/UnconventionalError.cjs.map +1 -0
  112. package/__cjs/errors/UnconventionalError.d.cts +11 -0
  113. package/__cjs/errors/index.cjs +45 -0
  114. package/__cjs/errors/index.cjs.map +1 -0
  115. package/__cjs/errors/index.d.cts +14 -0
  116. package/__cjs/errors/isErrorLike.cjs +12 -0
  117. package/__cjs/errors/isErrorLike.cjs.map +1 -0
  118. package/__cjs/errors/isErrorLike.d.cts +3 -0
  119. package/__cjs/errors/utils.cjs +18 -0
  120. package/__cjs/errors/utils.cjs.map +1 -0
  121. package/__cjs/errors/utils.d.cts +3 -0
  122. package/__cjs/incremental/handlers/defer20220824.cjs +102 -0
  123. package/__cjs/incremental/handlers/defer20220824.cjs.map +1 -0
  124. package/__cjs/incremental/handlers/defer20220824.d.cts +55 -0
  125. package/__cjs/incremental/handlers/notImplemented.cjs +19 -0
  126. package/__cjs/incremental/handlers/notImplemented.cjs.map +1 -0
  127. package/__cjs/incremental/handlers/notImplemented.d.cts +9 -0
  128. package/__cjs/incremental/index.cjs +9 -0
  129. package/__cjs/incremental/index.cjs.map +1 -0
  130. package/__cjs/incremental/index.d.cts +4 -0
  131. package/__cjs/incremental/types.cjs +3 -0
  132. package/__cjs/incremental/types.cjs.map +1 -0
  133. package/__cjs/incremental/types.d.cts +24 -0
  134. package/__cjs/invariantErrorCodes.cjs +712 -0
  135. package/__cjs/invariantErrorCodes.cjs.map +1 -0
  136. package/__cjs/invariantErrorCodes.d.cts +13 -0
  137. package/__cjs/link/batch/batchLink.cjs +33 -0
  138. package/__cjs/link/batch/batchLink.cjs.map +1 -0
  139. package/__cjs/link/batch/batchLink.d.cts +42 -0
  140. package/__cjs/link/batch/batching.cjs +156 -0
  141. package/__cjs/link/batch/batching.cjs.map +1 -0
  142. package/__cjs/link/batch/batching.d.cts +27 -0
  143. package/__cjs/link/batch/index.cjs +7 -0
  144. package/__cjs/link/batch/index.cjs.map +1 -0
  145. package/__cjs/link/batch/index.d.cts +3 -0
  146. package/__cjs/link/batch-http/batchHttpLink.cjs +144 -0
  147. package/__cjs/link/batch-http/batchHttpLink.cjs.map +1 -0
  148. package/__cjs/link/batch-http/batchHttpLink.d.cts +26 -0
  149. package/__cjs/link/batch-http/index.cjs +7 -0
  150. package/__cjs/link/batch-http/index.cjs.map +1 -0
  151. package/__cjs/link/batch-http/index.d.cts +2 -0
  152. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs +45 -0
  153. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs.map +1 -0
  154. package/__cjs/link/client-awareness/ClientAwarenessLink.d.cts +62 -0
  155. package/__cjs/link/client-awareness/index.cjs +6 -0
  156. package/__cjs/link/client-awareness/index.cjs.map +1 -0
  157. package/__cjs/link/client-awareness/index.d.cts +2 -0
  158. package/__cjs/link/context/index.cjs +45 -0
  159. package/__cjs/link/context/index.cjs.map +1 -0
  160. package/__cjs/link/context/index.d.cts +12 -0
  161. package/__cjs/link/core/ApolloLink.cjs +109 -0
  162. package/__cjs/link/core/ApolloLink.cjs.map +1 -0
  163. package/__cjs/link/core/ApolloLink.d.cts +35 -0
  164. package/__cjs/link/core/concat.cjs +6 -0
  165. package/__cjs/link/core/concat.cjs.map +1 -0
  166. package/__cjs/link/core/concat.d.cts +3 -0
  167. package/__cjs/link/core/empty.cjs +6 -0
  168. package/__cjs/link/core/empty.cjs.map +1 -0
  169. package/__cjs/link/core/empty.d.cts +3 -0
  170. package/__cjs/link/core/execute.cjs +6 -0
  171. package/__cjs/link/core/execute.cjs.map +1 -0
  172. package/__cjs/link/core/execute.d.cts +3 -0
  173. package/__cjs/link/core/from.cjs +6 -0
  174. package/__cjs/link/core/from.cjs.map +1 -0
  175. package/__cjs/link/core/from.d.cts +3 -0
  176. package/__cjs/link/core/split.cjs +6 -0
  177. package/__cjs/link/core/split.cjs.map +1 -0
  178. package/__cjs/link/core/split.d.cts +3 -0
  179. package/__cjs/link/core/types.cjs +3 -0
  180. package/__cjs/link/core/types.cjs.map +1 -0
  181. package/__cjs/link/core/types.d.cts +39 -0
  182. package/__cjs/link/error/index.cjs +85 -0
  183. package/__cjs/link/error/index.cjs.map +1 -0
  184. package/__cjs/link/error/index.d.cts +31 -0
  185. package/__cjs/link/http/BaseHttpLink.cjs +111 -0
  186. package/__cjs/link/http/BaseHttpLink.cjs.map +1 -0
  187. package/__cjs/link/http/BaseHttpLink.d.cts +6 -0
  188. package/__cjs/link/http/HttpLink.cjs +21 -0
  189. package/__cjs/link/http/HttpLink.cjs.map +1 -0
  190. package/__cjs/link/http/HttpLink.d.cts +148 -0
  191. package/__cjs/link/http/checkFetcher.cjs +9 -0
  192. package/__cjs/link/http/checkFetcher.cjs.map +1 -0
  193. package/__cjs/link/http/checkFetcher.d.cts +2 -0
  194. package/__cjs/link/http/createSignalIfSupported.cjs +17 -0
  195. package/__cjs/link/http/createSignalIfSupported.cjs.map +1 -0
  196. package/__cjs/link/http/createSignalIfSupported.d.cts +13 -0
  197. package/__cjs/link/http/index.cjs +26 -0
  198. package/__cjs/link/http/index.cjs.map +1 -0
  199. package/__cjs/link/http/index.d.cts +11 -0
  200. package/__cjs/link/http/parseAndCheckHttpResponse.cjs +148 -0
  201. package/__cjs/link/http/parseAndCheckHttpResponse.cjs.map +1 -0
  202. package/__cjs/link/http/parseAndCheckHttpResponse.d.cts +4 -0
  203. package/__cjs/link/http/rewriteURIForGET.cjs +56 -0
  204. package/__cjs/link/http/rewriteURIForGET.cjs.map +1 -0
  205. package/__cjs/link/http/rewriteURIForGET.d.cts +9 -0
  206. package/__cjs/link/http/selectHttpOptionsAndBody.cjs +109 -0
  207. package/__cjs/link/http/selectHttpOptionsAndBody.cjs.map +1 -0
  208. package/__cjs/link/http/selectHttpOptionsAndBody.d.cts +29 -0
  209. package/__cjs/link/http/selectURI.cjs +18 -0
  210. package/__cjs/link/http/selectURI.cjs.map +1 -0
  211. package/__cjs/link/http/selectURI.d.cts +3 -0
  212. package/__cjs/link/http/serializeFetchParameter.cjs +18 -0
  213. package/__cjs/link/http/serializeFetchParameter.cjs.map +1 -0
  214. package/__cjs/link/http/serializeFetchParameter.d.cts +6 -0
  215. package/__cjs/link/index.cjs +16 -0
  216. package/__cjs/link/index.cjs.map +1 -0
  217. package/__cjs/link/index.d.cts +8 -0
  218. package/__cjs/link/persisted-queries/index.cjs +228 -0
  219. package/__cjs/link/persisted-queries/index.cjs.map +1 -0
  220. package/__cjs/link/persisted-queries/index.d.cts +48 -0
  221. package/__cjs/link/remove-typename/index.cjs +8 -0
  222. package/__cjs/link/remove-typename/index.cjs.map +1 -0
  223. package/__cjs/link/remove-typename/index.d.cts +3 -0
  224. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs +107 -0
  225. package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs.map +1 -0
  226. package/__cjs/link/remove-typename/removeTypenameFromVariables.d.cts +18 -0
  227. package/__cjs/link/retry/delayFunction.cjs +21 -0
  228. package/__cjs/link/retry/delayFunction.cjs.map +1 -0
  229. package/__cjs/link/retry/delayFunction.d.cts +40 -0
  230. package/__cjs/link/retry/index.cjs +6 -0
  231. package/__cjs/link/retry/index.cjs.map +1 -0
  232. package/__cjs/link/retry/index.d.cts +2 -0
  233. package/__cjs/link/retry/retryFunction.cjs +12 -0
  234. package/__cjs/link/retry/retryFunction.cjs.map +1 -0
  235. package/__cjs/link/retry/retryFunction.d.cts +30 -0
  236. package/__cjs/link/retry/retryLink.cjs +97 -0
  237. package/__cjs/link/retry/retryLink.cjs.map +1 -0
  238. package/__cjs/link/retry/retryLink.d.cts +24 -0
  239. package/__cjs/link/schema/index.cjs +55 -0
  240. package/__cjs/link/schema/index.cjs.map +1 -0
  241. package/__cjs/link/schema/index.d.cts +36 -0
  242. package/__cjs/link/subscriptions/index.cjs +77 -0
  243. package/__cjs/link/subscriptions/index.cjs.map +1 -0
  244. package/__cjs/link/subscriptions/index.d.cts +10 -0
  245. package/__cjs/link/utils/createOperation.cjs +29 -0
  246. package/__cjs/link/utils/createOperation.cjs.map +1 -0
  247. package/__cjs/link/utils/createOperation.d.cts +3 -0
  248. package/__cjs/link/utils/filterOperationVariables.cjs +25 -0
  249. package/__cjs/link/utils/filterOperationVariables.cjs.map +1 -0
  250. package/__cjs/link/utils/filterOperationVariables.d.cts +5 -0
  251. package/__cjs/link/utils/index.cjs +12 -0
  252. package/__cjs/link/utils/index.cjs.map +1 -0
  253. package/__cjs/link/utils/index.d.cts +5 -0
  254. package/__cjs/link/utils/transformOperation.cjs +21 -0
  255. package/__cjs/link/utils/transformOperation.cjs.map +1 -0
  256. package/__cjs/link/utils/transformOperation.d.cts +3 -0
  257. package/__cjs/link/utils/validateOperation.cjs +20 -0
  258. package/__cjs/link/utils/validateOperation.cjs.map +1 -0
  259. package/__cjs/link/utils/validateOperation.d.cts +3 -0
  260. package/__cjs/link/ws/index.cjs +22 -0
  261. package/__cjs/link/ws/index.cjs.map +1 -0
  262. package/__cjs/link/ws/index.d.cts +31 -0
  263. package/__cjs/local-state/LocalState.cjs +527 -0
  264. package/__cjs/local-state/LocalState.cjs.map +1 -0
  265. package/__cjs/local-state/LocalState.d.cts +88 -0
  266. package/__cjs/local-state/index.cjs +6 -0
  267. package/__cjs/local-state/index.cjs.map +1 -0
  268. package/__cjs/local-state/index.d.cts +2 -0
  269. package/__cjs/masking/GraphQLCodegenDataMasking.cjs +3 -0
  270. package/__cjs/masking/GraphQLCodegenDataMasking.cjs.map +1 -0
  271. package/__cjs/masking/GraphQLCodegenDataMasking.d.cts +79 -0
  272. package/__cjs/masking/index.cjs +10 -0
  273. package/__cjs/masking/index.cjs.map +1 -0
  274. package/__cjs/masking/index.d.cts +6 -0
  275. package/__cjs/masking/internal/types.cjs +3 -0
  276. package/__cjs/masking/internal/types.cjs.map +1 -0
  277. package/__cjs/masking/internal/types.d.cts +121 -0
  278. package/__cjs/masking/maskDefinition.cjs +139 -0
  279. package/__cjs/masking/maskDefinition.cjs.map +1 -0
  280. package/__cjs/masking/maskDefinition.d.cts +14 -0
  281. package/__cjs/masking/maskFragment.cjs +42 -0
  282. package/__cjs/masking/maskFragment.cjs.map +1 -0
  283. package/__cjs/masking/maskFragment.d.cts +8 -0
  284. package/__cjs/masking/maskOperation.cjs +28 -0
  285. package/__cjs/masking/maskOperation.cjs.map +1 -0
  286. package/__cjs/masking/maskOperation.d.cts +8 -0
  287. package/__cjs/masking/types.cjs +3 -0
  288. package/__cjs/masking/types.cjs.map +1 -0
  289. package/__cjs/masking/types.d.cts +32 -0
  290. package/__cjs/masking/utils.cjs +47 -0
  291. package/__cjs/masking/utils.cjs.map +1 -0
  292. package/__cjs/masking/utils.d.cts +14 -0
  293. package/__cjs/react/context/ApolloConsumer.cjs +16 -0
  294. package/__cjs/react/context/ApolloConsumer.cjs.map +1 -0
  295. package/__cjs/react/context/ApolloConsumer.d.cts +10 -0
  296. package/__cjs/react/context/ApolloContext.cjs +26 -0
  297. package/__cjs/react/context/ApolloContext.cjs.map +1 -0
  298. package/__cjs/react/context/ApolloContext.d.cts +9 -0
  299. package/__cjs/react/context/ApolloProvider.cjs +21 -0
  300. package/__cjs/react/context/ApolloProvider.cjs.map +1 -0
  301. package/__cjs/react/context/ApolloProvider.d.cts +10 -0
  302. package/__cjs/react/hooks/constants.cjs +5 -0
  303. package/__cjs/react/hooks/constants.cjs.map +1 -0
  304. package/__cjs/react/hooks/constants.d.cts +3 -0
  305. package/__cjs/react/hooks/internal/__use.cjs +26 -0
  306. package/__cjs/react/hooks/internal/__use.cjs.map +1 -0
  307. package/__cjs/react/hooks/internal/__use.d.cts +4 -0
  308. package/__cjs/react/hooks/internal/index.cjs +13 -0
  309. package/__cjs/react/hooks/internal/index.cjs.map +1 -0
  310. package/__cjs/react/hooks/internal/index.d.cts +5 -0
  311. package/__cjs/react/hooks/internal/useDeepMemo.cjs +17 -0
  312. package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -0
  313. package/__cjs/react/hooks/internal/useDeepMemo.d.cts +3 -0
  314. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.cjs +13 -0
  315. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.cjs.map +1 -0
  316. package/__cjs/react/hooks/internal/useIsomorphicLayoutEffect.d.cts +3 -0
  317. package/__cjs/react/hooks/internal/useRenderGuard.cjs +46 -0
  318. package/__cjs/react/hooks/internal/useRenderGuard.cjs.map +1 -0
  319. package/__cjs/react/hooks/internal/useRenderGuard.d.cts +2 -0
  320. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs +28 -0
  321. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs.map +1 -0
  322. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.d.cts +3 -0
  323. package/__cjs/react/hooks/internal/wrapHook.cjs +69 -0
  324. package/__cjs/react/hooks/internal/wrapHook.cjs.map +1 -0
  325. package/__cjs/react/hooks/internal/wrapHook.d.cts +66 -0
  326. package/__cjs/react/hooks/useApolloClient.cjs +29 -0
  327. package/__cjs/react/hooks/useApolloClient.cjs.map +1 -0
  328. package/__cjs/react/hooks/useApolloClient.d.cts +18 -0
  329. package/__cjs/react/hooks/useBackgroundQuery.cjs +84 -0
  330. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -0
  331. package/__cjs/react/hooks/useBackgroundQuery.d.cts +210 -0
  332. package/__cjs/react/hooks/useFragment.cjs +101 -0
  333. package/__cjs/react/hooks/useFragment.cjs.map +1 -0
  334. package/__cjs/react/hooks/useFragment.d.cts +55 -0
  335. package/__cjs/react/hooks/useLazyQuery.cjs +185 -0
  336. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -0
  337. package/__cjs/react/hooks/useLazyQuery.d.cts +280 -0
  338. package/__cjs/react/hooks/useLoadableQuery.cjs +92 -0
  339. package/__cjs/react/hooks/useLoadableQuery.cjs.map +1 -0
  340. package/__cjs/react/hooks/useLoadableQuery.d.cts +175 -0
  341. package/__cjs/react/hooks/useMutation.cjs +157 -0
  342. package/__cjs/react/hooks/useMutation.cjs.map +1 -0
  343. package/__cjs/react/hooks/useMutation.d.cts +280 -0
  344. package/__cjs/react/hooks/useQuery.cjs +220 -0
  345. package/__cjs/react/hooks/useQuery.cjs.map +1 -0
  346. package/__cjs/react/hooks/useQuery.d.cts +265 -0
  347. package/__cjs/react/hooks/useQueryRefHandlers.cjs +73 -0
  348. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -0
  349. package/__cjs/react/hooks/useQueryRefHandlers.d.cts +44 -0
  350. package/__cjs/react/hooks/useReactiveVar.cjs +37 -0
  351. package/__cjs/react/hooks/useReactiveVar.cjs.map +1 -0
  352. package/__cjs/react/hooks/useReactiveVar.d.cts +20 -0
  353. package/__cjs/react/hooks/useReadQuery.cjs +47 -0
  354. package/__cjs/react/hooks/useReadQuery.cjs.map +1 -0
  355. package/__cjs/react/hooks/useReadQuery.d.cts +24 -0
  356. package/__cjs/react/hooks/useSubscription.cjs +227 -0
  357. package/__cjs/react/hooks/useSubscription.cjs.map +1 -0
  358. package/__cjs/react/hooks/useSubscription.d.cts +178 -0
  359. package/__cjs/react/hooks/useSuspenseFragment.cjs +51 -0
  360. package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -0
  361. package/__cjs/react/hooks/useSuspenseFragment.d.cts +47 -0
  362. package/__cjs/react/hooks/useSuspenseQuery.cjs +124 -0
  363. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -0
  364. package/__cjs/react/hooks/useSuspenseQuery.d.cts +204 -0
  365. package/__cjs/react/hooks/useSyncExternalStore.cjs +134 -0
  366. package/__cjs/react/hooks/useSyncExternalStore.cjs.map +1 -0
  367. package/__cjs/react/hooks/useSyncExternalStore.d.cts +4 -0
  368. package/__cjs/react/index.cjs +42 -0
  369. package/__cjs/react/index.cjs.map +1 -0
  370. package/__cjs/react/index.d.cts +25 -0
  371. package/__cjs/react/index.react-server.cjs +48 -0
  372. package/__cjs/react/index.react-server.cjs.map +1 -0
  373. package/__cjs/react/index.react-server.d.cts +19 -0
  374. package/__cjs/react/internal/cache/FragmentReference.cjs +135 -0
  375. package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -0
  376. package/__cjs/react/internal/cache/FragmentReference.d.cts +38 -0
  377. package/__cjs/react/internal/cache/QueryReference.cjs +298 -0
  378. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -0
  379. package/__cjs/react/internal/cache/QueryReference.d.cts +105 -0
  380. package/__cjs/react/internal/cache/SuspenseCache.cjs +44 -0
  381. package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -0
  382. package/__cjs/react/internal/cache/SuspenseCache.d.cts +29 -0
  383. package/__cjs/react/internal/cache/getSuspenseCache.cjs +12 -0
  384. package/__cjs/react/internal/cache/getSuspenseCache.cjs.map +1 -0
  385. package/__cjs/react/internal/cache/getSuspenseCache.d.cts +16 -0
  386. package/__cjs/react/internal/cache/types.cjs +3 -0
  387. package/__cjs/react/internal/cache/types.cjs.map +1 -0
  388. package/__cjs/react/internal/cache/types.d.cts +18 -0
  389. package/__cjs/react/internal/index.cjs +15 -0
  390. package/__cjs/react/internal/index.cjs.map +1 -0
  391. package/__cjs/react/internal/index.d.cts +9 -0
  392. package/__cjs/react/internal/types.cjs +3 -0
  393. package/__cjs/react/internal/types.cjs.map +1 -0
  394. package/__cjs/react/internal/types.d.cts +4 -0
  395. package/__cjs/react/query-preloader/createQueryPreloader.cjs +45 -0
  396. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -0
  397. package/__cjs/react/query-preloader/createQueryPreloader.d.cts +247 -0
  398. package/__cjs/react/ssr/getDataFromTree.cjs +43 -0
  399. package/__cjs/react/ssr/getDataFromTree.cjs.map +1 -0
  400. package/__cjs/react/ssr/getDataFromTree.d.cts +25 -0
  401. package/__cjs/react/ssr/index.cjs +11 -0
  402. package/__cjs/react/ssr/index.cjs.map +1 -0
  403. package/__cjs/react/ssr/index.d.cts +4 -0
  404. package/__cjs/react/ssr/prerenderStatic.cjs +158 -0
  405. package/__cjs/react/ssr/prerenderStatic.cjs.map +1 -0
  406. package/__cjs/react/ssr/prerenderStatic.d.cts +122 -0
  407. package/__cjs/react/ssr/renderToStringWithData.cjs +18 -0
  408. package/__cjs/react/ssr/renderToStringWithData.cjs.map +1 -0
  409. package/__cjs/react/ssr/renderToStringWithData.d.cts +8 -0
  410. package/__cjs/react/ssr/useSSRQuery.cjs +70 -0
  411. package/__cjs/react/ssr/useSSRQuery.cjs.map +1 -0
  412. package/__cjs/react/ssr/useSSRQuery.d.cts +5 -0
  413. package/__cjs/react/types/deprecated.cjs +3 -0
  414. package/__cjs/react/types/deprecated.cjs.map +1 -0
  415. package/__cjs/react/types/deprecated.d.cts +75 -0
  416. package/__cjs/react/types/types.documentation.cjs +3 -0
  417. package/__cjs/react/types/types.documentation.cjs.map +1 -0
  418. package/__cjs/react/types/types.documentation.d.cts +534 -0
  419. package/__cjs/testing/core/mocking/mockLink.cjs +193 -0
  420. package/__cjs/testing/core/mocking/mockLink.cjs.map +1 -0
  421. package/__cjs/testing/core/mocking/mockLink.d.cts +64 -0
  422. package/__cjs/testing/core/mocking/mockSubscriptionLink.cjs +56 -0
  423. package/__cjs/testing/core/mocking/mockSubscriptionLink.cjs.map +1 -0
  424. package/__cjs/testing/core/mocking/mockSubscriptionLink.d.cts +23 -0
  425. package/__cjs/testing/core/types/deprecated.cjs +3 -0
  426. package/__cjs/testing/core/types/deprecated.cjs.map +1 -0
  427. package/__cjs/testing/core/types/deprecated.d.cts +10 -0
  428. package/__cjs/testing/index.cjs +9 -0
  429. package/__cjs/testing/index.cjs.map +1 -0
  430. package/__cjs/testing/index.d.cts +4 -0
  431. package/__cjs/testing/react/MockedProvider.cjs +43 -0
  432. package/__cjs/testing/react/MockedProvider.cjs.map +1 -0
  433. package/__cjs/testing/react/MockedProvider.d.cts +33 -0
  434. package/__cjs/testing/react/index.cjs +6 -0
  435. package/__cjs/testing/react/index.cjs.map +1 -0
  436. package/__cjs/testing/react/index.d.cts +3 -0
  437. package/__cjs/utilities/DeepPartial.cjs +7 -0
  438. package/__cjs/utilities/DeepPartial.cjs.map +1 -0
  439. package/__cjs/utilities/DeepPartial.d.cts +15 -0
  440. package/__cjs/utilities/HKT.cjs +3 -0
  441. package/__cjs/utilities/HKT.cjs.map +1 -0
  442. package/__cjs/utilities/HKT.d.cts +35 -0
  443. package/__cjs/utilities/caching/index.cjs +6 -0
  444. package/__cjs/utilities/caching/index.cjs.map +1 -0
  445. package/__cjs/utilities/caching/index.d.cts +3 -0
  446. package/__cjs/utilities/caching/sizes.cjs +29 -0
  447. package/__cjs/utilities/caching/sizes.cjs.map +1 -0
  448. package/__cjs/utilities/caching/sizes.d.cts +299 -0
  449. package/__cjs/utilities/common/stripTypename.cjs +14 -0
  450. package/__cjs/utilities/common/stripTypename.cjs.map +1 -0
  451. package/__cjs/utilities/common/stripTypename.d.cts +8 -0
  452. package/__cjs/utilities/environment/index.cjs +5 -0
  453. package/__cjs/utilities/environment/index.cjs.map +1 -0
  454. package/__cjs/utilities/environment/index.d.cts +2 -0
  455. package/__cjs/utilities/environment/index.development.cjs +5 -0
  456. package/__cjs/utilities/environment/index.development.cjs.map +1 -0
  457. package/__cjs/utilities/environment/index.development.d.cts +2 -0
  458. package/__cjs/utilities/environment/index.production.cjs +5 -0
  459. package/__cjs/utilities/environment/index.production.cjs.map +1 -0
  460. package/__cjs/utilities/environment/index.production.d.cts +2 -0
  461. package/__cjs/utilities/graphql/DocumentTransform.cjs +107 -0
  462. package/__cjs/utilities/graphql/DocumentTransform.cjs.map +1 -0
  463. package/__cjs/utilities/graphql/DocumentTransform.d.cts +54 -0
  464. package/__cjs/utilities/graphql/isFormattedExecutionResult.cjs +9 -0
  465. package/__cjs/utilities/graphql/isFormattedExecutionResult.cjs.map +1 -0
  466. package/__cjs/utilities/graphql/isFormattedExecutionResult.d.cts +3 -0
  467. package/__cjs/utilities/graphql/operations.cjs +40 -0
  468. package/__cjs/utilities/graphql/operations.cjs.map +1 -0
  469. package/__cjs/utilities/graphql/operations.d.cts +26 -0
  470. package/__cjs/utilities/graphql/print.cjs +33 -0
  471. package/__cjs/utilities/graphql/print.cjs.map +1 -0
  472. package/__cjs/utilities/graphql/print.d.cts +13 -0
  473. package/__cjs/utilities/graphql/storeUtils.cjs +12 -0
  474. package/__cjs/utilities/graphql/storeUtils.cjs.map +1 -0
  475. package/__cjs/utilities/graphql/storeUtils.d.cts +43 -0
  476. package/__cjs/utilities/graphql/transform.cjs +63 -0
  477. package/__cjs/utilities/graphql/transform.cjs.map +1 -0
  478. package/__cjs/utilities/graphql/transform.d.cts +10 -0
  479. package/__cjs/utilities/index.cjs +30 -0
  480. package/__cjs/utilities/index.cjs.map +1 -0
  481. package/__cjs/utilities/index.d.cts +17 -0
  482. package/__cjs/utilities/internal/DeepMerger.cjs +67 -0
  483. package/__cjs/utilities/internal/DeepMerger.cjs.map +1 -0
  484. package/__cjs/utilities/internal/DeepMerger.d.cts +17 -0
  485. package/__cjs/utilities/internal/argumentsObjectFromField.cjs +18 -0
  486. package/__cjs/utilities/internal/argumentsObjectFromField.cjs.map +1 -0
  487. package/__cjs/utilities/internal/argumentsObjectFromField.d.cts +8 -0
  488. package/__cjs/utilities/internal/caches.cjs +76 -0
  489. package/__cjs/utilities/internal/caches.cjs.map +1 -0
  490. package/__cjs/utilities/internal/caches.d.cts +42 -0
  491. package/__cjs/utilities/internal/canUseDOM.cjs +11 -0
  492. package/__cjs/utilities/internal/canUseDOM.cjs.map +1 -0
  493. package/__cjs/utilities/internal/canUseDOM.d.cts +7 -0
  494. package/__cjs/utilities/internal/checkDocument.cjs +69 -0
  495. package/__cjs/utilities/internal/checkDocument.cjs.map +1 -0
  496. package/__cjs/utilities/internal/checkDocument.d.cts +10 -0
  497. package/__cjs/utilities/internal/cloneDeep.cjs +45 -0
  498. package/__cjs/utilities/internal/cloneDeep.cjs.map +1 -0
  499. package/__cjs/utilities/internal/cloneDeep.d.cts +9 -0
  500. package/__cjs/utilities/internal/compact.cjs +26 -0
  501. package/__cjs/utilities/internal/compact.cjs.map +1 -0
  502. package/__cjs/utilities/internal/compact.d.cts +11 -0
  503. package/__cjs/utilities/internal/createFragmentMap.cjs +19 -0
  504. package/__cjs/utilities/internal/createFragmentMap.cjs.map +1 -0
  505. package/__cjs/utilities/internal/createFragmentMap.d.cts +12 -0
  506. package/__cjs/utilities/internal/createFulfilledPromise.cjs +15 -0
  507. package/__cjs/utilities/internal/createFulfilledPromise.cjs.map +1 -0
  508. package/__cjs/utilities/internal/createFulfilledPromise.d.cts +8 -0
  509. package/__cjs/utilities/internal/createRejectedPromise.cjs +17 -0
  510. package/__cjs/utilities/internal/createRejectedPromise.cjs.map +1 -0
  511. package/__cjs/utilities/internal/createRejectedPromise.d.cts +8 -0
  512. package/__cjs/utilities/internal/dealias.cjs +21 -0
  513. package/__cjs/utilities/internal/dealias.cjs.map +1 -0
  514. package/__cjs/utilities/internal/dealias.d.cts +5 -0
  515. package/__cjs/utilities/internal/decoratePromise.cjs +33 -0
  516. package/__cjs/utilities/internal/decoratePromise.cjs.map +1 -0
  517. package/__cjs/utilities/internal/decoratePromise.d.cts +8 -0
  518. package/__cjs/utilities/internal/deepFreeze.cjs +39 -0
  519. package/__cjs/utilities/internal/deepFreeze.cjs.map +1 -0
  520. package/__cjs/utilities/internal/deepFreeze.d.cts +7 -0
  521. package/__cjs/utilities/internal/filterMap.cjs +31 -0
  522. package/__cjs/utilities/internal/filterMap.cjs.map +1 -0
  523. package/__cjs/utilities/internal/filterMap.d.cts +4 -0
  524. package/__cjs/utilities/internal/getDefaultValues.cjs +22 -0
  525. package/__cjs/utilities/internal/getDefaultValues.cjs.map +1 -0
  526. package/__cjs/utilities/internal/getDefaultValues.d.cts +8 -0
  527. package/__cjs/utilities/internal/getFragmentDefinition.cjs +17 -0
  528. package/__cjs/utilities/internal/getFragmentDefinition.cjs.map +1 -0
  529. package/__cjs/utilities/internal/getFragmentDefinition.d.cts +8 -0
  530. package/__cjs/utilities/internal/getFragmentDefinitions.cjs +12 -0
  531. package/__cjs/utilities/internal/getFragmentDefinitions.cjs.map +1 -0
  532. package/__cjs/utilities/internal/getFragmentDefinitions.d.cts +8 -0
  533. package/__cjs/utilities/internal/getFragmentFromSelection.cjs +27 -0
  534. package/__cjs/utilities/internal/getFragmentFromSelection.cjs.map +1 -0
  535. package/__cjs/utilities/internal/getFragmentFromSelection.d.cts +10 -0
  536. package/__cjs/utilities/internal/getFragmentQueryDocument.cjs +86 -0
  537. package/__cjs/utilities/internal/getFragmentQueryDocument.cjs.map +1 -0
  538. package/__cjs/utilities/internal/getFragmentQueryDocument.d.cts +29 -0
  539. package/__cjs/utilities/internal/getGraphQLErrorsFromResult.cjs +12 -0
  540. package/__cjs/utilities/internal/getGraphQLErrorsFromResult.cjs.map +1 -0
  541. package/__cjs/utilities/internal/getGraphQLErrorsFromResult.d.cts +10 -0
  542. package/__cjs/utilities/internal/getMainDefinition.cjs +38 -0
  543. package/__cjs/utilities/internal/getMainDefinition.cjs.map +1 -0
  544. package/__cjs/utilities/internal/getMainDefinition.d.cts +12 -0
  545. package/__cjs/utilities/internal/getMemoryInternals.cjs +132 -0
  546. package/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -0
  547. package/__cjs/utilities/internal/getMemoryInternals.d.cts +80 -0
  548. package/__cjs/utilities/internal/getOperationDefinition.cjs +14 -0
  549. package/__cjs/utilities/internal/getOperationDefinition.cjs.map +1 -0
  550. package/__cjs/utilities/internal/getOperationDefinition.d.cts +8 -0
  551. package/__cjs/utilities/internal/getOperationName.cjs +12 -0
  552. package/__cjs/utilities/internal/getOperationName.cjs.map +1 -0
  553. package/__cjs/utilities/internal/getOperationName.d.cts +8 -0
  554. package/__cjs/utilities/internal/getQueryDefinition.cjs +16 -0
  555. package/__cjs/utilities/internal/getQueryDefinition.cjs.map +1 -0
  556. package/__cjs/utilities/internal/getQueryDefinition.d.cts +8 -0
  557. package/__cjs/utilities/internal/getStoreKeyName.cjs +73 -0
  558. package/__cjs/utilities/internal/getStoreKeyName.cjs.map +1 -0
  559. package/__cjs/utilities/internal/getStoreKeyName.d.cts +16 -0
  560. package/__cjs/utilities/internal/globals/global.cjs +17 -0
  561. package/__cjs/utilities/internal/globals/global.cjs.map +1 -0
  562. package/__cjs/utilities/internal/globals/global.d.cts +3 -0
  563. package/__cjs/utilities/internal/globals/index.cjs +9 -0
  564. package/__cjs/utilities/internal/globals/index.cjs.map +1 -0
  565. package/__cjs/utilities/internal/globals/index.d.cts +3 -0
  566. package/__cjs/utilities/internal/globals/maybe.cjs +10 -0
  567. package/__cjs/utilities/internal/globals/maybe.cjs.map +1 -0
  568. package/__cjs/utilities/internal/globals/maybe.d.cts +2 -0
  569. package/__cjs/utilities/internal/graphQLResultHasError.cjs +12 -0
  570. package/__cjs/utilities/internal/graphQLResultHasError.cjs.map +1 -0
  571. package/__cjs/utilities/internal/graphQLResultHasError.d.cts +8 -0
  572. package/__cjs/utilities/internal/hasDirectives.cjs +24 -0
  573. package/__cjs/utilities/internal/hasDirectives.cjs.map +1 -0
  574. package/__cjs/utilities/internal/hasDirectives.d.cts +8 -0
  575. package/__cjs/utilities/internal/hasForcedResolvers.cjs +23 -0
  576. package/__cjs/utilities/internal/hasForcedResolvers.cjs.map +1 -0
  577. package/__cjs/utilities/internal/hasForcedResolvers.d.cts +3 -0
  578. package/__cjs/utilities/internal/index.cjs +105 -0
  579. package/__cjs/utilities/internal/index.cjs.map +1 -0
  580. package/__cjs/utilities/internal/index.d.cts +64 -0
  581. package/__cjs/utilities/internal/index.production.cjs +11 -0
  582. package/__cjs/utilities/internal/index.production.cjs.map +1 -0
  583. package/__cjs/utilities/internal/index.production.d.cts +3 -0
  584. package/__cjs/utilities/internal/isArray.cjs +12 -0
  585. package/__cjs/utilities/internal/isArray.cjs.map +1 -0
  586. package/__cjs/utilities/internal/isArray.d.cts +9 -0
  587. package/__cjs/utilities/internal/isDocumentNode.cjs +15 -0
  588. package/__cjs/utilities/internal/isDocumentNode.cjs.map +1 -0
  589. package/__cjs/utilities/internal/isDocumentNode.d.cts +8 -0
  590. package/__cjs/utilities/internal/isField.cjs +12 -0
  591. package/__cjs/utilities/internal/isField.cjs.map +1 -0
  592. package/__cjs/utilities/internal/isField.d.cts +8 -0
  593. package/__cjs/utilities/internal/isNonEmptyArray.cjs +12 -0
  594. package/__cjs/utilities/internal/isNonEmptyArray.cjs.map +1 -0
  595. package/__cjs/utilities/internal/isNonEmptyArray.d.cts +7 -0
  596. package/__cjs/utilities/internal/isNonNullObject.cjs +12 -0
  597. package/__cjs/utilities/internal/isNonNullObject.cjs.map +1 -0
  598. package/__cjs/utilities/internal/isNonNullObject.d.cts +7 -0
  599. package/__cjs/utilities/internal/isPlainObject.cjs +15 -0
  600. package/__cjs/utilities/internal/isPlainObject.cjs.map +1 -0
  601. package/__cjs/utilities/internal/isPlainObject.d.cts +7 -0
  602. package/__cjs/utilities/internal/makeReference.cjs +12 -0
  603. package/__cjs/utilities/internal/makeReference.cjs.map +1 -0
  604. package/__cjs/utilities/internal/makeReference.d.cts +8 -0
  605. package/__cjs/utilities/internal/makeUniqueId.cjs +18 -0
  606. package/__cjs/utilities/internal/makeUniqueId.cjs.map +1 -0
  607. package/__cjs/utilities/internal/makeUniqueId.d.cts +10 -0
  608. package/__cjs/utilities/internal/maybeDeepFreeze.cjs +17 -0
  609. package/__cjs/utilities/internal/maybeDeepFreeze.cjs.map +1 -0
  610. package/__cjs/utilities/internal/maybeDeepFreeze.d.cts +7 -0
  611. package/__cjs/utilities/internal/mergeDeep.cjs +26 -0
  612. package/__cjs/utilities/internal/mergeDeep.cjs.map +1 -0
  613. package/__cjs/utilities/internal/mergeDeep.d.cts +8 -0
  614. package/__cjs/utilities/internal/mergeDeepArray.cjs +27 -0
  615. package/__cjs/utilities/internal/mergeDeepArray.cjs.map +1 -0
  616. package/__cjs/utilities/internal/mergeDeepArray.d.cts +7 -0
  617. package/__cjs/utilities/internal/mergeOptions.cjs +18 -0
  618. package/__cjs/utilities/internal/mergeOptions.cjs.map +1 -0
  619. package/__cjs/utilities/internal/mergeOptions.d.cts +10 -0
  620. package/__cjs/utilities/internal/omitDeep.cjs +48 -0
  621. package/__cjs/utilities/internal/omitDeep.cjs.map +1 -0
  622. package/__cjs/utilities/internal/omitDeep.d.cts +8 -0
  623. package/__cjs/utilities/internal/preventUnhandledRejection.cjs +8 -0
  624. package/__cjs/utilities/internal/preventUnhandledRejection.cjs.map +1 -0
  625. package/__cjs/utilities/internal/preventUnhandledRejection.d.cts +2 -0
  626. package/__cjs/utilities/internal/removeDirectivesFromDocument.cjs +306 -0
  627. package/__cjs/utilities/internal/removeDirectivesFromDocument.cjs.map +1 -0
  628. package/__cjs/utilities/internal/removeDirectivesFromDocument.d.cts +14 -0
  629. package/__cjs/utilities/internal/resultKeyNameFromField.cjs +12 -0
  630. package/__cjs/utilities/internal/resultKeyNameFromField.cjs.map +1 -0
  631. package/__cjs/utilities/internal/resultKeyNameFromField.d.cts +8 -0
  632. package/__cjs/utilities/internal/shouldInclude.cjs +50 -0
  633. package/__cjs/utilities/internal/shouldInclude.cjs.map +1 -0
  634. package/__cjs/utilities/internal/shouldInclude.d.cts +8 -0
  635. package/__cjs/utilities/internal/storeKeyNameFromField.cjs +29 -0
  636. package/__cjs/utilities/internal/storeKeyNameFromField.cjs.map +1 -0
  637. package/__cjs/utilities/internal/storeKeyNameFromField.d.cts +8 -0
  638. package/__cjs/utilities/internal/stringifyForDisplay.cjs +18 -0
  639. package/__cjs/utilities/internal/stringifyForDisplay.cjs.map +1 -0
  640. package/__cjs/utilities/internal/stringifyForDisplay.d.cts +7 -0
  641. package/__cjs/utilities/internal/toQueryResult.cjs +18 -0
  642. package/__cjs/utilities/internal/toQueryResult.cjs.map +1 -0
  643. package/__cjs/utilities/internal/toQueryResult.d.cts +8 -0
  644. package/__cjs/utilities/internal/types/ApplyHKT.cjs +3 -0
  645. package/__cjs/utilities/internal/types/ApplyHKT.cjs.map +1 -0
  646. package/__cjs/utilities/internal/types/ApplyHKT.d.cts +13 -0
  647. package/__cjs/utilities/internal/types/ApplyHKTImplementationWithDefault.cjs +3 -0
  648. package/__cjs/utilities/internal/types/ApplyHKTImplementationWithDefault.cjs.map +1 -0
  649. package/__cjs/utilities/internal/types/ApplyHKTImplementationWithDefault.d.cts +11 -0
  650. package/__cjs/utilities/internal/types/DecoratedPromise.cjs +3 -0
  651. package/__cjs/utilities/internal/types/DecoratedPromise.cjs.map +1 -0
  652. package/__cjs/utilities/internal/types/DecoratedPromise.d.cts +10 -0
  653. package/__cjs/utilities/internal/types/DeepOmit.cjs +3 -0
  654. package/__cjs/utilities/internal/types/DeepOmit.cjs.map +1 -0
  655. package/__cjs/utilities/internal/types/DeepOmit.d.cts +15 -0
  656. package/__cjs/utilities/internal/types/FragmentMap.cjs +3 -0
  657. package/__cjs/utilities/internal/types/FragmentMap.cjs.map +1 -0
  658. package/__cjs/utilities/internal/types/FragmentMap.d.cts +12 -0
  659. package/__cjs/utilities/internal/types/FragmentMapFunction.cjs +3 -0
  660. package/__cjs/utilities/internal/types/FragmentMapFunction.cjs.map +1 -0
  661. package/__cjs/utilities/internal/types/FragmentMapFunction.d.cts +8 -0
  662. package/__cjs/utilities/internal/types/FulfilledPromise.cjs +3 -0
  663. package/__cjs/utilities/internal/types/FulfilledPromise.cjs.map +1 -0
  664. package/__cjs/utilities/internal/types/FulfilledPromise.d.cts +10 -0
  665. package/__cjs/utilities/internal/types/IsAny.cjs +3 -0
  666. package/__cjs/utilities/internal/types/IsAny.cjs.map +1 -0
  667. package/__cjs/utilities/internal/types/IsAny.d.cts +7 -0
  668. package/__cjs/utilities/internal/types/NoInfer.cjs +3 -0
  669. package/__cjs/utilities/internal/types/NoInfer.cjs.map +1 -0
  670. package/__cjs/utilities/internal/types/NoInfer.d.cts +29 -0
  671. package/__cjs/utilities/internal/types/PendingPromise.cjs +3 -0
  672. package/__cjs/utilities/internal/types/PendingPromise.cjs.map +1 -0
  673. package/__cjs/utilities/internal/types/PendingPromise.d.cts +9 -0
  674. package/__cjs/utilities/internal/types/Prettify.cjs +3 -0
  675. package/__cjs/utilities/internal/types/Prettify.cjs.map +1 -0
  676. package/__cjs/utilities/internal/types/Prettify.d.cts +9 -0
  677. package/__cjs/utilities/internal/types/Primitive.cjs +3 -0
  678. package/__cjs/utilities/internal/types/Primitive.cjs.map +1 -0
  679. package/__cjs/utilities/internal/types/Primitive.d.cts +7 -0
  680. package/__cjs/utilities/internal/types/RejectedPromise.cjs +3 -0
  681. package/__cjs/utilities/internal/types/RejectedPromise.cjs.map +1 -0
  682. package/__cjs/utilities/internal/types/RejectedPromise.d.cts +10 -0
  683. package/__cjs/utilities/internal/types/RemoveIndexSignature.cjs +3 -0
  684. package/__cjs/utilities/internal/types/RemoveIndexSignature.cjs.map +1 -0
  685. package/__cjs/utilities/internal/types/RemoveIndexSignature.d.cts +9 -0
  686. package/__cjs/utilities/internal/types/TupleToIntersection.cjs +3 -0
  687. package/__cjs/utilities/internal/types/TupleToIntersection.cjs.map +1 -0
  688. package/__cjs/utilities/internal/types/TupleToIntersection.d.cts +2 -0
  689. package/__cjs/utilities/internal/types/VariablesOption.cjs +3 -0
  690. package/__cjs/utilities/internal/types/VariablesOption.cjs.map +1 -0
  691. package/__cjs/utilities/internal/types/VariablesOption.d.cts +30 -0
  692. package/__cjs/utilities/internal/valueToObjectRepresentation.cjs +44 -0
  693. package/__cjs/utilities/internal/valueToObjectRepresentation.cjs.map +1 -0
  694. package/__cjs/utilities/internal/valueToObjectRepresentation.d.cts +8 -0
  695. package/__cjs/utilities/invariant/index.cjs +97 -0
  696. package/__cjs/utilities/invariant/index.cjs.map +1 -0
  697. package/__cjs/utilities/invariant/index.d.cts +47 -0
  698. package/__cjs/utilities/invariant/index.development.cjs +16 -0
  699. package/__cjs/utilities/invariant/index.development.cjs.map +1 -0
  700. package/__cjs/utilities/invariant/index.development.d.cts +4 -0
  701. package/__cjs/utilities/policies/pagination.cjs +238 -0
  702. package/__cjs/utilities/policies/pagination.cjs.map +1 -0
  703. package/__cjs/utilities/policies/pagination.d.cts +51 -0
  704. package/__cjs/utilities/shared/canonicalStringify.cjs +91 -0
  705. package/__cjs/utilities/shared/canonicalStringify.cjs.map +1 -0
  706. package/__cjs/utilities/shared/canonicalStringify.d.cts +21 -0
  707. package/__cjs/utilities/subscriptions/relay/index.cjs +55 -0
  708. package/__cjs/utilities/subscriptions/relay/index.cjs.map +1 -0
  709. package/__cjs/utilities/subscriptions/relay/index.d.cts +10 -0
  710. package/__cjs/version.cjs +6 -0
  711. package/__cjs/version.cjs.map +1 -0
  712. package/__cjs/version.d.cts +3 -0
  713. package/cache/core/cache.d.ts +55 -41
  714. package/cache/core/cache.js +126 -91
  715. package/cache/core/cache.js.map +1 -1
  716. package/cache/core/types/Cache.d.ts +13 -20
  717. package/cache/core/types/Cache.js +1 -1
  718. package/cache/core/types/Cache.js.map +1 -1
  719. package/cache/core/types/DataProxy.d.ts +18 -28
  720. package/cache/core/types/DataProxy.js +1 -1
  721. package/cache/core/types/DataProxy.js.map +1 -1
  722. package/cache/core/types/common.d.ts +2 -2
  723. package/cache/core/types/common.js +21 -21
  724. package/cache/core/types/common.js.map +1 -1
  725. package/cache/index.d.ts +9 -10
  726. package/cache/index.js +4 -6
  727. package/cache/index.js.map +1 -1
  728. package/cache/inmemory/entityStore.d.ts +9 -8
  729. package/cache/inmemory/entityStore.js +276 -277
  730. package/cache/inmemory/entityStore.js.map +1 -1
  731. package/cache/inmemory/fragmentRegistry.d.ts +1 -1
  732. package/cache/inmemory/fragmentRegistry.js +52 -66
  733. package/cache/inmemory/fragmentRegistry.js.map +1 -1
  734. package/cache/inmemory/helpers.d.ts +7 -14
  735. package/cache/inmemory/helpers.js +21 -35
  736. package/cache/inmemory/helpers.js.map +1 -1
  737. package/cache/inmemory/inMemoryCache.d.ts +23 -22
  738. package/cache/inmemory/inMemoryCache.js +154 -183
  739. package/cache/inmemory/inMemoryCache.js.map +1 -1
  740. package/cache/inmemory/key-extractor.d.ts +2 -2
  741. package/cache/inmemory/key-extractor.js +42 -49
  742. package/cache/inmemory/key-extractor.js.map +1 -1
  743. package/cache/inmemory/policies.d.ts +8 -7
  744. package/cache/inmemory/policies.js +191 -195
  745. package/cache/inmemory/policies.js.map +1 -1
  746. package/cache/inmemory/reactiveVars.d.ts +10 -9
  747. package/cache/inmemory/reactiveVars.js +17 -17
  748. package/cache/inmemory/reactiveVars.js.map +1 -1
  749. package/cache/inmemory/readFromStore.d.ts +6 -19
  750. package/cache/inmemory/readFromStore.js +113 -154
  751. package/cache/inmemory/readFromStore.js.map +1 -1
  752. package/cache/inmemory/types.d.ts +8 -23
  753. package/cache/inmemory/types.js +1 -1
  754. package/cache/inmemory/types.js.map +1 -1
  755. package/cache/inmemory/writeToStore.d.ts +8 -7
  756. package/cache/inmemory/writeToStore.js +206 -164
  757. package/cache/inmemory/writeToStore.js.map +1 -1
  758. package/core/ApolloClient.d.ts +68 -84
  759. package/core/ApolloClient.js +278 -222
  760. package/core/ApolloClient.js.map +1 -1
  761. package/core/ObservableQuery.d.ts +310 -75
  762. package/core/ObservableQuery.js +977 -597
  763. package/core/ObservableQuery.js.map +1 -1
  764. package/core/QueryInfo.d.ts +56 -42
  765. package/core/QueryInfo.js +288 -235
  766. package/core/QueryInfo.js.map +1 -1
  767. package/core/QueryManager.d.ts +77 -77
  768. package/core/QueryManager.js +789 -855
  769. package/core/QueryManager.js.map +1 -1
  770. package/core/equalByQuery.d.ts +1 -1
  771. package/core/equalByQuery.js +16 -19
  772. package/core/equalByQuery.js.map +1 -1
  773. package/core/index.d.ts +18 -20
  774. package/core/index.js +14 -15
  775. package/core/index.js.map +1 -1
  776. package/core/networkStatus.d.ts +8 -2
  777. package/core/networkStatus.js +8 -2
  778. package/core/networkStatus.js.map +1 -1
  779. package/core/types.d.ts +237 -36
  780. package/core/types.js +1 -1
  781. package/core/types.js.map +1 -1
  782. package/core/watchQueryOptions.d.ts +235 -373
  783. package/core/watchQueryOptions.js +1 -1
  784. package/core/watchQueryOptions.js.map +1 -1
  785. package/dev/index.d.ts +1 -1
  786. package/dev/index.js +1 -1
  787. package/dev/index.js.map +1 -1
  788. package/dev/loadDevMessages.d.ts +1 -1
  789. package/dev/loadDevMessages.js +1 -1
  790. package/dev/loadDevMessages.js.map +1 -1
  791. package/dev/loadErrorMessageHandler.d.ts +1 -1
  792. package/dev/loadErrorMessageHandler.js +9 -14
  793. package/dev/loadErrorMessageHandler.js.map +1 -1
  794. package/dev/loadErrorMessages.d.ts +1 -1
  795. package/dev/loadErrorMessages.js +1 -1
  796. package/dev/loadErrorMessages.js.map +1 -1
  797. package/dev/setErrorMessageHandler.d.ts +1 -1
  798. package/dev/setErrorMessageHandler.js +3 -3
  799. package/dev/setErrorMessageHandler.js.map +1 -1
  800. package/dev/symbol.d.ts +10 -0
  801. package/dev/symbol.js +4 -0
  802. package/dev/symbol.js.map +1 -0
  803. package/errors/CombinedGraphQLErrors.d.ts +37 -0
  804. package/errors/CombinedGraphQLErrors.js +48 -0
  805. package/errors/CombinedGraphQLErrors.js.map +1 -0
  806. package/errors/CombinedProtocolErrors.d.ts +20 -0
  807. package/errors/CombinedProtocolErrors.js +27 -0
  808. package/errors/CombinedProtocolErrors.js.map +1 -0
  809. package/errors/LinkError.d.ts +18 -0
  810. package/errors/LinkError.js +20 -0
  811. package/errors/LinkError.js.map +1 -0
  812. package/errors/LocalStateError.d.ts +20 -0
  813. package/errors/LocalStateError.js +23 -0
  814. package/errors/LocalStateError.js.map +1 -0
  815. package/errors/ServerError.d.ts +27 -0
  816. package/errors/ServerError.js +32 -0
  817. package/errors/ServerError.js.map +1 -0
  818. package/errors/ServerParseError.d.ts +26 -0
  819. package/errors/ServerParseError.js +34 -0
  820. package/errors/ServerParseError.js.map +1 -0
  821. package/errors/UnconventionalError.d.ts +11 -0
  822. package/errors/UnconventionalError.js +19 -0
  823. package/errors/UnconventionalError.js.map +1 -0
  824. package/errors/index.d.ts +11 -45
  825. package/errors/index.js +23 -52
  826. package/errors/index.js.map +1 -1
  827. package/errors/isErrorLike.d.ts +3 -0
  828. package/errors/isErrorLike.js +9 -0
  829. package/errors/isErrorLike.js.map +1 -0
  830. package/errors/utils.d.ts +3 -0
  831. package/errors/utils.js +14 -0
  832. package/errors/utils.js.map +1 -0
  833. package/incremental/handlers/defer20220824.d.ts +55 -0
  834. package/incremental/handlers/defer20220824.js +97 -0
  835. package/incremental/handlers/defer20220824.js.map +1 -0
  836. package/incremental/handlers/notImplemented.d.ts +9 -0
  837. package/incremental/handlers/notImplemented.js +15 -0
  838. package/incremental/handlers/notImplemented.js.map +1 -0
  839. package/incremental/index.d.ts +4 -0
  840. package/incremental/index.js +3 -0
  841. package/incremental/index.js.map +1 -0
  842. package/incremental/types.d.ts +24 -0
  843. package/incremental/types.js +2 -0
  844. package/incremental/types.js.map +1 -0
  845. package/invariantErrorCodes.d.ts +1 -1
  846. package/invariantErrorCodes.js +454 -351
  847. package/invariantErrorCodes.js.map +1 -1
  848. package/legacyEntryPoints/apollo-client.cjs +1 -0
  849. package/legacyEntryPoints/apollo-client.d.cts +1 -0
  850. package/legacyEntryPoints/cache/cache.cjs +1 -0
  851. package/legacyEntryPoints/cache/cache.d.cts +1 -0
  852. package/legacyEntryPoints/cache/index.d.ts +1 -0
  853. package/legacyEntryPoints/cache/index.js +1 -0
  854. package/legacyEntryPoints/core/core.cjs +1 -0
  855. package/legacyEntryPoints/core/core.d.cts +1 -0
  856. package/legacyEntryPoints/core/index.d.ts +1 -0
  857. package/legacyEntryPoints/core/index.js +1 -0
  858. package/legacyEntryPoints/dev/dev.cjs +1 -0
  859. package/legacyEntryPoints/dev/dev.d.cts +1 -0
  860. package/legacyEntryPoints/dev/index.d.ts +1 -0
  861. package/legacyEntryPoints/dev/index.js +1 -0
  862. package/legacyEntryPoints/errors/errors.cjs +1 -0
  863. package/legacyEntryPoints/errors/errors.d.cts +1 -0
  864. package/legacyEntryPoints/errors/index.d.ts +1 -0
  865. package/legacyEntryPoints/errors/index.js +1 -0
  866. package/legacyEntryPoints/incremental/incremental.cjs +1 -0
  867. package/legacyEntryPoints/incremental/incremental.d.cts +1 -0
  868. package/legacyEntryPoints/incremental/index.d.ts +1 -0
  869. package/legacyEntryPoints/incremental/index.js +1 -0
  870. package/legacyEntryPoints/index.d.ts +1 -0
  871. package/legacyEntryPoints/index.js +1 -0
  872. package/legacyEntryPoints/link/batch/batch.cjs +1 -0
  873. package/legacyEntryPoints/link/batch/batch.d.cts +1 -0
  874. package/legacyEntryPoints/link/batch/index.d.ts +1 -0
  875. package/legacyEntryPoints/link/batch/index.js +1 -0
  876. package/legacyEntryPoints/link/batch-http/batch-http.cjs +1 -0
  877. package/legacyEntryPoints/link/batch-http/batch-http.d.cts +1 -0
  878. package/legacyEntryPoints/link/batch-http/index.d.ts +1 -0
  879. package/legacyEntryPoints/link/batch-http/index.js +1 -0
  880. package/legacyEntryPoints/link/client-awareness/client-awareness.cjs +1 -0
  881. package/legacyEntryPoints/link/client-awareness/client-awareness.d.cts +1 -0
  882. package/legacyEntryPoints/link/client-awareness/index.d.ts +1 -0
  883. package/legacyEntryPoints/link/client-awareness/index.js +1 -0
  884. package/legacyEntryPoints/link/context/context.cjs +1 -0
  885. package/legacyEntryPoints/link/context/context.d.cts +1 -0
  886. package/legacyEntryPoints/link/context/index.d.ts +1 -0
  887. package/legacyEntryPoints/link/context/index.js +1 -0
  888. package/legacyEntryPoints/link/error/error.cjs +1 -0
  889. package/legacyEntryPoints/link/error/error.d.cts +1 -0
  890. package/legacyEntryPoints/link/error/index.d.ts +1 -0
  891. package/legacyEntryPoints/link/error/index.js +1 -0
  892. package/legacyEntryPoints/link/http/http.cjs +1 -0
  893. package/legacyEntryPoints/link/http/http.d.cts +1 -0
  894. package/legacyEntryPoints/link/http/index.d.ts +1 -0
  895. package/legacyEntryPoints/link/http/index.js +1 -0
  896. package/legacyEntryPoints/link/index.d.ts +1 -0
  897. package/legacyEntryPoints/link/index.js +1 -0
  898. package/legacyEntryPoints/link/link.cjs +1 -0
  899. package/legacyEntryPoints/link/link.d.cts +1 -0
  900. package/legacyEntryPoints/link/persisted-queries/index.d.ts +1 -0
  901. package/legacyEntryPoints/link/persisted-queries/index.js +1 -0
  902. package/legacyEntryPoints/link/persisted-queries/persisted-queries.cjs +1 -0
  903. package/legacyEntryPoints/link/persisted-queries/persisted-queries.d.cts +1 -0
  904. package/legacyEntryPoints/link/remove-typename/index.d.ts +1 -0
  905. package/legacyEntryPoints/link/remove-typename/index.js +1 -0
  906. package/legacyEntryPoints/link/remove-typename/remove-typename.cjs +1 -0
  907. package/legacyEntryPoints/link/remove-typename/remove-typename.d.cts +1 -0
  908. package/legacyEntryPoints/link/retry/index.d.ts +1 -0
  909. package/legacyEntryPoints/link/retry/index.js +1 -0
  910. package/legacyEntryPoints/link/retry/retry.cjs +1 -0
  911. package/legacyEntryPoints/link/retry/retry.d.cts +1 -0
  912. package/legacyEntryPoints/link/schema/index.d.ts +1 -0
  913. package/legacyEntryPoints/link/schema/index.js +1 -0
  914. package/legacyEntryPoints/link/schema/schema.cjs +1 -0
  915. package/legacyEntryPoints/link/schema/schema.d.cts +1 -0
  916. package/legacyEntryPoints/link/subscriptions/index.d.ts +1 -0
  917. package/legacyEntryPoints/link/subscriptions/index.js +1 -0
  918. package/legacyEntryPoints/link/subscriptions/subscriptions.cjs +1 -0
  919. package/legacyEntryPoints/link/subscriptions/subscriptions.d.cts +1 -0
  920. package/legacyEntryPoints/link/utils/index.d.ts +1 -0
  921. package/legacyEntryPoints/link/utils/index.js +1 -0
  922. package/legacyEntryPoints/link/utils/utils.cjs +1 -0
  923. package/legacyEntryPoints/link/utils/utils.d.cts +1 -0
  924. package/legacyEntryPoints/link/ws/index.d.ts +1 -0
  925. package/legacyEntryPoints/link/ws/index.js +1 -0
  926. package/legacyEntryPoints/link/ws/ws.cjs +1 -0
  927. package/legacyEntryPoints/link/ws/ws.d.cts +1 -0
  928. package/legacyEntryPoints/local-state/index.d.ts +1 -0
  929. package/legacyEntryPoints/local-state/index.js +1 -0
  930. package/legacyEntryPoints/local-state/local-state.cjs +1 -0
  931. package/legacyEntryPoints/local-state/local-state.d.cts +1 -0
  932. package/legacyEntryPoints/main.cjs +1 -0
  933. package/legacyEntryPoints/main.d.cts +1 -0
  934. package/legacyEntryPoints/masking/index.d.ts +1 -0
  935. package/legacyEntryPoints/masking/index.js +1 -0
  936. package/legacyEntryPoints/masking/masking.cjs +1 -0
  937. package/legacyEntryPoints/masking/masking.d.cts +1 -0
  938. package/legacyEntryPoints/react/index.d.ts +1 -0
  939. package/legacyEntryPoints/react/index.js +1 -0
  940. package/legacyEntryPoints/react/internal/index.d.ts +1 -0
  941. package/legacyEntryPoints/react/internal/index.js +1 -0
  942. package/legacyEntryPoints/react/internal/internal.cjs +1 -0
  943. package/legacyEntryPoints/react/internal/internal.d.cts +1 -0
  944. package/legacyEntryPoints/react/react.cjs +1 -0
  945. package/legacyEntryPoints/react/react.d.cts +1 -0
  946. package/legacyEntryPoints/react/ssr/index.d.ts +1 -0
  947. package/legacyEntryPoints/react/ssr/index.js +1 -0
  948. package/legacyEntryPoints/react/ssr/ssr.cjs +1 -0
  949. package/legacyEntryPoints/react/ssr/ssr.d.cts +1 -0
  950. package/legacyEntryPoints/testing/index.d.ts +1 -0
  951. package/legacyEntryPoints/testing/index.js +1 -0
  952. package/legacyEntryPoints/testing/react/index.d.ts +1 -0
  953. package/legacyEntryPoints/testing/react/index.js +1 -0
  954. package/legacyEntryPoints/testing/react/react.cjs +1 -0
  955. package/legacyEntryPoints/testing/react/react.d.cts +1 -0
  956. package/legacyEntryPoints/testing/testing.cjs +1 -0
  957. package/legacyEntryPoints/testing/testing.d.cts +1 -0
  958. package/legacyEntryPoints/utilities/environment/environment.cjs +1 -0
  959. package/legacyEntryPoints/utilities/environment/environment.d.cts +1 -0
  960. package/legacyEntryPoints/utilities/environment/index.d.ts +1 -0
  961. package/legacyEntryPoints/utilities/environment/index.js +1 -0
  962. package/legacyEntryPoints/utilities/index.d.ts +1 -0
  963. package/legacyEntryPoints/utilities/index.js +1 -0
  964. package/legacyEntryPoints/utilities/internal/globals/globals.cjs +1 -0
  965. package/legacyEntryPoints/utilities/internal/globals/globals.d.cts +1 -0
  966. package/legacyEntryPoints/utilities/internal/globals/index.d.ts +1 -0
  967. package/legacyEntryPoints/utilities/internal/globals/index.js +1 -0
  968. package/legacyEntryPoints/utilities/internal/index.d.ts +1 -0
  969. package/legacyEntryPoints/utilities/internal/index.js +1 -0
  970. package/legacyEntryPoints/utilities/internal/internal.cjs +1 -0
  971. package/legacyEntryPoints/utilities/internal/internal.d.cts +1 -0
  972. package/legacyEntryPoints/utilities/invariant/index.d.ts +1 -0
  973. package/legacyEntryPoints/utilities/invariant/index.js +1 -0
  974. package/legacyEntryPoints/utilities/invariant/invariant.cjs +1 -0
  975. package/legacyEntryPoints/utilities/invariant/invariant.d.cts +1 -0
  976. package/legacyEntryPoints/utilities/subscriptions/relay/index.d.ts +1 -0
  977. package/legacyEntryPoints/utilities/subscriptions/relay/index.js +1 -0
  978. package/legacyEntryPoints/utilities/subscriptions/relay/relay.cjs +1 -0
  979. package/legacyEntryPoints/utilities/subscriptions/relay/relay.d.cts +1 -0
  980. package/legacyEntryPoints/utilities/utilities.cjs +1 -0
  981. package/legacyEntryPoints/utilities/utilities.d.cts +1 -0
  982. package/link/batch/batchLink.d.ts +4 -4
  983. package/link/batch/batchLink.js +19 -23
  984. package/link/batch/batchLink.js.map +1 -1
  985. package/link/batch/batching.d.ts +3 -3
  986. package/link/batch/batching.js +63 -59
  987. package/link/batch/batching.js.map +1 -1
  988. package/link/batch/index.d.ts +3 -2
  989. package/link/batch/index.js +2 -2
  990. package/link/batch/index.js.map +1 -1
  991. package/link/batch-http/batchHttpLink.d.ts +12 -7
  992. package/link/batch-http/batchHttpLink.js +63 -116
  993. package/link/batch-http/batchHttpLink.js.map +1 -1
  994. package/link/batch-http/index.d.ts +2 -2
  995. package/link/batch-http/index.js +2 -2
  996. package/link/batch-http/index.js.map +1 -1
  997. package/link/client-awareness/ClientAwarenessLink.d.ts +62 -0
  998. package/link/client-awareness/ClientAwarenessLink.js +41 -0
  999. package/link/client-awareness/ClientAwarenessLink.js.map +1 -0
  1000. package/link/client-awareness/index.d.ts +2 -0
  1001. package/link/client-awareness/index.js +2 -0
  1002. package/link/client-awareness/index.js.map +1 -0
  1003. package/link/context/index.d.ts +12 -6
  1004. package/link/context/index.js +37 -29
  1005. package/link/context/index.js.map +1 -1
  1006. package/link/core/ApolloLink.d.ts +19 -16
  1007. package/link/core/ApolloLink.js +71 -70
  1008. package/link/core/ApolloLink.js.map +1 -1
  1009. package/link/core/concat.d.ts +1 -1
  1010. package/link/core/concat.js +2 -2
  1011. package/link/core/concat.js.map +1 -1
  1012. package/link/core/empty.d.ts +1 -1
  1013. package/link/core/empty.js +2 -2
  1014. package/link/core/empty.js.map +1 -1
  1015. package/link/core/execute.d.ts +1 -1
  1016. package/link/core/execute.js +2 -2
  1017. package/link/core/execute.js.map +1 -1
  1018. package/link/core/from.d.ts +1 -1
  1019. package/link/core/from.js +2 -2
  1020. package/link/core/from.js.map +1 -1
  1021. package/link/core/split.d.ts +1 -1
  1022. package/link/core/split.js +2 -2
  1023. package/link/core/split.js.map +1 -1
  1024. package/link/core/types.d.ts +16 -38
  1025. package/link/core/types.js +1 -1
  1026. package/link/core/types.js.map +1 -1
  1027. package/link/error/index.d.ts +20 -30
  1028. package/link/error/index.js +75 -91
  1029. package/link/error/index.js.map +1 -1
  1030. package/link/http/BaseHttpLink.d.ts +6 -0
  1031. package/link/http/BaseHttpLink.js +107 -0
  1032. package/link/http/BaseHttpLink.js.map +1 -0
  1033. package/link/http/HttpLink.d.ts +146 -5
  1034. package/link/http/HttpLink.js +15 -14
  1035. package/link/http/HttpLink.js.map +1 -1
  1036. package/link/http/checkFetcher.d.ts +1 -1
  1037. package/link/http/checkFetcher.js +4 -6
  1038. package/link/http/checkFetcher.js.map +1 -1
  1039. package/link/http/createSignalIfSupported.d.ts +1 -1
  1040. package/link/http/createSignalIfSupported.js +5 -5
  1041. package/link/http/createSignalIfSupported.js.map +1 -1
  1042. package/link/http/index.d.ts +4 -7
  1043. package/link/http/index.js +4 -5
  1044. package/link/http/index.js.map +1 -1
  1045. package/link/http/parseAndCheckHttpResponse.d.ts +2 -11
  1046. package/link/http/parseAndCheckHttpResponse.js +124 -170
  1047. package/link/http/parseAndCheckHttpResponse.js.map +1 -1
  1048. package/link/http/rewriteURIForGET.d.ts +3 -3
  1049. package/link/http/rewriteURIForGET.js +13 -13
  1050. package/link/http/rewriteURIForGET.js.map +1 -1
  1051. package/link/http/selectHttpOptionsAndBody.d.ts +11 -85
  1052. package/link/http/selectHttpOptionsAndBody.js +44 -43
  1053. package/link/http/selectHttpOptionsAndBody.js.map +1 -1
  1054. package/link/http/selectURI.d.ts +2 -2
  1055. package/link/http/selectURI.js +4 -4
  1056. package/link/http/selectURI.js.map +1 -1
  1057. package/link/http/serializeFetchParameter.d.ts +2 -2
  1058. package/link/http/serializeFetchParameter.js +5 -5
  1059. package/link/http/serializeFetchParameter.js.map +1 -1
  1060. package/link/index.d.ts +8 -0
  1061. package/link/index.js +7 -0
  1062. package/link/index.js.map +1 -0
  1063. package/link/persisted-queries/index.d.ts +22 -22
  1064. package/link/persisted-queries/index.js +173 -169
  1065. package/link/persisted-queries/index.js.map +1 -1
  1066. package/link/remove-typename/index.d.ts +2 -2
  1067. package/link/remove-typename/index.js +2 -2
  1068. package/link/remove-typename/index.js.map +1 -1
  1069. package/link/remove-typename/removeTypenameFromVariables.d.ts +10 -11
  1070. package/link/remove-typename/removeTypenameFromVariables.js +54 -44
  1071. package/link/remove-typename/removeTypenameFromVariables.js.map +1 -1
  1072. package/link/retry/delayFunction.d.ts +2 -2
  1073. package/link/retry/delayFunction.js +4 -4
  1074. package/link/retry/delayFunction.js.map +1 -1
  1075. package/link/retry/index.d.ts +2 -2
  1076. package/link/retry/index.js +2 -2
  1077. package/link/retry/index.js.map +1 -1
  1078. package/link/retry/retryFunction.d.ts +2 -2
  1079. package/link/retry/retryFunction.js +2 -2
  1080. package/link/retry/retryFunction.js.map +1 -1
  1081. package/link/retry/retryLink.d.ts +4 -4
  1082. package/link/retry/retryLink.js +52 -65
  1083. package/link/retry/retryLink.js.map +1 -1
  1084. package/link/schema/index.d.ts +4 -4
  1085. package/link/schema/index.js +29 -33
  1086. package/link/schema/index.js.map +1 -1
  1087. package/link/subscriptions/index.d.ts +4 -4
  1088. package/link/subscriptions/index.js +22 -27
  1089. package/link/subscriptions/index.js.map +1 -1
  1090. package/link/utils/createOperation.d.ts +3 -3
  1091. package/link/utils/createOperation.js +11 -8
  1092. package/link/utils/createOperation.js.map +1 -1
  1093. package/link/utils/filterOperationVariables.d.ts +1 -1
  1094. package/link/utils/filterOperationVariables.js +5 -6
  1095. package/link/utils/filterOperationVariables.js.map +1 -1
  1096. package/link/utils/index.d.ts +1 -7
  1097. package/link/utils/index.js +1 -6
  1098. package/link/utils/index.js.map +1 -1
  1099. package/link/utils/transformOperation.d.ts +2 -2
  1100. package/link/utils/transformOperation.js +4 -4
  1101. package/link/utils/transformOperation.js.map +1 -1
  1102. package/link/utils/validateOperation.d.ts +2 -2
  1103. package/link/utils/validateOperation.js +5 -6
  1104. package/link/utils/validateOperation.js.map +1 -1
  1105. package/link/ws/index.d.ts +4 -4
  1106. package/link/ws/index.js +11 -15
  1107. package/link/ws/index.js.map +1 -1
  1108. package/local-state/LocalState.d.ts +88 -0
  1109. package/local-state/LocalState.js +519 -0
  1110. package/local-state/LocalState.js.map +1 -0
  1111. package/local-state/index.d.ts +2 -0
  1112. package/local-state/index.js +2 -0
  1113. package/local-state/index.js.map +1 -0
  1114. package/masking/GraphQLCodegenDataMasking.d.ts +79 -0
  1115. package/masking/GraphQLCodegenDataMasking.js +2 -0
  1116. package/masking/GraphQLCodegenDataMasking.js.map +1 -0
  1117. package/masking/index.d.ts +2 -1
  1118. package/masking/index.js +1 -1
  1119. package/masking/index.js.map +1 -1
  1120. package/masking/internal/types.d.ts +2 -3
  1121. package/masking/internal/types.js +1 -1
  1122. package/masking/internal/types.js.map +1 -1
  1123. package/masking/maskDefinition.d.ts +4 -4
  1124. package/masking/maskDefinition.js +32 -34
  1125. package/masking/maskDefinition.js.map +1 -1
  1126. package/masking/maskFragment.d.ts +8 -4
  1127. package/masking/maskFragment.js +16 -21
  1128. package/masking/maskFragment.js.map +1 -1
  1129. package/masking/maskOperation.d.ts +8 -4
  1130. package/masking/maskOperation.js +14 -18
  1131. package/masking/maskOperation.js.map +1 -1
  1132. package/masking/types.d.ts +13 -27
  1133. package/masking/types.js +1 -1
  1134. package/masking/types.js.map +1 -1
  1135. package/masking/utils.d.ts +8 -5
  1136. package/masking/utils.js +34 -12
  1137. package/masking/utils.js.map +1 -1
  1138. package/package.json +259 -116
  1139. package/react/context/ApolloConsumer.d.ts +8 -5
  1140. package/react/context/ApolloConsumer.js +7 -7
  1141. package/react/context/ApolloConsumer.js.map +1 -1
  1142. package/react/context/ApolloContext.d.ts +5 -11
  1143. package/react/context/ApolloContext.js +6 -13
  1144. package/react/context/ApolloContext.js.map +1 -1
  1145. package/react/context/ApolloProvider.d.ts +8 -6
  1146. package/react/context/ApolloProvider.js +12 -11
  1147. package/react/context/ApolloProvider.js.map +1 -1
  1148. package/react/hooks/constants.d.ts +1 -1
  1149. package/react/hooks/constants.js +2 -2
  1150. package/react/hooks/constants.js.map +1 -1
  1151. package/react/hooks/internal/__use.d.ts +1 -1
  1152. package/react/hooks/internal/__use.js +11 -11
  1153. package/react/hooks/internal/__use.js.map +1 -1
  1154. package/react/hooks/internal/index.d.ts +1 -2
  1155. package/react/hooks/internal/index.js +1 -2
  1156. package/react/hooks/internal/index.js.map +1 -1
  1157. package/react/hooks/internal/useDeepMemo.d.ts +1 -1
  1158. package/react/hooks/internal/useDeepMemo.js +6 -4
  1159. package/react/hooks/internal/useDeepMemo.js.map +1 -1
  1160. package/react/hooks/internal/useIsomorphicLayoutEffect.d.ts +2 -2
  1161. package/react/hooks/internal/useIsomorphicLayoutEffect.js +4 -4
  1162. package/react/hooks/internal/useIsomorphicLayoutEffect.js.map +1 -1
  1163. package/react/hooks/internal/useRenderGuard.d.ts +1 -1
  1164. package/react/hooks/internal/useRenderGuard.js +5 -5
  1165. package/react/hooks/internal/useRenderGuard.js.map +1 -1
  1166. package/react/hooks/internal/validateSuspenseHookOptions.d.ts +3 -0
  1167. package/react/hooks/internal/validateSuspenseHookOptions.js +22 -0
  1168. package/react/hooks/internal/validateSuspenseHookOptions.js.map +1 -0
  1169. package/react/hooks/internal/wrapHook.d.ts +51 -45
  1170. package/react/hooks/internal/wrapHook.js +61 -40
  1171. package/react/hooks/internal/wrapHook.js.map +1 -1
  1172. package/react/hooks/useApolloClient.d.ts +3 -3
  1173. package/react/hooks/useApolloClient.js +20 -7
  1174. package/react/hooks/useApolloClient.js.map +1 -1
  1175. package/react/hooks/useBackgroundQuery.d.ts +191 -57
  1176. package/react/hooks/useBackgroundQuery.js +33 -35
  1177. package/react/hooks/useBackgroundQuery.js.map +1 -1
  1178. package/react/hooks/useFragment.d.ts +54 -28
  1179. package/react/hooks/useFragment.js +47 -38
  1180. package/react/hooks/useFragment.js.map +1 -1
  1181. package/react/hooks/useLazyQuery.d.ts +279 -40
  1182. package/react/hooks/useLazyQuery.js +124 -91
  1183. package/react/hooks/useLazyQuery.js.map +1 -1
  1184. package/react/hooks/useLoadableQuery.d.ts +119 -48
  1185. package/react/hooks/useLoadableQuery.js +242 -67
  1186. package/react/hooks/useLoadableQuery.js.map +1 -1
  1187. package/react/hooks/useMutation.d.ts +232 -5
  1188. package/react/hooks/useMutation.js +207 -112
  1189. package/react/hooks/useMutation.js.map +1 -1
  1190. package/react/hooks/useQuery.d.ts +263 -70
  1191. package/react/hooks/useQuery.js +290 -382
  1192. package/react/hooks/useQuery.js.map +1 -1
  1193. package/react/hooks/useQueryRefHandlers.d.ts +24 -23
  1194. package/react/hooks/useQueryRefHandlers.js +72 -31
  1195. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  1196. package/react/hooks/useReactiveVar.d.ts +2 -2
  1197. package/react/hooks/useReactiveVar.js +3 -3
  1198. package/react/hooks/useReactiveVar.js.map +1 -1
  1199. package/react/hooks/useReadQuery.d.ts +23 -29
  1200. package/react/hooks/useReadQuery.js +16 -15
  1201. package/react/hooks/useReadQuery.js.map +1 -1
  1202. package/react/hooks/useSubscription.d.ts +96 -12
  1203. package/react/hooks/useSubscription.js +68 -122
  1204. package/react/hooks/useSubscription.js.map +1 -1
  1205. package/react/hooks/useSuspenseFragment.d.ts +42 -40
  1206. package/react/hooks/useSuspenseFragment.js +21 -23
  1207. package/react/hooks/useSuspenseFragment.js.map +1 -1
  1208. package/react/hooks/useSuspenseQuery.d.ts +189 -40
  1209. package/react/hooks/useSuspenseQuery.js +102 -97
  1210. package/react/hooks/useSuspenseQuery.js.map +1 -1
  1211. package/react/hooks/useSyncExternalStore.d.ts +1 -1
  1212. package/react/hooks/useSyncExternalStore.js +44 -25
  1213. package/react/hooks/useSyncExternalStore.js.map +1 -1
  1214. package/react/index.d.ts +24 -9
  1215. package/react/index.js +19 -5
  1216. package/react/index.js.map +1 -1
  1217. package/react/index.react-server.d.ts +19 -0
  1218. package/react/index.react-server.js +45 -0
  1219. package/react/index.react-server.js.map +1 -0
  1220. package/react/internal/cache/FragmentReference.d.ts +9 -8
  1221. package/react/internal/cache/FragmentReference.js +72 -64
  1222. package/react/internal/cache/FragmentReference.js.map +1 -1
  1223. package/react/internal/cache/QueryReference.d.ts +59 -119
  1224. package/react/internal/cache/QueryReference.js +141 -177
  1225. package/react/internal/cache/QueryReference.js.map +1 -1
  1226. package/react/internal/cache/SuspenseCache.d.ts +6 -6
  1227. package/react/internal/cache/SuspenseCache.js +19 -22
  1228. package/react/internal/cache/SuspenseCache.js.map +1 -1
  1229. package/react/internal/cache/getSuspenseCache.d.ts +5 -5
  1230. package/react/internal/cache/getSuspenseCache.js +3 -4
  1231. package/react/internal/cache/getSuspenseCache.js.map +1 -1
  1232. package/react/internal/cache/types.d.ts +1 -1
  1233. package/react/internal/cache/types.js +1 -1
  1234. package/react/internal/cache/types.js.map +1 -1
  1235. package/react/internal/index.d.ts +5 -3
  1236. package/react/internal/index.js +3 -2
  1237. package/react/internal/index.js.map +1 -1
  1238. package/react/internal/types.d.ts +4 -0
  1239. package/react/internal/types.js +2 -0
  1240. package/react/internal/types.js.map +1 -0
  1241. package/react/query-preloader/createQueryPreloader.d.ts +170 -171
  1242. package/react/query-preloader/createQueryPreloader.js +17 -10
  1243. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  1244. package/react/ssr/getDataFromTree.d.ts +15 -3
  1245. package/react/ssr/getDataFromTree.js +29 -39
  1246. package/react/ssr/getDataFromTree.js.map +1 -1
  1247. package/react/ssr/index.d.ts +3 -3
  1248. package/react/ssr/index.js +3 -3
  1249. package/react/ssr/index.js.map +1 -1
  1250. package/react/ssr/prerenderStatic.d.ts +122 -0
  1251. package/react/ssr/prerenderStatic.js +154 -0
  1252. package/react/ssr/prerenderStatic.js.map +1 -0
  1253. package/react/ssr/renderToStringWithData.d.ts +6 -1
  1254. package/react/ssr/renderToStringWithData.js +12 -6
  1255. package/react/ssr/renderToStringWithData.js.map +1 -1
  1256. package/react/ssr/useSSRQuery.d.ts +5 -0
  1257. package/react/ssr/useSSRQuery.js +66 -0
  1258. package/react/ssr/useSSRQuery.js.map +1 -0
  1259. package/react/types/deprecated.d.ts +75 -0
  1260. package/react/types/deprecated.js +2 -0
  1261. package/react/types/deprecated.js.map +1 -0
  1262. package/react/types/types.documentation.d.ts +48 -89
  1263. package/react/types/types.documentation.js +1 -1
  1264. package/react/types/types.documentation.js.map +1 -1
  1265. package/testing/core/mocking/mockLink.d.ts +49 -25
  1266. package/testing/core/mocking/mockLink.js +147 -161
  1267. package/testing/core/mocking/mockLink.js.map +1 -1
  1268. package/testing/core/mocking/mockSubscriptionLink.d.ts +11 -13
  1269. package/testing/core/mocking/mockSubscriptionLink.js +30 -40
  1270. package/testing/core/mocking/mockSubscriptionLink.js.map +1 -1
  1271. package/testing/core/types/deprecated.d.ts +10 -0
  1272. package/testing/core/types/deprecated.js +2 -0
  1273. package/testing/core/types/deprecated.js.map +1 -0
  1274. package/testing/index.d.ts +4 -5
  1275. package/testing/index.js +3 -4
  1276. package/testing/index.js.map +1 -1
  1277. package/testing/react/MockedProvider.d.ts +15 -15
  1278. package/testing/react/MockedProvider.js +29 -33
  1279. package/testing/react/MockedProvider.js.map +1 -1
  1280. package/testing/react/index.d.ts +3 -0
  1281. package/testing/react/index.js +2 -0
  1282. package/testing/react/index.js.map +1 -0
  1283. package/utilities/DeepPartial.d.ts +15 -0
  1284. package/utilities/DeepPartial.js +6 -0
  1285. package/utilities/DeepPartial.js.map +1 -0
  1286. package/utilities/HKT.d.ts +35 -0
  1287. package/utilities/HKT.js +2 -0
  1288. package/utilities/HKT.js.map +1 -0
  1289. package/utilities/caching/index.d.ts +1 -2
  1290. package/utilities/caching/index.js +1 -2
  1291. package/utilities/caching/index.js.map +1 -1
  1292. package/utilities/caching/sizes.d.ts +9 -21
  1293. package/utilities/caching/sizes.js +6 -7
  1294. package/utilities/caching/sizes.js.map +1 -1
  1295. package/utilities/common/stripTypename.d.ts +8 -2
  1296. package/utilities/common/stripTypename.js +8 -2
  1297. package/utilities/common/stripTypename.js.map +1 -1
  1298. package/utilities/environment/index.d.ts +2 -0
  1299. package/utilities/environment/index.development.d.ts +2 -0
  1300. package/utilities/environment/index.development.js +2 -0
  1301. package/utilities/environment/index.development.js.map +1 -0
  1302. package/utilities/environment/index.js +2 -0
  1303. package/utilities/environment/index.js.map +1 -0
  1304. package/utilities/environment/index.production.d.ts +2 -0
  1305. package/utilities/environment/index.production.js +2 -0
  1306. package/utilities/environment/index.production.js.map +1 -0
  1307. package/utilities/graphql/DocumentTransform.d.ts +11 -7
  1308. package/utilities/graphql/DocumentTransform.js +57 -48
  1309. package/utilities/graphql/DocumentTransform.js.map +1 -1
  1310. package/utilities/graphql/isFormattedExecutionResult.d.ts +3 -0
  1311. package/utilities/graphql/isFormattedExecutionResult.js +6 -0
  1312. package/utilities/graphql/isFormattedExecutionResult.js.map +1 -0
  1313. package/utilities/graphql/operations.d.ts +23 -2
  1314. package/utilities/graphql/operations.js +24 -4
  1315. package/utilities/graphql/operations.js.map +1 -1
  1316. package/utilities/graphql/print.d.ts +9 -1
  1317. package/utilities/graphql/print.js +18 -9
  1318. package/utilities/graphql/print.js.map +1 -1
  1319. package/utilities/graphql/storeUtils.d.ts +15 -23
  1320. package/utilities/graphql/storeUtils.js +6 -210
  1321. package/utilities/graphql/storeUtils.js.map +1 -1
  1322. package/utilities/graphql/transform.d.ts +7 -25
  1323. package/utilities/graphql/transform.js +21 -462
  1324. package/utilities/graphql/transform.js.map +1 -1
  1325. package/utilities/index.d.ts +10 -44
  1326. package/utilities/index.js +7 -29
  1327. package/utilities/index.js.map +1 -1
  1328. package/utilities/internal/DeepMerger.d.ts +17 -0
  1329. package/utilities/internal/DeepMerger.js +63 -0
  1330. package/utilities/internal/DeepMerger.js.map +1 -0
  1331. package/utilities/internal/argumentsObjectFromField.d.ts +8 -0
  1332. package/utilities/internal/argumentsObjectFromField.js +15 -0
  1333. package/utilities/internal/argumentsObjectFromField.js.map +1 -0
  1334. package/utilities/internal/caches.d.ts +42 -0
  1335. package/utilities/internal/caches.js +73 -0
  1336. package/utilities/internal/caches.js.map +1 -0
  1337. package/utilities/internal/canUseDOM.d.ts +7 -0
  1338. package/utilities/internal/canUseDOM.js +8 -0
  1339. package/utilities/internal/canUseDOM.js.map +1 -0
  1340. package/utilities/internal/checkDocument.d.ts +10 -0
  1341. package/utilities/internal/checkDocument.js +66 -0
  1342. package/utilities/internal/checkDocument.js.map +1 -0
  1343. package/utilities/internal/cloneDeep.d.ts +9 -0
  1344. package/utilities/internal/cloneDeep.js +42 -0
  1345. package/utilities/internal/cloneDeep.js.map +1 -0
  1346. package/utilities/internal/compact.d.ts +11 -0
  1347. package/utilities/internal/compact.js +23 -0
  1348. package/utilities/internal/compact.js.map +1 -0
  1349. package/utilities/internal/createFragmentMap.d.ts +12 -0
  1350. package/utilities/internal/createFragmentMap.js +16 -0
  1351. package/utilities/internal/createFragmentMap.js.map +1 -0
  1352. package/utilities/internal/createFulfilledPromise.d.ts +8 -0
  1353. package/utilities/internal/createFulfilledPromise.js +12 -0
  1354. package/utilities/internal/createFulfilledPromise.js.map +1 -0
  1355. package/utilities/internal/createRejectedPromise.d.ts +8 -0
  1356. package/utilities/internal/createRejectedPromise.js +14 -0
  1357. package/utilities/internal/createRejectedPromise.js.map +1 -0
  1358. package/utilities/internal/dealias.d.ts +5 -0
  1359. package/utilities/internal/dealias.js +18 -0
  1360. package/utilities/internal/dealias.js.map +1 -0
  1361. package/utilities/internal/decoratePromise.d.ts +8 -0
  1362. package/utilities/internal/decoratePromise.js +30 -0
  1363. package/utilities/internal/decoratePromise.js.map +1 -0
  1364. package/utilities/internal/deepFreeze.d.ts +7 -0
  1365. package/utilities/internal/deepFreeze.js +36 -0
  1366. package/utilities/internal/deepFreeze.js.map +1 -0
  1367. package/utilities/internal/filterMap.d.ts +4 -0
  1368. package/utilities/internal/filterMap.js +28 -0
  1369. package/utilities/internal/filterMap.js.map +1 -0
  1370. package/utilities/internal/getDefaultValues.d.ts +8 -0
  1371. package/utilities/internal/getDefaultValues.js +19 -0
  1372. package/utilities/internal/getDefaultValues.js.map +1 -0
  1373. package/utilities/internal/getFragmentDefinition.d.ts +8 -0
  1374. package/utilities/internal/getFragmentDefinition.js +14 -0
  1375. package/utilities/internal/getFragmentDefinition.js.map +1 -0
  1376. package/utilities/internal/getFragmentDefinitions.d.ts +8 -0
  1377. package/utilities/internal/getFragmentDefinitions.js +9 -0
  1378. package/utilities/internal/getFragmentDefinitions.js.map +1 -0
  1379. package/utilities/internal/getFragmentFromSelection.d.ts +10 -0
  1380. package/utilities/internal/getFragmentFromSelection.js +24 -0
  1381. package/utilities/internal/getFragmentFromSelection.js.map +1 -0
  1382. package/utilities/internal/getFragmentQueryDocument.d.ts +29 -0
  1383. package/utilities/internal/getFragmentQueryDocument.js +83 -0
  1384. package/utilities/internal/getFragmentQueryDocument.js.map +1 -0
  1385. package/utilities/internal/getGraphQLErrorsFromResult.d.ts +10 -0
  1386. package/utilities/internal/getGraphQLErrorsFromResult.js +9 -0
  1387. package/utilities/internal/getGraphQLErrorsFromResult.js.map +1 -0
  1388. package/utilities/internal/getMainDefinition.d.ts +12 -0
  1389. package/utilities/internal/getMainDefinition.js +35 -0
  1390. package/utilities/internal/getMainDefinition.js.map +1 -0
  1391. package/utilities/internal/getMemoryInternals.d.ts +80 -0
  1392. package/utilities/internal/getMemoryInternals.js +128 -0
  1393. package/utilities/internal/getMemoryInternals.js.map +1 -0
  1394. package/utilities/internal/getOperationDefinition.d.ts +8 -0
  1395. package/utilities/internal/getOperationDefinition.js +11 -0
  1396. package/utilities/internal/getOperationDefinition.js.map +1 -0
  1397. package/utilities/internal/getOperationName.d.ts +8 -0
  1398. package/utilities/internal/getOperationName.js +9 -0
  1399. package/utilities/internal/getOperationName.js.map +1 -0
  1400. package/utilities/internal/getQueryDefinition.d.ts +8 -0
  1401. package/utilities/internal/getQueryDefinition.js +13 -0
  1402. package/utilities/internal/getQueryDefinition.js.map +1 -0
  1403. package/utilities/internal/getStoreKeyName.d.ts +16 -0
  1404. package/utilities/internal/getStoreKeyName.js +70 -0
  1405. package/utilities/internal/getStoreKeyName.js.map +1 -0
  1406. package/utilities/internal/globals/global.d.ts +3 -0
  1407. package/utilities/internal/globals/global.js +14 -0
  1408. package/utilities/internal/globals/global.js.map +1 -0
  1409. package/utilities/internal/globals/index.d.ts +3 -0
  1410. package/utilities/internal/globals/index.js +3 -0
  1411. package/utilities/internal/globals/index.js.map +1 -0
  1412. package/utilities/internal/globals/maybe.d.ts +2 -0
  1413. package/utilities/internal/globals/maybe.js +7 -0
  1414. package/utilities/internal/globals/maybe.js.map +1 -0
  1415. package/utilities/internal/graphQLResultHasError.d.ts +8 -0
  1416. package/utilities/internal/graphQLResultHasError.js +9 -0
  1417. package/utilities/internal/graphQLResultHasError.js.map +1 -0
  1418. package/utilities/internal/hasDirectives.d.ts +8 -0
  1419. package/utilities/internal/hasDirectives.js +21 -0
  1420. package/utilities/internal/hasDirectives.js.map +1 -0
  1421. package/utilities/internal/hasForcedResolvers.d.ts +3 -0
  1422. package/utilities/internal/hasForcedResolvers.js +20 -0
  1423. package/utilities/internal/hasForcedResolvers.js.map +1 -0
  1424. package/utilities/internal/index.d.ts +64 -0
  1425. package/utilities/internal/index.js +49 -0
  1426. package/utilities/internal/index.js.map +1 -0
  1427. package/utilities/internal/index.production.d.ts +3 -0
  1428. package/utilities/internal/index.production.js +7 -0
  1429. package/utilities/internal/index.production.js.map +1 -0
  1430. package/utilities/internal/isArray.d.ts +9 -0
  1431. package/utilities/internal/isArray.js +9 -0
  1432. package/utilities/internal/isArray.js.map +1 -0
  1433. package/utilities/internal/isDocumentNode.d.ts +8 -0
  1434. package/utilities/internal/isDocumentNode.js +12 -0
  1435. package/utilities/internal/isDocumentNode.js.map +1 -0
  1436. package/utilities/internal/isField.d.ts +8 -0
  1437. package/utilities/internal/isField.js +9 -0
  1438. package/utilities/internal/isField.js.map +1 -0
  1439. package/utilities/internal/isNonEmptyArray.d.ts +7 -0
  1440. package/utilities/internal/isNonEmptyArray.js +9 -0
  1441. package/utilities/internal/isNonEmptyArray.js.map +1 -0
  1442. package/utilities/internal/isNonNullObject.d.ts +7 -0
  1443. package/utilities/internal/isNonNullObject.js +9 -0
  1444. package/utilities/internal/isNonNullObject.js.map +1 -0
  1445. package/utilities/internal/isPlainObject.d.ts +7 -0
  1446. package/utilities/internal/isPlainObject.js +12 -0
  1447. package/utilities/internal/isPlainObject.js.map +1 -0
  1448. package/utilities/internal/makeReference.d.ts +8 -0
  1449. package/utilities/internal/makeReference.js +9 -0
  1450. package/utilities/internal/makeReference.js.map +1 -0
  1451. package/utilities/internal/makeUniqueId.d.ts +10 -0
  1452. package/utilities/internal/makeUniqueId.js +15 -0
  1453. package/utilities/internal/makeUniqueId.js.map +1 -0
  1454. package/utilities/internal/maybeDeepFreeze.d.ts +7 -0
  1455. package/utilities/internal/maybeDeepFreeze.js +14 -0
  1456. package/utilities/internal/maybeDeepFreeze.js.map +1 -0
  1457. package/utilities/internal/mergeDeep.d.ts +8 -0
  1458. package/utilities/internal/mergeDeep.js +23 -0
  1459. package/utilities/internal/mergeDeep.js.map +1 -0
  1460. package/utilities/internal/mergeDeepArray.d.ts +7 -0
  1461. package/utilities/internal/mergeDeepArray.js +24 -0
  1462. package/utilities/internal/mergeDeepArray.js.map +1 -0
  1463. package/utilities/internal/mergeOptions.d.ts +10 -0
  1464. package/utilities/internal/mergeOptions.js +15 -0
  1465. package/utilities/internal/mergeOptions.js.map +1 -0
  1466. package/utilities/internal/omitDeep.d.ts +8 -0
  1467. package/utilities/internal/omitDeep.js +45 -0
  1468. package/utilities/internal/omitDeep.js.map +1 -0
  1469. package/utilities/internal/preventUnhandledRejection.d.ts +2 -0
  1470. package/utilities/internal/preventUnhandledRejection.js +5 -0
  1471. package/utilities/internal/preventUnhandledRejection.js.map +1 -0
  1472. package/utilities/internal/removeDirectivesFromDocument.d.ts +14 -0
  1473. package/utilities/internal/removeDirectivesFromDocument.js +300 -0
  1474. package/utilities/internal/removeDirectivesFromDocument.js.map +1 -0
  1475. package/utilities/internal/resultKeyNameFromField.d.ts +8 -0
  1476. package/utilities/internal/resultKeyNameFromField.js +9 -0
  1477. package/utilities/internal/resultKeyNameFromField.js.map +1 -0
  1478. package/utilities/internal/shouldInclude.d.ts +8 -0
  1479. package/utilities/internal/shouldInclude.js +47 -0
  1480. package/utilities/internal/shouldInclude.js.map +1 -0
  1481. package/utilities/internal/storeKeyNameFromField.d.ts +8 -0
  1482. package/utilities/internal/storeKeyNameFromField.js +26 -0
  1483. package/utilities/internal/storeKeyNameFromField.js.map +1 -0
  1484. package/utilities/internal/stringifyForDisplay.d.ts +7 -0
  1485. package/utilities/internal/stringifyForDisplay.js +15 -0
  1486. package/utilities/internal/stringifyForDisplay.js.map +1 -0
  1487. package/utilities/internal/toQueryResult.d.ts +8 -0
  1488. package/utilities/internal/toQueryResult.js +15 -0
  1489. package/utilities/internal/toQueryResult.js.map +1 -0
  1490. package/utilities/internal/types/ApplyHKT.d.ts +13 -0
  1491. package/utilities/internal/types/ApplyHKT.js +2 -0
  1492. package/utilities/internal/types/ApplyHKT.js.map +1 -0
  1493. package/utilities/internal/types/ApplyHKTImplementationWithDefault.d.ts +11 -0
  1494. package/utilities/internal/types/ApplyHKTImplementationWithDefault.js +2 -0
  1495. package/utilities/internal/types/ApplyHKTImplementationWithDefault.js.map +1 -0
  1496. package/utilities/internal/types/DecoratedPromise.d.ts +10 -0
  1497. package/utilities/internal/types/DecoratedPromise.js +2 -0
  1498. package/utilities/internal/types/DecoratedPromise.js.map +1 -0
  1499. package/utilities/internal/types/DeepOmit.d.ts +15 -0
  1500. package/utilities/internal/types/DeepOmit.js +2 -0
  1501. package/utilities/internal/types/DeepOmit.js.map +1 -0
  1502. package/utilities/internal/types/FragmentMap.d.ts +12 -0
  1503. package/utilities/internal/types/FragmentMap.js +2 -0
  1504. package/utilities/internal/types/FragmentMap.js.map +1 -0
  1505. package/utilities/internal/types/FragmentMapFunction.d.ts +8 -0
  1506. package/utilities/internal/types/FragmentMapFunction.js +2 -0
  1507. package/utilities/internal/types/FragmentMapFunction.js.map +1 -0
  1508. package/utilities/internal/types/FulfilledPromise.d.ts +10 -0
  1509. package/utilities/internal/types/FulfilledPromise.js +2 -0
  1510. package/utilities/internal/types/FulfilledPromise.js.map +1 -0
  1511. package/utilities/internal/types/IsAny.d.ts +7 -0
  1512. package/utilities/internal/types/IsAny.js +2 -0
  1513. package/utilities/internal/types/IsAny.js.map +1 -0
  1514. package/utilities/internal/types/NoInfer.d.ts +29 -0
  1515. package/utilities/internal/types/NoInfer.js +2 -0
  1516. package/utilities/internal/types/NoInfer.js.map +1 -0
  1517. package/utilities/internal/types/PendingPromise.d.ts +9 -0
  1518. package/utilities/internal/types/PendingPromise.js +2 -0
  1519. package/utilities/internal/types/PendingPromise.js.map +1 -0
  1520. package/utilities/internal/types/Prettify.d.ts +9 -0
  1521. package/utilities/internal/types/Prettify.js +2 -0
  1522. package/utilities/internal/types/Prettify.js.map +1 -0
  1523. package/utilities/internal/types/Primitive.d.ts +7 -0
  1524. package/utilities/internal/types/Primitive.js +2 -0
  1525. package/utilities/internal/types/Primitive.js.map +1 -0
  1526. package/utilities/internal/types/RejectedPromise.d.ts +10 -0
  1527. package/utilities/internal/types/RejectedPromise.js +2 -0
  1528. package/utilities/internal/types/RejectedPromise.js.map +1 -0
  1529. package/utilities/internal/types/RemoveIndexSignature.d.ts +9 -0
  1530. package/utilities/internal/types/RemoveIndexSignature.js +2 -0
  1531. package/utilities/internal/types/RemoveIndexSignature.js.map +1 -0
  1532. package/utilities/internal/types/TupleToIntersection.d.ts +2 -0
  1533. package/utilities/internal/types/TupleToIntersection.js +2 -0
  1534. package/utilities/internal/types/TupleToIntersection.js.map +1 -0
  1535. package/utilities/internal/types/VariablesOption.d.ts +30 -0
  1536. package/utilities/internal/types/VariablesOption.js +2 -0
  1537. package/utilities/internal/types/VariablesOption.js.map +1 -0
  1538. package/utilities/internal/valueToObjectRepresentation.d.ts +8 -0
  1539. package/utilities/internal/valueToObjectRepresentation.js +41 -0
  1540. package/utilities/internal/valueToObjectRepresentation.js.map +1 -0
  1541. package/utilities/invariant/index.d.ts +47 -0
  1542. package/utilities/invariant/index.development.d.ts +4 -0
  1543. package/utilities/invariant/index.development.js +12 -0
  1544. package/utilities/invariant/index.development.js.map +1 -0
  1545. package/utilities/invariant/index.js +90 -0
  1546. package/utilities/invariant/index.js.map +1 -0
  1547. package/utilities/policies/pagination.d.ts +29 -6
  1548. package/utilities/policies/pagination.js +89 -56
  1549. package/utilities/policies/pagination.js.map +1 -1
  1550. package/utilities/shared/canonicalStringify.d.ts +21 -0
  1551. package/utilities/shared/canonicalStringify.js +88 -0
  1552. package/utilities/shared/canonicalStringify.js.map +1 -0
  1553. package/utilities/subscriptions/relay/index.d.ts +8 -4
  1554. package/utilities/subscriptions/relay/index.js +29 -20
  1555. package/utilities/subscriptions/relay/index.js.map +1 -1
  1556. package/version.d.ts +3 -2
  1557. package/version.js +3 -2
  1558. package/version.js.map +1 -1
  1559. package/.changeset/README.md +0 -8
  1560. package/.changeset/config.json +0 -14
  1561. package/apollo-client.cjs +0 -9474
  1562. package/apollo-client.cjs.map +0 -1
  1563. package/apollo-client.min.cjs +0 -1
  1564. package/cache/cache.cjs +0 -2691
  1565. package/cache/cache.cjs.map +0 -1
  1566. package/cache/cache.cjs.native.js +0 -2691
  1567. package/cache/cache.d.cts +0 -1
  1568. package/cache/inmemory/fixPolyfills.d.ts +0 -1
  1569. package/cache/inmemory/fixPolyfills.js +0 -10
  1570. package/cache/inmemory/fixPolyfills.js.map +0 -1
  1571. package/cache/inmemory/fixPolyfills.native.d.ts +0 -2
  1572. package/cache/inmemory/fixPolyfills.native.js +0 -61
  1573. package/cache/inmemory/fixPolyfills.native.js.map +0 -1
  1574. package/cache/inmemory/object-canon.d.ts +0 -12
  1575. package/cache/inmemory/object-canon.js +0 -181
  1576. package/cache/inmemory/object-canon.js.map +0 -1
  1577. package/cache/package.json +0 -8
  1578. package/config/jest/areApolloErrorsEqual.d.ts +0 -3
  1579. package/config/jest/areApolloErrorsEqual.js +0 -23
  1580. package/config/jest/areApolloErrorsEqual.js.map +0 -1
  1581. package/config/jest/areGraphQlErrorsEqual.d.ts +0 -3
  1582. package/config/jest/areGraphQlErrorsEqual.js +0 -7
  1583. package/config/jest/areGraphQlErrorsEqual.js.map +0 -1
  1584. package/config/jest/setup.d.ts +0 -3
  1585. package/config/jest/setup.js +0 -36
  1586. package/config/jest/setup.js.map +0 -1
  1587. package/core/LocalState.d.ts +0 -65
  1588. package/core/LocalState.js +0 -356
  1589. package/core/LocalState.js.map +0 -1
  1590. package/core/core.cjs +0 -2758
  1591. package/core/core.cjs.map +0 -1
  1592. package/core/core.cjs.native.js +0 -2758
  1593. package/core/core.d.cts +0 -1
  1594. package/core/package.json +0 -8
  1595. package/dev/dev.cjs +0 -628
  1596. package/dev/dev.cjs.map +0 -1
  1597. package/dev/dev.cjs.native.js +0 -628
  1598. package/dev/dev.d.cts +0 -1
  1599. package/dev/package.json +0 -8
  1600. package/errors/errors.cjs +0 -55
  1601. package/errors/errors.cjs.map +0 -1
  1602. package/errors/errors.cjs.native.js +0 -55
  1603. package/errors/errors.d.cts +0 -1
  1604. package/errors/package.json +0 -8
  1605. package/index.d.ts +0 -3
  1606. package/index.js +0 -3
  1607. package/index.js.map +0 -1
  1608. package/link/batch/batch.cjs +0 -159
  1609. package/link/batch/batch.cjs.map +0 -1
  1610. package/link/batch/batch.cjs.native.js +0 -159
  1611. package/link/batch/batch.d.cts +0 -1
  1612. package/link/batch/package.json +0 -8
  1613. package/link/batch-http/batch-http.cjs +0 -161
  1614. package/link/batch-http/batch-http.cjs.map +0 -1
  1615. package/link/batch-http/batch-http.cjs.native.js +0 -161
  1616. package/link/batch-http/batch-http.d.cts +0 -1
  1617. package/link/batch-http/package.json +0 -8
  1618. package/link/context/context.cjs +0 -38
  1619. package/link/context/context.cjs.map +0 -1
  1620. package/link/context/context.cjs.native.js +0 -38
  1621. package/link/context/context.d.cts +0 -1
  1622. package/link/context/package.json +0 -8
  1623. package/link/core/core.cjs +0 -115
  1624. package/link/core/core.cjs.map +0 -1
  1625. package/link/core/core.cjs.native.js +0 -115
  1626. package/link/core/core.d.cts +0 -1
  1627. package/link/core/index.d.ts +0 -9
  1628. package/link/core/index.js +0 -8
  1629. package/link/core/index.js.map +0 -1
  1630. package/link/core/package.json +0 -8
  1631. package/link/error/error.cjs +0 -100
  1632. package/link/error/error.cjs.map +0 -1
  1633. package/link/error/error.cjs.native.js +0 -100
  1634. package/link/error/error.d.cts +0 -1
  1635. package/link/error/package.json +0 -8
  1636. package/link/http/createHttpLink.d.ts +0 -4
  1637. package/link/http/createHttpLink.js +0 -156
  1638. package/link/http/createHttpLink.js.map +0 -1
  1639. package/link/http/http.cjs +0 -634
  1640. package/link/http/http.cjs.map +0 -1
  1641. package/link/http/http.cjs.native.js +0 -634
  1642. package/link/http/http.d.cts +0 -1
  1643. package/link/http/iterators/async.d.ts +0 -6
  1644. package/link/http/iterators/async.js +0 -18
  1645. package/link/http/iterators/async.js.map +0 -1
  1646. package/link/http/iterators/nodeStream.d.ts +0 -7
  1647. package/link/http/iterators/nodeStream.js +0 -75
  1648. package/link/http/iterators/nodeStream.js.map +0 -1
  1649. package/link/http/iterators/promise.d.ts +0 -6
  1650. package/link/http/iterators/promise.js +0 -32
  1651. package/link/http/iterators/promise.js.map +0 -1
  1652. package/link/http/iterators/reader.d.ts +0 -6
  1653. package/link/http/iterators/reader.js +0 -19
  1654. package/link/http/iterators/reader.js.map +0 -1
  1655. package/link/http/package.json +0 -8
  1656. package/link/http/responseIterator.d.ts +0 -7
  1657. package/link/http/responseIterator.js +0 -48
  1658. package/link/http/responseIterator.js.map +0 -1
  1659. package/link/persisted-queries/package.json +0 -8
  1660. package/link/persisted-queries/persisted-queries.cjs +0 -194
  1661. package/link/persisted-queries/persisted-queries.cjs.map +0 -1
  1662. package/link/persisted-queries/persisted-queries.cjs.native.js +0 -194
  1663. package/link/persisted-queries/persisted-queries.d.cts +0 -1
  1664. package/link/remove-typename/package.json +0 -8
  1665. package/link/remove-typename/remove-typename.cjs +0 -100
  1666. package/link/remove-typename/remove-typename.cjs.map +0 -1
  1667. package/link/remove-typename/remove-typename.cjs.native.js +0 -100
  1668. package/link/remove-typename/remove-typename.d.cts +0 -1
  1669. package/link/retry/package.json +0 -8
  1670. package/link/retry/retry.cjs +0 -123
  1671. package/link/retry/retry.cjs.map +0 -1
  1672. package/link/retry/retry.cjs.native.js +0 -123
  1673. package/link/retry/retry.d.cts +0 -1
  1674. package/link/schema/package.json +0 -8
  1675. package/link/schema/schema.cjs +0 -61
  1676. package/link/schema/schema.cjs.map +0 -1
  1677. package/link/schema/schema.cjs.native.js +0 -61
  1678. package/link/schema/schema.d.cts +0 -1
  1679. package/link/subscriptions/package.json +0 -8
  1680. package/link/subscriptions/subscriptions.cjs +0 -50
  1681. package/link/subscriptions/subscriptions.cjs.map +0 -1
  1682. package/link/subscriptions/subscriptions.cjs.native.js +0 -50
  1683. package/link/subscriptions/subscriptions.d.cts +0 -1
  1684. package/link/utils/fromError.d.ts +0 -3
  1685. package/link/utils/fromError.js +0 -7
  1686. package/link/utils/fromError.js.map +0 -1
  1687. package/link/utils/fromPromise.d.ts +0 -3
  1688. package/link/utils/fromPromise.js +0 -12
  1689. package/link/utils/fromPromise.js.map +0 -1
  1690. package/link/utils/package.json +0 -8
  1691. package/link/utils/throwServerError.d.ts +0 -7
  1692. package/link/utils/throwServerError.js +0 -9
  1693. package/link/utils/throwServerError.js.map +0 -1
  1694. package/link/utils/toPromise.d.ts +0 -3
  1695. package/link/utils/toPromise.js +0 -19
  1696. package/link/utils/toPromise.js.map +0 -1
  1697. package/link/utils/utils.cjs +0 -134
  1698. package/link/utils/utils.cjs.map +0 -1
  1699. package/link/utils/utils.cjs.native.js +0 -134
  1700. package/link/utils/utils.d.cts +0 -1
  1701. package/link/ws/package.json +0 -8
  1702. package/link/ws/ws.cjs +0 -28
  1703. package/link/ws/ws.cjs.map +0 -1
  1704. package/link/ws/ws.cjs.native.js +0 -28
  1705. package/link/ws/ws.d.cts +0 -1
  1706. package/main.cjs +0 -16
  1707. package/main.cjs.map +0 -1
  1708. package/main.cjs.native.js +0 -16
  1709. package/main.d.cts +0 -1
  1710. package/masking/__benches__/types.bench.d.ts +0 -2
  1711. package/masking/__benches__/types.bench.js +0 -222
  1712. package/masking/__benches__/types.bench.js.map +0 -1
  1713. package/masking/masking.cjs +0 -205
  1714. package/masking/masking.cjs.map +0 -1
  1715. package/masking/masking.cjs.native.js +0 -205
  1716. package/masking/masking.d.cts +0 -1
  1717. package/masking/package.json +0 -8
  1718. package/react/components/Mutation.d.ts +0 -18
  1719. package/react/components/Mutation.js +0 -28
  1720. package/react/components/Mutation.js.map +0 -1
  1721. package/react/components/Query.d.ts +0 -18
  1722. package/react/components/Query.js +0 -29
  1723. package/react/components/Query.js.map +0 -1
  1724. package/react/components/Subscription.d.ts +0 -18
  1725. package/react/components/Subscription.js +0 -23
  1726. package/react/components/Subscription.js.map +0 -1
  1727. package/react/components/components.cjs +0 -81
  1728. package/react/components/components.cjs.map +0 -1
  1729. package/react/components/components.cjs.native.js +0 -81
  1730. package/react/components/components.d.cts +0 -1
  1731. package/react/components/index.d.ts +0 -5
  1732. package/react/components/index.js +0 -4
  1733. package/react/components/index.js.map +0 -1
  1734. package/react/components/package.json +0 -8
  1735. package/react/components/types.d.ts +0 -21
  1736. package/react/components/types.js +0 -2
  1737. package/react/components/types.js.map +0 -1
  1738. package/react/context/context.cjs +0 -64
  1739. package/react/context/context.cjs.map +0 -1
  1740. package/react/context/context.cjs.native.js +0 -64
  1741. package/react/context/context.d.cts +0 -1
  1742. package/react/context/index.d.ts +0 -8
  1743. package/react/context/index.js +0 -5
  1744. package/react/context/index.js.map +0 -1
  1745. package/react/context/package.json +0 -8
  1746. package/react/hoc/graphql.d.ts +0 -11
  1747. package/react/hoc/graphql.js +0 -22
  1748. package/react/hoc/graphql.js.map +0 -1
  1749. package/react/hoc/hoc-utils.d.ts +0 -17
  1750. package/react/hoc/hoc-utils.js +0 -48
  1751. package/react/hoc/hoc-utils.js.map +0 -1
  1752. package/react/hoc/hoc.cjs +0 -322
  1753. package/react/hoc/hoc.cjs.map +0 -1
  1754. package/react/hoc/hoc.cjs.native.js +0 -322
  1755. package/react/hoc/hoc.d.cts +0 -1
  1756. package/react/hoc/index.d.ts +0 -8
  1757. package/react/hoc/index.js +0 -7
  1758. package/react/hoc/index.js.map +0 -1
  1759. package/react/hoc/mutation-hoc.d.ts +0 -12
  1760. package/react/hoc/mutation-hoc.js +0 -83
  1761. package/react/hoc/mutation-hoc.js.map +0 -1
  1762. package/react/hoc/package.json +0 -8
  1763. package/react/hoc/query-hoc.d.ts +0 -10
  1764. package/react/hoc/query-hoc.js +0 -81
  1765. package/react/hoc/query-hoc.js.map +0 -1
  1766. package/react/hoc/subscription-hoc.d.ts +0 -10
  1767. package/react/hoc/subscription-hoc.js +0 -90
  1768. package/react/hoc/subscription-hoc.js.map +0 -1
  1769. package/react/hoc/types.d.ts +0 -42
  1770. package/react/hoc/types.js +0 -2
  1771. package/react/hoc/types.js.map +0 -1
  1772. package/react/hoc/withApollo.d.ts +0 -9
  1773. package/react/hoc/withApollo.js +0 -48
  1774. package/react/hoc/withApollo.js.map +0 -1
  1775. package/react/hooks/hooks.cjs +0 -1262
  1776. package/react/hooks/hooks.cjs.map +0 -1
  1777. package/react/hooks/hooks.cjs.native.js +0 -1262
  1778. package/react/hooks/hooks.d.cts +0 -1
  1779. package/react/hooks/index.d.ts +0 -23
  1780. package/react/hooks/index.js +0 -16
  1781. package/react/hooks/index.js.map +0 -1
  1782. package/react/hooks/package.json +0 -8
  1783. package/react/internal/internal.cjs +0 -533
  1784. package/react/internal/internal.cjs.map +0 -1
  1785. package/react/internal/internal.cjs.native.js +0 -533
  1786. package/react/internal/internal.d.cts +0 -1
  1787. package/react/internal/package.json +0 -8
  1788. package/react/package.json +0 -8
  1789. package/react/parser/index.d.ts +0 -18
  1790. package/react/parser/index.js +0 -109
  1791. package/react/parser/index.js.map +0 -1
  1792. package/react/parser/package.json +0 -8
  1793. package/react/parser/parser.cjs +0 -122
  1794. package/react/parser/parser.cjs.map +0 -1
  1795. package/react/parser/parser.cjs.native.js +0 -122
  1796. package/react/parser/parser.d.cts +0 -1
  1797. package/react/react.cjs +0 -45
  1798. package/react/react.cjs.map +0 -1
  1799. package/react/react.cjs.native.js +0 -45
  1800. package/react/react.d.cts +0 -1
  1801. package/react/ssr/RenderPromises.d.ts +0 -22
  1802. package/react/ssr/RenderPromises.js +0 -107
  1803. package/react/ssr/RenderPromises.js.map +0 -1
  1804. package/react/ssr/package.json +0 -8
  1805. package/react/ssr/ssr.cjs +0 -150
  1806. package/react/ssr/ssr.cjs.map +0 -1
  1807. package/react/ssr/ssr.cjs.native.js +0 -150
  1808. package/react/ssr/ssr.d.cts +0 -1
  1809. package/react/types/types.d.ts +0 -816
  1810. package/react/types/types.js +0 -2
  1811. package/react/types/types.js.map +0 -1
  1812. package/testing/core/core.cjs +0 -370
  1813. package/testing/core/core.cjs.map +0 -1
  1814. package/testing/core/core.cjs.native.js +0 -370
  1815. package/testing/core/core.d.cts +0 -1
  1816. package/testing/core/index.d.ts +0 -9
  1817. package/testing/core/index.js +0 -8
  1818. package/testing/core/index.js.map +0 -1
  1819. package/testing/core/itAsync.d.ts +0 -6
  1820. package/testing/core/itAsync.js +0 -23
  1821. package/testing/core/itAsync.js.map +0 -1
  1822. package/testing/core/mocking/mockClient.d.ts +0 -5
  1823. package/testing/core/mocking/mockClient.js +0 -16
  1824. package/testing/core/mocking/mockClient.js.map +0 -1
  1825. package/testing/core/mocking/mockFetch.d.ts +0 -24
  1826. package/testing/core/mocking/mockFetch.js +0 -87
  1827. package/testing/core/mocking/mockFetch.js.map +0 -1
  1828. package/testing/core/package.json +0 -8
  1829. package/testing/core/subscribeAndCount.d.ts +0 -3
  1830. package/testing/core/subscribeAndCount.js +0 -21
  1831. package/testing/core/subscribeAndCount.js.map +0 -1
  1832. package/testing/core/wait.d.ts +0 -3
  1833. package/testing/core/wait.js +0 -16
  1834. package/testing/core/wait.js.map +0 -1
  1835. package/testing/core/withConsoleSpy.d.ts +0 -7
  1836. package/testing/core/withConsoleSpy.js +0 -45
  1837. package/testing/core/withConsoleSpy.js.map +0 -1
  1838. package/testing/core/wrap.d.ts +0 -4
  1839. package/testing/core/wrap.js +0 -30
  1840. package/testing/core/wrap.js.map +0 -1
  1841. package/testing/experimental/createSchemaFetch.d.ts +0 -43
  1842. package/testing/experimental/createSchemaFetch.js +0 -103
  1843. package/testing/experimental/createSchemaFetch.js.map +0 -1
  1844. package/testing/experimental/createTestSchema.d.ts +0 -57
  1845. package/testing/experimental/createTestSchema.js +0 -112
  1846. package/testing/experimental/createTestSchema.js.map +0 -1
  1847. package/testing/experimental/experimental.cjs +0 -276
  1848. package/testing/experimental/experimental.cjs.map +0 -1
  1849. package/testing/experimental/experimental.cjs.native.js +0 -276
  1850. package/testing/experimental/experimental.d.cts +0 -1
  1851. package/testing/experimental/graphql-tools/utils.d.ts +0 -26
  1852. package/testing/experimental/graphql-tools/utils.js +0 -172
  1853. package/testing/experimental/graphql-tools/utils.js.map +0 -1
  1854. package/testing/experimental/graphql-tools/utils.test.d.ts +0 -2
  1855. package/testing/experimental/graphql-tools/utils.test.js +0 -139
  1856. package/testing/experimental/graphql-tools/utils.test.js.map +0 -1
  1857. package/testing/experimental/index.d.ts +0 -3
  1858. package/testing/experimental/index.js +0 -3
  1859. package/testing/experimental/index.js.map +0 -1
  1860. package/testing/experimental/package.json +0 -8
  1861. package/testing/internal/ObservableStream.d.ts +0 -28
  1862. package/testing/internal/ObservableStream.js +0 -123
  1863. package/testing/internal/ObservableStream.js.map +0 -1
  1864. package/testing/internal/disposables/enableFakeTimers.d.ts +0 -7
  1865. package/testing/internal/disposables/enableFakeTimers.js +0 -16
  1866. package/testing/internal/disposables/enableFakeTimers.js.map +0 -1
  1867. package/testing/internal/disposables/index.d.ts +0 -5
  1868. package/testing/internal/disposables/index.js +0 -5
  1869. package/testing/internal/disposables/index.js.map +0 -1
  1870. package/testing/internal/disposables/spyOnConsole.d.ts +0 -9
  1871. package/testing/internal/disposables/spyOnConsole.js +0 -35
  1872. package/testing/internal/disposables/spyOnConsole.js.map +0 -1
  1873. package/testing/internal/disposables/withCleanup.d.ts +0 -3
  1874. package/testing/internal/disposables/withCleanup.js +0 -14
  1875. package/testing/internal/disposables/withCleanup.js.map +0 -1
  1876. package/testing/internal/disposables/withProdMode.d.ts +0 -4
  1877. package/testing/internal/disposables/withProdMode.js +0 -10
  1878. package/testing/internal/disposables/withProdMode.js.map +0 -1
  1879. package/testing/internal/incremental.d.ts +0 -23
  1880. package/testing/internal/incremental.js +0 -124
  1881. package/testing/internal/incremental.js.map +0 -1
  1882. package/testing/internal/index.d.ts +0 -11
  1883. package/testing/internal/index.js +0 -9
  1884. package/testing/internal/index.js.map +0 -1
  1885. package/testing/internal/renderHelpers.d.ts +0 -23
  1886. package/testing/internal/renderHelpers.js +0 -30
  1887. package/testing/internal/renderHelpers.js.map +0 -1
  1888. package/testing/internal/rtl/actAsync.d.ts +0 -2
  1889. package/testing/internal/rtl/actAsync.js +0 -21
  1890. package/testing/internal/rtl/actAsync.js.map +0 -1
  1891. package/testing/internal/rtl/renderAsync.d.ts +0 -9
  1892. package/testing/internal/rtl/renderAsync.js +0 -23
  1893. package/testing/internal/rtl/renderAsync.js.map +0 -1
  1894. package/testing/internal/rtl/renderHookAsync.d.ts +0 -8
  1895. package/testing/internal/rtl/renderHookAsync.js +0 -46
  1896. package/testing/internal/rtl/renderHookAsync.js.map +0 -1
  1897. package/testing/internal/scenarios/index.d.ts +0 -85
  1898. package/testing/internal/scenarios/index.js +0 -71
  1899. package/testing/internal/scenarios/index.js.map +0 -1
  1900. package/testing/matchers/index.d.ts +0 -2
  1901. package/testing/matchers/index.js +0 -36
  1902. package/testing/matchers/index.js.map +0 -1
  1903. package/testing/matchers/toBeDisposed.d.ts +0 -3
  1904. package/testing/matchers/toBeDisposed.js +0 -17
  1905. package/testing/matchers/toBeDisposed.js.map +0 -1
  1906. package/testing/matchers/toBeGarbageCollected.d.ts +0 -8
  1907. package/testing/matchers/toBeGarbageCollected.js +0 -48
  1908. package/testing/matchers/toBeGarbageCollected.js.map +0 -1
  1909. package/testing/matchers/toComplete.d.ts +0 -4
  1910. package/testing/matchers/toComplete.js +0 -42
  1911. package/testing/matchers/toComplete.js.map +0 -1
  1912. package/testing/matchers/toEmitAnything.d.ts +0 -4
  1913. package/testing/matchers/toEmitAnything.js +0 -46
  1914. package/testing/matchers/toEmitAnything.js.map +0 -1
  1915. package/testing/matchers/toEmitApolloQueryResult.d.ts +0 -8
  1916. package/testing/matchers/toEmitApolloQueryResult.js +0 -51
  1917. package/testing/matchers/toEmitApolloQueryResult.js.map +0 -1
  1918. package/testing/matchers/toEmitError.d.ts +0 -7
  1919. package/testing/matchers/toEmitError.js +0 -59
  1920. package/testing/matchers/toEmitError.js.map +0 -1
  1921. package/testing/matchers/toEmitFetchResult.d.ts +0 -8
  1922. package/testing/matchers/toEmitFetchResult.js +0 -51
  1923. package/testing/matchers/toEmitFetchResult.js.map +0 -1
  1924. package/testing/matchers/toEmitMatchedValue.d.ts +0 -7
  1925. package/testing/matchers/toEmitMatchedValue.js +0 -51
  1926. package/testing/matchers/toEmitMatchedValue.js.map +0 -1
  1927. package/testing/matchers/toEmitNext.d.ts +0 -4
  1928. package/testing/matchers/toEmitNext.js +0 -42
  1929. package/testing/matchers/toEmitNext.js.map +0 -1
  1930. package/testing/matchers/toEmitValue.d.ts +0 -4
  1931. package/testing/matchers/toEmitValue.js +0 -53
  1932. package/testing/matchers/toEmitValue.js.map +0 -1
  1933. package/testing/matchers/toEmitValueStrict.d.ts +0 -7
  1934. package/testing/matchers/toEmitValueStrict.js +0 -56
  1935. package/testing/matchers/toEmitValueStrict.js.map +0 -1
  1936. package/testing/matchers/toEqualApolloQueryResult.d.ts +0 -6
  1937. package/testing/matchers/toEqualApolloQueryResult.js +0 -20
  1938. package/testing/matchers/toEqualApolloQueryResult.js.map +0 -1
  1939. package/testing/matchers/toEqualFetchResult.d.ts +0 -4
  1940. package/testing/matchers/toEqualFetchResult.js +0 -20
  1941. package/testing/matchers/toEqualFetchResult.js.map +0 -1
  1942. package/testing/matchers/toEqualQueryResult.d.ts +0 -9
  1943. package/testing/matchers/toEqualQueryResult.js +0 -40
  1944. package/testing/matchers/toEqualQueryResult.js.map +0 -1
  1945. package/testing/matchers/toHaveSuspenseCacheEntryUsing.d.ts +0 -11
  1946. package/testing/matchers/toHaveSuspenseCacheEntryUsing.js +0 -24
  1947. package/testing/matchers/toHaveSuspenseCacheEntryUsing.js.map +0 -1
  1948. package/testing/matchers/toMatchDocument.d.ts +0 -4
  1949. package/testing/matchers/toMatchDocument.js +0 -33
  1950. package/testing/matchers/toMatchDocument.js.map +0 -1
  1951. package/testing/package.json +0 -8
  1952. package/testing/testing.cjs +0 -64
  1953. package/testing/testing.cjs.map +0 -1
  1954. package/testing/testing.cjs.native.js +0 -64
  1955. package/testing/testing.d.cts +0 -1
  1956. package/utilities/caching/caches.d.ts +0 -34
  1957. package/utilities/caching/caches.js +0 -69
  1958. package/utilities/caching/caches.js.map +0 -1
  1959. package/utilities/caching/getMemoryInternals.d.ts +0 -76
  1960. package/utilities/caching/getMemoryInternals.js +0 -112
  1961. package/utilities/caching/getMemoryInternals.js.map +0 -1
  1962. package/utilities/common/arrays.d.ts +0 -3
  1963. package/utilities/common/arrays.js +0 -6
  1964. package/utilities/common/arrays.js.map +0 -1
  1965. package/utilities/common/canUse.d.ts +0 -7
  1966. package/utilities/common/canUse.js +0 -26
  1967. package/utilities/common/canUse.js.map +0 -1
  1968. package/utilities/common/canonicalStringify.d.ts +0 -21
  1969. package/utilities/common/canonicalStringify.js +0 -84
  1970. package/utilities/common/canonicalStringify.js.map +0 -1
  1971. package/utilities/common/cloneDeep.d.ts +0 -5
  1972. package/utilities/common/cloneDeep.js +0 -38
  1973. package/utilities/common/cloneDeep.js.map +0 -1
  1974. package/utilities/common/compact.d.ts +0 -7
  1975. package/utilities/common/compact.js +0 -23
  1976. package/utilities/common/compact.js.map +0 -1
  1977. package/utilities/common/errorHandling.d.ts +0 -4
  1978. package/utilities/common/errorHandling.js +0 -19
  1979. package/utilities/common/errorHandling.js.map +0 -1
  1980. package/utilities/common/incrementalResult.d.ts +0 -7
  1981. package/utilities/common/incrementalResult.js +0 -39
  1982. package/utilities/common/incrementalResult.js.map +0 -1
  1983. package/utilities/common/makeUniqueId.d.ts +0 -2
  1984. package/utilities/common/makeUniqueId.js +0 -9
  1985. package/utilities/common/makeUniqueId.js.map +0 -1
  1986. package/utilities/common/maybeDeepFreeze.d.ts +0 -3
  1987. package/utilities/common/maybeDeepFreeze.js +0 -36
  1988. package/utilities/common/maybeDeepFreeze.js.map +0 -1
  1989. package/utilities/common/mergeDeep.d.ts +0 -14
  1990. package/utilities/common/mergeDeep.js +0 -89
  1991. package/utilities/common/mergeDeep.js.map +0 -1
  1992. package/utilities/common/mergeOptions.d.ts +0 -5
  1993. package/utilities/common/mergeOptions.js +0 -8
  1994. package/utilities/common/mergeOptions.js.map +0 -1
  1995. package/utilities/common/objects.d.ts +0 -3
  1996. package/utilities/common/objects.js +0 -10
  1997. package/utilities/common/objects.js.map +0 -1
  1998. package/utilities/common/omitDeep.d.ts +0 -3
  1999. package/utilities/common/omitDeep.js +0 -41
  2000. package/utilities/common/omitDeep.js.map +0 -1
  2001. package/utilities/common/stringifyForDisplay.d.ts +0 -2
  2002. package/utilities/common/stringifyForDisplay.js +0 -11
  2003. package/utilities/common/stringifyForDisplay.js.map +0 -1
  2004. package/utilities/globals/global.d.ts +0 -8
  2005. package/utilities/globals/global.js +0 -14
  2006. package/utilities/globals/global.js.map +0 -1
  2007. package/utilities/globals/globals.cjs +0 -119
  2008. package/utilities/globals/globals.cjs.map +0 -1
  2009. package/utilities/globals/globals.cjs.native.js +0 -119
  2010. package/utilities/globals/globals.d.cts +0 -1
  2011. package/utilities/globals/index.d.ts +0 -11
  2012. package/utilities/globals/index.js +0 -14
  2013. package/utilities/globals/index.js.map +0 -1
  2014. package/utilities/globals/invariantWrappers.d.ts +0 -64
  2015. package/utilities/globals/invariantWrappers.js +0 -84
  2016. package/utilities/globals/invariantWrappers.js.map +0 -1
  2017. package/utilities/globals/maybe.d.ts +0 -2
  2018. package/utilities/globals/maybe.js +0 -7
  2019. package/utilities/globals/maybe.js.map +0 -1
  2020. package/utilities/globals/package.json +0 -8
  2021. package/utilities/graphql/directives.d.ts +0 -20
  2022. package/utilities/graphql/directives.js +0 -112
  2023. package/utilities/graphql/directives.js.map +0 -1
  2024. package/utilities/graphql/fragments.d.ts +0 -35
  2025. package/utilities/graphql/fragments.js +0 -118
  2026. package/utilities/graphql/fragments.js.map +0 -1
  2027. package/utilities/graphql/getFromAST.d.ts +0 -15
  2028. package/utilities/graphql/getFromAST.js +0 -89
  2029. package/utilities/graphql/getFromAST.js.map +0 -1
  2030. package/utilities/observables/Concast.d.ts +0 -28
  2031. package/utilities/observables/Concast.js +0 -216
  2032. package/utilities/observables/Concast.js.map +0 -1
  2033. package/utilities/observables/Observable.d.ts +0 -6
  2034. package/utilities/observables/Observable.js +0 -17
  2035. package/utilities/observables/Observable.js.map +0 -1
  2036. package/utilities/observables/asyncMap.d.ts +0 -3
  2037. package/utilities/observables/asyncMap.js +0 -44
  2038. package/utilities/observables/asyncMap.js.map +0 -1
  2039. package/utilities/observables/iteration.d.ts +0 -3
  2040. package/utilities/observables/iteration.js +0 -9
  2041. package/utilities/observables/iteration.js.map +0 -1
  2042. package/utilities/observables/subclassing.d.ts +0 -3
  2043. package/utilities/observables/subclassing.js +0 -27
  2044. package/utilities/observables/subclassing.js.map +0 -1
  2045. package/utilities/package.json +0 -8
  2046. package/utilities/promises/decoration.d.ts +0 -17
  2047. package/utilities/promises/decoration.js +0 -39
  2048. package/utilities/promises/decoration.js.map +0 -1
  2049. package/utilities/promises/preventUnhandledRejection.d.ts +0 -2
  2050. package/utilities/promises/preventUnhandledRejection.js +0 -5
  2051. package/utilities/promises/preventUnhandledRejection.js.map +0 -1
  2052. package/utilities/subscriptions/relay/package.json +0 -8
  2053. package/utilities/subscriptions/relay/relay.cjs +0 -372
  2054. package/utilities/subscriptions/relay/relay.cjs.map +0 -1
  2055. package/utilities/subscriptions/relay/relay.cjs.native.js +0 -372
  2056. package/utilities/subscriptions/relay/relay.d.cts +0 -1
  2057. package/utilities/subscriptions/shared.d.ts +0 -9
  2058. package/utilities/subscriptions/shared.js +0 -7
  2059. package/utilities/subscriptions/shared.js.map +0 -1
  2060. package/utilities/subscriptions/urql/index.d.ts +0 -7
  2061. package/utilities/subscriptions/urql/index.js +0 -45
  2062. package/utilities/subscriptions/urql/index.js.map +0 -1
  2063. package/utilities/subscriptions/urql/package.json +0 -8
  2064. package/utilities/subscriptions/urql/urql.cjs +0 -372
  2065. package/utilities/subscriptions/urql/urql.cjs.map +0 -1
  2066. package/utilities/subscriptions/urql/urql.cjs.native.js +0 -372
  2067. package/utilities/subscriptions/urql/urql.d.cts +0 -1
  2068. package/utilities/types/DeepOmit.d.ts +0 -10
  2069. package/utilities/types/DeepOmit.js +0 -2
  2070. package/utilities/types/DeepOmit.js.map +0 -1
  2071. package/utilities/types/DeepPartial.d.ts +0 -12
  2072. package/utilities/types/DeepPartial.js +0 -6
  2073. package/utilities/types/DeepPartial.js.map +0 -1
  2074. package/utilities/types/IsStrictlyAny.d.ts +0 -5
  2075. package/utilities/types/IsStrictlyAny.js +0 -2
  2076. package/utilities/types/IsStrictlyAny.js.map +0 -1
  2077. package/utilities/types/NoInfer.d.ts +0 -27
  2078. package/utilities/types/NoInfer.js +0 -2
  2079. package/utilities/types/NoInfer.js.map +0 -1
  2080. package/utilities/types/OnlyRequiredProperties.d.ts +0 -7
  2081. package/utilities/types/OnlyRequiredProperties.js +0 -2
  2082. package/utilities/types/OnlyRequiredProperties.js.map +0 -1
  2083. package/utilities/types/Prettify.d.ts +0 -4
  2084. package/utilities/types/Prettify.js +0 -2
  2085. package/utilities/types/Prettify.js.map +0 -1
  2086. package/utilities/types/Primitive.d.ts +0 -2
  2087. package/utilities/types/Primitive.js +0 -2
  2088. package/utilities/types/Primitive.js.map +0 -1
  2089. package/utilities/types/RemoveIndexSignature.d.ts +0 -4
  2090. package/utilities/types/RemoveIndexSignature.js +0 -2
  2091. package/utilities/types/RemoveIndexSignature.js.map +0 -1
  2092. package/utilities/types/TODO.d.ts +0 -3
  2093. package/utilities/types/TODO.js +0 -2
  2094. package/utilities/types/TODO.js.map +0 -1
  2095. package/utilities/types/UnionToIntersection.d.ts +0 -2
  2096. package/utilities/types/UnionToIntersection.js +0 -2
  2097. package/utilities/types/UnionToIntersection.js.map +0 -1
  2098. package/utilities/utilities.cjs +0 -1809
  2099. package/utilities/utilities.cjs.map +0 -1
  2100. package/utilities/utilities.cjs.native.js +0 -1809
  2101. package/utilities/utilities.d.cts +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policies.cjs","sources":["../../../../src/cache/inmemory/policies.ts"],"sourcesContent":["import type {\n FieldNode,\n FragmentDefinitionNode,\n InlineFragmentNode,\n SelectionSetNode,\n} from \"graphql\";\n\nimport { disableWarningsSlot } from \"@apollo/client/masking\";\nimport type {\n Reference,\n StoreObject,\n StoreValue,\n} from \"@apollo/client/utilities\";\nimport { isReference } from \"@apollo/client/utilities\";\nimport { __DEV__ } from \"@apollo/client/utilities/environment\";\nimport type { FragmentMap } from \"@apollo/client/utilities/internal\";\nimport {\n argumentsObjectFromField,\n getStoreKeyName,\n isArray,\n isNonNullObject,\n storeKeyNameFromField,\n stringifyForDisplay,\n} from \"@apollo/client/utilities/internal\";\nimport {\n invariant,\n newInvariantError,\n} from \"@apollo/client/utilities/invariant\";\n\nimport type {\n CanReadFunction,\n FieldSpecifier,\n ReadFieldFunction,\n ReadFieldOptions,\n SafeReadonly,\n ToReferenceFunction,\n} from \"../core/types/common.js\";\n\nimport {\n defaultDataIdFromObject,\n fieldNameFromStoreName,\n hasOwn,\n selectionSetMatchesResult,\n storeValueIsStoreObject,\n TypeOrFieldNameRegExp,\n} from \"./helpers.js\";\nimport type { InMemoryCache } from \"./inMemoryCache.js\";\nimport {\n keyArgsFnFromSpecifier,\n keyFieldsFnFromSpecifier,\n} from \"./key-extractor.js\";\nimport { cacheSlot } from \"./reactiveVars.js\";\nimport type {\n IdGetter,\n MergeInfo,\n NormalizedCache,\n ReadMergeModifyContext,\n} from \"./types.js\";\nimport type { WriteContext } from \"./writeToStore.js\";\n\nexport type TypePolicies = {\n [__typename: string]: TypePolicy;\n};\n\n// TypeScript 3.7 will allow recursive type aliases, so this should work:\n// type KeySpecifier = (string | KeySpecifier)[]\nexport type KeySpecifier = ReadonlyArray<string | KeySpecifier>;\n\nexport type KeyFieldsContext = {\n // The __typename of the incoming object, even if the __typename field was\n // aliased to another name in the raw result object. May be undefined when\n // dataIdFromObject is called for objects without __typename fields.\n typename: string | undefined;\n\n // The object to be identified, after processing to remove aliases and\n // normalize identifiable child objects with references.\n storeObject: StoreObject;\n\n // Handy tool for reading additional fields from context.storeObject, either\n // readField(\"fieldName\") to read storeObject[fieldName], or readField(\"name\",\n // objectOrReference) to read from another object or Reference. If you read a\n // field with a read function, that function will be invoked.\n readField: ReadFieldFunction;\n\n // If you are writing a custom keyFields function, and you plan to use the raw\n // result object passed as the first argument, you may also need access to the\n // selection set and available fragments for this object, just in case any\n // fields have aliases. Since this logic is tricky to get right, and these\n // context properties are not even always provided (for example, they are\n // omitted when calling cache.identify(object), where object is assumed to be\n // a StoreObject), we recommend you use context.storeObject (which has already\n // been de-aliased) and context.readField (which can read from references as\n // well as objects) instead of the raw result object in your keyFields\n // functions, or just rely on the internal implementation of keyFields:[...]\n // syntax to get these details right for you.\n selectionSet?: SelectionSetNode;\n fragmentMap?: FragmentMap;\n\n // Internal. May be set by the KeyFieldsFunction to report fields that were\n // involved in computing the ID. Never passed in by the caller.\n keyObject?: Record<string, any>;\n};\n\nexport type KeyFieldsFunction = (\n object: Readonly<StoreObject>,\n context: KeyFieldsContext\n) => KeySpecifier | false | ReturnType<IdGetter>;\n\ntype KeyFieldsResult = Exclude<ReturnType<KeyFieldsFunction>, KeySpecifier>;\n\n// TODO Should TypePolicy be a generic type, with a TObject or TEntity\n// type parameter?\nexport type TypePolicy = {\n // Allows defining the primary key fields for this type, either using an\n // array of field names or a function that returns an arbitrary string.\n keyFields?: KeySpecifier | KeyFieldsFunction | false;\n\n // Allows defining a merge function (or merge:true/false shorthand) to\n // be used for merging objects of this type wherever they appear, unless\n // the parent field also defines a merge function/boolean (that is,\n // parent field merge functions take precedence over type policy merge\n // functions). In many cases, defining merge:true for a given type\n // policy can save you from specifying merge:true for all the field\n // policies where that type might be encountered.\n merge?: FieldMergeFunction | boolean;\n\n // In the rare event that your schema happens to use a different\n // __typename for the root Query, Mutation, and/or Schema types, you can\n // express your deviant preferences by enabling one of these options.\n queryType?: true;\n mutationType?: true;\n subscriptionType?: true;\n\n fields?: {\n [fieldName: string]: FieldPolicy<any> | FieldReadFunction<any>;\n };\n};\n\nexport type KeyArgsFunction = (\n args: Record<string, any> | null,\n context: {\n typename: string;\n fieldName: string;\n field: FieldNode | null;\n variables?: Record<string, any>;\n }\n) => KeySpecifier | false | ReturnType<IdGetter>;\n\nexport type FieldPolicy<\n // The internal representation used to store the field's data in the\n // cache. Must be JSON-serializable if you plan to serialize the result\n // of cache.extract() using JSON.\n TExisting = any,\n // The type of the incoming parameter passed to the merge function,\n // typically matching the GraphQL response format, but with Reference\n // objects substituted for any identifiable child objects. Often the\n // same as TExisting, but not necessarily.\n TIncoming = TExisting,\n // The type that the read function actually returns, using TExisting\n // data and options.args as input. Usually the same as TIncoming.\n TReadResult = TIncoming,\n // Allows FieldFunctionOptions definition to be overwritten by the\n // developer\n TOptions extends FieldFunctionOptions = FieldFunctionOptions,\n> = {\n keyArgs?: KeySpecifier | KeyArgsFunction | false;\n read?: FieldReadFunction<TExisting, TReadResult, TOptions>;\n merge?: FieldMergeFunction<TExisting, TIncoming, TOptions> | boolean;\n};\n\nexport type StorageType = Record<string, any>;\n\nfunction argsFromFieldSpecifier(spec: FieldSpecifier) {\n return (\n spec.args !== void 0 ? spec.args\n : spec.field ? argumentsObjectFromField(spec.field, spec.variables)\n : null\n );\n}\n\nexport interface FieldFunctionOptions<\n TArgs = Record<string, any>,\n TVars = Record<string, any>,\n> {\n args: TArgs | null;\n\n // The name of the field, equal to options.field.name.value when\n // options.field is available. Useful if you reuse the same function for\n // multiple fields, and you need to know which field you're currently\n // processing. Always a string, even when options.field is null.\n fieldName: string;\n\n // The full field key used internally, including serialized key arguments.\n storeFieldName: string;\n\n // The FieldNode object used to read this field. Useful if you need to\n // know about other attributes of the field, such as its directives. This\n // option will be null when a string was passed to options.readField.\n field: FieldNode | null;\n\n variables?: TVars;\n\n // Utilities for dealing with { __ref } objects.\n isReference: typeof isReference;\n toReference: ToReferenceFunction;\n\n // A handy place to put field-specific data that you want to survive\n // across multiple read function calls. Useful for field-level caching,\n // if your read function does any expensive work.\n storage: StorageType;\n\n cache: InMemoryCache;\n\n // Helper function for reading other fields within the current object.\n // If a foreign object or reference is provided, the field will be read\n // from that object instead of the current object, so this function can\n // be used (together with isReference) to examine the cache outside the\n // current object. If a FieldNode is passed instead of a string, and\n // that FieldNode has arguments, the same options.variables will be used\n // to compute the argument values. Note that this function will invoke\n // custom read functions for other fields, if defined. Always returns\n // immutable data (enforced with Object.freeze in development).\n readField: ReadFieldFunction;\n\n // Returns true for non-normalized StoreObjects and non-dangling\n // References, indicating that readField(name, objOrRef) has a chance of\n // working. Useful for filtering out dangling references from lists.\n canRead: CanReadFunction;\n\n // Instead of just merging objects with { ...existing, ...incoming }, this\n // helper function can be used to merge objects in a way that respects any\n // custom merge functions defined for their fields.\n mergeObjects: MergeObjectsFunction;\n}\n\ntype MergeObjectsFunction = <T extends StoreObject | Reference>(\n existing: T,\n incoming: T\n) => T;\n\nexport type FieldReadFunction<\n TExisting = any,\n TReadResult = TExisting,\n TOptions extends FieldFunctionOptions = FieldFunctionOptions,\n> = (\n // When reading a field, one often needs to know about any existing\n // value stored for that field. If the field is read before any value\n // has been written to the cache, this existing parameter will be\n // undefined, which makes it easy to use a default parameter expression\n // to supply the initial value. This parameter is positional (rather\n // than one of the named options) because that makes it possible for the\n // developer to annotate it with a type, without also having to provide\n // a whole new type for the options object.\n existing: SafeReadonly<TExisting> | undefined,\n options: TOptions\n) => TReadResult | undefined;\n\nexport type FieldMergeFunction<\n TExisting = any,\n TIncoming = TExisting,\n // Passing the whole FieldFunctionOptions makes the current definition\n // independent from its implementation\n TOptions extends FieldFunctionOptions = FieldFunctionOptions,\n> = (\n existing: SafeReadonly<TExisting> | undefined,\n // The incoming parameter needs to be positional as well, for the same\n // reasons discussed in FieldReadFunction above.\n incoming: SafeReadonly<TIncoming>,\n options: TOptions\n) => SafeReadonly<TExisting>;\n\nconst nullKeyFieldsFn: KeyFieldsFunction = () => void 0;\nconst simpleKeyArgsFn: KeyArgsFunction = (_args, context) => context.fieldName;\n\n// These merge functions can be selected by specifying merge:true or\n// merge:false in a field policy.\nconst mergeTrueFn: FieldMergeFunction<any> = (\n existing,\n incoming,\n { mergeObjects }\n) => mergeObjects(existing, incoming);\nconst mergeFalseFn: FieldMergeFunction<any> = (_, incoming) => incoming;\n\nexport type PossibleTypesMap = {\n [supertype: string]: string[];\n};\n\nexport class Policies {\n private typePolicies: {\n [__typename: string]: {\n keyFn?: KeyFieldsFunction;\n merge?: FieldMergeFunction<any>;\n fields: {\n [fieldName: string]: {\n keyFn?: KeyArgsFunction;\n read?: FieldReadFunction<any>;\n merge?: FieldMergeFunction<any>;\n };\n };\n };\n } = {};\n\n private toBeAdded: {\n [__typename: string]: TypePolicy[];\n } = {};\n\n // Map from subtype names to sets of supertype names. Note that this\n // representation inverts the structure of possibleTypes (whose keys are\n // supertypes and whose values are arrays of subtypes) because it tends\n // to be much more efficient to search upwards than downwards.\n private supertypeMap = new Map<string, Set<string>>();\n\n // Any fuzzy subtypes specified by possibleTypes will be converted to\n // RegExp objects and recorded here. Every key of this map can also be\n // found in supertypeMap. In many cases this Map will be empty, which\n // means no fuzzy subtype checking will happen in fragmentMatches.\n private fuzzySubtypes = new Map<string, RegExp>();\n\n public readonly cache: InMemoryCache;\n\n public readonly rootIdsByTypename: Record<string, string> = {};\n public readonly rootTypenamesById: Record<string, string> = {};\n\n public readonly usingPossibleTypes = false;\n\n constructor(\n private config: {\n cache: InMemoryCache;\n dataIdFromObject?: KeyFieldsFunction;\n possibleTypes?: PossibleTypesMap;\n typePolicies?: TypePolicies;\n }\n ) {\n this.config = {\n dataIdFromObject: defaultDataIdFromObject,\n ...config,\n };\n\n this.cache = this.config.cache;\n\n this.setRootTypename(\"Query\");\n this.setRootTypename(\"Mutation\");\n this.setRootTypename(\"Subscription\");\n\n if (config.possibleTypes) {\n this.addPossibleTypes(config.possibleTypes);\n }\n\n if (config.typePolicies) {\n this.addTypePolicies(config.typePolicies);\n }\n }\n\n public identify(\n object: StoreObject,\n partialContext?: Partial<KeyFieldsContext>\n ): [string?, StoreObject?] {\n const policies = this;\n\n const typename =\n (partialContext &&\n (partialContext.typename || partialContext.storeObject?.__typename)) ||\n object.__typename;\n\n // It should be possible to write root Query fields with writeFragment,\n // using { __typename: \"Query\", ... } as the data, but it does not make\n // sense to allow the same identification behavior for the Mutation and\n // Subscription types, since application code should never be writing\n // directly to (or reading directly from) those root objects.\n if (typename === this.rootTypenamesById.ROOT_QUERY) {\n return [\"ROOT_QUERY\"];\n }\n\n // Default context.storeObject to object if not otherwise provided.\n const storeObject =\n (partialContext && partialContext.storeObject) || object;\n\n const context: KeyFieldsContext = {\n ...partialContext,\n typename,\n storeObject,\n readField:\n (partialContext && partialContext.readField) ||\n (((...args) => {\n const options = normalizeReadFieldOptions(args, storeObject);\n return policies.readField(options, {\n store: policies.cache[\"data\"],\n variables: options.variables,\n });\n }) satisfies ReadFieldFunction),\n };\n\n let id: KeyFieldsResult;\n\n const policy = typename && this.getTypePolicy(typename);\n let keyFn = (policy && policy.keyFn) || this.config.dataIdFromObject;\n\n disableWarningsSlot.withValue(true, () => {\n while (keyFn) {\n const specifierOrId = keyFn({ ...object, ...storeObject }, context);\n if (isArray(specifierOrId)) {\n keyFn = keyFieldsFnFromSpecifier(specifierOrId);\n } else {\n id = specifierOrId;\n break;\n }\n }\n });\n\n id = id ? String(id) : void 0;\n return context.keyObject ? [id, context.keyObject] : [id];\n }\n\n public addTypePolicies(typePolicies: TypePolicies) {\n Object.keys(typePolicies).forEach((typename) => {\n const { queryType, mutationType, subscriptionType, ...incoming } =\n typePolicies[typename];\n\n // Though {query,mutation,subscription}Type configurations are rare,\n // it's important to call setRootTypename as early as possible,\n // since these configurations should apply consistently for the\n // entire lifetime of the cache. Also, since only one __typename can\n // qualify as one of these root types, these three properties cannot\n // be inherited, unlike the rest of the incoming properties. That\n // restriction is convenient, because the purpose of this.toBeAdded\n // is to delay the processing of type/field policies until the first\n // time they're used, allowing policies to be added in any order as\n // long as all relevant policies (including policies for supertypes)\n // have been added by the time a given policy is used for the first\n // time. In other words, since inheritance doesn't matter for these\n // properties, there's also no need to delay their processing using\n // the this.toBeAdded queue.\n if (queryType) this.setRootTypename(\"Query\", typename);\n if (mutationType) this.setRootTypename(\"Mutation\", typename);\n if (subscriptionType) this.setRootTypename(\"Subscription\", typename);\n\n if (hasOwn.call(this.toBeAdded, typename)) {\n this.toBeAdded[typename].push(incoming);\n } else {\n this.toBeAdded[typename] = [incoming];\n }\n });\n }\n\n private updateTypePolicy(typename: string, incoming: TypePolicy) {\n const existing = this.getTypePolicy(typename);\n const { keyFields, fields } = incoming;\n\n function setMerge(\n existing: { merge?: FieldMergeFunction | boolean },\n merge?: FieldMergeFunction | boolean\n ) {\n existing.merge =\n typeof merge === \"function\" ? merge\n // Pass merge:true as a shorthand for a merge implementation\n // that returns options.mergeObjects(existing, incoming).\n : merge === true ? mergeTrueFn\n // Pass merge:false to make incoming always replace existing\n // without any warnings about data clobbering.\n : merge === false ? mergeFalseFn\n : existing.merge;\n }\n\n // Type policies can define merge functions, as an alternative to\n // using field policies to merge child objects.\n setMerge(existing, incoming.merge);\n\n existing.keyFn =\n // Pass false to disable normalization for this typename.\n keyFields === false ? nullKeyFieldsFn\n // Pass an array of strings to use those fields to compute a\n // composite ID for objects of this typename.\n : isArray(keyFields) ? keyFieldsFnFromSpecifier(keyFields)\n // Pass a function to take full control over identification.\n : typeof keyFields === \"function\" ? keyFields\n // Leave existing.keyFn unchanged if above cases fail.\n : existing.keyFn;\n\n if (fields) {\n Object.keys(fields).forEach((fieldName) => {\n const existing = this.getFieldPolicy(typename, fieldName, true)!;\n const incoming = fields[fieldName];\n\n if (typeof incoming === \"function\") {\n existing.read = incoming;\n } else {\n const { keyArgs, read, merge } = incoming;\n\n existing.keyFn =\n // Pass false to disable argument-based differentiation of\n // field identities.\n keyArgs === false ? simpleKeyArgsFn\n // Pass an array of strings to use named arguments to\n // compute a composite identity for the field.\n : isArray(keyArgs) ? keyArgsFnFromSpecifier(keyArgs)\n // Pass a function to take full control over field identity.\n : typeof keyArgs === \"function\" ? keyArgs\n // Leave existing.keyFn unchanged if above cases fail.\n : existing.keyFn;\n\n if (typeof read === \"function\") {\n existing.read = read;\n }\n\n setMerge(existing, merge);\n }\n\n if (existing.read && existing.merge) {\n // If we have both a read and a merge function, assume\n // keyArgs:false, because read and merge together can take\n // responsibility for interpreting arguments in and out. This\n // default assumption can always be overridden by specifying\n // keyArgs explicitly in the FieldPolicy.\n existing.keyFn = existing.keyFn || simpleKeyArgsFn;\n }\n });\n }\n }\n\n private setRootTypename(\n which: \"Query\" | \"Mutation\" | \"Subscription\",\n typename: string = which\n ) {\n const rootId = \"ROOT_\" + which.toUpperCase();\n const old = this.rootTypenamesById[rootId];\n if (typename !== old) {\n invariant(\n !old || old === which,\n `Cannot change root %s __typename more than once`,\n which\n );\n // First, delete any old __typename associated with this rootId from\n // rootIdsByTypename.\n if (old) delete this.rootIdsByTypename[old];\n // Now make this the only __typename that maps to this rootId.\n this.rootIdsByTypename[typename] = rootId;\n // Finally, update the __typename associated with this rootId.\n this.rootTypenamesById[rootId] = typename;\n }\n }\n\n public addPossibleTypes(possibleTypes: PossibleTypesMap) {\n (this.usingPossibleTypes as boolean) = true;\n Object.keys(possibleTypes).forEach((supertype) => {\n // Make sure all types have an entry in this.supertypeMap, even if\n // their supertype set is empty, so we can return false immediately\n // from policies.fragmentMatches for unknown supertypes.\n this.getSupertypeSet(supertype, true);\n\n possibleTypes[supertype].forEach((subtype) => {\n this.getSupertypeSet(subtype, true)!.add(supertype);\n const match = subtype.match(TypeOrFieldNameRegExp);\n if (!match || match[0] !== subtype) {\n // TODO Don't interpret just any invalid typename as a RegExp.\n this.fuzzySubtypes.set(subtype, new RegExp(subtype));\n }\n });\n });\n }\n\n private getTypePolicy(typename: string): Policies[\"typePolicies\"][string] {\n if (!hasOwn.call(this.typePolicies, typename)) {\n const policy: Policies[\"typePolicies\"][string] = (this.typePolicies[\n typename\n ] = {} as any);\n policy.fields = {};\n\n // When the TypePolicy for typename is first accessed, instead of\n // starting with an empty policy object, inherit any properties or\n // fields from the type policies of the supertypes of typename.\n //\n // Any properties or fields defined explicitly within the TypePolicy\n // for typename will take precedence, and if there are multiple\n // supertypes, the properties of policies whose types were added\n // later via addPossibleTypes will take precedence over those of\n // earlier supertypes. TODO Perhaps we should warn about these\n // conflicts in development, and recommend defining the property\n // explicitly in the subtype policy?\n //\n // Field policy inheritance is atomic/shallow: you can't inherit a\n // field policy and then override just its read function, since read\n // and merge functions often need to cooperate, so changing only one\n // of them would be a recipe for inconsistency.\n //\n // Once the TypePolicy for typename has been accessed, its properties can\n // still be updated directly using addTypePolicies, but future changes to\n // inherited supertype policies will not be reflected in this subtype\n // policy, because this code runs at most once per typename.\n let supertypes = this.supertypeMap.get(typename);\n if (!supertypes && this.fuzzySubtypes.size) {\n // To make the inheritance logic work for unknown typename strings that\n // may have fuzzy supertypes, we give this typename an empty supertype\n // set and then populate it with any fuzzy supertypes that match.\n supertypes = this.getSupertypeSet(typename, true)!;\n // This only works for typenames that are directly matched by a fuzzy\n // supertype. What if there is an intermediate chain of supertypes?\n // While possible, that situation can only be solved effectively by\n // specifying the intermediate relationships via possibleTypes, manually\n // and in a non-fuzzy way.\n this.fuzzySubtypes.forEach((regExp, fuzzy) => {\n if (regExp.test(typename)) {\n // The fuzzy parameter is just the original string version of regExp\n // (not a valid __typename string), but we can look up the\n // associated supertype(s) in this.supertypeMap.\n const fuzzySupertypes = this.supertypeMap.get(fuzzy);\n if (fuzzySupertypes) {\n fuzzySupertypes.forEach((supertype) =>\n supertypes!.add(supertype)\n );\n }\n }\n });\n }\n if (supertypes && supertypes.size) {\n supertypes.forEach((supertype) => {\n const { fields, ...rest } = this.getTypePolicy(supertype);\n Object.assign(policy, rest);\n Object.assign(policy.fields, fields);\n });\n }\n }\n\n const inbox = this.toBeAdded[typename];\n if (inbox && inbox.length) {\n // Merge the pending policies into this.typePolicies, in the order they\n // were originally passed to addTypePolicy.\n inbox.splice(0).forEach((policy) => {\n this.updateTypePolicy(typename, policy);\n });\n }\n\n return this.typePolicies[typename];\n }\n\n private getFieldPolicy(\n typename: string | undefined,\n fieldName: string,\n createIfMissing: boolean\n ):\n | {\n keyFn?: KeyArgsFunction;\n read?: FieldReadFunction<any>;\n merge?: FieldMergeFunction<any>;\n }\n | undefined {\n if (typename) {\n const fieldPolicies = this.getTypePolicy(typename).fields;\n return (\n fieldPolicies[fieldName] ||\n (createIfMissing && (fieldPolicies[fieldName] = {}))\n );\n }\n }\n\n private getSupertypeSet(\n subtype: string,\n createIfMissing: boolean\n ): Set<string> | undefined {\n let supertypeSet = this.supertypeMap.get(subtype);\n if (!supertypeSet && createIfMissing) {\n this.supertypeMap.set(subtype, (supertypeSet = new Set<string>()));\n }\n return supertypeSet;\n }\n\n public fragmentMatches(\n fragment: InlineFragmentNode | FragmentDefinitionNode,\n typename: string | undefined,\n result?: Record<string, any>,\n variables?: Record<string, any>\n ): boolean {\n if (!fragment.typeCondition) return true;\n\n // If the fragment has a type condition but the object we're matching\n // against does not have a __typename, the fragment cannot match.\n if (!typename) return false;\n\n const supertype = fragment.typeCondition.name.value;\n // Common case: fragment type condition and __typename are the same.\n if (typename === supertype) return true;\n\n if (this.usingPossibleTypes && this.supertypeMap.has(supertype)) {\n const typenameSupertypeSet = this.getSupertypeSet(typename, true)!;\n const workQueue = [typenameSupertypeSet];\n const maybeEnqueue = (subtype: string) => {\n const supertypeSet = this.getSupertypeSet(subtype, false);\n if (\n supertypeSet &&\n supertypeSet.size &&\n workQueue.indexOf(supertypeSet) < 0\n ) {\n workQueue.push(supertypeSet);\n }\n };\n\n // We need to check fuzzy subtypes only if we encountered fuzzy\n // subtype strings in addPossibleTypes, and only while writing to\n // the cache, since that's when selectionSetMatchesResult gives a\n // strong signal of fragment matching. The StoreReader class calls\n // policies.fragmentMatches without passing a result object, so\n // needToCheckFuzzySubtypes is always false while reading.\n let needToCheckFuzzySubtypes = !!(result && this.fuzzySubtypes.size);\n let checkingFuzzySubtypes = false;\n\n // It's important to keep evaluating workQueue.length each time through\n // the loop, because the queue can grow while we're iterating over it.\n for (let i = 0; i < workQueue.length; ++i) {\n const supertypeSet = workQueue[i];\n\n if (supertypeSet.has(supertype)) {\n if (!typenameSupertypeSet.has(supertype)) {\n if (checkingFuzzySubtypes) {\n invariant.warn(\n `Inferring subtype %s of supertype %s`,\n typename,\n supertype\n );\n }\n // Record positive results for faster future lookup.\n // Unfortunately, we cannot safely cache negative results,\n // because new possibleTypes data could always be added to the\n // Policies class.\n typenameSupertypeSet.add(supertype);\n }\n return true;\n }\n\n supertypeSet.forEach(maybeEnqueue);\n\n if (\n needToCheckFuzzySubtypes &&\n // Start checking fuzzy subtypes only after exhausting all\n // non-fuzzy subtypes (after the final iteration of the loop).\n i === workQueue.length - 1 &&\n // We could wait to compare fragment.selectionSet to result\n // after we verify the supertype, but this check is often less\n // expensive than that search, and we will have to do the\n // comparison anyway whenever we find a potential match.\n selectionSetMatchesResult(fragment.selectionSet, result!, variables)\n ) {\n // We don't always need to check fuzzy subtypes (if no result\n // was provided, or !this.fuzzySubtypes.size), but, when we do,\n // we only want to check them once.\n needToCheckFuzzySubtypes = false;\n checkingFuzzySubtypes = true;\n\n // If we find any fuzzy subtypes that match typename, extend the\n // workQueue to search through the supertypes of those fuzzy\n // subtypes. Otherwise the for-loop will terminate and we'll\n // return false below.\n this.fuzzySubtypes.forEach((regExp, fuzzyString) => {\n const match = typename.match(regExp);\n if (match && match[0] === typename) {\n maybeEnqueue(fuzzyString);\n }\n });\n }\n }\n }\n\n return false;\n }\n\n public hasKeyArgs(typename: string | undefined, fieldName: string) {\n const policy = this.getFieldPolicy(typename, fieldName, false);\n return !!(policy && policy.keyFn);\n }\n\n public getStoreFieldName(fieldSpec: FieldSpecifier): string {\n const { typename, fieldName } = fieldSpec;\n const policy = this.getFieldPolicy(typename, fieldName, false);\n let storeFieldName: Exclude<ReturnType<KeyArgsFunction>, KeySpecifier>;\n\n let keyFn = policy && policy.keyFn;\n if (keyFn && typename) {\n const context: Parameters<KeyArgsFunction>[1] = {\n typename,\n fieldName,\n field: fieldSpec.field || null,\n variables: fieldSpec.variables,\n };\n const args = argsFromFieldSpecifier(fieldSpec);\n while (keyFn) {\n const specifierOrString = keyFn(args, context);\n if (isArray(specifierOrString)) {\n keyFn = keyArgsFnFromSpecifier(specifierOrString);\n } else {\n // If the custom keyFn returns a falsy value, fall back to\n // fieldName instead.\n storeFieldName = specifierOrString || fieldName;\n break;\n }\n }\n }\n\n if (storeFieldName === void 0) {\n storeFieldName =\n fieldSpec.field ?\n storeKeyNameFromField(fieldSpec.field, fieldSpec.variables)\n : getStoreKeyName(fieldName, argsFromFieldSpecifier(fieldSpec));\n }\n\n // Returning false from a keyArgs function is like configuring\n // keyArgs: false, but more dynamic.\n if (storeFieldName === false) {\n return fieldName;\n }\n\n // Make sure custom field names start with the actual field.name.value\n // of the field, so we can always figure out which properties of a\n // StoreObject correspond to which original field names.\n return fieldName === fieldNameFromStoreName(storeFieldName) ? storeFieldName\n : fieldName + \":\" + storeFieldName;\n }\n\n public readField<V = StoreValue>(\n options: ReadFieldOptions,\n context: ReadMergeModifyContext\n ): SafeReadonly<V> | undefined {\n const objectOrReference = options.from;\n if (!objectOrReference) return;\n\n const nameOrField = options.field || options.fieldName;\n if (!nameOrField) return;\n\n if (options.typename === void 0) {\n const typename = context.store.getFieldValue<string>(\n objectOrReference,\n \"__typename\"\n );\n if (typename) options.typename = typename;\n }\n\n const storeFieldName = this.getStoreFieldName(options);\n const fieldName = fieldNameFromStoreName(storeFieldName);\n const existing = context.store.getFieldValue<V>(\n objectOrReference,\n storeFieldName\n );\n const policy = this.getFieldPolicy(options.typename, fieldName, false);\n const read = policy && policy.read;\n\n if (read) {\n const readOptions = makeFieldFunctionOptions(\n this,\n objectOrReference,\n options,\n context,\n context.store.getStorage(\n isReference(objectOrReference) ?\n objectOrReference.__ref\n : objectOrReference,\n storeFieldName\n )\n );\n\n // Call read(existing, readOptions) with cacheSlot holding this.cache.\n return cacheSlot.withValue(this.cache, read, [\n existing,\n readOptions,\n ]) as SafeReadonly<V>;\n }\n\n return existing;\n }\n\n public getReadFunction(\n typename: string | undefined,\n fieldName: string\n ): FieldReadFunction | undefined {\n const policy = this.getFieldPolicy(typename, fieldName, false);\n return policy && policy.read;\n }\n\n public getMergeFunction(\n parentTypename: string | undefined,\n fieldName: string,\n childTypename: string | undefined\n ): FieldMergeFunction | undefined {\n let policy:\n | Policies[\"typePolicies\"][string]\n | Policies[\"typePolicies\"][string][\"fields\"][string]\n | undefined = this.getFieldPolicy(parentTypename, fieldName, false);\n let merge = policy && policy.merge;\n if (!merge && childTypename) {\n policy = this.getTypePolicy(childTypename);\n merge = policy && policy.merge;\n }\n return merge;\n }\n\n public runMergeFunction(\n existing: StoreValue,\n incoming: StoreValue,\n { field, typename, merge }: MergeInfo,\n context: WriteContext,\n storage?: StorageType\n ) {\n if (merge === mergeTrueFn) {\n // Instead of going to the trouble of creating a full\n // FieldFunctionOptions object and calling mergeTrueFn, we can\n // simply call mergeObjects, as mergeTrueFn would.\n return makeMergeObjectsFunction(context.store)(\n existing as StoreObject,\n incoming as StoreObject\n );\n }\n\n if (merge === mergeFalseFn) {\n // Likewise for mergeFalseFn, whose implementation is even simpler.\n return incoming;\n }\n\n // If cache.writeQuery or cache.writeFragment was called with\n // options.overwrite set to true, we still call merge functions, but\n // the existing data is always undefined, so the merge function will\n // not attempt to combine the incoming data with the existing data.\n if (context.overwrite) {\n existing = void 0;\n }\n\n return merge(\n existing,\n incoming,\n makeFieldFunctionOptions(\n this,\n // Unlike options.readField for read functions, we do not fall\n // back to the current object if no foreignObjOrRef is provided,\n // because it's not clear what the current object should be for\n // merge functions: the (possibly undefined) existing object, or\n // the incoming object? If you think your merge function needs\n // to read sibling fields in order to produce a new value for\n // the current field, you might want to rethink your strategy,\n // because that's a recipe for making merge behavior sensitive\n // to the order in which fields are written into the cache.\n // However, readField(name, ref) is useful for merge functions\n // that need to deduplicate child objects and references.\n void 0,\n {\n typename,\n fieldName: field.name.value,\n field,\n variables: context.variables,\n },\n context,\n storage || {}\n )\n );\n }\n}\n\nfunction makeFieldFunctionOptions(\n policies: Policies,\n objectOrReference: StoreObject | Reference | undefined,\n fieldSpec: FieldSpecifier,\n context: ReadMergeModifyContext,\n storage: StorageType\n): FieldFunctionOptions {\n const storeFieldName = policies.getStoreFieldName(fieldSpec);\n const fieldName = fieldNameFromStoreName(storeFieldName);\n const variables = fieldSpec.variables || context.variables;\n const { toReference, canRead } = context.store;\n\n return {\n args: argsFromFieldSpecifier(fieldSpec),\n field: fieldSpec.field || null,\n fieldName,\n storeFieldName,\n variables,\n isReference,\n toReference,\n storage,\n cache: policies.cache,\n canRead,\n readField<T>(...args: any[]) {\n return policies.readField<T>(\n normalizeReadFieldOptions(args, objectOrReference, variables),\n context\n );\n },\n mergeObjects: makeMergeObjectsFunction(context.store),\n };\n}\n\nexport function normalizeReadFieldOptions(\n readFieldArgs: any[],\n objectOrReference: StoreObject | Reference | undefined,\n variables?: ReadMergeModifyContext[\"variables\"]\n): ReadFieldOptions {\n const { 0: fieldNameOrOptions, 1: from, length: argc } = readFieldArgs;\n\n let options: ReadFieldOptions;\n\n if (typeof fieldNameOrOptions === \"string\") {\n options = {\n fieldName: fieldNameOrOptions,\n // Default to objectOrReference only when no second argument was\n // passed for the from parameter, not when undefined is explicitly\n // passed as the second argument.\n from: argc > 1 ? from : objectOrReference,\n };\n } else {\n options = { ...fieldNameOrOptions };\n // Default to objectOrReference only when fieldNameOrOptions.from is\n // actually omitted, rather than just undefined.\n if (!hasOwn.call(options, \"from\")) {\n options.from = objectOrReference;\n }\n }\n\n if (__DEV__ && options.from === void 0) {\n invariant.warn(\n `Undefined 'from' passed to readField with arguments %s`,\n stringifyForDisplay(Array.from(readFieldArgs))\n );\n }\n\n if (void 0 === options.variables) {\n options.variables = variables;\n }\n\n return options;\n}\n\nfunction makeMergeObjectsFunction(\n store: NormalizedCache\n): MergeObjectsFunction {\n return function mergeObjects(existing, incoming) {\n if (isArray(existing) || isArray(incoming)) {\n throw newInvariantError(\"Cannot automatically merge arrays\");\n }\n\n // These dynamic checks are necessary because the parameters of a\n // custom merge function can easily have the any type, so the type\n // system cannot always enforce the StoreObject | Reference parameter\n // types of options.mergeObjects.\n if (isNonNullObject(existing) && isNonNullObject(incoming)) {\n const eType = store.getFieldValue(existing, \"__typename\");\n const iType = store.getFieldValue(incoming, \"__typename\");\n const typesDiffer = eType && iType && eType !== iType;\n\n if (typesDiffer) {\n return incoming;\n }\n\n if (isReference(existing) && storeValueIsStoreObject(incoming)) {\n // Update the normalized EntityStore for the entity identified by\n // existing.__ref, preferring/overwriting any fields contributed by the\n // newer incoming StoreObject.\n store.merge(existing.__ref, incoming);\n return existing;\n }\n\n if (storeValueIsStoreObject(existing) && isReference(incoming)) {\n // Update the normalized EntityStore for the entity identified by\n // incoming.__ref, taking fields from the older existing object only if\n // those fields are not already present in the newer StoreObject\n // identified by incoming.__ref.\n store.merge(existing, incoming.__ref);\n return incoming;\n }\n\n if (\n storeValueIsStoreObject(existing) &&\n storeValueIsStoreObject(incoming)\n ) {\n return { ...existing, ...incoming };\n }\n }\n\n return incoming;\n };\n}\n"],"names":[],"mappings":";;;;;;;AAw9BA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAj9BA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAMA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAEA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAQA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAcA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AASA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAIA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA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A,CAAA,CAC6B,CAAC;YAExB,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,C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AAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN;YACM,CAAN,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,C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AA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,CAAA,EAAU,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAqC,CAAC,CAAC,CAAC,C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CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACQ,CAAR,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;QACQ,CAAR,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;QACQ,CAAR,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;QACQ,CAAR,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;QACQ,CAAR,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACQ,CAAR,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACQ,CAAR,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACQ,CAAR,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACQ,CAAR,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACQ,CAAR,CAAA,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"}
@@ -0,0 +1,98 @@
1
+ import type { FieldNode, FragmentDefinitionNode, InlineFragmentNode, SelectionSetNode } from "graphql";
2
+ import type { Reference, StoreObject, StoreValue } from "@apollo/client/utilities";
3
+ import { isReference } from "@apollo/client/utilities";
4
+ import type { FragmentMap } from "@apollo/client/utilities/internal";
5
+ import type { CanReadFunction, FieldSpecifier, ReadFieldFunction, ReadFieldOptions, SafeReadonly, ToReferenceFunction } from "../core/types/common.cjs";
6
+ import type { InMemoryCache } from "./inMemoryCache.cjs";
7
+ import type { IdGetter, MergeInfo, ReadMergeModifyContext } from "./types.cjs";
8
+ import type { WriteContext } from "./writeToStore.cjs";
9
+ export type TypePolicies = {
10
+ [__typename: string]: TypePolicy;
11
+ };
12
+ export type KeySpecifier = ReadonlyArray<string | KeySpecifier>;
13
+ export type KeyFieldsContext = {
14
+ typename: string | undefined;
15
+ storeObject: StoreObject;
16
+ readField: ReadFieldFunction;
17
+ selectionSet?: SelectionSetNode;
18
+ fragmentMap?: FragmentMap;
19
+ keyObject?: Record<string, any>;
20
+ };
21
+ export type KeyFieldsFunction = (object: Readonly<StoreObject>, context: KeyFieldsContext) => KeySpecifier | false | ReturnType<IdGetter>;
22
+ export type TypePolicy = {
23
+ keyFields?: KeySpecifier | KeyFieldsFunction | false;
24
+ merge?: FieldMergeFunction | boolean;
25
+ queryType?: true;
26
+ mutationType?: true;
27
+ subscriptionType?: true;
28
+ fields?: {
29
+ [fieldName: string]: FieldPolicy<any> | FieldReadFunction<any>;
30
+ };
31
+ };
32
+ export type KeyArgsFunction = (args: Record<string, any> | null, context: {
33
+ typename: string;
34
+ fieldName: string;
35
+ field: FieldNode | null;
36
+ variables?: Record<string, any>;
37
+ }) => KeySpecifier | false | ReturnType<IdGetter>;
38
+ export type FieldPolicy<TExisting = any, TIncoming = TExisting, TReadResult = TIncoming, TOptions extends FieldFunctionOptions = FieldFunctionOptions> = {
39
+ keyArgs?: KeySpecifier | KeyArgsFunction | false;
40
+ read?: FieldReadFunction<TExisting, TReadResult, TOptions>;
41
+ merge?: FieldMergeFunction<TExisting, TIncoming, TOptions> | boolean;
42
+ };
43
+ export type StorageType = Record<string, any>;
44
+ export interface FieldFunctionOptions<TArgs = Record<string, any>, TVars = Record<string, any>> {
45
+ args: TArgs | null;
46
+ fieldName: string;
47
+ storeFieldName: string;
48
+ field: FieldNode | null;
49
+ variables?: TVars;
50
+ isReference: typeof isReference;
51
+ toReference: ToReferenceFunction;
52
+ storage: StorageType;
53
+ cache: InMemoryCache;
54
+ readField: ReadFieldFunction;
55
+ canRead: CanReadFunction;
56
+ mergeObjects: MergeObjectsFunction;
57
+ }
58
+ type MergeObjectsFunction = <T extends StoreObject | Reference>(existing: T, incoming: T) => T;
59
+ export type FieldReadFunction<TExisting = any, TReadResult = TExisting, TOptions extends FieldFunctionOptions = FieldFunctionOptions> = (existing: SafeReadonly<TExisting> | undefined, options: TOptions) => TReadResult | undefined;
60
+ export type FieldMergeFunction<TExisting = any, TIncoming = TExisting, TOptions extends FieldFunctionOptions = FieldFunctionOptions> = (existing: SafeReadonly<TExisting> | undefined, incoming: SafeReadonly<TIncoming>, options: TOptions) => SafeReadonly<TExisting>;
61
+ export type PossibleTypesMap = {
62
+ [supertype: string]: string[];
63
+ };
64
+ export declare class Policies {
65
+ private config;
66
+ private typePolicies;
67
+ private toBeAdded;
68
+ private supertypeMap;
69
+ private fuzzySubtypes;
70
+ readonly cache: InMemoryCache;
71
+ readonly rootIdsByTypename: Record<string, string>;
72
+ readonly rootTypenamesById: Record<string, string>;
73
+ readonly usingPossibleTypes = false;
74
+ constructor(config: {
75
+ cache: InMemoryCache;
76
+ dataIdFromObject?: KeyFieldsFunction;
77
+ possibleTypes?: PossibleTypesMap;
78
+ typePolicies?: TypePolicies;
79
+ });
80
+ identify(object: StoreObject, partialContext?: Partial<KeyFieldsContext>): [string?, StoreObject?];
81
+ addTypePolicies(typePolicies: TypePolicies): void;
82
+ private updateTypePolicy;
83
+ private setRootTypename;
84
+ addPossibleTypes(possibleTypes: PossibleTypesMap): void;
85
+ private getTypePolicy;
86
+ private getFieldPolicy;
87
+ private getSupertypeSet;
88
+ fragmentMatches(fragment: InlineFragmentNode | FragmentDefinitionNode, typename: string | undefined, result?: Record<string, any>, variables?: Record<string, any>): boolean;
89
+ hasKeyArgs(typename: string | undefined, fieldName: string): boolean;
90
+ getStoreFieldName(fieldSpec: FieldSpecifier): string;
91
+ readField<V = StoreValue>(options: ReadFieldOptions, context: ReadMergeModifyContext): SafeReadonly<V> | undefined;
92
+ getReadFunction(typename: string | undefined, fieldName: string): FieldReadFunction | undefined;
93
+ getMergeFunction(parentTypename: string | undefined, fieldName: string, childTypename: string | undefined): FieldMergeFunction | undefined;
94
+ runMergeFunction(existing: StoreValue, incoming: StoreValue, { field, typename, merge }: MergeInfo, context: WriteContext, storage?: StorageType): any;
95
+ }
96
+ export declare function normalizeReadFieldOptions(readFieldArgs: any[], objectOrReference: StoreObject | Reference | undefined, variables?: ReadMergeModifyContext["variables"]): ReadFieldOptions;
97
+ export {};
98
+ //# sourceMappingURL=policies.d.cts.map
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cacheSlot = void 0;
4
+ exports.forgetCache = forgetCache;
5
+ exports.recallCache = recallCache;
6
+ exports.makeVar = makeVar;
7
+ const optimism_1 = require("optimism");
8
+ // Contextual Slot that acquires its value when custom read functions are
9
+ // called in Policies#readField.
10
+ exports.cacheSlot = new optimism_1.Slot();
11
+ const cacheInfoMap = new WeakMap();
12
+ function getCacheInfo(cache) {
13
+ let info = cacheInfoMap.get(cache);
14
+ if (!info) {
15
+ cacheInfoMap.set(cache, (info = {
16
+ vars: new Set(),
17
+ dep: (0, optimism_1.dep)(),
18
+ }));
19
+ }
20
+ return info;
21
+ }
22
+ function forgetCache(cache) {
23
+ getCacheInfo(cache).vars.forEach((rv) => rv.forgetCache(cache));
24
+ }
25
+ // Calling forgetCache(cache) serves to silence broadcasts and allows the
26
+ // cache to be garbage collected. However, the varsByCache WeakMap
27
+ // preserves the set of reactive variables that were previously associated
28
+ // with this cache, which makes it possible to "recall" the cache at a
29
+ // later time, by reattaching it to those variables. If the cache has been
30
+ // garbage collected in the meantime, because it is no longer reachable,
31
+ // you won't be able to call recallCache(cache), and the cache will
32
+ // automatically disappear from the varsByCache WeakMap.
33
+ function recallCache(cache) {
34
+ getCacheInfo(cache).vars.forEach((rv) => rv.attachCache(cache));
35
+ }
36
+ function makeVar(value) {
37
+ const caches = new Set();
38
+ const listeners = new Set();
39
+ const rv = function (newValue) {
40
+ if (arguments.length > 0) {
41
+ if (value !== newValue) {
42
+ value = newValue;
43
+ caches.forEach((cache) => {
44
+ // Invalidate any fields with custom read functions that
45
+ // consumed this variable, so query results involving those
46
+ // fields will be recomputed the next time we read them.
47
+ getCacheInfo(cache).dep.dirty(rv);
48
+ // Broadcast changes to any caches that have previously read
49
+ // from this variable.
50
+ broadcast(cache);
51
+ });
52
+ // Finally, notify any listeners added via rv.onNextChange.
53
+ const oldListeners = Array.from(listeners);
54
+ listeners.clear();
55
+ oldListeners.forEach((listener) => listener(value));
56
+ }
57
+ }
58
+ else {
59
+ // When reading from the variable, obtain the current cache from
60
+ // context via cacheSlot. This isn't entirely foolproof, but it's
61
+ // the same system that powers varDep.
62
+ const cache = exports.cacheSlot.getValue();
63
+ if (cache) {
64
+ attach(cache);
65
+ getCacheInfo(cache).dep(rv);
66
+ }
67
+ }
68
+ return value;
69
+ };
70
+ rv.onNextChange = (listener) => {
71
+ listeners.add(listener);
72
+ return () => {
73
+ listeners.delete(listener);
74
+ };
75
+ };
76
+ const attach = (rv.attachCache = (cache) => {
77
+ caches.add(cache);
78
+ getCacheInfo(cache).vars.add(rv);
79
+ return rv;
80
+ });
81
+ rv.forgetCache = (cache) => caches.delete(cache);
82
+ return rv;
83
+ }
84
+ function broadcast(cache) {
85
+ if (cache.broadcastWatches) {
86
+ cache.broadcastWatches();
87
+ }
88
+ }
89
+ //# sourceMappingURL=reactiveVars.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reactiveVars.cjs","sources":["../../../../src/cache/inmemory/reactiveVars.ts"],"sourcesContent":["import type { OptimisticDependencyFunction } from \"optimism\";\nimport { dep, Slot } from \"optimism\";\n\nimport type { ApolloCache } from \"@apollo/client\";\n\nimport type { InMemoryCache } from \"./inMemoryCache.js\";\n\nexport interface ReactiveVar<T> {\n (newValue?: T): T;\n onNextChange(listener: ReactiveListener<T>): () => void;\n attachCache(cache: ApolloCache): this;\n forgetCache(cache: ApolloCache): boolean;\n}\n\ntype ReactiveListener<T> = (value: T) => any;\n\n// Contextual Slot that acquires its value when custom read functions are\n// called in Policies#readField.\nexport const cacheSlot = new Slot<ApolloCache>();\n\nconst cacheInfoMap = new WeakMap<\n ApolloCache,\n {\n vars: Set<ReactiveVar<any>>;\n dep: OptimisticDependencyFunction<ReactiveVar<any>>;\n }\n>();\n\nfunction getCacheInfo(cache: ApolloCache) {\n let info = cacheInfoMap.get(cache)!;\n if (!info) {\n cacheInfoMap.set(\n cache,\n (info = {\n vars: new Set(),\n dep: dep(),\n })\n );\n }\n return info;\n}\n\nexport function forgetCache(cache: ApolloCache) {\n getCacheInfo(cache).vars.forEach((rv) => rv.forgetCache(cache));\n}\n\n// Calling forgetCache(cache) serves to silence broadcasts and allows the\n// cache to be garbage collected. However, the varsByCache WeakMap\n// preserves the set of reactive variables that were previously associated\n// with this cache, which makes it possible to \"recall\" the cache at a\n// later time, by reattaching it to those variables. If the cache has been\n// garbage collected in the meantime, because it is no longer reachable,\n// you won't be able to call recallCache(cache), and the cache will\n// automatically disappear from the varsByCache WeakMap.\nexport function recallCache(cache: ApolloCache) {\n getCacheInfo(cache).vars.forEach((rv) => rv.attachCache(cache));\n}\n\nexport function makeVar<T>(value: T): ReactiveVar<T> {\n const caches = new Set<ApolloCache>();\n const listeners = new Set<ReactiveListener<T>>();\n\n const rv: ReactiveVar<T> = function (newValue) {\n if (arguments.length > 0) {\n if (value !== newValue) {\n value = newValue!;\n caches.forEach((cache) => {\n // Invalidate any fields with custom read functions that\n // consumed this variable, so query results involving those\n // fields will be recomputed the next time we read them.\n getCacheInfo(cache).dep.dirty(rv);\n // Broadcast changes to any caches that have previously read\n // from this variable.\n broadcast(cache);\n });\n // Finally, notify any listeners added via rv.onNextChange.\n const oldListeners = Array.from(listeners);\n listeners.clear();\n oldListeners.forEach((listener) => listener(value));\n }\n } else {\n // When reading from the variable, obtain the current cache from\n // context via cacheSlot. This isn't entirely foolproof, but it's\n // the same system that powers varDep.\n const cache = cacheSlot.getValue();\n if (cache) {\n attach(cache);\n getCacheInfo(cache).dep(rv);\n }\n }\n\n return value;\n };\n\n rv.onNextChange = (listener) => {\n listeners.add(listener);\n return () => {\n listeners.delete(listener);\n };\n };\n\n const attach = (rv.attachCache = (cache) => {\n caches.add(cache);\n getCacheInfo(cache).vars.add(rv);\n return rv;\n });\n\n rv.forgetCache = (cache) => caches.delete(cache);\n\n return rv;\n}\n\ntype Broadcastable = ApolloCache & {\n // This method is protected in InMemoryCache, which we are ignoring, but\n // we still want some semblance of type safety when we call it.\n broadcastWatches?: InMemoryCache[\"broadcastWatches\"];\n};\n\nfunction broadcast(cache: Broadcastable) {\n if (cache.broadcastWatches) {\n cache.broadcastWatches();\n }\n}\n"],"names":[],"mappings":"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AA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA;AACA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;AACA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AACA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EA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"}
@@ -0,0 +1,19 @@
1
+ import type { ApolloCache } from "@apollo/client";
2
+ export interface ReactiveVar<T> {
3
+ (newValue?: T): T;
4
+ onNextChange(listener: ReactiveListener<T>): () => void;
5
+ attachCache(cache: ApolloCache): this;
6
+ forgetCache(cache: ApolloCache): boolean;
7
+ }
8
+ type ReactiveListener<T> = (value: T) => any;
9
+ export declare const cacheSlot: {
10
+ readonly id: string;
11
+ hasValue(): boolean;
12
+ getValue(): ApolloCache | undefined;
13
+ withValue<TResult, TArgs extends any[], TThis = any>(value: ApolloCache, callback: (this: TThis, ...args: TArgs) => TResult, args?: TArgs | undefined, thisArg?: TThis | undefined): TResult;
14
+ };
15
+ export declare function forgetCache(cache: ApolloCache): void;
16
+ export declare function recallCache(cache: ApolloCache): void;
17
+ export declare function makeVar<T>(value: T): ReactiveVar<T>;
18
+ export {};
19
+ //# sourceMappingURL=reactiveVars.d.cts.map