@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
package/core/ApolloClient.js
CHANGED
|
@@ -2,8 +2,9 @@ import { OperationTypeNode } from "graphql";
|
|
|
2
2
|
import { map } from "rxjs";
|
|
3
3
|
import { NotImplementedHandler } from "@apollo/client/incremental";
|
|
4
4
|
import { execute } from "@apollo/client/link";
|
|
5
|
+
import { DocumentTransform } from "@apollo/client/utilities";
|
|
5
6
|
import { __DEV__ } from "@apollo/client/utilities/environment";
|
|
6
|
-
import { checkDocument, compact, getApolloClientMemoryInternals, mergeOptions, } from "@apollo/client/utilities/internal";
|
|
7
|
+
import { checkDocument, compact, getApolloClientMemoryInternals, mergeOptions, removeMaskedFragmentSpreads, } from "@apollo/client/utilities/internal";
|
|
7
8
|
import { invariant } from "@apollo/client/utilities/invariant";
|
|
8
9
|
import { version } from "../version.js";
|
|
9
10
|
import { QueryManager } from "./QueryManager.js";
|
|
@@ -46,23 +47,24 @@ export class ApolloClient {
|
|
|
46
47
|
* Constructs an instance of `ApolloClient`.
|
|
47
48
|
*
|
|
48
49
|
* @example
|
|
50
|
+
*
|
|
49
51
|
* ```js
|
|
50
|
-
* import { ApolloClient, InMemoryCache } from
|
|
52
|
+
* import { ApolloClient, InMemoryCache } from "@apollo/client";
|
|
51
53
|
*
|
|
52
54
|
* const cache = new InMemoryCache();
|
|
53
55
|
*
|
|
54
56
|
* const client = new ApolloClient({
|
|
55
57
|
* // Provide required constructor fields
|
|
56
58
|
* cache: cache,
|
|
57
|
-
* uri:
|
|
59
|
+
* uri: "http://localhost:4000/",
|
|
58
60
|
*
|
|
59
61
|
* // Provide some optional constructor fields
|
|
60
|
-
* name:
|
|
61
|
-
* version:
|
|
62
|
+
* name: "react-web-client",
|
|
63
|
+
* version: "1.3",
|
|
62
64
|
* queryDeduplication: false,
|
|
63
65
|
* defaultOptions: {
|
|
64
66
|
* watchQuery: {
|
|
65
|
-
* fetchPolicy:
|
|
67
|
+
* fetchPolicy: "cache-and-network",
|
|
66
68
|
* },
|
|
67
69
|
* },
|
|
68
70
|
* });
|
|
@@ -70,8 +72,8 @@ export class ApolloClient {
|
|
|
70
72
|
*/
|
|
71
73
|
constructor(options) {
|
|
72
74
|
if (__DEV__) {
|
|
73
|
-
invariant(options.cache,
|
|
74
|
-
invariant(options.link,
|
|
75
|
+
invariant(options.cache, 65);
|
|
76
|
+
invariant(options.link, 66);
|
|
75
77
|
}
|
|
76
78
|
const { cache, documentTransform, ssrMode = false, ssrForceFetchDelay = 0, queryDeduplication = true, defaultOptions, defaultContext, assumeImmutableResults = cache.assumeImmutableResults, localState, devtools, dataMasking, link, incrementalHandler = new NotImplementedHandler(), } = options;
|
|
77
79
|
this.link = link;
|
|
@@ -182,6 +184,12 @@ export class ApolloClient {
|
|
|
182
184
|
/**
|
|
183
185
|
* Call this method to terminate any active client processes, making it safe
|
|
184
186
|
* to dispose of this `ApolloClient` instance.
|
|
187
|
+
*
|
|
188
|
+
* This method performs aggressive cleanup to prevent memory leaks:
|
|
189
|
+
*
|
|
190
|
+
* - Unsubscribes all active `ObservableQuery` instances by emitting a `completed` event
|
|
191
|
+
* - Rejects all currently running queries with "QueryManager stopped while query was in flight"
|
|
192
|
+
* - Removes all queryRefs from the suspense cache
|
|
185
193
|
*/
|
|
186
194
|
stop() {
|
|
187
195
|
this.queryManager.stop();
|
|
@@ -196,11 +204,11 @@ export class ApolloClient {
|
|
|
196
204
|
*
|
|
197
205
|
* For example, suppose you call watchQuery on a GraphQL query that fetches a person's
|
|
198
206
|
* first and last name and this person has a particular object identifier, provided by
|
|
199
|
-
*
|
|
207
|
+
* `cache.identify`. Later, a different query fetches that same person's
|
|
200
208
|
* first and last name and the first name has now changed. Then, any observers associated
|
|
201
209
|
* with the results of the first query will be updated with a new result object.
|
|
202
210
|
*
|
|
203
|
-
* Note that if the cache does not change, the subscriber will
|
|
211
|
+
* Note that if the cache does not change, the subscriber will _not_ be notified.
|
|
204
212
|
*
|
|
205
213
|
* See [here](https://medium.com/apollo-stack/the-concepts-of-graphql-bc68bd819be3#.3mb0cbcmc) for
|
|
206
214
|
* a description of store reactivity.
|
|
@@ -225,13 +233,13 @@ export class ApolloClient {
|
|
|
225
233
|
options = mergeOptions(this.defaultOptions.query, options);
|
|
226
234
|
}
|
|
227
235
|
if (__DEV__) {
|
|
228
|
-
invariant(options.fetchPolicy !== "cache-and-network",
|
|
229
|
-
invariant(options.fetchPolicy !== "standby",
|
|
230
|
-
invariant(options.query,
|
|
231
|
-
invariant(options.query.kind === "Document",
|
|
232
|
-
invariant(!options.returnPartialData,
|
|
233
|
-
invariant(!options.pollInterval,
|
|
234
|
-
invariant(!options.notifyOnNetworkStatusChange,
|
|
236
|
+
invariant(options.fetchPolicy !== "cache-and-network", 67);
|
|
237
|
+
invariant(options.fetchPolicy !== "standby", 68);
|
|
238
|
+
invariant(options.query, 69);
|
|
239
|
+
invariant(options.query.kind === "Document", 70);
|
|
240
|
+
invariant(!options.returnPartialData, 71);
|
|
241
|
+
invariant(!options.pollInterval, 72);
|
|
242
|
+
invariant(!options.notifyOnNetworkStatusChange, 73);
|
|
235
243
|
}
|
|
236
244
|
return this.queryManager.query(options);
|
|
237
245
|
}
|
|
@@ -249,9 +257,9 @@ export class ApolloClient {
|
|
|
249
257
|
errorPolicy: "none",
|
|
250
258
|
}, this.defaultOptions.mutate), options);
|
|
251
259
|
if (__DEV__) {
|
|
252
|
-
invariant(optionsWithDefaults.mutation,
|
|
260
|
+
invariant(optionsWithDefaults.mutation, 74);
|
|
253
261
|
invariant(optionsWithDefaults.fetchPolicy === "network-only" ||
|
|
254
|
-
optionsWithDefaults.fetchPolicy === "no-cache",
|
|
262
|
+
optionsWithDefaults.fetchPolicy === "no-cache", 75);
|
|
255
263
|
}
|
|
256
264
|
checkDocument(optionsWithDefaults.mutation, OperationTypeNode.MUTATION);
|
|
257
265
|
return this.queryManager.mutate(optionsWithDefaults);
|
|
@@ -274,17 +282,8 @@ export class ApolloClient {
|
|
|
274
282
|
})));
|
|
275
283
|
return Object.assign(mapped, { restart: observable.restart });
|
|
276
284
|
}
|
|
277
|
-
/**
|
|
278
|
-
* Tries to read some data from the store in the shape of the provided
|
|
279
|
-
* GraphQL query without making a network request. This method will start at
|
|
280
|
-
* the root query. To start at a specific id returned by `dataIdFromObject`
|
|
281
|
-
* use `readFragment`.
|
|
282
|
-
*
|
|
283
|
-
* @param optimistic - Set to `true` to allow `readQuery` to return
|
|
284
|
-
* optimistic results. Is `false` by default.
|
|
285
|
-
*/
|
|
286
285
|
readQuery(options, optimistic = false) {
|
|
287
|
-
return this.cache.readQuery(options, optimistic);
|
|
286
|
+
return this.cache.readQuery({ ...options, query: this.transform(options.query) }, optimistic);
|
|
288
287
|
}
|
|
289
288
|
/**
|
|
290
289
|
* Watches the cache store of the fragment according to the options specified
|
|
@@ -303,32 +302,37 @@ export class ApolloClient {
|
|
|
303
302
|
* to optimistic updates.
|
|
304
303
|
*/
|
|
305
304
|
watchFragment(options) {
|
|
306
|
-
|
|
305
|
+
const dataMasking = this.queryManager.dataMasking;
|
|
306
|
+
return this.cache
|
|
307
|
+
.watchFragment({
|
|
307
308
|
...options,
|
|
308
|
-
|
|
309
|
-
})
|
|
309
|
+
fragment: this.transform(options.fragment, dataMasking),
|
|
310
|
+
})
|
|
311
|
+
.pipe(map((result) => {
|
|
312
|
+
// The transform will remove fragment spreads from the fragment
|
|
313
|
+
// document when dataMasking is enabled. The `maskFragment` function
|
|
314
|
+
// remains to apply warnings to fragments marked as
|
|
315
|
+
// `@unmask(mode: "migrate")`. Since these warnings are only applied
|
|
316
|
+
// in dev, we can skip the masking algorithm entirely for production.
|
|
317
|
+
if (__DEV__) {
|
|
318
|
+
if (dataMasking) {
|
|
319
|
+
const data = this.queryManager.maskFragment({
|
|
320
|
+
...options,
|
|
321
|
+
data: result.data,
|
|
322
|
+
});
|
|
323
|
+
return { ...result, data };
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
return result;
|
|
327
|
+
}));
|
|
310
328
|
}
|
|
311
|
-
/**
|
|
312
|
-
* Tries to read some data from the store in the shape of the provided
|
|
313
|
-
* GraphQL fragment without making a network request. This method will read a
|
|
314
|
-
* GraphQL fragment from any arbitrary id that is currently cached, unlike
|
|
315
|
-
* `readQuery` which will only read from the root query.
|
|
316
|
-
*
|
|
317
|
-
* You must pass in a GraphQL document with a single fragment or a document
|
|
318
|
-
* with multiple fragments that represent what you are reading. If you pass
|
|
319
|
-
* in a document with multiple fragments then you must also specify a
|
|
320
|
-
* `fragmentName`.
|
|
321
|
-
*
|
|
322
|
-
* @param optimistic - Set to `true` to allow `readFragment` to return
|
|
323
|
-
* optimistic results. Is `false` by default.
|
|
324
|
-
*/
|
|
325
329
|
readFragment(options, optimistic = false) {
|
|
326
|
-
return this.cache.readFragment(options, optimistic);
|
|
330
|
+
return this.cache.readFragment({ ...options, fragment: this.transform(options.fragment) }, optimistic);
|
|
327
331
|
}
|
|
328
332
|
/**
|
|
329
333
|
* Writes some data in the shape of the provided GraphQL query directly to
|
|
330
334
|
* the store. This method will start at the root query. To start at a
|
|
331
|
-
* specific id returned by `
|
|
335
|
+
* specific id returned by `cache.identify` then use `writeFragment`.
|
|
332
336
|
*/
|
|
333
337
|
writeQuery(options) {
|
|
334
338
|
const ref = this.cache.writeQuery(options);
|
|
@@ -371,7 +375,7 @@ export class ApolloClient {
|
|
|
371
375
|
* user session, and you now want to make sure that any references to data you
|
|
372
376
|
* might have fetched while the user session was active is gone.
|
|
373
377
|
*
|
|
374
|
-
* It is important to remember that `resetStore()`
|
|
378
|
+
* It is important to remember that `resetStore()` _will_ refetch any active
|
|
375
379
|
* queries. This means that any components that might be mounted will execute
|
|
376
380
|
* their queries again using your network interface. If you do not want to
|
|
377
381
|
* re-execute any queries then you should make sure to stop watching any
|
|
@@ -423,13 +427,15 @@ export class ApolloClient {
|
|
|
423
427
|
*
|
|
424
428
|
* `reFetchObservableQueries()` is useful if you want to bring the client back to proper state in case of a network outage
|
|
425
429
|
*
|
|
426
|
-
* It is important to remember that `reFetchObservableQueries()`
|
|
430
|
+
* It is important to remember that `reFetchObservableQueries()` _will_ refetch any active
|
|
427
431
|
* queries. This means that any components that might be mounted will execute
|
|
428
432
|
* their queries again using your network interface. If you do not want to
|
|
429
433
|
* re-execute any queries then you should make sure to stop watching any
|
|
430
434
|
* active queries.
|
|
431
435
|
* Takes optional parameter `includeStandby` which will include queries in standby-mode when refetching.
|
|
432
436
|
*
|
|
437
|
+
* Note: `cache-only` queries are not refetched by this function.
|
|
438
|
+
*
|
|
433
439
|
* @deprecated Please use `refetchObservableQueries` instead.
|
|
434
440
|
*/
|
|
435
441
|
reFetchObservableQueries;
|
|
@@ -438,12 +444,14 @@ export class ApolloClient {
|
|
|
438
444
|
*
|
|
439
445
|
* `refetchObservableQueries()` is useful if you want to bring the client back to proper state in case of a network outage
|
|
440
446
|
*
|
|
441
|
-
* It is important to remember that `refetchObservableQueries()`
|
|
447
|
+
* It is important to remember that `refetchObservableQueries()` _will_ refetch any active
|
|
442
448
|
* queries. This means that any components that might be mounted will execute
|
|
443
449
|
* their queries again using your network interface. If you do not want to
|
|
444
450
|
* re-execute any queries then you should make sure to stop watching any
|
|
445
451
|
* active queries.
|
|
446
452
|
* Takes optional parameter `includeStandby` which will include queries in standby-mode when refetching.
|
|
453
|
+
*
|
|
454
|
+
* Note: `cache-only` queries are not refetched by this function.
|
|
447
455
|
*/
|
|
448
456
|
refetchObservableQueries(includeStandby) {
|
|
449
457
|
return this.queryManager.refetchObservableQueries(includeStandby);
|
|
@@ -453,7 +461,7 @@ export class ApolloClient {
|
|
|
453
461
|
*
|
|
454
462
|
* `refetchQueries()` is useful for use cases to imperatively refresh a selection of queries.
|
|
455
463
|
*
|
|
456
|
-
* It is important to remember that `refetchQueries()`
|
|
464
|
+
* It is important to remember that `refetchQueries()` _will_ refetch specified active
|
|
457
465
|
* queries. This means that any components that might be mounted will execute
|
|
458
466
|
* their queries again using your network interface. If you do not want to
|
|
459
467
|
* re-execute any queries then you should make sure to stop watching any
|
|
@@ -476,13 +484,12 @@ export class ApolloClient {
|
|
|
476
484
|
// result.queries and result.results instead, you shouldn't have to worry
|
|
477
485
|
// about preventing uncaught rejections for the Promise.all result.
|
|
478
486
|
result.catch((error) => {
|
|
479
|
-
__DEV__ && invariant.debug(
|
|
487
|
+
__DEV__ && invariant.debug(76, error);
|
|
480
488
|
});
|
|
481
489
|
return result;
|
|
482
490
|
}
|
|
483
491
|
/**
|
|
484
|
-
* Get all currently active `ObservableQuery` objects, in a `
|
|
485
|
-
* query ID strings.
|
|
492
|
+
* Get all currently active `ObservableQuery` objects, in a `Set`.
|
|
486
493
|
*
|
|
487
494
|
* An "active" query is one that has observers and a `fetchPolicy` other than
|
|
488
495
|
* "standby" or "cache-only".
|
|
@@ -490,6 +497,9 @@ export class ApolloClient {
|
|
|
490
497
|
* You can include all `ObservableQuery` objects (including the inactive ones)
|
|
491
498
|
* by passing "all" instead of "active", or you can include just a subset of
|
|
492
499
|
* active queries by passing an array of query names or DocumentNode objects.
|
|
500
|
+
*
|
|
501
|
+
* Note: This method only returns queries that have active subscribers. Queries
|
|
502
|
+
* without subscribers are not tracked by the client.
|
|
493
503
|
*/
|
|
494
504
|
getObservableQueries(include = "active") {
|
|
495
505
|
return this.queryManager.getObservableQueries(include);
|
|
@@ -519,6 +529,13 @@ export class ApolloClient {
|
|
|
519
529
|
get defaultContext() {
|
|
520
530
|
return this.queryManager.defaultContext;
|
|
521
531
|
}
|
|
532
|
+
maskedFragmentTransform = new DocumentTransform(removeMaskedFragmentSpreads);
|
|
533
|
+
transform(document, dataMasking = false) {
|
|
534
|
+
const transformed = this.queryManager.transform(document);
|
|
535
|
+
return dataMasking ?
|
|
536
|
+
this.maskedFragmentTransform.transformDocument(transformed)
|
|
537
|
+
: transformed;
|
|
538
|
+
}
|
|
522
539
|
/**
|
|
523
540
|
* @experimental
|
|
524
541
|
* This is not a stable API - it is used in development builds to expose
|
|
@@ -527,75 +544,78 @@ export class ApolloClient {
|
|
|
527
544
|
* For more details, see [Memory Management](https://www.apollographql.com/docs/react/caching/memory-management/#measuring-cache-usage)
|
|
528
545
|
*
|
|
529
546
|
* @example
|
|
547
|
+
*
|
|
530
548
|
* ```ts
|
|
531
|
-
* console.log(client.getMemoryInternals())
|
|
549
|
+
* console.log(client.getMemoryInternals());
|
|
532
550
|
* ```
|
|
551
|
+
*
|
|
533
552
|
* Logs output in the following JSON format:
|
|
534
553
|
* @example
|
|
554
|
+
*
|
|
535
555
|
* ```json
|
|
536
|
-
*{
|
|
537
|
-
*
|
|
538
|
-
*
|
|
539
|
-
*
|
|
540
|
-
*
|
|
541
|
-
*
|
|
542
|
-
*
|
|
543
|
-
*
|
|
544
|
-
*
|
|
545
|
-
*
|
|
546
|
-
*
|
|
547
|
-
*
|
|
548
|
-
*
|
|
549
|
-
*
|
|
550
|
-
*
|
|
551
|
-
*
|
|
552
|
-
*
|
|
553
|
-
*
|
|
554
|
-
*
|
|
555
|
-
*
|
|
556
|
-
*
|
|
557
|
-
*
|
|
558
|
-
*
|
|
559
|
-
*
|
|
560
|
-
*
|
|
561
|
-
*
|
|
562
|
-
*
|
|
563
|
-
*
|
|
564
|
-
*
|
|
565
|
-
*
|
|
566
|
-
*
|
|
567
|
-
*
|
|
568
|
-
*
|
|
569
|
-
*
|
|
570
|
-
*
|
|
571
|
-
*
|
|
572
|
-
*
|
|
573
|
-
*
|
|
574
|
-
*
|
|
575
|
-
*
|
|
576
|
-
*
|
|
577
|
-
*
|
|
578
|
-
*
|
|
579
|
-
*
|
|
580
|
-
*
|
|
581
|
-
*
|
|
582
|
-
*
|
|
583
|
-
*
|
|
584
|
-
*
|
|
585
|
-
*
|
|
586
|
-
*
|
|
587
|
-
*
|
|
588
|
-
*
|
|
589
|
-
*
|
|
590
|
-
*
|
|
591
|
-
*
|
|
592
|
-
*
|
|
593
|
-
*
|
|
594
|
-
*
|
|
595
|
-
*
|
|
596
|
-
*
|
|
556
|
+
* {
|
|
557
|
+
* "limits": {
|
|
558
|
+
* "canonicalStringify": 1000,
|
|
559
|
+
* "print": 2000,
|
|
560
|
+
* "documentTransform.cache": 2000,
|
|
561
|
+
* "queryManager.getDocumentInfo": 2000,
|
|
562
|
+
* "PersistedQueryLink.persistedQueryHashes": 2000,
|
|
563
|
+
* "fragmentRegistry.transform": 2000,
|
|
564
|
+
* "fragmentRegistry.lookup": 1000,
|
|
565
|
+
* "fragmentRegistry.findFragmentSpreads": 4000,
|
|
566
|
+
* "cache.fragmentQueryDocuments": 1000,
|
|
567
|
+
* "removeTypenameFromVariables.getVariableDefinitions": 2000,
|
|
568
|
+
* "inMemoryCache.maybeBroadcastWatch": 5000,
|
|
569
|
+
* "inMemoryCache.executeSelectionSet": 10000,
|
|
570
|
+
* "inMemoryCache.executeSubSelectedArray": 5000
|
|
571
|
+
* },
|
|
572
|
+
* "sizes": {
|
|
573
|
+
* "canonicalStringify": 4,
|
|
574
|
+
* "print": 14,
|
|
575
|
+
* "addTypenameDocumentTransform": [
|
|
576
|
+
* {
|
|
577
|
+
* "cache": 14
|
|
578
|
+
* }
|
|
579
|
+
* ],
|
|
580
|
+
* "queryManager": {
|
|
581
|
+
* "getDocumentInfo": 14,
|
|
582
|
+
* "documentTransforms": [
|
|
583
|
+
* {
|
|
584
|
+
* "cache": 14
|
|
585
|
+
* },
|
|
586
|
+
* {
|
|
587
|
+
* "cache": 14
|
|
588
|
+
* }
|
|
589
|
+
* ]
|
|
590
|
+
* },
|
|
591
|
+
* "fragmentRegistry": {
|
|
592
|
+
* "findFragmentSpreads": 34,
|
|
593
|
+
* "lookup": 20,
|
|
594
|
+
* "transform": 14
|
|
595
|
+
* },
|
|
596
|
+
* "cache": {
|
|
597
|
+
* "fragmentQueryDocuments": 22
|
|
598
|
+
* },
|
|
599
|
+
* "inMemoryCache": {
|
|
600
|
+
* "executeSelectionSet": 4345,
|
|
601
|
+
* "executeSubSelectedArray": 1206,
|
|
602
|
+
* "maybeBroadcastWatch": 32
|
|
603
|
+
* },
|
|
604
|
+
* "links": [
|
|
605
|
+
* {
|
|
606
|
+
* "PersistedQueryLink": {
|
|
607
|
+
* "persistedQueryHashes": 14
|
|
608
|
+
* }
|
|
609
|
+
* },
|
|
610
|
+
* {
|
|
611
|
+
* "removeTypenameFromVariables": {
|
|
612
|
+
* "getVariableDefinitions": 14
|
|
613
|
+
* }
|
|
614
|
+
* }
|
|
615
|
+
* ]
|
|
616
|
+
* }
|
|
597
617
|
* }
|
|
598
|
-
|
|
618
|
+
* ```
|
|
599
619
|
*/
|
|
600
620
|
getMemoryInternals;
|
|
601
621
|
}
|