Alexandre Bodin c02625e438 Split graphql schema generator code
Signed-off-by: Alexandre Bodin <bodin.alex@gmail.com>
2020-02-10 21:38:35 +01:00

33 lines
535 B
JavaScript

'use strict';
const _ = require('lodash');
/**
* Merges
*/
const mergeSchemas = (root, ...subs) => {
subs.forEach(sub => {
if (_.isEmpty(sub)) return;
const { definition = '', query = {}, mutation = {}, resolvers = {} } = sub;
root.definition += '\n' + definition;
_.merge(root, {
query,
mutation,
resolvers,
});
});
};
const createDefaultSchema = () => ({
definition: '',
query: '',
mutation: '',
resolvers: {},
});
module.exports = {
mergeSchemas,
createDefaultSchema,
};