import { useEffect, useState } from "react"; function RecipeFormDrawer({ open, onClose, onSubmit }) { const [name, setName] = useState(""); const [mealType, setMealType] = useState("lunch"); const [timeMinutes, setTimeMinutes] = useState(15); const [tags, setTags] = useState(""); const [ingredients, setIngredients] = useState([""]); const [steps, setSteps] = useState([""]); useEffect(() => { if (open) { setName(""); setMealType("lunch"); setTimeMinutes(15); setTags(""); setIngredients([""]); setSteps([""]); } }, [open]); if (!open) return null; const handleAddIngredient = () => { setIngredients((prev) => [...prev, ""]); }; const handleChangeIngredient = (idx, value) => { setIngredients((prev) => prev.map((v, i) => (i === idx ? value : v))); }; const handleRemoveIngredient = (idx) => { setIngredients((prev) => prev.filter((_, i) => i !== idx || prev.length === 1)); }; const handleAddStep = () => { setSteps((prev) => [...prev, ""]); }; const handleChangeStep = (idx, value) => { setSteps((prev) => prev.map((v, i) => (i === idx ? value : v))); }; const handleRemoveStep = (idx) => { setSteps((prev) => prev.filter((_, i) => i !== idx || prev.length === 1)); }; const handleSubmit = (e) => { e.preventDefault(); const cleanIngredients = ingredients.map((s) => s.trim()).filter(Boolean); const cleanSteps = steps.map((s) => s.trim()).filter(Boolean); const tagsArr = tags .split(",") .map((t) => t.trim()) .filter(Boolean); onSubmit({ name, meal_type: mealType, time_minutes: Number(timeMinutes), tags: tagsArr, ingredients: cleanIngredients, steps: cleanSteps, }); }; return (
e.stopPropagation()}>

מתכון חדש

setName(e.target.value)} required placeholder="שקשוקה חריפה, פסטה שמנת, חזה עוף בתנור..." />
setTimeMinutes(e.target.value)} required />
setTags(e.target.value)} placeholder="מהיר, טבעוני, משפחתי..." />
{ingredients.map((val, idx) => (
handleChangeIngredient(idx, e.target.value)} placeholder="למשל: 2 ביצים" />
))}
{steps.map((val, idx) => (
handleChangeStep(idx, e.target.value)} placeholder="למשל: לחמם את התנור ל־180 מעלות" />
))}
); } export default RecipeFormDrawer;