23 lines
577 B
Python
23 lines
577 B
Python
from __future__ import annotations
|
|
|
|
from datetime import datetime
|
|
|
|
from app.models.mods import APIMod
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class PlaylistItem(BaseModel):
|
|
id: int = Field(default=0, ge=-1)
|
|
owner_id: int
|
|
beatmap_id: int
|
|
beatmap_checksum: str = ""
|
|
ruleset_id: int = 0
|
|
required_mods: list[APIMod] = Field(default_factory=list)
|
|
allowed_mods: list[APIMod] = Field(default_factory=list)
|
|
expired: bool = False
|
|
playlist_order: int = 0
|
|
played_at: datetime | None = None
|
|
star_rating: float = 0.0
|
|
freestyle: bool = False
|