fix: Merge ingredient references when combining recipe steps in RecipePageInstructions.vue

This commit is contained in:
Harvey George Young 2025-08-19 00:03:15 +01:00
commit fc15523c9f

View file

@ -587,9 +587,22 @@ function mergeAbove(target: number, source: number) {
source,
targetText: instructionList.value[target].text,
sourceText: instructionList.value[source].text,
targetIngredientReferences: [...(instructionList.value[target].ingredientReferences || [])],
sourceIngredientReferences: [...(instructionList.value[source].ingredientReferences || [])],
});
instructionList.value[target].text += " " + instructionList.value[source].text;
const targetRefs = instructionList.value[target].ingredientReferences || [];
const sourceRefs = instructionList.value[source].ingredientReferences || [];
const mergedRefsMap = new Map();
[...targetRefs, ...sourceRefs].forEach(ref => {
if (ref.referenceId) {
mergedRefsMap.set(ref.referenceId, ref);
}
});
instructionList.value[target].ingredientReferences = Array.from(mergedRefsMap.values());
instructionList.value.splice(source, 1);
}