fix: add success/media fields to MediaUploadResponse schema
- Add success and media fields to MediaUploadResponse - Add url alias field to MediaItemResponse for JS compatibility - JS expects response.success and response.media.url 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -37,6 +37,7 @@ class MediaItemResponse(BaseModel):
|
||||
filename: str
|
||||
original_filename: str | None = None
|
||||
file_url: str
|
||||
url: str | None = None # Alias for file_url for JS compatibility
|
||||
thumbnail_url: str | None = None
|
||||
media_type: str # image, video, document
|
||||
mime_type: str | None = None
|
||||
@@ -52,6 +53,11 @@ class MediaItemResponse(BaseModel):
|
||||
|
||||
model_config = {"from_attributes": True}
|
||||
|
||||
def model_post_init(self, __context: Any) -> None:
|
||||
"""Set url from file_url if not provided."""
|
||||
if self.url is None:
|
||||
object.__setattr__(self, "url", self.file_url)
|
||||
|
||||
|
||||
class MediaListResponse(BaseModel):
|
||||
"""Paginated list of media items."""
|
||||
@@ -71,13 +77,16 @@ class MediaListResponse(BaseModel):
|
||||
class MediaUploadResponse(BaseModel):
|
||||
"""Response for single file upload."""
|
||||
|
||||
success: bool = True
|
||||
message: str | None = None
|
||||
media: MediaItemResponse | None = None
|
||||
# Legacy fields for backwards compatibility
|
||||
id: int | None = None
|
||||
file_url: str | None = None
|
||||
thumbnail_url: str | None = None
|
||||
filename: str | None = None
|
||||
file_size: int | None = None
|
||||
media_type: str | None = None
|
||||
message: str | None = None
|
||||
|
||||
|
||||
class UploadedFileInfo(BaseModel):
|
||||
|
||||
Reference in New Issue
Block a user