46 lines
1018 B
Python
46 lines
1018 B
Python
"""Pydantic response models for Commander AI Lab API."""
|
|
from __future__ import annotations
|
|
from typing import Optional
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class StartResponse(BaseModel):
|
|
batchId: str
|
|
status: str = "started"
|
|
message: str = ""
|
|
|
|
|
|
class StatusResponse(BaseModel):
|
|
batchId: str = ""
|
|
running: bool = False
|
|
completed: int = 0
|
|
total: int = 0
|
|
threads: int = 0
|
|
elapsedMs: int = 0
|
|
error: Optional[str] = None
|
|
simsPerSec: float = 0.0
|
|
run_id: str = ""
|
|
games_completed: int = 0
|
|
total_games: int = 0
|
|
current_decks: list = []
|
|
|
|
|
|
class DeckInfo(BaseModel):
|
|
name: str
|
|
filename: str
|
|
|
|
|
|
class GeneratedDeckCard(BaseModel):
|
|
scryfall_id: str = ""
|
|
name: str = ""
|
|
type_line: str = ""
|
|
mana_cost: str = ""
|
|
cmc: float = 0
|
|
card_type: str = ""
|
|
roles: list[str] = []
|
|
source: str = "collection"
|
|
quantity: int = 1
|
|
image_url: str = ""
|
|
owned_qty: int = 0
|
|
is_proxy: bool = False
|