mirror of
https://github.com/mealie-recipes/mealie.git
synced 2025-12-28 13:05:26 -05:00
refactor: ♻️ rewrite migrations frontend/backend (#841)
* refactor(frontend): ♻️ rewrite migrations UI * refactor(backend): ♻️ rewrite recipe migrations * remove vue-demi Co-authored-by: hay-kot <hay-kot@pm.me>
This commit is contained in:
12
mealie/schema/group/group_migration.py
Normal file
12
mealie/schema/group/group_migration.py
Normal file
@@ -0,0 +1,12 @@
|
||||
import enum
|
||||
|
||||
from fastapi_camelcase import CamelModel
|
||||
|
||||
|
||||
class SupportedMigrations(str, enum.Enum):
|
||||
nextcloud = "nextcloud"
|
||||
chowdown = "chowdown"
|
||||
|
||||
|
||||
class DataMigrationCreate(CamelModel):
|
||||
source_type: SupportedMigrations
|
||||
1
mealie/schema/reports/__init__.py
Normal file
1
mealie/schema/reports/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
from .reports import *
|
||||
53
mealie/schema/reports/reports.py
Normal file
53
mealie/schema/reports/reports.py
Normal file
@@ -0,0 +1,53 @@
|
||||
import datetime
|
||||
import enum
|
||||
|
||||
from fastapi_camelcase import CamelModel
|
||||
from pydantic import Field
|
||||
from pydantic.types import UUID4
|
||||
|
||||
|
||||
class ReportCategory(str, enum.Enum):
|
||||
backup = "backup"
|
||||
restore = "restore"
|
||||
migration = "migration"
|
||||
|
||||
|
||||
class ReportSummaryStatus(str, enum.Enum):
|
||||
in_progress = "in-progress"
|
||||
success = "success"
|
||||
failure = "failure"
|
||||
partial = "partial"
|
||||
|
||||
|
||||
class ReportEntryCreate(CamelModel):
|
||||
report_id: UUID4
|
||||
timestamp: datetime.datetime = Field(default_factory=datetime.datetime.utcnow)
|
||||
success: bool = True
|
||||
message: str
|
||||
exception: str = ""
|
||||
|
||||
|
||||
class ReportEntryOut(ReportEntryCreate):
|
||||
id: UUID4
|
||||
|
||||
class Config:
|
||||
orm_mode = True
|
||||
|
||||
|
||||
class ReportCreate(CamelModel):
|
||||
timestamp: datetime.datetime = Field(default_factory=datetime.datetime.utcnow)
|
||||
category: ReportCategory
|
||||
group_id: int
|
||||
name: str
|
||||
status: ReportSummaryStatus = ReportSummaryStatus.in_progress
|
||||
|
||||
|
||||
class ReportSummary(ReportCreate):
|
||||
id: UUID4
|
||||
|
||||
|
||||
class ReportOut(ReportSummary):
|
||||
entries: list[ReportEntryOut] = []
|
||||
|
||||
class Config:
|
||||
orm_mode = True
|
||||
Reference in New Issue
Block a user