feat: manually create and edit batch-cook recipes
recipe-form.tsx previously had no batch-cook awareness at all — editing an AI-generated batch-cook recipe and saving silently corrupted it (steps lost their per-dish `appliesTo` tags, recipeBatchDishes rows went stale/orphaned, since the create/update API schemas and edit-page query never touched them). Adds a "batch-cook recipe" toggle to the form, an editable dish list (name, description, fridge days, freezer-friendly/note, day-of instructions), and per-step dish tagging (click a dish chip to mark which dish(es) that step advances; empty = shared prep). Renaming a dish propagates to any step still tagged with the old name instead of orphaning it. Wired through Create/Update API schemas and the edit page's query/payload. Verified locally: created a 2-dish batch recipe from scratch through the real form, confirmed it renders identically to an AI-generated one (grouped steps, dishes & storage cards), edited it, renamed a dish, reloaded, and confirmed the step tag followed the rename rather than orphaning.
This commit is contained in:
@@ -648,7 +648,21 @@
|
||||
"discardChangesTitle": "Abandonner les modifications ?",
|
||||
"discardChangesDescription": "Vous avez des modifications non enregistrées. Si vous quittez maintenant, elles seront perdues.",
|
||||
"keepEditing": "Continuer l'édition",
|
||||
"discardChanges": "Abandonner"
|
||||
"discardChanges": "Abandonner",
|
||||
"batchCookToggle": "Ceci est une recette de batch cooking",
|
||||
"batchCookToggleHelp": "Divisez cette recette en plusieurs plats cuisinés ensemble, chacun avec ses propres consignes de conservation et de réchauffage.",
|
||||
"dishes": "Plats",
|
||||
"addDish": "Ajouter un plat",
|
||||
"dishName": "Nom du plat",
|
||||
"dishDescription": "Description",
|
||||
"fridgeDays": "Frigo (jours)",
|
||||
"freezerFriendly": "Se congèle bien",
|
||||
"freezerNote": "Note de congélation",
|
||||
"dayOfInstructions": "Consignes le jour J",
|
||||
"dishesRequired": "Ajoutez au moins un plat",
|
||||
"dayOfInstructionsRequired": "Chaque plat nécessite des consignes pour le jour J",
|
||||
"appliesTo": "Concerne",
|
||||
"sharedPrep": "Préparation commune"
|
||||
},
|
||||
"canCook": {
|
||||
"title": "Que puis-je cuisiner ?",
|
||||
|
||||
Reference in New Issue
Block a user