f1tness_parser/app/schemas/parser.py

31 lines
No EOL
574 B
Python

from pydantic import BaseModel
from typing import List, Optional
from datetime import date
from enum import Enum
class ParseFormat(str, Enum):
apple = "apple"
obsidian = "obsidian"
text = "text"
class ParseRequest(BaseModel):
data: str
format: ParseFormat
class ApproachResponse(BaseModel):
weight: float
reps: int
class ExerciseResponse(BaseModel):
name: str
splitted_weight: bool = False
approaches: List[ApproachResponse]
class ParseResponse(BaseModel):
date: date
exercises: Optional[List[ExerciseResponse]]