@@ -110,23 +110,13 @@ class ClientIDMutation(Mutation):
110110 client_mutation_id = String (required = True )
111111
112112 @classmethod
113- def _prepare_class (cls ):
114- input_class = getattr (cls , 'Input' , None )
115- if input_class :
116- assert hasattr (
117- cls , 'mutate_and_get_payload' ), 'You have to implement mutate_and_get_payload'
118-
119- items = dict (vars (input_class ))
120- items .pop ('__dict__' , None )
121- items .pop ('__doc__' , None )
122- items .pop ('__module__' , None )
123- items .pop ('__weakref__' , None )
124- new_input_type = type ('{}Input' .format (
125- cls ._meta .type_name ), (MutationInputType , ), items )
126- cls .add_to_class ('input_type' , new_input_type )
127- arguments = ArgumentsGroup (input = NonNull (new_input_type ))
128- cls .add_to_class ('arguments' , arguments )
129- delattr (cls , 'Input' )
113+ def _construct_arguments (cls , items ):
114+ assert hasattr (
115+ cls , 'mutate_and_get_payload' ), 'You have to implement mutate_and_get_payload'
116+ new_input_type = type ('{}Input' .format (
117+ cls ._meta .type_name ), (MutationInputType , ), items )
118+ cls .add_to_class ('input_type' , new_input_type )
119+ return ArgumentsGroup (input = NonNull (new_input_type ))
130120
131121 @classmethod
132122 def mutate (cls , instance , args , info ):
0 commit comments