diff --git a/lib/models/recipe.dart b/lib/models/recipe.dart index bc6d968..e7731da 100644 --- a/lib/models/recipe.dart +++ b/lib/models/recipe.dart @@ -15,6 +15,7 @@ class Recipe { this.ingredients = const [], this.keywords = const [], this.steps = const [], + this.servingSize = 0, }); final Duration cookTime; @@ -29,6 +30,7 @@ class Recipe { final Duration prepTime; final List steps; final String title; + final int servingSize; Duration get totalTime => cookTime + prepTime; @@ -46,6 +48,7 @@ class Recipe { List? keywords, MealCategory? mealCategory, Cuisine? cuisine, + int? servingSize, }) { return Recipe( id: id ?? this.id, @@ -66,6 +69,7 @@ class Recipe { : List.from(this.keywords), mealCategory: mealCategory ?? this.mealCategory, cuisine: cuisine ?? this.cuisine, + servingSize: servingSize ?? this.servingSize, ); } } diff --git a/lib/services/providers/recipe_provider.dart b/lib/services/providers/recipe_provider.dart index 03fc6b7..8d588c2 100644 --- a/lib/services/providers/recipe_provider.dart +++ b/lib/services/providers/recipe_provider.dart @@ -23,6 +23,13 @@ class RecipeProvider extends ChangeNotifier { } } + void updateServingSize(int servingSize, {bool silent = false}) { + _recipe = _recipe.copyWith(servingSize: servingSize); + if (!silent) { + notifyListeners(); + } + } + void updateDifficulty(Difficulty difficulty, {bool silent = false}) { _recipe = _recipe.copyWith(difficulty: difficulty); if (!silent) { @@ -73,14 +80,14 @@ class RecipeProvider extends ChangeNotifier { } } - void updateMealCategory(MealCategory mealCategory, {bool silent = false}) { + void updateMealCategory(MealCategory? mealCategory, {bool silent = false}) { _recipe = _recipe.copyWith(mealCategory: mealCategory); if (!silent) { notifyListeners(); } } - void updateCuisine(Cuisine cuisine, {bool silent = false}) { + void updateCuisine(Cuisine? cuisine, {bool silent = false}) { _recipe = _recipe.copyWith(cuisine: cuisine); if (!silent) { notifyListeners();