@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.
- package/CHANGELOG.md +63 -0
- package/README.md +40 -40
- package/__cjs/cache/core/cache.cjs +4 -12
- package/__cjs/cache/core/cache.cjs.map +1 -1
- package/__cjs/cache/core/cache.d.cts +96 -66
- package/__cjs/cache/core/types/Cache.cjs +0 -4
- package/__cjs/cache/core/types/Cache.cjs.map +1 -1
- package/__cjs/cache/core/types/Cache.d.cts +200 -15
- package/__cjs/cache/{core/types/DataProxy.cjs → deprecated.cjs} +1 -1
- package/__cjs/cache/deprecated.cjs.map +1 -0
- package/__cjs/cache/deprecated.d.cts +6 -0
- package/__cjs/cache/index.cjs.map +1 -1
- package/__cjs/cache/index.d.cts +2 -2
- package/__cjs/cache/inmemory/entityStore.cjs +28 -31
- package/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
- package/__cjs/cache/inmemory/entityStore.d.cts +18 -17
- package/__cjs/cache/inmemory/inMemoryCache.cjs +1 -1
- package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
- package/__cjs/cache/inmemory/inMemoryCache.d.cts +4 -4
- package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
- package/__cjs/cache/inmemory/policies.cjs +4 -4
- package/__cjs/cache/inmemory/policies.cjs.map +1 -1
- package/__cjs/cache/inmemory/policies.d.cts +3 -2
- package/__cjs/cache/inmemory/readFromStore.cjs +2 -2
- package/__cjs/cache/inmemory/types.d.cts +1 -1
- package/__cjs/cache/inmemory/writeToStore.cjs +4 -4
- package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
- package/__cjs/cache/inmemory/writeToStore.d.cts +1 -1
- package/__cjs/core/ApolloClient.cjs +137 -117
- package/__cjs/core/ApolloClient.cjs.map +1 -1
- package/__cjs/core/ApolloClient.d.cts +790 -183
- package/__cjs/core/ObservableQuery.cjs +50 -20
- package/__cjs/core/ObservableQuery.cjs.map +1 -1
- package/__cjs/core/ObservableQuery.d.cts +184 -68
- package/__cjs/core/QueryInfo.cjs.map +1 -1
- package/__cjs/core/QueryInfo.d.cts +5 -4
- package/__cjs/core/QueryManager.cjs +15 -13
- package/__cjs/core/QueryManager.cjs.map +1 -1
- package/__cjs/core/QueryManager.d.cts +17 -17
- package/__cjs/core/deprecated.cjs +3 -0
- package/__cjs/core/deprecated.cjs.map +1 -0
- package/__cjs/core/deprecated.d.cts +29 -0
- package/__cjs/core/index.cjs.map +1 -1
- package/__cjs/core/index.d.cts +9 -5
- package/__cjs/core/types.d.cts +81 -104
- package/__cjs/core/watchQueryOptions.d.cts +8 -297
- package/__cjs/dev/setErrorMessageHandler.cjs.map +1 -1
- package/__cjs/dev/setErrorMessageHandler.d.cts +4 -4
- package/__cjs/errors/CombinedGraphQLErrors.cjs +59 -11
- package/__cjs/errors/CombinedGraphQLErrors.cjs.map +1 -1
- package/__cjs/errors/CombinedGraphQLErrors.d.cts +146 -11
- package/__cjs/errors/CombinedProtocolErrors.cjs +48 -1
- package/__cjs/errors/CombinedProtocolErrors.cjs.map +1 -1
- package/__cjs/errors/CombinedProtocolErrors.d.cts +126 -2
- package/__cjs/errors/LinkError.cjs +45 -2
- package/__cjs/errors/LinkError.cjs.map +1 -1
- package/__cjs/errors/LinkError.d.cts +45 -2
- package/__cjs/errors/LocalStateError.cjs +35 -5
- package/__cjs/errors/LocalStateError.cjs.map +1 -1
- package/__cjs/errors/LocalStateError.d.cts +41 -5
- package/__cjs/errors/ServerError.cjs +50 -8
- package/__cjs/errors/ServerError.cjs.map +1 -1
- package/__cjs/errors/ServerError.d.cts +70 -11
- package/__cjs/errors/ServerParseError.cjs +45 -8
- package/__cjs/errors/ServerParseError.cjs.map +1 -1
- package/__cjs/errors/ServerParseError.d.cts +71 -16
- package/__cjs/errors/UnconventionalError.cjs +46 -2
- package/__cjs/errors/UnconventionalError.cjs.map +1 -1
- package/__cjs/errors/UnconventionalError.d.cts +46 -2
- package/__cjs/incremental/handlers/notImplemented.cjs +1 -1
- package/__cjs/invariantErrorCodes.cjs +72 -80
- package/__cjs/link/batch/batchLink.cjs.map +1 -1
- package/__cjs/link/batch-http/batchHttpLink.cjs +2 -2
- package/__cjs/link/batch-http/batchHttpLink.cjs.map +1 -1
- package/__cjs/link/client-awareness/ClientAwarenessLink.cjs.map +1 -1
- package/__cjs/link/client-awareness/ClientAwarenessLink.d.cts +4 -4
- package/__cjs/link/context/index.cjs +1 -1
- package/__cjs/link/context/index.cjs.map +1 -1
- package/__cjs/link/context/index.d.cts +1 -1
- package/__cjs/link/core/ApolloLink.cjs +2 -2
- package/__cjs/link/core/types.d.cts +2 -2
- package/__cjs/link/error/index.cjs.map +1 -1
- package/__cjs/link/error/index.d.cts +16 -1
- package/__cjs/link/http/HttpLink.cjs.map +1 -1
- package/__cjs/link/http/HttpLink.d.cts +13 -2
- package/__cjs/link/http/checkFetcher.cjs +1 -1
- package/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
- package/__cjs/link/http/serializeFetchParameter.cjs +1 -1
- package/__cjs/link/persisted-queries/index.cjs +2 -2
- package/__cjs/link/persisted-queries/index.cjs.map +1 -1
- package/__cjs/link/persisted-queries/index.d.cts +11 -11
- package/__cjs/link/retry/delayFunction.cjs.map +1 -1
- package/__cjs/link/retry/delayFunction.d.cts +1 -1
- package/__cjs/link/retry/retryFunction.cjs.map +1 -1
- package/__cjs/link/retry/retryFunction.d.cts +1 -1
- package/__cjs/link/retry/retryLink.cjs.map +1 -1
- package/__cjs/link/schema/index.cjs.map +1 -1
- package/__cjs/link/utils/validateOperation.cjs +1 -1
- package/__cjs/link/ws/index.cjs.map +1 -1
- package/__cjs/local-state/LocalState.cjs +55 -9
- package/__cjs/local-state/LocalState.cjs.map +1 -1
- package/__cjs/local-state/LocalState.d.cts +94 -0
- package/__cjs/masking/GraphQLCodegenDataMasking.d.cts +6 -7
- package/__cjs/masking/internal/types.d.cts +70 -70
- package/__cjs/masking/maskDefinition.cjs +2 -2
- package/__cjs/masking/maskFragment.cjs +2 -2
- package/__cjs/masking/maskOperation.cjs +1 -1
- package/__cjs/masking/utils.cjs +3 -3
- package/__cjs/react/context/ApolloContext.cjs +1 -1
- package/__cjs/react/context/ApolloProvider.cjs +1 -1
- package/__cjs/react/hooks/internal/useDeepMemo.cjs +0 -3
- package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -1
- package/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs.map +1 -1
- package/__cjs/react/hooks/internal/validateSuspenseHookOptions.d.cts +2 -2
- package/__cjs/react/hooks/internal/wrapHook.cjs +1 -0
- package/__cjs/react/hooks/internal/wrapHook.cjs.map +1 -1
- package/__cjs/react/hooks/internal/wrapHook.d.cts +8 -7
- package/__cjs/react/hooks/useApolloClient.cjs +2 -2
- package/__cjs/react/hooks/useApolloClient.cjs.map +1 -1
- package/__cjs/react/hooks/useApolloClient.d.cts +2 -2
- package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useBackgroundQuery.d.cts +814 -82
- package/__cjs/react/hooks/useFragment.cjs +11 -9
- package/__cjs/react/hooks/useFragment.cjs.map +1 -1
- package/__cjs/react/hooks/useFragment.d.cts +53 -2
- package/__cjs/react/hooks/useLazyQuery.cjs +0 -38
- package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useLazyQuery.d.cts +313 -119
- package/__cjs/react/hooks/useLoadableQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useLoadableQuery.d.cts +230 -44
- package/__cjs/react/hooks/useMutation.cjs +6 -7
- package/__cjs/react/hooks/useMutation.cjs.map +1 -1
- package/__cjs/react/hooks/useMutation.d.cts +57 -17
- package/__cjs/react/hooks/useQuery.cjs +1 -35
- package/__cjs/react/hooks/useQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useQuery.d.cts +407 -238
- package/__cjs/react/hooks/useQueryRefHandlers.cjs +2 -1
- package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
- package/__cjs/react/hooks/useQueryRefHandlers.d.cts +25 -1
- package/__cjs/react/hooks/useReactiveVar.cjs +2 -1
- package/__cjs/react/hooks/useReactiveVar.cjs.map +1 -1
- package/__cjs/react/hooks/useReactiveVar.d.cts +2 -1
- package/__cjs/react/hooks/useReadQuery.cjs +29 -0
- package/__cjs/react/hooks/useReadQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useReadQuery.d.cts +95 -16
- package/__cjs/react/hooks/useSubscription.cjs +8 -9
- package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
- package/__cjs/react/hooks/useSubscription.d.cts +153 -69
- package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
- package/__cjs/react/hooks/useSuspenseFragment.d.cts +61 -29
- package/__cjs/react/hooks/useSuspenseQuery.cjs +4 -1
- package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useSuspenseQuery.d.cts +605 -160
- package/__cjs/react/index.cjs +1 -5
- package/__cjs/react/index.cjs.map +1 -1
- package/__cjs/react/index.d.cts +0 -2
- package/__cjs/react/index.react-server.cjs +1 -3
- package/__cjs/react/index.react-server.cjs.map +1 -1
- package/__cjs/react/index.react-server.d.cts +0 -1
- package/__cjs/react/internal/cache/FragmentReference.cjs +1 -1
- package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -1
- package/__cjs/react/internal/cache/FragmentReference.d.cts +2 -3
- package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
- package/__cjs/react/internal/cache/QueryReference.d.cts +11 -11
- package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -1
- package/__cjs/react/internal/cache/SuspenseCache.d.cts +2 -2
- package/__cjs/react/internal/cache/getSuspenseCache.cjs.map +1 -1
- package/__cjs/react/internal/cache/getSuspenseCache.d.cts +6 -4
- package/__cjs/react/internal/index.cjs +1 -0
- package/__cjs/react/internal/index.cjs.map +1 -1
- package/__cjs/react/internal/index.d.cts +1 -1
- package/__cjs/react/internal/types.d.cts +3 -3
- package/__cjs/react/query-preloader/createQueryPreloader.cjs +1 -1
- package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
- package/__cjs/react/query-preloader/createQueryPreloader.d.cts +31 -31
- package/__cjs/react/ssr/prerenderStatic.cjs +5 -4
- package/__cjs/react/ssr/prerenderStatic.cjs.map +1 -1
- package/__cjs/react/ssr/prerenderStatic.d.cts +11 -9
- package/__cjs/react/ssr/useSSRQuery.cjs.map +1 -1
- package/__cjs/react/types/deprecated.d.cts +1 -1
- package/__cjs/react/types/types.documentation.d.cts +22 -11
- package/__cjs/testing/core/mocking/mockLink.cjs.map +1 -1
- package/__cjs/testing/core/mocking/mockLink.d.cts +3 -2
- package/__cjs/testing/core/types/deprecated.d.cts +3 -2
- package/__cjs/testing/react/MockedProvider.cjs.map +1 -1
- package/__cjs/testing/react/MockedProvider.d.cts +2 -3
- package/__cjs/utilities/HKT.d.cts +8 -7
- package/__cjs/utilities/caching/sizes.cjs +3 -3
- package/__cjs/utilities/caching/sizes.cjs.map +1 -1
- package/__cjs/utilities/caching/sizes.d.cts +4 -6
- package/__cjs/utilities/graphql/DocumentTransform.cjs +2 -2
- package/__cjs/utilities/graphql/DocumentTransform.cjs.map +1 -1
- package/__cjs/utilities/index.cjs +2 -3
- package/__cjs/utilities/index.cjs.map +1 -1
- package/__cjs/utilities/index.d.cts +1 -2
- package/__cjs/utilities/{shared → internal}/canonicalStringify.cjs +5 -7
- package/__cjs/utilities/internal/canonicalStringify.cjs.map +1 -0
- package/__cjs/utilities/{shared → internal}/canonicalStringify.d.cts +1 -1
- package/__cjs/utilities/internal/checkDocument.cjs +2 -2
- package/__cjs/utilities/internal/checkDocument.cjs.map +1 -1
- package/__cjs/utilities/internal/createFragmentMap.cjs.map +1 -1
- package/__cjs/{core → utilities/internal}/equalByQuery.cjs +13 -7
- package/__cjs/utilities/internal/equalByQuery.cjs.map +1 -0
- package/__cjs/utilities/internal/equalByQuery.d.cts +5 -0
- package/__cjs/utilities/internal/getFragmentQueryDocument.cjs +13 -3
- package/__cjs/utilities/internal/getFragmentQueryDocument.cjs.map +1 -1
- package/__cjs/utilities/internal/getFragmentQueryDocument.d.cts +13 -3
- package/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -1
- package/__cjs/utilities/internal/getStoreKeyName.cjs +9 -7
- package/__cjs/utilities/internal/getStoreKeyName.cjs.map +1 -1
- package/__cjs/utilities/internal/index.cjs +8 -2
- package/__cjs/utilities/internal/index.cjs.map +1 -1
- package/__cjs/utilities/internal/index.d.cts +4 -0
- package/__cjs/utilities/internal/mergeOptions.cjs.map +1 -1
- package/__cjs/utilities/internal/mergeOptions.d.cts +2 -2
- package/__cjs/utilities/internal/removeFragmentSpreads.cjs +14 -0
- package/__cjs/utilities/internal/removeFragmentSpreads.cjs.map +1 -0
- package/__cjs/utilities/internal/removeFragmentSpreads.d.cts +3 -0
- package/__cjs/utilities/internal/toQueryResult.cjs.map +1 -1
- package/__cjs/utilities/internal/toQueryResult.d.cts +2 -2
- package/__cjs/utilities/internal/types/DocumentationTypes.cjs +3 -0
- package/__cjs/utilities/internal/types/DocumentationTypes.cjs.map +1 -0
- package/__cjs/utilities/internal/types/DocumentationTypes.d.cts +96 -0
- package/__cjs/utilities/internal/types/NoInfer.d.cts +31 -25
- package/__cjs/utilities/subscriptions/relay/index.cjs +2 -0
- package/__cjs/utilities/subscriptions/relay/index.cjs.map +1 -1
- package/__cjs/version.cjs +1 -1
- package/cache/core/cache.d.ts +96 -66
- package/cache/core/cache.js +5 -13
- package/cache/core/cache.js.map +1 -1
- package/cache/core/types/Cache.d.ts +200 -15
- package/cache/core/types/Cache.js +1 -3
- package/cache/core/types/Cache.js.map +1 -1
- package/cache/deprecated.d.ts +6 -0
- package/cache/deprecated.js +2 -0
- package/cache/deprecated.js.map +1 -0
- package/cache/index.d.ts +2 -2
- package/cache/index.js.map +1 -1
- package/cache/inmemory/entityStore.d.ts +18 -17
- package/cache/inmemory/entityStore.js +28 -31
- package/cache/inmemory/entityStore.js.map +1 -1
- package/cache/inmemory/inMemoryCache.d.ts +4 -4
- package/cache/inmemory/inMemoryCache.js +1 -1
- package/cache/inmemory/inMemoryCache.js.map +1 -1
- package/cache/inmemory/key-extractor.js +1 -1
- package/cache/inmemory/policies.d.ts +3 -2
- package/cache/inmemory/policies.js +4 -4
- package/cache/inmemory/policies.js.map +1 -1
- package/cache/inmemory/readFromStore.js +2 -2
- package/cache/inmemory/types.d.ts +1 -1
- package/cache/inmemory/types.js.map +1 -1
- package/cache/inmemory/writeToStore.d.ts +1 -1
- package/cache/inmemory/writeToStore.js +4 -4
- package/cache/inmemory/writeToStore.js.map +1 -1
- package/core/ApolloClient.d.ts +790 -183
- package/core/ApolloClient.js +138 -118
- package/core/ApolloClient.js.map +1 -1
- package/core/ObservableQuery.d.ts +184 -68
- package/core/ObservableQuery.js +50 -20
- package/core/ObservableQuery.js.map +1 -1
- package/core/QueryInfo.d.ts +5 -4
- package/core/QueryInfo.js.map +1 -1
- package/core/QueryManager.d.ts +17 -17
- package/core/QueryManager.js +15 -13
- package/core/QueryManager.js.map +1 -1
- package/core/deprecated.d.ts +29 -0
- package/core/deprecated.js +2 -0
- package/core/deprecated.js.map +1 -0
- package/core/index.d.ts +9 -5
- package/core/index.js.map +1 -1
- package/core/types.d.ts +81 -104
- package/core/types.js.map +1 -1
- package/core/watchQueryOptions.d.ts +9 -298
- package/core/watchQueryOptions.js.map +1 -1
- package/dev/setErrorMessageHandler.d.ts +4 -4
- package/dev/setErrorMessageHandler.js.map +1 -1
- package/errors/CombinedGraphQLErrors.d.ts +147 -12
- package/errors/CombinedGraphQLErrors.js +60 -12
- package/errors/CombinedGraphQLErrors.js.map +1 -1
- package/errors/CombinedProtocolErrors.d.ts +127 -3
- package/errors/CombinedProtocolErrors.js +49 -2
- package/errors/CombinedProtocolErrors.js.map +1 -1
- package/errors/LinkError.d.ts +45 -2
- package/errors/LinkError.js +45 -2
- package/errors/LinkError.js.map +1 -1
- package/errors/LocalStateError.d.ts +42 -6
- package/errors/LocalStateError.js +36 -6
- package/errors/LocalStateError.js.map +1 -1
- package/errors/ServerError.d.ts +71 -12
- package/errors/ServerError.js +51 -9
- package/errors/ServerError.js.map +1 -1
- package/errors/ServerParseError.d.ts +72 -17
- package/errors/ServerParseError.js +46 -9
- package/errors/ServerParseError.js.map +1 -1
- package/errors/UnconventionalError.d.ts +46 -2
- package/errors/UnconventionalError.js +46 -2
- package/errors/UnconventionalError.js.map +1 -1
- package/incremental/handlers/notImplemented.js +1 -1
- package/invariantErrorCodes.js +72 -80
- package/link/batch/batchLink.js.map +1 -1
- package/link/batch-http/batchHttpLink.js +1 -1
- package/link/batch-http/batchHttpLink.js.map +1 -1
- package/link/client-awareness/ClientAwarenessLink.d.ts +4 -4
- package/link/client-awareness/ClientAwarenessLink.js.map +1 -1
- package/link/context/index.d.ts +1 -1
- package/link/context/index.js +1 -1
- package/link/context/index.js.map +1 -1
- package/link/core/ApolloLink.js +2 -2
- package/link/core/types.d.ts +2 -2
- package/link/core/types.js.map +1 -1
- package/link/error/index.d.ts +16 -1
- package/link/error/index.js.map +1 -1
- package/link/http/HttpLink.d.ts +13 -2
- package/link/http/HttpLink.js.map +1 -1
- package/link/http/checkFetcher.js +1 -1
- package/link/http/parseAndCheckHttpResponse.js +1 -1
- package/link/http/serializeFetchParameter.js +1 -1
- package/link/persisted-queries/index.d.ts +11 -11
- package/link/persisted-queries/index.js +2 -2
- package/link/persisted-queries/index.js.map +1 -1
- package/link/retry/delayFunction.d.ts +1 -1
- package/link/retry/delayFunction.js.map +1 -1
- package/link/retry/retryFunction.d.ts +1 -1
- package/link/retry/retryFunction.js.map +1 -1
- package/link/retry/retryLink.js.map +1 -1
- package/link/schema/index.js.map +1 -1
- package/link/utils/validateOperation.js +1 -1
- package/link/ws/index.js.map +1 -1
- package/local-state/LocalState.d.ts +94 -0
- package/local-state/LocalState.js +55 -9
- package/local-state/LocalState.js.map +1 -1
- package/masking/GraphQLCodegenDataMasking.d.ts +6 -7
- package/masking/GraphQLCodegenDataMasking.js.map +1 -1
- package/masking/internal/types.d.ts +70 -70
- package/masking/internal/types.js.map +1 -1
- package/masking/maskDefinition.js +2 -2
- package/masking/maskFragment.js +2 -2
- package/masking/maskOperation.js +1 -1
- package/masking/types.js.map +1 -1
- package/masking/utils.js +3 -3
- package/package.json +1 -1
- package/react/context/ApolloContext.js +1 -1
- package/react/context/ApolloProvider.js +1 -1
- package/react/hooks/internal/useDeepMemo.js +0 -3
- package/react/hooks/internal/useDeepMemo.js.map +1 -1
- package/react/hooks/internal/validateSuspenseHookOptions.d.ts +2 -2
- package/react/hooks/internal/validateSuspenseHookOptions.js.map +1 -1
- package/react/hooks/internal/wrapHook.d.ts +8 -7
- package/react/hooks/internal/wrapHook.js +1 -0
- package/react/hooks/internal/wrapHook.js.map +1 -1
- package/react/hooks/useApolloClient.d.ts +2 -2
- package/react/hooks/useApolloClient.js +2 -2
- package/react/hooks/useApolloClient.js.map +1 -1
- package/react/hooks/useBackgroundQuery.d.ts +814 -82
- package/react/hooks/useBackgroundQuery.js.map +1 -1
- package/react/hooks/useFragment.d.ts +54 -3
- package/react/hooks/useFragment.js +11 -9
- package/react/hooks/useFragment.js.map +1 -1
- package/react/hooks/useLazyQuery.d.ts +313 -119
- package/react/hooks/useLazyQuery.js +0 -38
- package/react/hooks/useLazyQuery.js.map +1 -1
- package/react/hooks/useLoadableQuery.d.ts +230 -44
- package/react/hooks/useLoadableQuery.js.map +1 -1
- package/react/hooks/useMutation.d.ts +57 -17
- package/react/hooks/useMutation.js +6 -7
- package/react/hooks/useMutation.js.map +1 -1
- package/react/hooks/useQuery.d.ts +407 -238
- package/react/hooks/useQuery.js +1 -35
- package/react/hooks/useQuery.js.map +1 -1
- package/react/hooks/useQueryRefHandlers.d.ts +25 -1
- package/react/hooks/useQueryRefHandlers.js +2 -1
- package/react/hooks/useQueryRefHandlers.js.map +1 -1
- package/react/hooks/useReactiveVar.d.ts +2 -1
- package/react/hooks/useReactiveVar.js +2 -1
- package/react/hooks/useReactiveVar.js.map +1 -1
- package/react/hooks/useReadQuery.d.ts +96 -17
- package/react/hooks/useReadQuery.js +29 -0
- package/react/hooks/useReadQuery.js.map +1 -1
- package/react/hooks/useSubscription.d.ts +153 -69
- package/react/hooks/useSubscription.js +8 -9
- package/react/hooks/useSubscription.js.map +1 -1
- package/react/hooks/useSuspenseFragment.d.ts +62 -30
- package/react/hooks/useSuspenseFragment.js.map +1 -1
- package/react/hooks/useSuspenseQuery.d.ts +605 -160
- package/react/hooks/useSuspenseQuery.js +4 -1
- package/react/hooks/useSuspenseQuery.js.map +1 -1
- package/react/hooks-compiled/internal/useDeepMemo.js +0 -3
- package/react/hooks-compiled/internal/useDeepMemo.js.map +1 -1
- package/react/hooks-compiled/internal/validateSuspenseHookOptions.d.ts +2 -2
- package/react/hooks-compiled/internal/validateSuspenseHookOptions.js.map +1 -1
- package/react/hooks-compiled/internal/wrapHook.d.ts +8 -7
- package/react/hooks-compiled/internal/wrapHook.js +1 -0
- package/react/hooks-compiled/internal/wrapHook.js.map +1 -1
- package/react/hooks-compiled/useApolloClient.d.ts +2 -2
- package/react/hooks-compiled/useApolloClient.js +2 -2
- package/react/hooks-compiled/useApolloClient.js.map +1 -1
- package/react/hooks-compiled/useBackgroundQuery.d.ts +814 -82
- package/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
- package/react/hooks-compiled/useFragment.d.ts +54 -3
- package/react/hooks-compiled/useFragment.js +11 -9
- package/react/hooks-compiled/useFragment.js.map +1 -1
- package/react/hooks-compiled/useLazyQuery.d.ts +313 -119
- package/react/hooks-compiled/useLazyQuery.js +0 -38
- package/react/hooks-compiled/useLazyQuery.js.map +1 -1
- package/react/hooks-compiled/useLoadableQuery.d.ts +230 -44
- package/react/hooks-compiled/useLoadableQuery.js.map +1 -1
- package/react/hooks-compiled/useMutation.d.ts +57 -17
- package/react/hooks-compiled/useMutation.js +6 -7
- package/react/hooks-compiled/useMutation.js.map +1 -1
- package/react/hooks-compiled/useQuery.d.ts +407 -238
- package/react/hooks-compiled/useQuery.js +1 -35
- package/react/hooks-compiled/useQuery.js.map +1 -1
- package/react/hooks-compiled/useQueryRefHandlers.d.ts +25 -1
- package/react/hooks-compiled/useQueryRefHandlers.js +2 -1
- package/react/hooks-compiled/useQueryRefHandlers.js.map +1 -1
- package/react/hooks-compiled/useReactiveVar.d.ts +2 -1
- package/react/hooks-compiled/useReactiveVar.js +2 -1
- package/react/hooks-compiled/useReactiveVar.js.map +1 -1
- package/react/hooks-compiled/useReadQuery.d.ts +96 -17
- package/react/hooks-compiled/useReadQuery.js +29 -0
- package/react/hooks-compiled/useReadQuery.js.map +1 -1
- package/react/hooks-compiled/useSubscription.d.ts +153 -69
- package/react/hooks-compiled/useSubscription.js +8 -9
- package/react/hooks-compiled/useSubscription.js.map +1 -1
- package/react/hooks-compiled/useSuspenseFragment.d.ts +62 -30
- package/react/hooks-compiled/useSuspenseFragment.js.map +1 -1
- package/react/hooks-compiled/useSuspenseQuery.d.ts +605 -160
- package/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
- package/react/index.compiled.d.ts +0 -2
- package/react/index.compiled.js +0 -2
- package/react/index.compiled.js.map +1 -1
- package/react/index.d.ts +0 -2
- package/react/index.js +0 -2
- package/react/index.js.map +1 -1
- package/react/index.react-server.d.ts +0 -1
- package/react/index.react-server.js +0 -2
- package/react/index.react-server.js.map +1 -1
- package/react/internal/cache/FragmentReference.d.ts +2 -3
- package/react/internal/cache/FragmentReference.js +1 -1
- package/react/internal/cache/FragmentReference.js.map +1 -1
- package/react/internal/cache/QueryReference.d.ts +11 -11
- package/react/internal/cache/QueryReference.js.map +1 -1
- package/react/internal/cache/SuspenseCache.d.ts +2 -2
- package/react/internal/cache/SuspenseCache.js.map +1 -1
- package/react/internal/cache/getSuspenseCache.d.ts +6 -4
- package/react/internal/cache/getSuspenseCache.js.map +1 -1
- package/react/internal/index.d.ts +1 -1
- package/react/internal/index.js +1 -0
- package/react/internal/index.js.map +1 -1
- package/react/internal/types.d.ts +3 -3
- package/react/internal/types.js.map +1 -1
- package/react/query-preloader/createQueryPreloader.d.ts +31 -31
- package/react/query-preloader/createQueryPreloader.js +1 -1
- package/react/query-preloader/createQueryPreloader.js.map +1 -1
- package/react/ssr/prerenderStatic.d.ts +11 -9
- package/react/ssr/prerenderStatic.js +5 -4
- package/react/ssr/prerenderStatic.js.map +1 -1
- package/react/ssr/useSSRQuery.js.map +1 -1
- package/react/types/deprecated.d.ts +1 -1
- package/react/types/deprecated.js.map +1 -1
- package/react/types/types.documentation.d.ts +22 -11
- package/react/types/types.documentation.js.map +1 -1
- package/testing/core/mocking/mockLink.d.ts +3 -2
- package/testing/core/mocking/mockLink.js.map +1 -1
- package/testing/core/types/deprecated.d.ts +3 -2
- package/testing/core/types/deprecated.js.map +1 -1
- package/testing/react/MockedProvider.d.ts +2 -3
- package/testing/react/MockedProvider.js.map +1 -1
- package/utilities/HKT.d.ts +8 -7
- package/utilities/HKT.js.map +1 -1
- package/utilities/caching/sizes.d.ts +4 -6
- package/utilities/caching/sizes.js +3 -3
- package/utilities/caching/sizes.js.map +1 -1
- package/utilities/graphql/DocumentTransform.js +1 -1
- package/utilities/graphql/DocumentTransform.js.map +1 -1
- package/utilities/index.d.ts +1 -2
- package/utilities/index.js +1 -2
- package/utilities/index.js.map +1 -1
- package/utilities/{shared → internal}/canonicalStringify.d.ts +1 -1
- package/utilities/{shared → internal}/canonicalStringify.js +4 -6
- package/utilities/internal/canonicalStringify.js.map +1 -0
- package/utilities/internal/checkDocument.js +1 -1
- package/utilities/internal/checkDocument.js.map +1 -1
- package/utilities/internal/createFragmentMap.js.map +1 -1
- package/utilities/internal/equalByQuery.d.ts +5 -0
- package/{core → utilities/internal}/equalByQuery.js +7 -1
- package/utilities/internal/equalByQuery.js.map +1 -0
- package/utilities/internal/getFragmentQueryDocument.d.ts +13 -3
- package/utilities/internal/getFragmentQueryDocument.js +13 -3
- package/utilities/internal/getFragmentQueryDocument.js.map +1 -1
- package/utilities/internal/getMemoryInternals.js.map +1 -1
- package/utilities/internal/getStoreKeyName.js +9 -7
- package/utilities/internal/getStoreKeyName.js.map +1 -1
- package/utilities/internal/index.d.ts +4 -0
- package/utilities/internal/index.js +3 -0
- package/utilities/internal/index.js.map +1 -1
- package/utilities/internal/mergeOptions.d.ts +2 -2
- package/utilities/internal/mergeOptions.js.map +1 -1
- package/utilities/internal/removeFragmentSpreads.d.ts +3 -0
- package/utilities/internal/removeFragmentSpreads.js +11 -0
- package/utilities/internal/removeFragmentSpreads.js.map +1 -0
- package/utilities/internal/toQueryResult.d.ts +2 -2
- package/utilities/internal/toQueryResult.js.map +1 -1
- package/utilities/internal/types/DocumentationTypes.d.ts +96 -0
- package/utilities/internal/types/DocumentationTypes.js +2 -0
- package/utilities/internal/types/DocumentationTypes.js.map +1 -0
- package/utilities/internal/types/NoInfer.d.ts +31 -25
- package/utilities/internal/types/NoInfer.js.map +1 -1
- package/utilities/subscriptions/relay/index.js +2 -0
- package/utilities/subscriptions/relay/index.js.map +1 -1
- package/version.js +1 -1
- package/__cjs/cache/core/types/DataProxy.cjs.map +0 -1
- package/__cjs/cache/core/types/DataProxy.d.cts +0 -140
- package/__cjs/core/equalByQuery.cjs.map +0 -1
- package/__cjs/core/equalByQuery.d.cts +0 -4
- package/__cjs/react/context/ApolloConsumer.cjs +0 -16
- package/__cjs/react/context/ApolloConsumer.cjs.map +0 -1
- package/__cjs/react/context/ApolloConsumer.d.cts +0 -10
- package/__cjs/utilities/shared/canonicalStringify.cjs.map +0 -1
- package/cache/core/types/DataProxy.d.ts +0 -140
- package/cache/core/types/DataProxy.js +0 -2
- package/cache/core/types/DataProxy.js.map +0 -1
- package/core/equalByQuery.d.ts +0 -4
- package/core/equalByQuery.js.map +0 -1
- package/react/context/ApolloConsumer.d.ts +0 -10
- package/react/context/ApolloConsumer.js +0 -11
- package/react/context/ApolloConsumer.js.map +0 -1
- package/utilities/shared/canonicalStringify.js.map +0 -1
|
@@ -4,53 +4,11 @@ import { Observable } from "rxjs";
|
|
|
4
4
|
import type { Cache, MissingFieldError } from "@apollo/client/cache";
|
|
5
5
|
import type { MissingTree } from "@apollo/client/cache";
|
|
6
6
|
import type { MaybeMasked, Unmasked } from "@apollo/client/masking";
|
|
7
|
+
import type { ApolloClient } from "./ApolloClient.js";
|
|
8
|
+
import { NetworkStatus } from "./networkStatus.js";
|
|
7
9
|
import type { QueryManager } from "./QueryManager.js";
|
|
8
|
-
import type {
|
|
9
|
-
import type { ErrorPolicy, NextFetchPolicyContext, RefetchWritePolicy,
|
|
10
|
-
export type FetchMoreOptions<TData, TVariables extends OperationVariables, TFetchData = TData, TFetchVars extends OperationVariables = TVariables> = {
|
|
11
|
-
/**
|
|
12
|
-
* A GraphQL query string parsed into an AST with the gql template literal.
|
|
13
|
-
*
|
|
14
|
-
* @docGroup
|
|
15
|
-
*
|
|
16
|
-
* 1. Operation options
|
|
17
|
-
*/
|
|
18
|
-
query?: DocumentNode | TypedDocumentNode<TFetchData, TFetchVars>;
|
|
19
|
-
/**
|
|
20
|
-
* An object containing all of the GraphQL variables your query requires to execute.
|
|
21
|
-
*
|
|
22
|
-
* Each key in the object corresponds to a variable name, and that key's value corresponds to the variable value.
|
|
23
|
-
*
|
|
24
|
-
* @docGroup
|
|
25
|
-
*
|
|
26
|
-
* 1. Operation options
|
|
27
|
-
*/
|
|
28
|
-
variables?: Partial<NoInfer<TFetchVars>>;
|
|
29
|
-
/**
|
|
30
|
-
* Specifies how the query handles a response that returns both GraphQL errors and partial results.
|
|
31
|
-
*
|
|
32
|
-
* For details, see [GraphQL error policies](https://www.apollographql.com/docs/react/data/error-handling/#graphql-error-policies).
|
|
33
|
-
*
|
|
34
|
-
* The default value is `none`, meaning that the query result includes error details but not partial results.
|
|
35
|
-
*
|
|
36
|
-
* @docGroup
|
|
37
|
-
*
|
|
38
|
-
* 1. Operation options
|
|
39
|
-
*/
|
|
40
|
-
errorPolicy?: ErrorPolicy;
|
|
41
|
-
/**
|
|
42
|
-
* If you're using [Apollo Link](https://www.apollographql.com/docs/react/api/link/introduction/), this object is the initial value of the `context` object that's passed along your link chain.
|
|
43
|
-
*
|
|
44
|
-
* @docGroup
|
|
45
|
-
*
|
|
46
|
-
* 2. Networking options
|
|
47
|
-
*/
|
|
48
|
-
context?: DefaultContext;
|
|
49
|
-
updateQuery?: (previousQueryResult: Unmasked<TData>, options: {
|
|
50
|
-
fetchMoreResult: Unmasked<TFetchData>;
|
|
51
|
-
variables: TFetchVars;
|
|
52
|
-
}) => Unmasked<TData>;
|
|
53
|
-
};
|
|
10
|
+
import type { DataState, DefaultContext, ErrorLike, GetDataState, OperationVariables, TypedDocumentNode } from "./types.js";
|
|
11
|
+
import type { ErrorPolicy, NextFetchPolicyContext, RefetchWritePolicy, SubscribeToMoreUpdateQueryFn, UpdateQueryMapFn, WatchQueryFetchPolicy } from "./watchQueryOptions.js";
|
|
54
12
|
export declare namespace ObservableQuery {
|
|
55
13
|
type Options<TData = unknown, TVariables extends OperationVariables = OperationVariables> = {
|
|
56
14
|
/**
|
|
@@ -72,7 +30,7 @@ export declare namespace ObservableQuery {
|
|
|
72
30
|
*
|
|
73
31
|
* 3. Caching options
|
|
74
32
|
*/
|
|
75
|
-
nextFetchPolicy?: WatchQueryFetchPolicy | ((this: WatchQueryOptions<
|
|
33
|
+
nextFetchPolicy?: WatchQueryFetchPolicy | ((this: ApolloClient.WatchQueryOptions<TData, TVariables>, currentFetchPolicy: WatchQueryFetchPolicy, context: NextFetchPolicyContext<TData, TVariables>) => WatchQueryFetchPolicy);
|
|
76
34
|
/**
|
|
77
35
|
* Defaults to the initial value of options.fetchPolicy, but can be explicitly configured to specify the WatchQueryFetchPolicy to revert back to whenever variables change (unless nextFetchPolicy intervenes).
|
|
78
36
|
*
|
|
@@ -166,6 +124,57 @@ export declare namespace ObservableQuery {
|
|
|
166
124
|
*/
|
|
167
125
|
variables: TVariables;
|
|
168
126
|
};
|
|
127
|
+
type FetchMoreOptions<TData, TVariables extends OperationVariables, TFetchData = TData, TFetchVars extends OperationVariables = TVariables> = {
|
|
128
|
+
/**
|
|
129
|
+
* A GraphQL query string parsed into an AST with the gql template literal.
|
|
130
|
+
*
|
|
131
|
+
* @docGroup
|
|
132
|
+
*
|
|
133
|
+
* 1. Operation options
|
|
134
|
+
*/
|
|
135
|
+
query?: DocumentNode | TypedDocumentNode<TFetchData, TFetchVars>;
|
|
136
|
+
/**
|
|
137
|
+
* An object containing all of the GraphQL variables your query requires to execute.
|
|
138
|
+
*
|
|
139
|
+
* Each key in the object corresponds to a variable name, and that key's value corresponds to the variable value.
|
|
140
|
+
*
|
|
141
|
+
* @docGroup
|
|
142
|
+
*
|
|
143
|
+
* 1. Operation options
|
|
144
|
+
*/
|
|
145
|
+
variables?: Partial<NoInfer<TFetchVars>>;
|
|
146
|
+
/**
|
|
147
|
+
* Specifies how the query handles a response that returns both GraphQL errors and partial results.
|
|
148
|
+
*
|
|
149
|
+
* For details, see [GraphQL error policies](https://www.apollographql.com/docs/react/data/error-handling/#graphql-error-policies).
|
|
150
|
+
*
|
|
151
|
+
* The default value is `none`, meaning that the query result includes error details but not partial results.
|
|
152
|
+
*
|
|
153
|
+
* @docGroup
|
|
154
|
+
*
|
|
155
|
+
* 1. Operation options
|
|
156
|
+
*/
|
|
157
|
+
errorPolicy?: ErrorPolicy;
|
|
158
|
+
/**
|
|
159
|
+
* If you're using [Apollo Link](https://www.apollographql.com/docs/react/api/link/introduction/), this object is the initial value of the `context` object that's passed along your link chain.
|
|
160
|
+
*
|
|
161
|
+
* @docGroup
|
|
162
|
+
*
|
|
163
|
+
* 2. Networking options
|
|
164
|
+
*/
|
|
165
|
+
context?: DefaultContext;
|
|
166
|
+
updateQuery?: (previousQueryResult: Unmasked<TData>, options: {
|
|
167
|
+
fetchMoreResult: Unmasked<TFetchData>;
|
|
168
|
+
variables: TFetchVars;
|
|
169
|
+
}) => Unmasked<TData>;
|
|
170
|
+
};
|
|
171
|
+
interface SubscribeToMoreOptions<TData = unknown, TSubscriptionVariables extends OperationVariables = OperationVariables, TSubscriptionData = TData, TVariables extends OperationVariables = TSubscriptionVariables> {
|
|
172
|
+
document: DocumentNode | TypedDocumentNode<TSubscriptionData, TSubscriptionVariables>;
|
|
173
|
+
variables?: TSubscriptionVariables;
|
|
174
|
+
updateQuery?: SubscribeToMoreUpdateQueryFn<TData, TVariables, TSubscriptionData>;
|
|
175
|
+
onError?: (error: ErrorLike) => void;
|
|
176
|
+
context?: DefaultContext;
|
|
177
|
+
}
|
|
169
178
|
/**
|
|
170
179
|
* @internal
|
|
171
180
|
* This describes the `WatchOptions` used by `ObservableQuery` to
|
|
@@ -189,6 +198,48 @@ export declare namespace ObservableQuery {
|
|
|
189
198
|
*/
|
|
190
199
|
lastOwnDiff?: Cache.DiffResult<TData>;
|
|
191
200
|
}
|
|
201
|
+
type Result<TData, TStates extends DataState<TData>["dataState"] = DataState<TData>["dataState"]> = {
|
|
202
|
+
/**
|
|
203
|
+
* A single ErrorLike object describing the error that occured during the latest query execution.
|
|
204
|
+
*
|
|
205
|
+
* For more information, see [Handling operation errors](https://www.apollographql.com/docs/react/data/error-handling/).
|
|
206
|
+
*
|
|
207
|
+
* @docGroup
|
|
208
|
+
*
|
|
209
|
+
* 1. Operation data
|
|
210
|
+
*/
|
|
211
|
+
error?: ErrorLike;
|
|
212
|
+
/**
|
|
213
|
+
* If `true`, the query is still in flight and results have not yet been returned.
|
|
214
|
+
*
|
|
215
|
+
* @docGroup
|
|
216
|
+
*
|
|
217
|
+
* 2. Network info
|
|
218
|
+
*/
|
|
219
|
+
loading: boolean;
|
|
220
|
+
/**
|
|
221
|
+
* A number indicating the current network state of the query's associated request. [See possible values.](https://github.com/apollographql/apollo-client/blob/d96f4578f89b933c281bb775a39503f6cdb59ee8/src/core/networkStatus.ts#L4)
|
|
222
|
+
*
|
|
223
|
+
* Used in conjunction with the [`notifyOnNetworkStatusChange`](#notifyonnetworkstatuschange) option.
|
|
224
|
+
*
|
|
225
|
+
* @docGroup
|
|
226
|
+
*
|
|
227
|
+
* 2. Network info
|
|
228
|
+
*/
|
|
229
|
+
networkStatus: NetworkStatus;
|
|
230
|
+
/**
|
|
231
|
+
* Describes whether `data` is a complete or partial result. This flag is only set when `returnPartialData` is `true` in query options.
|
|
232
|
+
*
|
|
233
|
+
* @deprecated
|
|
234
|
+
*
|
|
235
|
+
* This field will be removed in a future version of Apollo Client.
|
|
236
|
+
*
|
|
237
|
+
* @docGroup
|
|
238
|
+
*
|
|
239
|
+
* 1. Operation data
|
|
240
|
+
*/
|
|
241
|
+
partial: boolean;
|
|
242
|
+
} & GetDataState<TData, TStates>;
|
|
192
243
|
/**
|
|
193
244
|
* Promise returned by `reobserve` and `refetch` methods.
|
|
194
245
|
*
|
|
@@ -205,8 +256,39 @@ export declare namespace ObservableQuery {
|
|
|
205
256
|
*/
|
|
206
257
|
retain(): this;
|
|
207
258
|
}
|
|
259
|
+
namespace DocumentationTypes {
|
|
260
|
+
type OperatorFunctionChain<From, To> = [];
|
|
261
|
+
interface ObservableMethods<TData, OperatorResult> {
|
|
262
|
+
/**
|
|
263
|
+
* Used to stitch together functional operators into a chain.
|
|
264
|
+
*
|
|
265
|
+
* @returns The Observable result of all the operators having been called in the order they were passed in.
|
|
266
|
+
*
|
|
267
|
+
* @example
|
|
268
|
+
* ```ts
|
|
269
|
+
* import { filter, map } from 'rxjs';
|
|
270
|
+
*
|
|
271
|
+
* observableQuery
|
|
272
|
+
* .pipe(
|
|
273
|
+
* filter(...),
|
|
274
|
+
* map(...),
|
|
275
|
+
* )
|
|
276
|
+
* .subscribe(x => console.log(x));
|
|
277
|
+
* ```
|
|
278
|
+
*/
|
|
279
|
+
pipe(...operators: OperatorFunctionChain<ObservableQuery.Result<TData>, OperatorResult>): Observable<OperatorResult>;
|
|
280
|
+
/**
|
|
281
|
+
* Subscribes to the `ObservableQuery`.
|
|
282
|
+
*
|
|
283
|
+
* @param observerOrNext - Either an RxJS `Observer` with some or all callback methods, or the `next` handler that is called for each value emitted from the subscribed Observable.
|
|
284
|
+
*
|
|
285
|
+
* @returns A subscription reference to the registered handlers.
|
|
286
|
+
*/
|
|
287
|
+
subscribe(observerOrNext: Partial<Observer<ObservableQuery.Result<MaybeMasked<TData>>>> | ((value: ObservableQuery.Result<MaybeMasked<TData>>) => void)): Subscription;
|
|
288
|
+
}
|
|
289
|
+
}
|
|
208
290
|
}
|
|
209
|
-
export declare class ObservableQuery<TData = unknown, TVariables extends OperationVariables = OperationVariables> implements Subscribable<
|
|
291
|
+
export declare class ObservableQuery<TData = unknown, TVariables extends OperationVariables = OperationVariables> implements Subscribable<ObservableQuery.Result<MaybeMasked<TData>>>, InteropObservable<ObservableQuery.Result<MaybeMasked<TData>>> {
|
|
210
292
|
readonly options: ObservableQuery.Options<TData, TVariables>;
|
|
211
293
|
readonly queryName?: string;
|
|
212
294
|
/**
|
|
@@ -238,15 +320,40 @@ export declare class ObservableQuery<TData = unknown, TVariables extends Operati
|
|
|
238
320
|
private get networkStatus();
|
|
239
321
|
constructor({ queryManager, options, transformedQuery, }: {
|
|
240
322
|
queryManager: QueryManager;
|
|
241
|
-
options: WatchQueryOptions<
|
|
323
|
+
options: ApolloClient.WatchQueryOptions<TData, TVariables>;
|
|
242
324
|
transformedQuery?: DocumentNode | TypedDocumentNode<TData, TVariables>;
|
|
243
325
|
queryId?: string;
|
|
244
326
|
});
|
|
245
327
|
private initializeObservablesQueue;
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
328
|
+
/**
|
|
329
|
+
* Subscribes to the `ObservableQuery`.
|
|
330
|
+
* @param observerOrNext - Either an RxJS `Observer` with some or all callback methods,
|
|
331
|
+
* or the `next` handler that is called for each value emitted from the subscribed Observable.
|
|
332
|
+
* @returns A subscription reference to the registered handlers.
|
|
333
|
+
*/
|
|
334
|
+
subscribe: (observerOrNext: Partial<Observer<ObservableQuery.Result<MaybeMasked<TData>>>> | ((value: ObservableQuery.Result<MaybeMasked<TData>>) => void)) => Subscription;
|
|
335
|
+
/**
|
|
336
|
+
* Used to stitch together functional operators into a chain.
|
|
337
|
+
*
|
|
338
|
+
* @example
|
|
339
|
+
*
|
|
340
|
+
* ```ts
|
|
341
|
+
* import { filter, map } from 'rxjs';
|
|
342
|
+
*
|
|
343
|
+
* observableQuery
|
|
344
|
+
* .pipe(
|
|
345
|
+
* filter(...),
|
|
346
|
+
* map(...),
|
|
347
|
+
* )
|
|
348
|
+
* .subscribe(x => console.log(x));
|
|
349
|
+
* ```
|
|
350
|
+
*
|
|
351
|
+
* @returns The Observable result of all the operators having been called
|
|
352
|
+
* in the order they were passed in.
|
|
353
|
+
*/
|
|
354
|
+
pipe: Observable<ObservableQuery.Result<MaybeMasked<TData>>>["pipe"];
|
|
355
|
+
[Symbol.observable]: () => Subscribable<ObservableQuery.Result<MaybeMasked<TData>>>;
|
|
356
|
+
["@@observable"]: () => Subscribable<ObservableQuery.Result<MaybeMasked<TData>>>;
|
|
250
357
|
/**
|
|
251
358
|
* @internal
|
|
252
359
|
*
|
|
@@ -258,25 +365,32 @@ export declare class ObservableQuery<TData = unknown, TVariables extends Operati
|
|
|
258
365
|
private getInitialResult;
|
|
259
366
|
private resubscribeCache;
|
|
260
367
|
private stableLastResult?;
|
|
261
|
-
getCurrentResult():
|
|
368
|
+
getCurrentResult(): ObservableQuery.Result<MaybeMasked<TData>>;
|
|
262
369
|
/**
|
|
263
370
|
* Update the variables of this observable query, and fetch the new results.
|
|
264
371
|
* This method should be preferred over `setVariables` in most use cases.
|
|
265
372
|
*
|
|
373
|
+
* Returns a `ResultPromise` with an additional `.retain()` method. Calling
|
|
374
|
+
* `.retain()` keeps the network operation running even if the `ObservableQuery`
|
|
375
|
+
* no longer requires the result.
|
|
376
|
+
*
|
|
377
|
+
* Note: `refetch()` guarantees that a value will be emitted from the
|
|
378
|
+
* observable, even if the result is deep equal to the previous value.
|
|
379
|
+
*
|
|
266
380
|
* @param variables - The new set of variables. If there are missing variables,
|
|
267
381
|
* the previous values of those variables will be used.
|
|
268
382
|
*/
|
|
269
|
-
refetch(variables?: Partial<TVariables>): ObservableQuery.ResultPromise<QueryResult<TData>>;
|
|
383
|
+
refetch(variables?: Partial<TVariables>): ObservableQuery.ResultPromise<ApolloClient.QueryResult<TData>>;
|
|
270
384
|
/**
|
|
271
385
|
* A function that helps you fetch the next set of results for a [paginated list field](https://www.apollographql.com/docs/react/pagination/core-api/).
|
|
272
386
|
*/
|
|
273
|
-
fetchMore<TFetchData = TData, TFetchVars extends OperationVariables = TVariables>(
|
|
387
|
+
fetchMore<TFetchData = TData, TFetchVars extends OperationVariables = TVariables>(options: ObservableQuery.FetchMoreOptions<TData, TVariables, TFetchData, TFetchVars>): Promise<ApolloClient.QueryResult<TFetchData>>;
|
|
274
388
|
/**
|
|
275
389
|
* A function that enables you to execute a [subscription](https://www.apollographql.com/docs/react/data/subscriptions/), usually to subscribe to specific fields that were included in the query.
|
|
276
390
|
*
|
|
277
391
|
* This function returns _another_ function that you can call to terminate the subscription.
|
|
278
392
|
*/
|
|
279
|
-
subscribeToMore<TSubscriptionData = TData, TSubscriptionVariables extends OperationVariables = TVariables>(options: SubscribeToMoreOptions<TData, TSubscriptionVariables, TSubscriptionData, TVariables>): () => void;
|
|
393
|
+
subscribeToMore<TSubscriptionData = TData, TSubscriptionVariables extends OperationVariables = TVariables>(options: ObservableQuery.SubscribeToMoreOptions<TData, TSubscriptionVariables, TSubscriptionData, TVariables>): () => void;
|
|
280
394
|
/**
|
|
281
395
|
* @internal
|
|
282
396
|
*
|
|
@@ -289,19 +403,17 @@ export declare class ObservableQuery<TData = unknown, TVariables extends Operati
|
|
|
289
403
|
* `setVariables` in order to to be properly notified of results even when
|
|
290
404
|
* they come from the cache.
|
|
291
405
|
*
|
|
292
|
-
* Note:
|
|
293
|
-
*
|
|
406
|
+
* Note: `setVariables()` guarantees that a value will be emitted from the
|
|
407
|
+
* observable, even if the result is deeply equal to the previous value.
|
|
294
408
|
*
|
|
295
|
-
* Note: the promise will
|
|
296
|
-
*
|
|
297
|
-
*
|
|
298
|
-
* Note: the promise will return the last result immediately if the query is not active
|
|
299
|
-
* (there are no subscribers).
|
|
409
|
+
* Note: the promise will resolve with the last emitted result
|
|
410
|
+
* when either the variables match the current variables or there
|
|
411
|
+
* are no subscribers to the query.
|
|
300
412
|
*
|
|
301
413
|
* @param variables - The new set of variables. If there are missing variables,
|
|
302
414
|
* the previous values of those variables will be used.
|
|
303
415
|
*/
|
|
304
|
-
setVariables(variables: TVariables): Promise<QueryResult<TData>>;
|
|
416
|
+
setVariables(variables: TVariables): Promise<ApolloClient.QueryResult<TData>>;
|
|
305
417
|
/**
|
|
306
418
|
* A function that enables you to update the query's cached result without executing a followup GraphQL operation.
|
|
307
419
|
*
|
|
@@ -324,8 +436,11 @@ export declare class ObservableQuery<TData = unknown, TVariables extends Operati
|
|
|
324
436
|
/**
|
|
325
437
|
* Reevaluate the query, optionally against new options. New options will be
|
|
326
438
|
* merged with the current options when given.
|
|
439
|
+
*
|
|
440
|
+
* Note: `variables` can be reset back to their defaults (typically empty) by calling `reobserve` with
|
|
441
|
+
* `variables: undefined`.
|
|
327
442
|
*/
|
|
328
|
-
reobserve(newOptions?: Partial<ObservableQuery.Options<TData, TVariables>>): ObservableQuery.ResultPromise<QueryResult<MaybeMasked<TData>>>;
|
|
443
|
+
reobserve(newOptions?: Partial<ObservableQuery.Options<TData, TVariables>>): ObservableQuery.ResultPromise<ApolloClient.QueryResult<MaybeMasked<TData>>>;
|
|
329
444
|
private _reobserve;
|
|
330
445
|
hasObservers(): boolean;
|
|
331
446
|
/**
|
|
@@ -362,8 +477,9 @@ export declare class ObservableQuery<TData = unknown, TVariables extends Operati
|
|
|
362
477
|
/**
|
|
363
478
|
* @internal
|
|
364
479
|
* Called from `clearStore`.
|
|
365
|
-
*
|
|
366
|
-
*
|
|
480
|
+
*
|
|
481
|
+
* - resets the query to its initial state
|
|
482
|
+
* - cancels all active operations and their subscriptions
|
|
367
483
|
*
|
|
368
484
|
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
369
485
|
*/
|
package/core/ObservableQuery.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { equal } from "@wry/equality";
|
|
2
2
|
import { BehaviorSubject, Observable, share, Subject, tap } from "rxjs";
|
|
3
3
|
import { __DEV__ } from "@apollo/client/utilities/environment";
|
|
4
|
-
import { compact, filterMap, getOperationDefinition, getOperationName, getQueryDefinition, preventUnhandledRejection, toQueryResult, } from "@apollo/client/utilities/internal";
|
|
4
|
+
import { compact, equalByQuery, filterMap, getOperationDefinition, getOperationName, getQueryDefinition, preventUnhandledRejection, toQueryResult, } from "@apollo/client/utilities/internal";
|
|
5
5
|
import { invariant } from "@apollo/client/utilities/invariant";
|
|
6
|
-
import { equalByQuery } from "./equalByQuery.js";
|
|
7
6
|
import { isNetworkRequestInFlight, NetworkStatus } from "./networkStatus.js";
|
|
8
7
|
const { assign, hasOwnProperty } = Object;
|
|
9
8
|
const uninitialized = {
|
|
@@ -162,7 +161,32 @@ export class ObservableQuery {
|
|
|
162
161
|
// We can't use Observable['subscribe'] here as the type as it conflicts with
|
|
163
162
|
// the ability to infer T from Subscribable<T>. This limits the surface area
|
|
164
163
|
// to the non-deprecated signature which works properly with type inference.
|
|
164
|
+
/**
|
|
165
|
+
* Subscribes to the `ObservableQuery`.
|
|
166
|
+
* @param observerOrNext - Either an RxJS `Observer` with some or all callback methods,
|
|
167
|
+
* or the `next` handler that is called for each value emitted from the subscribed Observable.
|
|
168
|
+
* @returns A subscription reference to the registered handlers.
|
|
169
|
+
*/
|
|
165
170
|
subscribe;
|
|
171
|
+
/**
|
|
172
|
+
* Used to stitch together functional operators into a chain.
|
|
173
|
+
*
|
|
174
|
+
* @example
|
|
175
|
+
*
|
|
176
|
+
* ```ts
|
|
177
|
+
* import { filter, map } from 'rxjs';
|
|
178
|
+
*
|
|
179
|
+
* observableQuery
|
|
180
|
+
* .pipe(
|
|
181
|
+
* filter(...),
|
|
182
|
+
* map(...),
|
|
183
|
+
* )
|
|
184
|
+
* .subscribe(x => console.log(x));
|
|
185
|
+
* ```
|
|
186
|
+
*
|
|
187
|
+
* @returns The Observable result of all the operators having been called
|
|
188
|
+
* in the order they were passed in.
|
|
189
|
+
*/
|
|
166
190
|
pipe;
|
|
167
191
|
[Symbol.observable];
|
|
168
192
|
["@@observable"];
|
|
@@ -318,6 +342,13 @@ export class ObservableQuery {
|
|
|
318
342
|
* Update the variables of this observable query, and fetch the new results.
|
|
319
343
|
* This method should be preferred over `setVariables` in most use cases.
|
|
320
344
|
*
|
|
345
|
+
* Returns a `ResultPromise` with an additional `.retain()` method. Calling
|
|
346
|
+
* `.retain()` keeps the network operation running even if the `ObservableQuery`
|
|
347
|
+
* no longer requires the result.
|
|
348
|
+
*
|
|
349
|
+
* Note: `refetch()` guarantees that a value will be emitted from the
|
|
350
|
+
* observable, even if the result is deep equal to the previous value.
|
|
351
|
+
*
|
|
321
352
|
* @param variables - The new set of variables. If there are missing variables,
|
|
322
353
|
* the previous values of those variables will be used.
|
|
323
354
|
*/
|
|
@@ -340,7 +371,7 @@ export class ObservableQuery {
|
|
|
340
371
|
const queryDef = getQueryDefinition(this.query);
|
|
341
372
|
const vars = queryDef.variableDefinitions;
|
|
342
373
|
if (!vars || !vars.some((v) => v.variable.name.value === "variables")) {
|
|
343
|
-
__DEV__ && invariant.warn(
|
|
374
|
+
__DEV__ && invariant.warn(77, variables, queryDef.name?.value || queryDef);
|
|
344
375
|
}
|
|
345
376
|
}
|
|
346
377
|
if (variables && !equal(this.variables, variables)) {
|
|
@@ -353,13 +384,10 @@ export class ObservableQuery {
|
|
|
353
384
|
newNetworkStatus: NetworkStatus.refetch,
|
|
354
385
|
});
|
|
355
386
|
}
|
|
356
|
-
/**
|
|
357
|
-
* A function that helps you fetch the next set of results for a [paginated list field](https://www.apollographql.com/docs/react/pagination/core-api/).
|
|
358
|
-
*/
|
|
359
387
|
fetchMore({ query, variables, context, errorPolicy, updateQuery, }) {
|
|
360
388
|
invariant(
|
|
361
389
|
this.options.fetchPolicy !== "cache-only",
|
|
362
|
-
|
|
390
|
+
78,
|
|
363
391
|
getOperationName(this.query, "(anonymous)")
|
|
364
392
|
);
|
|
365
393
|
const combinedOptions = {
|
|
@@ -393,7 +421,7 @@ export class ObservableQuery {
|
|
|
393
421
|
let wasUpdated = false;
|
|
394
422
|
const isCached = this.options.fetchPolicy !== "no-cache";
|
|
395
423
|
if (!isCached) {
|
|
396
|
-
invariant(updateQuery,
|
|
424
|
+
invariant(updateQuery, 79);
|
|
397
425
|
}
|
|
398
426
|
const { finalize, pushNotification } = this.pushOperation(NetworkStatus.fetchMore);
|
|
399
427
|
pushNotification({
|
|
@@ -525,7 +553,7 @@ export class ObservableQuery {
|
|
|
525
553
|
onError(error);
|
|
526
554
|
}
|
|
527
555
|
else {
|
|
528
|
-
__DEV__ && invariant.error(
|
|
556
|
+
__DEV__ && invariant.error(80, error);
|
|
529
557
|
}
|
|
530
558
|
return;
|
|
531
559
|
}
|
|
@@ -560,14 +588,12 @@ export class ObservableQuery {
|
|
|
560
588
|
* `setVariables` in order to to be properly notified of results even when
|
|
561
589
|
* they come from the cache.
|
|
562
590
|
*
|
|
563
|
-
* Note:
|
|
564
|
-
*
|
|
565
|
-
*
|
|
566
|
-
* Note: the promise will return the old results immediately if the variables
|
|
567
|
-
* have not changed.
|
|
591
|
+
* Note: `setVariables()` guarantees that a value will be emitted from the
|
|
592
|
+
* observable, even if the result is deeply equal to the previous value.
|
|
568
593
|
*
|
|
569
|
-
* Note: the promise will
|
|
570
|
-
*
|
|
594
|
+
* Note: the promise will resolve with the last emitted result
|
|
595
|
+
* when either the variables match the current variables or there
|
|
596
|
+
* are no subscribers to the query.
|
|
571
597
|
*
|
|
572
598
|
* @param variables - The new set of variables. If there are missing variables,
|
|
573
599
|
* the previous values of those variables will be used.
|
|
@@ -771,7 +797,7 @@ export class ObservableQuery {
|
|
|
771
797
|
if (!this.didWarnCacheOnlyPolling &&
|
|
772
798
|
pollInterval &&
|
|
773
799
|
fetchPolicy === "cache-only") {
|
|
774
|
-
__DEV__ && invariant.warn(
|
|
800
|
+
__DEV__ && invariant.warn(81, getOperationName(this.query, "(anonymous)"));
|
|
775
801
|
this.didWarnCacheOnlyPolling = true;
|
|
776
802
|
}
|
|
777
803
|
}
|
|
@@ -823,6 +849,9 @@ export class ObservableQuery {
|
|
|
823
849
|
/**
|
|
824
850
|
* Reevaluate the query, optionally against new options. New options will be
|
|
825
851
|
* merged with the current options when given.
|
|
852
|
+
*
|
|
853
|
+
* Note: `variables` can be reset back to their defaults (typically empty) by calling `reobserve` with
|
|
854
|
+
* `variables: undefined`.
|
|
826
855
|
*/
|
|
827
856
|
reobserve(newOptions) {
|
|
828
857
|
return this._reobserve(newOptions);
|
|
@@ -1129,8 +1158,9 @@ export class ObservableQuery {
|
|
|
1129
1158
|
/**
|
|
1130
1159
|
* @internal
|
|
1131
1160
|
* Called from `clearStore`.
|
|
1132
|
-
*
|
|
1133
|
-
*
|
|
1161
|
+
*
|
|
1162
|
+
* - resets the query to its initial state
|
|
1163
|
+
* - cancels all active operations and their subscriptions
|
|
1134
1164
|
*
|
|
1135
1165
|
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
1136
1166
|
*/
|
|
@@ -1263,7 +1293,7 @@ export class ObservableQuery {
|
|
|
1263
1293
|
}
|
|
1264
1294
|
export function logMissingFieldErrors(missing) {
|
|
1265
1295
|
if (__DEV__ && missing) {
|
|
1266
|
-
__DEV__ && invariant.debug(
|
|
1296
|
+
__DEV__ && invariant.debug(82, missing);
|
|
1267
1297
|
}
|
|
1268
1298
|
}
|
|
1269
1299
|
function isEqualQuery(a, b) {
|