feat: add product selection step before meal planning
Inserts a new PlanProductsSheet as step 1 of the planning flow. Users see their current products as a multi-select checklist (all selected by default) before choosing the planning mode and dates. - Empty state explains the benefit and offers "Add products" CTA while always allowing "Plan without products" to skip - Selected product IDs flow through PlanMenuSheet → PlanDatePickerSheet → MenuService.generateForDates → backend - Backend: added ProductIDs field to generate-menu request body; uses ListForPromptByIDs when set, ListForPrompt otherwise - Backend: added Repository.ListForPromptByIDs (filtered SQL query) - All 12 ARB locale files updated with planProducts* keys Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -118,7 +118,9 @@
|
||||
"noResultsForQuery": "Nada encontrado para \"{query}\"",
|
||||
"@noResultsForQuery": {
|
||||
"placeholders": {
|
||||
"query": { "type": "String" }
|
||||
"query": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"servingsLabel": "Porções",
|
||||
@@ -127,7 +129,9 @@
|
||||
"planningForDate": "",
|
||||
"@planningForDate": {
|
||||
"placeholders": {
|
||||
"date": { "type": "String" }
|
||||
"date": {
|
||||
"type": "String"
|
||||
}
|
||||
}
|
||||
},
|
||||
"markAsEaten": "Marcar como comido",
|
||||
@@ -136,7 +140,6 @@
|
||||
"generateWeekSubtitle": "A IA criará um menu com café da manhã, almoço e jantar para a semana inteira",
|
||||
"generatingMenu": "Gerando menu...",
|
||||
"dayPlannedLabel": "Dia planejado",
|
||||
|
||||
"planMenuButton": "Planejar refeições",
|
||||
"planMenuTitle": "O que planejar?",
|
||||
"planOptionSingleMeal": "Uma refeição",
|
||||
@@ -151,6 +154,16 @@
|
||||
"planSelectMealType": "Tipo de refeição",
|
||||
"planSelectRange": "Selecionar período",
|
||||
"planGenerateButton": "Planejar",
|
||||
"planGenerating": "Gerando plano\u2026",
|
||||
"planSuccess": "Menu planejado!"
|
||||
"planGenerating": "Gerando plano…",
|
||||
"planSuccess": "Menu planejado!",
|
||||
"planProductsTitle": "Produtos para o menu",
|
||||
"planProductsSubtitle": "A IA levará em conta os produtos selecionados ao gerar receitas",
|
||||
"planProductsEmpty": "Nenhum produto adicionado",
|
||||
"planProductsEmptyMessage": "Adicione produtos que você tem em casa — a IA sugerirá receitas com o que você já tem",
|
||||
"planProductsAddProducts": "Adicionar produtos",
|
||||
"planProductsContinue": "Continuar",
|
||||
"planProductsSkip": "Pular seleção de produtos",
|
||||
"planProductsSkipNoProducts": "Planejar sem produtos",
|
||||
"planProductsSelectAll": "Selecionar tudo",
|
||||
"planProductsDeselectAll": "Desmarcar tudo"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user