Replaced Optional with | None in schemas_in.py and schemas_out.py

This commit is contained in:
Jedrzej Kosinski 2025-12-13 15:14:19 -08:00
parent b3ec1b3f05
commit 098b3dd5d7
2 changed files with 22 additions and 22 deletions

View File

@ -1,6 +1,6 @@
import json
import uuid
from typing import Any, Literal, Optional
from typing import Any, Literal
from pydantic import (
BaseModel,
@ -14,10 +14,10 @@ from pydantic import (
class ListAssetsQuery(BaseModel):
include_tags: list[str] = Field(default_factory=list)
exclude_tags: list[str] = Field(default_factory=list)
name_contains: Optional[str] = None
name_contains: str | None = None
# Accept either a JSON string (query param) or a dict
metadata_filter: Optional[dict[str, Any]] = None
metadata_filter: dict[str, Any] | None = None
limit: conint(ge=1, le=500) = 20
offset: conint(ge=0) = 0
@ -60,7 +60,7 @@ class ListAssetsQuery(BaseModel):
class TagsListQuery(BaseModel):
model_config = ConfigDict(extra="ignore", str_strip_whitespace=True)
prefix: Optional[str] = Field(None, min_length=1, max_length=256)
prefix: str | None = Field(None, min_length=1, max_length=256)
limit: int = Field(100, ge=1, le=1000)
offset: int = Field(0, ge=0, le=10_000_000)
order: Literal["count_desc", "name_asc"] = "count_desc"
@ -68,7 +68,7 @@ class TagsListQuery(BaseModel):
@field_validator("prefix")
@classmethod
def normalize_prefix(cls, v: Optional[str]) -> Optional[str]:
def normalize_prefix(cls, v: str | None) -> str | None:
if v is None:
return v
v = v.strip()
@ -77,7 +77,7 @@ class TagsListQuery(BaseModel):
class SetPreviewBody(BaseModel):
"""Set or clear the preview for an AssetInfo. Provide an Asset.id or null."""
preview_id: Optional[str] = None
preview_id: str | None = None
@field_validator("preview_id", mode="before")
@classmethod

View File

@ -1,5 +1,5 @@
from datetime import datetime
from typing import Any, Optional
from typing import Any
from pydantic import BaseModel, ConfigDict, Field, field_serializer
@ -7,19 +7,19 @@ from pydantic import BaseModel, ConfigDict, Field, field_serializer
class AssetSummary(BaseModel):
id: str
name: str
asset_hash: Optional[str]
size: Optional[int] = None
mime_type: Optional[str] = None
asset_hash: str | None = None
size: int | None = None
mime_type: str | None = None
tags: list[str] = Field(default_factory=list)
preview_url: Optional[str] = None
created_at: Optional[datetime] = None
updated_at: Optional[datetime] = None
last_access_time: Optional[datetime] = None
preview_url: str | None = None
created_at: datetime | None = None
updated_at: datetime | None = None
last_access_time: datetime | None = None
model_config = ConfigDict(from_attributes=True)
@field_serializer("created_at", "updated_at", "last_access_time")
def _ser_dt(self, v: Optional[datetime], _info):
def _ser_dt(self, v: datetime | None, _info):
return v.isoformat() if v else None
@ -32,19 +32,19 @@ class AssetsList(BaseModel):
class AssetDetail(BaseModel):
id: str
name: str
asset_hash: Optional[str]
size: Optional[int] = None
mime_type: Optional[str] = None
asset_hash: str | None = None
size: int | None = None
mime_type: str | None = None
tags: list[str] = Field(default_factory=list)
user_metadata: dict[str, Any] = Field(default_factory=dict)
preview_id: Optional[str] = None
created_at: Optional[datetime] = None
last_access_time: Optional[datetime] = None
preview_id: str | None = None
created_at: datetime | None = None
last_access_time: datetime | None = None
model_config = ConfigDict(from_attributes=True)
@field_serializer("created_at", "last_access_time")
def _ser_dt(self, v: Optional[datetime], _info):
def _ser_dt(self, v: datetime | None, _info):
return v.isoformat() if v else None