File tree Expand file tree Collapse file tree 2 files changed +19
-11
lines changed
services/api-server/src/simcore_service_api_server Expand file tree Collapse file tree 2 files changed +19
-11
lines changed Original file line number Diff line number Diff line change 1- from typing import Annotated
1+ from typing import Annotated , Any
22
33from fastapi import Query
4+ from pydantic .fields import FieldInfo
45
56from ...models .schemas .solvers_filters import SolversListFilters
67
78
9+ def _get_query_params (field : FieldInfo ) -> dict [str , Any ]:
10+ params = {}
11+
12+ if field .description :
13+ params ["description" ] = field .description
14+ if field .examples :
15+ params ["example" ] = next (
16+ (example for example in field .examples if "*" in example ), field .examples [0 ]
17+ )
18+ return params
19+
20+
821def get_solvers_filters (
22+ # pylint: disable=unsubscriptable-object
923 solver_id : Annotated [
1024 str | None ,
11- Query (
12- description = "Filter by solver ID pattern" ,
13- example = "simcore/services/comp/*" ,
14- ),
25+ Query (** _get_query_params (SolversListFilters .model_fields ["solver_id" ])),
1526 ] = None ,
1627 version_display : Annotated [
1728 str | None ,
18- Query (
19- description = "Filter by version display pattern" ,
20- example = ["*2023-*" ],
21- ),
29+ Query (** _get_query_params (SolversListFilters .model_fields ["version_display" ])),
2230 ] = None ,
2331) -> SolversListFilters :
2432 return SolversListFilters (
Original file line number Diff line number Diff line change @@ -9,15 +9,15 @@ class SolversListFilters(BaseModel):
99 solver_id : Annotated [
1010 str | None ,
1111 Field (
12- description = "Filter by solver ID pattern (e.g. 'simcore/services/comp/itis/*') " ,
12+ description = "Filter by solver ID pattern" ,
1313 examples = ["simcore/services/comp/itis/sleeper" , "simcore/services/comp/*" ],
1414 ),
1515 ] = None
1616
1717 version_display : Annotated [
1818 str | None ,
1919 Field (
20- description = "Filter by version display pattern (e.g. '*2023*') " ,
20+ description = "Filter by version display pattern" ,
2121 examples = ["2.1.1-2023-10-01" , "*2023*" ],
2222 ),
2323 ] = None
You can’t perform that action at this time.
0 commit comments