Files
mealie/mealie/routes/parser/ingredient_parser.py
Hayden 60908e5a88 Feature/CRF++ and server side locales (#731)
* add universal toast plugin

* add server side locales

* integrate CRF++ into CI/CD Pipeline

* docs(docs): 📝 add recipe parser docs

* feat(backend):  Continued work on ingredient parsers

* add new model dest

* feat(frontend):  New ingredient parser page

* formatting

Co-authored-by: Hayden <hay-kot@pm.me>
2021-10-09 13:08:23 -08:00

32 lines
919 B
Python

from fastapi import APIRouter, Depends
from pydantic import BaseModel
from mealie.schema.recipe import RecipeIngredient
from mealie.services.parser_services import IngredientParserService
public_router = APIRouter(prefix="/parser")
class IngredientsRequest(BaseModel):
ingredients: list[str]
class IngredientRequest(BaseModel):
ingredient: str
@public_router.post("/ingredients", response_model=list[RecipeIngredient])
def parse_ingredients(
ingredients: IngredientsRequest,
p_service: IngredientParserService = Depends(IngredientParserService.private),
):
return {"ingredients": p_service.parse_ingredients(ingredients.ingredients)}
@public_router.post("/ingredient")
def parse_ingredient(
ingredient: IngredientRequest,
p_service: IngredientParserService = Depends(IngredientParserService.private),
):
return {"ingredient": p_service.parse_ingredient(ingredient.ingredient)}