Update BookProgress model and schemas
Updated book progress model in anticipation of the KOReader sync feature. Renamed properties: - renamed "progress" to "percentage" - renamed "pdf_loc" to "pdf_page" - renamed "epub_loc" to "epub_cfi" New properties: - "epub_xpointer", marks the location of an epub in KOReader - "device", the device type that updated the progress - "device_id", the id of the device that updated the progress
This commit is contained in:
@@ -14,7 +14,11 @@ class BookProgress(BigIntAuditBase):
|
||||
book_id: Mapped[int] = mapped_column(
|
||||
ForeignKey("books.id", ondelete="cascade"), nullable=False
|
||||
)
|
||||
epub_loc: Mapped[Optional[str]]
|
||||
pdf_loc: Mapped[Optional[int]]
|
||||
progress: Mapped[float]
|
||||
|
||||
epub_cfi: Mapped[Optional[str]]
|
||||
epub_xpointer: Mapped[Optional[str]]
|
||||
pdf_page: Mapped[Optional[int]]
|
||||
percentage: Mapped[float]
|
||||
completed: Mapped[Optional[bool]]
|
||||
device: Mapped[Optional[str]] # Device that updated the progress
|
||||
device_id: Mapped[Optional[str]]
|
||||
|
||||
@@ -161,14 +161,20 @@ class BookMetadataUpdate(BaseModel):
|
||||
|
||||
|
||||
class BookProgressCreate(BaseModel):
|
||||
progress: float
|
||||
epub_loc: str | None = None
|
||||
pdf_loc: int | None = None
|
||||
percentage: float
|
||||
epub_cfi: str | None = None
|
||||
epub_xpointer: str | None = None
|
||||
pdf_page: int | None = None
|
||||
completed: bool | None = None
|
||||
device_type: str | None = None
|
||||
device_id: str | None = None
|
||||
|
||||
|
||||
class BookProgressRead(BaseModel):
|
||||
progress: float
|
||||
epub_loc: str | None = None
|
||||
pdf_loc: int | None = None
|
||||
percentage: float
|
||||
epub_cfi: str | None = None
|
||||
epub_xpointer: str | None = None
|
||||
pdf_page: int | None = None
|
||||
completed: bool | None = False
|
||||
device_type: str | None = None
|
||||
device_id: str | None = None
|
||||
|
||||
Reference in New Issue
Block a user