30c5cd4bbe
CI/CD Pipeline / Deploy Staging (push) Has been skipped
CI/CD Pipeline / Staging E2E Tests (push) Has been skipped
CI/CD Pipeline / Build Production Runtime Images (push) Has been skipped
CI/CD Pipeline / Deploy Production (push) Has been skipped
CI/CD Pipeline / Production Browser E2E (push) Has been skipped
CI/CD Pipeline / Frontend Lint (push) Failing after 51h1m53s
CI/CD Pipeline / Validate Code Quality And Tests (push) Failing after 51h1m53s
- GET /assets 增加 skip/limit 分页参数,响应包含 total/skip/limit - GET /asset-libraries 增加 kind 过滤参数 - 新增 POST /asset-libraries/ensure-default 自动创建默认素材库 - 前端上传配音音频走通用上传链路(无缺口) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
26 lines
630 B
Python
26 lines
630 B
Python
from pydantic import BaseModel, Field
|
|
|
|
|
|
class CreateAssetLibraryRequest(BaseModel):
|
|
project_id: str = Field(..., min_length=1)
|
|
name: str = Field(..., min_length=1, max_length=100)
|
|
kind: str = Field(..., pattern="^(video|voice|image)$")
|
|
|
|
|
|
class AssetLibraryResponse(BaseModel):
|
|
id: str
|
|
project_id: str
|
|
name: str
|
|
kind: str
|
|
asset_count: int
|
|
total_size: int
|
|
|
|
|
|
class ListAssetLibrariesResponse(BaseModel):
|
|
items: list[AssetLibraryResponse]
|
|
|
|
|
|
class EnsureDefaultLibraryRequest(BaseModel):
|
|
project_id: str = Field(..., min_length=1)
|
|
kind: str = Field(..., pattern="^(video|voice|image)$")
|