@apollo/client 4.0.12-beta.0 → 4.0.13
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 +10 -194
- package/__cjs/cache/core/cache.cjs +48 -169
- package/__cjs/cache/core/cache.cjs.map +1 -1
- package/__cjs/cache/core/cache.d.cts +25 -94
- package/__cjs/cache/core/types/Cache.d.cts +17 -49
- package/__cjs/cache/index.cjs.map +1 -1
- package/__cjs/cache/index.d.cts +1 -1
- package/__cjs/cache/inmemory/entityStore.cjs +4 -6
- package/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
- package/__cjs/cache/inmemory/fragmentRegistry.cjs +5 -0
- package/__cjs/cache/inmemory/fragmentRegistry.cjs.map +1 -1
- package/__cjs/cache/inmemory/helpers.d.cts +1 -1
- package/__cjs/cache/inmemory/inMemoryCache.cjs +1 -15
- package/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
- package/__cjs/cache/inmemory/inMemoryCache.d.cts +0 -1
- package/__cjs/cache/inmemory/key-extractor.cjs +1 -1
- package/__cjs/cache/inmemory/key-extractor.cjs.map +1 -1
- package/__cjs/cache/inmemory/policies.cjs +17 -56
- package/__cjs/cache/inmemory/policies.cjs.map +1 -1
- package/__cjs/cache/inmemory/policies.d.cts +6 -30
- package/__cjs/cache/inmemory/readFromStore.cjs +3 -3
- package/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
- package/__cjs/cache/inmemory/types.d.cts +0 -2
- package/__cjs/cache/inmemory/writeToStore.cjs +10 -24
- package/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
- package/__cjs/cache/inmemory/writeToStore.d.cts +1 -2
- package/__cjs/core/ApolloClient.cjs +49 -31
- package/__cjs/core/ApolloClient.cjs.map +1 -1
- package/__cjs/core/ApolloClient.d.cts +17 -143
- package/__cjs/core/ObservableQuery.cjs +128 -162
- package/__cjs/core/ObservableQuery.cjs.map +1 -1
- package/__cjs/core/ObservableQuery.d.cts +0 -1
- package/__cjs/core/QueryInfo.cjs +1 -9
- package/__cjs/core/QueryInfo.cjs.map +1 -1
- package/__cjs/core/QueryInfo.d.cts +1 -2
- package/__cjs/core/QueryManager.cjs +24 -46
- package/__cjs/core/QueryManager.cjs.map +1 -1
- package/__cjs/core/QueryManager.d.cts +2 -18
- package/__cjs/incremental/handlers/defer20220824.cjs +19 -44
- package/__cjs/incremental/handlers/defer20220824.cjs.map +1 -1
- package/__cjs/incremental/handlers/defer20220824.d.cts +7 -15
- package/__cjs/incremental/handlers/notImplemented.cjs +1 -1
- package/__cjs/incremental/handlers/notImplemented.cjs.map +1 -1
- package/__cjs/incremental/index.cjs +1 -3
- package/__cjs/incremental/index.cjs.map +1 -1
- package/__cjs/incremental/index.d.cts +0 -1
- package/__cjs/incremental/types.d.cts +0 -9
- package/__cjs/invariantErrorCodes.cjs +62 -78
- package/__cjs/link/client-awareness/ClientAwarenessLink.cjs +1 -13
- package/__cjs/link/client-awareness/ClientAwarenessLink.cjs.map +1 -1
- package/__cjs/link/client-awareness/ClientAwarenessLink.d.cts +1 -1
- package/__cjs/link/core/ApolloLink.cjs +3 -3
- package/__cjs/link/http/checkFetcher.cjs +1 -1
- package/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
- package/__cjs/link/persisted-queries/index.cjs +2 -2
- package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs +51 -50
- package/__cjs/link/remove-typename/removeTypenameFromVariables.cjs.map +1 -1
- package/__cjs/link/remove-typename/removeTypenameFromVariables.d.cts +3 -0
- package/__cjs/link/ws/index.cjs +1 -1
- package/__cjs/local-state/LocalState.cjs +14 -28
- package/__cjs/local-state/LocalState.cjs.map +1 -1
- package/__cjs/local-state/LocalState.d.cts +2 -3
- package/__cjs/masking/types.d.cts +1 -2
- package/__cjs/react/hooks/internal/useDeepMemo.cjs +0 -2
- package/__cjs/react/hooks/internal/useDeepMemo.cjs.map +1 -1
- package/__cjs/react/hooks/useApolloClient.cjs +1 -1
- package/__cjs/react/hooks/useApolloClient.cjs.map +1 -1
- package/__cjs/react/hooks/useApolloClient.d.cts +1 -1
- package/__cjs/react/hooks/useBackgroundQuery.cjs +3 -1
- package/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useFragment.cjs +87 -38
- package/__cjs/react/hooks/useFragment.cjs.map +1 -1
- package/__cjs/react/hooks/useFragment.d.cts +6 -65
- package/__cjs/react/hooks/useLazyQuery.cjs +0 -2
- package/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useMutation.cjs +1 -7
- package/__cjs/react/hooks/useMutation.cjs.map +1 -1
- package/__cjs/react/hooks/useMutation.d.cts +1 -13
- package/__cjs/react/hooks/useQuery.cjs +4 -1
- package/__cjs/react/hooks/useQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useQuery.d.cts +1 -1
- package/__cjs/react/hooks/useQueryRefHandlers.cjs +3 -1
- package/__cjs/react/hooks/useQueryRefHandlers.cjs.map +1 -1
- package/__cjs/react/hooks/useReadQuery.cjs +3 -1
- package/__cjs/react/hooks/useReadQuery.cjs.map +1 -1
- package/__cjs/react/hooks/useSubscription.cjs +1 -1
- package/__cjs/react/hooks/useSubscription.cjs.map +1 -1
- package/__cjs/react/hooks/useSuspenseFragment.cjs +16 -16
- package/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
- package/__cjs/react/hooks/useSuspenseFragment.d.cts +7 -33
- package/__cjs/react/hooks/useSuspenseQuery.cjs +4 -4
- package/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
- package/__cjs/react/internal/cache/FragmentReference.cjs +22 -3
- package/__cjs/react/internal/cache/FragmentReference.cjs.map +1 -1
- package/__cjs/react/internal/cache/FragmentReference.d.cts +4 -2
- package/__cjs/react/internal/cache/QueryReference.cjs +0 -16
- package/__cjs/react/internal/cache/QueryReference.cjs.map +1 -1
- package/__cjs/react/internal/cache/QueryReference.d.cts +0 -5
- package/__cjs/react/internal/cache/SuspenseCache.cjs.map +1 -1
- package/__cjs/react/internal/cache/SuspenseCache.d.cts +1 -1
- package/__cjs/react/internal/cache/types.d.cts +2 -2
- package/__cjs/react/query-preloader/createQueryPreloader.cjs +1 -41
- package/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
- package/__cjs/react/ssr/useSSRQuery.cjs +0 -1
- package/__cjs/react/ssr/useSSRQuery.cjs.map +1 -1
- package/__cjs/utilities/DeepPartial.cjs.map +1 -1
- package/__cjs/utilities/DeepPartial.d.cts +1 -1
- package/__cjs/utilities/internal/DeepMerger.cjs +4 -36
- package/__cjs/utilities/internal/DeepMerger.cjs.map +1 -1
- package/__cjs/utilities/internal/DeepMerger.d.cts +4 -20
- package/__cjs/utilities/internal/bindCacheKey.cjs +21 -0
- package/__cjs/utilities/internal/bindCacheKey.cjs.map +1 -0
- package/__cjs/utilities/internal/bindCacheKey.d.cts +15 -0
- package/__cjs/utilities/internal/compact.cjs +1 -1
- package/__cjs/utilities/internal/compact.cjs.map +1 -1
- package/__cjs/utilities/internal/constants.cjs +1 -17
- package/__cjs/utilities/internal/constants.cjs.map +1 -1
- package/__cjs/utilities/internal/constants.d.cts +0 -16
- package/__cjs/utilities/internal/getStoreKeyName.cjs +0 -1
- package/__cjs/utilities/internal/getStoreKeyName.cjs.map +1 -1
- package/__cjs/utilities/internal/index.cjs +4 -8
- package/__cjs/utilities/internal/index.cjs.map +1 -1
- package/__cjs/utilities/internal/index.d.cts +2 -4
- package/__cjs/utilities/internal/memoize.cjs +2 -2
- package/__cjs/utilities/internal/memoize.cjs.map +1 -1
- package/__cjs/utilities/internal/memoize.d.cts +1 -2
- package/__cjs/version.cjs +1 -1
- package/__cjs/version.cjs.map +1 -1
- package/cache/core/cache.d.ts +25 -94
- package/cache/core/cache.js +51 -172
- package/cache/core/cache.js.map +1 -1
- package/cache/core/types/Cache.d.ts +17 -49
- package/cache/core/types/Cache.js.map +1 -1
- package/cache/index.d.ts +1 -1
- package/cache/index.js.map +1 -1
- package/cache/inmemory/entityStore.js +4 -6
- package/cache/inmemory/entityStore.js.map +1 -1
- package/cache/inmemory/fragmentRegistry.js +6 -1
- package/cache/inmemory/fragmentRegistry.js.map +1 -1
- package/cache/inmemory/helpers.d.ts +1 -1
- package/cache/inmemory/inMemoryCache.d.ts +0 -1
- package/cache/inmemory/inMemoryCache.js +1 -15
- package/cache/inmemory/inMemoryCache.js.map +1 -1
- package/cache/inmemory/key-extractor.js +1 -1
- package/cache/inmemory/key-extractor.js.map +1 -1
- package/cache/inmemory/policies.d.ts +6 -30
- package/cache/inmemory/policies.js +7 -45
- package/cache/inmemory/policies.js.map +1 -1
- package/cache/inmemory/readFromStore.js +3 -3
- package/cache/inmemory/readFromStore.js.map +1 -1
- package/cache/inmemory/types.d.ts +0 -2
- package/cache/inmemory/types.js.map +1 -1
- package/cache/inmemory/writeToStore.d.ts +1 -2
- package/cache/inmemory/writeToStore.js +12 -26
- package/cache/inmemory/writeToStore.js.map +1 -1
- package/core/ApolloClient.d.ts +17 -143
- package/core/ApolloClient.js +50 -32
- package/core/ApolloClient.js.map +1 -1
- package/core/ObservableQuery.d.ts +0 -1
- package/core/ObservableQuery.js +131 -165
- package/core/ObservableQuery.js.map +1 -1
- package/core/QueryInfo.d.ts +1 -2
- package/core/QueryInfo.js +2 -10
- package/core/QueryInfo.js.map +1 -1
- package/core/QueryManager.d.ts +2 -18
- package/core/QueryManager.js +25 -47
- package/core/QueryManager.js.map +1 -1
- package/incremental/handlers/defer20220824.d.ts +7 -15
- package/incremental/handlers/defer20220824.js +19 -44
- package/incremental/handlers/defer20220824.js.map +1 -1
- package/incremental/handlers/notImplemented.js +1 -1
- package/incremental/handlers/notImplemented.js.map +1 -1
- package/incremental/index.d.ts +0 -1
- package/incremental/index.js +2 -3
- package/incremental/index.js.map +1 -1
- package/incremental/types.d.ts +0 -9
- package/incremental/types.js.map +1 -1
- package/invariantErrorCodes.js +62 -78
- package/link/client-awareness/ClientAwarenessLink.d.ts +1 -1
- package/link/client-awareness/ClientAwarenessLink.js +1 -13
- package/link/client-awareness/ClientAwarenessLink.js.map +1 -1
- package/link/core/ApolloLink.js +3 -3
- package/link/http/checkFetcher.js +1 -1
- package/link/http/parseAndCheckHttpResponse.js +1 -1
- package/link/persisted-queries/index.js +2 -2
- package/link/remove-typename/removeTypenameFromVariables.d.ts +3 -0
- package/link/remove-typename/removeTypenameFromVariables.js +51 -50
- package/link/remove-typename/removeTypenameFromVariables.js.map +1 -1
- package/link/ws/index.js +1 -1
- package/local-state/LocalState.d.ts +2 -3
- package/local-state/LocalState.js +14 -28
- package/local-state/LocalState.js.map +1 -1
- package/masking/types.d.ts +1 -2
- package/masking/types.js.map +1 -1
- package/package.json +1 -15
- package/react/hooks/internal/useDeepMemo.js +0 -2
- package/react/hooks/internal/useDeepMemo.js.map +1 -1
- package/react/hooks/useApolloClient.d.ts +1 -1
- package/react/hooks/useApolloClient.js +1 -1
- package/react/hooks/useApolloClient.js.map +1 -1
- package/react/hooks/useBackgroundQuery.js +3 -1
- package/react/hooks/useBackgroundQuery.js.map +1 -1
- package/react/hooks/useFragment.d.ts +6 -65
- package/react/hooks/useFragment.js +87 -38
- package/react/hooks/useFragment.js.map +1 -1
- package/react/hooks/useLazyQuery.js +0 -2
- package/react/hooks/useLazyQuery.js.map +1 -1
- package/react/hooks/useMutation.d.ts +1 -13
- package/react/hooks/useMutation.js +1 -7
- package/react/hooks/useMutation.js.map +1 -1
- package/react/hooks/useQuery.js +4 -1
- package/react/hooks/useQuery.js.map +1 -1
- package/react/hooks/useQueryRefHandlers.js +3 -1
- package/react/hooks/useQueryRefHandlers.js.map +1 -1
- package/react/hooks/useReadQuery.js +3 -1
- package/react/hooks/useReadQuery.js.map +1 -1
- package/react/hooks/useSubscription.js +1 -1
- package/react/hooks/useSubscription.js.map +1 -1
- package/react/hooks/useSuspenseFragment.d.ts +7 -33
- package/react/hooks/useSuspenseFragment.js +17 -17
- package/react/hooks/useSuspenseFragment.js.map +1 -1
- package/react/hooks/useSuspenseQuery.js +4 -4
- package/react/hooks/useSuspenseQuery.js.map +1 -1
- package/react/hooks-compiled/internal/useDeepMemo.js +0 -2
- package/react/hooks-compiled/internal/useDeepMemo.js.map +1 -1
- package/react/hooks-compiled/internal/useSuspenseHookCacheKey.js +2 -0
- package/react/hooks-compiled/internal/useSuspenseHookCacheKey.js.map +1 -1
- package/react/hooks-compiled/useApolloClient.d.ts +1 -1
- package/react/hooks-compiled/useApolloClient.js +1 -1
- package/react/hooks-compiled/useApolloClient.js.map +1 -1
- package/react/hooks-compiled/useBackgroundQuery.js +3 -1
- package/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
- package/react/hooks-compiled/useFragment.d.ts +6 -65
- package/react/hooks-compiled/useFragment.js +88 -110
- package/react/hooks-compiled/useFragment.js.map +1 -1
- package/react/hooks-compiled/useLazyQuery.js +0 -2
- package/react/hooks-compiled/useLazyQuery.js.map +1 -1
- package/react/hooks-compiled/useLoadableQuery.js +75 -69
- package/react/hooks-compiled/useMutation.d.ts +1 -13
- package/react/hooks-compiled/useMutation.js +13 -5
- package/react/hooks-compiled/useMutation.js.map +1 -1
- package/react/hooks-compiled/useQuery.js +56 -44
- package/react/hooks-compiled/useQuery.js.map +1 -1
- package/react/hooks-compiled/useQueryRefHandlers.js +5 -1
- package/react/hooks-compiled/useQueryRefHandlers.js.map +1 -1
- package/react/hooks-compiled/useReadQuery.js +14 -77
- package/react/hooks-compiled/useReadQuery.js.map +1 -1
- package/react/hooks-compiled/useSubscription.js +93 -237
- package/react/hooks-compiled/useSubscription.js.map +1 -1
- package/react/hooks-compiled/useSuspenseFragment.d.ts +7 -33
- package/react/hooks-compiled/useSuspenseFragment.js +17 -17
- package/react/hooks-compiled/useSuspenseFragment.js.map +1 -1
- package/react/hooks-compiled/useSuspenseQuery.js +8 -4
- package/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
- package/react/index.compiled.d.ts +1 -1
- package/react/index.compiled.js +1 -1
- package/react/index.compiled.js.map +1 -1
- package/react/internal/cache/FragmentReference.d.ts +4 -2
- package/react/internal/cache/FragmentReference.js +22 -3
- package/react/internal/cache/FragmentReference.js.map +1 -1
- package/react/internal/cache/QueryReference.d.ts +0 -5
- package/react/internal/cache/QueryReference.js +0 -16
- package/react/internal/cache/QueryReference.js.map +1 -1
- package/react/internal/cache/SuspenseCache.d.ts +1 -1
- package/react/internal/cache/SuspenseCache.js.map +1 -1
- package/react/internal/cache/types.d.ts +2 -2
- package/react/internal/cache/types.js.map +1 -1
- package/react/query-preloader/createQueryPreloader.js +1 -41
- package/react/query-preloader/createQueryPreloader.js.map +1 -1
- package/react/ssr/useSSRQuery.js +0 -1
- package/react/ssr/useSSRQuery.js.map +1 -1
- package/utilities/DeepPartial.d.ts +1 -1
- package/utilities/DeepPartial.js.map +1 -1
- package/utilities/internal/DeepMerger.d.ts +4 -20
- package/utilities/internal/DeepMerger.js +4 -36
- package/utilities/internal/DeepMerger.js.map +1 -1
- package/utilities/internal/bindCacheKey.d.ts +15 -0
- package/utilities/internal/bindCacheKey.js +18 -0
- package/utilities/internal/bindCacheKey.js.map +1 -0
- package/utilities/internal/compact.js +1 -1
- package/utilities/internal/compact.js.map +1 -1
- package/utilities/internal/constants.d.ts +0 -16
- package/utilities/internal/constants.js +0 -16
- package/utilities/internal/constants.js.map +1 -1
- package/utilities/internal/getStoreKeyName.js +0 -1
- package/utilities/internal/getStoreKeyName.js.map +1 -1
- package/utilities/internal/index.d.ts +2 -4
- package/utilities/internal/index.js +2 -3
- package/utilities/internal/index.js.map +1 -1
- package/utilities/internal/memoize.d.ts +1 -2
- package/utilities/internal/memoize.js +2 -2
- package/utilities/internal/memoize.js.map +1 -1
- package/version.js +1 -1
- package/version.js.map +1 -1
- package/__cjs/incremental/handlers/graphql17Alpha9.cjs +0 -222
- package/__cjs/incremental/handlers/graphql17Alpha9.cjs.map +0 -1
- package/__cjs/incremental/handlers/graphql17Alpha9.d.cts +0 -98
- package/__cjs/utilities/internal/combineLatestBatched.cjs +0 -71
- package/__cjs/utilities/internal/combineLatestBatched.cjs.map +0 -1
- package/__cjs/utilities/internal/combineLatestBatched.d.cts +0 -14
- package/__cjs/utilities/internal/mapObservableFragment.cjs +0 -27
- package/__cjs/utilities/internal/mapObservableFragment.cjs.map +0 -1
- package/__cjs/utilities/internal/mapObservableFragment.d.cts +0 -3
- package/__cjs/utilities/internal/ponyfills/FinalizationRegistry.cjs +0 -61
- package/__cjs/utilities/internal/ponyfills/FinalizationRegistry.cjs.map +0 -1
- package/__cjs/utilities/internal/ponyfills/FinalizationRegistry.d.cts +0 -11
- package/__cjs/utilities/internal/ponyfills/index.cjs +0 -6
- package/__cjs/utilities/internal/ponyfills/index.cjs.map +0 -1
- package/__cjs/utilities/internal/ponyfills/index.d.cts +0 -3
- package/__cjs/utilities/internal/ponyfills/index.react-native.cjs +0 -6
- package/__cjs/utilities/internal/ponyfills/index.react-native.cjs.map +0 -1
- package/__cjs/utilities/internal/ponyfills/index.react-native.d.cts +0 -2
- package/__cjs/utilities/internal/types/ExtensionsWithStreamDetails.cjs +0 -3
- package/__cjs/utilities/internal/types/ExtensionsWithStreamDetails.cjs.map +0 -1
- package/__cjs/utilities/internal/types/ExtensionsWithStreamDetails.d.cts +0 -24
- package/incremental/handlers/graphql17Alpha9.d.ts +0 -98
- package/incremental/handlers/graphql17Alpha9.js +0 -218
- package/incremental/handlers/graphql17Alpha9.js.map +0 -1
- package/legacyEntryPoints/utilities/internal/ponyfills/index.d.ts +0 -1
- package/legacyEntryPoints/utilities/internal/ponyfills/index.js +0 -1
- package/legacyEntryPoints/utilities/internal/ponyfills/ponyfills.cjs +0 -1
- package/legacyEntryPoints/utilities/internal/ponyfills/ponyfills.d.cts +0 -1
- package/utilities/internal/combineLatestBatched.d.ts +0 -14
- package/utilities/internal/combineLatestBatched.js +0 -68
- package/utilities/internal/combineLatestBatched.js.map +0 -1
- package/utilities/internal/mapObservableFragment.d.ts +0 -3
- package/utilities/internal/mapObservableFragment.js +0 -24
- package/utilities/internal/mapObservableFragment.js.map +0 -1
- package/utilities/internal/ponyfills/FinalizationRegistry.d.ts +0 -11
- package/utilities/internal/ponyfills/FinalizationRegistry.js +0 -57
- package/utilities/internal/ponyfills/FinalizationRegistry.js.map +0 -1
- package/utilities/internal/ponyfills/index.d.ts +0 -3
- package/utilities/internal/ponyfills/index.js +0 -3
- package/utilities/internal/ponyfills/index.js.map +0 -1
- package/utilities/internal/ponyfills/index.react-native.d.ts +0 -2
- package/utilities/internal/ponyfills/index.react-native.js +0 -2
- package/utilities/internal/ponyfills/index.react-native.js.map +0 -1
- package/utilities/internal/types/ExtensionsWithStreamDetails.d.ts +0 -24
- package/utilities/internal/types/ExtensionsWithStreamDetails.js +0 -2
- package/utilities/internal/types/ExtensionsWithStreamDetails.js.map +0 -1
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
import { Trie } from "@wry/trie";
|
|
2
|
-
import { DeepMerger, streamDetailsSymbol, } from "@apollo/client/utilities/internal";
|
|
3
|
-
import { hasDirectives, isNonEmptyArray, } from "@apollo/client/utilities/internal";
|
|
4
|
-
import { invariant } from "@apollo/client/utilities/invariant";
|
|
5
|
-
class IncrementalRequest {
|
|
6
|
-
hasNext = true;
|
|
7
|
-
data = {};
|
|
8
|
-
errors = [];
|
|
9
|
-
extensions = {};
|
|
10
|
-
pending = new Map();
|
|
11
|
-
streamDetails = new Trie(false, () => ({ current: { isFirstChunk: true, isLastChunk: false } }));
|
|
12
|
-
// `streamPositions` maps `pending.id` to the index that should be set by the
|
|
13
|
-
// next `incremental` stream chunk to ensure the streamed array item is placed
|
|
14
|
-
// at the correct point in the data array. `this.data` contains cached
|
|
15
|
-
// references with the full array so we can't rely on the array length in
|
|
16
|
-
// `this.data` to determine where to place item. This also ensures that items
|
|
17
|
-
// updated by the cache between a streamed chunk aren't overwritten by merges
|
|
18
|
-
// of future stream items from already merged stream items.
|
|
19
|
-
streamPositions = {};
|
|
20
|
-
handle(cacheData = this.data, chunk) {
|
|
21
|
-
this.hasNext = chunk.hasNext;
|
|
22
|
-
this.data = cacheData;
|
|
23
|
-
if (chunk.pending) {
|
|
24
|
-
for (const pending of chunk.pending) {
|
|
25
|
-
this.pending.set(pending.id, pending);
|
|
26
|
-
if ("data" in chunk) {
|
|
27
|
-
const dataAtPath = pending.path.reduce((data, key) => data[key], chunk.data);
|
|
28
|
-
if (Array.isArray(dataAtPath)) {
|
|
29
|
-
this.streamPositions[pending.id] = dataAtPath.length;
|
|
30
|
-
this.streamDetails.lookupArray(pending.path).current = {
|
|
31
|
-
isFirstChunk: true,
|
|
32
|
-
isLastChunk: false,
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
if (hasIncrementalChunks(chunk)) {
|
|
39
|
-
for (const incremental of chunk.incremental) {
|
|
40
|
-
const pending = this.pending.get(incremental.id);
|
|
41
|
-
invariant(pending, 66);
|
|
42
|
-
const path = pending.path.concat(incremental.subPath ?? []);
|
|
43
|
-
let data;
|
|
44
|
-
if ("items" in incremental) {
|
|
45
|
-
const items = incremental.items;
|
|
46
|
-
const parent = [];
|
|
47
|
-
// This creates a sparse array with values set at the indices streamed
|
|
48
|
-
// from the server. DeepMerger uses Object.keys and will correctly
|
|
49
|
-
// place the values in this array in the correct place
|
|
50
|
-
for (let i = 0; i < items.length; i++) {
|
|
51
|
-
parent[i + this.streamPositions[pending.id]] = items[i];
|
|
52
|
-
}
|
|
53
|
-
this.streamPositions[pending.id] += items.length;
|
|
54
|
-
this.streamDetails.lookupArray(path).current = {
|
|
55
|
-
isFirstChunk: false,
|
|
56
|
-
isLastChunk: false,
|
|
57
|
-
};
|
|
58
|
-
data = parent;
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
data = incremental.data;
|
|
62
|
-
// Check if any pending streams added arrays from deferred data so
|
|
63
|
-
// that we can update streamPositions with the initial length of the
|
|
64
|
-
// array to ensure future streamed items are inserted at the right
|
|
65
|
-
// starting index.
|
|
66
|
-
this.pending.forEach((pendingItem) => {
|
|
67
|
-
if (!(pendingItem.id in this.streamPositions)) {
|
|
68
|
-
// Check if this incremental data contains array data for the pending path
|
|
69
|
-
// The pending path is absolute, but incremental data is relative to the defer
|
|
70
|
-
// E.g., pending.path = ["nestedObject"], pendingItem.path = ["nestedObject", "nestedFriendList"]
|
|
71
|
-
// incremental.data = { scalarField: "...", nestedFriendList: [...] }
|
|
72
|
-
// So we need the path from pending.path onwards
|
|
73
|
-
const relativePath = pendingItem.path.slice(pending.path.length);
|
|
74
|
-
const dataAtPath = relativePath.reduce((data, key) => data?.[key], incremental.data);
|
|
75
|
-
if (Array.isArray(dataAtPath)) {
|
|
76
|
-
this.streamPositions[pendingItem.id] = dataAtPath.length;
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
this.merge({
|
|
82
|
-
data,
|
|
83
|
-
extensions: incremental.extensions,
|
|
84
|
-
errors: incremental.errors,
|
|
85
|
-
}, path);
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
this.merge(chunk);
|
|
90
|
-
}
|
|
91
|
-
if ("completed" in chunk && chunk.completed) {
|
|
92
|
-
for (const completed of chunk.completed) {
|
|
93
|
-
const { path } = this.pending.get(completed.id);
|
|
94
|
-
const streamPosition = this.streamPositions[completed.id];
|
|
95
|
-
// Truncate any stream arrays in case the chunk only contains `hasNext`
|
|
96
|
-
// and `completed`.
|
|
97
|
-
if (streamPosition !== undefined) {
|
|
98
|
-
const dataAtPath = path.reduce((data, key) => data?.[key], this.data);
|
|
99
|
-
this.merge({ data: dataAtPath.slice(0, streamPosition) }, path);
|
|
100
|
-
}
|
|
101
|
-
// peek instead of lookup to avoid creating an entry for non-array values
|
|
102
|
-
const details = this.streamDetails.peekArray(path);
|
|
103
|
-
if (details) {
|
|
104
|
-
details.current = {
|
|
105
|
-
isFirstChunk: false,
|
|
106
|
-
isLastChunk: true,
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
this.pending.delete(completed.id);
|
|
110
|
-
if (completed.errors) {
|
|
111
|
-
this.errors.push(...completed.errors);
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
const result = { data: this.data };
|
|
116
|
-
if (isNonEmptyArray(this.errors)) {
|
|
117
|
-
result.errors = this.errors;
|
|
118
|
-
}
|
|
119
|
-
if (Object.keys(this.extensions).length > 0) {
|
|
120
|
-
result.extensions = this.extensions;
|
|
121
|
-
}
|
|
122
|
-
if (this.streamDetails["strong"]) {
|
|
123
|
-
result.extensions = {
|
|
124
|
-
...result.extensions,
|
|
125
|
-
// Create a new object so we can check for === in QueryInfo to trigger a
|
|
126
|
-
// final cache write when emitting a `hasNext: false` by itself.
|
|
127
|
-
[streamDetailsSymbol]: { current: this.streamDetails },
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
return result;
|
|
131
|
-
}
|
|
132
|
-
merge(normalized, atPath) {
|
|
133
|
-
if (normalized.data !== undefined) {
|
|
134
|
-
this.data = new DeepMerger({ arrayMerge: "truncate" }).merge(this.data, normalized.data, { atPath });
|
|
135
|
-
}
|
|
136
|
-
if (normalized.errors) {
|
|
137
|
-
this.errors.push(...normalized.errors);
|
|
138
|
-
}
|
|
139
|
-
Object.assign(this.extensions, normalized.extensions);
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* Provides handling for the incremental delivery specification implemented by
|
|
144
|
-
* graphql.js version `17.0.0-alpha.9`.
|
|
145
|
-
*/
|
|
146
|
-
export class GraphQL17Alpha9Handler {
|
|
147
|
-
/**
|
|
148
|
-
* @internal
|
|
149
|
-
*
|
|
150
|
-
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
151
|
-
*/
|
|
152
|
-
isIncrementalResult(result) {
|
|
153
|
-
return "hasNext" in result;
|
|
154
|
-
}
|
|
155
|
-
/**
|
|
156
|
-
* @internal
|
|
157
|
-
*
|
|
158
|
-
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
159
|
-
*/
|
|
160
|
-
prepareRequest(request) {
|
|
161
|
-
if (hasDirectives(["defer", "stream"], request.query)) {
|
|
162
|
-
const context = request.context ?? {};
|
|
163
|
-
const http = (context.http ??= {});
|
|
164
|
-
// https://specs.apollo.dev/incremental/v0.2/
|
|
165
|
-
http.accept = [
|
|
166
|
-
"multipart/mixed;incrementalSpec=v0.2",
|
|
167
|
-
...(http.accept || []),
|
|
168
|
-
];
|
|
169
|
-
request.context = context;
|
|
170
|
-
}
|
|
171
|
-
return request;
|
|
172
|
-
}
|
|
173
|
-
/**
|
|
174
|
-
* @internal
|
|
175
|
-
*
|
|
176
|
-
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
177
|
-
*/
|
|
178
|
-
extractErrors(result) {
|
|
179
|
-
const acc = [];
|
|
180
|
-
const push = ({ errors, }) => {
|
|
181
|
-
if (errors) {
|
|
182
|
-
acc.push(...errors);
|
|
183
|
-
}
|
|
184
|
-
};
|
|
185
|
-
if (this.isIncrementalResult(result)) {
|
|
186
|
-
if ("errors" in result) {
|
|
187
|
-
push(result);
|
|
188
|
-
}
|
|
189
|
-
if (hasIncrementalChunks(result)) {
|
|
190
|
-
result.incremental.forEach(push);
|
|
191
|
-
}
|
|
192
|
-
if (hasCompletedChunks(result)) {
|
|
193
|
-
result.completed.forEach(push);
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
else if ("errors" in result) {
|
|
197
|
-
push(result);
|
|
198
|
-
}
|
|
199
|
-
if (acc.length) {
|
|
200
|
-
return acc;
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
/**
|
|
204
|
-
* @internal
|
|
205
|
-
*
|
|
206
|
-
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
207
|
-
*/
|
|
208
|
-
startRequest(_) {
|
|
209
|
-
return new IncrementalRequest();
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
function hasIncrementalChunks(result) {
|
|
213
|
-
return isNonEmptyArray(result.incremental);
|
|
214
|
-
}
|
|
215
|
-
function hasCompletedChunks(result) {
|
|
216
|
-
return isNonEmptyArray(result.completed);
|
|
217
|
-
}
|
|
218
|
-
//# sourceMappingURL=graphql17Alpha9.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"graphql17Alpha9.js","sources":["../../../src/incremental/handlers/graphql17Alpha9.ts"],"sourcesContent":["import { Trie } from \"@wry/trie\";\nimport type {\n DocumentNode,\n FormattedExecutionResult,\n GraphQLFormattedError,\n} from \"graphql\";\n\nimport type { ApolloLink } from \"@apollo/client/link\";\nimport type { DeepPartial, HKT } from \"@apollo/client/utilities\";\nimport type { ExtensionsWithStreamDetails } from \"@apollo/client/utilities/internal\";\nimport {\n DeepMerger,\n streamDetailsSymbol,\n} from \"@apollo/client/utilities/internal\";\nimport {\n hasDirectives,\n isNonEmptyArray,\n} from \"@apollo/client/utilities/internal\";\nimport { invariant } from \"@apollo/client/utilities/invariant\";\n\nimport type { Incremental } from \"../types.js\";\n\nexport declare namespace GraphQL17Alpha9Handler {\n interface GraphQL17Alpha9Result extends HKT {\n arg1: unknown; // TData\n arg2: unknown; // TExtensions\n return: GraphQL17Alpha9Handler.Chunk<Record<string, unknown>>;\n }\n\n export interface TypeOverrides {\n AdditionalApolloLinkResultTypes: GraphQL17Alpha9Result;\n }\n\n export type InitialResult<TData = Record<string, unknown>> = {\n data: TData;\n errors?: ReadonlyArray<GraphQLFormattedError>;\n pending: ReadonlyArray<PendingResult>;\n hasNext: boolean;\n extensions?: Record<string, unknown>;\n };\n\n export type SubsequentResult<TData = unknown> = {\n hasNext: boolean;\n pending?: ReadonlyArray<PendingResult>;\n incremental?: ReadonlyArray<IncrementalResult<TData>>;\n completed?: ReadonlyArray<CompletedResult>;\n extensions?: Record<string, unknown>;\n };\n\n export interface PendingResult {\n id: string;\n path: Incremental.Path;\n label?: string;\n }\n\n export interface CompletedResult {\n id: string;\n errors?: ReadonlyArray<GraphQLFormattedError>;\n }\n\n export interface IncrementalDeferResult<TData = Record<string, unknown>> {\n errors?: ReadonlyArray<GraphQLFormattedError>;\n data: TData;\n id: string;\n subPath?: Incremental.Path;\n extensions?: Record<string, unknown>;\n }\n\n export interface IncrementalStreamResult<TData = ReadonlyArray<unknown>> {\n errors?: ReadonlyArray<GraphQLFormattedError>;\n items: TData;\n id: string;\n subPath?: Incremental.Path;\n extensions?: Record<string, unknown>;\n }\n\n export type IncrementalResult<TData = unknown> =\n | IncrementalDeferResult<TData>\n | IncrementalStreamResult<TData>;\n\n export type Chunk<TData> = InitialResult<TData> | SubsequentResult<TData>;\n}\n\nclass IncrementalRequest<TData>\n implements\n Incremental.IncrementalRequest<GraphQL17Alpha9Handler.Chunk<TData>, TData>\n{\n hasNext = true;\n\n private data: any = {};\n private errors: GraphQLFormattedError[] = [];\n private extensions: Record<string, any> = {};\n private pending = new Map<string, GraphQL17Alpha9Handler.PendingResult>();\n private streamDetails = new Trie<{ current: Incremental.StreamFieldInfo }>(\n false,\n () => ({ current: { isFirstChunk: true, isLastChunk: false } })\n );\n // `streamPositions` maps `pending.id` to the index that should be set by the\n // next `incremental` stream chunk to ensure the streamed array item is placed\n // at the correct point in the data array. `this.data` contains cached\n // references with the full array so we can't rely on the array length in\n // `this.data` to determine where to place item. This also ensures that items\n // updated by the cache between a streamed chunk aren't overwritten by merges\n // of future stream items from already merged stream items.\n private streamPositions: Record<string, number> = {};\n\n handle(\n cacheData: TData | DeepPartial<TData> | null | undefined = this.data,\n chunk: GraphQL17Alpha9Handler.Chunk<TData>\n ): FormattedExecutionResult<TData> {\n this.hasNext = chunk.hasNext;\n this.data = cacheData;\n\n if (chunk.pending) {\n for (const pending of chunk.pending) {\n this.pending.set(pending.id, pending);\n\n if (\"data\" in chunk) {\n const dataAtPath = pending.path.reduce(\n (data, key) => (data as any)[key],\n chunk.data\n );\n\n if (Array.isArray(dataAtPath)) {\n this.streamPositions[pending.id] = dataAtPath.length;\n this.streamDetails.lookupArray(pending.path as any[]).current = {\n isFirstChunk: true,\n isLastChunk: false,\n };\n }\n }\n }\n }\n\n if (hasIncrementalChunks(chunk)) {\n for (const incremental of chunk.incremental) {\n const pending = this.pending.get(incremental.id);\n\n invariant(\n pending,\n \"Could not find pending chunk for incremental value. Please file an issue for the Apollo Client team to investigate.\"\n );\n\n const path = pending.path.concat(incremental.subPath ?? []);\n\n let data: any;\n if (\"items\" in incremental) {\n const items = incremental.items as any[];\n const parent: any[] = [];\n\n // This creates a sparse array with values set at the indices streamed\n // from the server. DeepMerger uses Object.keys and will correctly\n // place the values in this array in the correct place\n for (let i = 0; i < items.length; i++) {\n parent[i + this.streamPositions[pending.id]] = items[i];\n }\n\n this.streamPositions[pending.id] += items.length;\n this.streamDetails.lookupArray(path).current = {\n isFirstChunk: false,\n isLastChunk: false,\n };\n data = parent;\n } else {\n data = incremental.data;\n\n // Check if any pending streams added arrays from deferred data so\n // that we can update streamPositions with the initial length of the\n // array to ensure future streamed items are inserted at the right\n // starting index.\n this.pending.forEach((pendingItem) => {\n if (!(pendingItem.id in this.streamPositions)) {\n // Check if this incremental data contains array data for the pending path\n // The pending path is absolute, but incremental data is relative to the defer\n // E.g., pending.path = [\"nestedObject\"], pendingItem.path = [\"nestedObject\", \"nestedFriendList\"]\n // incremental.data = { scalarField: \"...\", nestedFriendList: [...] }\n // So we need the path from pending.path onwards\n const relativePath = pendingItem.path.slice(pending.path.length);\n const dataAtPath = relativePath.reduce(\n (data, key) => (data as any)?.[key],\n incremental.data\n );\n\n if (Array.isArray(dataAtPath)) {\n this.streamPositions[pendingItem.id] = dataAtPath.length;\n }\n }\n });\n }\n\n this.merge(\n {\n data,\n extensions: incremental.extensions,\n errors: incremental.errors,\n },\n path\n );\n }\n } else {\n this.merge(chunk);\n }\n\n if (\"completed\" in chunk && chunk.completed) {\n for (const completed of chunk.completed) {\n const { path } = this.pending.get(completed.id)!;\n const streamPosition = this.streamPositions[completed.id];\n\n // Truncate any stream arrays in case the chunk only contains `hasNext`\n // and `completed`.\n if (streamPosition !== undefined) {\n const dataAtPath = path.reduce(\n (data, key) => (data as any)?.[key],\n this.data\n );\n\n this.merge({ data: dataAtPath.slice(0, streamPosition) }, path);\n }\n\n // peek instead of lookup to avoid creating an entry for non-array values\n const details = this.streamDetails.peekArray(path as any[]);\n if (details) {\n details.current = {\n isFirstChunk: false,\n isLastChunk: true,\n };\n }\n this.pending.delete(completed.id);\n\n if (completed.errors) {\n this.errors.push(...completed.errors);\n }\n }\n }\n\n const result: FormattedExecutionResult<TData> = { data: this.data };\n\n if (isNonEmptyArray(this.errors)) {\n result.errors = this.errors;\n }\n\n if (Object.keys(this.extensions).length > 0) {\n result.extensions = this.extensions;\n }\n\n if (this.streamDetails[\"strong\"]) {\n result.extensions = {\n ...result.extensions,\n // Create a new object so we can check for === in QueryInfo to trigger a\n // final cache write when emitting a `hasNext: false` by itself.\n [streamDetailsSymbol]: { current: this.streamDetails },\n } satisfies ExtensionsWithStreamDetails;\n }\n\n return result;\n }\n\n private merge(\n normalized: FormattedExecutionResult<TData>,\n atPath?: DeepMerger.MergeOptions[\"atPath\"]\n ) {\n if (normalized.data !== undefined) {\n this.data = new DeepMerger({ arrayMerge: \"truncate\" }).merge(\n this.data,\n normalized.data,\n { atPath }\n );\n }\n\n if (normalized.errors) {\n this.errors.push(...normalized.errors);\n }\n\n Object.assign(this.extensions, normalized.extensions);\n }\n}\n\n/**\n * Provides handling for the incremental delivery specification implemented by\n * graphql.js version `17.0.0-alpha.9`.\n */\nexport class GraphQL17Alpha9Handler\n implements Incremental.Handler<GraphQL17Alpha9Handler.Chunk<any>>\n{\n /** @internal */\n isIncrementalResult(\n result: ApolloLink.Result<any>\n ): result is\n | GraphQL17Alpha9Handler.InitialResult\n | GraphQL17Alpha9Handler.SubsequentResult {\n return \"hasNext\" in result;\n }\n\n /** @internal */\n prepareRequest(request: ApolloLink.Request): ApolloLink.Request {\n if (hasDirectives([\"defer\", \"stream\"], request.query)) {\n const context = request.context ?? {};\n const http = (context.http ??= {});\n // https://specs.apollo.dev/incremental/v0.2/\n http.accept = [\n \"multipart/mixed;incrementalSpec=v0.2\",\n ...(http.accept || []),\n ];\n\n request.context = context;\n }\n\n return request;\n }\n\n /** @internal */\n extractErrors(result: ApolloLink.Result<any>) {\n const acc: GraphQLFormattedError[] = [];\n const push = ({\n errors,\n }: {\n errors?: ReadonlyArray<GraphQLFormattedError>;\n }) => {\n if (errors) {\n acc.push(...errors);\n }\n };\n\n if (this.isIncrementalResult(result)) {\n if (\"errors\" in result) {\n push(result);\n }\n if (hasIncrementalChunks(result)) {\n result.incremental.forEach(push);\n }\n if (hasCompletedChunks(result)) {\n result.completed.forEach(push);\n }\n } else if (\"errors\" in result) {\n push(result);\n }\n\n if (acc.length) {\n return acc;\n }\n }\n\n /** @internal */\n startRequest<TData>(_: { query: DocumentNode }) {\n return new IncrementalRequest<TData>();\n }\n}\n\nfunction hasIncrementalChunks(\n result: Record<string, any>\n): result is Required<GraphQL17Alpha9Handler.SubsequentResult> {\n return isNonEmptyArray(result.incremental);\n}\n\nfunction hasCompletedChunks(\n result: Record<string, any>\n): result is Required<GraphQL17Alpha9Handler.SubsequentResult> {\n return isNonEmptyArray(result.completed);\n}\n"],"names":[],"mappings":"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AA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA;IACE,CAAF,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CA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,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;4BACc,CAAd,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;4BACc,CAAd,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,EAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,EAAA;4BACc,CAAd,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;4BACc,CAAd,CAAA,CAAA,CAAA,EAAoB,CAApB,CAAA,CAAA,CAAA,CAAA,CAAA,CAA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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "@apollo/client/utilities/internal/ponyfills";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "@apollo/client/utilities/internal/ponyfills";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
module.exports = require("@apollo/client/utilities/internal/ponyfills");
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "@apollo/client/utilities/internal/ponyfills";
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Observable } from "rxjs";
|
|
2
|
-
/**
|
|
3
|
-
* Like `combineLatest` but with some differences:
|
|
4
|
-
*
|
|
5
|
-
* - It only works on arrays as an input
|
|
6
|
-
* - Batches updates to each array index that contains a referentially equal
|
|
7
|
-
* observable
|
|
8
|
-
* - Doesn't allow for custom scheduler
|
|
9
|
-
* - Expects array of constructed observables instead of `Array<ObservableInput>`
|
|
10
|
-
*/
|
|
11
|
-
export declare function combineLatestBatched<T>(observables: Array<Observable<T> & {
|
|
12
|
-
dirty?: boolean;
|
|
13
|
-
}>): Observable<T[]>;
|
|
14
|
-
//# sourceMappingURL=combineLatestBatched.d.ts.map
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { EMPTY, Observable } from "rxjs";
|
|
2
|
-
/**
|
|
3
|
-
* Like `combineLatest` but with some differences:
|
|
4
|
-
*
|
|
5
|
-
* - It only works on arrays as an input
|
|
6
|
-
* - Batches updates to each array index that contains a referentially equal
|
|
7
|
-
* observable
|
|
8
|
-
* - Doesn't allow for custom scheduler
|
|
9
|
-
* - Expects array of constructed observables instead of `Array<ObservableInput>`
|
|
10
|
-
*/
|
|
11
|
-
export function combineLatestBatched(observables) {
|
|
12
|
-
if (observables.length === 0) {
|
|
13
|
-
return EMPTY;
|
|
14
|
-
}
|
|
15
|
-
return new Observable((observer) => {
|
|
16
|
-
const { length } = observables;
|
|
17
|
-
// Keeps track of current values for each observable
|
|
18
|
-
const values = new Array(length);
|
|
19
|
-
// Used to batch an update each item in the array that share an observable
|
|
20
|
-
// so that they can be emitted together.
|
|
21
|
-
const indexesByObservable = new Map();
|
|
22
|
-
observables.forEach((source, idx) => {
|
|
23
|
-
if (!indexesByObservable.has(source)) {
|
|
24
|
-
indexesByObservable.set(source, new Set());
|
|
25
|
-
}
|
|
26
|
-
indexesByObservable.get(source).add(idx);
|
|
27
|
-
});
|
|
28
|
-
// Track the number of active subscriptions so we know when to complete this
|
|
29
|
-
// observable
|
|
30
|
-
let active = indexesByObservable.size;
|
|
31
|
-
// Track how many observables are left to emit their first value
|
|
32
|
-
let remainingFirstValues = indexesByObservable.size;
|
|
33
|
-
let currentBatch;
|
|
34
|
-
// Subscribe to each unique observable instead of the raw source array of
|
|
35
|
-
// observables since we want at most 1-subscription per unique observable.
|
|
36
|
-
// This ensures an update can write to multiple indexes before emitting the
|
|
37
|
-
// result.
|
|
38
|
-
indexesByObservable.forEach((indexes, source) => {
|
|
39
|
-
let hasFirstValue = false;
|
|
40
|
-
const subscription = source.subscribe({
|
|
41
|
-
next: (value) => {
|
|
42
|
-
indexes.forEach((idx) => (values[idx] = value));
|
|
43
|
-
if (!hasFirstValue) {
|
|
44
|
-
hasFirstValue = true;
|
|
45
|
-
remainingFirstValues--;
|
|
46
|
-
}
|
|
47
|
-
if (!remainingFirstValues) {
|
|
48
|
-
currentBatch ||= new Set(observables.filter((obs) => obs.dirty));
|
|
49
|
-
currentBatch.delete(source);
|
|
50
|
-
if (!currentBatch.size) {
|
|
51
|
-
observer.next(values.slice());
|
|
52
|
-
currentBatch = undefined;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
complete: () => {
|
|
57
|
-
active--;
|
|
58
|
-
if (!active) {
|
|
59
|
-
observer.complete();
|
|
60
|
-
}
|
|
61
|
-
},
|
|
62
|
-
error: observer.error.bind(observer),
|
|
63
|
-
});
|
|
64
|
-
observer.add(subscription);
|
|
65
|
-
});
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=combineLatestBatched.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"combineLatestBatched.js","sourceRoot":"","sources":["../../../src/utilities/internal/combineLatestBatched.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAClC,WAAuD;IAEvD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,UAAU,CAAW,CAAC,QAAQ,EAAE,EAAE;QAC3C,MAAM,EAAE,MAAM,EAAE,GAAG,WAAW,CAAC;QAC/B,oDAAoD;QACpD,MAAM,MAAM,GAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;QACtC,0EAA0E;QAC1E,wCAAwC;QACxC,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA8B,CAAC;QAElE,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;YAClC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBACrC,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;YAC7C,CAAC;YAED,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,4EAA4E;QAC5E,aAAa;QACb,IAAI,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC;QACtC,gEAAgE;QAChE,IAAI,oBAAoB,GAAG,mBAAmB,CAAC,IAAI,CAAC;QAEpD,IAAI,YAA4C,CAAC;QAEjD,yEAAyE;QACzE,0EAA0E;QAC1E,2EAA2E;QAC3E,UAAU;QACV,mBAAmB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9C,IAAI,aAAa,GAAG,KAAK,CAAC;YAC1B,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC;gBACpC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;oBACd,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;oBAEhD,IAAI,CAAC,aAAa,EAAE,CAAC;wBACnB,aAAa,GAAG,IAAI,CAAC;wBACrB,oBAAoB,EAAE,CAAC;oBACzB,CAAC;oBAED,IAAI,CAAC,oBAAoB,EAAE,CAAC;wBAC1B,YAAY,KAAK,IAAI,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;wBACjE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBAC5B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;4BACvB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;4BAC9B,YAAY,GAAG,SAAS,CAAC;wBAC3B,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,QAAQ,EAAE,GAAG,EAAE;oBACb,MAAM,EAAE,CAAC;oBAET,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBACtB,CAAC;gBACH,CAAC;gBACD,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;aACrC,CAAC,CAAC;YAEH,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC","sourcesContent":["import { EMPTY, Observable } from \"rxjs\";\n\n/**\n * Like `combineLatest` but with some differences:\n *\n * - It only works on arrays as an input\n * - Batches updates to each array index that contains a referentially equal\n * observable\n * - Doesn't allow for custom scheduler\n * - Expects array of constructed observables instead of `Array<ObservableInput>`\n */\nexport function combineLatestBatched<T>(\n observables: Array<Observable<T> & { dirty?: boolean }>\n) {\n if (observables.length === 0) {\n return EMPTY;\n }\n\n return new Observable<Array<T>>((observer) => {\n const { length } = observables;\n // Keeps track of current values for each observable\n const values: T[] = new Array(length);\n // Used to batch an update each item in the array that share an observable\n // so that they can be emitted together.\n const indexesByObservable = new Map<Observable<T>, Set<number>>();\n\n observables.forEach((source, idx) => {\n if (!indexesByObservable.has(source)) {\n indexesByObservable.set(source, new Set());\n }\n\n indexesByObservable.get(source)!.add(idx);\n });\n\n // Track the number of active subscriptions so we know when to complete this\n // observable\n let active = indexesByObservable.size;\n // Track how many observables are left to emit their first value\n let remainingFirstValues = indexesByObservable.size;\n\n let currentBatch: Set<Observable<T>> | undefined;\n\n // Subscribe to each unique observable instead of the raw source array of\n // observables since we want at most 1-subscription per unique observable.\n // This ensures an update can write to multiple indexes before emitting the\n // result.\n indexesByObservable.forEach((indexes, source) => {\n let hasFirstValue = false;\n const subscription = source.subscribe({\n next: (value) => {\n indexes.forEach((idx) => (values[idx] = value));\n\n if (!hasFirstValue) {\n hasFirstValue = true;\n remainingFirstValues--;\n }\n\n if (!remainingFirstValues) {\n currentBatch ||= new Set(observables.filter((obs) => obs.dirty));\n currentBatch.delete(source);\n if (!currentBatch.size) {\n observer.next(values.slice());\n currentBatch = undefined;\n }\n }\n },\n complete: () => {\n active--;\n\n if (!active) {\n observer.complete();\n }\n },\n error: observer.error.bind(observer),\n });\n\n observer.add(subscription);\n });\n });\n}\n"]}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import type { ApolloCache } from "@apollo/client";
|
|
2
|
-
export declare const mapObservableFragmentMemoized: <From, To>(observable: ApolloCache.ObservableFragment<From>, _cacheKey: symbol, mapFn: (from: ApolloCache.WatchFragmentResult<From>) => ApolloCache.WatchFragmentResult<To>) => ApolloCache.ObservableFragment<To>;
|
|
3
|
-
//# sourceMappingURL=mapObservableFragment.d.ts.map
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { map, shareReplay } from "rxjs";
|
|
2
|
-
import { memoize } from "./memoize.js";
|
|
3
|
-
function mapObservableFragment(observable, mapFn) {
|
|
4
|
-
let currentResult;
|
|
5
|
-
let stableMappedResult;
|
|
6
|
-
function toMapped(result) {
|
|
7
|
-
if (result !== currentResult) {
|
|
8
|
-
currentResult = result;
|
|
9
|
-
stableMappedResult = mapFn(currentResult);
|
|
10
|
-
}
|
|
11
|
-
return stableMappedResult;
|
|
12
|
-
}
|
|
13
|
-
return Object.assign(observable.pipe(map(toMapped), shareReplay({ bufferSize: 1, refCount: true })), {
|
|
14
|
-
getCurrentResult: () => toMapped(observable.getCurrentResult()),
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
export const mapObservableFragmentMemoized = memoize(function mapObservableFragmentMemoized(observable,
|
|
18
|
-
/**
|
|
19
|
-
* used together with `observable` as memoization key, `mapFn` is explicitly not used as memoization key
|
|
20
|
-
*/
|
|
21
|
-
_cacheKey, mapFn) {
|
|
22
|
-
return mapObservableFragment(observable, mapFn);
|
|
23
|
-
}, { max: 1, makeCacheKey: (args) => args.slice(0, 2) });
|
|
24
|
-
//# sourceMappingURL=mapObservableFragment.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mapObservableFragment.js","sourceRoot":"","sources":["../../../src/utilities/internal/mapObservableFragment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAIxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,SAAS,qBAAqB,CAC5B,UAAgD,EAChD,KAEwC;IAExC,IAAI,aAAoD,CAAC;IACzD,IAAI,kBAAuD,CAAC;IAE5D,SAAS,QAAQ,CACf,MAA6C;QAE7C,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;YAC7B,aAAa,GAAG,MAAM,CAAC;YACvB,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAClB,UAAU,CAAC,IAAI,CACb,GAAG,CAAC,QAAQ,CAAC,EACb,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAC/C,EACD;QACE,gBAAgB,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;KAChE,CACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,6BAA6B,GAAG,OAAO,CAClD,SAAS,6BAA6B,CACpC,UAAgD;AAChD;;GAEG;AACH,SAAiB,EACjB,KAEwC;IAExC,OAAO,qBAAqB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;AAClD,CAAC,EACD,EAAE,GAAG,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CACrD,CAAC","sourcesContent":["import { map, shareReplay } from \"rxjs\";\n\nimport type { ApolloCache } from \"@apollo/client\";\n\nimport { memoize } from \"./memoize.js\";\n\nfunction mapObservableFragment<From, To>(\n observable: ApolloCache.ObservableFragment<From>,\n mapFn: (\n from: ApolloCache.WatchFragmentResult<From>\n ) => ApolloCache.WatchFragmentResult<To>\n): ApolloCache.ObservableFragment<To> {\n let currentResult: ApolloCache.WatchFragmentResult<From>;\n let stableMappedResult: ApolloCache.WatchFragmentResult<To>;\n\n function toMapped(\n result: ApolloCache.WatchFragmentResult<From>\n ): ApolloCache.WatchFragmentResult<To> {\n if (result !== currentResult) {\n currentResult = result;\n stableMappedResult = mapFn(currentResult);\n }\n return stableMappedResult;\n }\n\n return Object.assign(\n observable.pipe(\n map(toMapped),\n shareReplay({ bufferSize: 1, refCount: true })\n ),\n {\n getCurrentResult: () => toMapped(observable.getCurrentResult()),\n }\n );\n}\n\nexport const mapObservableFragmentMemoized = memoize(\n function mapObservableFragmentMemoized<From, To>(\n observable: ApolloCache.ObservableFragment<From>,\n /**\n * used together with `observable` as memoization key, `mapFn` is explicitly not used as memoization key\n */\n _cacheKey: symbol,\n mapFn: (\n from: ApolloCache.WatchFragmentResult<From>\n ) => ApolloCache.WatchFragmentResult<To>\n ): ApolloCache.ObservableFragment<To> {\n return mapObservableFragment(observable, mapFn);\n },\n { max: 1, makeCacheKey: (args) => args.slice(0, 2) }\n);\n"]}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @internal
|
|
3
|
-
*
|
|
4
|
-
* An approximation of `FinalizationRegistry` based on `WeakRef`.
|
|
5
|
-
* While there are registered values, checks every 500ms if any have been garbage collected.
|
|
6
|
-
* The polling interval is cleared once all registered entries have been removed.
|
|
7
|
-
*
|
|
8
|
-
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
9
|
-
*/
|
|
10
|
-
export declare const FinalizationRegistry: typeof globalThis.FinalizationRegistry;
|
|
11
|
-
//# sourceMappingURL=FinalizationRegistry.d.ts.map
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { invariant } from "@apollo/client/utilities/invariant";
|
|
2
|
-
/**
|
|
3
|
-
* @internal
|
|
4
|
-
*
|
|
5
|
-
* An approximation of `FinalizationRegistry` based on `WeakRef`.
|
|
6
|
-
* While there are registered values, checks every 500ms if any have been garbage collected.
|
|
7
|
-
* The polling interval is cleared once all registered entries have been removed.
|
|
8
|
-
*
|
|
9
|
-
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
10
|
-
*/
|
|
11
|
-
export const FinalizationRegistry = class FinalizationRegistry {
|
|
12
|
-
intervalLength = 500;
|
|
13
|
-
callback;
|
|
14
|
-
references = new Set();
|
|
15
|
-
unregisterTokens = new WeakMap();
|
|
16
|
-
interval = null;
|
|
17
|
-
constructor(callback) {
|
|
18
|
-
this.callback = callback;
|
|
19
|
-
this.handler = this.handler.bind(this);
|
|
20
|
-
}
|
|
21
|
-
handler() {
|
|
22
|
-
if (this.references.size === 0) {
|
|
23
|
-
clearInterval(this.interval);
|
|
24
|
-
this.interval = null;
|
|
25
|
-
return;
|
|
26
|
-
}
|
|
27
|
-
this.references.forEach((entry) => {
|
|
28
|
-
if (entry.targetRef.deref() === undefined) {
|
|
29
|
-
this.references.delete(entry);
|
|
30
|
-
// Spec deviation: Not catching errors here, might get necessary if used in more places.
|
|
31
|
-
this.callback(entry.value);
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
register(target, value, unregisterToken) {
|
|
36
|
-
const entry = { targetRef: new WeakRef(target), value };
|
|
37
|
-
this.references.add(entry);
|
|
38
|
-
if (unregisterToken) {
|
|
39
|
-
// some simplifications here as it's an internal polyfill
|
|
40
|
-
// we don't allow the same unregisterToken to be reused
|
|
41
|
-
invariant(!this.unregisterTokens.has(unregisterToken));
|
|
42
|
-
this.unregisterTokens.set(unregisterToken, entry);
|
|
43
|
-
}
|
|
44
|
-
if (!this.interval) {
|
|
45
|
-
this.interval = setInterval(this.handler, this.intervalLength);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
unregister(unregisterToken) {
|
|
49
|
-
// Calling `(weak)Set.delete(undefined)` is not covered by the TypeScript types,
|
|
50
|
-
// but valid by the spec (see https://tc39.es/ecma262/multipage/keyed-collections.html#sec-weakset.prototype.delete).
|
|
51
|
-
// Shaving a few bytes here by skipping the undefined check.
|
|
52
|
-
this.references.delete(this.unregisterTokens.get(unregisterToken));
|
|
53
|
-
return this.unregisterTokens.delete(unregisterToken);
|
|
54
|
-
}
|
|
55
|
-
[Symbol.toStringTag] = "FinalizationRegistry";
|
|
56
|
-
};
|
|
57
|
-
//# sourceMappingURL=FinalizationRegistry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FinalizationRegistry.js","sources":["../../../../src/utilities/internal/ponyfills/FinalizationRegistry.ts"],"sourcesContent":["import { invariant } from \"@apollo/client/utilities/invariant\";\n\ninterface Entry<T> {\n targetRef: WeakRef<WeakKey>;\n value: T;\n}\n\n/**\n * @internal\n *\n * An approximation of `FinalizationRegistry` based on `WeakRef`.\n * While there are registered values, checks every 500ms if any have been garbage collected.\n * The polling interval is cleared once all registered entries have been removed.\n */\nexport const FinalizationRegistry: typeof globalThis.FinalizationRegistry = class FinalizationRegistry<\n T,\n> {\n private intervalLength = 500;\n private callback: (value: T) => void;\n private references = new Set<Entry<T>>();\n private unregisterTokens = new WeakMap<WeakKey, Entry<T>>();\n private interval: ReturnType<typeof setInterval> | null = null;\n constructor(callback: (value: T) => void) {\n this.callback = callback;\n this.handler = this.handler.bind(this);\n }\n handler() {\n if (this.references.size === 0) {\n clearInterval(this.interval!);\n this.interval = null;\n return;\n }\n this.references.forEach((entry) => {\n if (entry.targetRef.deref() === undefined) {\n this.references.delete(entry);\n // Spec deviation: Not catching errors here, might get necessary if used in more places.\n this.callback(entry.value);\n }\n });\n }\n register(target: WeakKey, value: T, unregisterToken?: WeakKey): void {\n const entry = { targetRef: new WeakRef(target), value };\n this.references.add(entry);\n if (unregisterToken) {\n // some simplifications here as it's an internal polyfill\n // we don't allow the same unregisterToken to be reused\n invariant(!this.unregisterTokens.has(unregisterToken));\n this.unregisterTokens.set(unregisterToken, entry);\n }\n if (!this.interval) {\n this.interval = setInterval(this.handler, this.intervalLength);\n }\n }\n unregister(unregisterToken: WeakKey): boolean {\n // Calling `(weak)Set.delete(undefined)` is not covered by the TypeScript types,\n // but valid by the spec (see https://tc39.es/ecma262/multipage/keyed-collections.html#sec-weakset.prototype.delete).\n // Shaving a few bytes here by skipping the undefined check.\n this.references.delete(this.unregisterTokens.get(unregisterToken)!);\n return this.unregisterTokens.delete(unregisterToken);\n }\n [Symbol.toStringTag] = \"FinalizationRegistry\" as const;\n};\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utilities/internal/ponyfills/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,GAAG,oBAAoB,CAAC;AAC/B,OAAO,EAAE,CAAC,IAAI,oBAAoB,EAAE,CAAC","sourcesContent":["const F = FinalizationRegistry;\nexport { F as FinalizationRegistry };\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.react-native.js","sourceRoot":"","sources":["../../../../src/utilities/internal/ponyfills/index.react-native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC","sourcesContent":["export { FinalizationRegistry } from \"./FinalizationRegistry.js\";\n"]}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { Trie } from "@wry/trie";
|
|
2
|
-
import type { Incremental } from "@apollo/client/incremental";
|
|
3
|
-
import type { streamDetailsSymbol } from "../constants.js";
|
|
4
|
-
/**
|
|
5
|
-
* @internal
|
|
6
|
-
*
|
|
7
|
-
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
8
|
-
*/
|
|
9
|
-
export interface ExtensionsWithStreamDetails extends Record<string, unknown> {
|
|
10
|
-
[streamDetailsSymbol]?: {
|
|
11
|
-
current: Trie<{
|
|
12
|
-
current: Incremental.StreamFieldInfo;
|
|
13
|
-
}>;
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* @internal
|
|
18
|
-
*
|
|
19
|
-
* @deprecated This is an internal API and should not be used directly. This can be removed or changed at any time.
|
|
20
|
-
*/
|
|
21
|
-
export interface WithExtensionsWithStreamDetails {
|
|
22
|
-
extensions?: ExtensionsWithStreamDetails;
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=ExtensionsWithStreamDetails.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ExtensionsWithStreamDetails.js","sourceRoot":"","sources":["../../../../src/utilities/internal/types/ExtensionsWithStreamDetails.ts"],"names":[],"mappings":"","sourcesContent":["import type { Trie } from \"@wry/trie\";\n\nimport type { Incremental } from \"@apollo/client/incremental\";\n\nimport type { streamDetailsSymbol } from \"../constants.js\";\n\n/** @internal */\nexport interface ExtensionsWithStreamDetails extends Record<string, unknown> {\n [streamDetailsSymbol]?: {\n current: Trie<{ current: Incremental.StreamFieldInfo }>;\n };\n}\n\n/** @internal */\nexport interface WithExtensionsWithStreamDetails {\n extensions?: ExtensionsWithStreamDetails;\n}\n"]}
|