diff --git a/package.json b/package.json index b42761d19..aafb1fcc1 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ }, "dependencies": { "analytics-node": "^2.1.1", - "apollo-client": "^1.0.0-rc.6", + "apollo-client": "^1.0.1", "babel-runtime": "^6.18.0", "bcrypt": "^0.8.7", "body-parser": "^1.15.2", diff --git a/packages/vulcan-core/lib/modules/containers/withDocument.js b/packages/vulcan-core/lib/modules/containers/withDocument.js index 1039c31d0..044e5fb7a 100644 --- a/packages/vulcan-core/lib/modules/containers/withDocument.js +++ b/packages/vulcan-core/lib/modules/containers/withDocument.js @@ -14,6 +14,7 @@ export default function withDocument (options) { return graphql(gql` query ${queryName}($documentId: String, $slug: String) { ${singleResolverName}(documentId: $documentId, slug: $slug) { + __typename ...${fragmentName} } } diff --git a/packages/vulcan-core/lib/modules/containers/withList.js b/packages/vulcan-core/lib/modules/containers/withList.js index c7545185c..e17261136 100644 --- a/packages/vulcan-core/lib/modules/containers/withList.js +++ b/packages/vulcan-core/lib/modules/containers/withList.js @@ -76,6 +76,7 @@ const withList = (options) => { query ${queryName}($terms: JSON) { ${totalResolverName}(terms: $terms) ${listResolverName}(terms: $terms) { + __typename ...${fragmentName} } } diff --git a/packages/vulcan-lib/lib/modules/apollo.js b/packages/vulcan-lib/lib/modules/apollo.js index ecffe4916..cf987ead2 100644 --- a/packages/vulcan-lib/lib/modules/apollo.js +++ b/packages/vulcan-lib/lib/modules/apollo.js @@ -78,7 +78,8 @@ const meteorClientConfig = networkInterfaceConfig => ({ ssrMode: Meteor.isServer, networkInterface: createMeteorNetworkInterface(networkInterfaceConfig), queryDeduplication: true, // http://dev.apollodata.com/core/network.html#query-deduplication - + addTypename: true, + // Default to using Mongo _id, must use _id for queries. dataIdFromObject(result) { if (result._id && result.__typename) {