31 lines
790 B
Python
Executable File
31 lines
790 B
Python
Executable File
import uuid
|
|
from datetime import datetime
|
|
|
|
from pydantic import BaseModel, ConfigDict
|
|
|
|
|
|
class AudioVersionCreate(BaseModel):
|
|
nc_file_path: str
|
|
nc_file_etag: str | None = None
|
|
label: str | None = None
|
|
format: str | None = None
|
|
file_size_bytes: int | None = None
|
|
|
|
|
|
class AudioVersionRead(BaseModel):
|
|
model_config = ConfigDict(from_attributes=True)
|
|
id: uuid.UUID
|
|
song_id: uuid.UUID
|
|
version_number: int
|
|
label: str | None = None
|
|
nc_file_path: str
|
|
nc_file_etag: str | None = None
|
|
cdn_hls_base: str | None = None
|
|
waveform_url: str | None = None
|
|
duration_ms: int | None = None
|
|
format: str | None = None
|
|
file_size_bytes: int | None = None
|
|
analysis_status: str
|
|
uploaded_by: uuid.UUID | None = None
|
|
uploaded_at: datetime
|