internal void Expand(IngredientViewModel ingredient)
        {
            if (ingredient.HasChildren)
            {
                var index = this.Ingredients.IndexOf(ingredient);
                var expandedIngredient = new ExpandedIngredientViewModel(ingredient.ParsedIngredient, ingredient.Product);
                expandedIngredient.DisplayName = ingredient.DisplayName;
                //this.Ingredients[index] = expandedIngredient;
                //TranslateIngredients(expandedIngredient.Ingredients, null);

                this.Ingredients[index] = new ExpandedIngredientViewModel(ingredient.ParsedIngredient, ingredient.Product);
                TranslateIngredients(this.Ingredients, null);

                //below fades out and in
                //this.Ingredients.Remove(ingredient);
                //this.Ingredients.Insert(index, new ExpandedIngredientViewModel(ingredient.ParsedIngredient, ingredient.Product));
            }
        }
        private void TranslateIngredient(IIngredientLanguageNames translator, string name, string displayName, IngredientViewModel ingredient)
        {
            var ingredientTranslations = translator.TranslateIngredient(name, OriginalLanguage, LanguageCode);

            if (ingredientTranslations.Any())
            {
                displayName           = ingredientTranslations.First().Name;
                ingredient.WikiDataId = ingredientTranslations.First().WikiDataId;
            }
            ingredient.DisplayName = displayName;
        }
        // todo: move processing to separate object
        #region processing
        private void TranslateIngredient(IngredientLanguageNames translator, string name, string displayName, IngredientViewModel ingredient)
        {
            var nutrientTranslations = translator.TranslateIngredient(name, Product.OriginalLanguage, Product.LanguageCode);

            if (nutrientTranslations.Any())
            {
                displayName = nutrientTranslations.First().Name;
            }
            ingredient.DisplayName = displayName;
        }