@@ -462,6 +462,30 @@ protected function handleParamValue($values, string $field = 'param'): array
462462 }
463463 }
464464 }
465+ } else if (!empty ($ values ) && is_object ($ values )) {
466+ $ item = $ values ;
467+ if (!empty ($ item ->ref )) {
468+ $ refRes = $ this ->renderRef ($ item ->ref , true );
469+ $ params = $ this ->handleRefData ($ params , $ refRes , $ item , $ field );
470+ } else {
471+ $ param = [
472+ "name " => "" ,
473+ "type " => $ item ->type ,
474+ "desc " => Lang::getLang ($ item ->desc ),
475+ "default " => $ item ->default ,
476+ "require " => $ item ->require ,
477+ "childrenType " => $ item ->childrenType
478+ ];
479+ if (!empty ($ item ->mock )){
480+ $ param ['mock ' ]=$ item ->mock ;
481+ }
482+ $ children = $ this ->handleParamValue ($ item ->value );
483+ $ param ['name ' ] = $ children ['name ' ];
484+ if (count ($ children ['params ' ]) > 0 ) {
485+ $ param ['children ' ] = $ children ['params ' ];
486+ }
487+ $ params [] = $ param ;
488+ }
465489 } else {
466490 $ name = $ values ;
467491 }
@@ -726,18 +750,14 @@ protected function handleRefData($params, $refRes, $annotation, string $field,$s
726750 'desc ' => Lang::getLang ($ annotation ->childrenDesc ),
727751 ];
728752 }
729- $ params [] = $ item ;
730-
731- if (!empty ($ item ['name ' ])){
753+ if (!empty ($ item ['name ' ]) ){
732754 $ params [] = $ item ;
733755 }else {
734756 if (count ($ children ['params ' ]) > 0 ) {
735757 $ data = Helper::arrayMergeAndUnique ("name " ,$ data ,$ children ['params ' ]);
736758 }
737759 $ params = Helper::arrayMergeAndUnique ("name " ,$ params ,$ data );
738760 }
739-
740-
741761 } else {
742762 $ params = Helper::arrayMergeAndUnique ("name " ,$ params ,$ data );
743763 }
0 commit comments