@@ -11,10 +11,7 @@ def __init__(self, open_api_spec: dict) -> None:
1111 def _convert_params_to_schema (
1212 self , params : list [dict ], place : t .Literal ['header' , 'cookie' , 'path' , 'query' ]
1313 ) -> Any | None :
14- schema = {
15- 'type' : 'object' ,
16- 'additionalProperties' : True ,
17- }
14+ schema = {'type' : 'object' , 'additionalProperties' : True }
1815
1916 required = []
2017 properties = {}
@@ -47,18 +44,22 @@ def _params_list_to_dict(self, params: list[dict]) -> dict:
4744
4845 return params_as_dict
4946
50- def _make_to_spilli_api_format (self ) -> None :
51- self .spilli_api_spec = json .loads (json .dumps (self .open_api_spec ))
52-
47+ def _convert_method_params (self ) -> None :
5348 for _ , methods in self .spilli_api_spec ['paths' ].items ():
54- common_params = []
55- if 'parameters' in methods :
56- common_params = methods .pop ('parameters' , [])
49+ common_params = methods .pop ('parameters' , [])
50+
51+ for method , operation_obj in methods .items ():
52+ if method in ('summary' , 'description' , 'servers' ):
53+ continue
5754
58- for _ , operation_obj in methods .items ():
59- if 'parameters' in operation_obj :
60- method_params = common_params + operation_obj .pop ('parameters' , [])
61- operation_obj ['parameters' ] = self ._params_list_to_dict (method_params )
55+ method_params = operation_obj .get ('parameters' , [])
56+ all_method_params = common_params + method_params
57+ if all_method_params :
58+ operation_obj ['parameters' ] = self ._params_list_to_dict (all_method_params )
59+
60+ def _make_to_spilli_api_format (self ) -> None :
61+ self .spilli_api_spec = json .loads (json .dumps (self .open_api_spec ))
62+ self ._convert_method_params ()
6263
6364 def convert (self ) -> dict :
6465 self ._make_to_spilli_api_format ()
0 commit comments