import type { Ingredient, IngredientGroup, Ingredients, } from "../lib/recipes.ts"; import { FunctionalComponent } from "preact"; type IngredientsProps = { ingredients: Ingredients; }; const IngredientList = ({ ingredients }: { ingredients: Ingredient[] }) => { return ( <> {ingredients.map((item, index) => { // Render Ingredient const { type, amount, unit } = item as Ingredient; return ( {amount + (typeof unit !== "undefined" ? unit : "")} {type} ); })} ); }; const IngredientTable: FunctionalComponent<{ ingredients: Ingredients }> = ( { ingredients }, ) => { return ( {ingredients.map((item, index) => { if ("name" in item) { // Render IngredientGroup const { name, ingredients: groupIngredients } = item as IngredientGroup; return ( <> ); } else { // Render Ingredient const { type, amount, unit } = item as Ingredient; return ( ); } })}
{name}
{(amount ? amount : "") + (unit ? (" " + unit) : "")} {type}
); }; export const IngredientsList = ({ ingredients }: IngredientsProps) => { return ; };