@apollo/client 3.13.7 → 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 +1800 -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 -40
  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 -368
  2065. package/utilities/subscriptions/urql/urql.cjs.map +0 -1
  2066. package/utilities/subscriptions/urql/urql.cjs.native.js +0 -368
  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
@@ -1 +1 @@
1
- {"version":3,"file":"inMemoryCache.js","sourceRoot":"","sources":["../../../src/cache/inmemory/inMemoryCache.ts"],"names":[],"mappings":"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","sourcesContent":["import { invariant } from \"../../utilities/globals/index.js\";\n\n// Make builtins like Map and Set safe to use with non-extensible objects.\nimport \"./fixPolyfills.js\";\n\nimport type {\n DocumentNode,\n FragmentDefinitionNode,\n InlineFragmentNode,\n} from \"graphql\";\nimport type { OptimisticWrapperFunction } from \"optimism\";\nimport { wrap } from \"optimism\";\nimport { equal } from \"@wry/equality\";\n\nimport { ApolloCache } from \"../core/cache.js\";\nimport type { Cache } from \"../core/types/Cache.js\";\nimport { MissingFieldError } from \"../core/types/common.js\";\nimport type { StoreObject, Reference } from \"../../utilities/index.js\";\nimport {\n addTypenameToDocument,\n isReference,\n DocumentTransform,\n canonicalStringify,\n print,\n cacheSizes,\n defaultCacheSizes,\n} from \"../../utilities/index.js\";\nimport type { InMemoryCacheConfig, NormalizedCacheObject } from \"./types.js\";\nimport { StoreReader } from \"./readFromStore.js\";\nimport { StoreWriter } from \"./writeToStore.js\";\nimport { EntityStore, supportsResultCaching } from \"./entityStore.js\";\nimport { makeVar, forgetCache, recallCache } from \"./reactiveVars.js\";\nimport { Policies } from \"./policies.js\";\nimport { hasOwn, normalizeConfig, shouldCanonizeResults } from \"./helpers.js\";\nimport type { OperationVariables } from \"../../core/index.js\";\nimport { getInMemoryCacheMemoryInternals } from \"../../utilities/caching/getMemoryInternals.js\";\n\ntype BroadcastOptions = Pick<\n Cache.BatchOptions<InMemoryCache>,\n \"optimistic\" | \"onWatchUpdated\"\n>;\n\nexport class InMemoryCache extends ApolloCache<NormalizedCacheObject> {\n private data!: EntityStore;\n private optimisticData!: EntityStore;\n\n protected config: InMemoryCacheConfig;\n private watches = new Set<Cache.WatchOptions>();\n private addTypename: boolean;\n\n private storeReader!: StoreReader;\n private storeWriter!: StoreWriter;\n private addTypenameTransform = new DocumentTransform(addTypenameToDocument);\n\n private maybeBroadcastWatch!: OptimisticWrapperFunction<\n [Cache.WatchOptions, BroadcastOptions?],\n any,\n [Cache.WatchOptions]\n >;\n\n // Override the default value, since InMemoryCache result objects are frozen\n // in development and expected to remain logically immutable in production.\n public readonly assumeImmutableResults = true;\n\n // Dynamically imported code can augment existing typePolicies or\n // possibleTypes by calling cache.policies.addTypePolicies or\n // cache.policies.addPossibletypes.\n public readonly policies: Policies;\n\n public readonly makeVar = makeVar;\n\n constructor(config: InMemoryCacheConfig = {}) {\n super();\n this.config = normalizeConfig(config);\n this.addTypename = !!this.config.addTypename;\n\n this.policies = new Policies({\n cache: this,\n dataIdFromObject: this.config.dataIdFromObject,\n possibleTypes: this.config.possibleTypes,\n typePolicies: this.config.typePolicies,\n });\n\n this.init();\n }\n\n private init() {\n // Passing { resultCaching: false } in the InMemoryCache constructor options\n // will completely disable dependency tracking, which will improve memory\n // usage but worsen the performance of repeated reads.\n const rootStore = (this.data = new EntityStore.Root({\n policies: this.policies,\n resultCaching: this.config.resultCaching,\n }));\n\n // When no optimistic writes are currently active, cache.optimisticData ===\n // cache.data, so there are no additional layers on top of the actual data.\n // When an optimistic update happens, this.optimisticData will become a\n // linked list of EntityStore Layer objects that terminates with the\n // original this.data cache object.\n this.optimisticData = rootStore.stump;\n\n this.resetResultCache();\n }\n\n private resetResultCache(resetResultIdentities?: boolean) {\n const previousReader = this.storeReader;\n const { fragments } = this.config;\n\n // The StoreWriter is mostly stateless and so doesn't really need to be\n // reset, but it does need to have its writer.storeReader reference updated,\n // so it's simpler to update this.storeWriter as well.\n this.storeWriter = new StoreWriter(\n this,\n (this.storeReader = new StoreReader({\n cache: this,\n addTypename: this.addTypename,\n resultCacheMaxSize: this.config.resultCacheMaxSize,\n canonizeResults: shouldCanonizeResults(this.config),\n canon:\n resetResultIdentities ? void 0 : (\n previousReader && previousReader.canon\n ),\n fragments,\n })),\n fragments\n );\n\n this.maybeBroadcastWatch = wrap(\n (c: Cache.WatchOptions, options?: BroadcastOptions) => {\n return this.broadcastWatch(c, options);\n },\n {\n max:\n this.config.resultCacheMaxSize ||\n cacheSizes[\"inMemoryCache.maybeBroadcastWatch\"] ||\n defaultCacheSizes[\"inMemoryCache.maybeBroadcastWatch\"],\n makeCacheKey: (c: Cache.WatchOptions) => {\n // Return a cache key (thus enabling result caching) only if we're\n // currently using a data store that can track cache dependencies.\n const store = c.optimistic ? this.optimisticData : this.data;\n if (supportsResultCaching(store)) {\n const { optimistic, id, variables } = c;\n return store.makeCacheKey(\n c.query,\n // Different watches can have the same query, optimistic\n // status, rootId, and variables, but if their callbacks are\n // different, the (identical) result needs to be delivered to\n // each distinct callback. The easiest way to achieve that\n // separation is to include c.callback in the cache key for\n // maybeBroadcastWatch calls. See issue #5733.\n c.callback,\n canonicalStringify({ optimistic, id, variables })\n );\n }\n },\n }\n );\n\n // Since we have thrown away all the cached functions that depend on the\n // CacheGroup dependencies maintained by EntityStore, we should also reset\n // all CacheGroup dependency information.\n new Set([this.data.group, this.optimisticData.group]).forEach((group) =>\n group.resetCaching()\n );\n }\n\n public restore(data: NormalizedCacheObject): this {\n this.init();\n // Since calling this.init() discards/replaces the entire StoreReader, along\n // with the result caches it maintains, this.data.replace(data) won't have\n // to bother deleting the old data.\n if (data) this.data.replace(data);\n return this;\n }\n\n public extract(optimistic: boolean = false): NormalizedCacheObject {\n return (optimistic ? this.optimisticData : this.data).extract();\n }\n\n public read<T>(options: Cache.ReadOptions): T | null {\n const {\n // Since read returns data or null, without any additional metadata\n // about whether/where there might have been missing fields, the\n // default behavior cannot be returnPartialData = true (like it is\n // for the diff method), since defaulting to true would violate the\n // integrity of the T in the return type. However, partial data may\n // be useful in some cases, so returnPartialData:true may be\n // specified explicitly.\n returnPartialData = false,\n } = options;\n try {\n return (\n this.storeReader.diffQueryAgainstStore<T>({\n ...options,\n store: options.optimistic ? this.optimisticData : this.data,\n config: this.config,\n returnPartialData,\n }).result || null\n );\n } catch (e) {\n if (e instanceof MissingFieldError) {\n // Swallow MissingFieldError and return null, so callers do not need to\n // worry about catching \"normal\" exceptions resulting from incomplete\n // cache data. Unexpected errors will be re-thrown. If you need more\n // information about which fields were missing, use cache.diff instead,\n // and examine diffResult.missing.\n return null;\n }\n throw e;\n }\n }\n\n public write(options: Cache.WriteOptions): Reference | undefined {\n try {\n ++this.txCount;\n return this.storeWriter.writeToStore(this.data, options);\n } finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n }\n\n public modify<Entity extends Record<string, any> = Record<string, any>>(\n options: Cache.ModifyOptions<Entity>\n ): boolean {\n if (hasOwn.call(options, \"id\") && !options.id) {\n // To my knowledge, TypeScript does not currently provide a way to\n // enforce that an optional property?:type must *not* be undefined\n // when present. That ability would be useful here, because we want\n // options.id to default to ROOT_QUERY only when no options.id was\n // provided. If the caller attempts to pass options.id with a\n // falsy/undefined value (perhaps because cache.identify failed), we\n // should not assume the goal was to modify the ROOT_QUERY object.\n // We could throw, but it seems natural to return false to indicate\n // that nothing was modified.\n return false;\n }\n const store =\n (\n options.optimistic // Defaults to false.\n ) ?\n this.optimisticData\n : this.data;\n try {\n ++this.txCount;\n return store.modify(options.id || \"ROOT_QUERY\", options.fields);\n } finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n }\n\n public diff<TData, TVariables extends OperationVariables = any>(\n options: Cache.DiffOptions<TData, TVariables>\n ): Cache.DiffResult<TData> {\n return this.storeReader.diffQueryAgainstStore({\n ...options,\n store: options.optimistic ? this.optimisticData : this.data,\n rootId: options.id || \"ROOT_QUERY\",\n config: this.config,\n });\n }\n\n public watch<TData = any, TVariables = any>(\n watch: Cache.WatchOptions<TData, TVariables>\n ): () => void {\n if (!this.watches.size) {\n // In case we previously called forgetCache(this) because\n // this.watches became empty (see below), reattach this cache to any\n // reactive variables on which it previously depended. It might seem\n // paradoxical that we're able to recall something we supposedly\n // forgot, but the point of calling forgetCache(this) is to silence\n // useless broadcasts while this.watches is empty, and to allow the\n // cache to be garbage collected. If, however, we manage to call\n // recallCache(this) here, this cache object must not have been\n // garbage collected yet, and should resume receiving updates from\n // reactive variables, now that it has a watcher to notify.\n recallCache(this);\n }\n this.watches.add(watch);\n if (watch.immediate) {\n this.maybeBroadcastWatch(watch);\n }\n return () => {\n // Once we remove the last watch from this.watches, cache.broadcastWatches\n // no longer does anything, so we preemptively tell the reactive variable\n // system to exclude this cache from future broadcasts.\n if (this.watches.delete(watch) && !this.watches.size) {\n forgetCache(this);\n }\n // Remove this watch from the LRU cache managed by the\n // maybeBroadcastWatch OptimisticWrapperFunction, to prevent memory\n // leaks involving the closure of watch.callback.\n this.maybeBroadcastWatch.forget(watch);\n };\n }\n\n public gc(options?: {\n // If true, also free non-essential result cache memory by bulk-releasing\n // this.{store{Reader,Writer},maybeBroadcastWatch}. Defaults to false.\n resetResultCache?: boolean;\n // If resetResultCache is true, this.storeReader.canon will be preserved by\n // default, but can also be discarded by passing resetResultIdentities:true.\n // Defaults to false.\n resetResultIdentities?: boolean;\n }) {\n canonicalStringify.reset();\n print.reset();\n this.addTypenameTransform.resetCache();\n this.config.fragments?.resetCaches();\n const ids = this.optimisticData.gc();\n if (options && !this.txCount) {\n if (options.resetResultCache) {\n this.resetResultCache(options.resetResultIdentities);\n } else if (options.resetResultIdentities) {\n this.storeReader.resetCanon();\n }\n }\n return ids;\n }\n\n // Call this method to ensure the given root ID remains in the cache after\n // garbage collection, along with its transitive child entities. Note that\n // the cache automatically retains all directly written entities. By default,\n // the retainment persists after optimistic updates are removed. Pass true\n // for the optimistic argument if you would prefer for the retainment to be\n // discarded when the top-most optimistic layer is removed. Returns the\n // resulting (non-negative) retainment count.\n public retain(rootId: string, optimistic?: boolean): number {\n return (optimistic ? this.optimisticData : this.data).retain(rootId);\n }\n\n // Call this method to undo the effect of the retain method, above. Once the\n // retainment count falls to zero, the given ID will no longer be preserved\n // during garbage collection, though it may still be preserved by other safe\n // entities that refer to it. Returns the resulting (non-negative) retainment\n // count, in case that's useful.\n public release(rootId: string, optimistic?: boolean): number {\n return (optimistic ? this.optimisticData : this.data).release(rootId);\n }\n\n // Returns the canonical ID for a given StoreObject, obeying typePolicies\n // and keyFields (and dataIdFromObject, if you still use that). At minimum,\n // the object must contain a __typename and any primary key fields required\n // to identify entities of that type. If you pass a query result object, be\n // sure that none of the primary key fields have been renamed by aliasing.\n // If you pass a Reference object, its __ref ID string will be returned.\n public identify(object: StoreObject | Reference): string | undefined {\n if (isReference(object)) return object.__ref;\n try {\n return this.policies.identify(object)[0];\n } catch (e) {\n invariant.warn(e);\n }\n }\n\n public evict(options: Cache.EvictOptions): boolean {\n if (!options.id) {\n if (hasOwn.call(options, \"id\")) {\n // See comment in modify method about why we return false when\n // options.id exists but is falsy/undefined.\n return false;\n }\n options = { ...options, id: \"ROOT_QUERY\" };\n }\n try {\n // It's unlikely that the eviction will end up invoking any other\n // cache update operations while it's running, but {in,de}crementing\n // this.txCount still seems like a good idea, for uniformity with\n // the other update methods.\n ++this.txCount;\n // Pass this.data as a limit on the depth of the eviction, so evictions\n // during optimistic updates (when this.data is temporarily set equal to\n // this.optimisticData) do not escape their optimistic Layer.\n return this.optimisticData.evict(options, this.data);\n } finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n }\n\n public reset(options?: Cache.ResetOptions): Promise<void> {\n this.init();\n\n canonicalStringify.reset();\n\n if (options && options.discardWatches) {\n // Similar to what happens in the unsubscribe function returned by\n // cache.watch, applied to all current watches.\n this.watches.forEach((watch) => this.maybeBroadcastWatch.forget(watch));\n this.watches.clear();\n forgetCache(this);\n } else {\n // Calling this.init() above unblocks all maybeBroadcastWatch caching, so\n // this.broadcastWatches() triggers a broadcast to every current watcher\n // (letting them know their data is now missing). This default behavior is\n // convenient because it means the watches do not have to be manually\n // reestablished after resetting the cache. To prevent this broadcast and\n // cancel all watches, pass true for options.discardWatches.\n this.broadcastWatches();\n }\n\n return Promise.resolve();\n }\n\n public removeOptimistic(idToRemove: string) {\n const newOptimisticData = this.optimisticData.removeLayer(idToRemove);\n if (newOptimisticData !== this.optimisticData) {\n this.optimisticData = newOptimisticData;\n this.broadcastWatches();\n }\n }\n\n private txCount = 0;\n\n public batch<TUpdateResult>(\n options: Cache.BatchOptions<InMemoryCache, TUpdateResult>\n ): TUpdateResult {\n const {\n update,\n optimistic = true,\n removeOptimistic,\n onWatchUpdated,\n } = options;\n\n let updateResult: TUpdateResult;\n const perform = (layer?: EntityStore): TUpdateResult => {\n const { data, optimisticData } = this;\n ++this.txCount;\n if (layer) {\n this.data = this.optimisticData = layer;\n }\n try {\n return (updateResult = update(this));\n } finally {\n --this.txCount;\n this.data = data;\n this.optimisticData = optimisticData;\n }\n };\n\n const alreadyDirty = new Set<Cache.WatchOptions>();\n\n if (onWatchUpdated && !this.txCount) {\n // If an options.onWatchUpdated callback is provided, we want to call it\n // with only the Cache.WatchOptions objects affected by options.update,\n // but there might be dirty watchers already waiting to be broadcast that\n // have nothing to do with the update. To prevent including those watchers\n // in the post-update broadcast, we perform this initial broadcast to\n // collect the dirty watchers, so we can re-dirty them later, after the\n // post-update broadcast, allowing them to receive their pending\n // broadcasts the next time broadcastWatches is called, just as they would\n // if we never called cache.batch.\n this.broadcastWatches({\n ...options,\n onWatchUpdated(watch) {\n alreadyDirty.add(watch);\n return false;\n },\n });\n }\n\n if (typeof optimistic === \"string\") {\n // Note that there can be multiple layers with the same optimistic ID.\n // When removeOptimistic(id) is called for that id, all matching layers\n // will be removed, and the remaining layers will be reapplied.\n this.optimisticData = this.optimisticData.addLayer(optimistic, perform);\n } else if (optimistic === false) {\n // Ensure both this.data and this.optimisticData refer to the root\n // (non-optimistic) layer of the cache during the update. Note that\n // this.data could be a Layer if we are currently executing an optimistic\n // update function, but otherwise will always be an EntityStore.Root\n // instance.\n perform(this.data);\n } else {\n // Otherwise, leave this.data and this.optimisticData unchanged and run\n // the update with broadcast batching.\n perform();\n }\n\n if (typeof removeOptimistic === \"string\") {\n this.optimisticData = this.optimisticData.removeLayer(removeOptimistic);\n }\n\n // Note: if this.txCount > 0, then alreadyDirty.size === 0, so this code\n // takes the else branch and calls this.broadcastWatches(options), which\n // does nothing when this.txCount > 0.\n if (onWatchUpdated && alreadyDirty.size) {\n this.broadcastWatches({\n ...options,\n onWatchUpdated(watch, diff) {\n const result = onWatchUpdated.call(this, watch, diff);\n if (result !== false) {\n // Since onWatchUpdated did not return false, this diff is\n // about to be broadcast to watch.callback, so we don't need\n // to re-dirty it with the other alreadyDirty watches below.\n alreadyDirty.delete(watch);\n }\n return result;\n },\n });\n // Silently re-dirty any watches that were already dirty before the update\n // was performed, and were not broadcast just now.\n if (alreadyDirty.size) {\n alreadyDirty.forEach((watch) => this.maybeBroadcastWatch.dirty(watch));\n }\n } else {\n // If alreadyDirty is empty or we don't have an onWatchUpdated\n // function, we don't need to go to the trouble of wrapping\n // options.onWatchUpdated.\n this.broadcastWatches(options);\n }\n\n return updateResult!;\n }\n\n public performTransaction(\n update: (cache: InMemoryCache) => any,\n optimisticId?: string | null\n ) {\n return this.batch({\n update,\n optimistic: optimisticId || optimisticId !== null,\n });\n }\n\n public transformDocument(document: DocumentNode): DocumentNode {\n return this.addTypenameToDocument(this.addFragmentsToDocument(document));\n }\n\n public fragmentMatches(\n fragment: InlineFragmentNode,\n typename: string\n ): boolean {\n return this.policies.fragmentMatches(fragment, typename);\n }\n\n public lookupFragment(fragmentName: string): FragmentDefinitionNode | null {\n return this.config.fragments?.lookup(fragmentName) || null;\n }\n\n protected broadcastWatches(options?: BroadcastOptions) {\n if (!this.txCount) {\n this.watches.forEach((c) => this.maybeBroadcastWatch(c, options));\n }\n }\n\n private addFragmentsToDocument(document: DocumentNode) {\n const { fragments } = this.config;\n return fragments ? fragments.transform(document) : document;\n }\n\n private addTypenameToDocument(document: DocumentNode) {\n if (this.addTypename) {\n return this.addTypenameTransform.transformDocument(document);\n }\n return document;\n }\n\n // This method is wrapped by maybeBroadcastWatch, which is called by\n // broadcastWatches, so that we compute and broadcast results only when\n // the data that would be broadcast might have changed. It would be\n // simpler to check for changes after recomputing a result but before\n // broadcasting it, but this wrapping approach allows us to skip both\n // the recomputation and the broadcast, in most cases.\n private broadcastWatch(c: Cache.WatchOptions, options?: BroadcastOptions) {\n const { lastDiff } = c;\n\n // Both WatchOptions and DiffOptions extend ReadOptions, and DiffOptions\n // currently requires no additional properties, so we can use c (a\n // WatchOptions object) as DiffOptions, without having to allocate a new\n // object, and without having to enumerate the relevant properties (query,\n // variables, etc.) explicitly. There will be some additional properties\n // (lastDiff, callback, etc.), but cache.diff ignores them.\n const diff = this.diff<any>(c);\n\n if (options) {\n if (c.optimistic && typeof options.optimistic === \"string\") {\n diff.fromOptimisticTransaction = true;\n }\n\n if (\n options.onWatchUpdated &&\n options.onWatchUpdated.call(this, c, diff, lastDiff) === false\n ) {\n // Returning false from the onWatchUpdated callback will prevent\n // calling c.callback(diff) for this watcher.\n return;\n }\n }\n\n if (!lastDiff || !equal(lastDiff.result, diff.result)) {\n c.callback((c.lastDiff = diff), lastDiff);\n }\n }\n\n /**\n * @experimental\n * @internal\n * This is not a stable API - it is used in development builds to expose\n * information to the DevTools.\n * Use at your own risk!\n */\n public getMemoryInternals?: typeof getInMemoryCacheMemoryInternals;\n}\n\nif (__DEV__) {\n InMemoryCache.prototype.getMemoryInternals = getInMemoryCacheMemoryInternals;\n}\n"]}
1
+ {"version":3,"file":"inMemoryCache.js","sources":["../../../src/cache/inmemory/inMemoryCache.ts"],"sourcesContent":["import { equal } from \"@wry/equality\";\nimport type {\n DocumentNode,\n FragmentDefinitionNode,\n InlineFragmentNode,\n} from \"graphql\";\nimport type { OptimisticWrapperFunction } from \"optimism\";\nimport { wrap } from \"optimism\";\n\nimport type { OperationVariables } from \"@apollo/client\";\nimport type {\n DeepPartial,\n Reference,\n StoreObject,\n} from \"@apollo/client/utilities\";\nimport {\n addTypenameToDocument,\n cacheSizes,\n canonicalStringify,\n DocumentTransform,\n isReference,\n print,\n} from \"@apollo/client/utilities\";\nimport { __DEV__ } from \"@apollo/client/utilities/environment\";\nimport { getInMemoryCacheMemoryInternals } from \"@apollo/client/utilities/internal\";\nimport { invariant } from \"@apollo/client/utilities/invariant\";\n\nimport { defaultCacheSizes } from \"../../utilities/caching/sizes.js\";\nimport { ApolloCache } from \"../core/cache.js\";\nimport type { Cache } from \"../core/types/Cache.js\";\n\nimport { EntityStore, supportsResultCaching } from \"./entityStore.js\";\nimport { hasOwn, normalizeConfig } from \"./helpers.js\";\nimport { Policies } from \"./policies.js\";\nimport { forgetCache, makeVar, recallCache } from \"./reactiveVars.js\";\nimport { StoreReader } from \"./readFromStore.js\";\nimport type { InMemoryCacheConfig, NormalizedCacheObject } from \"./types.js\";\nimport { StoreWriter } from \"./writeToStore.js\";\n\ntype BroadcastOptions = Pick<\n Cache.BatchOptions<InMemoryCache>,\n \"optimistic\" | \"onWatchUpdated\"\n>;\n\nexport class InMemoryCache extends ApolloCache {\n private data!: EntityStore;\n private optimisticData!: EntityStore;\n\n protected config: InMemoryCacheConfig;\n private watches = new Set<Cache.WatchOptions<any, any>>();\n\n private storeReader!: StoreReader;\n private storeWriter!: StoreWriter;\n private addTypenameTransform = new DocumentTransform(addTypenameToDocument);\n\n private maybeBroadcastWatch!: OptimisticWrapperFunction<\n [Cache.WatchOptions<any, any>, BroadcastOptions?],\n any,\n [Cache.WatchOptions<any, any>]\n >;\n\n // Override the default value, since InMemoryCache result objects are frozen\n // in development and expected to remain logically immutable in production.\n public readonly assumeImmutableResults = true;\n\n // Dynamically imported code can augment existing typePolicies or\n // possibleTypes by calling cache.policies.addTypePolicies or\n // cache.policies.addPossibletypes.\n public readonly policies: Policies;\n\n public readonly makeVar = makeVar;\n\n constructor(config: InMemoryCacheConfig = {}) {\n super();\n this.config = normalizeConfig(config);\n\n this.policies = new Policies({\n cache: this,\n dataIdFromObject: this.config.dataIdFromObject,\n possibleTypes: this.config.possibleTypes,\n typePolicies: this.config.typePolicies,\n });\n\n this.init();\n }\n\n private init() {\n // Passing { resultCaching: false } in the InMemoryCache constructor options\n // will completely disable dependency tracking, which will improve memory\n // usage but worsen the performance of repeated reads.\n const rootStore = (this.data = new EntityStore.Root({\n policies: this.policies,\n resultCaching: this.config.resultCaching,\n }));\n\n // When no optimistic writes are currently active, cache.optimisticData ===\n // cache.data, so there are no additional layers on top of the actual data.\n // When an optimistic update happens, this.optimisticData will become a\n // linked list of EntityStore Layer objects that terminates with the\n // original this.data cache object.\n this.optimisticData = rootStore.stump;\n\n this.resetResultCache();\n }\n\n private resetResultCache() {\n const { fragments } = this.config;\n\n // The StoreWriter is mostly stateless and so doesn't really need to be\n // reset, but it does need to have its writer.storeReader reference updated,\n // so it's simpler to update this.storeWriter as well.\n this.storeWriter = new StoreWriter(\n this,\n (this.storeReader = new StoreReader({\n cache: this,\n resultCacheMaxSize: this.config.resultCacheMaxSize,\n fragments,\n })),\n fragments\n );\n\n this.maybeBroadcastWatch = wrap(\n (c: Cache.WatchOptions, options?: BroadcastOptions) => {\n return this.broadcastWatch(c, options);\n },\n {\n max:\n this.config.resultCacheMaxSize ||\n cacheSizes[\"inMemoryCache.maybeBroadcastWatch\"] ||\n defaultCacheSizes[\"inMemoryCache.maybeBroadcastWatch\"],\n makeCacheKey: (c: Cache.WatchOptions) => {\n // Return a cache key (thus enabling result caching) only if we're\n // currently using a data store that can track cache dependencies.\n const store = c.optimistic ? this.optimisticData : this.data;\n if (supportsResultCaching(store)) {\n const { optimistic, id, variables } = c;\n return store.makeCacheKey(\n c.query,\n // Different watches can have the same query, optimistic\n // status, rootId, and variables, but if their callbacks are\n // different, the (identical) result needs to be delivered to\n // each distinct callback. The easiest way to achieve that\n // separation is to include c.callback in the cache key for\n // maybeBroadcastWatch calls. See issue #5733.\n c.callback,\n canonicalStringify({ optimistic, id, variables })\n );\n }\n },\n }\n );\n\n // Since we have thrown away all the cached functions that depend on the\n // CacheGroup dependencies maintained by EntityStore, we should also reset\n // all CacheGroup dependency information.\n new Set([this.data.group, this.optimisticData.group]).forEach((group) =>\n group.resetCaching()\n );\n }\n\n public restore(data: NormalizedCacheObject): this {\n this.init();\n // Since calling this.init() discards/replaces the entire StoreReader, along\n // with the result caches it maintains, this.data.replace(data) won't have\n // to bother deleting the old data.\n if (data) this.data.replace(data);\n return this;\n }\n\n public extract(optimistic: boolean = false): NormalizedCacheObject {\n return (optimistic ? this.optimisticData : this.data).extract();\n }\n\n public read<TData = unknown>(\n options: Cache.ReadOptions<OperationVariables, TData> & {\n returnPartialData: true;\n }\n ): TData | DeepPartial<TData> | null;\n\n public read<TData = unknown>(\n options: Cache.ReadOptions<OperationVariables, TData>\n ): TData | null;\n\n public read<TData = unknown>(\n options: Cache.ReadOptions<OperationVariables, TData>\n ): TData | DeepPartial<TData> | null {\n const {\n // Since read returns data or null, without any additional metadata\n // about whether/where there might have been missing fields, the\n // default behavior cannot be returnPartialData = true (like it is\n // for the diff method), since defaulting to true would violate the\n // integrity of the T in the return type. However, partial data may\n // be useful in some cases, so returnPartialData:true may be\n // specified explicitly.\n returnPartialData = false,\n } = options;\n\n return this.storeReader.diffQueryAgainstStore<TData>({\n ...options,\n store: options.optimistic ? this.optimisticData : this.data,\n config: this.config,\n returnPartialData,\n }).result;\n }\n\n public write<TData = unknown, TVariables = OperationVariables>(\n options: Cache.WriteOptions<TData, TVariables>\n ): Reference | undefined {\n try {\n ++this.txCount;\n return this.storeWriter.writeToStore(this.data, options);\n } finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n }\n\n public modify<Entity extends Record<string, any> = Record<string, any>>(\n options: Cache.ModifyOptions<Entity>\n ): boolean {\n if (hasOwn.call(options, \"id\") && !options.id) {\n // To my knowledge, TypeScript does not currently provide a way to\n // enforce that an optional property?:type must *not* be undefined\n // when present. That ability would be useful here, because we want\n // options.id to default to ROOT_QUERY only when no options.id was\n // provided. If the caller attempts to pass options.id with a\n // falsy/undefined value (perhaps because cache.identify failed), we\n // should not assume the goal was to modify the ROOT_QUERY object.\n // We could throw, but it seems natural to return false to indicate\n // that nothing was modified.\n return false;\n }\n const store =\n (\n options.optimistic // Defaults to false.\n ) ?\n this.optimisticData\n : this.data;\n try {\n ++this.txCount;\n return store.modify(options.id || \"ROOT_QUERY\", options.fields);\n } finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n }\n\n public diff<\n TData = unknown,\n TVariables extends OperationVariables = OperationVariables,\n >(options: Cache.DiffOptions<TData, TVariables>): Cache.DiffResult<TData> {\n return this.storeReader.diffQueryAgainstStore({\n ...options,\n store: options.optimistic ? this.optimisticData : this.data,\n rootId: options.id || \"ROOT_QUERY\",\n config: this.config,\n });\n }\n\n public watch<TData = unknown, TVariables = OperationVariables>(\n watch: Cache.WatchOptions<TData, TVariables>\n ): () => void {\n if (!this.watches.size) {\n // In case we previously called forgetCache(this) because\n // this.watches became empty (see below), reattach this cache to any\n // reactive variables on which it previously depended. It might seem\n // paradoxical that we're able to recall something we supposedly\n // forgot, but the point of calling forgetCache(this) is to silence\n // useless broadcasts while this.watches is empty, and to allow the\n // cache to be garbage collected. If, however, we manage to call\n // recallCache(this) here, this cache object must not have been\n // garbage collected yet, and should resume receiving updates from\n // reactive variables, now that it has a watcher to notify.\n recallCache(this);\n }\n this.watches.add(watch);\n if (watch.immediate) {\n this.maybeBroadcastWatch(watch);\n }\n return () => {\n // Once we remove the last watch from this.watches, cache.broadcastWatches\n // no longer does anything, so we preemptively tell the reactive variable\n // system to exclude this cache from future broadcasts.\n if (this.watches.delete(watch) && !this.watches.size) {\n forgetCache(this);\n }\n // Remove this watch from the LRU cache managed by the\n // maybeBroadcastWatch OptimisticWrapperFunction, to prevent memory\n // leaks involving the closure of watch.callback.\n this.maybeBroadcastWatch.forget(watch);\n };\n }\n\n public gc(options?: {\n // If true, also free non-essential result cache memory by bulk-releasing\n // this.{store{Reader,Writer},maybeBroadcastWatch}. Defaults to false.\n resetResultCache?: boolean;\n }) {\n canonicalStringify.reset();\n print.reset();\n this.addTypenameTransform.resetCache();\n this.config.fragments?.resetCaches();\n const ids = this.optimisticData.gc();\n if (options && !this.txCount && options.resetResultCache) {\n this.resetResultCache();\n }\n return ids;\n }\n\n // Call this method to ensure the given root ID remains in the cache after\n // garbage collection, along with its transitive child entities. Note that\n // the cache automatically retains all directly written entities. By default,\n // the retainment persists after optimistic updates are removed. Pass true\n // for the optimistic argument if you would prefer for the retainment to be\n // discarded when the top-most optimistic layer is removed. Returns the\n // resulting (non-negative) retainment count.\n public retain(rootId: string, optimistic?: boolean): number {\n return (optimistic ? this.optimisticData : this.data).retain(rootId);\n }\n\n // Call this method to undo the effect of the retain method, above. Once the\n // retainment count falls to zero, the given ID will no longer be preserved\n // during garbage collection, though it may still be preserved by other safe\n // entities that refer to it. Returns the resulting (non-negative) retainment\n // count, in case that's useful.\n public release(rootId: string, optimistic?: boolean): number {\n return (optimistic ? this.optimisticData : this.data).release(rootId);\n }\n\n // Returns the canonical ID for a given StoreObject, obeying typePolicies\n // and keyFields (and dataIdFromObject, if you still use that). At minimum,\n // the object must contain a __typename and any primary key fields required\n // to identify entities of that type. If you pass a query result object, be\n // sure that none of the primary key fields have been renamed by aliasing.\n // If you pass a Reference object, its __ref ID string will be returned.\n public identify(object: StoreObject | Reference): string | undefined {\n if (isReference(object)) return object.__ref;\n try {\n return this.policies.identify(object)[0];\n } catch (e) {\n invariant.warn(e);\n }\n }\n\n public evict(options: Cache.EvictOptions): boolean {\n if (!options.id) {\n if (hasOwn.call(options, \"id\")) {\n // See comment in modify method about why we return false when\n // options.id exists but is falsy/undefined.\n return false;\n }\n options = { ...options, id: \"ROOT_QUERY\" };\n }\n try {\n // It's unlikely that the eviction will end up invoking any other\n // cache update operations while it's running, but {in,de}crementing\n // this.txCount still seems like a good idea, for uniformity with\n // the other update methods.\n ++this.txCount;\n // Pass this.data as a limit on the depth of the eviction, so evictions\n // during optimistic updates (when this.data is temporarily set equal to\n // this.optimisticData) do not escape their optimistic Layer.\n return this.optimisticData.evict(options, this.data);\n } finally {\n if (!--this.txCount && options.broadcast !== false) {\n this.broadcastWatches();\n }\n }\n }\n\n public reset(options?: Cache.ResetOptions): Promise<void> {\n this.init();\n\n canonicalStringify.reset();\n\n if (options && options.discardWatches) {\n // Similar to what happens in the unsubscribe function returned by\n // cache.watch, applied to all current watches.\n this.watches.forEach((watch) => this.maybeBroadcastWatch.forget(watch));\n this.watches.clear();\n forgetCache(this);\n } else {\n // Calling this.init() above unblocks all maybeBroadcastWatch caching, so\n // this.broadcastWatches() triggers a broadcast to every current watcher\n // (letting them know their data is now missing). This default behavior is\n // convenient because it means the watches do not have to be manually\n // reestablished after resetting the cache. To prevent this broadcast and\n // cancel all watches, pass true for options.discardWatches.\n this.broadcastWatches();\n }\n\n return Promise.resolve();\n }\n\n public removeOptimistic(idToRemove: string) {\n const newOptimisticData = this.optimisticData.removeLayer(idToRemove);\n if (newOptimisticData !== this.optimisticData) {\n this.optimisticData = newOptimisticData;\n this.broadcastWatches();\n }\n }\n\n private txCount = 0;\n\n public batch<TUpdateResult>(\n options: Cache.BatchOptions<InMemoryCache, TUpdateResult>\n ): TUpdateResult {\n const {\n update,\n optimistic = true,\n removeOptimistic,\n onWatchUpdated,\n } = options;\n\n let updateResult: TUpdateResult;\n const perform = (layer?: EntityStore): TUpdateResult => {\n const { data, optimisticData } = this;\n ++this.txCount;\n if (layer) {\n this.data = this.optimisticData = layer;\n }\n try {\n return (updateResult = update(this));\n } finally {\n --this.txCount;\n this.data = data;\n this.optimisticData = optimisticData;\n }\n };\n\n const alreadyDirty = new Set<Cache.WatchOptions>();\n\n if (onWatchUpdated && !this.txCount) {\n // If an options.onWatchUpdated callback is provided, we want to call it\n // with only the Cache.WatchOptions objects affected by options.update,\n // but there might be dirty watchers already waiting to be broadcast that\n // have nothing to do with the update. To prevent including those watchers\n // in the post-update broadcast, we perform this initial broadcast to\n // collect the dirty watchers, so we can re-dirty them later, after the\n // post-update broadcast, allowing them to receive their pending\n // broadcasts the next time broadcastWatches is called, just as they would\n // if we never called cache.batch.\n this.broadcastWatches({\n ...options,\n onWatchUpdated(watch) {\n alreadyDirty.add(watch);\n return false;\n },\n });\n }\n\n if (typeof optimistic === \"string\") {\n // Note that there can be multiple layers with the same optimistic ID.\n // When removeOptimistic(id) is called for that id, all matching layers\n // will be removed, and the remaining layers will be reapplied.\n this.optimisticData = this.optimisticData.addLayer(optimistic, perform);\n } else if (optimistic === false) {\n // Ensure both this.data and this.optimisticData refer to the root\n // (non-optimistic) layer of the cache during the update. Note that\n // this.data could be a Layer if we are currently executing an optimistic\n // update function, but otherwise will always be an EntityStore.Root\n // instance.\n perform(this.data);\n } else {\n // Otherwise, leave this.data and this.optimisticData unchanged and run\n // the update with broadcast batching.\n perform();\n }\n\n if (typeof removeOptimistic === \"string\") {\n this.optimisticData = this.optimisticData.removeLayer(removeOptimistic);\n }\n\n // Note: if this.txCount > 0, then alreadyDirty.size === 0, so this code\n // takes the else branch and calls this.broadcastWatches(options), which\n // does nothing when this.txCount > 0.\n if (onWatchUpdated && alreadyDirty.size) {\n this.broadcastWatches({\n ...options,\n onWatchUpdated(watch, diff) {\n const result = onWatchUpdated.call(this, watch, diff);\n if (result !== false) {\n // Since onWatchUpdated did not return false, this diff is\n // about to be broadcast to watch.callback, so we don't need\n // to re-dirty it with the other alreadyDirty watches below.\n alreadyDirty.delete(watch);\n }\n return result;\n },\n });\n // Silently re-dirty any watches that were already dirty before the update\n // was performed, and were not broadcast just now.\n if (alreadyDirty.size) {\n alreadyDirty.forEach((watch) => this.maybeBroadcastWatch.dirty(watch));\n }\n } else {\n // If alreadyDirty is empty or we don't have an onWatchUpdated\n // function, we don't need to go to the trouble of wrapping\n // options.onWatchUpdated.\n this.broadcastWatches(options);\n }\n\n return updateResult!;\n }\n\n public performTransaction(\n update: (cache: InMemoryCache) => any,\n optimisticId?: string | null\n ) {\n return this.batch({\n update,\n optimistic: optimisticId || optimisticId !== null,\n });\n }\n\n public transformDocument(document: DocumentNode): DocumentNode {\n return this.addTypenameTransform.transformDocument(\n this.addFragmentsToDocument(document)\n );\n }\n\n public fragmentMatches(\n fragment: InlineFragmentNode | FragmentDefinitionNode,\n typename: string\n ): boolean {\n return this.policies.fragmentMatches(fragment, typename);\n }\n\n public lookupFragment(fragmentName: string): FragmentDefinitionNode | null {\n return this.config.fragments?.lookup(fragmentName) || null;\n }\n\n protected broadcastWatches(options?: BroadcastOptions) {\n if (!this.txCount) {\n this.watches.forEach((c) => this.maybeBroadcastWatch(c, options));\n }\n }\n\n private addFragmentsToDocument(document: DocumentNode) {\n const { fragments } = this.config;\n return fragments ? fragments.transform(document) : document;\n }\n\n // This method is wrapped by maybeBroadcastWatch, which is called by\n // broadcastWatches, so that we compute and broadcast results only when\n // the data that would be broadcast might have changed. It would be\n // simpler to check for changes after recomputing a result but before\n // broadcasting it, but this wrapping approach allows us to skip both\n // the recomputation and the broadcast, in most cases.\n private broadcastWatch(c: Cache.WatchOptions, options?: BroadcastOptions) {\n const { lastDiff } = c;\n\n // Both WatchOptions and DiffOptions extend ReadOptions, and DiffOptions\n // currently requires no additional properties, so we can use c (a\n // WatchOptions object) as DiffOptions, without having to allocate a new\n // object, and without having to enumerate the relevant properties (query,\n // variables, etc.) explicitly. There will be some additional properties\n // (lastDiff, callback, etc.), but cache.diff ignores them.\n const diff = this.diff<any>(c);\n\n if (options) {\n if (c.optimistic && typeof options.optimistic === \"string\") {\n diff.fromOptimisticTransaction = true;\n }\n\n if (\n options.onWatchUpdated &&\n options.onWatchUpdated.call(this, c, diff, lastDiff) === false\n ) {\n // Returning false from the onWatchUpdated callback will prevent\n // calling c.callback(diff) for this watcher.\n return;\n }\n }\n\n if (!lastDiff || !equal(lastDiff.result, diff.result)) {\n c.callback((c.lastDiff = diff), lastDiff);\n }\n }\n\n /**\n * @experimental\n * @internal\n * This is not a stable API - it is used in development builds to expose\n * information to the DevTools.\n * Use at your own risk!\n */\n public declare getMemoryInternals?: typeof getInMemoryCacheMemoryInternals;\n}\n\nif (__DEV__) {\n InMemoryCache.prototype.getMemoryInternals = getInMemoryCacheMemoryInternals;\n}\n"],"names":[],"mappings":"AAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAsB,CAAtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqC;AAOrC,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAqB,CAArB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA+B;AAQ/B,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EACL,CADF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACuB,EACrB,CAFF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEY,EACV,CAHF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAGoB,EAClB,CAJF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAImB,EACjB,CALF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAKa,EACX,CANF,CAAA,CAAA,CAAA,CAMO,EANP,EAAA,CAAA,CAAA,CAAA,EAOO,CAPP,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAOiC;AACjC,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAwB,CAAxB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA8D;AAC9D,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAgD,CAAhD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmF;AACnF,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAA0B,CAA1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA8D;AAG9D,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAA4B,CAA5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA8C;AAG9C,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,EAAE,CAAtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAmD,CAAnD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqE;AACrE,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAe,EAAE,CAAjB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAwC,CAAxC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAsD;AACtD,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAyB,CAAzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAwC;AACxC,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,EAAE,CAAtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAA6B,EAAE,CAA/B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAkD,CAAlD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqE;AACrE,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAA4B,CAA5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgD;AAEhD,CAAA,CAAA,CAAA,CAAA,CAAA,EAAO,EAAE,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAA4B,CAA5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA+C;AAO/C,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAa,CAAb,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAmC,CAAnC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA;IACU,CAAV,CAAA,CAAA,CAAc;IACJ,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAwB;IAEZ,CAAZ,CAAA,CAAA,CAAA,CAAA,CAAkB;IACR,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAoB,CAApB,CAAA,EAAwB,CAAxB,CAAA,CAA2B,CAA3B,CAA2D;IAEjD,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB;IACX,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqB;IACX,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAiC,CAAjC,CAAA,EAAqC,CAArC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAsD,CAAC,CAAvD,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA4E,CAAC;IAEnE,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA6B;IAM3B,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,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,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACkB,CAAlB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAA2C,CAA3C,CAAA,CAAA,CAA+C;IAE7C,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;IACE,CAAF,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;IACkB,CAAlB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA0B;IAER,CAAlB,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAA4B,CAA5B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmC;IAEjC,CAAF,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,CAAd,CAAA,CAAA,CAAA,CAAA,EAAA,EAA4C,CAA5C,CAA8C,EAA9C;QACI,CAAJ,CAAA,CAAA,CAAA,CAAS,CAAT,CAAW;QACP,CAAJ,CAAA,CAAA,CAAQ,CAAC,CAAT,CAAA,CAAA,CAAA,CAAA,EAAA,EAAkB,CAAlB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiC,CAAC,CAAlC,CAAA,CAAA,CAAA,CAAA,CAAwC,CAAC;QAErC,CAAJ,CAAA,CAAA,CAAQ,CAAC,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAoB,CAApB,CAAA,EAAwB,CAAxB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgC,CAAC;YAC3B,CAAN,CAAA,CAAA,CAAA,CAAW,EAAE,CAAb,CAAA,CAAA,CAAiB;YACX,CAAN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAsB,EAAE,CAAxB,CAAA,CAAA,CAA4B,CAAC,CAA7B,CAAA,CAAA,CAAA,CAAA,CAAmC,CAAC,CAApC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoD;YAC9C,CAAN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmB,EAAE,CAArB,CAAA,CAAA,CAAyB,CAAC,CAA1B,CAAA,CAAA,CAAA,CAAA,CAAgC,CAAC,CAAjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA8C;YACxC,CAAN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkB,EAAE,CAApB,CAAA,CAAA,CAAwB,CAAC,CAAzB,CAAA,CAAA,CAAA,CAAA,CAA+B,CAAC,CAAhC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA4C;QAC5C,CAAK,CAAC;QAEF,CAAJ,CAAA,CAAA,CAAQ,CAAC,CAAT,CAAA,CAAA,CAAa,CAAb,CAAe;IACb;IAEQ,CAAV,CAAA,CAAA,CAAc,CAAd,EAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,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,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,CAAA,CAAA,CAAA,EAAU,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAsB,CAAC,CAAvB,CAAA,CAAA,CAA2B,CAAC,CAA5B,CAAA,CAAA,EAAA,EAAmC,CAAnC,CAAA,EAAuC,CAAvC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkD,CAAC,CAAnD,CAAA,CAAA,CAAuD,CAAC;YAClD,CAAN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAc,EAAE,CAAhB,CAAA,CAAA,CAAoB,CAAC,CAArB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA6B;YACvB,CAAN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmB,EAAE,CAArB,CAAA,CAAA,CAAyB,CAAC,CAA1B,CAAA,CAAA,CAAA,CAAA,CAAgC,CAAC,CAAjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA8C;QAC9C,CAAK,CAAC,CAAC;QAEH,CAAJ,EAAA,CAAA,CAAA,CAAA,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,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA;QACI,CAAJ,EAAA,CAAA,CAAA,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,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,CAAA,CAAA,CAAQ,CAAC,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAA0B,CAA1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmC,CAAC,CAApC,CAAA,CAAA,CAAA,CAAyC;QAErC,CAAJ,CAAA,CAAA,CAAQ,CAAC,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAyB,CAAzB,CAA2B;IACzB;IAEQ,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA0B,CAA1B,EAAA;QACI,CAAJ,CAAA,CAAA,CAAA,EAAU,EAAE,CAAZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,EAA0B,CAA1B,CAAA,CAAA,CAA8B,CAAC,CAA/B,CAAA,CAAA,CAAA,CAAA,CAAqC;QAEjC,CAAJ,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA;QACI,CAAJ,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,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,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;QACI,CAAJ,CAAA,CAAA,CAAQ,CAAC,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAuB,CAAvB,CAAA,EAA2B,CAA3B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAsC,CAChC,CADN,CAAA,CAAA,CACU,EACJ,CAAC,CAFP,CAAA,CAAA,CAEW,CAAC,CAFZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAE0B,CAF1B,CAAA,EAE8B,CAF9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAEyC,CAAC;YAClC,CAAR,CAAA,CAAA,CAAA,CAAa,EAAE,CAAf,CAAA,CAAA,CAAmB;YACX,CAAR,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA0B,EAAE,CAA5B,CAAA,CAAA,CAAgC,CAAC,CAAjC,CAAA,CAAA,CAAA,CAAA,CAAuC,CAAC,CAAxC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA0D;YAClD,CAAR,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiB;QACjB,CAAO,CAAC,CAAC,EACH,CADN,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CACe,CACV;QAED,CAAJ,CAAA,CAAA,CAAQ,CAAC,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAA+B,CAA/B,CAAA,CAAA,CAAmC,CAC7B,CAAC,CAAqB,EAAE,CAD9B,CAAA,CAAA,CAAA,CAAA,CAAA,CACwD,EAAE,CAD1D,EAAA;YAEQ,CAAR,CAAA,CAAA,CAAA,CAAA,EAAe,CAAf,CAAA,CAAA,CAAmB,CAAC,CAApB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAkC,CAAC,CAAC,EAAE,CAAtC,CAAA,CAAA,CAAA,CAAA,CAAA,CAA6C,CAAC;QACxC,CAAC,EACD;YACE,CAAR,CAAA,CAAW,EACD,CADV,CAAA,CAAA,CACc,CAAC,CADf,CAAA,CAAA,CAAA,CAAA,CACqB,CAAC,CADtB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;gBAEU,CAAV,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,CAAC,CAArB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAwD,EAAxD,CAAA;gBACA,CAAA,CAAA,CAAA,EAAA,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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAgE;YACxD,CAAR,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoB,EAAE,CAAC,CAAqB,EAAE,CAA9C,EAAA;gBACU,CAAV,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;gBACU,CAAV,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;gBACU,CAAV,CAAA,CAAA,CAAA,EAAgB,CAAhB,CAAA,CAAA,CAAA,EAAA,EAAwB,CAAC,CAAC,CAA1B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAqC,EAAE,CAAvC,CAAA,CAAA,CAA2C,CAAC,CAA5C,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAA2D,EAAE,CAA7D,CAAA,CAAA,CAAiE,CAAC,CAAlE,CAAA,CAAA,CAAsE;gBAC5D,CAAV,EAAA,CAAc,CAAd,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAmC,CAAC,CAApC,CAAA,CAAA,CAAA,CAAyC,CAAC,EAAE;oBAChC,CAAZ,CAAA,CAAA,CAAA,EAAkB,EAAE,CAApB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAA8B,EAAE,CAAhC,CAAkC,EAAE,CAApC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,EAAkD,CAAC;oBACvC,CAAZ,CAAA,CAAA,CAAA,CAAA,EAAmB,CAAnB,CAAA,CAAA,CAAA,CAAwB,CAAC,CAAzB,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqC,CACvB,CAAC,CAAC,CADhB,CAAA,CAAA,CAAA,CACqB;oBACP,CAAd,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;oBACc,CAAd,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,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;oBACc,CAAd,EAAA,CAAA,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,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;oBACc,CAAd,EAAA,CAAA,CAAA,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,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;oBACc,CAAd,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA;oBACc,CAAd,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA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A,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;QACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;QACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA;QACM,CAAN,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;QACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,EAAA,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,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;QACM,CAAN,EAAA,CAAA,EAA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AAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,E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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA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AA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,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,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,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,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,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,EAAA,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,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,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,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;IACE,CAAF,EAAA,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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACS,CAAT,CAAA,CAAA,CAAA,CAAA,CAAe,CAAC,CAAhB,CAAA,CAAA,CAAA,CAAA,CAA8B,EAAE,CAAhC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAoD,EAApD;QACI,CAAJ,CAAA,CAAA,CAAA,CAAA,EAAW,CAAC,CAAZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAuB,EAAE,CAAzB,CAAA,CAAA,CAA6B,CAAC,CAA9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAA6C,EAAE,CAA/C,CAAA,CAAA,CAAmD,CAAC,CAApD,CAAA,CAAA,CAAwD,CAAC,CAAC,CAA1D,CAAA,CAAA,CAAA,CAAA,CAAgE,CAAC,CAAjE,CAAA,CAAA,CAAA,CAAA,CAAuE,CAAC;IACtE;IAEA,CAAF,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,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,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACS,CAAT,CAAA,CAAA,CAAA,CAAA,CAAA,CAAgB,CAAC,CAAjB,CAAA,CAAA,CAAA,CAAA,CAA+B,EAAE,CAAjC,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAqD,EAArD;QACI,CAAJ,CAAA,CAAA,CAAA,CAAA,EAAW,CAAC,CAAZ,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAuB,EAAE,CAAzB,CAAA,CAAA,CAA6B,CAAC,CAA9B,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAA6C,EAAE,CAA/C,CAAA,CAAA,CAAmD,CAAC,CAApD,CAAA,CAAA,CAAwD,CAAC,CAAC,CAA1D,CAAA,CAAA,CAAA,CAAA,CAAA,CAAiE,CAAC,CAAlE,CAAA,CAAA,CAAA,CAAA,CAAwE,CAAC;IACvE;IAEA,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,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,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,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,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,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,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAA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AA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,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,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YA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CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA;YACM,CAAN,EAAA,CAAA,CAAA,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,EAAA,CAAA,EAAA,CAAA,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,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,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,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA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"}
@@ -1,4 +1,4 @@
1
- import type { KeySpecifier, KeyFieldsFunction, KeyArgsFunction } from "./policies.js";
1
+ import type { KeyArgsFunction, KeyFieldsFunction, KeySpecifier } from "./policies.js";
2
2
  export declare function keyFieldsFnFromSpecifier(specifier: KeySpecifier): KeyFieldsFunction;
3
3
  export declare function keyArgsFnFromSpecifier(specifier: KeySpecifier): KeyArgsFunction;
4
4
  export declare function collectSpecifierPaths(specifier: KeySpecifier, extractor: (path: string[]) => any): Record<string, any>;
@@ -6,4 +6,4 @@ export declare function getSpecifierPaths(spec: KeySpecifier): string[][];
6
6
  declare function extractKey<TObj extends Record<string, any>, TKey extends string>(object: TObj, key: TKey): TObj[TKey] | undefined;
7
7
  export declare function extractKeyPath(object: Record<string, any>, path: string[], extract?: typeof extractKey): any;
8
8
  export {};
9
- //# sourceMappingURL=key-extractor.d.ts.map
9
+ //# sourceMappingURL=key-extractor.d.ts.map
@@ -1,24 +1,21 @@
1
- import { invariant } from "../../utilities/globals/index.js";
2
- import { argumentsObjectFromField, DeepMerger, isNonEmptyArray, isNonNullObject, } from "../../utilities/index.js";
3
- import { hasOwn, isArray } from "./helpers.js";
1
+ import { argumentsObjectFromField, DeepMerger, isArray, isNonEmptyArray, isNonNullObject, } from "@apollo/client/utilities/internal";
2
+ import { invariant } from "@apollo/client/utilities/invariant";
3
+ import { hasOwn } from "./helpers.js";
4
4
  // Mapping from JSON-encoded KeySpecifier strings to associated information.
5
- var specifierInfoCache = Object.create(null);
5
+ const specifierInfoCache = {};
6
6
  function lookupSpecifierInfo(spec) {
7
7
  // It's safe to encode KeySpecifier arrays with JSON.stringify, since they're
8
8
  // just arrays of strings or nested KeySpecifier arrays, and the order of the
9
9
  // array elements is important (and suitably preserved by JSON.stringify).
10
- var cacheKey = JSON.stringify(spec);
11
- return (specifierInfoCache[cacheKey] ||
12
- (specifierInfoCache[cacheKey] = Object.create(null)));
10
+ const cacheKey = JSON.stringify(spec);
11
+ return specifierInfoCache[cacheKey] || (specifierInfoCache[cacheKey] = {});
13
12
  }
14
13
  export function keyFieldsFnFromSpecifier(specifier) {
15
- var info = lookupSpecifierInfo(specifier);
16
- return (info.keyFieldsFn || (info.keyFieldsFn = function (object, context) {
17
- var extract = function (from, key) {
18
- return context.readField(key, from);
19
- };
20
- var keyObject = (context.keyObject = collectSpecifierPaths(specifier, function (schemaKeyPath) {
21
- var extracted = extractKeyPath(context.storeObject, schemaKeyPath,
14
+ const info = lookupSpecifierInfo(specifier);
15
+ return (info.keyFieldsFn || (info.keyFieldsFn = (object, context) => {
16
+ const extract = (from, key) => context.readField(key, from);
17
+ const keyObject = (context.keyObject = collectSpecifierPaths(specifier, (schemaKeyPath) => {
18
+ let extracted = extractKeyPath(context.storeObject, schemaKeyPath,
22
19
  // Using context.readField to extract paths from context.storeObject
23
20
  // allows the extraction to see through Reference objects and respect
24
21
  // custom read functions.
@@ -37,10 +34,10 @@ export function keyFieldsFnFromSpecifier(specifier) {
37
34
  // context.readField for this extraction.
38
35
  extracted = extractKeyPath(object, schemaKeyPath, extractKey);
39
36
  }
40
- invariant(extracted !== void 0, 5, schemaKeyPath.join("."), object);
37
+ invariant(extracted !== void 0, 100, schemaKeyPath.join("."), object);
41
38
  return extracted;
42
39
  }));
43
- return "".concat(context.typename, ":").concat(JSON.stringify(keyObject));
40
+ return `${context.typename}:${JSON.stringify(keyObject)}`;
44
41
  }));
45
42
  }
46
43
  // The keyArgs extraction process is roughly analogous to keyFields extraction,
@@ -51,22 +48,21 @@ export function keyFieldsFnFromSpecifier(specifier) {
51
48
  // function to collectSpecifierPaths, reusing the shared extractKeyPath helper
52
49
  // wherever possible.
53
50
  export function keyArgsFnFromSpecifier(specifier) {
54
- var info = lookupSpecifierInfo(specifier);
51
+ const info = lookupSpecifierInfo(specifier);
55
52
  return (info.keyArgsFn ||
56
- (info.keyArgsFn = function (args, _a) {
57
- var field = _a.field, variables = _a.variables, fieldName = _a.fieldName;
58
- var collected = collectSpecifierPaths(specifier, function (keyPath) {
59
- var firstKey = keyPath[0];
60
- var firstChar = firstKey.charAt(0);
53
+ (info.keyArgsFn = (args, { field, variables, fieldName }) => {
54
+ const collected = collectSpecifierPaths(specifier, (keyPath) => {
55
+ const firstKey = keyPath[0];
56
+ const firstChar = firstKey.charAt(0);
61
57
  if (firstChar === "@") {
62
58
  if (field && isNonEmptyArray(field.directives)) {
63
- var directiveName_1 = firstKey.slice(1);
59
+ const directiveName = firstKey.slice(1);
64
60
  // If the directive appears multiple times, only the first
65
61
  // occurrence's arguments will be used. TODO Allow repetition?
66
62
  // TODO Cache this work somehow, a la aliasMap?
67
- var d = field.directives.find(function (d) { return d.name.value === directiveName_1; });
63
+ const d = field.directives.find((d) => d.name.value === directiveName);
68
64
  // Fortunately argumentsObjectFromField works for DirectiveNode!
69
- var directiveArgs = d && argumentsObjectFromField(d, variables);
65
+ const directiveArgs = d && argumentsObjectFromField(d, variables);
70
66
  // For directives without arguments (d defined, but directiveArgs ===
71
67
  // null), the presence or absence of the directive still counts as
72
68
  // part of the field key, so we return null in those cases. If no
@@ -87,9 +83,9 @@ export function keyArgsFnFromSpecifier(specifier) {
87
83
  return;
88
84
  }
89
85
  if (firstChar === "$") {
90
- var variableName = firstKey.slice(1);
86
+ const variableName = firstKey.slice(1);
91
87
  if (variables && hasOwn.call(variables, variableName)) {
92
- var varKeyPath = keyPath.slice(0);
88
+ const varKeyPath = keyPath.slice(0);
93
89
  varKeyPath[0] = variableName;
94
90
  return extractKeyPath(variables, varKeyPath);
95
91
  }
@@ -102,7 +98,7 @@ export function keyArgsFnFromSpecifier(specifier) {
102
98
  return extractKeyPath(args, keyPath);
103
99
  }
104
100
  });
105
- var suffix = JSON.stringify(collected);
101
+ const suffix = JSON.stringify(collected);
106
102
  // If no arguments were passed to this field, and it didn't have any other
107
103
  // field key contributions from directives or variables, hide the empty
108
104
  // :{} suffix from the field key. However, a field passed no arguments can
@@ -117,36 +113,35 @@ export function keyArgsFnFromSpecifier(specifier) {
117
113
  export function collectSpecifierPaths(specifier, extractor) {
118
114
  // For each path specified by specifier, invoke the extractor, and repeatedly
119
115
  // merge the results together, with appropriate ancestor context.
120
- var merger = new DeepMerger();
121
- return getSpecifierPaths(specifier).reduce(function (collected, path) {
122
- var _a;
123
- var toMerge = extractor(path);
116
+ const merger = new DeepMerger();
117
+ return getSpecifierPaths(specifier).reduce((collected, path) => {
118
+ let toMerge = extractor(path);
124
119
  if (toMerge !== void 0) {
125
120
  // This path is not expected to contain array indexes, so the toMerge
126
121
  // reconstruction will not contain arrays. TODO Fix this?
127
- for (var i = path.length - 1; i >= 0; --i) {
128
- toMerge = (_a = {}, _a[path[i]] = toMerge, _a);
122
+ for (let i = path.length - 1; i >= 0; --i) {
123
+ toMerge = { [path[i]]: toMerge };
129
124
  }
130
125
  collected = merger.merge(collected, toMerge);
131
126
  }
132
127
  return collected;
133
- }, Object.create(null));
128
+ }, {});
134
129
  }
135
130
  export function getSpecifierPaths(spec) {
136
- var info = lookupSpecifierInfo(spec);
131
+ const info = lookupSpecifierInfo(spec);
137
132
  if (!info.paths) {
138
- var paths_1 = (info.paths = []);
139
- var currentPath_1 = [];
140
- spec.forEach(function (s, i) {
133
+ const paths = (info.paths = []);
134
+ const currentPath = [];
135
+ spec.forEach((s, i) => {
141
136
  if (isArray(s)) {
142
- getSpecifierPaths(s).forEach(function (p) { return paths_1.push(currentPath_1.concat(p)); });
143
- currentPath_1.length = 0;
137
+ getSpecifierPaths(s).forEach((p) => paths.push(currentPath.concat(p)));
138
+ currentPath.length = 0;
144
139
  }
145
140
  else {
146
- currentPath_1.push(s);
141
+ currentPath.push(s);
147
142
  if (!isArray(spec[i + 1])) {
148
- paths_1.push(currentPath_1.slice(0));
149
- currentPath_1.length = 0;
143
+ paths.push(currentPath.slice(0));
144
+ currentPath.length = 0;
150
145
  }
151
146
  }
152
147
  });
@@ -171,7 +166,7 @@ export function extractKeyPath(object, path, extract) {
171
166
  extract = extract || extractKey;
172
167
  return normalize(path.reduce(function reducer(obj, key) {
173
168
  return isArray(obj) ?
174
- obj.map(function (child) { return reducer(child, key); })
169
+ obj.map((child) => reducer(child, key))
175
170
  : obj && extract(obj, key);
176
171
  }, object));
177
172
  }
@@ -183,10 +178,8 @@ function normalize(value) {
183
178
  if (isArray(value)) {
184
179
  return value.map(normalize);
185
180
  }
186
- return collectSpecifierPaths(Object.keys(value).sort(), function (path) {
187
- return extractKeyPath(value, path);
188
- });
181
+ return collectSpecifierPaths(Object.keys(value).sort(), (path) => extractKeyPath(value, path));
189
182
  }
190
183
  return value;
191
184
  }
192
- //# sourceMappingURL=key-extractor.js.map
185
+ //# sourceMappingURL=key-extractor.js.map