fix(streckkod+kvitto): sparad-bekraftelse, fettvarden, kvitto-antal

Streckkod / produktbidrag:
- Tydlig bekraftelse 'Sparad i delade katalogen - tack!' visas nu efter att en
  fotad produkt lasts av, sa man ser att bidraget gick fram (forut bara
  'Skanna igen' utan aterkoppling).
- Naringsetiketter laser nu ocksa enkelomattat och fleromattat fett (t.ex.
  olivolja visar tre fettrader). Nya valfria falt monounsaturatedFatG/
  polyunsaturatedFatG i NutritionValues + READ_NUTRITION_LABEL + prompt +
  produktpanelen. Obligatoriska EU-falt oforandrade.

Kvitto:
- Rader som ar samma vara (samma normaliserade namn + enhet) slas nu ihop till
  EN vara med ratt antal - '2 x mjolk' pa kvittot blir en vara a 2 st i stallet
  for tva rader a 1 st. Priser summeras, rabatter dras som forut. En kvittorad
  raknas som minst 1 exemplar aven om antal saknas.

Verifierat: typecheck hela repot gront, nutrition-engine 19/19, ai-contracts
24/24, worker 23/23, api 104/104, samt repro mot testdatabas (2 mjolk-rader ->
1 vara a 2; olivolja sparar fett/mattat/enkel-/fleromattat).
This commit is contained in:
Claude
2026-08-20 14:37:45 +00:00
parent cac98b8dc7
commit d75500bebd
17 changed files with 127 additions and 27 deletions
+3
View File
@@ -33,6 +33,7 @@
"barcode.contributing.title": "A ler a embalagem…",
"barcode.contributing.body": "Estamos a extrair informação nutricional, alergénios e ingredientes e a guardar o produto no catálogo partilhado, para que a próxima pessoa não precise de o fotografar.",
"barcode.contributing.failed": "Não foi possível ler a embalagem. Tente novamente com uma foto nítida e boa iluminação.",
"barcode.contributing.saved": "✓ Guardado no catálogo partilhado obrigado por contribuir!",
"barcode.contributing.frontDone": "Foto da frente tirada",
"barcode.contributing.backPrompt": "Agora fotografe a parte de trás com a declaração nutricional e os ingredientes assim o produto fica completo.",
"barcode.contributing.skipBack": "Pronto, analisar",
@@ -463,6 +464,8 @@
"barcode.info.sugar": " dos quais açúcares",
"barcode.info.fat": "Gordura",
"barcode.info.satfat": " das quais saturadas",
"barcode.info.monofat": " das quais monoinsaturadas",
"barcode.info.polyfat": " das quais poli-insaturadas",
"barcode.info.fiber": "Fibra",
"barcode.info.salt": "Sal",
"barcode.info.allergens": "Alergénios",