|
|
@ -6,6 +6,7 @@ from typing import Annotated, Any, Callable, Optional, Union |
|
|
|
|
|
|
|
|
from fastapi.exceptions import FastAPIDeprecationWarning |
|
|
from fastapi.exceptions import FastAPIDeprecationWarning |
|
|
from fastapi.openapi.models import Example |
|
|
from fastapi.openapi.models import Example |
|
|
|
|
|
from pydantic import AliasChoices, AliasPath |
|
|
from pydantic.fields import FieldInfo |
|
|
from pydantic.fields import FieldInfo |
|
|
from typing_extensions import Literal, deprecated |
|
|
from typing_extensions import Literal, deprecated |
|
|
|
|
|
|
|
|
@ -34,9 +35,7 @@ class Param(FieldInfo): # type: ignore[misc] |
|
|
annotation: Optional[Any] = None, |
|
|
annotation: Optional[Any] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
# TODO: update when deprecating Pydantic v1, import these types |
|
|
validation_alias: Union[str, AliasPath, AliasChoices, None] = None, |
|
|
# validation_alias: str | AliasPath | AliasChoices | None |
|
|
|
|
|
validation_alias: Union[str, None] = None, |
|
|
|
|
|
serialization_alias: Union[str, None] = None, |
|
|
serialization_alias: Union[str, None] = None, |
|
|
title: Optional[str] = None, |
|
|
title: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
@ -147,9 +146,7 @@ class Path(Param): # type: ignore[misc] |
|
|
annotation: Optional[Any] = None, |
|
|
annotation: Optional[Any] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
# TODO: update when deprecating Pydantic v1, import these types |
|
|
validation_alias: Union[str, AliasPath, AliasChoices, None] = None, |
|
|
# validation_alias: str | AliasPath | AliasChoices | None |
|
|
|
|
|
validation_alias: Union[str, None] = None, |
|
|
|
|
|
serialization_alias: Union[str, None] = None, |
|
|
serialization_alias: Union[str, None] = None, |
|
|
title: Optional[str] = None, |
|
|
title: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
@ -233,9 +230,7 @@ class Query(Param): # type: ignore[misc] |
|
|
annotation: Optional[Any] = None, |
|
|
annotation: Optional[Any] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
# TODO: update when deprecating Pydantic v1, import these types |
|
|
validation_alias: Union[str, AliasPath, AliasChoices, None] = None, |
|
|
# validation_alias: str | AliasPath | AliasChoices | None |
|
|
|
|
|
validation_alias: Union[str, None] = None, |
|
|
|
|
|
serialization_alias: Union[str, None] = None, |
|
|
serialization_alias: Union[str, None] = None, |
|
|
title: Optional[str] = None, |
|
|
title: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
@ -317,9 +312,7 @@ class Header(Param): # type: ignore[misc] |
|
|
annotation: Optional[Any] = None, |
|
|
annotation: Optional[Any] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
# TODO: update when deprecating Pydantic v1, import these types |
|
|
validation_alias: Union[str, AliasPath, AliasChoices, None] = None, |
|
|
# validation_alias: str | AliasPath | AliasChoices | None |
|
|
|
|
|
validation_alias: Union[str, None] = None, |
|
|
|
|
|
serialization_alias: Union[str, None] = None, |
|
|
serialization_alias: Union[str, None] = None, |
|
|
convert_underscores: bool = True, |
|
|
convert_underscores: bool = True, |
|
|
title: Optional[str] = None, |
|
|
title: Optional[str] = None, |
|
|
@ -403,9 +396,7 @@ class Cookie(Param): # type: ignore[misc] |
|
|
annotation: Optional[Any] = None, |
|
|
annotation: Optional[Any] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
# TODO: update when deprecating Pydantic v1, import these types |
|
|
validation_alias: Union[str, AliasPath, AliasChoices, None] = None, |
|
|
# validation_alias: str | AliasPath | AliasChoices | None |
|
|
|
|
|
validation_alias: Union[str, None] = None, |
|
|
|
|
|
serialization_alias: Union[str, None] = None, |
|
|
serialization_alias: Union[str, None] = None, |
|
|
title: Optional[str] = None, |
|
|
title: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
@ -487,9 +478,7 @@ class Body(FieldInfo): # type: ignore[misc] |
|
|
media_type: str = "application/json", |
|
|
media_type: str = "application/json", |
|
|
alias: Optional[str] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
# TODO: update when deprecating Pydantic v1, import these types |
|
|
validation_alias: Union[str, AliasPath, AliasChoices, None] = None, |
|
|
# validation_alias: str | AliasPath | AliasChoices | None |
|
|
|
|
|
validation_alias: Union[str, None] = None, |
|
|
|
|
|
serialization_alias: Union[str, None] = None, |
|
|
serialization_alias: Union[str, None] = None, |
|
|
title: Optional[str] = None, |
|
|
title: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
@ -600,9 +589,7 @@ class Form(Body): # type: ignore[misc] |
|
|
media_type: str = "application/x-www-form-urlencoded", |
|
|
media_type: str = "application/x-www-form-urlencoded", |
|
|
alias: Optional[str] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
# TODO: update when deprecating Pydantic v1, import these types |
|
|
validation_alias: Union[str, AliasPath, AliasChoices, None] = None, |
|
|
# validation_alias: str | AliasPath | AliasChoices | None |
|
|
|
|
|
validation_alias: Union[str, None] = None, |
|
|
|
|
|
serialization_alias: Union[str, None] = None, |
|
|
serialization_alias: Union[str, None] = None, |
|
|
title: Optional[str] = None, |
|
|
title: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
@ -684,9 +671,7 @@ class File(Form): # type: ignore[misc] |
|
|
media_type: str = "multipart/form-data", |
|
|
media_type: str = "multipart/form-data", |
|
|
alias: Optional[str] = None, |
|
|
alias: Optional[str] = None, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
alias_priority: Union[int, None] = _Unset, |
|
|
# TODO: update when deprecating Pydantic v1, import these types |
|
|
validation_alias: Union[str, AliasPath, AliasChoices, None] = None, |
|
|
# validation_alias: str | AliasPath | AliasChoices | None |
|
|
|
|
|
validation_alias: Union[str, None] = None, |
|
|
|
|
|
serialization_alias: Union[str, None] = None, |
|
|
serialization_alias: Union[str, None] = None, |
|
|
title: Optional[str] = None, |
|
|
title: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
description: Optional[str] = None, |
|
|
|