e495a4b38e
- Introduced MealPlanApiPaths for handling meal plan related API endpoints. - Added MealPlanScreen for displaying and managing meal plans. - Implemented MealPlanRepository for fetching and updating meal plan data. - Created data models: MealPlanEntry, MealPlanRecipe, InventoryCompareItem, ShoppingItem, and MealPlanDashboard. - Integrated meal plan functionality into the app router and UI. - Updated localization files for meal plan related strings in English and Swedish. - Added state management for meal plan using Riverpod.
77 lines
2.7 KiB
Plaintext
77 lines
2.7 KiB
Plaintext
{
|
|
"@@locale": "en",
|
|
"appTitle": "Recipe App",
|
|
"retryAction": "Retry",
|
|
"mealPlanTitle": "Meal plan",
|
|
"mealPlanLoading": "Loading meal plan...",
|
|
"mealPlanWeekPrevious": "Previous week",
|
|
"mealPlanWeekNext": "Next week",
|
|
"mealPlanWeekCurrent": "Current week",
|
|
"mealPlanDayNoRecipe": "Nothing planned",
|
|
"mealPlanSelectRecipe": "Choose recipe",
|
|
"mealPlanViewRecipe": "View recipe",
|
|
"mealPlanServingsLabel": "Servings",
|
|
"mealPlanResetServings": "Reset",
|
|
"mealPlanSaving": "Saving...",
|
|
"mealPlanPlannedRecipes": "{count, plural, one {# recipe planned} other {# recipes planned}}",
|
|
"@mealPlanPlannedRecipes": {
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"mealPlanShoppingTitle": "Shopping list",
|
|
"mealPlanPickRecipeHint": "Choose recipes above to see the combined ingredient list.",
|
|
"mealPlanNoShoppingItems": "No ingredients to show for this week.",
|
|
"mealPlanNoRecipesTitle": "There are no recipes to plan yet.",
|
|
"mealPlanNoRecipesDescription": "Create at least one recipe first, then add it to the meal plan.",
|
|
"mealPlanMissingCount": "{count, plural, one {# missing} other {# missing}}",
|
|
"@mealPlanMissingCount": {
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"mealPlanPartialCount": "{count, plural, one {# partially at home} other {# partially at home}}",
|
|
"@mealPlanPartialCount": {
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"mealPlanEnoughCount": "{count, plural, one {# at home} other {# at home}}",
|
|
"@mealPlanEnoughCount": {
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"mealPlanPantryCount": "{count, plural, one {# pantry staple} other {# pantry staples}}",
|
|
"@mealPlanPantryCount": {
|
|
"placeholders": {
|
|
"count": {
|
|
"type": "int"
|
|
}
|
|
}
|
|
},
|
|
"mealPlanAllAtHome": "You already have everything at home.",
|
|
"mealPlanStatusMissing": "Missing",
|
|
"mealPlanStatusPartial": "Partially at home",
|
|
"mealPlanStatusEnough": "At home",
|
|
"mealPlanStatusPantry": "Pantry staple",
|
|
"loginTitle": "Sign in",
|
|
"usernameLabel": "Username",
|
|
"usernameRequired": "Enter your username.",
|
|
"passwordLabel": "Password",
|
|
"passwordRequired": "Enter your password.",
|
|
"loginAction": "Sign in",
|
|
"sessionExpiredError": "Your session has expired. Sign in again.",
|
|
"forbiddenError": "You do not have permission to use this feature.",
|
|
"serverError": "A server error occurred. Try again in a moment.",
|
|
"networkError": "Network error. Check your connection and try again.",
|
|
"unexpectedError": "An unexpected error occurred."
|
|
} |