@@ -179,7 +179,7 @@ public function params( $path, $method = null, $source = null ) {
179179 for ( $ i = 0 ; $ i < $ c ; $ i ++ ) {
180180 $ param = &$ parameters [ $ i ];
181181
182- if ( 'formData ' === $ param ['in ' ] ) {
182+ if ( ! isset ( $ param [ ' in ' ] ) || 'formData ' === $ param ['in ' ] ) {
183183 $ param ['in ' ] = 'body ' ;
184184 }
185185
@@ -209,29 +209,13 @@ public function params( $path, $method = null, $source = null ) {
209209 $ parameters = array_merge ( $ parameters , $ this ->body_to_params ( $ body ) );
210210 }
211211
212- if ( $ source ) {
213- $ parameters = array_values (
214- array_filter (
215- $ parameters ,
216- function ( $ param ) use ( $ source ) {
217- $ in = $ param ['in ' ] ?? null ;
218-
219- if ( is_array ( $ source ) ) {
220- return in_array ( $ in , $ source , true );
221- }
222-
223- return $ in === $ source ;
224- }
225- )
226- );
227- }
228-
229212 $ l = count ( $ parameters );
230213 for ( $ i = 0 ; $ i < $ l ; $ i ++ ) {
231214 $ param = &$ parameters [ $ i ];
232215
233216 if ( isset ( $ param ['$ref ' ] ) ) {
234217 $ parameters [ $ i ] = array_merge ( $ param , $ this ->get_ref ( $ param ['$ref ' ] ) );
218+ $ param = &$ parameters [ $ i ];
235219 } elseif ( isset ( $ param ['schema ' ]['$ref ' ] ) ) {
236220 $ param ['schema ' ] = array_merge ( $ param ['schema ' ], $ this ->get_ref ( $ param ['schema ' ]['$ref ' ] ) );
237221 }
@@ -248,6 +232,23 @@ function ( $param ) use ( $source ) {
248232 }
249233 }
250234
235+ if ( $ source ) {
236+ $ parameters = array_values (
237+ array_filter (
238+ $ parameters ,
239+ function ( $ param ) use ( $ source ) {
240+ $ in = $ param ['in ' ] ?? null ;
241+
242+ if ( is_array ( $ source ) ) {
243+ return in_array ( $ in , $ source , true );
244+ }
245+
246+ return $ in === $ source ;
247+ }
248+ )
249+ );
250+ }
251+
251252 return $ parameters ;
252253 }
253254
0 commit comments