@automattic/vip 4.1.3 → 4.1.4
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/.buildkite/build-macos-installer.sh +34 -0
- package/.buildkite/build-macos.sh +2 -3
- package/.buildkite/build-windows-installer.ps1 +65 -0
- package/.buildkite/build-windows.ps1 +2 -18
- package/.buildkite/pipeline.yml +32 -0
- package/.buildkite/sign-windows.ps1 +21 -0
- package/.buildkite/test-windows-installer-download.ps1 +54 -0
- package/.buildkite/test_pipeline.py +69 -0
- package/Gemfile.lock +44 -41
- package/cmd/installer-payload/main.go +19 -0
- package/cmd/installer-version/main.go +22 -0
- package/cmd/vip-next/commands/app_debug_test.go +89 -0
- package/cmd/vip-next/commands/app_deploy.go +4 -0
- package/cmd/vip-next/commands/app_deploy_validate.go +2 -0
- package/cmd/vip-next/commands/config_debug_test.go +137 -0
- package/cmd/vip-next/commands/config_envvar_delete.go +2 -0
- package/cmd/vip-next/commands/config_envvar_get.go +2 -0
- package/cmd/vip-next/commands/config_envvar_get_all.go +2 -0
- package/cmd/vip-next/commands/config_envvar_list.go +2 -0
- package/cmd/vip-next/commands/config_envvar_set.go +2 -0
- package/cmd/vip-next/commands/config_software_update.go +12 -1
- package/cmd/vip-next/commands/devenv_create_test.go +5 -5
- package/cmd/vip-next/commands/devenv_debug_test.go +34 -0
- package/cmd/vip-next/commands/devenv_envvar.go +6 -0
- package/cmd/vip-next/commands/devenv_lifecycle.go +30 -11
- package/cmd/vip-next/commands/devenv_update.go +1 -1
- package/cmd/vip-next/commands/devenv_update_test.go +28 -2
- package/cmd/vip-next/commands/import_debug_test.go +110 -0
- package/cmd/vip-next/commands/import_media.go +4 -0
- package/cmd/vip-next/commands/import_sql.go +9 -1
- package/cmd/vip-next/commands/logout.go +1 -1
- package/cmd/vip-next/commands/searchreplace.go +3 -1
- package/cmd/vip-next/commands/searchreplace_debug_test.go +82 -0
- package/cmd/vip-next/commands/whoami.go +10 -1
- package/cmd/vip-next/commands/whoami_debug_test.go +79 -0
- package/cmd/vip-next/commands/wp.go +2 -0
- package/cmd/vip-next/commands/wp_debug_test.go +32 -0
- package/cmd/vip-next/debug_args.go +63 -0
- package/cmd/vip-next/debug_test.go +122 -0
- package/cmd/vip-next/main.go +58 -2
- package/cmd/vip-next/pendo_wiring_test.go +148 -0
- package/cmd/vip-next/root.go +17 -0
- package/dist/bin/vip-dev-env-envvar-get.js +2 -2
- package/dist/bin/vip-dev-env-envvar-set.js +2 -2
- package/dist/bin/vip-dev-env-update.js +1 -1
- package/dist/lib/analytics/clients/pendo.js +19 -7
- package/dist/lib/constants/dev-environment.js +8 -7
- package/dist/lib/dev-environment/dev-environment-cli.js +10 -2
- package/dist/lib/dev-environment/dev-environment-core.js +1 -1
- package/docs/BUILD-SIGNING.md +147 -6
- package/docs/DEBUGGING.md +61 -0
- package/docs/GO-UPDATES.md +7 -1
- package/docs/RELEASING.md +3 -2
- package/docs/SETUP.md +2 -1
- package/fastlane/Fastfile +66 -3
- package/fastlane/test_signing.rb +83 -0
- package/internal/auth/logout.go +14 -1
- package/internal/auth/logout_test.go +46 -0
- package/internal/debuglog/debuglog.go +85 -0
- package/internal/debuglog/debuglog_test.go +44 -0
- package/internal/devenv/compose/view.go +6 -3
- package/internal/devenv/compose/view_test.go +1 -1
- package/internal/devenv/debug.go +4 -0
- package/internal/devenv/debug_test.go +103 -0
- package/internal/devenv/devenv.go +20 -2
- package/internal/devenv/devexec.go +3 -0
- package/internal/devenv/importdata.go +4 -1
- package/internal/devenv/list.go +9 -1
- package/internal/devenv/logs.go +2 -0
- package/internal/devenv/proxy/ca.go +9 -2
- package/internal/devenv/proxy/ca_test.go +1 -1
- package/internal/devenv/proxy/network.go +7 -3
- package/internal/devenv/proxy/network_test.go +6 -0
- package/internal/devenv/proxy/proxy.go +37 -8
- package/internal/devenv/proxy/proxy_test.go +61 -6
- package/internal/devenv/proxy/scripts/gen-certs.sh +20 -5
- package/internal/devenv/update.go +2 -0
- package/internal/gql/debug_test.go +79 -0
- package/internal/gql/error.go +27 -1
- package/internal/gql/rechallenge.go +9 -5
- package/internal/gql/retry.go +21 -2
- package/internal/gql/transport.go +9 -0
- package/internal/httpproxy/debug_test.go +32 -0
- package/internal/httpproxy/httpproxy.go +8 -1
- package/internal/installer/version.go +41 -0
- package/internal/installer/version_test.go +33 -0
- package/internal/parity/edge_workers_debug_test.go +87 -0
- package/internal/parity/pendo_test.go +122 -0
- package/internal/rechallenge/flow.go +8 -0
- package/internal/rechallenge/flow_test.go +15 -1
- package/internal/releasepromotion/buildkite.go +12 -1
- package/internal/releasepromotion/buildkite_test.go +31 -0
- package/internal/releasepromotion/contract.go +49 -1
- package/internal/releasepromotion/contract_test.go +38 -0
- package/internal/releasepromotion/github.go +4 -10
- package/internal/releasepromotion/optional_installers_test.go +87 -0
- package/internal/releasepromotion/verify.go +99 -2
- package/internal/releasepromotion/verify_test.go +99 -0
- package/internal/searchreplace/debug_test.go +71 -0
- package/internal/searchreplace/searchreplace.go +14 -0
- package/internal/siteimport/debug_test.go +34 -0
- package/internal/siteimport/status.go +11 -0
- package/internal/telemetry/pendo.go +41 -10
- package/internal/telemetry/pendo_auth_test.go +92 -0
- package/internal/telemetry/pendo_test.go +24 -5
- package/internal/telemetry/tracker.go +26 -0
- package/internal/update/github.go +36 -17
- package/internal/update/ownership.go +22 -0
- package/internal/update/ownership_test.go +44 -0
- package/internal/update/release_test.go +53 -13
- package/internal/update/service_test.go +39 -0
- package/internal/upload/debug_test.go +76 -0
- package/internal/upload/multipart.go +3 -0
- package/internal/upload/orchestrate.go +10 -0
- package/internal/upload/putobject.go +3 -0
- package/internal/wpssh/debug_test.go +67 -0
- package/internal/wpssh/wpssh.go +7 -0
- package/internal/wpstream/debug_test.go +116 -0
- package/internal/wpstream/run.go +10 -1
- package/node_modules/@apollo/client/CHANGELOG.md +1130 -0
- package/node_modules/@apollo/client/__cjs/cache/core/Scalar.cjs +36 -0
- package/node_modules/@apollo/client/__cjs/cache/core/Scalar.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/cache/core/Scalar.d.cts +56 -0
- package/node_modules/@apollo/client/__cjs/cache/core/cache.cjs +32 -1
- package/node_modules/@apollo/client/__cjs/cache/core/cache.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/core/cache.d.cts +89 -6
- package/node_modules/@apollo/client/__cjs/cache/core/types/Cache.d.cts +30 -2
- package/node_modules/@apollo/client/__cjs/cache/index.cjs +3 -1
- package/node_modules/@apollo/client/__cjs/cache/index.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/index.d.cts +2 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.cjs +63 -5
- package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/entityStore.d.cts +3 -0
- package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs +12 -0
- package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/helpers.d.cts +11 -2
- package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs +95 -4
- package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/inMemoryCache.d.cts +44 -5
- package/node_modules/@apollo/client/__cjs/cache/inmemory/key-extractor.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs +34 -6
- package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/policies.d.cts +3 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.cjs +489 -45
- package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/cache/inmemory/readFromStore.d.cts +11 -2
- package/node_modules/@apollo/client/__cjs/cache/inmemory/types.d.cts +31 -4
- package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs +5 -9
- package/node_modules/@apollo/client/__cjs/cache/inmemory/writeToStore.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/core/ApolloClient.cjs +14 -14
- package/node_modules/@apollo/client/__cjs/core/ApolloClient.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/core/ApolloClient.d.cts +11 -11
- package/node_modules/@apollo/client/__cjs/core/ObservableQuery.cjs +186 -72
- package/node_modules/@apollo/client/__cjs/core/ObservableQuery.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/core/ObservableQuery.d.cts +4 -7
- package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs +164 -197
- package/node_modules/@apollo/client/__cjs/core/QueryInfo.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/core/QueryInfo.d.cts +17 -21
- package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs +75 -48
- package/node_modules/@apollo/client/__cjs/core/QueryManager.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/core/QueryManager.d.cts +4 -4
- package/node_modules/@apollo/client/__cjs/core/RefetchEventManager.cjs +3 -3
- package/node_modules/@apollo/client/__cjs/core/dataStateErrorCache.cjs +12 -0
- package/node_modules/@apollo/client/__cjs/core/dataStateErrorCache.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/core/dataStateErrorCache.d.cts +3 -0
- package/node_modules/@apollo/client/__cjs/core/deprecated.d.cts +3 -3
- package/node_modules/@apollo/client/__cjs/core/index.cjs +2 -1
- package/node_modules/@apollo/client/__cjs/core/index.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/core/index.d.cts +4 -3
- package/node_modules/@apollo/client/__cjs/core/types.d.cts +11 -7
- package/node_modules/@apollo/client/__cjs/incremental/GraphQLCodegenIncremental.cjs +3 -0
- package/node_modules/@apollo/client/__cjs/incremental/GraphQLCodegenIncremental.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/incremental/GraphQLCodegenIncremental.d.cts +55 -0
- package/node_modules/@apollo/client/__cjs/incremental/handlers/defer20220824.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/incremental/handlers/defer20220824.d.cts +2 -4
- package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.cjs +47 -16
- package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/incremental/handlers/graphql17Alpha9.d.cts +29 -6
- package/node_modules/@apollo/client/__cjs/incremental/handlers/notImplemented.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/incremental/index.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/incremental/index.d.cts +1 -0
- package/node_modules/@apollo/client/__cjs/{utilities/internal/types/NoInfer.cjs → incremental/internal/types.cjs} +1 -1
- package/node_modules/@apollo/client/__cjs/incremental/internal/types.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/incremental/internal/types.d.cts +17 -0
- package/node_modules/@apollo/client/__cjs/incremental/types.d.cts +55 -4
- package/node_modules/@apollo/client/__cjs/invariantErrorCodes.cjs +164 -113
- package/node_modules/@apollo/client/__cjs/link/core/ApolloLink.cjs +3 -3
- package/node_modules/@apollo/client/__cjs/link/http/checkFetcher.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/link/http/parseAndCheckHttpResponse.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/link/persisted-queries/index.cjs +2 -2
- package/node_modules/@apollo/client/__cjs/link/ws/index.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/local-state/LocalState.cjs +11 -11
- package/node_modules/@apollo/client/__cjs/local-state/LocalState.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/local-state/LocalState.d.cts +1 -1
- package/node_modules/@apollo/client/__cjs/masking/internal/types.d.cts +1 -2
- package/node_modules/@apollo/client/__cjs/masking/maskDefinition.cjs +2 -2
- package/node_modules/@apollo/client/__cjs/masking/maskFragment.cjs +2 -2
- package/node_modules/@apollo/client/__cjs/masking/maskOperation.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/masking/utils.cjs +3 -3
- package/node_modules/@apollo/client/__cjs/react/context/ApolloContext.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/react/context/ApolloProvider.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/internal/validateSuspenseHookOptions.cjs +2 -2
- package/node_modules/@apollo/client/__cjs/react/hooks/useApolloClient.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useBackgroundQuery.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useBackgroundQuery.d.cts +3 -3
- package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useFragment.d.cts +0 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useLazyQuery.cjs +2 -2
- package/node_modules/@apollo/client/__cjs/react/hooks/useLazyQuery.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useLazyQuery.d.cts +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useLoadableQuery.cjs +2 -2
- package/node_modules/@apollo/client/__cjs/react/hooks/useMutation.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useMutation.d.cts +14 -14
- package/node_modules/@apollo/client/__cjs/react/hooks/useQuery.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useQuery.d.cts +16 -3
- package/node_modules/@apollo/client/__cjs/react/hooks/useSubscription.cjs +7 -3
- package/node_modules/@apollo/client/__cjs/react/hooks/useSubscription.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useSubscription.d.cts +27 -5
- package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseFragment.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseFragment.d.cts +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseQuery.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/hooks/useSuspenseQuery.d.cts +30 -30
- package/node_modules/@apollo/client/__cjs/react/hooks/useSyncExternalStore.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/react/internal/cache/QueryReference.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/react/query-preloader/createQueryPreloader.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/react/query-preloader/createQueryPreloader.d.cts +1 -1
- package/node_modules/@apollo/client/__cjs/react/ssr/prerenderStatic.cjs +2 -2
- package/node_modules/@apollo/client/__cjs/react/types/deprecated.d.cts +5 -4
- package/node_modules/@apollo/client/__cjs/react/types/types.documentation.d.cts +12 -1
- package/node_modules/@apollo/client/__cjs/testing/core/mocking/mockLink.cjs +25 -5
- package/node_modules/@apollo/client/__cjs/testing/core/mocking/mockLink.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/testing/core/mocking/mockLink.d.cts +1 -2
- package/node_modules/@apollo/client/__cjs/utilities/caching/sizes.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/caching/sizes.d.cts +39 -1
- package/node_modules/@apollo/client/__cjs/utilities/graphql/DocumentTransform.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/StreamArrayState.cjs +27 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/StreamArrayState.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/StreamArrayState.d.cts +12 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/addDeferFragmentLabels.cjs +33 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/addDeferFragmentLabels.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/addDeferFragmentLabels.d.cts +3 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/capitalize.cjs +12 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/capitalize.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/capitalize.d.cts +7 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/coerceScalarFieldsToParsed.cjs +102 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/coerceScalarFieldsToParsed.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/coerceScalarFieldsToParsed.d.cts +9 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/constants.cjs +20 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/constants.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/constants.d.cts +19 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/getDirectiveArgValue.cjs +19 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/getDirectiveArgValue.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/getDirectiveArgValue.d.cts +9 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentDefinition.cjs +3 -3
- package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentDefinition.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentFromSelection.cjs +2 -2
- package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentFromSelection.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/getFragmentQueryDocument.cjs +2 -2
- package/node_modules/@apollo/client/__cjs/utilities/internal/getMainDefinition.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/getMemoryInternals.cjs +6 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/getMemoryInternals.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/getMemoryInternals.d.cts +4 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/getQueryDefinition.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/index.cjs +27 -2
- package/node_modules/@apollo/client/__cjs/utilities/internal/index.cjs.map +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/index.d.cts +17 -2
- package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.cjs +38 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/isDeferredFragment.d.cts +9 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.cjs +37 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/isStreamField.d.cts +9 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/isTypenameField.cjs +7 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/isTypenameField.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/isTypenameField.d.cts +3 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/makeStreamInfoTrie.cjs +17 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/makeStreamInfoTrie.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/makeStreamInfoTrie.d.cts +8 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/matchScalarList.cjs +12 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/matchScalarList.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/matchScalarList.d.cts +8 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/removeDirectivesFromDocument.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/shouldInclude.cjs +4 -4
- package/node_modules/@apollo/client/__cjs/utilities/internal/toDiffWithDataState.cjs +20 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/toDiffWithDataState.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/toDiffWithDataState.d.cts +8 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.cjs +3 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/DeferInfo.d.cts +10 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/Exact.cjs +3 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/Exact.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/Exact.d.cts +2 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsLooselyEqual.cjs +3 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsLooselyEqual.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsLooselyEqual.d.cts +10 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsNeverish.cjs +3 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsNeverish.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/IsNeverish.d.cts +4 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/StreamInfoTrie.d.cts +2 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/unwrapScalarType.cjs +12 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/unwrapScalarType.cjs.map +1 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/unwrapScalarType.d.cts +10 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/valueToObjectRepresentation.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/version.cjs +1 -1
- package/node_modules/@apollo/client/__cjs/version.cjs.map +1 -1
- package/node_modules/@apollo/client/cache/core/Scalar.d.ts +56 -0
- package/node_modules/@apollo/client/cache/core/Scalar.js +32 -0
- package/node_modules/@apollo/client/cache/core/Scalar.js.map +1 -0
- package/node_modules/@apollo/client/cache/core/cache.d.ts +89 -6
- package/node_modules/@apollo/client/cache/core/cache.js +33 -2
- package/node_modules/@apollo/client/cache/core/cache.js.map +1 -1
- package/node_modules/@apollo/client/cache/core/types/Cache.d.ts +30 -2
- package/node_modules/@apollo/client/cache/core/types/Cache.js.map +1 -1
- package/node_modules/@apollo/client/cache/index.d.ts +2 -1
- package/node_modules/@apollo/client/cache/index.js +1 -0
- package/node_modules/@apollo/client/cache/index.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/entityStore.d.ts +3 -0
- package/node_modules/@apollo/client/cache/inmemory/entityStore.js +64 -6
- package/node_modules/@apollo/client/cache/inmemory/entityStore.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/helpers.d.ts +11 -2
- package/node_modules/@apollo/client/cache/inmemory/helpers.js +11 -0
- package/node_modules/@apollo/client/cache/inmemory/helpers.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.d.ts +44 -5
- package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js +97 -6
- package/node_modules/@apollo/client/cache/inmemory/inMemoryCache.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/key-extractor.js +1 -1
- package/node_modules/@apollo/client/cache/inmemory/policies.d.ts +3 -1
- package/node_modules/@apollo/client/cache/inmemory/policies.js +34 -6
- package/node_modules/@apollo/client/cache/inmemory/policies.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/readFromStore.d.ts +11 -2
- package/node_modules/@apollo/client/cache/inmemory/readFromStore.js +485 -45
- package/node_modules/@apollo/client/cache/inmemory/readFromStore.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/types.d.ts +32 -5
- package/node_modules/@apollo/client/cache/inmemory/types.js.map +1 -1
- package/node_modules/@apollo/client/cache/inmemory/writeToStore.js +6 -10
- package/node_modules/@apollo/client/cache/inmemory/writeToStore.js.map +1 -1
- package/node_modules/@apollo/client/core/ApolloClient.d.ts +11 -11
- package/node_modules/@apollo/client/core/ApolloClient.js +14 -14
- package/node_modules/@apollo/client/core/ApolloClient.js.map +1 -1
- package/node_modules/@apollo/client/core/ObservableQuery.d.ts +4 -7
- package/node_modules/@apollo/client/core/ObservableQuery.js +183 -73
- package/node_modules/@apollo/client/core/ObservableQuery.js.map +1 -1
- package/node_modules/@apollo/client/core/QueryInfo.d.ts +18 -22
- package/node_modules/@apollo/client/core/QueryInfo.js +165 -198
- package/node_modules/@apollo/client/core/QueryInfo.js.map +1 -1
- package/node_modules/@apollo/client/core/QueryManager.d.ts +4 -4
- package/node_modules/@apollo/client/core/QueryManager.js +76 -49
- package/node_modules/@apollo/client/core/QueryManager.js.map +1 -1
- package/node_modules/@apollo/client/core/RefetchEventManager.js +3 -3
- package/node_modules/@apollo/client/core/dataStateErrorCache.d.ts +3 -0
- package/node_modules/@apollo/client/core/dataStateErrorCache.js +9 -0
- package/node_modules/@apollo/client/core/dataStateErrorCache.js.map +1 -0
- package/node_modules/@apollo/client/core/deprecated.d.ts +3 -3
- package/node_modules/@apollo/client/core/deprecated.js.map +1 -1
- package/node_modules/@apollo/client/core/index.d.ts +4 -3
- package/node_modules/@apollo/client/core/index.js +1 -1
- package/node_modules/@apollo/client/core/index.js.map +1 -1
- package/node_modules/@apollo/client/core/types.d.ts +11 -7
- package/node_modules/@apollo/client/core/types.js.map +1 -1
- package/node_modules/@apollo/client/incremental/GraphQLCodegenIncremental.d.ts +55 -0
- package/node_modules/@apollo/client/incremental/GraphQLCodegenIncremental.js +2 -0
- package/node_modules/@apollo/client/incremental/GraphQLCodegenIncremental.js.map +1 -0
- package/node_modules/@apollo/client/incremental/handlers/defer20220824.d.ts +2 -4
- package/node_modules/@apollo/client/incremental/handlers/defer20220824.js.map +1 -1
- package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.d.ts +29 -6
- package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.js +48 -17
- package/node_modules/@apollo/client/incremental/handlers/graphql17Alpha9.js.map +1 -1
- package/node_modules/@apollo/client/incremental/handlers/notImplemented.js +1 -1
- package/node_modules/@apollo/client/incremental/index.d.ts +1 -0
- package/node_modules/@apollo/client/incremental/index.js.map +1 -1
- package/node_modules/@apollo/client/incremental/internal/types.d.ts +17 -0
- package/node_modules/@apollo/client/incremental/internal/types.js +2 -0
- package/node_modules/@apollo/client/incremental/internal/types.js.map +1 -0
- package/node_modules/@apollo/client/incremental/types.d.ts +55 -4
- package/node_modules/@apollo/client/incremental/types.js.map +1 -1
- package/node_modules/@apollo/client/invariantErrorCodes.js +164 -113
- package/node_modules/@apollo/client/link/core/ApolloLink.js +3 -3
- package/node_modules/@apollo/client/link/http/checkFetcher.js +1 -1
- package/node_modules/@apollo/client/link/http/parseAndCheckHttpResponse.js +1 -1
- package/node_modules/@apollo/client/link/persisted-queries/index.js +2 -2
- package/node_modules/@apollo/client/link/ws/index.js +1 -1
- package/node_modules/@apollo/client/local-state/LocalState.d.ts +1 -1
- package/node_modules/@apollo/client/local-state/LocalState.js +11 -11
- package/node_modules/@apollo/client/local-state/LocalState.js.map +1 -1
- package/node_modules/@apollo/client/masking/internal/types.d.ts +1 -2
- package/node_modules/@apollo/client/masking/internal/types.js.map +1 -1
- package/node_modules/@apollo/client/masking/maskDefinition.js +2 -2
- package/node_modules/@apollo/client/masking/maskFragment.js +2 -2
- package/node_modules/@apollo/client/masking/maskOperation.js +1 -1
- package/node_modules/@apollo/client/masking/utils.js +3 -3
- package/node_modules/@apollo/client/package.json +1 -1
- package/node_modules/@apollo/client/react/context/ApolloContext.js +1 -1
- package/node_modules/@apollo/client/react/context/ApolloProvider.js +1 -1
- package/node_modules/@apollo/client/react/hooks/internal/validateSuspenseHookOptions.js +2 -2
- package/node_modules/@apollo/client/react/hooks/useApolloClient.js +1 -1
- package/node_modules/@apollo/client/react/hooks/useBackgroundQuery.d.ts +3 -3
- package/node_modules/@apollo/client/react/hooks/useBackgroundQuery.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks/useFragment.d.ts +0 -1
- package/node_modules/@apollo/client/react/hooks/useFragment.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks/useLazyQuery.d.ts +1 -1
- package/node_modules/@apollo/client/react/hooks/useLazyQuery.js +2 -2
- package/node_modules/@apollo/client/react/hooks/useLazyQuery.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks/useLoadableQuery.js +2 -2
- package/node_modules/@apollo/client/react/hooks/useMutation.d.ts +14 -14
- package/node_modules/@apollo/client/react/hooks/useMutation.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks/useQuery.d.ts +16 -3
- package/node_modules/@apollo/client/react/hooks/useQuery.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks/useSubscription.d.ts +27 -5
- package/node_modules/@apollo/client/react/hooks/useSubscription.js +7 -3
- package/node_modules/@apollo/client/react/hooks/useSubscription.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks/useSuspenseFragment.d.ts +1 -1
- package/node_modules/@apollo/client/react/hooks/useSuspenseFragment.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks/useSuspenseQuery.d.ts +30 -30
- package/node_modules/@apollo/client/react/hooks/useSuspenseQuery.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks/useSyncExternalStore.js +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/internal/validateSuspenseHookOptions.js +2 -2
- package/node_modules/@apollo/client/react/hooks-compiled/useApolloClient.js +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useBackgroundQuery.d.ts +3 -3
- package/node_modules/@apollo/client/react/hooks-compiled/useBackgroundQuery.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useFragment.d.ts +0 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useFragment.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useLazyQuery.d.ts +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useLazyQuery.js +2 -2
- package/node_modules/@apollo/client/react/hooks-compiled/useLazyQuery.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useLoadableQuery.js +2 -2
- package/node_modules/@apollo/client/react/hooks-compiled/useMutation.d.ts +14 -14
- package/node_modules/@apollo/client/react/hooks-compiled/useMutation.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useQuery.d.ts +16 -3
- package/node_modules/@apollo/client/react/hooks-compiled/useQuery.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useSubscription.d.ts +27 -5
- package/node_modules/@apollo/client/react/hooks-compiled/useSubscription.js +107 -93
- package/node_modules/@apollo/client/react/hooks-compiled/useSubscription.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseFragment.d.ts +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseFragment.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseQuery.d.ts +30 -30
- package/node_modules/@apollo/client/react/hooks-compiled/useSuspenseQuery.js.map +1 -1
- package/node_modules/@apollo/client/react/hooks-compiled/useSyncExternalStore.js +1 -1
- package/node_modules/@apollo/client/react/internal/cache/QueryReference.js +1 -1
- package/node_modules/@apollo/client/react/query-preloader/createQueryPreloader.d.ts +1 -1
- package/node_modules/@apollo/client/react/query-preloader/createQueryPreloader.js.map +1 -1
- package/node_modules/@apollo/client/react/ssr/prerenderStatic.js +2 -2
- package/node_modules/@apollo/client/react/types/deprecated.d.ts +5 -4
- package/node_modules/@apollo/client/react/types/deprecated.js.map +1 -1
- package/node_modules/@apollo/client/react/types/types.documentation.d.ts +12 -1
- package/node_modules/@apollo/client/react/types/types.documentation.js.map +1 -1
- package/node_modules/@apollo/client/testing/core/mocking/mockLink.d.ts +1 -2
- package/node_modules/@apollo/client/testing/core/mocking/mockLink.js +25 -5
- package/node_modules/@apollo/client/testing/core/mocking/mockLink.js.map +1 -1
- package/node_modules/@apollo/client/utilities/caching/sizes.d.ts +39 -1
- package/node_modules/@apollo/client/utilities/caching/sizes.js.map +1 -1
- package/node_modules/@apollo/client/utilities/graphql/DocumentTransform.js +1 -1
- package/node_modules/@apollo/client/utilities/internal/StreamArrayState.d.ts +12 -0
- package/node_modules/@apollo/client/utilities/internal/StreamArrayState.js +23 -0
- package/node_modules/@apollo/client/utilities/internal/StreamArrayState.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/addDeferFragmentLabels.d.ts +3 -0
- package/node_modules/@apollo/client/utilities/internal/addDeferFragmentLabels.js +30 -0
- package/node_modules/@apollo/client/utilities/internal/addDeferFragmentLabels.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/capitalize.d.ts +7 -0
- package/node_modules/@apollo/client/utilities/internal/capitalize.js +9 -0
- package/node_modules/@apollo/client/utilities/internal/capitalize.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/coerceScalarFieldsToParsed.d.ts +9 -0
- package/node_modules/@apollo/client/utilities/internal/coerceScalarFieldsToParsed.js +95 -0
- package/node_modules/@apollo/client/utilities/internal/coerceScalarFieldsToParsed.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/constants.d.ts +19 -0
- package/node_modules/@apollo/client/utilities/internal/constants.js +19 -0
- package/node_modules/@apollo/client/utilities/internal/constants.js.map +1 -1
- package/node_modules/@apollo/client/utilities/internal/getDirectiveArgValue.d.ts +9 -0
- package/node_modules/@apollo/client/utilities/internal/getDirectiveArgValue.js +16 -0
- package/node_modules/@apollo/client/utilities/internal/getDirectiveArgValue.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/getFragmentDefinition.js +3 -3
- package/node_modules/@apollo/client/utilities/internal/getFragmentDefinition.js.map +1 -1
- package/node_modules/@apollo/client/utilities/internal/getFragmentFromSelection.js +2 -2
- package/node_modules/@apollo/client/utilities/internal/getFragmentFromSelection.js.map +1 -1
- package/node_modules/@apollo/client/utilities/internal/getFragmentQueryDocument.js +2 -2
- package/node_modules/@apollo/client/utilities/internal/getMainDefinition.js +1 -1
- package/node_modules/@apollo/client/utilities/internal/getMemoryInternals.d.ts +4 -0
- package/node_modules/@apollo/client/utilities/internal/getMemoryInternals.js +6 -0
- package/node_modules/@apollo/client/utilities/internal/getMemoryInternals.js.map +1 -1
- package/node_modules/@apollo/client/utilities/internal/getQueryDefinition.js +1 -1
- package/node_modules/@apollo/client/utilities/internal/index.d.ts +17 -2
- package/node_modules/@apollo/client/utilities/internal/index.js +13 -1
- package/node_modules/@apollo/client/utilities/internal/index.js.map +1 -1
- package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.d.ts +9 -0
- package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.js +35 -0
- package/node_modules/@apollo/client/utilities/internal/isDeferredFragment.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/isStreamField.d.ts +9 -0
- package/node_modules/@apollo/client/utilities/internal/isStreamField.js +34 -0
- package/node_modules/@apollo/client/utilities/internal/isStreamField.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/isTypenameField.d.ts +3 -0
- package/node_modules/@apollo/client/utilities/internal/isTypenameField.js +4 -0
- package/node_modules/@apollo/client/utilities/internal/isTypenameField.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/makeStreamInfoTrie.d.ts +8 -0
- package/node_modules/@apollo/client/utilities/internal/makeStreamInfoTrie.js +14 -0
- package/node_modules/@apollo/client/utilities/internal/makeStreamInfoTrie.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/matchScalarList.d.ts +8 -0
- package/node_modules/@apollo/client/utilities/internal/matchScalarList.js +9 -0
- package/node_modules/@apollo/client/utilities/internal/matchScalarList.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/removeDirectivesFromDocument.js +1 -1
- package/node_modules/@apollo/client/utilities/internal/shouldInclude.js +4 -4
- package/node_modules/@apollo/client/utilities/internal/toDiffWithDataState.d.ts +8 -0
- package/node_modules/@apollo/client/utilities/internal/toDiffWithDataState.js +17 -0
- package/node_modules/@apollo/client/utilities/internal/toDiffWithDataState.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.d.ts +10 -0
- package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.js +2 -0
- package/node_modules/@apollo/client/utilities/internal/types/DeferInfo.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/types/Exact.d.ts +2 -0
- package/node_modules/@apollo/client/utilities/internal/types/Exact.js +2 -0
- package/node_modules/@apollo/client/utilities/internal/types/Exact.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/types/IsLooselyEqual.d.ts +10 -0
- package/node_modules/@apollo/client/utilities/internal/types/IsLooselyEqual.js +2 -0
- package/node_modules/@apollo/client/utilities/internal/types/IsLooselyEqual.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/types/IsNeverish.d.ts +4 -0
- package/node_modules/@apollo/client/utilities/internal/types/IsNeverish.js +2 -0
- package/node_modules/@apollo/client/utilities/internal/types/IsNeverish.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/types/StreamInfoTrie.d.ts +2 -0
- package/node_modules/@apollo/client/utilities/internal/types/StreamInfoTrie.js.map +1 -1
- package/node_modules/@apollo/client/utilities/internal/unwrapScalarType.d.ts +10 -0
- package/node_modules/@apollo/client/utilities/internal/unwrapScalarType.js +9 -0
- package/node_modules/@apollo/client/utilities/internal/unwrapScalarType.js.map +1 -0
- package/node_modules/@apollo/client/utilities/internal/valueToObjectRepresentation.js +1 -1
- package/node_modules/@apollo/client/version.js +1 -1
- package/node_modules/@apollo/client/version.js.map +1 -1
- package/node_modules/@types/node/README.md +1 -1
- package/node_modules/@types/node/buffer.buffer.d.ts +10 -5
- package/node_modules/@types/node/buffer.d.ts +1 -0
- package/node_modules/@types/node/crypto.d.ts +2 -4
- package/node_modules/@types/node/dgram.d.ts +119 -4
- package/node_modules/@types/node/diagnostics_channel.d.ts +4 -4
- package/node_modules/@types/node/ffi.d.ts +1 -1
- package/node_modules/@types/node/fs/promises.d.ts +61 -65
- package/node_modules/@types/node/fs.d.ts +86 -76
- package/node_modules/@types/node/http.d.ts +18 -2
- package/node_modules/@types/node/http2.d.ts +12 -4
- package/node_modules/@types/node/index.d.ts +1 -0
- package/node_modules/@types/node/inspector.d.ts +2 -1
- package/node_modules/@types/node/net.d.ts +108 -16
- package/node_modules/@types/node/package.json +3 -3
- package/node_modules/@types/node/perf_hooks.d.ts +31 -19
- package/node_modules/@types/node/process.d.ts +52 -0
- package/node_modules/@types/node/quic.d.ts +252 -42
- package/node_modules/@types/node/sqlite.d.ts +6 -2
- package/node_modules/@types/node/stream/iter.d.ts +4 -4
- package/node_modules/@types/node/stream/web.d.ts +20 -0
- package/node_modules/@types/node/test.d.ts +36 -0
- package/node_modules/@types/node/tls.d.ts +50 -15
- package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +5 -0
- package/node_modules/@types/node/ts5.6/index.d.ts +1 -0
- package/node_modules/@types/node/ts5.7/index.d.ts +1 -0
- package/node_modules/@types/node/tty.d.ts +4 -3
- package/node_modules/@types/node/vfs.d.ts +211 -0
- package/node_modules/@types/node/vm.d.ts +1 -1
- package/node_modules/@types/node/web-globals/streams.d.ts +4 -0
- package/node_modules/@types/node/zlib.d.ts +17 -0
- package/node_modules/cpu-features/build/Makefile +2 -2
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/filesystem.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_linux_or_android.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_macos_or_iphone.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_aarch64_windows.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_arm_linux_or_android.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_mips_linux_or_android.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_ppc_linux.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_freebsd.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_linux_or_android.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_macos.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/impl_x86_windows.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/stack_line_reader.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpu_features/deps/cpu_features/src/string_view.o.d +1 -1
- package/node_modules/cpu-features/build/Release/.deps/Release/obj.target/cpufeatures/src/binding.o.d +145 -145
- package/node_modules/cpu-features/build/config.gypi +8 -9
- package/node_modules/cpu-features/build/cpufeatures.target.mk +14 -14
- package/node_modules/cpu-features/build/deps/cpu_features/cpu_features.target.mk +14 -14
- package/node_modules/default-browser/package.json +1 -1
- package/node_modules/default-browser/windows.js +3 -1
- package/node_modules/js-yaml/README.md +0 -3
- package/node_modules/js-yaml/dist/browser/js-yaml.esm.min.mjs +822 -779
- package/node_modules/js-yaml/dist/browser/js-yaml.esm.min.mjs.map +1 -1
- package/node_modules/js-yaml/dist/browser/js-yaml.umd.min.js +29 -23
- package/node_modules/js-yaml/dist/browser/js-yaml.umd.min.js.map +1 -1
- package/node_modules/js-yaml/dist/js-yaml.cjs.js +425 -397
- package/node_modules/js-yaml/dist/js-yaml.cjs.js.map +1 -1
- package/node_modules/js-yaml/dist/js-yaml.d.ts +101 -32
- package/node_modules/js-yaml/dist/js-yaml.mjs +429 -397
- package/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
- package/node_modules/js-yaml/package.json +1 -1
- package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.js +11 -3
- package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.js.map +1 -1
- package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.min.js +1 -1
- package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.min.js.map +1 -1
- package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.mjs +11 -3
- package/node_modules/lando/node_modules/js-yaml/dist/js-yaml.mjs.map +1 -1
- package/node_modules/lando/node_modules/js-yaml/lib/loader.js +16 -3
- package/node_modules/lando/node_modules/js-yaml/package.json +1 -1
- package/node_modules/open/index.js +15 -3
- package/node_modules/open/package.json +3 -3
- package/node_modules/{lando → path-scurry}/node_modules/lru-cache/README.md +96 -10
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel-browser.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.d.ts +5 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/diagnostics-channel.js +7 -0
- package/node_modules/{lando/node_modules/lru-cache/dist/commonjs → path-scurry/node_modules/lru-cache/dist/commonjs/browser}/index.d.ts +109 -32
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.js +1733 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.min.js +2 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/index.min.js.map +7 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts +12 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.js +10 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/browser/perf.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.cjs.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel-cjs.d.cts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel.d.ts +5 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/diagnostics-channel.js +7 -0
- package/node_modules/{lando/node_modules/lru-cache/dist/esm → path-scurry/node_modules/lru-cache/dist/commonjs}/index.d.ts +109 -32
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js +1733 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js +2 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/index.min.js.map +7 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel-node.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.d.ts +5 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/diagnostics-channel.js +9 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.d.ts +1400 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.js +1733 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.min.js +2 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/index.min.js.map +7 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.d.ts +12 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.js +10 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/node/perf.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.d.ts +12 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.js +10 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/commonjs/perf.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel-browser.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.d.ts +5 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/diagnostics-channel.js +4 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.d.ts +1400 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.d.ts.map +1 -0
- package/node_modules/{lando/node_modules/lru-cache/dist/esm → path-scurry/node_modules/lru-cache/dist/esm/browser}/index.js +315 -177
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.min.js +2 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/index.min.js.map +7 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.d.ts +12 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.js +7 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/browser/perf.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.d.mts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel-esm.mjs.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel.d.ts +5 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/diagnostics-channel.js +19 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts +1400 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.d.ts.map +1 -0
- package/node_modules/{lando/node_modules/lru-cache/dist/commonjs → path-scurry/node_modules/lru-cache/dist/esm}/index.js +316 -182
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js +2 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/index.min.js.map +7 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel-node.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel.d.ts +5 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/diagnostics-channel.js +6 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.d.ts +1400 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.js +1729 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.min.js +2 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/index.min.js.map +7 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.d.ts +12 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.js +7 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/node/perf.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.d.ts +12 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.d.ts.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.js +7 -0
- package/node_modules/path-scurry/node_modules/lru-cache/dist/esm/perf.js.map +1 -0
- package/node_modules/path-scurry/node_modules/lru-cache/package.json +154 -0
- package/node_modules/powershell-utils/index.d.ts +16 -2
- package/node_modules/powershell-utils/index.js +12 -9
- package/node_modules/powershell-utils/package.json +1 -1
- package/node_modules/powershell-utils/readme.md +7 -2
- package/node_modules/ssh2/lib/protocol/crypto/build/Makefile +2 -2
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/.deps/Release/obj.target/sshcrypto/src/binding.o.d +237 -237
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto/src/binding.o +0 -0
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/obj.target/sshcrypto.node +0 -0
- package/node_modules/ssh2/lib/protocol/crypto/build/Release/sshcrypto.node +0 -0
- package/node_modules/ssh2/lib/protocol/crypto/build/sshcrypto.target.mk +14 -14
- package/node_modules/undici/docs/docs/api/Client.md +4 -0
- package/node_modules/undici/docs/docs/api/EnvHttpProxyAgent.md +3 -2
- package/node_modules/undici/docs/docs/api/EventSource.md +4 -0
- package/node_modules/undici/docs/docs/api/Interceptors.md +7 -3
- package/node_modules/undici/docs/docs/api/Socks5ProxyAgent.md +7 -1
- package/node_modules/undici/lib/cache/memory-cache-store.js +2 -2
- package/node_modules/undici/lib/core/symbols.js +2 -0
- package/node_modules/undici/lib/dispatcher/agent.js +7 -2
- package/node_modules/undici/lib/dispatcher/balanced-pool.js +7 -4
- package/node_modules/undici/lib/dispatcher/client-h1.js +12 -4
- package/node_modules/undici/lib/dispatcher/client-h2.js +43 -3
- package/node_modules/undici/lib/dispatcher/client.js +3 -2
- package/node_modules/undici/lib/dispatcher/dispatcher-base.js +13 -1
- package/node_modules/undici/lib/dispatcher/dispatcher.js +15 -1
- package/node_modules/undici/lib/dispatcher/dispatcher1-wrapper.js +3 -0
- package/node_modules/undici/lib/dispatcher/env-http-proxy-agent.js +10 -3
- package/node_modules/undici/lib/dispatcher/proxy-agent.js +18 -1
- package/node_modules/undici/lib/dispatcher/retry-agent.js +3 -0
- package/node_modules/undici/lib/dispatcher/round-robin-pool.js +1 -1
- package/node_modules/undici/lib/dispatcher/socks5-proxy-agent.js +91 -21
- package/node_modules/undici/lib/handler/cache-handler.js +29 -5
- package/node_modules/undici/lib/handler/decorator-handler.js +7 -1
- package/node_modules/undici/lib/handler/deduplication-handler.js +12 -6
- package/node_modules/undici/lib/handler/redirect-handler.js +21 -4
- package/node_modules/undici/lib/handler/retry-handler.js +148 -30
- package/node_modules/undici/lib/interceptor/cache.js +65 -12
- package/node_modules/undici/lib/interceptor/decompress.js +115 -13
- package/node_modules/undici/lib/interceptor/deduplicate.js +5 -4
- package/node_modules/undici/lib/interceptor/dns.js +7 -0
- package/node_modules/undici/lib/interceptor/dump.js +10 -23
- package/node_modules/undici/lib/mock/mock-agent.js +13 -1
- package/node_modules/undici/lib/mock/mock-utils.js +11 -10
- package/node_modules/undici/lib/util/cache.js +45 -3
- package/node_modules/undici/lib/web/cookies/parse.js +150 -147
- package/node_modules/undici/lib/web/eventsource/eventsource-stream.js +28 -1
- package/node_modules/undici/lib/web/eventsource/eventsource.js +13 -3
- package/node_modules/undici/lib/web/fetch/index.js +6 -0
- package/node_modules/undici/lib/web/fetch/request.js +2 -3
- package/node_modules/undici/lib/web/fetch/util.js +6 -1
- package/node_modules/undici/lib/web/webidl/index.js +3 -3
- package/node_modules/undici/lib/web/websocket/connection.js +1 -1
- package/node_modules/undici/lib/web/websocket/permessage-deflate.js +5 -0
- package/node_modules/undici/lib/web/websocket/stream/websocketstream.js +8 -10
- package/node_modules/undici/package.json +3 -3
- package/node_modules/undici/types/client.d.ts +10 -0
- package/node_modules/undici/types/interceptors.d.ts +2 -0
- package/node_modules/undici/types/mock-agent.d.ts +11 -10
- package/node_modules/undici/types/socks5-proxy-agent.d.ts +2 -0
- package/node_modules/undici-types/client.d.ts +8 -3
- package/node_modules/undici-types/connector.d.ts +1 -0
- package/node_modules/undici-types/cookies.d.ts +1 -1
- package/node_modules/undici-types/dispatcher.d.ts +3 -3
- package/node_modules/undici-types/errors.d.ts +10 -0
- package/node_modules/undici-types/fetch.d.ts +5 -1
- package/node_modules/undici-types/handlers.d.ts +2 -0
- package/node_modules/undici-types/interceptors.d.ts +1 -1
- package/node_modules/undici-types/mock-interceptor.d.ts +5 -1
- package/node_modules/undici-types/package.json +1 -1
- package/node_modules/undici-types/proxy-agent.d.ts +7 -0
- package/package.json +2 -2
- package/packaging/macos/build-pkg.sh +53 -0
- package/packaging/macos/preinstall +33 -0
- package/packaging/macos/test-install.sh +51 -0
- package/packaging/macos/test_package.py +74 -0
- package/packaging/macos/uninstall.sh +24 -0
- package/packaging/macos/verify-pkg.py +61 -0
- package/packaging/windows/build-msi.ps1 +153 -0
- package/packaging/windows/test-msi.ps1 +225 -0
- package/packaging/windows/verify-msi.ps1 +74 -0
- package/packaging/windows/vip-next.wxs +79 -0
- package/testdata/installer-fixture/main.go +40 -0
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/NoInfer.cjs.map +0 -1
- package/node_modules/@apollo/client/__cjs/utilities/internal/types/NoInfer.d.cts +0 -35
- package/node_modules/@apollo/client/utilities/internal/types/NoInfer.d.ts +0 -35
- package/node_modules/@apollo/client/utilities/internal/types/NoInfer.js +0 -2
- package/node_modules/@apollo/client/utilities/internal/types/NoInfer.js.map +0 -1
- package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.d.ts.map +0 -1
- package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.js.map +0 -1
- package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.min.js +0 -2
- package/node_modules/lando/node_modules/lru-cache/dist/commonjs/index.min.js.map +0 -7
- package/node_modules/lando/node_modules/lru-cache/dist/esm/index.d.ts.map +0 -1
- package/node_modules/lando/node_modules/lru-cache/dist/esm/index.js.map +0 -1
- package/node_modules/lando/node_modules/lru-cache/dist/esm/index.min.js +0 -2
- package/node_modules/lando/node_modules/lru-cache/dist/esm/index.min.js.map +0 -7
- package/node_modules/lando/node_modules/lru-cache/package.json +0 -93
- /package/node_modules/{lando/node_modules/lru-cache → path-scurry}/LICENSE.md +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/README.md +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.d.ts +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.d.ts.map +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.js +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/commonjs/index.js.map +0 -0
- /package/node_modules/{lando/node_modules/lru-cache → path-scurry}/dist/commonjs/package.json +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.d.ts +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.d.ts.map +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.js +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/dist/esm/index.js.map +0 -0
- /package/node_modules/{lando/node_modules/lru-cache → path-scurry}/dist/esm/package.json +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry/node_modules/lru-cache}/LICENSE.md +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry/node_modules/lru-cache}/dist/commonjs/package.json +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry/node_modules/lru-cache}/dist/esm/package.json +0 -0
- /package/node_modules/{lando/node_modules/path-scurry → path-scurry}/package.json +0 -0
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
import { equal } from "@wry/equality";
|
|
2
|
+
import { Trie } from "@wry/trie";
|
|
1
3
|
import { Kind } from "graphql";
|
|
2
4
|
import { wrap } from "optimism";
|
|
3
5
|
import { addTypenameToDocument, cacheSizes, canonicalStringify, isReference, } from "@apollo/client/utilities";
|
|
4
6
|
import { __DEV__ } from "@apollo/client/utilities/environment";
|
|
5
|
-
import { compact, DeepMerger, getDefaultValues, getFragmentFromSelection, getMainDefinition, getQueryDefinition, isArray, isField, isNonNullObject, makeReference, maybeDeepFreeze, mergeDeepArray, resultKeyNameFromField, shouldInclude, } from "@apollo/client/utilities/internal";
|
|
7
|
+
import { compact, DeepMerger, getDefaultValues, getDirectiveArgValue, getFragmentFromSelection, getMainDefinition, getQueryDefinition, handleIncrementalSymbol, isArray, isDeferredFragment, isField, isNonNullObject, isStreamField, makeReference, maybeDeepFreeze, mergeDeepArray, resultKeyNameFromField, shouldInclude, } from "@apollo/client/utilities/internal";
|
|
6
8
|
import { invariant, newInvariantError, } from "@apollo/client/utilities/invariant";
|
|
7
9
|
import { MissingFieldError } from "../core/types/common.js";
|
|
8
10
|
import { maybeDependOnExistenceOfEntity, supportsResultCaching, } from "./entityStore.js";
|
|
@@ -15,8 +17,11 @@ export class StoreReader {
|
|
|
15
17
|
executeSelectionSet;
|
|
16
18
|
// cached version of executeSubSelectedArray
|
|
17
19
|
executeSubSelectedArray;
|
|
20
|
+
prunePartialStreamArray;
|
|
21
|
+
prunePartialBoundaries;
|
|
18
22
|
config;
|
|
19
23
|
knownResults = new WeakMap();
|
|
24
|
+
keyMaker = new Trie();
|
|
20
25
|
constructor(config) {
|
|
21
26
|
this.config = config;
|
|
22
27
|
// memoized functions in this class will be "garbage-collected"
|
|
@@ -59,44 +64,124 @@ export class StoreReader {
|
|
|
59
64
|
}
|
|
60
65
|
},
|
|
61
66
|
});
|
|
67
|
+
this.prunePartialBoundaries = wrap((options) => this.prunePartialBoundariesImpl(options), {
|
|
68
|
+
max: cacheSizes["inMemoryCache.prunePartialBoundaries"] ||
|
|
69
|
+
20000 /* defaultCacheSizes["inMemoryCache.prunePartialBoundaries"] */,
|
|
70
|
+
makeCacheKey: ({ boundaries, context, selectionSet }) => {
|
|
71
|
+
if (supportsResultCaching(context.store)) {
|
|
72
|
+
return this.keyMaker.lookup(selectionSet, boundaries, context.streamInfo, context.deferInfo);
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
});
|
|
76
|
+
this.prunePartialStreamArray = wrap((options) => {
|
|
77
|
+
const { field, context, path } = options;
|
|
78
|
+
if (isStreamField(field, context.variables)) {
|
|
79
|
+
context.streamInfo?.lookupArray(path).state.depend();
|
|
80
|
+
}
|
|
81
|
+
return this.prunePartialStreamArrayImpl(options);
|
|
82
|
+
}, {
|
|
83
|
+
max: cacheSizes["inMemoryCache.prunePartialStreamArray"] ||
|
|
84
|
+
20000 /* defaultCacheSizes["inMemoryCache.prunePartialStreamArray"] */,
|
|
85
|
+
makeCacheKey: ({ field, context, boundaries }) => {
|
|
86
|
+
if (supportsResultCaching(context.store)) {
|
|
87
|
+
return this.keyMaker.lookup(field, boundaries, context.streamInfo, context.deferInfo);
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
});
|
|
62
91
|
}
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
* identify if any data was missing from the store.
|
|
66
|
-
*/
|
|
67
|
-
diffQueryAgainstStore({ store, query, rootId = "ROOT_QUERY", variables, returnPartialData = true, }) {
|
|
92
|
+
diffQueryAgainstStore({ store, query, rootId = "ROOT_QUERY", variables, returnPartialData = true, ...options }) {
|
|
93
|
+
const returnIncremental = Object.hasOwn(options, handleIncrementalSymbol);
|
|
68
94
|
const policies = this.config.cache.policies;
|
|
69
95
|
variables = compact(getDefaultValues(getQueryDefinition(query)), variables);
|
|
70
96
|
const rootRef = makeReference(rootId);
|
|
71
|
-
const
|
|
97
|
+
const context = {
|
|
98
|
+
store,
|
|
99
|
+
query,
|
|
100
|
+
policies,
|
|
101
|
+
variables,
|
|
102
|
+
varString: canonicalStringify(variables),
|
|
103
|
+
...extractFragmentContext(query, this.config.fragments),
|
|
104
|
+
...options[handleIncrementalSymbol],
|
|
105
|
+
};
|
|
106
|
+
let execResult = this.executeSelectionSet({
|
|
72
107
|
selectionSet: getMainDefinition(query).selectionSet,
|
|
73
108
|
objectOrReference: rootRef,
|
|
74
109
|
enclosingRef: rootRef,
|
|
75
|
-
context
|
|
76
|
-
store,
|
|
77
|
-
query,
|
|
78
|
-
policies,
|
|
79
|
-
variables,
|
|
80
|
-
varString: canonicalStringify(variables),
|
|
81
|
-
...extractFragmentContext(query, this.config.fragments),
|
|
82
|
-
},
|
|
110
|
+
context,
|
|
83
111
|
});
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
112
|
+
// Since executeSelectionSet doesn't know about returnPartialData, we need
|
|
113
|
+
// to perform a 2nd pass over the result to prune any fields inside
|
|
114
|
+
// partial defer boundaries. The "deferPartial" data state tells us that the
|
|
115
|
+
// only part of the result that contributed to its partiality is data inside
|
|
116
|
+
// a defer boundary.
|
|
117
|
+
if (returnIncremental && shouldPrune(execResult, context)) {
|
|
118
|
+
const pruned = this.prunePartialBoundaries({
|
|
119
|
+
selectionSet: getMainDefinition(query).selectionSet,
|
|
120
|
+
data: execResult.result,
|
|
121
|
+
boundaries: execResult.partialBoundaries,
|
|
122
|
+
context,
|
|
123
|
+
path: [],
|
|
124
|
+
});
|
|
125
|
+
const changed = execResult.result !== pruned.result;
|
|
126
|
+
// It's possible that pruning didn't actually change the result which can
|
|
127
|
+
// happen if a defer boundary is misclassified as "deferPartial" instead
|
|
128
|
+
// of "streaming" (sibling defer boundaries with overlapping selection
|
|
129
|
+
// sets, one of which is complete). In this case, pruning corrects the
|
|
130
|
+
// dataState to streaming instead of leaving it as partial. If we tolerate
|
|
131
|
+
// partial results and pruning changed the result by dropping fields, then
|
|
132
|
+
// we want to keep the original execResult which contains the partial
|
|
133
|
+
// data.
|
|
134
|
+
if (!changed || !returnPartialData) {
|
|
135
|
+
// Omit `missing` property since pruning puts it in a state that doesn't
|
|
136
|
+
// report missing fields.
|
|
137
|
+
execResult = {
|
|
138
|
+
result: pruned.result,
|
|
139
|
+
partialBoundaries: execResult.partialBoundaries,
|
|
140
|
+
dataState: pruned.dataState,
|
|
141
|
+
};
|
|
142
|
+
}
|
|
87
143
|
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
144
|
+
let { result, dataState, missing } = execResult;
|
|
145
|
+
// Evaluate this condition before we start mucking with dataState for the
|
|
146
|
+
// publicly returned value
|
|
147
|
+
const includeMissing = !!missing &&
|
|
148
|
+
// We don't need to report missing fields inside defer boundaries since
|
|
149
|
+
// the "streaming" dataState tells us that the only missing fields in
|
|
150
|
+
// the object is inside a defer boundary.
|
|
151
|
+
(dataState !== "streaming" || !returnIncremental);
|
|
152
|
+
// If we get all root @defer boundaries with an empty result, report it as
|
|
153
|
+
// empty instead of streaming.
|
|
154
|
+
if (dataState === "streaming" && Object.keys(result).length === 0) {
|
|
155
|
+
dataState = "empty";
|
|
156
|
+
}
|
|
157
|
+
let missingError;
|
|
158
|
+
if (dataState === "deferPartial" ||
|
|
159
|
+
dataState === "streamPartial" ||
|
|
160
|
+
(dataState === "streaming" && !returnIncremental)) {
|
|
161
|
+
dataState = "partial";
|
|
162
|
+
}
|
|
163
|
+
if (dataState === "partial" && !returnPartialData) {
|
|
164
|
+
dataState = "empty";
|
|
165
|
+
}
|
|
166
|
+
const complete = dataState === "complete";
|
|
167
|
+
const keepResult = complete ||
|
|
168
|
+
dataState === "streaming" ||
|
|
169
|
+
(returnPartialData && Object.keys(result).length);
|
|
170
|
+
const diffResult = {
|
|
171
|
+
result: keepResult ? result : null,
|
|
97
172
|
complete,
|
|
98
|
-
missing
|
|
173
|
+
get missing() {
|
|
174
|
+
if (includeMissing) {
|
|
175
|
+
missingError ||= new MissingFieldError(firstMissing(missing), missing, query, variables);
|
|
176
|
+
}
|
|
177
|
+
return missingError;
|
|
178
|
+
},
|
|
99
179
|
};
|
|
180
|
+
if (returnIncremental) {
|
|
181
|
+
diffResult.dataState =
|
|
182
|
+
dataState;
|
|
183
|
+
}
|
|
184
|
+
return diffResult;
|
|
100
185
|
}
|
|
101
186
|
isFresh(result, parent, selectionSet, context) {
|
|
102
187
|
if (supportsResultCaching(context.store) &&
|
|
@@ -115,14 +200,18 @@ export class StoreReader {
|
|
|
115
200
|
!context.store.has(objectOrReference.__ref)) {
|
|
116
201
|
return {
|
|
117
202
|
result: {},
|
|
203
|
+
dataState: "empty",
|
|
118
204
|
missing: `Dangling reference to missing ${objectOrReference.__ref} object`,
|
|
205
|
+
partialBoundaries: new PartialBoundaries(),
|
|
119
206
|
};
|
|
120
207
|
}
|
|
121
208
|
const { variables, policies, store } = context;
|
|
122
209
|
const typename = store.getFieldValue(objectOrReference, "__typename");
|
|
123
210
|
const objectsToMerge = [];
|
|
211
|
+
let dataState;
|
|
124
212
|
let missing;
|
|
125
213
|
const missingMerger = new DeepMerger();
|
|
214
|
+
const partialBoundaries = new PartialBoundaries();
|
|
126
215
|
if (typeof typename === "string" && !policies.rootIdsByTypename[typename]) {
|
|
127
216
|
// Ensure we always include a default value for the __typename
|
|
128
217
|
// field, if we have one. Note that this field can be overridden by other
|
|
@@ -135,7 +224,7 @@ export class StoreReader {
|
|
|
135
224
|
[resultName]: result.missing,
|
|
136
225
|
});
|
|
137
226
|
}
|
|
138
|
-
return result
|
|
227
|
+
return result;
|
|
139
228
|
}
|
|
140
229
|
const workSet = new Set(selectionSet.selections);
|
|
141
230
|
workSet.forEach((selection) => {
|
|
@@ -153,36 +242,75 @@ export class StoreReader {
|
|
|
153
242
|
const resultName = resultKeyNameFromField(selection);
|
|
154
243
|
if (fieldValue === void 0) {
|
|
155
244
|
if (!addTypenameToDocument.added(selection)) {
|
|
245
|
+
const id = isReference(objectOrReference) ? objectOrReference.__ref
|
|
246
|
+
: objectOrReference ? policies.identify(objectOrReference)[0]
|
|
247
|
+
: undefined;
|
|
156
248
|
missing = missingMerger.merge(missing, {
|
|
157
|
-
[resultName]: `Can't find field '${selection.name.value}' on ${
|
|
158
|
-
|
|
159
|
-
:
|
|
249
|
+
[resultName]: `Can't find field '${selection.name.value}' on ${id ?
|
|
250
|
+
`${id} object`
|
|
251
|
+
: `object ${JSON.stringify(objectOrReference || {}, null, 2)}`}`,
|
|
160
252
|
});
|
|
253
|
+
dataState = mergeDataState(dataState, "empty");
|
|
161
254
|
}
|
|
162
255
|
}
|
|
163
256
|
else if (isArray(fieldValue)) {
|
|
164
257
|
if (fieldValue.length > 0) {
|
|
165
|
-
|
|
258
|
+
const execResult = handleMissing(this.executeSubSelectedArray({
|
|
166
259
|
field: selection,
|
|
167
260
|
array: fieldValue,
|
|
168
261
|
enclosingRef,
|
|
169
262
|
context,
|
|
170
263
|
}), resultName);
|
|
264
|
+
fieldValue = execResult.result;
|
|
265
|
+
dataState = mergeDataState(dataState, execResult.dataState);
|
|
266
|
+
partialBoundaries.set(resultName, execResult.partialBoundaries);
|
|
267
|
+
}
|
|
268
|
+
else {
|
|
269
|
+
dataState = mergeDataState(dataState, "complete");
|
|
171
270
|
}
|
|
172
271
|
}
|
|
173
272
|
else if (!selection.selectionSet) {
|
|
174
|
-
//
|
|
273
|
+
// Auto-inserted __typename should not affect dataState (see empty
|
|
274
|
+
// @defer boundaries, which must stay "empty" → parent "streaming").
|
|
275
|
+
if (!addTypenameToDocument.added(selection)) {
|
|
276
|
+
dataState = mergeDataState(dataState, "complete");
|
|
277
|
+
}
|
|
175
278
|
}
|
|
176
279
|
else if (fieldValue != null) {
|
|
280
|
+
if (__DEV__) {
|
|
281
|
+
const fieldName = selection.name.value;
|
|
282
|
+
if (typename) {
|
|
283
|
+
const policy = policies["getFieldPolicy"](typename, fieldName);
|
|
284
|
+
if (policy?.scalar) {
|
|
285
|
+
__DEV__ && invariant.warn(119, `${typename}.${fieldName}`, policy.scalar);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
}
|
|
177
289
|
// In this case, because we know the field has a selection set,
|
|
178
290
|
// it must be trying to query a GraphQLObjectType, which is why
|
|
179
291
|
// fieldValue must be != null.
|
|
180
|
-
|
|
292
|
+
const execResult = handleMissing(this.executeSelectionSet({
|
|
181
293
|
selectionSet: selection.selectionSet,
|
|
182
294
|
objectOrReference: fieldValue,
|
|
183
295
|
enclosingRef: isReference(fieldValue) ? fieldValue : enclosingRef,
|
|
184
296
|
context,
|
|
185
297
|
}), resultName);
|
|
298
|
+
fieldValue = execResult.result;
|
|
299
|
+
partialBoundaries.set(resultName, execResult.partialBoundaries);
|
|
300
|
+
// If the object's fields resolved to an "empty" dataState (e.g. no
|
|
301
|
+
// field resolved with a non-undefined value), but the fieldValue
|
|
302
|
+
// object itself is present, this object should be considered
|
|
303
|
+
// partial instead of empty. This also ensures defer boundaries that
|
|
304
|
+
// select this object remain as partial defer boundaries rather than
|
|
305
|
+
// mistakenly get reported as streaming. This is especially necessary
|
|
306
|
+
// when combined with GraphQL Codegen which generates its type and
|
|
307
|
+
// relies on the outer object to be absent when its fields haven't
|
|
308
|
+
// streamed in. Reporting the defer boundary as "streaming" instead of
|
|
309
|
+
// "partial" would otherwise have the potential to cause runtime
|
|
310
|
+
// crashes since the runtime values and types would not line up
|
|
311
|
+
// properly (types expect object to be undefined, but its instead
|
|
312
|
+
// present without its fields)
|
|
313
|
+
dataState = mergeDataState(dataState, execResult.dataState === "empty" ? "partial" : execResult.dataState);
|
|
186
314
|
}
|
|
187
315
|
if (fieldValue !== void 0) {
|
|
188
316
|
objectsToMerge.push({ [resultName]: fieldValue });
|
|
@@ -191,15 +319,60 @@ export class StoreReader {
|
|
|
191
319
|
else {
|
|
192
320
|
const fragment = getFragmentFromSelection(selection, context.lookupFragment);
|
|
193
321
|
if (!fragment && selection.kind === Kind.FRAGMENT_SPREAD) {
|
|
194
|
-
throw newInvariantError(
|
|
322
|
+
throw newInvariantError(120, selection.name.value);
|
|
195
323
|
}
|
|
196
324
|
if (fragment && policies.fragmentMatches(fragment, typename)) {
|
|
197
|
-
|
|
325
|
+
const isDeferBoundary = isDeferredFragment(selection, context.variables);
|
|
326
|
+
// Prior to 4.3, this branch just flattened the fragment's
|
|
327
|
+
// selectionSet into the existing workSet so that it continued
|
|
328
|
+
// iterating as if the fragment didn't exist. The cache is
|
|
329
|
+
// incremental aware as of 4.3 and as such, we need to resolve the
|
|
330
|
+
// per-fragment selection set so that we can properly strip partial
|
|
331
|
+
// defer fragment data when returnPartialData is false. We need to
|
|
332
|
+
// call execSelectionSetImpl directly (non-cached version) so that we
|
|
333
|
+
// scope the dataState correctly for its fields. Using the cached
|
|
334
|
+
// executeSelectionSet can result in cache poisoning when combined
|
|
335
|
+
// with the fragment registry where it might cache either a) an error
|
|
336
|
+
// thrown when a registered fragment references a named fragment that
|
|
337
|
+
// the query is expected to supply and doesn't or b) resolve to the
|
|
338
|
+
// wrong data result when combined with queries that provide different
|
|
339
|
+
// implementations of the same fragment (see inmemory/fragmentRegistry and
|
|
340
|
+
// cache.diff/incremental tests which provide guards against this
|
|
341
|
+
// behavior).
|
|
342
|
+
const execResult = this.execSelectionSetImpl({
|
|
343
|
+
selectionSet: fragment.selectionSet,
|
|
344
|
+
objectOrReference,
|
|
345
|
+
enclosingRef,
|
|
346
|
+
context,
|
|
347
|
+
});
|
|
348
|
+
const { result, dataState: nextDataState } = execResult;
|
|
349
|
+
partialBoundaries.merge(execResult.partialBoundaries);
|
|
350
|
+
if (result !== void 0) {
|
|
351
|
+
objectsToMerge.push(result);
|
|
352
|
+
}
|
|
353
|
+
if (execResult.missing) {
|
|
354
|
+
missing = missingMerger.merge(missing, execResult.missing);
|
|
355
|
+
}
|
|
356
|
+
if (isDeferBoundary &&
|
|
357
|
+
(nextDataState === "partial" || nextDataState === "empty")) {
|
|
358
|
+
partialBoundaries.add(selection);
|
|
359
|
+
}
|
|
360
|
+
dataState = mergeDataState(dataState, isDeferBoundary ?
|
|
361
|
+
nextDataState === "empty" ? "streaming"
|
|
362
|
+
: nextDataState === "partial" ? "deferPartial"
|
|
363
|
+
: nextDataState
|
|
364
|
+
: nextDataState);
|
|
198
365
|
}
|
|
199
366
|
}
|
|
200
367
|
});
|
|
368
|
+
dataState ||= "complete";
|
|
201
369
|
const result = mergeDeepArray(objectsToMerge);
|
|
202
|
-
const finalResult = {
|
|
370
|
+
const finalResult = {
|
|
371
|
+
result,
|
|
372
|
+
missing,
|
|
373
|
+
dataState,
|
|
374
|
+
partialBoundaries,
|
|
375
|
+
};
|
|
203
376
|
const frozen = maybeDeepFreeze(finalResult);
|
|
204
377
|
// Store this result with its selection set so that we can quickly
|
|
205
378
|
// recognize it again in the StoreReader#isFresh method.
|
|
@@ -210,8 +383,11 @@ export class StoreReader {
|
|
|
210
383
|
}
|
|
211
384
|
// Uncached version of executeSubSelectedArray.
|
|
212
385
|
execSubSelectedArrayImpl({ field, array, enclosingRef, context, }) {
|
|
386
|
+
let dataState = "complete";
|
|
213
387
|
let missing;
|
|
214
388
|
let missingMerger = new DeepMerger();
|
|
389
|
+
const partialBoundaries = new PartialBoundaries();
|
|
390
|
+
const isStreamed = isStreamField(field, context.variables);
|
|
215
391
|
function handleMissing(childResult, i) {
|
|
216
392
|
if (childResult.missing) {
|
|
217
393
|
missing = missingMerger.merge(missing, { [i]: childResult.missing });
|
|
@@ -226,23 +402,36 @@ export class StoreReader {
|
|
|
226
402
|
if (item === null) {
|
|
227
403
|
return null;
|
|
228
404
|
}
|
|
405
|
+
let execResult;
|
|
229
406
|
// This is a nested array, recurse
|
|
230
407
|
if (isArray(item)) {
|
|
231
|
-
|
|
408
|
+
execResult = this.executeSubSelectedArray({
|
|
232
409
|
field,
|
|
233
410
|
array: item,
|
|
234
411
|
enclosingRef,
|
|
235
412
|
context,
|
|
236
|
-
})
|
|
413
|
+
});
|
|
237
414
|
}
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
return handleMissing(this.executeSelectionSet({
|
|
415
|
+
else if (field.selectionSet) {
|
|
416
|
+
execResult = this.executeSelectionSet({
|
|
241
417
|
selectionSet: field.selectionSet,
|
|
242
418
|
objectOrReference: item,
|
|
243
419
|
enclosingRef: isReference(item) ? item : enclosingRef,
|
|
244
420
|
context,
|
|
245
|
-
})
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
if (execResult) {
|
|
424
|
+
const { dataState: nextDataState } = execResult;
|
|
425
|
+
partialBoundaries.set(i, nextDataState === "partial" ?
|
|
426
|
+
// avoid mutating the execResult partialBoundaries object
|
|
427
|
+
execResult.partialBoundaries.clone().add(field)
|
|
428
|
+
: execResult.partialBoundaries);
|
|
429
|
+
dataState = mergeDataState(dataState, isStreamed ?
|
|
430
|
+
nextDataState === "partial" ?
|
|
431
|
+
"streamPartial"
|
|
432
|
+
: nextDataState
|
|
433
|
+
: nextDataState);
|
|
434
|
+
return handleMissing(execResult, i);
|
|
246
435
|
}
|
|
247
436
|
if (__DEV__) {
|
|
248
437
|
assertSelectionSetForIdValue(context.store, field, item);
|
|
@@ -251,9 +440,162 @@ export class StoreReader {
|
|
|
251
440
|
});
|
|
252
441
|
return {
|
|
253
442
|
result: array,
|
|
443
|
+
dataState,
|
|
254
444
|
missing,
|
|
445
|
+
partialBoundaries,
|
|
255
446
|
};
|
|
256
447
|
}
|
|
448
|
+
prunePartialBoundariesImpl({ boundaries, context, data, path, selectionSet, }) {
|
|
449
|
+
const { variables, lookupFragment, policies } = context;
|
|
450
|
+
if (data == null || !boundaries) {
|
|
451
|
+
return { result: data, dataState: "complete" };
|
|
452
|
+
}
|
|
453
|
+
const merger = new DeepMerger();
|
|
454
|
+
let changed = false;
|
|
455
|
+
let dataState = "complete";
|
|
456
|
+
const result = {};
|
|
457
|
+
// __typename might not be part of the selection set, so preserve it when
|
|
458
|
+
// available, otherwise it gets removed since it's never visited when
|
|
459
|
+
// iterating the selection set.
|
|
460
|
+
if (Object.hasOwn(data, "__typename")) {
|
|
461
|
+
result.__typename = data.__typename;
|
|
462
|
+
}
|
|
463
|
+
const workSet = new Set(selectionSet.selections);
|
|
464
|
+
workSet.forEach((selection) => {
|
|
465
|
+
if (!shouldInclude(selection, variables))
|
|
466
|
+
return;
|
|
467
|
+
if (isField(selection)) {
|
|
468
|
+
const resultName = resultKeyNameFromField(selection);
|
|
469
|
+
if (!Object.hasOwn(data, resultName)) {
|
|
470
|
+
return;
|
|
471
|
+
}
|
|
472
|
+
const fieldValue = data[resultName];
|
|
473
|
+
if (Array.isArray(fieldValue)) {
|
|
474
|
+
const pruned = this.prunePartialStreamArray({
|
|
475
|
+
field: selection,
|
|
476
|
+
array: fieldValue,
|
|
477
|
+
boundaries: boundaries.getChild(resultName),
|
|
478
|
+
context,
|
|
479
|
+
path: path.concat(resultName),
|
|
480
|
+
});
|
|
481
|
+
changed ||= pruned.result !== fieldValue;
|
|
482
|
+
result[resultName] = pruned.result;
|
|
483
|
+
dataState = mergeDataState(dataState, pruned.dataState);
|
|
484
|
+
}
|
|
485
|
+
else if (!selection.selectionSet) {
|
|
486
|
+
result[resultName] = fieldValue;
|
|
487
|
+
}
|
|
488
|
+
else {
|
|
489
|
+
const pruned = this.prunePartialBoundaries({
|
|
490
|
+
data: fieldValue,
|
|
491
|
+
selectionSet: selection.selectionSet,
|
|
492
|
+
boundaries: boundaries.getChild(resultName),
|
|
493
|
+
context,
|
|
494
|
+
path: path.concat(resultName),
|
|
495
|
+
});
|
|
496
|
+
changed ||= pruned.result !== fieldValue;
|
|
497
|
+
dataState = mergeDataState(dataState, pruned.dataState);
|
|
498
|
+
// A response key can be selected by more than one selection (e.g. a
|
|
499
|
+
// field and an overlapping fragment), so merge their kept fields.
|
|
500
|
+
result[resultName] =
|
|
501
|
+
Object.hasOwn(result, resultName) ?
|
|
502
|
+
merger.merge(result[resultName], pruned.result)
|
|
503
|
+
: pruned.result;
|
|
504
|
+
}
|
|
505
|
+
return;
|
|
506
|
+
}
|
|
507
|
+
// Note: we do NOT set `changed` to true anywhere in this branch of the
|
|
508
|
+
// conditional, despite the fact that we might have encountered a
|
|
509
|
+
// partial @defer boundary. Dropping a fragment does not guarantee keys
|
|
510
|
+
// are actually dropped which can happen when overlapping sibling
|
|
511
|
+
// selections contribute to the construction of the object. The final
|
|
512
|
+
// Object.keys(result).length check actually detects whether keys were
|
|
513
|
+
// dropped or not.
|
|
514
|
+
const fragment = getFragmentFromSelection(selection, lookupFragment);
|
|
515
|
+
let prune = false;
|
|
516
|
+
if (context.deferInfo && isDeferredFragment(selection, variables)) {
|
|
517
|
+
const directive = selection.directives?.find((d) => d.name.value === "defer");
|
|
518
|
+
const label = directive && getDirectiveArgValue(directive, "label", Kind.STRING);
|
|
519
|
+
prune = !!context.deferInfo.peekArray(path.concat(label || []));
|
|
520
|
+
}
|
|
521
|
+
if (fragment && policies.fragmentMatches(fragment, data.__typename)) {
|
|
522
|
+
if (boundaries.has(selection) || prune) {
|
|
523
|
+
dataState = mergeDataState(dataState, "streaming");
|
|
524
|
+
}
|
|
525
|
+
else {
|
|
526
|
+
fragment.selectionSet.selections.forEach(workSet.add, workSet);
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
});
|
|
530
|
+
if (Object.keys(result).length !== Object.keys(data).length) {
|
|
531
|
+
changed = true;
|
|
532
|
+
}
|
|
533
|
+
else if (changed && boundaries.hasSelections()) {
|
|
534
|
+
// Overlapping siblings may rebuild the same fields under a new object
|
|
535
|
+
// identity (e.g. changed === true) after a partial @defer is skipped.
|
|
536
|
+
// We perform a deep equality check to verify whether anything was
|
|
537
|
+
// actually dropped by the partial @defer fragment.
|
|
538
|
+
changed = !equal(result, data);
|
|
539
|
+
}
|
|
540
|
+
return { result: changed ? result : data, dataState };
|
|
541
|
+
}
|
|
542
|
+
prunePartialStreamArrayImpl({ field, array, boundaries, context, path, }) {
|
|
543
|
+
if (!boundaries)
|
|
544
|
+
return { result: array, dataState: "complete" };
|
|
545
|
+
let changed = false;
|
|
546
|
+
let dataState = "complete";
|
|
547
|
+
let pruned = [];
|
|
548
|
+
const state = context.streamInfo?.peekArray(path)?.state;
|
|
549
|
+
const length = Math.min(array.length, state?.truncate ? state.streamPosition : Number.MAX_SAFE_INTEGER);
|
|
550
|
+
for (let i = 0; i < length; i++) {
|
|
551
|
+
const item = array[i];
|
|
552
|
+
let prunedResult = {
|
|
553
|
+
result: item,
|
|
554
|
+
dataState: "complete",
|
|
555
|
+
};
|
|
556
|
+
const boundary = boundaries.getChild(i);
|
|
557
|
+
if (boundary?.has(field)) {
|
|
558
|
+
// The presence of streamInfo determines how we truncate partial
|
|
559
|
+
// stream arrays. Stream info is only given to cache.diff during
|
|
560
|
+
// in-flight requests so we want keep items in the array equal to the
|
|
561
|
+
// total that have streamed in (this is represented by streamPosition
|
|
562
|
+
// above). For all other cache reads, partial stream boundaries are
|
|
563
|
+
// pruned back to an empty array.
|
|
564
|
+
if (state) {
|
|
565
|
+
state.truncate = true;
|
|
566
|
+
pruned = pruned.slice(0, state.streamPosition);
|
|
567
|
+
}
|
|
568
|
+
else {
|
|
569
|
+
pruned = [];
|
|
570
|
+
dataState = "complete";
|
|
571
|
+
}
|
|
572
|
+
break;
|
|
573
|
+
}
|
|
574
|
+
if (Array.isArray(item)) {
|
|
575
|
+
prunedResult = this.prunePartialStreamArray({
|
|
576
|
+
field,
|
|
577
|
+
array: item,
|
|
578
|
+
boundaries: boundaries.getChild(i),
|
|
579
|
+
context,
|
|
580
|
+
path: path.concat(i),
|
|
581
|
+
});
|
|
582
|
+
}
|
|
583
|
+
else if (field.selectionSet) {
|
|
584
|
+
prunedResult = this.prunePartialBoundaries({
|
|
585
|
+
data: item,
|
|
586
|
+
selectionSet: field.selectionSet,
|
|
587
|
+
boundaries: boundaries.getChild(i),
|
|
588
|
+
context,
|
|
589
|
+
path: path.concat(i),
|
|
590
|
+
});
|
|
591
|
+
}
|
|
592
|
+
pruned.push(prunedResult.result);
|
|
593
|
+
changed ||= prunedResult.result !== item;
|
|
594
|
+
dataState = mergeDataState(dataState, prunedResult.dataState);
|
|
595
|
+
}
|
|
596
|
+
changed ||= pruned.length !== array.length;
|
|
597
|
+
return { result: changed ? pruned : array, dataState };
|
|
598
|
+
}
|
|
257
599
|
}
|
|
258
600
|
function firstMissing(tree) {
|
|
259
601
|
try {
|
|
@@ -274,7 +616,7 @@ function assertSelectionSetForIdValue(store, field, fieldValue) {
|
|
|
274
616
|
if (isNonNullObject(value)) {
|
|
275
617
|
invariant(
|
|
276
618
|
!isReference(value),
|
|
277
|
-
|
|
619
|
+
121,
|
|
278
620
|
getTypenameFromStoreObject(store, value),
|
|
279
621
|
field.name.value
|
|
280
622
|
);
|
|
@@ -283,4 +625,102 @@ function assertSelectionSetForIdValue(store, field, fieldValue) {
|
|
|
283
625
|
});
|
|
284
626
|
}
|
|
285
627
|
}
|
|
628
|
+
// We deliberately leave `returnPartialData` out of `executeSelectionSet`'s
|
|
629
|
+
// cache key. `isFresh` runs during writes and cannot provide a reliable value
|
|
630
|
+
// for this option, so including it would prevent a reliable cache hit.
|
|
631
|
+
//
|
|
632
|
+
// When `returnPartialData` is false, `diffQueryAgainstStore` prunes data from
|
|
633
|
+
// partial @defer boundaries after reading the cached result. `PartialBoundaries`
|
|
634
|
+
// records the selection paths needed for that pass, including empty nodes along
|
|
635
|
+
// a path. Overlapping non-deferred selections must still be rebuilt so fields
|
|
636
|
+
// contributed only by a partial deferred sibling are removed. The prune pass
|
|
637
|
+
// can then skip unrelated result branches.
|
|
638
|
+
class PartialBoundaries {
|
|
639
|
+
selections = new Set();
|
|
640
|
+
children = new Map();
|
|
641
|
+
add(selection) {
|
|
642
|
+
this.selections.add(selection);
|
|
643
|
+
return this;
|
|
644
|
+
}
|
|
645
|
+
has(selection) {
|
|
646
|
+
return this.selections.has(selection);
|
|
647
|
+
}
|
|
648
|
+
hasSelections() {
|
|
649
|
+
return this.selections.size > 0;
|
|
650
|
+
}
|
|
651
|
+
getChild(key) {
|
|
652
|
+
return this.children.get(key);
|
|
653
|
+
}
|
|
654
|
+
clone() {
|
|
655
|
+
return new PartialBoundaries().merge(this);
|
|
656
|
+
}
|
|
657
|
+
set(key, boundary) {
|
|
658
|
+
const child = this.getChild(key);
|
|
659
|
+
this.children.set(key,
|
|
660
|
+
// Create a new PartialBoundaries instance to avoid mutating any cached
|
|
661
|
+
// execResult partialBoundaries objects
|
|
662
|
+
child ? child.clone().merge(boundary) : boundary);
|
|
663
|
+
}
|
|
664
|
+
merge(boundaries) {
|
|
665
|
+
boundaries.selections.forEach((selection) => this.add(selection));
|
|
666
|
+
boundaries.children.forEach((child, key) => this.set(key, child));
|
|
667
|
+
return this;
|
|
668
|
+
}
|
|
669
|
+
}
|
|
670
|
+
function shouldPrune({ dataState }, context) {
|
|
671
|
+
if (dataState === "deferPartial" || dataState === "streamPartial") {
|
|
672
|
+
return true;
|
|
673
|
+
}
|
|
674
|
+
if (dataState === "complete" || dataState === "streaming") {
|
|
675
|
+
return !!(
|
|
676
|
+
// If the last cache write repaired a partial @stream array to a
|
|
677
|
+
// complete array, the stream array might contain stale entries after
|
|
678
|
+
// the last written value. We only want to deliver the results up to
|
|
679
|
+
// the index the network wrote so we need to prune it too.
|
|
680
|
+
(context.streamInfo ||
|
|
681
|
+
// The network hasn't delivered these @defer boundaries yet, so prune
|
|
682
|
+
// the (possibly complete) cached data sitting at them.
|
|
683
|
+
context.deferInfo));
|
|
684
|
+
}
|
|
685
|
+
return false;
|
|
686
|
+
}
|
|
687
|
+
// Describes the data state transitions that change the running state when it's
|
|
688
|
+
// combined with the next data state. Omitted object values represent
|
|
689
|
+
// "impossible" merges where the data state should remain the same.
|
|
690
|
+
const DATA_STATE_MERGES = {
|
|
691
|
+
empty: {
|
|
692
|
+
complete: "partial",
|
|
693
|
+
deferPartial: "partial",
|
|
694
|
+
streaming: "partial",
|
|
695
|
+
streamPartial: "partial",
|
|
696
|
+
},
|
|
697
|
+
deferPartial: {
|
|
698
|
+
empty: "partial",
|
|
699
|
+
},
|
|
700
|
+
streamPartial: {
|
|
701
|
+
deferPartial: "deferPartial",
|
|
702
|
+
empty: "partial",
|
|
703
|
+
},
|
|
704
|
+
streaming: {
|
|
705
|
+
deferPartial: "deferPartial",
|
|
706
|
+
empty: "partial",
|
|
707
|
+
streamPartial: "streamPartial",
|
|
708
|
+
},
|
|
709
|
+
complete: {
|
|
710
|
+
deferPartial: "deferPartial",
|
|
711
|
+
streaming: "streaming",
|
|
712
|
+
streamPartial: "streamPartial",
|
|
713
|
+
empty: "partial",
|
|
714
|
+
},
|
|
715
|
+
partial: {},
|
|
716
|
+
};
|
|
717
|
+
function mergeDataState(current, next) {
|
|
718
|
+
if (next === "partial") {
|
|
719
|
+
return "partial";
|
|
720
|
+
}
|
|
721
|
+
if (!current || current === next) {
|
|
722
|
+
return next;
|
|
723
|
+
}
|
|
724
|
+
return DATA_STATE_MERGES[current][next] || current;
|
|
725
|
+
}
|
|
286
726
|
//# sourceMappingURL=readFromStore.js.map
|