2026-07-03 01:06:35 +00:00

31 lines
663 B
Python

from pydantic import BaseModel
from typing import Optional
from datetime import datetime
class SongBase(BaseModel):
title: str
artist: str
album: Optional[str] = None
genre: Optional[str] = None
class SongCreate(SongBase):
pass
class SongResponse(SongBase):
id: str
duration_sec: float = 0
file_path: str
transcoded_path: Optional[str] = None
album_art_path: Optional[str] = None
added_at: datetime
file_format: Optional[str] = None
file_size_bytes: int = 0
class Config:
from_attributes = True
class ScanResult(BaseModel):
scanned: int
added: int
skipped: int
errors: list[str]