@apollo/client 3.8.1 → 3.8.3
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/apollo-client.cjs +708 -575
- package/apollo-client.cjs.map +1 -1
- package/apollo-client.min.cjs +1 -1
- package/cache/cache.cjs +253 -191
- package/cache/cache.cjs.map +1 -1
- package/cache/cache.cjs.native.js +253 -191
- package/cache/core/cache.d.ts +4 -4
- package/cache/core/cache.d.ts.map +1 -1
- package/cache/core/cache.js +10 -7
- package/cache/core/cache.js.map +1 -1
- package/cache/core/types/Cache.d.ts +3 -3
- package/cache/core/types/Cache.d.ts.map +1 -1
- package/cache/core/types/Cache.js +0 -1
- package/cache/core/types/Cache.js.map +1 -1
- package/cache/core/types/DataProxy.d.ts +6 -6
- package/cache/core/types/DataProxy.d.ts.map +1 -1
- package/cache/core/types/DataProxy.js.map +1 -1
- package/cache/core/types/common.d.ts +3 -3
- package/cache/core/types/common.d.ts.map +1 -1
- package/cache/core/types/common.js.map +1 -1
- package/cache/index.d.ts +20 -20
- package/cache/index.d.ts.map +1 -1
- package/cache/index.js +13 -13
- package/cache/index.js.map +1 -1
- package/cache/inmemory/entityStore.d.ts +6 -6
- package/cache/inmemory/entityStore.d.ts.map +1 -1
- package/cache/inmemory/entityStore.js +38 -30
- package/cache/inmemory/entityStore.js.map +1 -1
- package/cache/inmemory/fixPolyfills.native.d.ts.map +1 -1
- package/cache/inmemory/fixPolyfills.native.js +10 -9
- package/cache/inmemory/fixPolyfills.native.js.map +1 -1
- package/cache/inmemory/fragmentRegistry.d.ts.map +1 -1
- package/cache/inmemory/fragmentRegistry.js +6 -4
- package/cache/inmemory/fragmentRegistry.js.map +1 -1
- package/cache/inmemory/helpers.d.ts +6 -6
- package/cache/inmemory/helpers.d.ts.map +1 -1
- package/cache/inmemory/helpers.js +16 -14
- package/cache/inmemory/helpers.js.map +1 -1
- package/cache/inmemory/inMemoryCache.d.ts +9 -9
- package/cache/inmemory/inMemoryCache.d.ts.map +1 -1
- package/cache/inmemory/inMemoryCache.js +29 -33
- package/cache/inmemory/inMemoryCache.js.map +1 -1
- package/cache/inmemory/key-extractor.d.ts.map +1 -1
- package/cache/inmemory/key-extractor.js +55 -49
- package/cache/inmemory/key-extractor.js.map +1 -1
- package/cache/inmemory/object-canon.d.ts.map +1 -1
- package/cache/inmemory/object-canon.js +5 -5
- package/cache/inmemory/object-canon.js.map +1 -1
- package/cache/inmemory/policies.d.ts +6 -6
- package/cache/inmemory/policies.d.ts.map +1 -1
- package/cache/inmemory/policies.js +74 -45
- package/cache/inmemory/policies.js.map +1 -1
- package/cache/inmemory/reactiveVars.d.ts +1 -1
- package/cache/inmemory/reactiveVars.d.ts.map +1 -1
- package/cache/inmemory/reactiveVars.js +5 -5
- package/cache/inmemory/reactiveVars.js.map +1 -1
- package/cache/inmemory/readFromStore.d.ts +7 -7
- package/cache/inmemory/readFromStore.d.ts.map +1 -1
- package/cache/inmemory/readFromStore.js +21 -17
- package/cache/inmemory/readFromStore.js.map +1 -1
- package/cache/inmemory/types.d.ts +7 -7
- package/cache/inmemory/types.d.ts.map +1 -1
- package/cache/inmemory/types.js +0 -2
- package/cache/inmemory/types.js.map +1 -1
- package/cache/inmemory/writeToStore.d.ts +7 -7
- package/cache/inmemory/writeToStore.d.ts.map +1 -1
- package/cache/inmemory/writeToStore.js +40 -30
- package/cache/inmemory/writeToStore.js.map +1 -1
- package/config/jest/setup.d.ts +2 -2
- package/config/jest/setup.js +5 -5
- package/config/jest/setup.js.map +1 -1
- package/core/ApolloClient.d.ts +12 -11
- package/core/ApolloClient.d.ts.map +1 -1
- package/core/ApolloClient.js +75 -57
- package/core/ApolloClient.js.map +1 -1
- package/core/LocalState.d.ts +6 -6
- package/core/LocalState.d.ts.map +1 -1
- package/core/LocalState.js +17 -16
- package/core/LocalState.js.map +1 -1
- package/core/ObservableQuery.d.ts +12 -10
- package/core/ObservableQuery.d.ts.map +1 -1
- package/core/ObservableQuery.js +57 -38
- package/core/ObservableQuery.js.map +1 -1
- package/core/QueryInfo.d.ts +11 -11
- package/core/QueryInfo.d.ts.map +1 -1
- package/core/QueryInfo.js +28 -34
- package/core/QueryInfo.js.map +1 -1
- package/core/QueryManager.d.ts +10 -10
- package/core/QueryManager.d.ts.map +1 -1
- package/core/QueryManager.js +117 -93
- package/core/QueryManager.js.map +1 -1
- package/core/core.cjs +266 -206
- package/core/core.cjs.map +1 -1
- package/core/core.cjs.native.js +266 -206
- package/core/networkStatus.js.map +1 -1
- package/core/types.d.ts +13 -13
- package/core/types.d.ts.map +1 -1
- package/core/types.js +0 -1
- package/core/types.js.map +1 -1
- package/core/watchQueryOptions.d.ts +11 -11
- package/core/watchQueryOptions.d.ts.map +1 -1
- package/core/watchQueryOptions.js.map +1 -1
- package/dev/dev.cjs +44 -40
- package/dev/dev.cjs.map +1 -1
- package/dev/dev.cjs.native.js +44 -40
- package/errors/errors.cjs +7 -5
- package/errors/errors.cjs.map +1 -1
- package/errors/errors.cjs.native.js +7 -5
- package/errors/index.d.ts +4 -4
- package/errors/index.d.ts.map +1 -1
- package/errors/index.js +9 -7
- package/errors/index.js.map +1 -1
- package/index.d.ts +2 -2
- package/index.js +2 -2
- package/index.js.map +1 -1
- package/invariantErrorCodes.d.ts.map +1 -1
- package/invariantErrorCodes.js +36 -36
- package/invariantErrorCodes.js.map +1 -1
- package/link/batch/batch.cjs +4 -4
- package/link/batch/batch.cjs.map +1 -1
- package/link/batch/batch.cjs.native.js +4 -4
- package/link/batch/batchLink.d.ts +6 -6
- package/link/batch/batchLink.d.ts.map +1 -1
- package/link/batch/batchLink.js +4 -4
- package/link/batch/batchLink.js.map +1 -1
- package/link/batch/batching.d.ts +2 -2
- package/link/batch/batching.d.ts.map +1 -1
- package/link/batch/batching.js +4 -4
- package/link/batch/batching.js.map +1 -1
- package/link/batch/index.d.ts +1 -1
- package/link/batch/index.js +1 -1
- package/link/batch/index.js.map +1 -1
- package/link/batch-http/batch-http.cjs +13 -11
- package/link/batch-http/batch-http.cjs.map +1 -1
- package/link/batch-http/batch-http.cjs.native.js +13 -11
- package/link/batch-http/batchHttpLink.d.ts +6 -6
- package/link/batch-http/batchHttpLink.d.ts.map +1 -1
- package/link/batch-http/batchHttpLink.js +17 -15
- package/link/batch-http/batchHttpLink.js.map +1 -1
- package/link/batch-http/index.d.ts +1 -1
- package/link/batch-http/index.js +1 -1
- package/link/batch-http/index.js.map +1 -1
- package/link/context/context.cjs.map +1 -1
- package/link/context/index.d.ts +3 -3
- package/link/context/index.js +2 -2
- package/link/context/index.js.map +1 -1
- package/link/core/ApolloLink.d.ts +3 -3
- package/link/core/ApolloLink.js +4 -4
- package/link/core/ApolloLink.js.map +1 -1
- package/link/core/concat.d.ts +1 -1
- package/link/core/concat.js +1 -1
- package/link/core/concat.js.map +1 -1
- package/link/core/core.cjs +1 -1
- package/link/core/core.cjs.map +1 -1
- package/link/core/core.cjs.native.js +1 -1
- package/link/core/empty.d.ts +1 -1
- package/link/core/empty.js +1 -1
- package/link/core/empty.js.map +1 -1
- package/link/core/execute.d.ts +1 -1
- package/link/core/execute.js +1 -1
- package/link/core/execute.js.map +1 -1
- package/link/core/from.d.ts +1 -1
- package/link/core/from.js +1 -1
- package/link/core/from.js.map +1 -1
- package/link/core/index.d.ts +8 -8
- package/link/core/index.js +8 -8
- package/link/core/index.js.map +1 -1
- package/link/core/split.d.ts +1 -1
- package/link/core/split.js +1 -1
- package/link/core/split.js.map +1 -1
- package/link/core/types.js.map +1 -1
- package/link/error/error.cjs.map +1 -1
- package/link/error/index.d.ts +5 -5
- package/link/error/index.js +2 -2
- package/link/error/index.js.map +1 -1
- package/link/http/HttpLink.d.ts +3 -3
- package/link/http/HttpLink.js +2 -2
- package/link/http/HttpLink.js.map +1 -1
- package/link/http/checkFetcher.d.ts +1 -1
- package/link/http/checkFetcher.d.ts.map +1 -1
- package/link/http/checkFetcher.js +2 -2
- package/link/http/checkFetcher.js.map +1 -1
- package/link/http/createHttpLink.d.ts +2 -2
- package/link/http/createHttpLink.d.ts.map +1 -1
- package/link/http/createHttpLink.js +27 -26
- package/link/http/createHttpLink.js.map +1 -1
- package/link/http/createSignalIfSupported.js +1 -1
- package/link/http/createSignalIfSupported.js.map +1 -1
- package/link/http/http.cjs +39 -35
- package/link/http/http.cjs.map +1 -1
- package/link/http/http.cjs.native.js +39 -35
- package/link/http/index.d.ts +13 -13
- package/link/http/index.js +10 -10
- package/link/http/index.js.map +1 -1
- package/link/http/iterators/nodeStream.d.ts.map +1 -1
- package/link/http/iterators/nodeStream.js.map +1 -1
- package/link/http/parseAndCheckHttpResponse.d.ts.map +1 -1
- package/link/http/parseAndCheckHttpResponse.js +2 -2
- package/link/http/parseAndCheckHttpResponse.js.map +1 -1
- package/link/http/rewriteURIForGET.d.ts +1 -1
- package/link/http/rewriteURIForGET.js +12 -12
- package/link/http/rewriteURIForGET.js.map +1 -1
- package/link/http/selectHttpOptionsAndBody.d.ts +5 -5
- package/link/http/selectHttpOptionsAndBody.d.ts.map +1 -1
- package/link/http/selectHttpOptionsAndBody.js +8 -7
- package/link/http/selectHttpOptionsAndBody.js.map +1 -1
- package/link/http/selectURI.d.ts +1 -1
- package/link/http/selectURI.js +2 -2
- package/link/http/selectURI.js.map +1 -1
- package/link/http/serializeFetchParameter.d.ts +1 -1
- package/link/http/serializeFetchParameter.js +1 -1
- package/link/http/serializeFetchParameter.js.map +1 -1
- package/link/persisted-queries/index.d.ts +4 -4
- package/link/persisted-queries/index.d.ts.map +1 -1
- package/link/persisted-queries/index.js +26 -25
- package/link/persisted-queries/index.js.map +1 -1
- package/link/persisted-queries/persisted-queries.cjs +22 -17
- package/link/persisted-queries/persisted-queries.cjs.map +1 -1
- package/link/persisted-queries/persisted-queries.cjs.native.js +22 -17
- package/link/retry/delayFunction.d.ts +1 -1
- package/link/retry/delayFunction.js.map +1 -1
- package/link/retry/index.d.ts +1 -1
- package/link/retry/index.js +1 -1
- package/link/retry/index.js.map +1 -1
- package/link/retry/retry.cjs +2 -2
- package/link/retry/retry.cjs.map +1 -1
- package/link/retry/retry.cjs.native.js +2 -2
- package/link/retry/retryFunction.d.ts +1 -1
- package/link/retry/retryFunction.js.map +1 -1
- package/link/retry/retryLink.d.ts +5 -5
- package/link/retry/retryLink.d.ts.map +1 -1
- package/link/retry/retryLink.js +6 -6
- package/link/retry/retryLink.js.map +1 -1
- package/link/schema/index.d.ts +4 -4
- package/link/schema/index.d.ts.map +1 -1
- package/link/schema/index.js +13 -8
- package/link/schema/index.js.map +1 -1
- package/link/schema/schema.cjs +10 -5
- package/link/schema/schema.cjs.map +1 -1
- package/link/schema/schema.cjs.native.js +10 -5
- package/link/subscriptions/index.js +1 -1
- package/link/subscriptions/index.js.map +1 -1
- package/link/subscriptions/subscriptions.cjs.map +1 -1
- package/link/utils/createOperation.d.ts +1 -1
- package/link/utils/createOperation.js +3 -3
- package/link/utils/createOperation.js.map +1 -1
- package/link/utils/filterOperationVariables.d.ts +1 -1
- package/link/utils/filterOperationVariables.js +2 -2
- package/link/utils/filterOperationVariables.js.map +1 -1
- package/link/utils/fromError.d.ts +1 -1
- package/link/utils/fromError.js +1 -1
- package/link/utils/fromError.js.map +1 -1
- package/link/utils/fromPromise.d.ts +1 -1
- package/link/utils/fromPromise.js +1 -1
- package/link/utils/fromPromise.js.map +1 -1
- package/link/utils/index.d.ts +10 -10
- package/link/utils/index.js +9 -9
- package/link/utils/index.js.map +1 -1
- package/link/utils/throwServerError.js +1 -1
- package/link/utils/throwServerError.js.map +1 -1
- package/link/utils/toPromise.d.ts +1 -1
- package/link/utils/toPromise.js +1 -1
- package/link/utils/toPromise.js.map +1 -1
- package/link/utils/transformOperation.d.ts +1 -1
- package/link/utils/transformOperation.js +3 -3
- package/link/utils/transformOperation.js.map +1 -1
- package/link/utils/utils.cjs +12 -12
- package/link/utils/utils.cjs.map +1 -1
- package/link/utils/utils.cjs.native.js +12 -12
- package/link/utils/validateOperation.d.ts +1 -1
- package/link/utils/validateOperation.js +6 -6
- package/link/utils/validateOperation.js.map +1 -1
- package/link/ws/index.d.ts +5 -5
- package/link/ws/index.js +2 -2
- package/link/ws/index.js.map +1 -1
- package/link/ws/ws.cjs.map +1 -1
- package/package.json +22 -22
- package/react/cache/QueryReference.d.ts +1 -1
- package/react/cache/QueryReference.d.ts.map +1 -1
- package/react/cache/QueryReference.js +2 -0
- package/react/cache/QueryReference.js.map +1 -1
- package/react/hooks/constants.js +1 -1
- package/react/hooks/constants.js.map +1 -1
- package/react/hooks/hooks.cjs +10 -21
- package/react/hooks/hooks.cjs.map +1 -1
- package/react/hooks/hooks.cjs.native.js +10 -21
- package/react/hooks/useBackgroundQuery.d.ts +1 -1
- package/react/hooks/useBackgroundQuery.d.ts.map +1 -1
- package/react/hooks/useBackgroundQuery.js.map +1 -1
- package/react/hooks/useQuery.d.ts.map +1 -1
- package/react/hooks/useQuery.js +1 -8
- package/react/hooks/useQuery.js.map +1 -1
- package/react/hooks/useReactiveVar.d.ts.map +1 -1
- package/react/hooks/useReactiveVar.js +7 -12
- package/react/hooks/useReactiveVar.js.map +1 -1
- package/react/hooks/useReadQuery.d.ts +1 -1
- package/react/hooks/useReadQuery.d.ts.map +1 -1
- package/react/hooks/useReadQuery.js +1 -1
- package/react/hooks/useReadQuery.js.map +1 -1
- package/react/hooks/useSuspenseQuery.d.ts +1 -1
- package/react/hooks/useSuspenseQuery.d.ts.map +1 -1
- package/react/hooks/useSuspenseQuery.js.map +1 -1
- package/react/react.cjs +2 -0
- package/react/react.cjs.map +1 -1
- package/react/react.cjs.native.js +2 -0
- package/react/types/types.js.map +1 -1
- package/testing/core/core.cjs +37 -28
- package/testing/core/core.cjs.map +1 -1
- package/testing/core/core.cjs.native.js +37 -28
- package/testing/core/itAsync.d.ts.map +1 -1
- package/testing/core/itAsync.js +8 -4
- package/testing/core/itAsync.js.map +1 -1
- package/testing/core/mocking/mockClient.d.ts +3 -3
- package/testing/core/mocking/mockClient.d.ts.map +1 -1
- package/testing/core/mocking/mockClient.js +6 -4
- package/testing/core/mocking/mockClient.js.map +1 -1
- package/testing/core/mocking/mockFetch.d.ts +1 -1
- package/testing/core/mocking/mockFetch.d.ts.map +1 -1
- package/testing/core/mocking/mockFetch.js +3 -3
- package/testing/core/mocking/mockFetch.js.map +1 -1
- package/testing/core/mocking/mockLink.d.ts +3 -3
- package/testing/core/mocking/mockLink.d.ts.map +1 -1
- package/testing/core/mocking/mockLink.js +24 -23
- package/testing/core/mocking/mockLink.js.map +1 -1
- package/testing/core/mocking/mockQueryManager.d.ts +2 -2
- package/testing/core/mocking/mockQueryManager.js +3 -3
- package/testing/core/mocking/mockQueryManager.js.map +1 -1
- package/testing/core/mocking/mockSubscriptionLink.d.ts +3 -3
- package/testing/core/mocking/mockSubscriptionLink.js +4 -4
- package/testing/core/mocking/mockSubscriptionLink.js.map +1 -1
- package/testing/core/mocking/mockWatchQuery.d.ts +2 -2
- package/testing/core/mocking/mockWatchQuery.js +2 -2
- package/testing/core/mocking/mockWatchQuery.js.map +1 -1
- package/testing/core/observableToPromise.d.ts +3 -3
- package/testing/core/observableToPromise.d.ts.map +1 -1
- package/testing/core/observableToPromise.js +8 -4
- package/testing/core/observableToPromise.js.map +1 -1
- package/testing/core/subscribeAndCount.d.ts +1 -1
- package/testing/core/subscribeAndCount.d.ts.map +1 -1
- package/testing/core/subscribeAndCount.js +5 -3
- package/testing/core/subscribeAndCount.js.map +1 -1
- package/testing/core/wait.js.map +1 -1
- package/testing/core/withConsoleSpy.d.ts.map +1 -1
- package/testing/core/withConsoleSpy.js.map +1 -1
- package/testing/core/wrap.d.ts.map +1 -1
- package/testing/core/wrap.js +14 -12
- package/testing/core/wrap.js.map +1 -1
- package/testing/index.d.ts +4 -4
- package/testing/index.js +3 -3
- package/testing/index.js.map +1 -1
- package/testing/react/MockedProvider.d.ts +7 -7
- package/testing/react/MockedProvider.d.ts.map +1 -1
- package/testing/react/MockedProvider.js +10 -11
- package/testing/react/MockedProvider.js.map +1 -1
- package/testing/testing.cjs +3 -5
- package/testing/testing.cjs.map +1 -1
- package/testing/testing.cjs.native.js +3 -5
- package/utilities/common/canUse.d.ts.map +1 -1
- package/utilities/common/canUse.js +4 -5
- package/utilities/common/canUse.js.map +1 -1
- package/utilities/common/cloneDeep.js +2 -2
- package/utilities/common/cloneDeep.js.map +1 -1
- package/utilities/common/compact.d.ts +1 -1
- package/utilities/common/compact.js.map +1 -1
- package/utilities/common/filterInPlace.js.map +1 -1
- package/utilities/common/maybeDeepFreeze.js +1 -1
- package/utilities/common/maybeDeepFreeze.js.map +1 -1
- package/utilities/common/mergeDeep.d.ts.map +1 -1
- package/utilities/common/mergeDeep.js +3 -1
- package/utilities/common/mergeDeep.js.map +1 -1
- package/utilities/common/mergeOptions.d.ts.map +1 -1
- package/utilities/common/mergeOptions.js.map +1 -1
- package/utilities/common/objects.js +2 -2
- package/utilities/common/objects.js.map +1 -1
- package/utilities/common/stringifyForDisplay.d.ts.map +1 -1
- package/utilities/common/stringifyForDisplay.js +3 -1
- package/utilities/common/stringifyForDisplay.js.map +1 -1
- package/utilities/globals/global.d.ts.map +1 -1
- package/utilities/globals/global.js +3 -1
- package/utilities/globals/global.js.map +1 -1
- package/utilities/globals/globals.cjs +8 -4
- package/utilities/globals/globals.cjs.map +1 -1
- package/utilities/globals/globals.cjs.native.js +8 -4
- package/utilities/globals/index.d.ts.map +1 -1
- package/utilities/globals/index.js +1 -1
- package/utilities/globals/index.js.map +1 -1
- package/utilities/globals/invariantWrappers.js +1 -1
- package/utilities/globals/invariantWrappers.js.map +1 -1
- package/utilities/globals/maybe.d.ts.map +1 -1
- package/utilities/globals/maybe.js.map +1 -1
- package/utilities/graphql/directives.d.ts +1 -1
- package/utilities/graphql/directives.d.ts.map +1 -1
- package/utilities/graphql/directives.js +17 -13
- package/utilities/graphql/directives.js.map +1 -1
- package/utilities/graphql/fragments.d.ts +1 -1
- package/utilities/graphql/fragments.d.ts.map +1 -1
- package/utilities/graphql/fragments.js +12 -12
- package/utilities/graphql/fragments.js.map +1 -1
- package/utilities/graphql/getFromAST.d.ts +1 -1
- package/utilities/graphql/getFromAST.js +16 -16
- package/utilities/graphql/getFromAST.js.map +1 -1
- package/utilities/graphql/storeUtils.d.ts +2 -2
- package/utilities/graphql/storeUtils.d.ts.map +1 -1
- package/utilities/graphql/storeUtils.js +36 -34
- package/utilities/graphql/storeUtils.js.map +1 -1
- package/utilities/graphql/transform.d.ts +1 -1
- package/utilities/graphql/transform.d.ts.map +1 -1
- package/utilities/graphql/transform.js +48 -32
- package/utilities/graphql/transform.js.map +1 -1
- package/utilities/observables/Concast.d.ts.map +1 -1
- package/utilities/observables/Concast.js +5 -9
- package/utilities/observables/Concast.js.map +1 -1
- package/utilities/observables/Observable.d.ts +4 -4
- package/utilities/observables/Observable.d.ts.map +1 -1
- package/utilities/observables/Observable.js +6 -4
- package/utilities/observables/Observable.js.map +1 -1
- package/utilities/observables/asyncMap.d.ts.map +1 -1
- package/utilities/observables/asyncMap.js +5 -2
- package/utilities/observables/asyncMap.js.map +1 -1
- package/utilities/observables/iteration.js.map +1 -1
- package/utilities/policies/pagination.d.ts +1 -1
- package/utilities/policies/pagination.d.ts.map +1 -1
- package/utilities/policies/pagination.js +9 -7
- package/utilities/policies/pagination.js.map +1 -1
- package/utilities/types/IsStrictlyAny.d.ts +2 -2
- package/utilities/types/IsStrictlyAny.d.ts.map +1 -1
- package/utilities/types/IsStrictlyAny.js.map +1 -1
- package/utilities/utilities.cjs +147 -121
- package/utilities/utilities.cjs.map +1 -1
- package/utilities/utilities.cjs.native.js +147 -121
- package/version.js +1 -1
- package/version.js.map +1 -1
|
@@ -172,7 +172,7 @@ function responseIterator(response) {
|
|
|
172
172
|
}
|
|
173
173
|
|
|
174
174
|
function isNonNullObject(obj) {
|
|
175
|
-
return obj !== null && typeof obj ===
|
|
175
|
+
return obj !== null && typeof obj === "object";
|
|
176
176
|
}
|
|
177
177
|
|
|
178
178
|
function isApolloPayloadResult(value) {
|
|
@@ -343,11 +343,11 @@ var defaultHttpOptions = {
|
|
|
343
343
|
preserveHeaderCase: false,
|
|
344
344
|
};
|
|
345
345
|
var defaultHeaders = {
|
|
346
|
-
accept:
|
|
347
|
-
|
|
346
|
+
accept: "*/*",
|
|
347
|
+
"content-type": "application/json",
|
|
348
348
|
};
|
|
349
349
|
var defaultOptions = {
|
|
350
|
-
method:
|
|
350
|
+
method: "POST",
|
|
351
351
|
};
|
|
352
352
|
var fallbackHttpConfig = {
|
|
353
353
|
http: defaultHttpOptions,
|
|
@@ -402,7 +402,10 @@ function removeDuplicateHeaders(headers, preserveHeaderCase) {
|
|
|
402
402
|
}
|
|
403
403
|
var headerData = Object.create(null);
|
|
404
404
|
Object.keys(Object(headers)).forEach(function (name) {
|
|
405
|
-
headerData[name.toLowerCase()] = {
|
|
405
|
+
headerData[name.toLowerCase()] = {
|
|
406
|
+
originalName: name,
|
|
407
|
+
value: headers[name],
|
|
408
|
+
};
|
|
406
409
|
});
|
|
407
410
|
var normalizedHeaders = Object.create(null);
|
|
408
411
|
Object.keys(headerData).forEach(function (name) {
|
|
@@ -412,13 +415,13 @@ function removeDuplicateHeaders(headers, preserveHeaderCase) {
|
|
|
412
415
|
}
|
|
413
416
|
|
|
414
417
|
var checkFetcher = function (fetcher) {
|
|
415
|
-
if (!fetcher && typeof fetch ===
|
|
418
|
+
if (!fetcher && typeof fetch === "undefined") {
|
|
416
419
|
throw globals.newInvariantError(35);
|
|
417
420
|
}
|
|
418
421
|
};
|
|
419
422
|
|
|
420
423
|
var createSignalIfSupported = function () {
|
|
421
|
-
if (typeof AbortController ===
|
|
424
|
+
if (typeof AbortController === "undefined")
|
|
422
425
|
return { controller: false, signal: false };
|
|
423
426
|
var controller = new AbortController();
|
|
424
427
|
var signal = controller.signal;
|
|
@@ -431,11 +434,11 @@ var selectURI = function (operation, fallbackURI) {
|
|
|
431
434
|
if (contextURI) {
|
|
432
435
|
return contextURI;
|
|
433
436
|
}
|
|
434
|
-
else if (typeof fallbackURI ===
|
|
437
|
+
else if (typeof fallbackURI === "function") {
|
|
435
438
|
return fallbackURI(operation);
|
|
436
439
|
}
|
|
437
440
|
else {
|
|
438
|
-
return fallbackURI ||
|
|
441
|
+
return fallbackURI || "/graphql";
|
|
439
442
|
}
|
|
440
443
|
};
|
|
441
444
|
|
|
@@ -444,47 +447,47 @@ function rewriteURIForGET(chosenURI, body) {
|
|
|
444
447
|
var addQueryParam = function (key, value) {
|
|
445
448
|
queryParams.push("".concat(key, "=").concat(encodeURIComponent(value)));
|
|
446
449
|
};
|
|
447
|
-
if (
|
|
448
|
-
addQueryParam(
|
|
450
|
+
if ("query" in body) {
|
|
451
|
+
addQueryParam("query", body.query);
|
|
449
452
|
}
|
|
450
453
|
if (body.operationName) {
|
|
451
|
-
addQueryParam(
|
|
454
|
+
addQueryParam("operationName", body.operationName);
|
|
452
455
|
}
|
|
453
456
|
if (body.variables) {
|
|
454
457
|
var serializedVariables = void 0;
|
|
455
458
|
try {
|
|
456
|
-
serializedVariables = serializeFetchParameter(body.variables,
|
|
459
|
+
serializedVariables = serializeFetchParameter(body.variables, "Variables map");
|
|
457
460
|
}
|
|
458
461
|
catch (parseError) {
|
|
459
462
|
return { parseError: parseError };
|
|
460
463
|
}
|
|
461
|
-
addQueryParam(
|
|
464
|
+
addQueryParam("variables", serializedVariables);
|
|
462
465
|
}
|
|
463
466
|
if (body.extensions) {
|
|
464
467
|
var serializedExtensions = void 0;
|
|
465
468
|
try {
|
|
466
|
-
serializedExtensions = serializeFetchParameter(body.extensions,
|
|
469
|
+
serializedExtensions = serializeFetchParameter(body.extensions, "Extensions map");
|
|
467
470
|
}
|
|
468
471
|
catch (parseError) {
|
|
469
472
|
return { parseError: parseError };
|
|
470
473
|
}
|
|
471
|
-
addQueryParam(
|
|
474
|
+
addQueryParam("extensions", serializedExtensions);
|
|
472
475
|
}
|
|
473
|
-
var fragment =
|
|
474
|
-
var fragmentStart = chosenURI.indexOf(
|
|
476
|
+
var fragment = "", preFragment = chosenURI;
|
|
477
|
+
var fragmentStart = chosenURI.indexOf("#");
|
|
475
478
|
if (fragmentStart !== -1) {
|
|
476
479
|
fragment = chosenURI.substr(fragmentStart);
|
|
477
480
|
preFragment = chosenURI.substr(0, fragmentStart);
|
|
478
481
|
}
|
|
479
|
-
var queryParamsPrefix = preFragment.indexOf(
|
|
480
|
-
var newURI = preFragment + queryParamsPrefix + queryParams.join(
|
|
482
|
+
var queryParamsPrefix = preFragment.indexOf("?") === -1 ? "?" : "&";
|
|
483
|
+
var newURI = preFragment + queryParamsPrefix + queryParams.join("&") + fragment;
|
|
481
484
|
return { newURI: newURI };
|
|
482
485
|
}
|
|
483
486
|
|
|
484
487
|
var backupFetch = utilities.maybe(function () { return fetch; });
|
|
485
488
|
var createHttpLink = function (linkOptions) {
|
|
486
489
|
if (linkOptions === void 0) { linkOptions = {}; }
|
|
487
|
-
var _a = linkOptions.uri, uri = _a === void 0 ?
|
|
490
|
+
var _a = linkOptions.uri, uri = _a === void 0 ? "/graphql" : _a, preferredFetch = linkOptions.fetch, _b = linkOptions.print, print = _b === void 0 ? defaultPrinter : _b, includeExtensions = linkOptions.includeExtensions, preserveHeaderCase = linkOptions.preserveHeaderCase, useGETForQueries = linkOptions.useGETForQueries, _c = linkOptions.includeUnusedVariables, includeUnusedVariables = _c === void 0 ? false : _c, requestOptions = tslib.__rest(linkOptions, ["uri", "fetch", "print", "includeExtensions", "preserveHeaderCase", "useGETForQueries", "includeUnusedVariables"]);
|
|
488
491
|
if (globalThis.__DEV__ !== false) {
|
|
489
492
|
checkFetcher(preferredFetch || backupFetch);
|
|
490
493
|
}
|
|
@@ -501,10 +504,10 @@ var createHttpLink = function (linkOptions) {
|
|
|
501
504
|
if (context.clientAwareness) {
|
|
502
505
|
var _a = context.clientAwareness, name_1 = _a.name, version = _a.version;
|
|
503
506
|
if (name_1) {
|
|
504
|
-
clientAwarenessHeaders[
|
|
507
|
+
clientAwarenessHeaders["apollographql-client-name"] = name_1;
|
|
505
508
|
}
|
|
506
509
|
if (version) {
|
|
507
|
-
clientAwarenessHeaders[
|
|
510
|
+
clientAwarenessHeaders["apollographql-client-version"] = version;
|
|
508
511
|
}
|
|
509
512
|
}
|
|
510
513
|
var contextHeaders = tslib.__assign(tslib.__assign({}, clientAwarenessHeaders), context.headers);
|
|
@@ -514,10 +517,10 @@ var createHttpLink = function (linkOptions) {
|
|
|
514
517
|
credentials: context.credentials,
|
|
515
518
|
headers: contextHeaders,
|
|
516
519
|
};
|
|
517
|
-
if (utilities.hasDirectives([
|
|
520
|
+
if (utilities.hasDirectives(["client"], operation.query)) {
|
|
518
521
|
var transformedQuery = utilities.removeClientSetsFromDocument(operation.query);
|
|
519
522
|
if (!transformedQuery) {
|
|
520
|
-
return utils.fromError(new Error(
|
|
523
|
+
return utils.fromError(new Error("HttpLink: Trying to send a client-only query to the server. To send to the server, ensure a non-client field is added to the query or set the `transformOptions.removeClientFields` option to `true`."));
|
|
521
524
|
}
|
|
522
525
|
operation.query = transformedQuery;
|
|
523
526
|
}
|
|
@@ -526,21 +529,21 @@ var createHttpLink = function (linkOptions) {
|
|
|
526
529
|
body.variables = utils.filterOperationVariables(body.variables, operation.query);
|
|
527
530
|
}
|
|
528
531
|
var controller;
|
|
529
|
-
if (!options.signal && typeof AbortController !==
|
|
532
|
+
if (!options.signal && typeof AbortController !== "undefined") {
|
|
530
533
|
controller = new AbortController();
|
|
531
534
|
options.signal = controller.signal;
|
|
532
535
|
}
|
|
533
536
|
var definitionIsMutation = function (d) {
|
|
534
|
-
return d.kind ===
|
|
537
|
+
return d.kind === "OperationDefinition" && d.operation === "mutation";
|
|
535
538
|
};
|
|
536
539
|
var definitionIsSubscription = function (d) {
|
|
537
|
-
return d.kind ===
|
|
540
|
+
return d.kind === "OperationDefinition" && d.operation === "subscription";
|
|
538
541
|
};
|
|
539
542
|
var isSubscription = definitionIsSubscription(utilities.getMainDefinition(operation.query));
|
|
540
|
-
var hasDefer = utilities.hasDirectives([
|
|
543
|
+
var hasDefer = utilities.hasDirectives(["defer"], operation.query);
|
|
541
544
|
if (useGETForQueries &&
|
|
542
545
|
!operation.query.definitions.some(definitionIsMutation)) {
|
|
543
|
-
options.method =
|
|
546
|
+
options.method = "GET";
|
|
544
547
|
}
|
|
545
548
|
if (hasDefer || isSubscription) {
|
|
546
549
|
options.headers = options.headers || {};
|
|
@@ -549,14 +552,15 @@ var createHttpLink = function (linkOptions) {
|
|
|
549
552
|
globalThis.__DEV__ !== false && globals.invariant.warn(36);
|
|
550
553
|
}
|
|
551
554
|
if (isSubscription) {
|
|
552
|
-
acceptHeader +=
|
|
555
|
+
acceptHeader +=
|
|
556
|
+
"boundary=graphql;subscriptionSpec=1.0,application/json";
|
|
553
557
|
}
|
|
554
558
|
else if (hasDefer) {
|
|
555
|
-
acceptHeader +=
|
|
559
|
+
acceptHeader += "deferSpec=20220824,application/json";
|
|
556
560
|
}
|
|
557
561
|
options.headers.accept = acceptHeader;
|
|
558
562
|
}
|
|
559
|
-
if (options.method ===
|
|
563
|
+
if (options.method === "GET") {
|
|
560
564
|
var _c = rewriteURIForGET(chosenURI, body), newURI = _c.newURI, parseError = _c.parseError;
|
|
561
565
|
if (parseError) {
|
|
562
566
|
return utils.fromError(parseError);
|
|
@@ -565,7 +569,7 @@ var createHttpLink = function (linkOptions) {
|
|
|
565
569
|
}
|
|
566
570
|
else {
|
|
567
571
|
try {
|
|
568
|
-
options.body = serializeFetchParameter(body,
|
|
572
|
+
options.body = serializeFetchParameter(body, "Payload");
|
|
569
573
|
}
|
|
570
574
|
catch (parseError) {
|
|
571
575
|
return utils.fromError(parseError);
|
|
@@ -578,7 +582,7 @@ var createHttpLink = function (linkOptions) {
|
|
|
578
582
|
.then(function (response) {
|
|
579
583
|
var _a;
|
|
580
584
|
operation.setContext({ response: response });
|
|
581
|
-
var ctype = (_a = response.headers) === null || _a === void 0 ? void 0 : _a.get(
|
|
585
|
+
var ctype = (_a = response.headers) === null || _a === void 0 ? void 0 : _a.get("content-type");
|
|
582
586
|
if (ctype !== null && /^multipart\/mixed/i.test(ctype)) {
|
|
583
587
|
return readMultipartBody(response, observerNext);
|
|
584
588
|
}
|
package/link/http/index.d.ts
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
export type { ServerParseError } from
|
|
3
|
-
export { parseAndCheckHttpResponse } from
|
|
4
|
-
export type { ClientParseError } from
|
|
5
|
-
export { serializeFetchParameter } from
|
|
6
|
-
export type { HttpOptions, UriFunction } from
|
|
7
|
-
export { fallbackHttpConfig, defaultPrinter, selectHttpOptionsAndBody, selectHttpOptionsAndBodyInternal, } from
|
|
8
|
-
export { checkFetcher } from
|
|
9
|
-
export { createSignalIfSupported } from
|
|
10
|
-
export { selectURI } from
|
|
11
|
-
export { createHttpLink } from
|
|
12
|
-
export { HttpLink } from
|
|
13
|
-
export { rewriteURIForGET } from
|
|
1
|
+
import "../../utilities/globals/index.js";
|
|
2
|
+
export type { ServerParseError } from "./parseAndCheckHttpResponse.js";
|
|
3
|
+
export { parseAndCheckHttpResponse } from "./parseAndCheckHttpResponse.js";
|
|
4
|
+
export type { ClientParseError } from "./serializeFetchParameter.js";
|
|
5
|
+
export { serializeFetchParameter } from "./serializeFetchParameter.js";
|
|
6
|
+
export type { HttpOptions, UriFunction } from "./selectHttpOptionsAndBody.js";
|
|
7
|
+
export { fallbackHttpConfig, defaultPrinter, selectHttpOptionsAndBody, selectHttpOptionsAndBodyInternal, } from "./selectHttpOptionsAndBody.js";
|
|
8
|
+
export { checkFetcher } from "./checkFetcher.js";
|
|
9
|
+
export { createSignalIfSupported } from "./createSignalIfSupported.js";
|
|
10
|
+
export { selectURI } from "./selectURI.js";
|
|
11
|
+
export { createHttpLink } from "./createHttpLink.js";
|
|
12
|
+
export { HttpLink } from "./HttpLink.js";
|
|
13
|
+
export { rewriteURIForGET } from "./rewriteURIForGET.js";
|
|
14
14
|
//# sourceMappingURL=index.d.ts.map
|
package/link/http/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
export { parseAndCheckHttpResponse } from
|
|
3
|
-
export { serializeFetchParameter } from
|
|
4
|
-
export { fallbackHttpConfig, defaultPrinter, selectHttpOptionsAndBody, selectHttpOptionsAndBodyInternal, } from
|
|
5
|
-
export { checkFetcher } from
|
|
6
|
-
export { createSignalIfSupported } from
|
|
7
|
-
export { selectURI } from
|
|
8
|
-
export { createHttpLink } from
|
|
9
|
-
export { HttpLink } from
|
|
10
|
-
export { rewriteURIForGET } from
|
|
1
|
+
import "../../utilities/globals/index.js";
|
|
2
|
+
export { parseAndCheckHttpResponse } from "./parseAndCheckHttpResponse.js";
|
|
3
|
+
export { serializeFetchParameter } from "./serializeFetchParameter.js";
|
|
4
|
+
export { fallbackHttpConfig, defaultPrinter, selectHttpOptionsAndBody, selectHttpOptionsAndBodyInternal, } from "./selectHttpOptionsAndBody.js";
|
|
5
|
+
export { checkFetcher } from "./checkFetcher.js";
|
|
6
|
+
export { createSignalIfSupported } from "./createSignalIfSupported.js";
|
|
7
|
+
export { selectURI } from "./selectURI.js";
|
|
8
|
+
export { createHttpLink } from "./createHttpLink.js";
|
|
9
|
+
export { HttpLink } from "./HttpLink.js";
|
|
10
|
+
export { rewriteURIForGET } from "./rewriteURIForGET.js";
|
|
11
11
|
//# sourceMappingURL=index.js.map
|
package/link/http/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/link/http/index.ts"],"names":[],"mappings":"AAAA,OAAO,kCAAkC,CAAC;AAG1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC","sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/link/http/index.ts"],"names":[],"mappings":"AAAA,OAAO,kCAAkC,CAAC;AAG1C,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAE3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACxB,gCAAgC,GACjC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC","sourcesContent":["import \"../../utilities/globals/index.js\";\n\nexport type { ServerParseError } from \"./parseAndCheckHttpResponse.js\";\nexport { parseAndCheckHttpResponse } from \"./parseAndCheckHttpResponse.js\";\nexport type { ClientParseError } from \"./serializeFetchParameter.js\";\nexport { serializeFetchParameter } from \"./serializeFetchParameter.js\";\nexport type { HttpOptions, UriFunction } from \"./selectHttpOptionsAndBody.js\";\nexport {\n fallbackHttpConfig,\n defaultPrinter,\n selectHttpOptionsAndBody,\n selectHttpOptionsAndBodyInternal, // needed by ../batch-http but not public\n} from \"./selectHttpOptionsAndBody.js\";\nexport { checkFetcher } from \"./checkFetcher.js\";\nexport { createSignalIfSupported } from \"./createSignalIfSupported.js\";\nexport { selectURI } from \"./selectURI.js\";\nexport { createHttpLink } from \"./createHttpLink.js\";\nexport { HttpLink } from \"./HttpLink.js\";\nexport { rewriteURIForGET } from \"./rewriteURIForGET.js\";\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeStream.d.ts","sourceRoot":"","sources":["../../../../src/link/http/iterators/nodeStream.ts"],"names":[],"mappings":";AAKA,OAAO,KAAK,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAQ7D,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,CAAC,EAC1C,MAAM,EAAE,kBAAkB,GACzB,qBAAqB,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"nodeStream.d.ts","sourceRoot":"","sources":["../../../../src/link/http/iterators/nodeStream.ts"],"names":[],"mappings":";AAKA,OAAO,KAAK,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAQ7D,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,CAAC,EAC1C,MAAM,EAAE,kBAAkB,GACzB,qBAAqB,CAAC,CAAC,CAAC,CA+E1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nodeStream.js","sourceRoot":"","sources":["../../../../src/link/http/iterators/nodeStream.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAOxE,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,MAA0B;IAE1B,IAAI,OAAO,GAAwB,IAAI,CAAC;IACxC,IAAI,KAAK,GAAiB,IAAI,CAAC;IAC/B,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,IAAM,IAAI,GAAc,EAAE,CAAC;IAE3B,IAAM,OAAO,GAOP,EAAE,CAAC;IAET,SAAS,MAAM,CAAC,KAAU;QACxB,IAAI,KAAK;YAAE,OAAO;QAClB,IAAI,OAAO,CAAC,MAAM,EAAE;YAClB,IAAM,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE;gBAC9C,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;aACrD;SACF;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnB,CAAC;IACD,SAAS,OAAO,CAAC,GAAU;QACzB,KAAK,GAAG,GAAG,CAAC;QACZ,IAAM,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QAC5B,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI;YACxB,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;QACH,CAAC,OAAO,IAAI,OAAO,EAAE,CAAC;IACxB,CAAC;IACD,SAAS,KAAK;QACZ,IAAI,GAAG,IAAI,CAAC;QACZ,IAAM,GAAG,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QAC5B,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI;YACxB,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QACH,CAAC,OAAO,IAAI,OAAO,EAAE,CAAC;IACxB,CAAC;IAED,OAAO,GAAG;QACR,OAAO,GAAG,IAAI,CAAC;QACf,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACtC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACpC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACvC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC,CAAC;IACF,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5B,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxB,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC3B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAE1B,SAAS,OAAO;QACd,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM;YAC1C,IAAI,KAAK;gBAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;YAChC,IAAI,IAAI,CAAC,MAAM;
|
|
1
|
+
{"version":3,"file":"nodeStream.js","sourceRoot":"","sources":["../../../../src/link/http/iterators/nodeStream.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Original source:\n * https://github.com/kmalakoff/response-iterator/blob/master/src/iterators/nodeStream.ts\n */\n\nimport type { Readable as NodeReadableStream } from \"stream\";\nimport { canUseAsyncIteratorSymbol } from \"../../../utilities/index.js\";\n\ninterface NodeStreamIterator<T> {\n next(): Promise<IteratorResult<T, boolean | undefined>>;\n [Symbol.asyncIterator]?(): AsyncIterator<T>;\n}\n\nexport default function nodeStreamIterator<T>(\n stream: NodeReadableStream\n): AsyncIterableIterator<T> {\n let cleanup: (() => void) | null = null;\n let error: Error | null = null;\n let done = false;\n const data: unknown[] = [];\n\n const waiting: [\n (\n value:\n | IteratorResult<T, boolean | undefined>\n | PromiseLike<IteratorResult<T, boolean | undefined>>\n ) => void,\n (reason?: any) => void,\n ][] = [];\n\n function onData(chunk: any) {\n if (error) return;\n if (waiting.length) {\n const shiftedArr = waiting.shift();\n if (Array.isArray(shiftedArr) && shiftedArr[0]) {\n return shiftedArr[0]({ value: chunk, done: false });\n }\n }\n data.push(chunk);\n }\n function onError(err: Error) {\n error = err;\n const all = waiting.slice();\n all.forEach(function (pair) {\n pair[1](err);\n });\n !cleanup || cleanup();\n }\n function onEnd() {\n done = true;\n const all = waiting.slice();\n all.forEach(function (pair) {\n pair[0]({ value: undefined, done: true });\n });\n !cleanup || cleanup();\n }\n\n cleanup = function () {\n cleanup = null;\n stream.removeListener(\"data\", onData);\n stream.removeListener(\"error\", onError);\n stream.removeListener(\"end\", onEnd);\n stream.removeListener(\"finish\", onEnd);\n stream.removeListener(\"close\", onEnd);\n };\n stream.on(\"data\", onData);\n stream.on(\"error\", onError);\n stream.on(\"end\", onEnd);\n stream.on(\"finish\", onEnd);\n stream.on(\"close\", onEnd);\n\n function getNext(): Promise<IteratorResult<T, boolean | undefined>> {\n return new Promise(function (resolve, reject) {\n if (error) return reject(error);\n if (data.length)\n return resolve({ value: data.shift() as T, done: false });\n if (done) return resolve({ value: undefined, done: true });\n waiting.push([resolve, reject]);\n });\n }\n\n const iterator: NodeStreamIterator<T> = {\n next(): Promise<IteratorResult<T, boolean | undefined>> {\n return getNext();\n },\n };\n\n if (canUseAsyncIteratorSymbol) {\n iterator[Symbol.asyncIterator] = function (): AsyncIterator<T> {\n return this;\n };\n }\n\n return iterator as AsyncIterableIterator<T>;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseAndCheckHttpResponse.d.ts","sourceRoot":"","sources":["../../../src/link/http/parseAndCheckHttpResponse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"parseAndCheckHttpResponse.d.ts","sourceRoot":"","sources":["../../../src/link/http/parseAndCheckHttpResponse.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAIlD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAI9D,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG;IACrC,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,wBAAsB,iBAAiB,CACrC,CAAC,SAAS,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC1C,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,iBAkGlD;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAYvE;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAC,CA2BxE;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,oBAAoB,CAAC,GAAG,CAAC,QAsCxE;AAED,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,SAAS,GAAG,SAAS,EAAE,cACzD,QAAQ,kBA+B3B"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { __assign, __awaiter, __generator } from "tslib";
|
|
2
2
|
import { responseIterator } from "./responseIterator.js";
|
|
3
3
|
import { throwServerError } from "../utils/index.js";
|
|
4
|
-
import { PROTOCOL_ERRORS_SYMBOL } from
|
|
5
|
-
import { isApolloPayloadResult } from
|
|
4
|
+
import { PROTOCOL_ERRORS_SYMBOL } from "../../errors/index.js";
|
|
5
|
+
import { isApolloPayloadResult } from "../../utilities/common/incrementalResult.js";
|
|
6
6
|
var hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
7
7
|
export function readMultipartBody(response, nextValue) {
|
|
8
8
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseAndCheckHttpResponse.js","sourceRoot":"","sources":["../../../src/link/http/parseAndCheckHttpResponse.ts"],"names":[],"mappings":"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","sourcesContent":["import { responseIterator } from \"./responseIterator.js\";\nimport type { Operation } from \"../core/index.js\";\nimport { throwServerError } from \"../utils/index.js\";\nimport { PROTOCOL_ERRORS_SYMBOL } from '../../errors/index.js';\nimport {\n isApolloPayloadResult\n} from '../../utilities/common/incrementalResult.js';\nimport type { SubscriptionObserver } from \"zen-observable-ts\";\n\nconst { hasOwnProperty } = Object.prototype;\n\nexport type ServerParseError = Error & {\n response: Response;\n statusCode: number;\n bodyText: string;\n};\n\nexport async function readMultipartBody<\n T extends object = Record<string, unknown>\n>(response: Response, nextValue: (value: T) => void) {\n if (TextDecoder === undefined) {\n throw new Error(\n \"TextDecoder must be defined in the environment: please import a polyfill.\"\n );\n }\n const decoder = new TextDecoder(\"utf-8\");\n const contentType = response.headers?.get(\"content-type\");\n const delimiter = \"boundary=\";\n\n // parse boundary value and ignore any subsequent name/value pairs after ;\n // https://www.rfc-editor.org/rfc/rfc9110.html#name-parameters\n // e.g. multipart/mixed;boundary=\"graphql\";deferSpec=20220824\n // if no boundary is specified, default to -\n const boundaryVal = contentType?.includes(delimiter)\n ? contentType\n ?.substring(contentType?.indexOf(delimiter) + delimiter.length)\n .replace(/['\"]/g, \"\")\n .replace(/\\;(.*)/gm, \"\")\n .trim()\n : \"-\";\n\n const boundary = `\\r\\n--${boundaryVal}`;\n let buffer = \"\";\n const iterator = responseIterator(response);\n let running = true;\n\n while (running) {\n const { value, done } = await iterator.next();\n const chunk = typeof value === \"string\" ? value : decoder.decode(value);\n const searchFrom = buffer.length - boundary.length + 1;\n running = !done;\n buffer += chunk;\n let bi = buffer.indexOf(boundary, searchFrom);\n\n while (bi > -1) {\n let message: string;\n [message, buffer] = [\n buffer.slice(0, bi),\n buffer.slice(bi + boundary.length),\n ];\n const i = message.indexOf(\"\\r\\n\\r\\n\");\n const headers = parseHeaders(message.slice(0, i));\n const contentType = headers[\"content-type\"];\n if (\n contentType &&\n contentType.toLowerCase().indexOf(\"application/json\") === -1\n ) {\n throw new Error(\n \"Unsupported patch content type: application/json is required.\"\n );\n }\n // nb: Technically you'd want to slice off the beginning \"\\r\\n\" but since\n // this is going to be `JSON.parse`d there is no need.\n const body = message.slice(i);\n\n if (body) {\n const result = parseJsonBody<T>(response, body);\n if (\n Object.keys(result).length > 1 ||\n \"data\" in result ||\n \"incremental\" in result ||\n \"errors\" in result ||\n \"payload\" in result\n ) {\n if (isApolloPayloadResult(result)) {\n let next = {};\n if (\"payload\" in result) {\n next = { ...result.payload };\n }\n if (\"errors\" in result) {\n next = {\n ...next,\n extensions: {\n ...(\"extensions\" in next ? next.extensions : null as any),\n [PROTOCOL_ERRORS_SYMBOL]: result.errors\n },\n };\n }\n nextValue(next as T);\n } else {\n // for the last chunk with only `hasNext: false`\n // we don't need to call observer.next as there is no data/errors\n nextValue(result);\n }\n } else if (\n // If the chunk contains only a \"hasNext: false\", we can call\n // observer.complete() immediately.\n Object.keys(result).length === 1 &&\n \"hasNext\" in result &&\n !result.hasNext\n ) {\n return;\n }\n }\n bi = buffer.indexOf(boundary);\n }\n }\n}\n\nexport function parseHeaders(headerText: string): Record<string, string> {\n const headersInit: Record<string, string> = {};\n headerText.split(\"\\n\").forEach((line) => {\n const i = line.indexOf(\":\");\n if (i > -1) {\n // normalize headers to lowercase\n const name = line.slice(0, i).trim().toLowerCase();\n const value = line.slice(i + 1).trim();\n headersInit[name] = value;\n }\n });\n return headersInit;\n}\n\nexport function parseJsonBody<T>(response: Response, bodyText: string): T {\n if (response.status >= 300) {\n // Network error\n const getResult = (): Record<string, unknown> | string => {\n try {\n return JSON.parse(bodyText);\n } catch (err) {\n return bodyText;\n }\n };\n throwServerError(\n response,\n getResult(),\n `Response not successful: Received status code ${response.status}`\n );\n }\n\n try {\n return JSON.parse(bodyText) as T;\n } catch (err) {\n const parseError = err as ServerParseError;\n parseError.name = \"ServerParseError\";\n parseError.response = response;\n parseError.statusCode = response.status;\n parseError.bodyText = bodyText;\n throw parseError;\n }\n}\n\nexport function handleError(err: any, observer: SubscriptionObserver<any>) {\n // if it is a network error, BUT there is graphql result info fire\n // the next observer before calling error this gives apollo-client\n // (and react-apollo) the `graphqlErrors` and `networkErrors` to\n // pass to UI this should only happen if we *also* have data as\n // part of the response key per the spec\n if (err.result && err.result.errors && err.result.data) {\n // if we don't call next, the UI can only show networkError\n // because AC didn't get any graphqlErrors this is graphql\n // execution result info (i.e errors and possibly data) this is\n // because there is no formal spec how errors should translate to\n // http status codes. So an auth error (401) could have both data\n // from a public field, errors from a private field, and a status\n // of 401\n // {\n // user { // this will have errors\n // firstName\n // }\n // products { // this is public so will have data\n // cost\n // }\n // }\n //\n // the result of above *could* look like this:\n // {\n // data: { products: [{ cost: \"$10\" }] },\n // errors: [{\n // message: 'your session has timed out',\n // path: []\n // }]\n // }\n // status code of above would be a 401\n // in the UI you want to show data where you can, errors as data where you can\n // and use correct http status codes\n observer.next(err.result);\n }\n\n observer.error(err);\n}\n\nexport function parseAndCheckHttpResponse(operations: Operation | Operation[]) {\n return (response: Response) =>\n response\n .text()\n .then((bodyText) => parseJsonBody(response, bodyText))\n .then((result: any) => {\n if (response.status >= 300) {\n // Network error\n throwServerError(\n response,\n result,\n `Response not successful: Received status code ${response.status}`\n );\n }\n if (\n !Array.isArray(result) &&\n !hasOwnProperty.call(result, \"data\") &&\n !hasOwnProperty.call(result, \"errors\")\n ) {\n // Data error\n throwServerError(\n response,\n result,\n `Server response was missing for query '${\n Array.isArray(operations)\n ? operations.map((op) => op.operationName)\n : operations.operationName\n }'.`\n );\n }\n return result;\n });\n}\n"]}
|
|
1
|
+
{"version":3,"file":"parseAndCheckHttpResponse.js","sourceRoot":"","sources":["../../../src/link/http/parseAndCheckHttpResponse.ts"],"names":[],"mappings":"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","sourcesContent":["import { responseIterator } from \"./responseIterator.js\";\nimport type { Operation } from \"../core/index.js\";\nimport { throwServerError } from \"../utils/index.js\";\nimport { PROTOCOL_ERRORS_SYMBOL } from \"../../errors/index.js\";\nimport { isApolloPayloadResult } from \"../../utilities/common/incrementalResult.js\";\nimport type { SubscriptionObserver } from \"zen-observable-ts\";\n\nconst { hasOwnProperty } = Object.prototype;\n\nexport type ServerParseError = Error & {\n response: Response;\n statusCode: number;\n bodyText: string;\n};\n\nexport async function readMultipartBody<\n T extends object = Record<string, unknown>,\n>(response: Response, nextValue: (value: T) => void) {\n if (TextDecoder === undefined) {\n throw new Error(\n \"TextDecoder must be defined in the environment: please import a polyfill.\"\n );\n }\n const decoder = new TextDecoder(\"utf-8\");\n const contentType = response.headers?.get(\"content-type\");\n const delimiter = \"boundary=\";\n\n // parse boundary value and ignore any subsequent name/value pairs after ;\n // https://www.rfc-editor.org/rfc/rfc9110.html#name-parameters\n // e.g. multipart/mixed;boundary=\"graphql\";deferSpec=20220824\n // if no boundary is specified, default to -\n const boundaryVal = contentType?.includes(delimiter)\n ? contentType\n ?.substring(contentType?.indexOf(delimiter) + delimiter.length)\n .replace(/['\"]/g, \"\")\n .replace(/\\;(.*)/gm, \"\")\n .trim()\n : \"-\";\n\n const boundary = `\\r\\n--${boundaryVal}`;\n let buffer = \"\";\n const iterator = responseIterator(response);\n let running = true;\n\n while (running) {\n const { value, done } = await iterator.next();\n const chunk = typeof value === \"string\" ? value : decoder.decode(value);\n const searchFrom = buffer.length - boundary.length + 1;\n running = !done;\n buffer += chunk;\n let bi = buffer.indexOf(boundary, searchFrom);\n\n while (bi > -1) {\n let message: string;\n [message, buffer] = [\n buffer.slice(0, bi),\n buffer.slice(bi + boundary.length),\n ];\n const i = message.indexOf(\"\\r\\n\\r\\n\");\n const headers = parseHeaders(message.slice(0, i));\n const contentType = headers[\"content-type\"];\n if (\n contentType &&\n contentType.toLowerCase().indexOf(\"application/json\") === -1\n ) {\n throw new Error(\n \"Unsupported patch content type: application/json is required.\"\n );\n }\n // nb: Technically you'd want to slice off the beginning \"\\r\\n\" but since\n // this is going to be `JSON.parse`d there is no need.\n const body = message.slice(i);\n\n if (body) {\n const result = parseJsonBody<T>(response, body);\n if (\n Object.keys(result).length > 1 ||\n \"data\" in result ||\n \"incremental\" in result ||\n \"errors\" in result ||\n \"payload\" in result\n ) {\n if (isApolloPayloadResult(result)) {\n let next = {};\n if (\"payload\" in result) {\n next = { ...result.payload };\n }\n if (\"errors\" in result) {\n next = {\n ...next,\n extensions: {\n ...(\"extensions\" in next ? next.extensions : (null as any)),\n [PROTOCOL_ERRORS_SYMBOL]: result.errors,\n },\n };\n }\n nextValue(next as T);\n } else {\n // for the last chunk with only `hasNext: false`\n // we don't need to call observer.next as there is no data/errors\n nextValue(result);\n }\n } else if (\n // If the chunk contains only a \"hasNext: false\", we can call\n // observer.complete() immediately.\n Object.keys(result).length === 1 &&\n \"hasNext\" in result &&\n !result.hasNext\n ) {\n return;\n }\n }\n bi = buffer.indexOf(boundary);\n }\n }\n}\n\nexport function parseHeaders(headerText: string): Record<string, string> {\n const headersInit: Record<string, string> = {};\n headerText.split(\"\\n\").forEach((line) => {\n const i = line.indexOf(\":\");\n if (i > -1) {\n // normalize headers to lowercase\n const name = line.slice(0, i).trim().toLowerCase();\n const value = line.slice(i + 1).trim();\n headersInit[name] = value;\n }\n });\n return headersInit;\n}\n\nexport function parseJsonBody<T>(response: Response, bodyText: string): T {\n if (response.status >= 300) {\n // Network error\n const getResult = (): Record<string, unknown> | string => {\n try {\n return JSON.parse(bodyText);\n } catch (err) {\n return bodyText;\n }\n };\n throwServerError(\n response,\n getResult(),\n `Response not successful: Received status code ${response.status}`\n );\n }\n\n try {\n return JSON.parse(bodyText) as T;\n } catch (err) {\n const parseError = err as ServerParseError;\n parseError.name = \"ServerParseError\";\n parseError.response = response;\n parseError.statusCode = response.status;\n parseError.bodyText = bodyText;\n throw parseError;\n }\n}\n\nexport function handleError(err: any, observer: SubscriptionObserver<any>) {\n // if it is a network error, BUT there is graphql result info fire\n // the next observer before calling error this gives apollo-client\n // (and react-apollo) the `graphqlErrors` and `networkErrors` to\n // pass to UI this should only happen if we *also* have data as\n // part of the response key per the spec\n if (err.result && err.result.errors && err.result.data) {\n // if we don't call next, the UI can only show networkError\n // because AC didn't get any graphqlErrors this is graphql\n // execution result info (i.e errors and possibly data) this is\n // because there is no formal spec how errors should translate to\n // http status codes. So an auth error (401) could have both data\n // from a public field, errors from a private field, and a status\n // of 401\n // {\n // user { // this will have errors\n // firstName\n // }\n // products { // this is public so will have data\n // cost\n // }\n // }\n //\n // the result of above *could* look like this:\n // {\n // data: { products: [{ cost: \"$10\" }] },\n // errors: [{\n // message: 'your session has timed out',\n // path: []\n // }]\n // }\n // status code of above would be a 401\n // in the UI you want to show data where you can, errors as data where you can\n // and use correct http status codes\n observer.next(err.result);\n }\n\n observer.error(err);\n}\n\nexport function parseAndCheckHttpResponse(operations: Operation | Operation[]) {\n return (response: Response) =>\n response\n .text()\n .then((bodyText) => parseJsonBody(response, bodyText))\n .then((result: any) => {\n if (response.status >= 300) {\n // Network error\n throwServerError(\n response,\n result,\n `Response not successful: Received status code ${response.status}`\n );\n }\n if (\n !Array.isArray(result) &&\n !hasOwnProperty.call(result, \"data\") &&\n !hasOwnProperty.call(result, \"errors\")\n ) {\n // Data error\n throwServerError(\n response,\n result,\n `Server response was missing for query '${\n Array.isArray(operations)\n ? operations.map((op) => op.operationName)\n : operations.operationName\n }'.`\n );\n }\n return result;\n });\n}\n"]}
|
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
import { serializeFetchParameter } from
|
|
1
|
+
import { serializeFetchParameter } from "./serializeFetchParameter.js";
|
|
2
2
|
export function rewriteURIForGET(chosenURI, body) {
|
|
3
3
|
var queryParams = [];
|
|
4
4
|
var addQueryParam = function (key, value) {
|
|
5
5
|
queryParams.push("".concat(key, "=").concat(encodeURIComponent(value)));
|
|
6
6
|
};
|
|
7
|
-
if (
|
|
8
|
-
addQueryParam(
|
|
7
|
+
if ("query" in body) {
|
|
8
|
+
addQueryParam("query", body.query);
|
|
9
9
|
}
|
|
10
10
|
if (body.operationName) {
|
|
11
|
-
addQueryParam(
|
|
11
|
+
addQueryParam("operationName", body.operationName);
|
|
12
12
|
}
|
|
13
13
|
if (body.variables) {
|
|
14
14
|
var serializedVariables = void 0;
|
|
15
15
|
try {
|
|
16
|
-
serializedVariables = serializeFetchParameter(body.variables,
|
|
16
|
+
serializedVariables = serializeFetchParameter(body.variables, "Variables map");
|
|
17
17
|
}
|
|
18
18
|
catch (parseError) {
|
|
19
19
|
return { parseError: parseError };
|
|
20
20
|
}
|
|
21
|
-
addQueryParam(
|
|
21
|
+
addQueryParam("variables", serializedVariables);
|
|
22
22
|
}
|
|
23
23
|
if (body.extensions) {
|
|
24
24
|
var serializedExtensions = void 0;
|
|
25
25
|
try {
|
|
26
|
-
serializedExtensions = serializeFetchParameter(body.extensions,
|
|
26
|
+
serializedExtensions = serializeFetchParameter(body.extensions, "Extensions map");
|
|
27
27
|
}
|
|
28
28
|
catch (parseError) {
|
|
29
29
|
return { parseError: parseError };
|
|
30
30
|
}
|
|
31
|
-
addQueryParam(
|
|
31
|
+
addQueryParam("extensions", serializedExtensions);
|
|
32
32
|
}
|
|
33
|
-
var fragment =
|
|
34
|
-
var fragmentStart = chosenURI.indexOf(
|
|
33
|
+
var fragment = "", preFragment = chosenURI;
|
|
34
|
+
var fragmentStart = chosenURI.indexOf("#");
|
|
35
35
|
if (fragmentStart !== -1) {
|
|
36
36
|
fragment = chosenURI.substr(fragmentStart);
|
|
37
37
|
preFragment = chosenURI.substr(0, fragmentStart);
|
|
38
38
|
}
|
|
39
|
-
var queryParamsPrefix = preFragment.indexOf(
|
|
40
|
-
var newURI = preFragment + queryParamsPrefix + queryParams.join(
|
|
39
|
+
var queryParamsPrefix = preFragment.indexOf("?") === -1 ? "?" : "&";
|
|
40
|
+
var newURI = preFragment + queryParamsPrefix + queryParams.join("&") + fragment;
|
|
41
41
|
return { newURI: newURI };
|
|
42
42
|
}
|
|
43
43
|
//# sourceMappingURL=rewriteURIForGET.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rewriteURIForGET.js","sourceRoot":"","sources":["../../../src/link/http/rewriteURIForGET.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAKvE,MAAM,UAAU,gBAAgB,CAAC,SAAiB,EAAE,IAAU;IAG5D,IAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAM,aAAa,GAAG,UAAC,GAAW,EAAE,KAAa;QAC/C,WAAW,CAAC,IAAI,CAAC,UAAG,GAAG,cAAI,kBAAkB,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEF,IAAI,OAAO,IAAI,IAAI,EAAE;QACnB,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,KAAM,CAAC,CAAC;KACrC;IACD,IAAI,IAAI,CAAC,aAAa,EAAE;QACtB,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;KACpD;IACD,IAAI,IAAI,CAAC,SAAS,EAAE;QAClB,IAAI,mBAAmB,SAAA,CAAC;QACxB,IAAI;YACF,mBAAmB,GAAG,uBAAuB,CAC3C,IAAI,CAAC,SAAS,EACd,eAAe,CAChB,CAAC;SACH;QAAC,OAAO,UAAU,EAAE;YACnB,OAAO,EAAE,UAAU,YAAA,EAAE,CAAC;SACvB;QACD,aAAa,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;KACjD;IACD,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,IAAI,oBAAoB,SAAA,CAAC;QACzB,IAAI;YACF,oBAAoB,GAAG,uBAAuB,CAC5C,IAAI,CAAC,UAAU,EACf,gBAAgB,CACjB,CAAC;SACH;QAAC,OAAO,UAAU,EAAE;YACnB,OAAO,EAAE,UAAU,YAAA,EAAE,CAAC;SACvB;QACD,aAAa,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;KACnD;IAQD,IAAI,QAAQ,GAAG,EAAE,EACf,WAAW,GAAG,SAAS,CAAC;IAC1B,IAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE;QACxB,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC3C,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;KAClD;IACD,IAAM,iBAAiB,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACtE,IAAM,MAAM,GACV,WAAW,GAAG,iBAAiB,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IACrE,OAAO,EAAE,MAAM,QAAA,EAAE,CAAC;AACpB,CAAC","sourcesContent":["import { serializeFetchParameter } from
|
|
1
|
+
{"version":3,"file":"rewriteURIForGET.js","sourceRoot":"","sources":["../../../src/link/http/rewriteURIForGET.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAKvE,MAAM,UAAU,gBAAgB,CAAC,SAAiB,EAAE,IAAU;IAG5D,IAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAM,aAAa,GAAG,UAAC,GAAW,EAAE,KAAa;QAC/C,WAAW,CAAC,IAAI,CAAC,UAAG,GAAG,cAAI,kBAAkB,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC;IAC1D,CAAC,CAAC;IAEF,IAAI,OAAO,IAAI,IAAI,EAAE;QACnB,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,KAAM,CAAC,CAAC;KACrC;IACD,IAAI,IAAI,CAAC,aAAa,EAAE;QACtB,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;KACpD;IACD,IAAI,IAAI,CAAC,SAAS,EAAE;QAClB,IAAI,mBAAmB,SAAA,CAAC;QACxB,IAAI;YACF,mBAAmB,GAAG,uBAAuB,CAC3C,IAAI,CAAC,SAAS,EACd,eAAe,CAChB,CAAC;SACH;QAAC,OAAO,UAAU,EAAE;YACnB,OAAO,EAAE,UAAU,YAAA,EAAE,CAAC;SACvB;QACD,aAAa,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;KACjD;IACD,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,IAAI,oBAAoB,SAAA,CAAC;QACzB,IAAI;YACF,oBAAoB,GAAG,uBAAuB,CAC5C,IAAI,CAAC,UAAU,EACf,gBAAgB,CACjB,CAAC;SACH;QAAC,OAAO,UAAU,EAAE;YACnB,OAAO,EAAE,UAAU,YAAA,EAAE,CAAC;SACvB;QACD,aAAa,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;KACnD;IAQD,IAAI,QAAQ,GAAG,EAAE,EACf,WAAW,GAAG,SAAS,CAAC;IAC1B,IAAM,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE;QACxB,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;QAC3C,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;KAClD;IACD,IAAM,iBAAiB,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACtE,IAAM,MAAM,GACV,WAAW,GAAG,iBAAiB,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IACrE,OAAO,EAAE,MAAM,QAAA,EAAE,CAAC;AACpB,CAAC","sourcesContent":["import { serializeFetchParameter } from \"./serializeFetchParameter.js\";\nimport type { Body } from \"./selectHttpOptionsAndBody.js\";\n\n// For GET operations, returns the given URI rewritten with parameters, or a\n// parse error.\nexport function rewriteURIForGET(chosenURI: string, body: Body) {\n // Implement the standard HTTP GET serialization, plus 'extensions'. Note\n // the extra level of JSON serialization!\n const queryParams: string[] = [];\n const addQueryParam = (key: string, value: string) => {\n queryParams.push(`${key}=${encodeURIComponent(value)}`);\n };\n\n if (\"query\" in body) {\n addQueryParam(\"query\", body.query!);\n }\n if (body.operationName) {\n addQueryParam(\"operationName\", body.operationName);\n }\n if (body.variables) {\n let serializedVariables;\n try {\n serializedVariables = serializeFetchParameter(\n body.variables,\n \"Variables map\"\n );\n } catch (parseError) {\n return { parseError };\n }\n addQueryParam(\"variables\", serializedVariables);\n }\n if (body.extensions) {\n let serializedExtensions;\n try {\n serializedExtensions = serializeFetchParameter(\n body.extensions,\n \"Extensions map\"\n );\n } catch (parseError) {\n return { parseError };\n }\n addQueryParam(\"extensions\", serializedExtensions);\n }\n\n // Reconstruct the URI with added query params.\n // XXX This assumes that the URI is well-formed and that it doesn't\n // already contain any of these query params. We could instead use the\n // URL API and take a polyfill (whatwg-url@6) for older browsers that\n // don't support URLSearchParams. Note that some browsers (and\n // versions of whatwg-url) support URL but not URLSearchParams!\n let fragment = \"\",\n preFragment = chosenURI;\n const fragmentStart = chosenURI.indexOf(\"#\");\n if (fragmentStart !== -1) {\n fragment = chosenURI.substr(fragmentStart);\n preFragment = chosenURI.substr(0, fragmentStart);\n }\n const queryParamsPrefix = preFragment.indexOf(\"?\") === -1 ? \"?\" : \"&\";\n const newURI =\n preFragment + queryParamsPrefix + queryParams.join(\"&\") + fragment;\n return { newURI };\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { ASTNode } from
|
|
2
|
-
import { print } from
|
|
3
|
-
import type { Operation } from
|
|
1
|
+
import type { ASTNode } from "graphql";
|
|
2
|
+
import { print } from "../../utilities/index.js";
|
|
3
|
+
import type { Operation } from "../core/index.js";
|
|
4
4
|
export interface Printer {
|
|
5
5
|
(node: ASTNode, originalPrint: typeof print): string;
|
|
6
6
|
}
|
|
@@ -16,7 +16,7 @@ export interface Body {
|
|
|
16
16
|
export interface HttpOptions {
|
|
17
17
|
uri?: string | UriFunction;
|
|
18
18
|
includeExtensions?: boolean;
|
|
19
|
-
fetch?: WindowOrWorkerGlobalScope[
|
|
19
|
+
fetch?: WindowOrWorkerGlobalScope["fetch"];
|
|
20
20
|
headers?: Record<string, string>;
|
|
21
21
|
preserveHeaderCase?: boolean;
|
|
22
22
|
credentials?: string;
|
|
@@ -40,7 +40,7 @@ export declare const fallbackHttpConfig: {
|
|
|
40
40
|
http: HttpQueryOptions;
|
|
41
41
|
headers: {
|
|
42
42
|
accept: string;
|
|
43
|
-
|
|
43
|
+
"content-type": string;
|
|
44
44
|
};
|
|
45
45
|
options: {
|
|
46
46
|
method: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectHttpOptionsAndBody.d.ts","sourceRoot":"","sources":["../../../src/link/http/selectHttpOptionsAndBody.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"selectHttpOptionsAndBody.d.ts","sourceRoot":"","sources":["../../../src/link/http/selectHttpOptionsAndBody.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,WAAW,OAAO;IACtB,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,KAAK,GAAG,MAAM,CAAC;CACtD;AAED,MAAM,WAAW,WAAW;IAC1B,CAAC,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,IAAI;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,WAAW;IAM1B,GAAG,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IAO3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAK5B,KAAK,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAK3C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAOjC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAK7B,WAAW,CAAC,EAAE,MAAM,CAAC;IAKrB,YAAY,CAAC,EAAE,GAAG,CAAC;IAOnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAW3B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAKjC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,WAAW,CAAC,EAAE,GAAG,CAAC;CACnB;AA8BD,eAAO,MAAM,kBAAkB;;;;;;;;;CAI9B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,OAAwC,CAAC;AAEtE,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,SAAS,EACpB,cAAc,EAAE,UAAU,EAC1B,GAAG,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC;;;EAQ9B;AAED,wBAAgB,gCAAgC,CAC9C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,GAAG,OAAO,EAAE,UAAU,EAAE;;;EA6CzB"}
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
import { __assign, __spreadArray } from "tslib";
|
|
2
|
-
import { print } from
|
|
3
|
-
;
|
|
2
|
+
import { print } from "../../utilities/index.js";
|
|
4
3
|
var defaultHttpOptions = {
|
|
5
4
|
includeQuery: true,
|
|
6
5
|
includeExtensions: false,
|
|
7
6
|
preserveHeaderCase: false,
|
|
8
7
|
};
|
|
9
8
|
var defaultHeaders = {
|
|
10
|
-
accept:
|
|
11
|
-
|
|
9
|
+
accept: "*/*",
|
|
10
|
+
"content-type": "application/json",
|
|
12
11
|
};
|
|
13
12
|
var defaultOptions = {
|
|
14
|
-
method:
|
|
13
|
+
method: "POST",
|
|
15
14
|
};
|
|
16
15
|
export var fallbackHttpConfig = {
|
|
17
16
|
http: defaultHttpOptions,
|
|
@@ -56,7 +55,6 @@ export function selectHttpOptionsAndBodyInternal(operation, printer) {
|
|
|
56
55
|
body: body,
|
|
57
56
|
};
|
|
58
57
|
}
|
|
59
|
-
;
|
|
60
58
|
function removeDuplicateHeaders(headers, preserveHeaderCase) {
|
|
61
59
|
if (!preserveHeaderCase) {
|
|
62
60
|
var normalizedHeaders_1 = Object.create(null);
|
|
@@ -67,7 +65,10 @@ function removeDuplicateHeaders(headers, preserveHeaderCase) {
|
|
|
67
65
|
}
|
|
68
66
|
var headerData = Object.create(null);
|
|
69
67
|
Object.keys(Object(headers)).forEach(function (name) {
|
|
70
|
-
headerData[name.toLowerCase()] = {
|
|
68
|
+
headerData[name.toLowerCase()] = {
|
|
69
|
+
originalName: name,
|
|
70
|
+
value: headers[name],
|
|
71
|
+
};
|
|
71
72
|
});
|
|
72
73
|
var normalizedHeaders = Object.create(null);
|
|
73
74
|
Object.keys(headerData).forEach(function (name) {
|