graphql-tools
Advanced tools
Comparing version 2.0.0-alpha.4 to 2.0.0-alpha.5
import { GraphQLSchema } from 'graphql'; | ||
import { SchemaLink } from './types'; | ||
export declare const ROOT_SCHEMA = "__ROOT__"; | ||
export default function mergeSchemas({links, schemas}: { | ||
links?: Array<SchemaLink>; | ||
schemas: Array<{ | ||
prefix: string; | ||
prefix?: string; | ||
schema: GraphQLSchema; | ||
}>; | ||
}): GraphQLSchema; |
@@ -49,2 +49,3 @@ "use strict"; | ||
var TypeRegistry_1 = require("./TypeRegistry"); | ||
exports.ROOT_SCHEMA = '__ROOT__'; | ||
function mergeSchemas(_a) { | ||
@@ -56,3 +57,3 @@ var _b = _a.links, links = _b === void 0 ? [] : _b, schemas = _a.schemas; | ||
schemas.forEach(function (_a) { | ||
var prefix = _a.prefix, schema = _a.schema; | ||
var _b = _a.prefix, prefix = _b === void 0 ? exports.ROOT_SCHEMA : _b, schema = _a.schema; | ||
typeRegistry.setSchema(prefix, schema); | ||
@@ -102,3 +103,3 @@ }); | ||
function prefixName(name, prefix) { | ||
return prefix + "_" + name; | ||
return prefix ? prefix + "_" + name : "" + name; | ||
} | ||
@@ -109,10 +110,3 @@ function recreateCompositeType(schema, type, registry) { | ||
// XXX we don't really support interfaces yet | ||
var interfaces = type.getInterfaces(); | ||
var interfaceNames_1; | ||
if (interfaces) { | ||
interfaceNames_1 = interfaces.map(function (iface) { return iface.name; }); | ||
} | ||
else { | ||
interfaceNames_1 = []; | ||
} | ||
var interfaces_1 = type.getInterfaces(); | ||
var newType = new graphql_1.GraphQLObjectType({ | ||
@@ -123,7 +117,3 @@ name: type.name, | ||
fields: function () { return (__assign({}, fieldMapToFieldConfigMap(fields_1, registry), createLinks(registry.getLinksByType(type.name), registry))); }, | ||
interfaces: function () { | ||
return interfaceNames_1.map(function () { | ||
throw new Error('Not supporting interfaces yet'); | ||
}); | ||
}, | ||
interfaces: function () { return interfaces_1.map(function (iface) { return registry.resolveType(iface); }); }, | ||
}); | ||
@@ -167,3 +157,5 @@ return newType; | ||
return lodash_1.fromPairs(links.map(function (link) { | ||
var _a = link.to.split('_'), schemaName = _a[0], field = _a[1]; | ||
var _a = link.to.includes('_') | ||
? link.to.split('_') | ||
: [exports.ROOT_SCHEMA, link.to], schemaName = _a[0], field = _a[1]; | ||
var schema = registry.getSchema(schemaName); | ||
@@ -170,0 +162,0 @@ var resolver = createForwardingResolver(registry, schema, field, 'query'); |
{ | ||
"name": "graphql-tools", | ||
"version": "2.0.0-alpha.4", | ||
"version": "2.0.0-alpha.5", | ||
"description": "A set of useful tools for GraphQL", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
0
145611
1683