Feature/shareable recipes (#866)

* simplify context menu

* move computed to comp-api

* feat:  create share tokens for recipes for sharing recieps to non-users

* feat:  shareable recipe links with og tags
This commit is contained in:
Hayden
2021-12-05 11:55:46 -09:00
committed by GitHub
parent ba4107348f
commit b2673d75bf
25 changed files with 914 additions and 199 deletions

View File

@@ -0,0 +1,34 @@
from datetime import datetime, timedelta
from fastapi_camelcase import CamelModel
from pydantic import UUID4, Field
from .recipe import Recipe
def defaut_expires_at_time() -> datetime:
return datetime.utcnow() + timedelta(days=30)
class RecipeShareTokenCreate(CamelModel):
recipe_id: int
expires_at: datetime = Field(default_factory=defaut_expires_at_time)
class RecipeShareTokenSave(RecipeShareTokenCreate):
group_id: UUID4
class RecipeShareTokenSummary(RecipeShareTokenSave):
id: UUID4
created_at: datetime
class Config:
orm_mode = True
class RecipeShareToken(RecipeShareTokenSummary):
recipe: Recipe
class Config:
orm_mode = True