mirror of
https://github.com/strapi/strapi.git
synced 2025-11-01 18:33:55 +00:00
Pass easier-to-understand options instead of arguments to Mutation.composeMutationResolver() and Query.composeQueryResolver()
This commit is contained in:
parent
79a253f5bc
commit
d3a968aa62
@ -19,7 +19,7 @@ module.exports = {
|
||||
* @return Promise or Error.
|
||||
*/
|
||||
|
||||
composeMutationResolver: function(_schema, plugin, name, action) {
|
||||
composeMutationResolver: function({ _schema, plugin, name, action }) {
|
||||
// Extract custom resolver or type description.
|
||||
const { resolver: handler = {} } = _schema;
|
||||
|
||||
|
||||
@ -69,7 +69,7 @@ module.exports = {
|
||||
* @return Promise or Error.
|
||||
*/
|
||||
|
||||
composeQueryResolver: function(_schema, plugin, name, isSingular) {
|
||||
composeQueryResolver: function({ _schema, plugin, name, isSingular }) {
|
||||
const params = {
|
||||
model: name,
|
||||
};
|
||||
|
||||
@ -326,11 +326,21 @@ const buildShadowCRUD = (models, plugin) => {
|
||||
const queries = {
|
||||
singular:
|
||||
_.get(resolver, `Query.${singularName}`) !== false
|
||||
? Query.composeQueryResolver(_schema, plugin, name, true)
|
||||
? Query.composeQueryResolver({
|
||||
_schema,
|
||||
plugin,
|
||||
name,
|
||||
isSingular: true,
|
||||
})
|
||||
: null,
|
||||
plural:
|
||||
_.get(resolver, `Query.${pluralName}`) !== false
|
||||
? Query.composeQueryResolver(_schema, plugin, name, false)
|
||||
? Query.composeQueryResolver({
|
||||
_schema,
|
||||
plugin,
|
||||
name,
|
||||
isSingular: false,
|
||||
})
|
||||
: null,
|
||||
};
|
||||
|
||||
@ -376,15 +386,30 @@ const buildShadowCRUD = (models, plugin) => {
|
||||
const mutations = {
|
||||
create:
|
||||
_.get(resolver, `Mutation.create${capitalizedName}`) !== false
|
||||
? Mutation.composeMutationResolver(_schema, plugin, name, 'create')
|
||||
? Mutation.composeMutationResolver({
|
||||
_schema,
|
||||
plugin,
|
||||
name,
|
||||
action: 'create',
|
||||
})
|
||||
: null,
|
||||
update:
|
||||
_.get(resolver, `Mutation.update${capitalizedName}`) !== false
|
||||
? Mutation.composeMutationResolver(_schema, plugin, name, 'update')
|
||||
? Mutation.composeMutationResolver({
|
||||
_schema,
|
||||
plugin,
|
||||
name,
|
||||
action: 'update',
|
||||
})
|
||||
: null,
|
||||
delete:
|
||||
_.get(resolver, `Mutation.delete${capitalizedName}`) !== false
|
||||
? Mutation.composeMutationResolver(_schema, plugin, name, 'delete')
|
||||
? Mutation.composeMutationResolver({
|
||||
_schema,
|
||||
plugin,
|
||||
name,
|
||||
action: 'delete',
|
||||
})
|
||||
: null,
|
||||
};
|
||||
|
||||
|
||||
@ -228,22 +228,22 @@ const schemaBuilder = {
|
||||
const [name, action] = acc[type][resolver].split('.');
|
||||
const normalizedName = _.toLower(name);
|
||||
|
||||
acc[type][resolver] = Mutation.composeMutationResolver(
|
||||
strapi.plugins.graphql.config._schema.graphql,
|
||||
acc[type][resolver] = Mutation.composeMutationResolver({
|
||||
_schema: strapi.plugins.graphql.config._schema.graphql,
|
||||
plugin,
|
||||
normalizedName,
|
||||
action
|
||||
);
|
||||
name: normalizedName,
|
||||
action,
|
||||
});
|
||||
break;
|
||||
}
|
||||
case 'Query':
|
||||
default:
|
||||
acc[type][resolver] = Query.composeQueryResolver(
|
||||
strapi.plugins.graphql.config._schema.graphql,
|
||||
acc[type][resolver] = Query.composeQueryResolver({
|
||||
_schema: strapi.plugins.graphql.config._schema.graphql,
|
||||
plugin,
|
||||
resolver,
|
||||
'force' // Avoid singular/pluralize and force query name.
|
||||
);
|
||||
name: resolver,
|
||||
isSingular: 'force', // Avoid singular/pluralize and force query name.
|
||||
});
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user