@apollo/client 3.3.11 → 3.3.15

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.
Files changed (63) hide show
  1. package/apollo-client.cjs.js +35 -24
  2. package/apollo-client.cjs.js.map +1 -1
  3. package/apollo-client.cjs.min.js +1 -1
  4. package/cache/cache.cjs.js +4 -1
  5. package/cache/cache.cjs.js.map +1 -1
  6. package/cache/inmemory/policies.d.ts +2 -2
  7. package/cache/inmemory/policies.d.ts.map +1 -1
  8. package/cache/inmemory/policies.js +4 -1
  9. package/cache/inmemory/policies.js.map +1 -1
  10. package/cache/inmemory/writeToStore.js.map +1 -1
  11. package/core/QueryInfo.d.ts.map +1 -1
  12. package/core/QueryInfo.js +1 -0
  13. package/core/QueryInfo.js.map +1 -1
  14. package/core/QueryManager.d.ts.map +1 -1
  15. package/core/QueryManager.js +4 -4
  16. package/core/QueryManager.js.map +1 -1
  17. package/core/core.cjs.js +6 -5
  18. package/core/core.cjs.js.map +1 -1
  19. package/invariantErrorCodes.js +1 -1
  20. package/link/http/createHttpLink.d.ts.map +1 -1
  21. package/link/http/createHttpLink.js +1 -1
  22. package/link/http/createHttpLink.js.map +1 -1
  23. package/link/http/http.cjs.js +1 -2
  24. package/link/http/http.cjs.js.map +1 -1
  25. package/package.json +17 -17
  26. package/react/data/QueryData.d.ts.map +1 -1
  27. package/react/data/QueryData.js +4 -9
  28. package/react/data/QueryData.js.map +1 -1
  29. package/react/data/SubscriptionData.d.ts.map +1 -1
  30. package/react/data/SubscriptionData.js +9 -5
  31. package/react/data/SubscriptionData.js.map +1 -1
  32. package/react/data/data.cjs.js +13 -13
  33. package/react/data/data.cjs.js.map +1 -1
  34. package/react/ssr/RenderPromises.d.ts +1 -0
  35. package/react/ssr/RenderPromises.d.ts.map +1 -1
  36. package/react/ssr/RenderPromises.js +4 -0
  37. package/react/ssr/RenderPromises.js.map +1 -1
  38. package/react/ssr/getDataFromTree.d.ts.map +1 -1
  39. package/react/ssr/getDataFromTree.js +2 -0
  40. package/react/ssr/getDataFromTree.js.map +1 -1
  41. package/react/ssr/ssr.cjs.js +6 -0
  42. package/react/ssr/ssr.cjs.js.map +1 -1
  43. package/react/types/types.d.ts +1 -0
  44. package/react/types/types.d.ts.map +1 -1
  45. package/react/types/types.js.map +1 -1
  46. package/testing/testing.cjs.js +14 -6
  47. package/testing/testing.cjs.js.map +1 -1
  48. package/utilities/observables/Observable.d.ts +0 -5
  49. package/utilities/observables/Observable.d.ts.map +1 -1
  50. package/utilities/observables/Observable.js +5 -1
  51. package/utilities/observables/Observable.js.map +1 -1
  52. package/utilities/observables/asyncMap.d.ts.map +1 -1
  53. package/utilities/observables/asyncMap.js +11 -3
  54. package/utilities/observables/asyncMap.js.map +1 -1
  55. package/utilities/testing/mocking/MockedProvider.d.ts +1 -1
  56. package/utilities/testing/mocking/MockedProvider.d.ts.map +1 -1
  57. package/utilities/testing/mocking/MockedProvider.js +1 -1
  58. package/utilities/testing/mocking/MockedProvider.js.map +1 -1
  59. package/utilities/testing/mocking/mockSubscriptionLink.js +2 -2
  60. package/utilities/testing/mocking/mockSubscriptionLink.js.map +1 -1
  61. package/utilities/utilities.cjs.js +11 -3
  62. package/utilities/utilities.cjs.js.map +1 -1
  63. package/version.js +1 -1
@@ -5,7 +5,7 @@
5
5
  // consult the @apollo/client/invariantErrorCodes.js file specific to
6
6
  // your @apollo/client version. This file is not meant to be imported.
7
7
  {
8
- "@apollo/client version": "3.3.11",
8
+ "@apollo/client version": "3.3.15",
9
9
 
10
10
  1: {
11
11
  file: "@apollo/client/cache/inmemory/policies.js",
@@ -1 +1 @@
1
- {"version":3,"file":"createHttpLink.d.ts","sourceRoot":"","sources":["../../../src/link/http/createHttpLink.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAMrC,OAAO,EAGL,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAKpC,eAAO,MAAM,cAAc,iBAAiB,WAAW,eA2LtD,CAAC"}
1
+ {"version":3,"file":"createHttpLink.d.ts","sourceRoot":"","sources":["../../../src/link/http/createHttpLink.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAMrC,OAAO,EAGL,WAAW,EACZ,MAAM,4BAA4B,CAAC;AAKpC,eAAO,MAAM,cAAc,iBAAiB,WAAW,eA2LtD,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { __assign, __rest } from "tslib";
2
- import { visit } from 'graphql/language/visitor';
2
+ import { visit } from 'graphql';
3
3
  import { ApolloLink } from "../core/index.js";
4
4
  import { Observable } from "../../utilities/index.js";
5
5
  import { serializeFetchParameter } from "./serializeFetchParameter.js";
@@ -1 +1 @@
1
- {"version":3,"file":"createHttpLink.js","sourceRoot":"","sources":["../../../src/link/http/createHttpLink.ts"],"names":[],"mappings":"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","sourcesContent":["import { DefinitionNode, VariableDefinitionNode } from 'graphql';\nimport { visit } from 'graphql/language/visitor';\n\nimport { ApolloLink } from '../core';\nimport { Observable } from '../../utilities';\nimport { serializeFetchParameter } from './serializeFetchParameter';\nimport { selectURI } from './selectURI';\nimport { parseAndCheckHttpResponse } from './parseAndCheckHttpResponse';\nimport { checkFetcher } from './checkFetcher';\nimport {\n selectHttpOptionsAndBody,\n fallbackHttpConfig,\n HttpOptions\n} from './selectHttpOptionsAndBody';\nimport { createSignalIfSupported } from './createSignalIfSupported';\nimport { rewriteURIForGET } from './rewriteURIForGET';\nimport { fromError } from '../utils';\n\nexport const createHttpLink = (linkOptions: HttpOptions = {}) => {\n let {\n uri = '/graphql',\n // use default global fetch if nothing passed in\n fetch: fetcher,\n includeExtensions,\n useGETForQueries,\n includeUnusedVariables = false,\n ...requestOptions\n } = linkOptions;\n\n // dev warnings to ensure fetch is present\n checkFetcher(fetcher);\n\n //fetcher is set here rather than the destructuring to ensure fetch is\n //declared before referencing it. Reference in the destructuring would cause\n //a ReferenceError\n if (!fetcher) {\n fetcher = fetch;\n }\n\n const linkConfig = {\n http: { includeExtensions },\n options: requestOptions.fetchOptions,\n credentials: requestOptions.credentials,\n headers: requestOptions.headers,\n };\n\n return new ApolloLink(operation => {\n let chosenURI = selectURI(operation, uri);\n\n const context = operation.getContext();\n\n // `apollographql-client-*` headers are automatically set if a\n // `clientAwareness` object is found in the context. These headers are\n // set first, followed by the rest of the headers pulled from\n // `context.headers`. If desired, `apollographql-client-*` headers set by\n // the `clientAwareness` object can be overridden by\n // `apollographql-client-*` headers set in `context.headers`.\n const clientAwarenessHeaders: {\n 'apollographql-client-name'?: string;\n 'apollographql-client-version'?: string;\n } = {};\n\n if (context.clientAwareness) {\n const { name, version } = context.clientAwareness;\n if (name) {\n clientAwarenessHeaders['apollographql-client-name'] = name;\n }\n if (version) {\n clientAwarenessHeaders['apollographql-client-version'] = version;\n }\n }\n\n const contextHeaders = { ...clientAwarenessHeaders, ...context.headers };\n\n const contextConfig = {\n http: context.http,\n options: context.fetchOptions,\n credentials: context.credentials,\n headers: contextHeaders,\n };\n\n //uses fallback, link, and then context to build options\n const { options, body } = selectHttpOptionsAndBody(\n operation,\n fallbackHttpConfig,\n linkConfig,\n contextConfig,\n );\n\n if (body.variables && !includeUnusedVariables) {\n const unusedNames = new Set(Object.keys(body.variables));\n visit(operation.query, {\n Variable(node, _key, parent) {\n // A variable type definition at the top level of a query is not\n // enough to silence server-side errors about the variable being\n // unused, so variable definitions do not count as usage.\n // https://spec.graphql.org/draft/#sec-All-Variables-Used\n if (parent && (parent as VariableDefinitionNode).kind !== 'VariableDefinition') {\n unusedNames.delete(node.name.value);\n }\n },\n });\n if (unusedNames.size) {\n // Make a shallow copy of body.variables (with keys in the same\n // order) and then delete unused variables from the copy.\n body.variables = { ...body.variables };\n unusedNames.forEach(name => {\n delete body.variables![name];\n });\n }\n }\n\n let controller: any;\n if (!(options as any).signal) {\n const { controller: _controller, signal } = createSignalIfSupported();\n controller = _controller;\n if (controller) (options as any).signal = signal;\n }\n\n // If requested, set method to GET if there are no mutations.\n const definitionIsMutation = (d: DefinitionNode) => {\n return d.kind === 'OperationDefinition' && d.operation === 'mutation';\n };\n if (\n useGETForQueries &&\n !operation.query.definitions.some(definitionIsMutation)\n ) {\n options.method = 'GET';\n }\n\n if (options.method === 'GET') {\n const { newURI, parseError } = rewriteURIForGET(chosenURI, body);\n if (parseError) {\n return fromError(parseError);\n }\n chosenURI = newURI;\n } else {\n try {\n (options as any).body = serializeFetchParameter(body, 'Payload');\n } catch (parseError) {\n return fromError(parseError);\n }\n }\n\n return new Observable(observer => {\n fetcher!(chosenURI, options)\n .then(response => {\n operation.setContext({ response });\n return response;\n })\n .then(parseAndCheckHttpResponse(operation))\n .then(result => {\n // we have data and can send it to back up the link chain\n observer.next(result);\n observer.complete();\n return result;\n })\n .catch(err => {\n // fetch was cancelled so it's already been cleaned up in the unsubscribe\n if (err.name === 'AbortError') return;\n // if it is a network error, BUT there is graphql result info\n // fire the next observer before calling error\n // this gives apollo-client (and react-apollo) the `graphqlErrors` and `networErrors`\n // to pass to UI\n // this should only happen if we *also* have data as part of the response key per\n // 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 because AC didn't\n // get any graphqlErrors\n // this is graphql execution result info (i.e errors and possibly data)\n // this is 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 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 observer.error(err);\n });\n\n return () => {\n // XXX support canceling this request\n // https://developers.google.com/web/updates/2017/09/abortable-fetch\n if (controller) controller.abort();\n };\n });\n });\n};\n"]}
1
+ {"version":3,"file":"createHttpLink.js","sourceRoot":"","sources":["../../../src/link/http/createHttpLink.ts"],"names":[],"mappings":"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","sourcesContent":["import { visit, DefinitionNode, VariableDefinitionNode } from 'graphql';\n\nimport { ApolloLink } from '../core';\nimport { Observable } from '../../utilities';\nimport { serializeFetchParameter } from './serializeFetchParameter';\nimport { selectURI } from './selectURI';\nimport { parseAndCheckHttpResponse } from './parseAndCheckHttpResponse';\nimport { checkFetcher } from './checkFetcher';\nimport {\n selectHttpOptionsAndBody,\n fallbackHttpConfig,\n HttpOptions\n} from './selectHttpOptionsAndBody';\nimport { createSignalIfSupported } from './createSignalIfSupported';\nimport { rewriteURIForGET } from './rewriteURIForGET';\nimport { fromError } from '../utils';\n\nexport const createHttpLink = (linkOptions: HttpOptions = {}) => {\n let {\n uri = '/graphql',\n // use default global fetch if nothing passed in\n fetch: fetcher,\n includeExtensions,\n useGETForQueries,\n includeUnusedVariables = false,\n ...requestOptions\n } = linkOptions;\n\n // dev warnings to ensure fetch is present\n checkFetcher(fetcher);\n\n //fetcher is set here rather than the destructuring to ensure fetch is\n //declared before referencing it. Reference in the destructuring would cause\n //a ReferenceError\n if (!fetcher) {\n fetcher = fetch;\n }\n\n const linkConfig = {\n http: { includeExtensions },\n options: requestOptions.fetchOptions,\n credentials: requestOptions.credentials,\n headers: requestOptions.headers,\n };\n\n return new ApolloLink(operation => {\n let chosenURI = selectURI(operation, uri);\n\n const context = operation.getContext();\n\n // `apollographql-client-*` headers are automatically set if a\n // `clientAwareness` object is found in the context. These headers are\n // set first, followed by the rest of the headers pulled from\n // `context.headers`. If desired, `apollographql-client-*` headers set by\n // the `clientAwareness` object can be overridden by\n // `apollographql-client-*` headers set in `context.headers`.\n const clientAwarenessHeaders: {\n 'apollographql-client-name'?: string;\n 'apollographql-client-version'?: string;\n } = {};\n\n if (context.clientAwareness) {\n const { name, version } = context.clientAwareness;\n if (name) {\n clientAwarenessHeaders['apollographql-client-name'] = name;\n }\n if (version) {\n clientAwarenessHeaders['apollographql-client-version'] = version;\n }\n }\n\n const contextHeaders = { ...clientAwarenessHeaders, ...context.headers };\n\n const contextConfig = {\n http: context.http,\n options: context.fetchOptions,\n credentials: context.credentials,\n headers: contextHeaders,\n };\n\n //uses fallback, link, and then context to build options\n const { options, body } = selectHttpOptionsAndBody(\n operation,\n fallbackHttpConfig,\n linkConfig,\n contextConfig,\n );\n\n if (body.variables && !includeUnusedVariables) {\n const unusedNames = new Set(Object.keys(body.variables));\n visit(operation.query, {\n Variable(node, _key, parent) {\n // A variable type definition at the top level of a query is not\n // enough to silence server-side errors about the variable being\n // unused, so variable definitions do not count as usage.\n // https://spec.graphql.org/draft/#sec-All-Variables-Used\n if (parent && (parent as VariableDefinitionNode).kind !== 'VariableDefinition') {\n unusedNames.delete(node.name.value);\n }\n },\n });\n if (unusedNames.size) {\n // Make a shallow copy of body.variables (with keys in the same\n // order) and then delete unused variables from the copy.\n body.variables = { ...body.variables };\n unusedNames.forEach(name => {\n delete body.variables![name];\n });\n }\n }\n\n let controller: any;\n if (!(options as any).signal) {\n const { controller: _controller, signal } = createSignalIfSupported();\n controller = _controller;\n if (controller) (options as any).signal = signal;\n }\n\n // If requested, set method to GET if there are no mutations.\n const definitionIsMutation = (d: DefinitionNode) => {\n return d.kind === 'OperationDefinition' && d.operation === 'mutation';\n };\n if (\n useGETForQueries &&\n !operation.query.definitions.some(definitionIsMutation)\n ) {\n options.method = 'GET';\n }\n\n if (options.method === 'GET') {\n const { newURI, parseError } = rewriteURIForGET(chosenURI, body);\n if (parseError) {\n return fromError(parseError);\n }\n chosenURI = newURI;\n } else {\n try {\n (options as any).body = serializeFetchParameter(body, 'Payload');\n } catch (parseError) {\n return fromError(parseError);\n }\n }\n\n return new Observable(observer => {\n fetcher!(chosenURI, options)\n .then(response => {\n operation.setContext({ response });\n return response;\n })\n .then(parseAndCheckHttpResponse(operation))\n .then(result => {\n // we have data and can send it to back up the link chain\n observer.next(result);\n observer.complete();\n return result;\n })\n .catch(err => {\n // fetch was cancelled so it's already been cleaned up in the unsubscribe\n if (err.name === 'AbortError') return;\n // if it is a network error, BUT there is graphql result info\n // fire the next observer before calling error\n // this gives apollo-client (and react-apollo) the `graphqlErrors` and `networErrors`\n // to pass to UI\n // this should only happen if we *also* have data as part of the response key per\n // 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 because AC didn't\n // get any graphqlErrors\n // this is graphql execution result info (i.e errors and possibly data)\n // this is 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 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 observer.error(err);\n });\n\n return () => {\n // XXX support canceling this request\n // https://developers.google.com/web/updates/2017/09/abortable-fetch\n if (controller) controller.abort();\n };\n });\n });\n};\n"]}
@@ -6,7 +6,6 @@ var utils = require('../utils');
6
6
  var tsInvariant = require('ts-invariant');
7
7
  var tslib = require('tslib');
8
8
  var graphql = require('graphql');
9
- var visitor = require('graphql/language/visitor');
10
9
  var core = require('../core');
11
10
  var utilities = require('../../utilities');
12
11
 
@@ -202,7 +201,7 @@ var createHttpLink = function (linkOptions) {
202
201
  var _b = selectHttpOptionsAndBody(operation, fallbackHttpConfig, linkConfig, contextConfig), options = _b.options, body = _b.body;
203
202
  if (body.variables && !includeUnusedVariables) {
204
203
  var unusedNames_1 = new Set(Object.keys(body.variables));
205
- visitor.visit(operation.query, {
204
+ graphql.visit(operation.query, {
206
205
  Variable: function (node, _key, parent) {
207
206
  if (parent && parent.kind !== 'VariableDefinition') {
208
207
  unusedNames_1.delete(node.name.value);
@@ -1 +1 @@
1
- {"version":3,"file":"http.cjs.js","sources":["parseAndCheckHttpResponse.js","serializeFetchParameter.js","selectHttpOptionsAndBody.js","checkFetcher.js","createSignalIfSupported.js","selectURI.js","rewriteURIForGET.js","createHttpLink.js","HttpLink.js"],"sourcesContent":["import { throwServerError } from '../utils';\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nexport function parseAndCheckHttpResponse(operations) {\n return function (response) { return response\n .text()\n .then(function (bodyText) {\n try {\n return JSON.parse(bodyText);\n }\n catch (err) {\n var parseError = err;\n parseError.name = 'ServerParseError';\n parseError.response = response;\n parseError.statusCode = response.status;\n parseError.bodyText = bodyText;\n throw parseError;\n }\n })\n .then(function (result) {\n if (response.status >= 300) {\n throwServerError(response, result, \"Response not successful: Received status code \" + response.status);\n }\n if (!Array.isArray(result) &&\n !hasOwnProperty.call(result, 'data') &&\n !hasOwnProperty.call(result, 'errors')) {\n throwServerError(response, result, \"Server response was missing for query '\" + (Array.isArray(operations)\n ? operations.map(function (op) { return op.operationName; })\n : operations.operationName) + \"'.\");\n }\n return result;\n }); };\n}\n//# sourceMappingURL=parseAndCheckHttpResponse.js.map","import { InvariantError } from 'ts-invariant';\nexport var serializeFetchParameter = function (p, label) {\n var serialized;\n try {\n serialized = JSON.stringify(p);\n }\n catch (e) {\n var parseError = process.env.NODE_ENV === \"production\" ? new InvariantError(23) : new InvariantError(\"Network request failed. \" + label + \" is not serializable: \" + e.message);\n parseError.parseError = e;\n throw parseError;\n }\n return serialized;\n};\n//# sourceMappingURL=serializeFetchParameter.js.map","import { __assign } from \"tslib\";\nimport { print } from 'graphql';\nvar defaultHttpOptions = {\n includeQuery: true,\n includeExtensions: false,\n};\nvar defaultHeaders = {\n accept: '*/*',\n 'content-type': 'application/json',\n};\nvar defaultOptions = {\n method: 'POST',\n};\nexport var fallbackHttpConfig = {\n http: defaultHttpOptions,\n headers: defaultHeaders,\n options: defaultOptions,\n};\nexport var selectHttpOptionsAndBody = function (operation, fallbackConfig) {\n var configs = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n configs[_i - 2] = arguments[_i];\n }\n var options = __assign(__assign({}, fallbackConfig.options), { headers: fallbackConfig.headers, credentials: fallbackConfig.credentials });\n var http = fallbackConfig.http || {};\n configs.forEach(function (config) {\n options = __assign(__assign(__assign({}, options), config.options), { headers: __assign(__assign({}, options.headers), config.headers) });\n if (config.credentials)\n options.credentials = config.credentials;\n http = __assign(__assign({}, http), config.http);\n });\n var operationName = operation.operationName, extensions = operation.extensions, variables = operation.variables, query = operation.query;\n var body = { operationName: operationName, variables: variables };\n if (http.includeExtensions)\n body.extensions = extensions;\n if (http.includeQuery)\n body.query = print(query);\n return {\n options: options,\n body: body,\n };\n};\n//# sourceMappingURL=selectHttpOptionsAndBody.js.map","import { InvariantError } from 'ts-invariant';\nexport var checkFetcher = function (fetcher) {\n if (!fetcher && typeof fetch === 'undefined') {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(22) : new InvariantError(\"\\n\\\"fetch\\\" has not been found globally and no fetcher has been configured. To fix this, install a fetch package (like https://www.npmjs.com/package/cross-fetch), instantiate the fetcher, and pass it into your HttpLink constructor. For example:\\n\\nimport fetch from 'cross-fetch';\\nimport { ApolloClient, HttpLink } from '@apollo/client';\\nconst client = new ApolloClient({\\n link: new HttpLink({ uri: '/graphql', fetch })\\n});\\n \");\n }\n};\n//# sourceMappingURL=checkFetcher.js.map","export var createSignalIfSupported = function () {\n if (typeof AbortController === 'undefined')\n return { controller: false, signal: false };\n var controller = new AbortController();\n var signal = controller.signal;\n return { controller: controller, signal: signal };\n};\n//# sourceMappingURL=createSignalIfSupported.js.map","export var selectURI = function (operation, fallbackURI) {\n var context = operation.getContext();\n var contextURI = context.uri;\n if (contextURI) {\n return contextURI;\n }\n else if (typeof fallbackURI === 'function') {\n return fallbackURI(operation);\n }\n else {\n return fallbackURI || '/graphql';\n }\n};\n//# sourceMappingURL=selectURI.js.map","import { serializeFetchParameter } from './serializeFetchParameter';\nexport function rewriteURIForGET(chosenURI, body) {\n var queryParams = [];\n var addQueryParam = function (key, value) {\n queryParams.push(key + \"=\" + encodeURIComponent(value));\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 var serializedVariables = void 0;\n try {\n serializedVariables = serializeFetchParameter(body.variables, 'Variables map');\n }\n catch (parseError) {\n return { parseError: parseError };\n }\n addQueryParam('variables', serializedVariables);\n }\n if (body.extensions) {\n var serializedExtensions = void 0;\n try {\n serializedExtensions = serializeFetchParameter(body.extensions, 'Extensions map');\n }\n catch (parseError) {\n return { parseError: parseError };\n }\n addQueryParam('extensions', serializedExtensions);\n }\n var fragment = '', preFragment = chosenURI;\n var fragmentStart = chosenURI.indexOf('#');\n if (fragmentStart !== -1) {\n fragment = chosenURI.substr(fragmentStart);\n preFragment = chosenURI.substr(0, fragmentStart);\n }\n var queryParamsPrefix = preFragment.indexOf('?') === -1 ? '?' : '&';\n var newURI = preFragment + queryParamsPrefix + queryParams.join('&') + fragment;\n return { newURI: newURI };\n}\n//# sourceMappingURL=rewriteURIForGET.js.map","import { __assign, __rest } from \"tslib\";\nimport { visit } from 'graphql/language/visitor';\nimport { ApolloLink } from '../core';\nimport { Observable } from '../../utilities';\nimport { serializeFetchParameter } from './serializeFetchParameter';\nimport { selectURI } from './selectURI';\nimport { parseAndCheckHttpResponse } from './parseAndCheckHttpResponse';\nimport { checkFetcher } from './checkFetcher';\nimport { selectHttpOptionsAndBody, fallbackHttpConfig } from './selectHttpOptionsAndBody';\nimport { createSignalIfSupported } from './createSignalIfSupported';\nimport { rewriteURIForGET } from './rewriteURIForGET';\nimport { fromError } from '../utils';\nexport var createHttpLink = function (linkOptions) {\n if (linkOptions === void 0) { linkOptions = {}; }\n var _a = linkOptions.uri, uri = _a === void 0 ? '/graphql' : _a, fetcher = linkOptions.fetch, includeExtensions = linkOptions.includeExtensions, useGETForQueries = linkOptions.useGETForQueries, _b = linkOptions.includeUnusedVariables, includeUnusedVariables = _b === void 0 ? false : _b, requestOptions = __rest(linkOptions, [\"uri\", \"fetch\", \"includeExtensions\", \"useGETForQueries\", \"includeUnusedVariables\"]);\n checkFetcher(fetcher);\n if (!fetcher) {\n fetcher = fetch;\n }\n var linkConfig = {\n http: { includeExtensions: includeExtensions },\n options: requestOptions.fetchOptions,\n credentials: requestOptions.credentials,\n headers: requestOptions.headers,\n };\n return new ApolloLink(function (operation) {\n var chosenURI = selectURI(operation, uri);\n var context = operation.getContext();\n var clientAwarenessHeaders = {};\n if (context.clientAwareness) {\n var _a = context.clientAwareness, name_1 = _a.name, version = _a.version;\n if (name_1) {\n clientAwarenessHeaders['apollographql-client-name'] = name_1;\n }\n if (version) {\n clientAwarenessHeaders['apollographql-client-version'] = version;\n }\n }\n var contextHeaders = __assign(__assign({}, clientAwarenessHeaders), context.headers);\n var contextConfig = {\n http: context.http,\n options: context.fetchOptions,\n credentials: context.credentials,\n headers: contextHeaders,\n };\n var _b = selectHttpOptionsAndBody(operation, fallbackHttpConfig, linkConfig, contextConfig), options = _b.options, body = _b.body;\n if (body.variables && !includeUnusedVariables) {\n var unusedNames_1 = new Set(Object.keys(body.variables));\n visit(operation.query, {\n Variable: function (node, _key, parent) {\n if (parent && parent.kind !== 'VariableDefinition') {\n unusedNames_1.delete(node.name.value);\n }\n },\n });\n if (unusedNames_1.size) {\n body.variables = __assign({}, body.variables);\n unusedNames_1.forEach(function (name) {\n delete body.variables[name];\n });\n }\n }\n var controller;\n if (!options.signal) {\n var _c = createSignalIfSupported(), _controller = _c.controller, signal = _c.signal;\n controller = _controller;\n if (controller)\n options.signal = signal;\n }\n var definitionIsMutation = function (d) {\n return d.kind === 'OperationDefinition' && d.operation === 'mutation';\n };\n if (useGETForQueries &&\n !operation.query.definitions.some(definitionIsMutation)) {\n options.method = 'GET';\n }\n if (options.method === 'GET') {\n var _d = rewriteURIForGET(chosenURI, body), newURI = _d.newURI, parseError = _d.parseError;\n if (parseError) {\n return fromError(parseError);\n }\n chosenURI = newURI;\n }\n else {\n try {\n options.body = serializeFetchParameter(body, 'Payload');\n }\n catch (parseError) {\n return fromError(parseError);\n }\n }\n return new Observable(function (observer) {\n fetcher(chosenURI, options)\n .then(function (response) {\n operation.setContext({ response: response });\n return response;\n })\n .then(parseAndCheckHttpResponse(operation))\n .then(function (result) {\n observer.next(result);\n observer.complete();\n return result;\n })\n .catch(function (err) {\n if (err.name === 'AbortError')\n return;\n if (err.result && err.result.errors && err.result.data) {\n observer.next(err.result);\n }\n observer.error(err);\n });\n return function () {\n if (controller)\n controller.abort();\n };\n });\n });\n};\n//# sourceMappingURL=createHttpLink.js.map","import { __extends } from \"tslib\";\nimport { ApolloLink } from '../core';\nimport { createHttpLink } from './createHttpLink';\nvar HttpLink = (function (_super) {\n __extends(HttpLink, _super);\n function HttpLink(options) {\n if (options === void 0) { options = {}; }\n var _this = _super.call(this, createHttpLink(options).request) || this;\n _this.options = options;\n return _this;\n }\n return HttpLink;\n}(ApolloLink));\nexport { HttpLink };\n//# sourceMappingURL=HttpLink.js.map"],"names":["throwServerError","InvariantError","__assign","print","__rest","ApolloLink","visit","fromError","Observable","__extends"],"mappings":"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"}
1
+ {"version":3,"file":"http.cjs.js","sources":["parseAndCheckHttpResponse.js","serializeFetchParameter.js","selectHttpOptionsAndBody.js","checkFetcher.js","createSignalIfSupported.js","selectURI.js","rewriteURIForGET.js","createHttpLink.js","HttpLink.js"],"sourcesContent":["import { throwServerError } from '../utils';\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nexport function parseAndCheckHttpResponse(operations) {\n return function (response) { return response\n .text()\n .then(function (bodyText) {\n try {\n return JSON.parse(bodyText);\n }\n catch (err) {\n var parseError = err;\n parseError.name = 'ServerParseError';\n parseError.response = response;\n parseError.statusCode = response.status;\n parseError.bodyText = bodyText;\n throw parseError;\n }\n })\n .then(function (result) {\n if (response.status >= 300) {\n throwServerError(response, result, \"Response not successful: Received status code \" + response.status);\n }\n if (!Array.isArray(result) &&\n !hasOwnProperty.call(result, 'data') &&\n !hasOwnProperty.call(result, 'errors')) {\n throwServerError(response, result, \"Server response was missing for query '\" + (Array.isArray(operations)\n ? operations.map(function (op) { return op.operationName; })\n : operations.operationName) + \"'.\");\n }\n return result;\n }); };\n}\n//# sourceMappingURL=parseAndCheckHttpResponse.js.map","import { InvariantError } from 'ts-invariant';\nexport var serializeFetchParameter = function (p, label) {\n var serialized;\n try {\n serialized = JSON.stringify(p);\n }\n catch (e) {\n var parseError = process.env.NODE_ENV === \"production\" ? new InvariantError(23) : new InvariantError(\"Network request failed. \" + label + \" is not serializable: \" + e.message);\n parseError.parseError = e;\n throw parseError;\n }\n return serialized;\n};\n//# sourceMappingURL=serializeFetchParameter.js.map","import { __assign } from \"tslib\";\nimport { print } from 'graphql';\nvar defaultHttpOptions = {\n includeQuery: true,\n includeExtensions: false,\n};\nvar defaultHeaders = {\n accept: '*/*',\n 'content-type': 'application/json',\n};\nvar defaultOptions = {\n method: 'POST',\n};\nexport var fallbackHttpConfig = {\n http: defaultHttpOptions,\n headers: defaultHeaders,\n options: defaultOptions,\n};\nexport var selectHttpOptionsAndBody = function (operation, fallbackConfig) {\n var configs = [];\n for (var _i = 2; _i < arguments.length; _i++) {\n configs[_i - 2] = arguments[_i];\n }\n var options = __assign(__assign({}, fallbackConfig.options), { headers: fallbackConfig.headers, credentials: fallbackConfig.credentials });\n var http = fallbackConfig.http || {};\n configs.forEach(function (config) {\n options = __assign(__assign(__assign({}, options), config.options), { headers: __assign(__assign({}, options.headers), config.headers) });\n if (config.credentials)\n options.credentials = config.credentials;\n http = __assign(__assign({}, http), config.http);\n });\n var operationName = operation.operationName, extensions = operation.extensions, variables = operation.variables, query = operation.query;\n var body = { operationName: operationName, variables: variables };\n if (http.includeExtensions)\n body.extensions = extensions;\n if (http.includeQuery)\n body.query = print(query);\n return {\n options: options,\n body: body,\n };\n};\n//# sourceMappingURL=selectHttpOptionsAndBody.js.map","import { InvariantError } from 'ts-invariant';\nexport var checkFetcher = function (fetcher) {\n if (!fetcher && typeof fetch === 'undefined') {\n throw process.env.NODE_ENV === \"production\" ? new InvariantError(22) : new InvariantError(\"\\n\\\"fetch\\\" has not been found globally and no fetcher has been configured. To fix this, install a fetch package (like https://www.npmjs.com/package/cross-fetch), instantiate the fetcher, and pass it into your HttpLink constructor. For example:\\n\\nimport fetch from 'cross-fetch';\\nimport { ApolloClient, HttpLink } from '@apollo/client';\\nconst client = new ApolloClient({\\n link: new HttpLink({ uri: '/graphql', fetch })\\n});\\n \");\n }\n};\n//# sourceMappingURL=checkFetcher.js.map","export var createSignalIfSupported = function () {\n if (typeof AbortController === 'undefined')\n return { controller: false, signal: false };\n var controller = new AbortController();\n var signal = controller.signal;\n return { controller: controller, signal: signal };\n};\n//# sourceMappingURL=createSignalIfSupported.js.map","export var selectURI = function (operation, fallbackURI) {\n var context = operation.getContext();\n var contextURI = context.uri;\n if (contextURI) {\n return contextURI;\n }\n else if (typeof fallbackURI === 'function') {\n return fallbackURI(operation);\n }\n else {\n return fallbackURI || '/graphql';\n }\n};\n//# sourceMappingURL=selectURI.js.map","import { serializeFetchParameter } from './serializeFetchParameter';\nexport function rewriteURIForGET(chosenURI, body) {\n var queryParams = [];\n var addQueryParam = function (key, value) {\n queryParams.push(key + \"=\" + encodeURIComponent(value));\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 var serializedVariables = void 0;\n try {\n serializedVariables = serializeFetchParameter(body.variables, 'Variables map');\n }\n catch (parseError) {\n return { parseError: parseError };\n }\n addQueryParam('variables', serializedVariables);\n }\n if (body.extensions) {\n var serializedExtensions = void 0;\n try {\n serializedExtensions = serializeFetchParameter(body.extensions, 'Extensions map');\n }\n catch (parseError) {\n return { parseError: parseError };\n }\n addQueryParam('extensions', serializedExtensions);\n }\n var fragment = '', preFragment = chosenURI;\n var fragmentStart = chosenURI.indexOf('#');\n if (fragmentStart !== -1) {\n fragment = chosenURI.substr(fragmentStart);\n preFragment = chosenURI.substr(0, fragmentStart);\n }\n var queryParamsPrefix = preFragment.indexOf('?') === -1 ? '?' : '&';\n var newURI = preFragment + queryParamsPrefix + queryParams.join('&') + fragment;\n return { newURI: newURI };\n}\n//# sourceMappingURL=rewriteURIForGET.js.map","import { __assign, __rest } from \"tslib\";\nimport { visit } from 'graphql';\nimport { ApolloLink } from '../core';\nimport { Observable } from '../../utilities';\nimport { serializeFetchParameter } from './serializeFetchParameter';\nimport { selectURI } from './selectURI';\nimport { parseAndCheckHttpResponse } from './parseAndCheckHttpResponse';\nimport { checkFetcher } from './checkFetcher';\nimport { selectHttpOptionsAndBody, fallbackHttpConfig } from './selectHttpOptionsAndBody';\nimport { createSignalIfSupported } from './createSignalIfSupported';\nimport { rewriteURIForGET } from './rewriteURIForGET';\nimport { fromError } from '../utils';\nexport var createHttpLink = function (linkOptions) {\n if (linkOptions === void 0) { linkOptions = {}; }\n var _a = linkOptions.uri, uri = _a === void 0 ? '/graphql' : _a, fetcher = linkOptions.fetch, includeExtensions = linkOptions.includeExtensions, useGETForQueries = linkOptions.useGETForQueries, _b = linkOptions.includeUnusedVariables, includeUnusedVariables = _b === void 0 ? false : _b, requestOptions = __rest(linkOptions, [\"uri\", \"fetch\", \"includeExtensions\", \"useGETForQueries\", \"includeUnusedVariables\"]);\n checkFetcher(fetcher);\n if (!fetcher) {\n fetcher = fetch;\n }\n var linkConfig = {\n http: { includeExtensions: includeExtensions },\n options: requestOptions.fetchOptions,\n credentials: requestOptions.credentials,\n headers: requestOptions.headers,\n };\n return new ApolloLink(function (operation) {\n var chosenURI = selectURI(operation, uri);\n var context = operation.getContext();\n var clientAwarenessHeaders = {};\n if (context.clientAwareness) {\n var _a = context.clientAwareness, name_1 = _a.name, version = _a.version;\n if (name_1) {\n clientAwarenessHeaders['apollographql-client-name'] = name_1;\n }\n if (version) {\n clientAwarenessHeaders['apollographql-client-version'] = version;\n }\n }\n var contextHeaders = __assign(__assign({}, clientAwarenessHeaders), context.headers);\n var contextConfig = {\n http: context.http,\n options: context.fetchOptions,\n credentials: context.credentials,\n headers: contextHeaders,\n };\n var _b = selectHttpOptionsAndBody(operation, fallbackHttpConfig, linkConfig, contextConfig), options = _b.options, body = _b.body;\n if (body.variables && !includeUnusedVariables) {\n var unusedNames_1 = new Set(Object.keys(body.variables));\n visit(operation.query, {\n Variable: function (node, _key, parent) {\n if (parent && parent.kind !== 'VariableDefinition') {\n unusedNames_1.delete(node.name.value);\n }\n },\n });\n if (unusedNames_1.size) {\n body.variables = __assign({}, body.variables);\n unusedNames_1.forEach(function (name) {\n delete body.variables[name];\n });\n }\n }\n var controller;\n if (!options.signal) {\n var _c = createSignalIfSupported(), _controller = _c.controller, signal = _c.signal;\n controller = _controller;\n if (controller)\n options.signal = signal;\n }\n var definitionIsMutation = function (d) {\n return d.kind === 'OperationDefinition' && d.operation === 'mutation';\n };\n if (useGETForQueries &&\n !operation.query.definitions.some(definitionIsMutation)) {\n options.method = 'GET';\n }\n if (options.method === 'GET') {\n var _d = rewriteURIForGET(chosenURI, body), newURI = _d.newURI, parseError = _d.parseError;\n if (parseError) {\n return fromError(parseError);\n }\n chosenURI = newURI;\n }\n else {\n try {\n options.body = serializeFetchParameter(body, 'Payload');\n }\n catch (parseError) {\n return fromError(parseError);\n }\n }\n return new Observable(function (observer) {\n fetcher(chosenURI, options)\n .then(function (response) {\n operation.setContext({ response: response });\n return response;\n })\n .then(parseAndCheckHttpResponse(operation))\n .then(function (result) {\n observer.next(result);\n observer.complete();\n return result;\n })\n .catch(function (err) {\n if (err.name === 'AbortError')\n return;\n if (err.result && err.result.errors && err.result.data) {\n observer.next(err.result);\n }\n observer.error(err);\n });\n return function () {\n if (controller)\n controller.abort();\n };\n });\n });\n};\n//# sourceMappingURL=createHttpLink.js.map","import { __extends } from \"tslib\";\nimport { ApolloLink } from '../core';\nimport { createHttpLink } from './createHttpLink';\nvar HttpLink = (function (_super) {\n __extends(HttpLink, _super);\n function HttpLink(options) {\n if (options === void 0) { options = {}; }\n var _this = _super.call(this, createHttpLink(options).request) || this;\n _this.options = options;\n return _this;\n }\n return HttpLink;\n}(ApolloLink));\nexport { HttpLink };\n//# sourceMappingURL=HttpLink.js.map"],"names":["throwServerError","InvariantError","__assign","print","__rest","ApolloLink","visit","fromError","Observable","__extends"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apollo/client",
3
- "version": "3.3.11",
3
+ "version": "3.3.15",
4
4
  "description": "A fully-featured caching GraphQL client.",
5
5
  "private": false,
6
6
  "keywords": [
@@ -29,7 +29,7 @@
29
29
  "bugs": {
30
30
  "url": "https://github.com/apollographql/apollo-client/issues"
31
31
  },
32
- "homepage": "https://www.apollographql.com",
32
+ "homepage": "https://www.apollographql.com/docs/react/",
33
33
  "peerDependencies": {
34
34
  "graphql": "^14.0.0 || ^15.0.0",
35
35
  "react": "^16.8.0 || ^17.0.0",
@@ -46,34 +46,34 @@
46
46
  "dependencies": {
47
47
  "@graphql-typed-document-node/core": "^3.0.0",
48
48
  "@types/zen-observable": "^0.8.0",
49
- "@wry/context": "^0.5.2",
50
- "@wry/equality": "^0.3.0",
49
+ "@wry/context": "^0.6.0",
50
+ "@wry/equality": "^0.4.0",
51
51
  "fast-json-stable-stringify": "^2.0.0",
52
52
  "graphql-tag": "^2.12.0",
53
53
  "hoist-non-react-statics": "^3.3.2",
54
- "optimism": "^0.14.0",
54
+ "optimism": "^0.15.0",
55
55
  "prop-types": "^15.7.2",
56
56
  "symbol-observable": "^2.0.0",
57
- "ts-invariant": "^0.6.0",
57
+ "ts-invariant": "^0.7.0",
58
58
  "tslib": "^1.10.0",
59
59
  "zen-observable": "^0.8.14"
60
60
  },
61
61
  "devDependencies": {
62
- "@babel/parser": "7.12.16",
63
- "@rollup/plugin-node-resolve": "11.1.1",
62
+ "@babel/parser": "7.13.15",
63
+ "@rollup/plugin-node-resolve": "11.2.1",
64
64
  "@testing-library/react": "9.4.1",
65
65
  "@types/fast-json-stable-stringify": "2.0.0",
66
66
  "@types/fetch-mock": "^7.3.2",
67
67
  "@types/glob": "7.1.3",
68
68
  "@types/hoist-non-react-statics": "^3.3.1",
69
- "@types/jest": "26.0.20",
69
+ "@types/jest": "26.0.22",
70
70
  "@types/lodash": "4.14.168",
71
- "@types/node": "14.14.27",
72
- "@types/react": "17.0.2",
73
- "@types/react-dom": "17.0.1",
71
+ "@types/node": "14.14.37",
72
+ "@types/react": "17.0.3",
73
+ "@types/react-dom": "17.0.2",
74
74
  "@types/recompose": "^0.30.7",
75
75
  "bundlesize": "0.18.1",
76
- "cross-fetch": "3.0.6",
76
+ "cross-fetch": "3.1.4",
77
77
  "crypto-hash": "^1.3.0",
78
78
  "fetch-mock": "7.7.3",
79
79
  "glob": "7.1.6",
@@ -82,7 +82,7 @@
82
82
  "jest": "26.6.3",
83
83
  "jest-fetch-mock": "^3.0.3",
84
84
  "jest-junit": "12.0.0",
85
- "lodash": "4.17.20",
85
+ "lodash": "4.17.21",
86
86
  "react": "17.0.1",
87
87
  "react-dom": "17.0.1",
88
88
  "recast": "0.20.4",
@@ -91,12 +91,12 @@
91
91
  "rimraf": "3.0.2",
92
92
  "rollup": "1.31.1",
93
93
  "rollup-plugin-terser": "^7.0.0",
94
- "rxjs": "6.6.3",
94
+ "rxjs": "6.6.7",
95
95
  "subscriptions-transport-ws": "^0.9.17",
96
96
  "terser": "^5.2.0",
97
- "ts-jest": "26.4.4",
97
+ "ts-jest": "26.5.4",
98
98
  "ts-node": "8.10.2",
99
- "typescript": "3.9.7",
99
+ "typescript": "3.9.9",
100
100
  "wait-for-observables": "^1.0.3"
101
101
  },
102
102
  "publishConfig": {
@@ -1 +1 @@
1
- {"version":3,"file":"QueryData.d.ts","sourceRoot":"","sources":["../../../src/react/data/QueryData.ts"],"names":[],"mappings":"AAqBA,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,UAAU,EAGX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,qBAAa,SAAS,CAAC,KAAK,EAAE,UAAU,CAAE,SAAQ,aAAa,CAC7D,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,CACpC;IACQ,SAAS,EAAE,MAAM,IAAI,CAAC;IAC7B,OAAO,CAAC,iBAAiB,CAAC,CAAqC;IAC/D,OAAO,CAAC,mBAAmB,CAAC,CAAyB;IACrD,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,WAAW,CAAC,CAA+B;IACnD,OAAO,CAAC,QAAQ,CAQQ;gBAEZ,EACV,OAAO,EACP,OAAO,EACP,SAAS,EACV,EAAE;QACD,OAAO,EAAE,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC7C,OAAO,EAAE,GAAG,CAAC;QACb,SAAS,EAAE,MAAM,IAAI,CAAC;KACvB;IAKM,OAAO,IAAI,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC;IAiBzC,WAAW,IAAI,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;IAe5C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO;IAMpC,YAAY,CAAC,EAAE,IAAY,EAAE,GAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAO;IAWtD,OAAO;IAMP,UAAU;IAsBV,YAAY;IAInB,OAAO,CAAC,YAAY,CAKlB;IAEF,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,mBAAmB;IAsC3B,OAAO,CAAC,6BAA6B;IAsBrC,OAAO,CAAC,yBAAyB;IA8BjC,OAAO,CAAC,qBAAqB;IAqC7B,OAAO,CAAC,sBAAsB;IAmC9B,OAAO,CAAC,kBAAkB;IAuB1B,OAAO,CAAC,cAAc,CAwGrB;IAED,OAAO,CAAC,sBAAsB;IAgC9B,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,UAAU,CAC2B;IAE7C,OAAO,CAAC,YAAY,CAGqC;IAEzD,OAAO,CAAC,cAAc,CAK0B;IAEhD,OAAO,CAAC,eAAe,CAErB;IAEF,OAAO,CAAC,cAAc,CAEpB;IAEF,OAAO,CAAC,kBAAkB,CAS4B;IAEtD,OAAO,CAAC,qBAAqB;CAW9B"}
1
+ {"version":3,"file":"QueryData.d.ts","sourceRoot":"","sources":["../../../src/react/data/QueryData.ts"],"names":[],"mappings":"AAqBA,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,UAAU,EAGX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,qBAAa,SAAS,CAAC,KAAK,EAAE,UAAU,CAAE,SAAQ,aAAa,CAC7D,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,CACpC;IACQ,SAAS,EAAE,MAAM,IAAI,CAAC;IAC7B,OAAO,CAAC,iBAAiB,CAAC,CAAqC;IAC/D,OAAO,CAAC,mBAAmB,CAAC,CAAyB;IACrD,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,WAAW,CAAC,CAA+B;IACnD,OAAO,CAAC,QAAQ,CAQQ;gBAEZ,EACV,OAAO,EACP,OAAO,EACP,SAAS,EACV,EAAE;QACD,OAAO,EAAE,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC7C,OAAO,EAAE,GAAG,CAAC;QACb,SAAS,EAAE,MAAM,IAAI,CAAC;KACvB;IAKM,OAAO,IAAI,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC;IAiBzC,WAAW,IAAI,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC;IAe5C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO;IAMpC,YAAY,CAAC,EAAE,IAAY,EAAE,GAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAO;IAWtD,OAAO;IAMP,UAAU;IAsBV,YAAY;IAInB,OAAO,CAAC,YAAY,CAKlB;IAEF,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,mBAAmB;IA+B3B,OAAO,CAAC,6BAA6B;IAsBrC,OAAO,CAAC,yBAAyB;IA8BjC,OAAO,CAAC,qBAAqB;IAqC7B,OAAO,CAAC,sBAAsB;IAmC9B,OAAO,CAAC,kBAAkB;IAuB1B,OAAO,CAAC,cAAc,CAwGrB;IAED,OAAO,CAAC,sBAAsB;IAgC9B,OAAO,CAAC,uBAAuB;IAO/B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,UAAU,CAC2B;IAE7C,OAAO,CAAC,YAAY,CAGqC;IAEzD,OAAO,CAAC,cAAc,CAK0B;IAEhD,OAAO,CAAC,eAAe,CAErB;IAEF,OAAO,CAAC,cAAc,CAEpB;IAEF,OAAO,CAAC,kBAAkB,CAS4B;IAEtD,OAAO,CAAC,qBAAqB;CAW9B"}
@@ -160,18 +160,13 @@ var QueryData = (function (_super) {
160
160
  this.previous.result = ssrLoading;
161
161
  return ssrLoading;
162
162
  }
163
- var result;
164
163
  if (this.ssrInitiated()) {
165
- if (skip) {
166
- result = this.getQueryResult();
164
+ var result = this.getQueryResult() || ssrLoading;
165
+ if (result.loading && !skip) {
166
+ this.context.renderPromises.addQueryPromise(this, function () { return null; });
167
167
  }
168
- else {
169
- result =
170
- this.context.renderPromises.addQueryPromise(this, this.getQueryResult) || ssrLoading;
171
- }
172
- ;
168
+ return result;
173
169
  }
174
- return result;
175
170
  };
176
171
  QueryData.prototype.prepareObservableQueryOptions = function () {
177
172
  var options = this.getOptions();
@@ -1 +1 @@
1
- {"version":3,"file":"QueryData.js","sourceRoot":"","sources":["../../../src/react/data/QueryData.ts"],"names":[],"mappings":"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","sourcesContent":["import { equal } from '@wry/equality';\n\nimport { ApolloError } from '../../errors';\n\nimport {\n ApolloClient,\n NetworkStatus,\n FetchMoreQueryOptions,\n SubscribeToMoreOptions,\n ObservableQuery,\n FetchMoreOptions,\n UpdateQueryOptions,\n DocumentNode,\n TypedDocumentNode\n} from '../../core';\n\nimport {\n ObservableSubscription\n} from '../../utilities';\n\nimport { DocumentType } from '../parser';\nimport {\n QueryResult,\n QueryDataOptions,\n QueryTuple,\n QueryLazyOptions,\n ObservableQueryFields,\n} from '../types/types';\nimport { OperationData } from './OperationData';\n\nexport class QueryData<TData, TVariables> extends OperationData<\n QueryDataOptions<TData, TVariables>\n> {\n public onNewData: () => void;\n private currentObservable?: ObservableQuery<TData, TVariables>;\n private currentSubscription?: ObservableSubscription;\n private runLazy: boolean = false;\n private lazyOptions?: QueryLazyOptions<TVariables>;\n private previous: {\n client?: ApolloClient<object>;\n query?: DocumentNode | TypedDocumentNode<TData, TVariables>;\n observableQueryOptions?: {};\n result?: QueryResult<TData, TVariables>;\n loading?: boolean;\n options?: QueryDataOptions<TData, TVariables>;\n error?: ApolloError;\n } = Object.create(null);\n\n constructor({\n options,\n context,\n onNewData\n }: {\n options: QueryDataOptions<TData, TVariables>;\n context: any;\n onNewData: () => void;\n }) {\n super(options, context);\n this.onNewData = onNewData;\n }\n\n public execute(): QueryResult<TData, TVariables> {\n this.refreshClient();\n\n const { skip, query } = this.getOptions();\n if (skip || query !== this.previous.query) {\n this.removeQuerySubscription();\n this.removeObservable(!skip);\n this.previous.query = query;\n }\n\n this.updateObservableQuery();\n\n if (this.isMounted) this.startQuerySubscription();\n\n return this.getExecuteSsrResult() || this.getExecuteResult();\n }\n\n public executeLazy(): QueryTuple<TData, TVariables> {\n return !this.runLazy\n ? [\n this.runLazyQuery,\n {\n loading: false,\n networkStatus: NetworkStatus.ready,\n called: false,\n data: undefined\n }\n ]\n : [this.runLazyQuery, this.execute()];\n }\n\n // For server-side rendering\n public fetchData(): Promise<void> | boolean {\n const options = this.getOptions();\n if (options.skip || options.ssr === false) return false;\n return new Promise(resolve => this.startQuerySubscription(resolve));\n }\n\n public afterExecute({ lazy = false }: { lazy?: boolean } = {}) {\n this.isMounted = true;\n\n if (!lazy || this.runLazy) {\n this.handleErrorOrCompleted();\n }\n\n this.previousOptions = this.getOptions();\n return this.unmount.bind(this);\n }\n\n public cleanup() {\n this.removeQuerySubscription();\n this.removeObservable(true);\n delete this.previous.result;\n }\n\n public getOptions() {\n const options = super.getOptions();\n\n if (this.lazyOptions) {\n options.variables = {\n ...options.variables,\n ...this.lazyOptions.variables\n } as TVariables;\n options.context = {\n ...options.context,\n ...this.lazyOptions.context\n };\n }\n\n // skip is not supported when using lazy query execution.\n if (this.runLazy) {\n delete options.skip;\n }\n\n return options;\n }\n\n public ssrInitiated() {\n return this.context && this.context.renderPromises;\n }\n\n private runLazyQuery = (options?: QueryLazyOptions<TVariables>) => {\n this.cleanup();\n this.runLazy = true;\n this.lazyOptions = options;\n this.onNewData();\n };\n\n private getExecuteResult(): QueryResult<TData, TVariables> {\n const result = this.getQueryResult();\n this.startQuerySubscription();\n return result;\n };\n\n private getExecuteSsrResult() {\n const { ssr, skip } = this.getOptions();\n const ssrDisabled = ssr === false;\n const fetchDisabled = this.refreshClient().client.disableNetworkFetches;\n\n const ssrLoading = {\n loading: true,\n networkStatus: NetworkStatus.loading,\n called: true,\n data: undefined,\n stale: false,\n client: this.client,\n ...this.observableQueryFields(),\n } as QueryResult<TData, TVariables>;\n\n // If SSR has been explicitly disabled, and this function has been called\n // on the server side, return the default loading state.\n if (ssrDisabled && (this.ssrInitiated() || fetchDisabled)) {\n this.previous.result = ssrLoading;\n return ssrLoading;\n }\n\n let result;\n if (this.ssrInitiated()) {\n if (skip) {\n result = this.getQueryResult();\n } else {\n result =\n this.context.renderPromises!.addQueryPromise(\n this,\n this.getQueryResult\n ) || ssrLoading;\n };\n }\n\n return result;\n }\n\n private prepareObservableQueryOptions() {\n const options = this.getOptions();\n this.verifyDocumentType(options.query, DocumentType.Query);\n const displayName = options.displayName || 'Query';\n\n // Set the fetchPolicy to cache-first for network-only and cache-and-network\n // fetches for server side renders.\n if (\n this.ssrInitiated() &&\n (options.fetchPolicy === 'network-only' ||\n options.fetchPolicy === 'cache-and-network')\n ) {\n options.fetchPolicy = 'cache-first';\n }\n\n return {\n ...options,\n displayName,\n context: options.context,\n };\n }\n\n private initializeObservableQuery() {\n // See if there is an existing observable that was used to fetch the same\n // data and if so, use it instead since it will contain the proper queryId\n // to fetch the result set. This is used during SSR.\n if (this.ssrInitiated()) {\n this.currentObservable = this.context!.renderPromises!.getSSRObservable(\n this.getOptions()\n );\n }\n\n if (!this.currentObservable) {\n const observableQueryOptions = this.prepareObservableQueryOptions();\n\n this.previous.observableQueryOptions = {\n ...observableQueryOptions,\n children: null\n };\n this.currentObservable = this.refreshClient().client.watchQuery({\n ...observableQueryOptions\n });\n\n if (this.ssrInitiated()) {\n this.context!.renderPromises!.registerSSRObservable(\n this.currentObservable,\n observableQueryOptions\n );\n }\n }\n }\n\n private updateObservableQuery() {\n // If we skipped initially, we may not have yet created the observable\n if (!this.currentObservable) {\n this.initializeObservableQuery();\n return;\n }\n\n if (this.getOptions().skip) return;\n\n const newObservableQueryOptions = {\n ...this.prepareObservableQueryOptions(),\n children: null\n };\n\n if (\n !equal(\n newObservableQueryOptions,\n this.previous.observableQueryOptions\n )\n ) {\n this.previous.observableQueryOptions = newObservableQueryOptions;\n this.currentObservable\n .setOptions(newObservableQueryOptions)\n // The error will be passed to the child container, so we don't\n // need to log it here. We could conceivably log something if\n // an option was set. OTOH we don't log errors w/ the original\n // query. See https://github.com/apollostack/react-apollo/issues/404\n .catch(() => {});\n }\n }\n\n // Setup a subscription to watch for Apollo Client `ObservableQuery` changes.\n // When new data is received, and it doesn't match the data that was used\n // during the last `QueryData.execute` call (and ultimately the last query\n // component render), trigger the `onNewData` callback. If not specified,\n // `onNewData` will fallback to the default `QueryData.onNewData` function\n // (which usually leads to a query component re-render).\n private startQuerySubscription(onNewData: () => void = this.onNewData) {\n if (this.currentSubscription || this.getOptions().skip) return;\n\n this.currentSubscription = this.currentObservable!.subscribe({\n next: ({ loading, networkStatus, data }) => {\n const previousResult = this.previous.result;\n\n // Make sure we're not attempting to re-render similar results\n if (\n previousResult &&\n previousResult.loading === loading &&\n previousResult.networkStatus === networkStatus &&\n equal(previousResult.data, data)\n ) {\n return;\n }\n\n onNewData();\n },\n error: error => {\n this.resubscribeToQuery();\n if (!error.hasOwnProperty('graphQLErrors')) throw error;\n\n const previousResult = this.previous.result;\n if (\n (previousResult && previousResult.loading) ||\n !equal(error, this.previous.error)\n ) {\n this.previous.error = error;\n onNewData();\n }\n }\n });\n }\n\n private resubscribeToQuery() {\n this.removeQuerySubscription();\n\n // Unfortunately, if `lastError` is set in the current\n // `observableQuery` when the subscription is re-created,\n // the subscription will immediately receive the error, which will\n // cause it to terminate again. To avoid this, we first clear\n // the last error/result from the `observableQuery` before re-starting\n // the subscription, and restore it afterwards (so the subscription\n // has a chance to stay open).\n const { currentObservable } = this;\n if (currentObservable) {\n const lastError = currentObservable.getLastError();\n const lastResult = currentObservable.getLastResult();\n currentObservable.resetLastResults();\n this.startQuerySubscription();\n Object.assign(currentObservable, {\n lastError,\n lastResult\n });\n }\n }\n\n private getQueryResult = (): QueryResult<TData, TVariables> => {\n let result = this.observableQueryFields() as QueryResult<TData, TVariables>;\n const options = this.getOptions();\n\n // When skipping a query (ie. we're not querying for data but still want\n // to render children), make sure the `data` is cleared out and\n // `loading` is set to `false` (since we aren't loading anything).\n //\n // NOTE: We no longer think this is the correct behavior. Skipping should\n // not automatically set `data` to `undefined`, but instead leave the\n // previous data in place. In other words, skipping should not mandate\n // that previously received data is all of a sudden removed. Unfortunately,\n // changing this is breaking, so we'll have to wait until Apollo Client\n // 4.0 to address this.\n if (options.skip) {\n result = {\n ...result,\n data: undefined,\n error: undefined,\n loading: false,\n networkStatus: NetworkStatus.ready,\n called: true,\n };\n } else if (this.currentObservable) {\n // Fetch the current result (if any) from the store.\n const currentResult = this.currentObservable.getCurrentResult();\n const { data, loading, partial, networkStatus, errors } = currentResult;\n let { error } = currentResult;\n\n // Until a set naming convention for networkError and graphQLErrors is\n // decided upon, we map errors (graphQLErrors) to the error options.\n if (errors && errors.length > 0) {\n error = new ApolloError({ graphQLErrors: errors });\n }\n\n result = {\n ...result,\n data,\n loading,\n networkStatus,\n error,\n called: true\n };\n\n if (loading) {\n // Fall through without modifying result...\n } else if (error) {\n Object.assign(result, {\n data: (this.currentObservable.getLastResult() || ({} as any))\n .data\n });\n } else {\n const { fetchPolicy } = this.currentObservable.options;\n const { partialRefetch } = options;\n if (\n partialRefetch &&\n partial &&\n (!data || Object.keys(data).length === 0) &&\n fetchPolicy !== 'cache-only'\n ) {\n // When a `Query` component is mounted, and a mutation is executed\n // that returns the same ID as the mounted `Query`, but has less\n // fields in its result, Apollo Client's `QueryManager` returns the\n // data as `undefined` since a hit can't be found in the cache.\n // This can lead to application errors when the UI elements rendered by\n // the original `Query` component are expecting certain data values to\n // exist, and they're all of a sudden stripped away. To help avoid\n // this we'll attempt to refetch the `Query` data.\n Object.assign(result, {\n loading: true,\n networkStatus: NetworkStatus.loading\n });\n result.refetch();\n return result;\n }\n }\n }\n\n result.client = this.client;\n // Store options as this.previousOptions.\n this.setOptions(options, true);\n\n const previousResult = this.previous.result;\n\n this.previous.loading =\n previousResult && previousResult.loading || false;\n\n // Ensure the returned result contains previousData as a separate\n // property, to give developers the flexibility of leveraging outdated\n // data while new data is loading from the network. Falling back to\n // previousResult.previousData when previousResult.data is falsy here\n // allows result.previousData to persist across multiple results.\n result.previousData = previousResult &&\n (previousResult.data || previousResult.previousData);\n\n this.previous.result = result;\n\n // Any query errors that exist are now available in `result`, so we'll\n // remove the original errors from the `ObservableQuery` query store to\n // make sure they aren't re-displayed on subsequent (potentially error\n // free) requests/responses.\n this.currentObservable && this.currentObservable.resetQueryStoreErrors();\n\n return result;\n }\n\n private handleErrorOrCompleted() {\n if (!this.currentObservable || !this.previous.result) return;\n\n const { data, loading, error } = this.previous.result;\n\n if (!loading) {\n const {\n query,\n variables,\n onCompleted,\n onError,\n skip\n } = this.getOptions();\n\n // No changes, so we won't call onError/onCompleted.\n if (\n this.previousOptions &&\n !this.previous.loading &&\n equal(this.previousOptions.query, query) &&\n equal(this.previousOptions.variables, variables)\n ) {\n return;\n }\n\n if (onCompleted && !error && !skip) {\n onCompleted(data as TData);\n } else if (onError && error) {\n onError(error);\n }\n }\n }\n\n private removeQuerySubscription() {\n if (this.currentSubscription) {\n this.currentSubscription.unsubscribe();\n delete this.currentSubscription;\n }\n }\n\n private removeObservable(andDelete: boolean) {\n if (this.currentObservable) {\n this.currentObservable[\"tearDownQuery\"]();\n if (andDelete) {\n delete this.currentObservable;\n }\n }\n }\n\n private obsRefetch = (variables?: Partial<TVariables>) =>\n this.currentObservable?.refetch(variables);\n\n private obsFetchMore = <K extends keyof TVariables>(\n fetchMoreOptions: FetchMoreQueryOptions<TVariables, K, TData> &\n FetchMoreOptions<TData, TVariables>\n ) => this.currentObservable!.fetchMore(fetchMoreOptions);\n\n private obsUpdateQuery = <TVars = TVariables>(\n mapFn: (\n previousQueryResult: TData,\n options: UpdateQueryOptions<TVars>\n ) => TData\n ) => this.currentObservable!.updateQuery(mapFn);\n\n private obsStartPolling = (pollInterval: number) => {\n this.currentObservable?.startPolling(pollInterval);\n };\n\n private obsStopPolling = () => {\n this.currentObservable?.stopPolling();\n };\n\n private obsSubscribeToMore = <\n TSubscriptionData = TData,\n TSubscriptionVariables = TVariables\n >(\n options: SubscribeToMoreOptions<\n TData,\n TSubscriptionVariables,\n TSubscriptionData\n >\n ) => this.currentObservable!.subscribeToMore(options);\n\n private observableQueryFields() {\n return {\n variables: this.currentObservable?.variables,\n refetch: this.obsRefetch,\n fetchMore: this.obsFetchMore,\n updateQuery: this.obsUpdateQuery,\n startPolling: this.obsStartPolling,\n stopPolling: this.obsStopPolling,\n subscribeToMore: this.obsSubscribeToMore\n } as ObservableQueryFields<TData, TVariables>;\n }\n}\n"]}
1
+ {"version":3,"file":"QueryData.js","sourceRoot":"","sources":["../../../src/react/data/QueryData.ts"],"names":[],"mappings":"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","sourcesContent":["import { equal } from '@wry/equality';\n\nimport { ApolloError } from '../../errors';\n\nimport {\n ApolloClient,\n NetworkStatus,\n FetchMoreQueryOptions,\n SubscribeToMoreOptions,\n ObservableQuery,\n FetchMoreOptions,\n UpdateQueryOptions,\n DocumentNode,\n TypedDocumentNode\n} from '../../core';\n\nimport {\n ObservableSubscription\n} from '../../utilities';\n\nimport { DocumentType } from '../parser';\nimport {\n QueryResult,\n QueryDataOptions,\n QueryTuple,\n QueryLazyOptions,\n ObservableQueryFields,\n} from '../types/types';\nimport { OperationData } from './OperationData';\n\nexport class QueryData<TData, TVariables> extends OperationData<\n QueryDataOptions<TData, TVariables>\n> {\n public onNewData: () => void;\n private currentObservable?: ObservableQuery<TData, TVariables>;\n private currentSubscription?: ObservableSubscription;\n private runLazy: boolean = false;\n private lazyOptions?: QueryLazyOptions<TVariables>;\n private previous: {\n client?: ApolloClient<object>;\n query?: DocumentNode | TypedDocumentNode<TData, TVariables>;\n observableQueryOptions?: {};\n result?: QueryResult<TData, TVariables>;\n loading?: boolean;\n options?: QueryDataOptions<TData, TVariables>;\n error?: ApolloError;\n } = Object.create(null);\n\n constructor({\n options,\n context,\n onNewData\n }: {\n options: QueryDataOptions<TData, TVariables>;\n context: any;\n onNewData: () => void;\n }) {\n super(options, context);\n this.onNewData = onNewData;\n }\n\n public execute(): QueryResult<TData, TVariables> {\n this.refreshClient();\n\n const { skip, query } = this.getOptions();\n if (skip || query !== this.previous.query) {\n this.removeQuerySubscription();\n this.removeObservable(!skip);\n this.previous.query = query;\n }\n\n this.updateObservableQuery();\n\n if (this.isMounted) this.startQuerySubscription();\n\n return this.getExecuteSsrResult() || this.getExecuteResult();\n }\n\n public executeLazy(): QueryTuple<TData, TVariables> {\n return !this.runLazy\n ? [\n this.runLazyQuery,\n {\n loading: false,\n networkStatus: NetworkStatus.ready,\n called: false,\n data: undefined\n }\n ]\n : [this.runLazyQuery, this.execute()];\n }\n\n // For server-side rendering\n public fetchData(): Promise<void> | boolean {\n const options = this.getOptions();\n if (options.skip || options.ssr === false) return false;\n return new Promise(resolve => this.startQuerySubscription(resolve));\n }\n\n public afterExecute({ lazy = false }: { lazy?: boolean } = {}) {\n this.isMounted = true;\n\n if (!lazy || this.runLazy) {\n this.handleErrorOrCompleted();\n }\n\n this.previousOptions = this.getOptions();\n return this.unmount.bind(this);\n }\n\n public cleanup() {\n this.removeQuerySubscription();\n this.removeObservable(true);\n delete this.previous.result;\n }\n\n public getOptions() {\n const options = super.getOptions();\n\n if (this.lazyOptions) {\n options.variables = {\n ...options.variables,\n ...this.lazyOptions.variables\n } as TVariables;\n options.context = {\n ...options.context,\n ...this.lazyOptions.context\n };\n }\n\n // skip is not supported when using lazy query execution.\n if (this.runLazy) {\n delete options.skip;\n }\n\n return options;\n }\n\n public ssrInitiated() {\n return this.context && this.context.renderPromises;\n }\n\n private runLazyQuery = (options?: QueryLazyOptions<TVariables>) => {\n this.cleanup();\n this.runLazy = true;\n this.lazyOptions = options;\n this.onNewData();\n };\n\n private getExecuteResult(): QueryResult<TData, TVariables> {\n const result = this.getQueryResult();\n this.startQuerySubscription();\n return result;\n };\n\n private getExecuteSsrResult() {\n const { ssr, skip } = this.getOptions();\n const ssrDisabled = ssr === false;\n const fetchDisabled = this.refreshClient().client.disableNetworkFetches;\n\n const ssrLoading = {\n loading: true,\n networkStatus: NetworkStatus.loading,\n called: true,\n data: undefined,\n stale: false,\n client: this.client,\n ...this.observableQueryFields(),\n } as QueryResult<TData, TVariables>;\n\n // If SSR has been explicitly disabled, and this function has been called\n // on the server side, return the default loading state.\n if (ssrDisabled && (this.ssrInitiated() || fetchDisabled)) {\n this.previous.result = ssrLoading;\n return ssrLoading;\n }\n\n if (this.ssrInitiated()) {\n const result = this.getQueryResult() || ssrLoading;\n if (result.loading && !skip) {\n this.context.renderPromises!.addQueryPromise(this, () => null);\n }\n return result;\n }\n }\n\n private prepareObservableQueryOptions() {\n const options = this.getOptions();\n this.verifyDocumentType(options.query, DocumentType.Query);\n const displayName = options.displayName || 'Query';\n\n // Set the fetchPolicy to cache-first for network-only and cache-and-network\n // fetches for server side renders.\n if (\n this.ssrInitiated() &&\n (options.fetchPolicy === 'network-only' ||\n options.fetchPolicy === 'cache-and-network')\n ) {\n options.fetchPolicy = 'cache-first';\n }\n\n return {\n ...options,\n displayName,\n context: options.context,\n };\n }\n\n private initializeObservableQuery() {\n // See if there is an existing observable that was used to fetch the same\n // data and if so, use it instead since it will contain the proper queryId\n // to fetch the result set. This is used during SSR.\n if (this.ssrInitiated()) {\n this.currentObservable = this.context!.renderPromises!.getSSRObservable(\n this.getOptions()\n );\n }\n\n if (!this.currentObservable) {\n const observableQueryOptions = this.prepareObservableQueryOptions();\n\n this.previous.observableQueryOptions = {\n ...observableQueryOptions,\n children: null\n };\n this.currentObservable = this.refreshClient().client.watchQuery({\n ...observableQueryOptions\n });\n\n if (this.ssrInitiated()) {\n this.context!.renderPromises!.registerSSRObservable(\n this.currentObservable,\n observableQueryOptions\n );\n }\n }\n }\n\n private updateObservableQuery() {\n // If we skipped initially, we may not have yet created the observable\n if (!this.currentObservable) {\n this.initializeObservableQuery();\n return;\n }\n\n if (this.getOptions().skip) return;\n\n const newObservableQueryOptions = {\n ...this.prepareObservableQueryOptions(),\n children: null\n };\n\n if (\n !equal(\n newObservableQueryOptions,\n this.previous.observableQueryOptions\n )\n ) {\n this.previous.observableQueryOptions = newObservableQueryOptions;\n this.currentObservable\n .setOptions(newObservableQueryOptions)\n // The error will be passed to the child container, so we don't\n // need to log it here. We could conceivably log something if\n // an option was set. OTOH we don't log errors w/ the original\n // query. See https://github.com/apollostack/react-apollo/issues/404\n .catch(() => {});\n }\n }\n\n // Setup a subscription to watch for Apollo Client `ObservableQuery` changes.\n // When new data is received, and it doesn't match the data that was used\n // during the last `QueryData.execute` call (and ultimately the last query\n // component render), trigger the `onNewData` callback. If not specified,\n // `onNewData` will fallback to the default `QueryData.onNewData` function\n // (which usually leads to a query component re-render).\n private startQuerySubscription(onNewData: () => void = this.onNewData) {\n if (this.currentSubscription || this.getOptions().skip) return;\n\n this.currentSubscription = this.currentObservable!.subscribe({\n next: ({ loading, networkStatus, data }) => {\n const previousResult = this.previous.result;\n\n // Make sure we're not attempting to re-render similar results\n if (\n previousResult &&\n previousResult.loading === loading &&\n previousResult.networkStatus === networkStatus &&\n equal(previousResult.data, data)\n ) {\n return;\n }\n\n onNewData();\n },\n error: error => {\n this.resubscribeToQuery();\n if (!error.hasOwnProperty('graphQLErrors')) throw error;\n\n const previousResult = this.previous.result;\n if (\n (previousResult && previousResult.loading) ||\n !equal(error, this.previous.error)\n ) {\n this.previous.error = error;\n onNewData();\n }\n }\n });\n }\n\n private resubscribeToQuery() {\n this.removeQuerySubscription();\n\n // Unfortunately, if `lastError` is set in the current\n // `observableQuery` when the subscription is re-created,\n // the subscription will immediately receive the error, which will\n // cause it to terminate again. To avoid this, we first clear\n // the last error/result from the `observableQuery` before re-starting\n // the subscription, and restore it afterwards (so the subscription\n // has a chance to stay open).\n const { currentObservable } = this;\n if (currentObservable) {\n const lastError = currentObservable.getLastError();\n const lastResult = currentObservable.getLastResult();\n currentObservable.resetLastResults();\n this.startQuerySubscription();\n Object.assign(currentObservable, {\n lastError,\n lastResult\n });\n }\n }\n\n private getQueryResult = (): QueryResult<TData, TVariables> => {\n let result = this.observableQueryFields() as QueryResult<TData, TVariables>;\n const options = this.getOptions();\n\n // When skipping a query (ie. we're not querying for data but still want\n // to render children), make sure the `data` is cleared out and\n // `loading` is set to `false` (since we aren't loading anything).\n //\n // NOTE: We no longer think this is the correct behavior. Skipping should\n // not automatically set `data` to `undefined`, but instead leave the\n // previous data in place. In other words, skipping should not mandate\n // that previously received data is all of a sudden removed. Unfortunately,\n // changing this is breaking, so we'll have to wait until Apollo Client\n // 4.0 to address this.\n if (options.skip) {\n result = {\n ...result,\n data: undefined,\n error: undefined,\n loading: false,\n networkStatus: NetworkStatus.ready,\n called: true,\n };\n } else if (this.currentObservable) {\n // Fetch the current result (if any) from the store.\n const currentResult = this.currentObservable.getCurrentResult();\n const { data, loading, partial, networkStatus, errors } = currentResult;\n let { error } = currentResult;\n\n // Until a set naming convention for networkError and graphQLErrors is\n // decided upon, we map errors (graphQLErrors) to the error options.\n if (errors && errors.length > 0) {\n error = new ApolloError({ graphQLErrors: errors });\n }\n\n result = {\n ...result,\n data,\n loading,\n networkStatus,\n error,\n called: true\n };\n\n if (loading) {\n // Fall through without modifying result...\n } else if (error) {\n Object.assign(result, {\n data: (this.currentObservable.getLastResult() || ({} as any))\n .data\n });\n } else {\n const { fetchPolicy } = this.currentObservable.options;\n const { partialRefetch } = options;\n if (\n partialRefetch &&\n partial &&\n (!data || Object.keys(data).length === 0) &&\n fetchPolicy !== 'cache-only'\n ) {\n // When a `Query` component is mounted, and a mutation is executed\n // that returns the same ID as the mounted `Query`, but has less\n // fields in its result, Apollo Client's `QueryManager` returns the\n // data as `undefined` since a hit can't be found in the cache.\n // This can lead to application errors when the UI elements rendered by\n // the original `Query` component are expecting certain data values to\n // exist, and they're all of a sudden stripped away. To help avoid\n // this we'll attempt to refetch the `Query` data.\n Object.assign(result, {\n loading: true,\n networkStatus: NetworkStatus.loading\n });\n result.refetch();\n return result;\n }\n }\n }\n\n result.client = this.client;\n // Store options as this.previousOptions.\n this.setOptions(options, true);\n\n const previousResult = this.previous.result;\n\n this.previous.loading =\n previousResult && previousResult.loading || false;\n\n // Ensure the returned result contains previousData as a separate\n // property, to give developers the flexibility of leveraging outdated\n // data while new data is loading from the network. Falling back to\n // previousResult.previousData when previousResult.data is falsy here\n // allows result.previousData to persist across multiple results.\n result.previousData = previousResult &&\n (previousResult.data || previousResult.previousData);\n\n this.previous.result = result;\n\n // Any query errors that exist are now available in `result`, so we'll\n // remove the original errors from the `ObservableQuery` query store to\n // make sure they aren't re-displayed on subsequent (potentially error\n // free) requests/responses.\n this.currentObservable && this.currentObservable.resetQueryStoreErrors();\n\n return result;\n }\n\n private handleErrorOrCompleted() {\n if (!this.currentObservable || !this.previous.result) return;\n\n const { data, loading, error } = this.previous.result;\n\n if (!loading) {\n const {\n query,\n variables,\n onCompleted,\n onError,\n skip\n } = this.getOptions();\n\n // No changes, so we won't call onError/onCompleted.\n if (\n this.previousOptions &&\n !this.previous.loading &&\n equal(this.previousOptions.query, query) &&\n equal(this.previousOptions.variables, variables)\n ) {\n return;\n }\n\n if (onCompleted && !error && !skip) {\n onCompleted(data as TData);\n } else if (onError && error) {\n onError(error);\n }\n }\n }\n\n private removeQuerySubscription() {\n if (this.currentSubscription) {\n this.currentSubscription.unsubscribe();\n delete this.currentSubscription;\n }\n }\n\n private removeObservable(andDelete: boolean) {\n if (this.currentObservable) {\n this.currentObservable[\"tearDownQuery\"]();\n if (andDelete) {\n delete this.currentObservable;\n }\n }\n }\n\n private obsRefetch = (variables?: Partial<TVariables>) =>\n this.currentObservable?.refetch(variables);\n\n private obsFetchMore = <K extends keyof TVariables>(\n fetchMoreOptions: FetchMoreQueryOptions<TVariables, K, TData> &\n FetchMoreOptions<TData, TVariables>\n ) => this.currentObservable!.fetchMore(fetchMoreOptions);\n\n private obsUpdateQuery = <TVars = TVariables>(\n mapFn: (\n previousQueryResult: TData,\n options: UpdateQueryOptions<TVars>\n ) => TData\n ) => this.currentObservable!.updateQuery(mapFn);\n\n private obsStartPolling = (pollInterval: number) => {\n this.currentObservable?.startPolling(pollInterval);\n };\n\n private obsStopPolling = () => {\n this.currentObservable?.stopPolling();\n };\n\n private obsSubscribeToMore = <\n TSubscriptionData = TData,\n TSubscriptionVariables = TVariables\n >(\n options: SubscribeToMoreOptions<\n TData,\n TSubscriptionVariables,\n TSubscriptionData\n >\n ) => this.currentObservable!.subscribeToMore(options);\n\n private observableQueryFields() {\n return {\n variables: this.currentObservable?.variables,\n refetch: this.obsRefetch,\n fetchMore: this.obsFetchMore,\n updateQuery: this.obsUpdateQuery,\n startPolling: this.obsStartPolling,\n stopPolling: this.obsStopPolling,\n subscribeToMore: this.obsSubscribeToMore\n } as ObservableQueryFields<TData, TVariables>;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"SubscriptionData.d.ts","sourceRoot":"","sources":["../../../src/react/data/SubscriptionData.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAEL,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AAExB,qBAAa,gBAAgB,CAC3B,KAAK,GAAG,GAAG,EACX,UAAU,GAAG,GAAG,CAChB,SAAQ,aAAa,CAAC,uBAAuB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACjE,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,iBAAiB,CAAqC;gBAElD,EACV,OAAO,EACP,OAAO,EACP,SAAS,EACV,EAAE;QACD,OAAO,EAAE,uBAAuB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QACpD,OAAO,EAAE,GAAG,CAAC;QACb,SAAS,EAAE,GAAG,CAAC;KAChB;IAMM,OAAO,CAAC,MAAM,EAAE,kBAAkB,CAAC,KAAK,CAAC;;;;;;IAwCzC,YAAY;IAIZ,OAAO;IAKd,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,eAAe;CAMxB"}
1
+ {"version":3,"file":"SubscriptionData.d.ts","sourceRoot":"","sources":["../../../src/react/data/SubscriptionData.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAEL,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AAExB,qBAAa,gBAAgB,CAC3B,KAAK,GAAG,GAAG,EACX,UAAU,GAAG,GAAG,CAChB,SAAQ,aAAa,CAAC,uBAAuB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACjE,OAAO,CAAC,SAAS,CAAM;IACvB,OAAO,CAAC,iBAAiB,CAAqC;gBAElD,EACV,OAAO,EACP,OAAO,EACP,SAAS,EACV,EAAE;QACD,OAAO,EAAE,uBAAuB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QACpD,OAAO,EAAE,GAAG,CAAC;QACb,SAAS,EAAE,GAAG,CAAC;KAChB;IAMM,OAAO,CAAC,MAAM,EAAE,kBAAkB,CAAC,KAAK,CAAC;;;;;;IAwCzC,YAAY;IAIZ,OAAO;IAKd,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,eAAe;CAMxB"}
@@ -56,7 +56,8 @@ var SubscriptionData = (function (_super) {
56
56
  this.currentObservable.query = this.refreshClient().client.subscribe({
57
57
  query: options.subscription,
58
58
  variables: options.variables,
59
- fetchPolicy: options.fetchPolicy
59
+ fetchPolicy: options.fetchPolicy,
60
+ context: options.context,
60
61
  });
61
62
  };
62
63
  SubscriptionData.prototype.startSubscription = function () {
@@ -101,10 +102,13 @@ var SubscriptionData = (function (_super) {
101
102
  });
102
103
  };
103
104
  SubscriptionData.prototype.completeSubscription = function () {
104
- var onSubscriptionComplete = this.getOptions().onSubscriptionComplete;
105
- if (onSubscriptionComplete)
106
- onSubscriptionComplete();
107
- this.endSubscription();
105
+ var _this = this;
106
+ Promise.resolve().then(function () {
107
+ var onSubscriptionComplete = _this.getOptions().onSubscriptionComplete;
108
+ if (onSubscriptionComplete)
109
+ onSubscriptionComplete();
110
+ _this.endSubscription();
111
+ });
108
112
  };
109
113
  SubscriptionData.prototype.endSubscription = function () {
110
114
  if (this.currentObservable.subscription) {
@@ -1 +1 @@
1
- {"version":3,"file":"SubscriptionData.js","sourceRoot":"","sources":["../../../src/react/data/SubscriptionData.ts"],"names":[],"mappings":"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","sourcesContent":["import { equal } from '@wry/equality';\n\nimport { OperationData } from './OperationData';\nimport {\n SubscriptionCurrentObservable,\n SubscriptionDataOptions,\n SubscriptionResult\n} from '../types/types';\n\nexport class SubscriptionData<\n TData = any,\n TVariables = any\n> extends OperationData<SubscriptionDataOptions<TData, TVariables>> {\n private setResult: any;\n private currentObservable: SubscriptionCurrentObservable = {};\n\n constructor({\n options,\n context,\n setResult\n }: {\n options: SubscriptionDataOptions<TData, TVariables>;\n context: any;\n setResult: any;\n }) {\n super(options, context);\n this.setResult = setResult;\n this.initialize(options);\n }\n\n public execute(result: SubscriptionResult<TData>) {\n if (this.getOptions().skip === true) {\n this.cleanup();\n return {\n loading: false,\n error: undefined,\n data: undefined,\n variables: this.getOptions().variables\n };\n }\n\n let currentResult = result;\n if (this.refreshClient().isNew) {\n currentResult = this.getLoadingResult();\n }\n\n let { shouldResubscribe } = this.getOptions();\n if (typeof shouldResubscribe === 'function') {\n shouldResubscribe = !!shouldResubscribe(this.getOptions());\n }\n\n if (\n shouldResubscribe !== false &&\n this.previousOptions &&\n Object.keys(this.previousOptions).length > 0 &&\n (this.previousOptions.subscription !== this.getOptions().subscription ||\n !equal(this.previousOptions.variables, this.getOptions().variables) ||\n this.previousOptions.skip !== this.getOptions().skip)\n ) {\n this.cleanup();\n currentResult = this.getLoadingResult();\n }\n\n this.initialize(this.getOptions());\n this.startSubscription();\n\n this.previousOptions = this.getOptions();\n return { ...currentResult, variables: this.getOptions().variables };\n }\n\n public afterExecute() {\n this.isMounted = true;\n }\n\n public cleanup() {\n this.endSubscription();\n delete this.currentObservable.query;\n }\n\n private initialize(options: SubscriptionDataOptions<TData, TVariables>) {\n if (this.currentObservable.query || this.getOptions().skip === true) return;\n this.currentObservable.query = this.refreshClient().client.subscribe({\n query: options.subscription,\n variables: options.variables,\n fetchPolicy: options.fetchPolicy\n });\n }\n\n private startSubscription() {\n if (this.currentObservable.subscription) return;\n this.currentObservable.subscription = this.currentObservable.query!.subscribe(\n {\n next: this.updateCurrentData.bind(this),\n error: this.updateError.bind(this),\n complete: this.completeSubscription.bind(this)\n }\n );\n }\n\n private getLoadingResult() {\n return {\n loading: true,\n error: undefined,\n data: undefined\n } as SubscriptionResult<TData>;\n }\n\n private updateResult(result: SubscriptionResult) {\n if (this.isMounted) {\n this.setResult(result);\n }\n }\n\n private updateCurrentData(result: SubscriptionResult<TData>) {\n const { onSubscriptionData } = this.getOptions();\n\n this.updateResult({\n data: result.data,\n loading: false,\n error: undefined\n });\n\n if (onSubscriptionData) {\n onSubscriptionData({\n client: this.refreshClient().client,\n subscriptionData: result\n });\n }\n }\n\n private updateError(error: any) {\n this.updateResult({\n error,\n loading: false\n });\n }\n\n private completeSubscription() {\n const { onSubscriptionComplete } = this.getOptions();\n if (onSubscriptionComplete) onSubscriptionComplete();\n this.endSubscription();\n }\n\n private endSubscription() {\n if (this.currentObservable.subscription) {\n this.currentObservable.subscription.unsubscribe();\n delete this.currentObservable.subscription;\n }\n }\n}\n"]}
1
+ {"version":3,"file":"SubscriptionData.js","sourceRoot":"","sources":["../../../src/react/data/SubscriptionData.ts"],"names":[],"mappings":"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","sourcesContent":["import { equal } from '@wry/equality';\n\nimport { OperationData } from './OperationData';\nimport {\n SubscriptionCurrentObservable,\n SubscriptionDataOptions,\n SubscriptionResult\n} from '../types/types';\n\nexport class SubscriptionData<\n TData = any,\n TVariables = any\n> extends OperationData<SubscriptionDataOptions<TData, TVariables>> {\n private setResult: any;\n private currentObservable: SubscriptionCurrentObservable = {};\n\n constructor({\n options,\n context,\n setResult\n }: {\n options: SubscriptionDataOptions<TData, TVariables>;\n context: any;\n setResult: any;\n }) {\n super(options, context);\n this.setResult = setResult;\n this.initialize(options);\n }\n\n public execute(result: SubscriptionResult<TData>) {\n if (this.getOptions().skip === true) {\n this.cleanup();\n return {\n loading: false,\n error: undefined,\n data: undefined,\n variables: this.getOptions().variables\n };\n }\n\n let currentResult = result;\n if (this.refreshClient().isNew) {\n currentResult = this.getLoadingResult();\n }\n\n let { shouldResubscribe } = this.getOptions();\n if (typeof shouldResubscribe === 'function') {\n shouldResubscribe = !!shouldResubscribe(this.getOptions());\n }\n\n if (\n shouldResubscribe !== false &&\n this.previousOptions &&\n Object.keys(this.previousOptions).length > 0 &&\n (this.previousOptions.subscription !== this.getOptions().subscription ||\n !equal(this.previousOptions.variables, this.getOptions().variables) ||\n this.previousOptions.skip !== this.getOptions().skip)\n ) {\n this.cleanup();\n currentResult = this.getLoadingResult();\n }\n\n this.initialize(this.getOptions());\n this.startSubscription();\n\n this.previousOptions = this.getOptions();\n return { ...currentResult, variables: this.getOptions().variables };\n }\n\n public afterExecute() {\n this.isMounted = true;\n }\n\n public cleanup() {\n this.endSubscription();\n delete this.currentObservable.query;\n }\n\n private initialize(options: SubscriptionDataOptions<TData, TVariables>) {\n if (this.currentObservable.query || this.getOptions().skip === true) return;\n this.currentObservable.query = this.refreshClient().client.subscribe({\n query: options.subscription,\n variables: options.variables,\n fetchPolicy: options.fetchPolicy,\n context: options.context,\n });\n }\n\n private startSubscription() {\n if (this.currentObservable.subscription) return;\n this.currentObservable.subscription = this.currentObservable.query!.subscribe(\n {\n next: this.updateCurrentData.bind(this),\n error: this.updateError.bind(this),\n complete: this.completeSubscription.bind(this)\n }\n );\n }\n\n private getLoadingResult() {\n return {\n loading: true,\n error: undefined,\n data: undefined\n } as SubscriptionResult<TData>;\n }\n\n private updateResult(result: SubscriptionResult) {\n if (this.isMounted) {\n this.setResult(result);\n }\n }\n\n private updateCurrentData(result: SubscriptionResult<TData>) {\n const { onSubscriptionData } = this.getOptions();\n\n this.updateResult({\n data: result.data,\n loading: false,\n error: undefined\n });\n\n if (onSubscriptionData) {\n onSubscriptionData({\n client: this.refreshClient().client,\n subscriptionData: result\n });\n }\n }\n\n private updateError(error: any) {\n this.updateResult({\n error,\n loading: false\n });\n }\n\n private completeSubscription() {\n // We have to defer this endSubscription call, because otherwise multiple\n // subscriptions for the same component will cause infinite rendering.\n // See https://github.com/apollographql/apollo-client/pull/7917\n Promise.resolve().then(() => {\n const { onSubscriptionComplete } = this.getOptions();\n if (onSubscriptionComplete) onSubscriptionComplete();\n this.endSubscription();\n });\n }\n\n private endSubscription() {\n if (this.currentObservable.subscription) {\n this.currentObservable.subscription.unsubscribe();\n delete this.currentObservable.subscription;\n }\n }\n}\n"]}
@@ -113,7 +113,8 @@ var SubscriptionData = (function (_super) {
113
113
  this.currentObservable.query = this.refreshClient().client.subscribe({
114
114
  query: options.subscription,
115
115
  variables: options.variables,
116
- fetchPolicy: options.fetchPolicy
116
+ fetchPolicy: options.fetchPolicy,
117
+ context: options.context,
117
118
  });
118
119
  };
119
120
  SubscriptionData.prototype.startSubscription = function () {
@@ -158,10 +159,13 @@ var SubscriptionData = (function (_super) {
158
159
  });
159
160
  };
160
161
  SubscriptionData.prototype.completeSubscription = function () {
161
- var onSubscriptionComplete = this.getOptions().onSubscriptionComplete;
162
- if (onSubscriptionComplete)
163
- onSubscriptionComplete();
164
- this.endSubscription();
162
+ var _this = this;
163
+ Promise.resolve().then(function () {
164
+ var onSubscriptionComplete = _this.getOptions().onSubscriptionComplete;
165
+ if (onSubscriptionComplete)
166
+ onSubscriptionComplete();
167
+ _this.endSubscription();
168
+ });
165
169
  };
166
170
  SubscriptionData.prototype.endSubscription = function () {
167
171
  if (this.currentObservable.subscription) {
@@ -428,17 +432,13 @@ var QueryData = (function (_super) {
428
432
  this.previous.result = ssrLoading;
429
433
  return ssrLoading;
430
434
  }
431
- var result;
432
435
  if (this.ssrInitiated()) {
433
- if (skip) {
434
- result = this.getQueryResult();
435
- }
436
- else {
437
- result =
438
- this.context.renderPromises.addQueryPromise(this, this.getQueryResult) || ssrLoading;
436
+ var result = this.getQueryResult() || ssrLoading;
437
+ if (result.loading && !skip) {
438
+ this.context.renderPromises.addQueryPromise(this, function () { return null; });
439
439
  }
440
+ return result;
440
441
  }
441
- return result;
442
442
  };
443
443
  QueryData.prototype.prepareObservableQueryOptions = function () {
444
444
  var options = this.getOptions();