mirror of
				https://github.com/strapi/strapi.git
				synced 2025-11-04 03:43:34 +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