import type { StagedFoodLog } from '@/types/foodlog'; export function getAllIngredients(log: StagedFoodLog): string[] { return [ ...new Set([ ...(log.aiHPPredIngredients ?? []), ...(log.aiHRPredIngredients ?? []), ...log.userEnabledIngredients, ...log.userDisabledIngredients, ]), ]; } export function isIngredientEnabled(log: StagedFoodLog, ingredient: string): boolean { if (log.userEnabledIngredients.includes(ingredient)) return true; if (log.userDisabledIngredients.includes(ingredient)) return false; return log.aiHPPredIngredients?.includes(ingredient) ?? false; } export function computeActiveIngredients(log: StagedFoodLog): string[] { const allIngredients = [ ...(log.aiHPPredIngredients ?? []), ...(log.aiHRPredIngredients ?? []), ...log.userEnabledIngredients, ]; const unique = [...new Set(allIngredients)]; return unique.filter(i => isIngredientEnabled(log, i)); }