File tree Expand file tree Collapse file tree 1 file changed +17
-0
lines changed
graphql-resolver-generator Expand file tree Collapse file tree 1 file changed +17
-0
lines changed Original file line number Diff line number Diff line change @@ -53,6 +53,8 @@ def generate(input_file, output_dir):
53
53
continue
54
54
if is_schema_defined_object_type (inner_field_type ) or is_interface_type (inner_field_type ):
55
55
t ['edgeFields' ].append ((pascalCase (field_name ), inner_field_type ))
56
+
57
+ sort_before_rendering (t )
56
58
data ['types' ].append (t )
57
59
58
60
# sort
@@ -68,6 +70,21 @@ def generate(input_file, output_dir):
68
70
f .write (template .render (data = data ))
69
71
70
72
73
+ def sort_before_rendering (d : dict ):
74
+ """
75
+ Sort all list values in the dictionary to allow consistent generation of resolver files.
76
+ :param d:
77
+ :return:
78
+ """
79
+ for k in d :
80
+ if type (d [k ]) is not list or not len (d [k ]):
81
+ continue
82
+ if type (d [k ][0 ] == tuple ):
83
+ d [k ].sort (key = lambda x : x [0 ].replace ("_" , "}" ))
84
+ else :
85
+ d [k ].sort (key = lambda x : x .replace ("_" , "}" ))
86
+
87
+
71
88
def cmd (args ):
72
89
generate (args .input , args .output )
73
90
You can’t perform that action at this time.
0 commit comments