UNPKG

@grapi/server

Version:

Grapi Schema Generator For GraphQL Server

25 lines (24 loc) 1.08 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const lodash_1 = require("../lodash"); exports.default = (plugins, models) => { let resolvers = {}; let extendType = {}; models.forEach(model => { plugins.forEach(plugin => { resolvers = { ...plugin.resolveInRoot && plugin.resolveInRoot({ model, dataSource: model.getDataSource() }), ...resolvers, Query: (0, lodash_1.assign)(plugin.resolveInQuery && plugin.resolveInQuery({ model, dataSource: model.getDataSource() }), resolvers.Query), Mutation: (0, lodash_1.assign)(plugin.resolveInMutation && plugin.resolveInMutation({ model, dataSource: model.getDataSource() }), resolvers.Mutation) }; if (plugin.extendTypes) { extendType = { ...extendType, ...plugin.extendTypes(model) }; } }); }); (0, lodash_1.forEach)(extendType, (value, key) => { extendType[key] = resolvers[value]; }); return { ...resolvers, ...extendType }; };