@@ -86,7 +86,7 @@ protected function getGetValidationParameters()
8686 $ parameters ['array ' ] = ['with ' ];
8787
8888 $ parameters ['string-required ' ] = ['with.* ' ];
89-
89+
9090 return $ this ->getValidationParameters ($ parameters , true );
9191 }
9292
@@ -104,7 +104,9 @@ protected function getSearchValidationParameters()
104104
105105 $ parameters ['boolean ' ] = ['desc ' ];
106106
107- $ parameters ['string ' ] = ['query ' , 'order_by ' ];
107+ $ parameters ['string ' ] = ['order_by ' ];
108+
109+ $ parameters ['string-nullable ' ] = ['query ' ];
108110
109111 $ parameters ['string-required ' ] = ['with.* ' ];
110112
@@ -117,19 +119,21 @@ public function getValidationParameters($parameters, $requiredAvailable)
117119
118120 foreach ($ parameters as $ type => $ parameterNames ) {
119121 $ isRequired = Str::contains ($ type , 'required ' );
122+ $ isNullable = Str::contains ($ type , 'nullable ' );
120123 $ type = head (explode ('- ' , $ type ));
121124
122125 foreach ($ parameterNames as $ name ) {
123126 $ required = $ isRequired && $ requiredAvailable ;
127+ $ nullable = $ isNullable ;
124128
125- $ result [] = $ this ->getRules ($ name , $ type , $ required );
129+ $ result [] = $ this ->getRules ($ name , $ type , $ required, $ nullable );
126130 }
127131 }
128132
129133 return $ result ;
130134 }
131135
132- protected function getRules ($ name , $ type , $ required )
136+ protected function getRules ($ name , $ type , $ required, $ nullable )
133137 {
134138 $ replaces = [
135139 'timestamp ' => 'date ' ,
@@ -153,6 +157,10 @@ protected function getRules($name, $type, $required)
153157 $ rules [] = 'required ' ;
154158 }
155159
160+ if ($ nullable ) {
161+ $ rules [] = 'nullable ' ;
162+ }
163+
156164 return [
157165 'name ' => $ name ,
158166 'rules ' => $ rules
0 commit comments