// Delete item private Task <IOption <UserMessage> > Remove(IShoppingListItem item) => ShoppingListHandler .Remove(CurrentAccount, foodstuffs.Get(item.FoodstuffId).Get().ToEnumerable()) .Map(result => ProcessResult(result)) .Execute(environment);
// Cook recipe private Task <IOption <UserMessage> > Cook(IShoppingListRecipeItem item) => ShoppingListHandler.Cook(CurrentAccount, item) .Map(r => ProcessResult(r)) .Execute(environment);
// Open add foodstuff dialog public Task <Unit> OpenAddFoodstuffDialog() => Navigation .SelectFoodstuffDialog() .Bind(selected => ShoppingListHandler.Add(CurrentAccount, selected).Execute(environment)) .Map(result => result.Success.Get()) .Bind(shoppingList => UpdateState());
private Task <IOption <UserMessage> > AddToShoppingList(IRecipe recipe) { return(ShoppingListHandler .AddToShoppingList(recipe, CurrentAccount, recipe.PersonCount)(environment) .Map(_ => UserMessages.Added().ToOption())); }