@apollo/client 4.0.0-rc.4 → 4.0.0-rc.6

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 (528) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/README.md +40 -40
  3. package/__cjs/cache/core/cache.cjs +4 -12
  4. package/__cjs/cache/core/cache.cjs.map +1 -1
  5. package/__cjs/cache/core/cache.d.cts +96 -66
  6. package/__cjs/cache/core/types/Cache.cjs +0 -4
  7. package/__cjs/cache/core/types/Cache.cjs.map +1 -1
  8. package/__cjs/cache/core/types/Cache.d.cts +200 -15
  9. package/__cjs/cache/{core/types/DataProxy.cjs → deprecated.cjs} +1 -1
  10. package/__cjs/cache/deprecated.cjs.map +1 -0
  11. package/__cjs/cache/deprecated.d.cts +6 -0
  12. package/__cjs/cache/index.cjs.map +1 -1
  13. package/__cjs/cache/index.d.cts +2 -2
  14. package/__cjs/cache/inmemory/entityStore.cjs +28 -31
  15. package/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
  16. package/__cjs/cache/inmemory/entityStore.d.cts +18 -17
  17. package/__cjs/cache/inmemory/inMemoryCache.cjs +1 -1
  18. package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
  19. package/__cjs/cache/inmemory/inMemoryCache.d.cts +4 -4
  20. package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
  21. package/__cjs/cache/inmemory/policies.cjs +4 -4
  22. package/__cjs/cache/inmemory/policies.cjs.map +1 -1
  23. package/__cjs/cache/inmemory/policies.d.cts +3 -2
  24. package/__cjs/cache/inmemory/readFromStore.cjs +2 -2
  25. package/__cjs/cache/inmemory/types.d.cts +1 -1
  26. package/__cjs/cache/inmemory/writeToStore.cjs +4 -4
  27. package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
  28. package/__cjs/cache/inmemory/writeToStore.d.cts +1 -1
  29. package/__cjs/core/ApolloClient.cjs +137 -117
  30. package/__cjs/core/ApolloClient.cjs.map +1 -1
  31. package/__cjs/core/ApolloClient.d.cts +790 -183
  32. package/__cjs/core/ObservableQuery.cjs +50 -20
  33. package/__cjs/core/ObservableQuery.cjs.map +1 -1
  34. package/__cjs/core/ObservableQuery.d.cts +184 -68
  35. package/__cjs/core/QueryInfo.cjs.map +1 -1
  36. package/__cjs/core/QueryInfo.d.cts +5 -4
  37. package/__cjs/core/QueryManager.cjs +15 -13
  38. package/__cjs/core/QueryManager.cjs.map +1 -1
  39. package/__cjs/core/QueryManager.d.cts +17 -17
  40. package/__cjs/core/deprecated.cjs +3 -0
  41. package/__cjs/core/deprecated.cjs.map +1 -0
  42. package/__cjs/core/deprecated.d.cts +29 -0
  43. package/__cjs/core/index.cjs.map +1 -1
  44. package/__cjs/core/index.d.cts +9 -5
  45. package/__cjs/core/types.d.cts +81 -104
  46. package/__cjs/core/watchQueryOptions.d.cts +8 -297
  47. package/__cjs/dev/setErrorMessageHandler.cjs.map +1 -1
  48. package/__cjs/dev/setErrorMessageHandler.d.cts +4 -4
  49. package/__cjs/errors/CombinedGraphQLErrors.cjs +59 -11
  50. package/__cjs/errors/CombinedGraphQLErrors.cjs.map +1 -1
  51. package/__cjs/errors/CombinedGraphQLErrors.d.cts +146 -11
  52. package/__cjs/errors/CombinedProtocolErrors.cjs +48 -1
  53. package/__cjs/errors/CombinedProtocolErrors.cjs.map +1 -1
  54. package/__cjs/errors/CombinedProtocolErrors.d.cts +126 -2
  55. package/__cjs/errors/LinkError.cjs +45 -2
  56. package/__cjs/errors/LinkError.cjs.map +1 -1
  57. package/__cjs/errors/LinkError.d.cts +45 -2
  58. package/__cjs/errors/LocalStateError.cjs +35 -5
  59. package/__cjs/errors/LocalStateError.cjs.map +1 -1
  60. package/__cjs/errors/LocalStateError.d.cts +41 -5
  61. package/__cjs/errors/ServerError.cjs +50 -8
  62. package/__cjs/errors/ServerError.cjs.map +1 -1
  63. package/__cjs/errors/ServerError.d.cts +70 -11
  64. package/__cjs/errors/ServerParseError.cjs +45 -8
  65. package/__cjs/errors/ServerParseError.cjs.map +1 -1
  66. package/__cjs/errors/ServerParseError.d.cts +71 -16
  67. package/__cjs/errors/UnconventionalError.cjs +46 -2
  68. package/__cjs/errors/UnconventionalError.cjs.map +1 -1
  69. package/__cjs/errors/UnconventionalError.d.cts +46 -2
  70. package/__cjs/incremental/handlers/notImplemented.cjs +1 -1
  71. package/__cjs/invariantErrorCodes.cjs +72 -80
  72. package/__cjs/link/batch/batchLink.cjs.map +1 -1
  73. package/__cjs/link/batch-http/batchHttpLink.cjs +2 -2
  74. package/__cjs/link/batch-http/batchHttpLink.cjs.map +1 -1
  75. package/__cjs/link/client-awareness/ClientAwarenessLink.cjs.map +1 -1
  76. package/__cjs/link/client-awareness/ClientAwarenessLink.d.cts +4 -4
  77. package/__cjs/link/context/index.cjs +1 -1
  78. package/__cjs/link/context/index.cjs.map +1 -1
  79. package/__cjs/link/context/index.d.cts +1 -1
  80. package/__cjs/link/core/ApolloLink.cjs +2 -2
  81. package/__cjs/link/core/types.d.cts +2 -2
  82. package/__cjs/link/error/index.cjs.map +1 -1
  83. package/__cjs/link/error/index.d.cts +16 -1
  84. package/__cjs/link/http/HttpLink.cjs.map +1 -1
  85. package/__cjs/link/http/HttpLink.d.cts +13 -2
  86. package/__cjs/link/http/checkFetcher.cjs +1 -1
  87. package/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
  88. package/__cjs/link/http/serializeFetchParameter.cjs +1 -1
  89. package/__cjs/link/persisted-queries/index.cjs +2 -2
  90. package/__cjs/link/persisted-queries/index.cjs.map +1 -1
  91. package/__cjs/link/persisted-queries/index.d.cts +11 -11
  92. package/__cjs/link/retry/delayFunction.cjs.map +1 -1
  93. package/__cjs/link/retry/delayFunction.d.cts +1 -1
  94. package/__cjs/link/retry/retryFunction.cjs.map +1 -1
  95. package/__cjs/link/retry/retryFunction.d.cts +1 -1
  96. package/__cjs/link/retry/retryLink.cjs.map +1 -1
  97. package/__cjs/link/schema/index.cjs.map +1 -1
  98. package/__cjs/link/utils/validateOperation.cjs +1 -1
  99. package/__cjs/link/ws/index.cjs.map +1 -1
  100. package/__cjs/local-state/LocalState.cjs +55 -9
  101. package/__cjs/local-state/LocalState.cjs.map +1 -1
  102. package/__cjs/local-state/LocalState.d.cts +94 -0
  103. package/__cjs/masking/GraphQLCodegenDataMasking.d.cts +6 -7
  104. package/__cjs/masking/internal/types.d.cts +70 -70
  105. package/__cjs/masking/maskDefinition.cjs +2 -2
  106. package/__cjs/masking/maskFragment.cjs +2 -2
  107. package/__cjs/masking/maskOperation.cjs +1 -1
  108. package/__cjs/masking/utils.cjs +3 -3
  109. package/__cjs/react/context/ApolloContext.cjs +1 -1
  110. package/__cjs/react/context/ApolloProvider.cjs +1 -1
  111. package/__cjs/react/hooks/internal/useDeepMemo.cjs +0 -3
  112. package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -1
  113. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs.map +1 -1
  114. package/__cjs/react/hooks/internal/validateSuspenseHookOptions.d.cts +2 -2
  115. package/__cjs/react/hooks/internal/wrapHook.cjs +1 -0
  116. package/__cjs/react/hooks/internal/wrapHook.cjs.map +1 -1
  117. package/__cjs/react/hooks/internal/wrapHook.d.cts +8 -7
  118. package/__cjs/react/hooks/useApolloClient.cjs +2 -2
  119. package/__cjs/react/hooks/useApolloClient.cjs.map +1 -1
  120. package/__cjs/react/hooks/useApolloClient.d.cts +2 -2
  121. package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
  122. package/__cjs/react/hooks/useBackgroundQuery.d.cts +814 -82
  123. package/__cjs/react/hooks/useFragment.cjs +11 -9
  124. package/__cjs/react/hooks/useFragment.cjs.map +1 -1
  125. package/__cjs/react/hooks/useFragment.d.cts +53 -2
  126. package/__cjs/react/hooks/useLazyQuery.cjs +0 -38
  127. package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
  128. package/__cjs/react/hooks/useLazyQuery.d.cts +313 -119
  129. package/__cjs/react/hooks/useLoadableQuery.cjs.map +1 -1
  130. package/__cjs/react/hooks/useLoadableQuery.d.cts +230 -44
  131. package/__cjs/react/hooks/useMutation.cjs +6 -7
  132. package/__cjs/react/hooks/useMutation.cjs.map +1 -1
  133. package/__cjs/react/hooks/useMutation.d.cts +57 -17
  134. package/__cjs/react/hooks/useQuery.cjs +1 -35
  135. package/__cjs/react/hooks/useQuery.cjs.map +1 -1
  136. package/__cjs/react/hooks/useQuery.d.cts +407 -238
  137. package/__cjs/react/hooks/useQueryRefHandlers.cjs +2 -1
  138. package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
  139. package/__cjs/react/hooks/useQueryRefHandlers.d.cts +25 -1
  140. package/__cjs/react/hooks/useReactiveVar.cjs +2 -1
  141. package/__cjs/react/hooks/useReactiveVar.cjs.map +1 -1
  142. package/__cjs/react/hooks/useReactiveVar.d.cts +2 -1
  143. package/__cjs/react/hooks/useReadQuery.cjs +29 -0
  144. package/__cjs/react/hooks/useReadQuery.cjs.map +1 -1
  145. package/__cjs/react/hooks/useReadQuery.d.cts +95 -16
  146. package/__cjs/react/hooks/useSubscription.cjs +8 -9
  147. package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
  148. package/__cjs/react/hooks/useSubscription.d.cts +153 -69
  149. package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
  150. package/__cjs/react/hooks/useSuspenseFragment.d.cts +61 -29
  151. package/__cjs/react/hooks/useSuspenseQuery.cjs +4 -1
  152. package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
  153. package/__cjs/react/hooks/useSuspenseQuery.d.cts +605 -160
  154. package/__cjs/react/index.cjs +1 -5
  155. package/__cjs/react/index.cjs.map +1 -1
  156. package/__cjs/react/index.d.cts +0 -2
  157. package/__cjs/react/index.react-server.cjs +1 -3
  158. package/__cjs/react/index.react-server.cjs.map +1 -1
  159. package/__cjs/react/index.react-server.d.cts +0 -1
  160. package/__cjs/react/internal/cache/FragmentReference.cjs +1 -1
  161. package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -1
  162. package/__cjs/react/internal/cache/FragmentReference.d.cts +2 -3
  163. package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
  164. package/__cjs/react/internal/cache/QueryReference.d.cts +11 -11
  165. package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -1
  166. package/__cjs/react/internal/cache/SuspenseCache.d.cts +2 -2
  167. package/__cjs/react/internal/cache/getSuspenseCache.cjs.map +1 -1
  168. package/__cjs/react/internal/cache/getSuspenseCache.d.cts +6 -4
  169. package/__cjs/react/internal/index.cjs +1 -0
  170. package/__cjs/react/internal/index.cjs.map +1 -1
  171. package/__cjs/react/internal/index.d.cts +1 -1
  172. package/__cjs/react/internal/types.d.cts +3 -3
  173. package/__cjs/react/query-preloader/createQueryPreloader.cjs +1 -1
  174. package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
  175. package/__cjs/react/query-preloader/createQueryPreloader.d.cts +31 -31
  176. package/__cjs/react/ssr/prerenderStatic.cjs +5 -4
  177. package/__cjs/react/ssr/prerenderStatic.cjs.map +1 -1
  178. package/__cjs/react/ssr/prerenderStatic.d.cts +11 -9
  179. package/__cjs/react/ssr/useSSRQuery.cjs.map +1 -1
  180. package/__cjs/react/types/deprecated.d.cts +1 -1
  181. package/__cjs/react/types/types.documentation.d.cts +22 -11
  182. package/__cjs/testing/core/mocking/mockLink.cjs.map +1 -1
  183. package/__cjs/testing/core/mocking/mockLink.d.cts +3 -2
  184. package/__cjs/testing/core/types/deprecated.d.cts +3 -2
  185. package/__cjs/testing/react/MockedProvider.cjs.map +1 -1
  186. package/__cjs/testing/react/MockedProvider.d.cts +2 -3
  187. package/__cjs/utilities/HKT.d.cts +8 -7
  188. package/__cjs/utilities/caching/sizes.cjs +3 -3
  189. package/__cjs/utilities/caching/sizes.cjs.map +1 -1
  190. package/__cjs/utilities/caching/sizes.d.cts +4 -6
  191. package/__cjs/utilities/graphql/DocumentTransform.cjs +2 -2
  192. package/__cjs/utilities/graphql/DocumentTransform.cjs.map +1 -1
  193. package/__cjs/utilities/index.cjs +2 -3
  194. package/__cjs/utilities/index.cjs.map +1 -1
  195. package/__cjs/utilities/index.d.cts +1 -2
  196. package/__cjs/utilities/{shared → internal}/canonicalStringify.cjs +5 -7
  197. package/__cjs/utilities/internal/canonicalStringify.cjs.map +1 -0
  198. package/__cjs/utilities/{shared → internal}/canonicalStringify.d.cts +1 -1
  199. package/__cjs/utilities/internal/checkDocument.cjs +2 -2
  200. package/__cjs/utilities/internal/checkDocument.cjs.map +1 -1
  201. package/__cjs/utilities/internal/createFragmentMap.cjs.map +1 -1
  202. package/__cjs/{core → utilities/internal}/equalByQuery.cjs +13 -7
  203. package/__cjs/utilities/internal/equalByQuery.cjs.map +1 -0
  204. package/__cjs/utilities/internal/equalByQuery.d.cts +5 -0
  205. package/__cjs/utilities/internal/getFragmentQueryDocument.cjs +13 -3
  206. package/__cjs/utilities/internal/getFragmentQueryDocument.cjs.map +1 -1
  207. package/__cjs/utilities/internal/getFragmentQueryDocument.d.cts +13 -3
  208. package/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -1
  209. package/__cjs/utilities/internal/getStoreKeyName.cjs +9 -7
  210. package/__cjs/utilities/internal/getStoreKeyName.cjs.map +1 -1
  211. package/__cjs/utilities/internal/index.cjs +8 -2
  212. package/__cjs/utilities/internal/index.cjs.map +1 -1
  213. package/__cjs/utilities/internal/index.d.cts +4 -0
  214. package/__cjs/utilities/internal/mergeOptions.cjs.map +1 -1
  215. package/__cjs/utilities/internal/mergeOptions.d.cts +2 -2
  216. package/__cjs/utilities/internal/removeFragmentSpreads.cjs +14 -0
  217. package/__cjs/utilities/internal/removeFragmentSpreads.cjs.map +1 -0
  218. package/__cjs/utilities/internal/removeFragmentSpreads.d.cts +3 -0
  219. package/__cjs/utilities/internal/toQueryResult.cjs.map +1 -1
  220. package/__cjs/utilities/internal/toQueryResult.d.cts +2 -2
  221. package/__cjs/utilities/internal/types/DocumentationTypes.cjs +3 -0
  222. package/__cjs/utilities/internal/types/DocumentationTypes.cjs.map +1 -0
  223. package/__cjs/utilities/internal/types/DocumentationTypes.d.cts +96 -0
  224. package/__cjs/utilities/internal/types/NoInfer.d.cts +31 -25
  225. package/__cjs/utilities/subscriptions/relay/index.cjs +2 -0
  226. package/__cjs/utilities/subscriptions/relay/index.cjs.map +1 -1
  227. package/__cjs/version.cjs +1 -1
  228. package/cache/core/cache.d.ts +96 -66
  229. package/cache/core/cache.js +5 -13
  230. package/cache/core/cache.js.map +1 -1
  231. package/cache/core/types/Cache.d.ts +200 -15
  232. package/cache/core/types/Cache.js +1 -3
  233. package/cache/core/types/Cache.js.map +1 -1
  234. package/cache/deprecated.d.ts +6 -0
  235. package/cache/deprecated.js +2 -0
  236. package/cache/deprecated.js.map +1 -0
  237. package/cache/index.d.ts +2 -2
  238. package/cache/index.js.map +1 -1
  239. package/cache/inmemory/entityStore.d.ts +18 -17
  240. package/cache/inmemory/entityStore.js +28 -31
  241. package/cache/inmemory/entityStore.js.map +1 -1
  242. package/cache/inmemory/inMemoryCache.d.ts +4 -4
  243. package/cache/inmemory/inMemoryCache.js +1 -1
  244. package/cache/inmemory/inMemoryCache.js.map +1 -1
  245. package/cache/inmemory/key-extractor.js +1 -1
  246. package/cache/inmemory/policies.d.ts +3 -2
  247. package/cache/inmemory/policies.js +4 -4
  248. package/cache/inmemory/policies.js.map +1 -1
  249. package/cache/inmemory/readFromStore.js +2 -2
  250. package/cache/inmemory/types.d.ts +1 -1
  251. package/cache/inmemory/types.js.map +1 -1
  252. package/cache/inmemory/writeToStore.d.ts +1 -1
  253. package/cache/inmemory/writeToStore.js +4 -4
  254. package/cache/inmemory/writeToStore.js.map +1 -1
  255. package/core/ApolloClient.d.ts +790 -183
  256. package/core/ApolloClient.js +138 -118
  257. package/core/ApolloClient.js.map +1 -1
  258. package/core/ObservableQuery.d.ts +184 -68
  259. package/core/ObservableQuery.js +50 -20
  260. package/core/ObservableQuery.js.map +1 -1
  261. package/core/QueryInfo.d.ts +5 -4
  262. package/core/QueryInfo.js.map +1 -1
  263. package/core/QueryManager.d.ts +17 -17
  264. package/core/QueryManager.js +15 -13
  265. package/core/QueryManager.js.map +1 -1
  266. package/core/deprecated.d.ts +29 -0
  267. package/core/deprecated.js +2 -0
  268. package/core/deprecated.js.map +1 -0
  269. package/core/index.d.ts +9 -5
  270. package/core/index.js.map +1 -1
  271. package/core/types.d.ts +81 -104
  272. package/core/types.js.map +1 -1
  273. package/core/watchQueryOptions.d.ts +9 -298
  274. package/core/watchQueryOptions.js.map +1 -1
  275. package/dev/setErrorMessageHandler.d.ts +4 -4
  276. package/dev/setErrorMessageHandler.js.map +1 -1
  277. package/errors/CombinedGraphQLErrors.d.ts +147 -12
  278. package/errors/CombinedGraphQLErrors.js +60 -12
  279. package/errors/CombinedGraphQLErrors.js.map +1 -1
  280. package/errors/CombinedProtocolErrors.d.ts +127 -3
  281. package/errors/CombinedProtocolErrors.js +49 -2
  282. package/errors/CombinedProtocolErrors.js.map +1 -1
  283. package/errors/LinkError.d.ts +45 -2
  284. package/errors/LinkError.js +45 -2
  285. package/errors/LinkError.js.map +1 -1
  286. package/errors/LocalStateError.d.ts +42 -6
  287. package/errors/LocalStateError.js +36 -6
  288. package/errors/LocalStateError.js.map +1 -1
  289. package/errors/ServerError.d.ts +71 -12
  290. package/errors/ServerError.js +51 -9
  291. package/errors/ServerError.js.map +1 -1
  292. package/errors/ServerParseError.d.ts +72 -17
  293. package/errors/ServerParseError.js +46 -9
  294. package/errors/ServerParseError.js.map +1 -1
  295. package/errors/UnconventionalError.d.ts +46 -2
  296. package/errors/UnconventionalError.js +46 -2
  297. package/errors/UnconventionalError.js.map +1 -1
  298. package/incremental/handlers/notImplemented.js +1 -1
  299. package/invariantErrorCodes.js +72 -80
  300. package/link/batch/batchLink.js.map +1 -1
  301. package/link/batch-http/batchHttpLink.js +1 -1
  302. package/link/batch-http/batchHttpLink.js.map +1 -1
  303. package/link/client-awareness/ClientAwarenessLink.d.ts +4 -4
  304. package/link/client-awareness/ClientAwarenessLink.js.map +1 -1
  305. package/link/context/index.d.ts +1 -1
  306. package/link/context/index.js +1 -1
  307. package/link/context/index.js.map +1 -1
  308. package/link/core/ApolloLink.js +2 -2
  309. package/link/core/types.d.ts +2 -2
  310. package/link/core/types.js.map +1 -1
  311. package/link/error/index.d.ts +16 -1
  312. package/link/error/index.js.map +1 -1
  313. package/link/http/HttpLink.d.ts +13 -2
  314. package/link/http/HttpLink.js.map +1 -1
  315. package/link/http/checkFetcher.js +1 -1
  316. package/link/http/parseAndCheckHttpResponse.js +1 -1
  317. package/link/http/serializeFetchParameter.js +1 -1
  318. package/link/persisted-queries/index.d.ts +11 -11
  319. package/link/persisted-queries/index.js +2 -2
  320. package/link/persisted-queries/index.js.map +1 -1
  321. package/link/retry/delayFunction.d.ts +1 -1
  322. package/link/retry/delayFunction.js.map +1 -1
  323. package/link/retry/retryFunction.d.ts +1 -1
  324. package/link/retry/retryFunction.js.map +1 -1
  325. package/link/retry/retryLink.js.map +1 -1
  326. package/link/schema/index.js.map +1 -1
  327. package/link/utils/validateOperation.js +1 -1
  328. package/link/ws/index.js.map +1 -1
  329. package/local-state/LocalState.d.ts +94 -0
  330. package/local-state/LocalState.js +55 -9
  331. package/local-state/LocalState.js.map +1 -1
  332. package/masking/GraphQLCodegenDataMasking.d.ts +6 -7
  333. package/masking/GraphQLCodegenDataMasking.js.map +1 -1
  334. package/masking/internal/types.d.ts +70 -70
  335. package/masking/internal/types.js.map +1 -1
  336. package/masking/maskDefinition.js +2 -2
  337. package/masking/maskFragment.js +2 -2
  338. package/masking/maskOperation.js +1 -1
  339. package/masking/types.js.map +1 -1
  340. package/masking/utils.js +3 -3
  341. package/package.json +1 -1
  342. package/react/context/ApolloContext.js +1 -1
  343. package/react/context/ApolloProvider.js +1 -1
  344. package/react/hooks/internal/useDeepMemo.js +0 -3
  345. package/react/hooks/internal/useDeepMemo.js.map +1 -1
  346. package/react/hooks/internal/validateSuspenseHookOptions.d.ts +2 -2
  347. package/react/hooks/internal/validateSuspenseHookOptions.js.map +1 -1
  348. package/react/hooks/internal/wrapHook.d.ts +8 -7
  349. package/react/hooks/internal/wrapHook.js +1 -0
  350. package/react/hooks/internal/wrapHook.js.map +1 -1
  351. package/react/hooks/useApolloClient.d.ts +2 -2
  352. package/react/hooks/useApolloClient.js +2 -2
  353. package/react/hooks/useApolloClient.js.map +1 -1
  354. package/react/hooks/useBackgroundQuery.d.ts +814 -82
  355. package/react/hooks/useBackgroundQuery.js.map +1 -1
  356. package/react/hooks/useFragment.d.ts +54 -3
  357. package/react/hooks/useFragment.js +11 -9
  358. package/react/hooks/useFragment.js.map +1 -1
  359. package/react/hooks/useLazyQuery.d.ts +313 -119
  360. package/react/hooks/useLazyQuery.js +0 -38
  361. package/react/hooks/useLazyQuery.js.map +1 -1
  362. package/react/hooks/useLoadableQuery.d.ts +230 -44
  363. package/react/hooks/useLoadableQuery.js.map +1 -1
  364. package/react/hooks/useMutation.d.ts +57 -17
  365. package/react/hooks/useMutation.js +6 -7
  366. package/react/hooks/useMutation.js.map +1 -1
  367. package/react/hooks/useQuery.d.ts +407 -238
  368. package/react/hooks/useQuery.js +1 -35
  369. package/react/hooks/useQuery.js.map +1 -1
  370. package/react/hooks/useQueryRefHandlers.d.ts +25 -1
  371. package/react/hooks/useQueryRefHandlers.js +2 -1
  372. package/react/hooks/useQueryRefHandlers.js.map +1 -1
  373. package/react/hooks/useReactiveVar.d.ts +2 -1
  374. package/react/hooks/useReactiveVar.js +2 -1
  375. package/react/hooks/useReactiveVar.js.map +1 -1
  376. package/react/hooks/useReadQuery.d.ts +96 -17
  377. package/react/hooks/useReadQuery.js +29 -0
  378. package/react/hooks/useReadQuery.js.map +1 -1
  379. package/react/hooks/useSubscription.d.ts +153 -69
  380. package/react/hooks/useSubscription.js +8 -9
  381. package/react/hooks/useSubscription.js.map +1 -1
  382. package/react/hooks/useSuspenseFragment.d.ts +62 -30
  383. package/react/hooks/useSuspenseFragment.js.map +1 -1
  384. package/react/hooks/useSuspenseQuery.d.ts +605 -160
  385. package/react/hooks/useSuspenseQuery.js +4 -1
  386. package/react/hooks/useSuspenseQuery.js.map +1 -1
  387. package/react/hooks-compiled/internal/useDeepMemo.js +0 -3
  388. package/react/hooks-compiled/internal/useDeepMemo.js.map +1 -1
  389. package/react/hooks-compiled/internal/validateSuspenseHookOptions.d.ts +2 -2
  390. package/react/hooks-compiled/internal/validateSuspenseHookOptions.js.map +1 -1
  391. package/react/hooks-compiled/internal/wrapHook.d.ts +8 -7
  392. package/react/hooks-compiled/internal/wrapHook.js +1 -0
  393. package/react/hooks-compiled/internal/wrapHook.js.map +1 -1
  394. package/react/hooks-compiled/useApolloClient.d.ts +2 -2
  395. package/react/hooks-compiled/useApolloClient.js +2 -2
  396. package/react/hooks-compiled/useApolloClient.js.map +1 -1
  397. package/react/hooks-compiled/useBackgroundQuery.d.ts +814 -82
  398. package/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
  399. package/react/hooks-compiled/useFragment.d.ts +54 -3
  400. package/react/hooks-compiled/useFragment.js +11 -9
  401. package/react/hooks-compiled/useFragment.js.map +1 -1
  402. package/react/hooks-compiled/useLazyQuery.d.ts +313 -119
  403. package/react/hooks-compiled/useLazyQuery.js +0 -38
  404. package/react/hooks-compiled/useLazyQuery.js.map +1 -1
  405. package/react/hooks-compiled/useLoadableQuery.d.ts +230 -44
  406. package/react/hooks-compiled/useLoadableQuery.js.map +1 -1
  407. package/react/hooks-compiled/useMutation.d.ts +57 -17
  408. package/react/hooks-compiled/useMutation.js +6 -7
  409. package/react/hooks-compiled/useMutation.js.map +1 -1
  410. package/react/hooks-compiled/useQuery.d.ts +407 -238
  411. package/react/hooks-compiled/useQuery.js +1 -35
  412. package/react/hooks-compiled/useQuery.js.map +1 -1
  413. package/react/hooks-compiled/useQueryRefHandlers.d.ts +25 -1
  414. package/react/hooks-compiled/useQueryRefHandlers.js +2 -1
  415. package/react/hooks-compiled/useQueryRefHandlers.js.map +1 -1
  416. package/react/hooks-compiled/useReactiveVar.d.ts +2 -1
  417. package/react/hooks-compiled/useReactiveVar.js +2 -1
  418. package/react/hooks-compiled/useReactiveVar.js.map +1 -1
  419. package/react/hooks-compiled/useReadQuery.d.ts +96 -17
  420. package/react/hooks-compiled/useReadQuery.js +29 -0
  421. package/react/hooks-compiled/useReadQuery.js.map +1 -1
  422. package/react/hooks-compiled/useSubscription.d.ts +153 -69
  423. package/react/hooks-compiled/useSubscription.js +8 -9
  424. package/react/hooks-compiled/useSubscription.js.map +1 -1
  425. package/react/hooks-compiled/useSuspenseFragment.d.ts +62 -30
  426. package/react/hooks-compiled/useSuspenseFragment.js.map +1 -1
  427. package/react/hooks-compiled/useSuspenseQuery.d.ts +605 -160
  428. package/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
  429. package/react/index.compiled.d.ts +0 -2
  430. package/react/index.compiled.js +0 -2
  431. package/react/index.compiled.js.map +1 -1
  432. package/react/index.d.ts +0 -2
  433. package/react/index.js +0 -2
  434. package/react/index.js.map +1 -1
  435. package/react/index.react-server.d.ts +0 -1
  436. package/react/index.react-server.js +0 -2
  437. package/react/index.react-server.js.map +1 -1
  438. package/react/internal/cache/FragmentReference.d.ts +2 -3
  439. package/react/internal/cache/FragmentReference.js +1 -1
  440. package/react/internal/cache/FragmentReference.js.map +1 -1
  441. package/react/internal/cache/QueryReference.d.ts +11 -11
  442. package/react/internal/cache/QueryReference.js.map +1 -1
  443. package/react/internal/cache/SuspenseCache.d.ts +2 -2
  444. package/react/internal/cache/SuspenseCache.js.map +1 -1
  445. package/react/internal/cache/getSuspenseCache.d.ts +6 -4
  446. package/react/internal/cache/getSuspenseCache.js.map +1 -1
  447. package/react/internal/index.d.ts +1 -1
  448. package/react/internal/index.js +1 -0
  449. package/react/internal/index.js.map +1 -1
  450. package/react/internal/types.d.ts +3 -3
  451. package/react/internal/types.js.map +1 -1
  452. package/react/query-preloader/createQueryPreloader.d.ts +31 -31
  453. package/react/query-preloader/createQueryPreloader.js +1 -1
  454. package/react/query-preloader/createQueryPreloader.js.map +1 -1
  455. package/react/ssr/prerenderStatic.d.ts +11 -9
  456. package/react/ssr/prerenderStatic.js +5 -4
  457. package/react/ssr/prerenderStatic.js.map +1 -1
  458. package/react/ssr/useSSRQuery.js.map +1 -1
  459. package/react/types/deprecated.d.ts +1 -1
  460. package/react/types/deprecated.js.map +1 -1
  461. package/react/types/types.documentation.d.ts +22 -11
  462. package/react/types/types.documentation.js.map +1 -1
  463. package/testing/core/mocking/mockLink.d.ts +3 -2
  464. package/testing/core/mocking/mockLink.js.map +1 -1
  465. package/testing/core/types/deprecated.d.ts +3 -2
  466. package/testing/core/types/deprecated.js.map +1 -1
  467. package/testing/react/MockedProvider.d.ts +2 -3
  468. package/testing/react/MockedProvider.js.map +1 -1
  469. package/utilities/HKT.d.ts +8 -7
  470. package/utilities/HKT.js.map +1 -1
  471. package/utilities/caching/sizes.d.ts +4 -6
  472. package/utilities/caching/sizes.js +3 -3
  473. package/utilities/caching/sizes.js.map +1 -1
  474. package/utilities/graphql/DocumentTransform.js +1 -1
  475. package/utilities/graphql/DocumentTransform.js.map +1 -1
  476. package/utilities/index.d.ts +1 -2
  477. package/utilities/index.js +1 -2
  478. package/utilities/index.js.map +1 -1
  479. package/utilities/{shared → internal}/canonicalStringify.d.ts +1 -1
  480. package/utilities/{shared → internal}/canonicalStringify.js +4 -6
  481. package/utilities/internal/canonicalStringify.js.map +1 -0
  482. package/utilities/internal/checkDocument.js +1 -1
  483. package/utilities/internal/checkDocument.js.map +1 -1
  484. package/utilities/internal/createFragmentMap.js.map +1 -1
  485. package/utilities/internal/equalByQuery.d.ts +5 -0
  486. package/{core → utilities/internal}/equalByQuery.js +7 -1
  487. package/utilities/internal/equalByQuery.js.map +1 -0
  488. package/utilities/internal/getFragmentQueryDocument.d.ts +13 -3
  489. package/utilities/internal/getFragmentQueryDocument.js +13 -3
  490. package/utilities/internal/getFragmentQueryDocument.js.map +1 -1
  491. package/utilities/internal/getMemoryInternals.js.map +1 -1
  492. package/utilities/internal/getStoreKeyName.js +9 -7
  493. package/utilities/internal/getStoreKeyName.js.map +1 -1
  494. package/utilities/internal/index.d.ts +4 -0
  495. package/utilities/internal/index.js +3 -0
  496. package/utilities/internal/index.js.map +1 -1
  497. package/utilities/internal/mergeOptions.d.ts +2 -2
  498. package/utilities/internal/mergeOptions.js.map +1 -1
  499. package/utilities/internal/removeFragmentSpreads.d.ts +3 -0
  500. package/utilities/internal/removeFragmentSpreads.js +11 -0
  501. package/utilities/internal/removeFragmentSpreads.js.map +1 -0
  502. package/utilities/internal/toQueryResult.d.ts +2 -2
  503. package/utilities/internal/toQueryResult.js.map +1 -1
  504. package/utilities/internal/types/DocumentationTypes.d.ts +96 -0
  505. package/utilities/internal/types/DocumentationTypes.js +2 -0
  506. package/utilities/internal/types/DocumentationTypes.js.map +1 -0
  507. package/utilities/internal/types/NoInfer.d.ts +31 -25
  508. package/utilities/internal/types/NoInfer.js.map +1 -1
  509. package/utilities/subscriptions/relay/index.js +2 -0
  510. package/utilities/subscriptions/relay/index.js.map +1 -1
  511. package/version.js +1 -1
  512. package/__cjs/cache/core/types/DataProxy.cjs.map +0 -1
  513. package/__cjs/cache/core/types/DataProxy.d.cts +0 -140
  514. package/__cjs/core/equalByQuery.cjs.map +0 -1
  515. package/__cjs/core/equalByQuery.d.cts +0 -4
  516. package/__cjs/react/context/ApolloConsumer.cjs +0 -16
  517. package/__cjs/react/context/ApolloConsumer.cjs.map +0 -1
  518. package/__cjs/react/context/ApolloConsumer.d.cts +0 -10
  519. package/__cjs/utilities/shared/canonicalStringify.cjs.map +0 -1
  520. package/cache/core/types/DataProxy.d.ts +0 -140
  521. package/cache/core/types/DataProxy.js +0 -2
  522. package/cache/core/types/DataProxy.js.map +0 -1
  523. package/core/equalByQuery.d.ts +0 -4
  524. package/core/equalByQuery.js.map +0 -1
  525. package/react/context/ApolloConsumer.d.ts +0 -10
  526. package/react/context/ApolloConsumer.js +0 -11
  527. package/react/context/ApolloConsumer.js.map +0 -1
  528. package/utilities/shared/canonicalStringify.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"useSuspenseFragment.js","sourceRoot":"","sources":["../../../src/react/hooks/useSuspenseFragment.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\n\nimport type {\n ApolloClient,\n DataValue,\n DocumentNode,\n OperationVariables,\n Reference,\n StoreObject,\n TypedDocumentNode,\n} from \"@apollo/client\";\nimport { canonicalStringify } from \"@apollo/client/cache\";\nimport type { FragmentType, MaybeMasked } from \"@apollo/client/masking\";\nimport { getSuspenseCache } from \"@apollo/client/react/internal\";\nimport type {\n NoInfer,\n VariablesOption,\n} from \"@apollo/client/utilities/internal\";\n\nimport type { FragmentKey } from \"../internal/cache/types.js\";\n\nimport { __use } from \"./internal/__use.js\";\nimport { wrapHook } from \"./internal/index.js\";\nimport { useApolloClient } from \"./useApolloClient.js\";\n\ntype From<TData> =\n | StoreObject\n | Reference\n | FragmentType<NoInfer<TData>>\n | string\n | null;\n\nexport declare namespace useSuspenseFragment {\n export type Options<TData, TVariables extends OperationVariables> = {\n /**\n * A GraphQL document created using the `gql` template string tag from\n * `graphql-tag` with one or more fragments which will be used to determine\n * the shape of data to read. If you provide more than one fragment in this\n * document then you must also specify `fragmentName` to select a single.\n */\n fragment: DocumentNode | TypedDocumentNode<TData, TVariables>;\n\n /**\n * The name of the fragment in your GraphQL document to be used. If you do\n * not provide a `fragmentName` and there is only one fragment in your\n * `fragment` document then that fragment will be used.\n */\n fragmentName?: string;\n from: From<TData>;\n // Override this field to make it optional (default: true).\n optimistic?: boolean;\n /**\n * The instance of `ApolloClient` to use to look up the fragment.\n *\n * By default, the instance that's passed down via context is used, but you\n * can provide a different instance here.\n *\n * @docGroup 1. Operation options\n */\n client?: ApolloClient;\n } & VariablesOption<NoInfer<TVariables>>;\n\n export type Result<TData> = { data: DataValue.Complete<MaybeMasked<TData>> };\n}\n\nconst NULL_PLACEHOLDER = [] as unknown as [\n FragmentKey,\n Promise<MaybeMasked<any> | null>,\n];\n\nexport function useSuspenseFragment<\n TData,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables> & {\n from: NonNullable<From<TData>>;\n }\n): useSuspenseFragment.Result<TData>;\n\nexport function useSuspenseFragment<\n TData,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables> & {\n from: null;\n }\n): useSuspenseFragment.Result<null>;\n\nexport function useSuspenseFragment<\n TData,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables> & {\n from: From<TData>;\n }\n): useSuspenseFragment.Result<TData | null>;\n\nexport function useSuspenseFragment<\n TData,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables>\n): useSuspenseFragment.Result<TData>;\n\nexport function useSuspenseFragment<\n TData = unknown,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables>\n): useSuspenseFragment.Result<TData | null> {\n \"use no memo\";\n return wrapHook(\n \"useSuspenseFragment\",\n // eslint-disable-next-line react-compiler/react-compiler\n useSuspenseFragment_,\n useApolloClient(typeof options === \"object\" ? options.client : undefined)\n )(options);\n}\n\nfunction useSuspenseFragment_<\n TData = unknown,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables>\n): useSuspenseFragment.Result<TData | null> {\n const client = useApolloClient(options.client);\n const { from, variables } = options;\n const { cache } = client;\n\n const id = React.useMemo(\n () =>\n typeof from === \"string\" ? from\n : from === null ? null\n : cache.identify(from),\n [cache, from]\n ) as string | null;\n\n const fragmentRef =\n id === null ? null : (\n getSuspenseCache(client).getFragmentRef(\n [id, options.fragment, canonicalStringify(variables)],\n client,\n { ...options, variables: variables as TVariables, from: id }\n )\n );\n\n let [current, setPromise] = React.useState<\n [FragmentKey, Promise<MaybeMasked<TData> | null>]\n >(\n fragmentRef === null ? NULL_PLACEHOLDER : (\n [fragmentRef.key, fragmentRef.promise]\n )\n );\n\n React.useEffect(() => {\n if (fragmentRef === null) {\n return;\n }\n\n const dispose = fragmentRef.retain();\n const removeListener = fragmentRef.listen((promise) => {\n setPromise([fragmentRef.key, promise]);\n });\n\n return () => {\n dispose();\n removeListener();\n };\n }, [fragmentRef]);\n\n if (fragmentRef === null) {\n return { data: null };\n }\n\n if (current[0] !== fragmentRef.key) {\n // eslint-disable-next-line react-compiler/react-compiler\n current[0] = fragmentRef.key;\n current[1] = fragmentRef.promise;\n }\n\n const data = __use(current[1]);\n\n return { data };\n}\n"]}
1
+ {"version":3,"file":"useSuspenseFragment.js","sourceRoot":"","sources":["../../../src/react/hooks/useSuspenseFragment.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\";\n\nimport type {\n ApolloClient,\n DataValue,\n DocumentNode,\n OperationVariables,\n Reference,\n StoreObject,\n TypedDocumentNode,\n} from \"@apollo/client\";\nimport { canonicalStringify } from \"@apollo/client/cache\";\nimport type { FragmentType, MaybeMasked } from \"@apollo/client/masking\";\nimport type { FragmentKey } from \"@apollo/client/react/internal\";\nimport { getSuspenseCache } from \"@apollo/client/react/internal\";\nimport type {\n DocumentationTypes as UtilityDocumentationTypes,\n NoInfer,\n VariablesOption,\n} from \"@apollo/client/utilities/internal\";\n\nimport { __use } from \"./internal/__use.js\";\nimport { wrapHook } from \"./internal/index.js\";\nimport { useApolloClient } from \"./useApolloClient.js\";\n\ntype From<TData> =\n | StoreObject\n | Reference\n | FragmentType<NoInfer<TData>>\n | string\n | null;\n\nexport declare namespace useSuspenseFragment {\n import _self = useSuspenseFragment;\n export namespace Base {\n export type Options<TData, TVariables extends OperationVariables> = {\n /**\n * A GraphQL document created using the `gql` template string tag from\n * `graphql-tag` with one or more fragments which will be used to determine\n * the shape of data to read. If you provide more than one fragment in this\n * document then you must also specify `fragmentName` to select a single.\n */\n fragment: DocumentNode | TypedDocumentNode<TData, TVariables>;\n\n /**\n * The name of the fragment in your GraphQL document to be used. If you do\n * not provide a `fragmentName` and there is only one fragment in your\n * `fragment` document then that fragment will be used.\n */\n fragmentName?: string;\n from: From<TData>;\n // Override this field to make it optional (default: true).\n optimistic?: boolean;\n /**\n * The instance of `ApolloClient` to use to look up the fragment.\n *\n * By default, the instance that's passed down via context is used, but you\n * can provide a different instance here.\n *\n * @docGroup 1. Operation options\n */\n client?: ApolloClient;\n };\n }\n export type Options<\n TData,\n TVariables extends OperationVariables,\n > = Base.Options<TData, TVariables> & VariablesOption<NoInfer<TVariables>>;\n\n export namespace DocumentationTypes {\n export namespace useSuspenseFragment {\n export interface Options<\n TData = unknown,\n TVariables extends OperationVariables = OperationVariables,\n > extends Base.Options<TData, TVariables>,\n UtilityDocumentationTypes.VariableOptions<TVariables> {}\n }\n }\n\n export interface Result<TData> {\n data: DataValue.Complete<MaybeMasked<TData>>;\n }\n export namespace DocumentationTypes {\n export namespace useSuspenseFragment {\n export interface Result<TData = unknown> extends _self.Result<TData> {}\n }\n }\n\n export namespace DocumentationTypes {\n /** {@inheritDoc @apollo/client!useSuspenseFragment:function(1)} */\n export function useSuspenseFragment<\n TData,\n TVariables extends OperationVariables = OperationVariables,\n >(\n options: useSuspenseFragment.Options<TData, TVariables>\n ): useSuspenseFragment.Result<TData>;\n }\n}\n\nconst NULL_PLACEHOLDER = [] as unknown as [\n FragmentKey,\n Promise<MaybeMasked<any> | null>,\n];\n\n/** #TODO documentation */\nexport function useSuspenseFragment<\n TData,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables> & {\n from: NonNullable<From<TData>>;\n }\n): useSuspenseFragment.Result<TData>;\n\n/** {@inheritDoc @apollo/client!useSuspenseFragment:function(1)} */\nexport function useSuspenseFragment<\n TData,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables> & {\n from: null;\n }\n): useSuspenseFragment.Result<null>;\n\n/** {@inheritDoc @apollo/client!useSuspenseFragment:function(1)} */\nexport function useSuspenseFragment<\n TData,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables> & {\n from: From<TData>;\n }\n): useSuspenseFragment.Result<TData | null>;\n\n/** {@inheritDoc @apollo/client!useSuspenseFragment:function(1)} */\nexport function useSuspenseFragment<\n TData,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables>\n): useSuspenseFragment.Result<TData>;\n\nexport function useSuspenseFragment<\n TData = unknown,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables>\n): useSuspenseFragment.Result<TData | null> {\n \"use no memo\";\n return wrapHook(\n \"useSuspenseFragment\",\n // eslint-disable-next-line react-compiler/react-compiler\n useSuspenseFragment_,\n useApolloClient(typeof options === \"object\" ? options.client : undefined)\n )(options);\n}\n\nfunction useSuspenseFragment_<\n TData = unknown,\n TVariables extends OperationVariables = OperationVariables,\n>(\n options: useSuspenseFragment.Options<TData, TVariables>\n): useSuspenseFragment.Result<TData | null> {\n const client = useApolloClient(options.client);\n const { from, variables } = options;\n const { cache } = client;\n\n const id = React.useMemo(\n () =>\n typeof from === \"string\" ? from\n : from === null ? null\n : cache.identify(from),\n [cache, from]\n ) as string | null;\n\n const fragmentRef =\n id === null ? null : (\n getSuspenseCache(client).getFragmentRef(\n [id, options.fragment, canonicalStringify(variables)],\n client,\n { ...options, variables: variables as TVariables, from: id }\n )\n );\n\n let [current, setPromise] = React.useState<\n [FragmentKey, Promise<MaybeMasked<TData> | null>]\n >(\n fragmentRef === null ? NULL_PLACEHOLDER : (\n [fragmentRef.key, fragmentRef.promise]\n )\n );\n\n React.useEffect(() => {\n if (fragmentRef === null) {\n return;\n }\n\n const dispose = fragmentRef.retain();\n const removeListener = fragmentRef.listen((promise) => {\n setPromise([fragmentRef.key, promise]);\n });\n\n return () => {\n dispose();\n removeListener();\n };\n }, [fragmentRef]);\n\n if (fragmentRef === null) {\n return { data: null };\n }\n\n if (current[0] !== fragmentRef.key) {\n // eslint-disable-next-line react-compiler/react-compiler\n current[0] = fragmentRef.key;\n current[1] = fragmentRef.promise;\n }\n\n const data = __use(current[1]);\n\n return { data };\n}\n"]}