charlotte-graphql
Version:
Generates GraphQL type definitions and resolvers off of a concise spec.
27 lines (22 loc) • 639 B
JavaScript
;
const { makeExecutableSchema } = require('graphql-tools');
const { expandTypes } = require('./helpers');
const { createResolvers } = require('./resolvers');
const { generateTypeDefs } = require('./typedefs');
const generateApi = ({ types, adapter }) => {
const typesExpanded = expandTypes(types);
const typeDefs = generateTypeDefs({ typesExpanded });
const resolvers = createResolvers({ typesExpanded, adapter });
const schema = makeExecutableSchema({ typeDefs, resolvers })
return {
schema,
types,
adapter,
typesExpanded,
typeDefs,
resolvers
};
};
module.exports = {
generateApi
};