i18n(säsong+kock): lokalisera säsongsnamn (12 språk), snyggare tidshint, rensa dubbletter
- Säsong/högtidschippen på "Vad ska vi äta?" visade marknadens namn på svenska
även för icke-svenska språk (SE-marknadens event saknar nameLocalized). Nu
renderas de via i18n-nyckeln season.<slug> (t med defaultValue -> serverns namn
som fallback för egennamn m.m.). SE-marknadens 14 event översatta i alla 12
språk; egennamn (Navidad, Midsommar, Lucia...) behålls, beskrivande översätts
(Kräftskiva, Skolstart, Grillsäsong...).
- Kok-läget: den boxade ⏱-rutan (såg ut som en knapp/timer och kunde misstas för
en riktig timer) ersatt med en diskret rad "⏱ Ungefär {time}". Döda nycklar
cooking.timer/timerDone/timerRunning borttagna; cooking.timerHint -> approxTime.
- Städat 2 dubblettnycklar i alla 12 locale-filer (mealbox.eatBy, common.remove)
som låg kvar sedan tidigare leveranser (i18next tog sista värdet ändå).
- Vakt + typecheck gröna. 591 nycklar.
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -175,11 +175,15 @@ export default function WhatToEatScreen() {
|
||||
<>
|
||||
<Spacer size={spacing.xs} />
|
||||
<Row style={{ flexWrap: "wrap" }}>
|
||||
{query.data.context.activeHolidays.map((h) => (
|
||||
<Pressable key={h.slug} onPress={() => selectHoliday(h.slug)}>
|
||||
<Tag label={`🎉 ${h.name}`} tone={holiday === h.slug ? "success" : "accent"} />
|
||||
</Pressable>
|
||||
))}
|
||||
{query.data.context.activeHolidays.map((h) => {
|
||||
// Säsongsnamn på användarens språk; fallback till serverns namn (egennamn m.m.).
|
||||
const name = t(`season.${h.slug}`, { defaultValue: h.name });
|
||||
return (
|
||||
<Pressable key={h.slug} onPress={() => selectHoliday(h.slug)}>
|
||||
<Tag label={`🎉 ${name}`} tone={holiday === h.slug ? "success" : "accent"} />
|
||||
</Pressable>
|
||||
);
|
||||
})}
|
||||
</Row>
|
||||
</>
|
||||
)}
|
||||
|
||||
@@ -287,19 +287,7 @@ export default function CookingScreen() {
|
||||
)}
|
||||
|
||||
{step?.timerSeconds != null && (
|
||||
<View
|
||||
style={{
|
||||
backgroundColor: colors.primarySoft,
|
||||
padding: spacing.md,
|
||||
borderRadius: 16,
|
||||
alignItems: "center",
|
||||
}}
|
||||
>
|
||||
<Text style={{ fontSize: 22, fontWeight: "700", color: colors.primaryDark }}>
|
||||
⏱ {formatTime(step.timerSeconds)}
|
||||
</Text>
|
||||
<Small>{t("cooking.timerHint")}</Small>
|
||||
</View>
|
||||
<Small>⏱ {t("cooking.approxTime", { time: formatTime(step.timerSeconds) })}</Small>
|
||||
)}
|
||||
<Small>{t("cooking.keepAwake")}</Small>
|
||||
</View>
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Tilføj",
|
||||
"common.back": "Tilbage",
|
||||
"common.cancel": "Annuller",
|
||||
"mealbox.eatBy": "Spis denne madkasse senest den {date}. Nul madlavning, nul spild.",
|
||||
"mealbox.ready": "Færdig mad der venter – husets hurtigste aftensmad.",
|
||||
"common.remove": "Fjern",
|
||||
"common.all": "Alle",
|
||||
"auth.tagline": "Mindre spild, mindre stress, mere tilbage i pungen",
|
||||
"auth.passwordMin8": "Adgangskoden skal være mindst 8 tegn.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Tag en mere",
|
||||
"scan.analyzeCount": "Analysér ({count})",
|
||||
"scan.tips.merge": "Køl/frys/spisekammer: tag flere billeder i samme scanning – appen slår dubletter sammen.",
|
||||
"cooking.timerHint": "Omtrentlig tid for trinnet – brug din telefons egen timer.",
|
||||
"kitchen.deleteConfirm": "Fjern valgte varer fra {label}?",
|
||||
"kitchen.scopeSearch": "søgningen",
|
||||
"kitchen.scopeAll": "hele lageret",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "Skærmen forbliver tændt, mens du laver mad",
|
||||
"cooking.scale": "Portioner",
|
||||
"cooking.step": "Trin {current} af {total}",
|
||||
"cooking.timer": "Start timer",
|
||||
"cooking.timerDone": "Færdig!",
|
||||
"cooking.timerRunning": "{time} tilbage",
|
||||
"cooking.approxTime": "Cirka {time}",
|
||||
"home.budget": "Madbudget",
|
||||
"home.emptyInventory": "Lageret er tomt. Scan køleskabet eller tilføj varer manuelt.",
|
||||
"home.expired": "Udløbet",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Registreret!",
|
||||
"cookedLog.doneBody": "Råvarerne er trukket fra dit lager, og måltidet er registreret.",
|
||||
"plan.addMeal": "Tilføj et måltid",
|
||||
"plan.regenerate": "Planlæg ugen igen"
|
||||
"plan.regenerate": "Planlæg ugen igen",
|
||||
"season.midsommar": "Sankthans",
|
||||
"season.jul": "Jul",
|
||||
"season.påsk": "Påske",
|
||||
"season.nyår": "Nytårsaften",
|
||||
"season.kraftskiva": "Krebsegilde",
|
||||
"season.surstromming": "Surströmming-premiere",
|
||||
"season.lucia": "Luciadag",
|
||||
"season.valborg": "Valborgsaften",
|
||||
"season.grillsasong": "Grillsæson",
|
||||
"season.skolstart": "Skolestart",
|
||||
"season.alla-hjartans-dag": "Valentinsdag",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Hinzufügen",
|
||||
"common.back": "Zurück",
|
||||
"common.cancel": "Abbrechen",
|
||||
"mealbox.eatBy": "Iss diese Meal-Box spätestens am {date}. Kein Kochen, keine Verschwendung.",
|
||||
"mealbox.ready": "Fertiges Essen wartet – das schnellste Abendessen im Haus.",
|
||||
"common.remove": "Entfernen",
|
||||
"common.all": "Alle",
|
||||
"auth.tagline": "Weniger Verschwendung, weniger Stress, mehr im Geldbeutel",
|
||||
"auth.passwordMin8": "Das Passwort muss mindestens 8 Zeichen lang sein.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Noch eins aufnehmen",
|
||||
"scan.analyzeCount": "Analysieren ({count})",
|
||||
"scan.tips.merge": "Kühlschrank/Gefrierfach/Vorrat: Nimm mehrere Bilder im selben Scan auf – die App führt Duplikate zusammen.",
|
||||
"cooking.timerHint": "Ungefähre Zeit für den Schritt – nutze den Timer deines Handys.",
|
||||
"kitchen.deleteConfirm": "Ausgewählte Waren aus {label} entfernen?",
|
||||
"kitchen.scopeSearch": "der Suche",
|
||||
"kitchen.scopeAll": "dem gesamten Bestand",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "Der Bildschirm bleibt beim Kochen an",
|
||||
"cooking.scale": "Portionen",
|
||||
"cooking.step": "Schritt {current} von {total}",
|
||||
"cooking.timer": "Timer starten",
|
||||
"cooking.timerDone": "Fertig!",
|
||||
"cooking.timerRunning": "{time} übrig",
|
||||
"cooking.approxTime": "Etwa {time}",
|
||||
"home.budget": "Essensbudget",
|
||||
"home.emptyInventory": "Der Vorrat ist leer. Scanne den Kühlschrank oder füge manuell hinzu.",
|
||||
"home.expired": "Abgelaufen",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Erfasst!",
|
||||
"cookedLog.doneBody": "Die Zutaten wurden von deinem Vorrat abgezogen und die Mahlzeit ist erfasst.",
|
||||
"plan.addMeal": "Mahlzeit hinzufügen",
|
||||
"plan.regenerate": "Woche neu planen"
|
||||
"plan.regenerate": "Woche neu planen",
|
||||
"season.midsommar": "Mittsommer",
|
||||
"season.jul": "Weihnachten",
|
||||
"season.påsk": "Ostern",
|
||||
"season.nyår": "Silvester",
|
||||
"season.kraftskiva": "Krebsessen",
|
||||
"season.surstromming": "Surströmming-Premiere",
|
||||
"season.lucia": "Luciafest",
|
||||
"season.valborg": "Walpurgisnacht",
|
||||
"season.grillsasong": "Grillsaison",
|
||||
"season.skolstart": "Schulanfang",
|
||||
"season.alla-hjartans-dag": "Valentinstag",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Add",
|
||||
"common.back": "Back",
|
||||
"common.cancel": "Cancel",
|
||||
"mealbox.eatBy": "Eat this meal box by {date} at the latest. Zero cooking, zero waste.",
|
||||
"mealbox.ready": "Ready-made food waiting – the fastest dinner in the house.",
|
||||
"common.remove": "Remove",
|
||||
"common.all": "All",
|
||||
"auth.tagline": "Less waste, less stress, more left in your wallet",
|
||||
"auth.passwordMin8": "Password must be at least 8 characters.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Take another",
|
||||
"scan.analyzeCount": "Analyze ({count})",
|
||||
"scan.tips.merge": "Fridge/freezer/pantry: take several photos in the same scan – the app merges duplicates.",
|
||||
"cooking.timerHint": "Approximate time for the step – use your phone's own timer.",
|
||||
"kitchen.deleteConfirm": "Remove selected items from {label}?",
|
||||
"kitchen.scopeSearch": "the search",
|
||||
"kitchen.scopeAll": "the whole inventory",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "The screen stays awake while you cook",
|
||||
"cooking.scale": "Servings",
|
||||
"cooking.step": "Step {current} of {total}",
|
||||
"cooking.timer": "Start timer",
|
||||
"cooking.timerDone": "Done!",
|
||||
"cooking.timerRunning": "{time} left",
|
||||
"cooking.approxTime": "About {time}",
|
||||
"home.budget": "Food budget",
|
||||
"home.emptyInventory": "Your inventory is empty. Scan the fridge or add items manually.",
|
||||
"home.expired": "Expired",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Logged!",
|
||||
"cookedLog.doneBody": "The ingredients have been deducted from your stock and the meal is logged.",
|
||||
"plan.addMeal": "Add a meal",
|
||||
"plan.regenerate": "Re-plan the week"
|
||||
"plan.regenerate": "Re-plan the week",
|
||||
"season.midsommar": "Midsummer",
|
||||
"season.jul": "Christmas",
|
||||
"season.påsk": "Easter",
|
||||
"season.nyår": "New Year's Eve",
|
||||
"season.kraftskiva": "Crayfish party",
|
||||
"season.surstromming": "Surströmming premiere",
|
||||
"season.lucia": "St Lucia's Day",
|
||||
"season.valborg": "Walpurgis Night",
|
||||
"season.grillsasong": "Grilling season",
|
||||
"season.skolstart": "Back to school",
|
||||
"season.alla-hjartans-dag": "Valentine's Day",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Añadir",
|
||||
"common.back": "Atrás",
|
||||
"common.cancel": "Cancelar",
|
||||
"mealbox.eatBy": "Cómete esta tarrina como muy tarde el {date}. Cero cocina, cero desperdicio.",
|
||||
"mealbox.ready": "Comida lista esperando: la cena más rápida de casa.",
|
||||
"common.remove": "Eliminar",
|
||||
"common.all": "Todos",
|
||||
"auth.tagline": "Menos desperdicio, menos estrés, más dinero en el bolsillo",
|
||||
"auth.passwordMin8": "La contraseña debe tener al menos 8 caracteres.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Hacer otra",
|
||||
"scan.analyzeCount": "Analizar ({count})",
|
||||
"scan.tips.merge": "Nevera/congelador/despensa: haz varias fotos en el mismo escaneo y la app combina los duplicados.",
|
||||
"cooking.timerHint": "Tiempo aproximado del paso: usa el temporizador de tu teléfono.",
|
||||
"kitchen.deleteConfirm": "¿Eliminar los productos seleccionados de {label}?",
|
||||
"kitchen.scopeSearch": "la búsqueda",
|
||||
"kitchen.scopeAll": "todo el inventario",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "La pantalla permanece encendida mientras cocinas",
|
||||
"cooking.scale": "Raciones",
|
||||
"cooking.step": "Paso {current} de {total}",
|
||||
"cooking.timer": "Iniciar temporizador",
|
||||
"cooking.timerDone": "¡Listo!",
|
||||
"cooking.timerRunning": "Quedan {time}",
|
||||
"cooking.approxTime": "Unos {time}",
|
||||
"home.budget": "Presupuesto",
|
||||
"home.emptyInventory": "El inventario está vacío. Escanea la nevera o añade productos manualmente.",
|
||||
"home.expired": "Caducado",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "¡Registrado!",
|
||||
"cookedLog.doneBody": "Los ingredientes se han descontado de tu despensa y la comida queda registrada.",
|
||||
"plan.addMeal": "Añadir una comida",
|
||||
"plan.regenerate": "Replanificar la semana"
|
||||
"plan.regenerate": "Replanificar la semana",
|
||||
"season.midsommar": "Solsticio de verano",
|
||||
"season.jul": "Navidad",
|
||||
"season.påsk": "Pascua",
|
||||
"season.nyår": "Nochevieja",
|
||||
"season.kraftskiva": "Fiesta del cangrejo de río",
|
||||
"season.surstromming": "Estreno del arenque fermentado",
|
||||
"season.lucia": "Santa Lucía",
|
||||
"season.valborg": "Noche de Walpurgis",
|
||||
"season.grillsasong": "Temporada de barbacoa",
|
||||
"season.skolstart": "Vuelta al cole",
|
||||
"season.alla-hjartans-dag": "San Valentín",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Lisää",
|
||||
"common.back": "Takaisin",
|
||||
"common.cancel": "Peruuta",
|
||||
"mealbox.eatBy": "Syö tämä ateriarasia viimeistään {date}. Ei ruoanlaittoa, ei hävikkiä.",
|
||||
"mealbox.ready": "Valmista ruokaa odottamassa – talon nopein illallinen.",
|
||||
"common.remove": "Poista",
|
||||
"common.all": "Kaikki",
|
||||
"auth.tagline": "Vähemmän hävikkiä, vähemmän stressiä, enemmän jää lompakkoon",
|
||||
"auth.passwordMin8": "Salasanan on oltava vähintään 8 merkkiä.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Ota vielä yksi",
|
||||
"scan.analyzeCount": "Analysoi ({count})",
|
||||
"scan.tips.merge": "Jääkaappi/pakastin/ruokakomero: ota useita kuvia samassa skannauksessa – sovellus yhdistää kaksoiskappaleet.",
|
||||
"cooking.timerHint": "Vaiheen arvioitu aika – käytä puhelimesi omaa ajastinta.",
|
||||
"kitchen.deleteConfirm": "Poistetaanko valitut tuotteet {label}?",
|
||||
"kitchen.scopeSearch": "hausta",
|
||||
"kitchen.scopeAll": "koko varastosta",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "Näyttö pysyy päällä, kun kokkaat",
|
||||
"cooking.scale": "Annokset",
|
||||
"cooking.step": "Vaihe {current}/{total}",
|
||||
"cooking.timer": "Käynnistä ajastin",
|
||||
"cooking.timerDone": "Valmis!",
|
||||
"cooking.timerRunning": "{time} jäljellä",
|
||||
"cooking.approxTime": "Noin {time}",
|
||||
"home.budget": "Ruokabudjetti",
|
||||
"home.emptyInventory": "Varasto on tyhjä. Skannaa jääkaappi tai lisää tuotteita käsin.",
|
||||
"home.expired": "Vanhentunut",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Merkitty!",
|
||||
"cookedLog.doneBody": "Ainekset on vähennetty varastostasi ja ateria on kirjattu.",
|
||||
"plan.addMeal": "Lisää ateria",
|
||||
"plan.regenerate": "Suunnittele viikko uudelleen"
|
||||
"plan.regenerate": "Suunnittele viikko uudelleen",
|
||||
"season.midsommar": "Juhannus",
|
||||
"season.jul": "Joulu",
|
||||
"season.påsk": "Pääsiäinen",
|
||||
"season.nyår": "Uudenvuodenaatto",
|
||||
"season.kraftskiva": "Rapujuhlat",
|
||||
"season.surstromming": "Hapansilakan kausi",
|
||||
"season.lucia": "Lucian päivä",
|
||||
"season.valborg": "Vappu",
|
||||
"season.grillsasong": "Grillikausi",
|
||||
"season.skolstart": "Koulun alku",
|
||||
"season.alla-hjartans-dag": "Ystävänpäivä",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Ajouter",
|
||||
"common.back": "Retour",
|
||||
"common.cancel": "Annuler",
|
||||
"mealbox.eatBy": "À manger avant le {date}. Zéro cuisine, zéro gaspillage.",
|
||||
"mealbox.ready": "Un plat tout prêt qui attend – le dîner le plus rapide de la maison.",
|
||||
"common.remove": "Supprimer",
|
||||
"common.all": "Tous",
|
||||
"auth.tagline": "Moins de gaspillage, moins de stress, plus d'argent dans votre portefeuille",
|
||||
"auth.passwordMin8": "Le mot de passe doit contenir au moins 8 caractères.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "En prendre une autre",
|
||||
"scan.analyzeCount": "Analyser ({count})",
|
||||
"scan.tips.merge": "Réfrigérateur/congélateur/garde-manger : prenez plusieurs photos dans le même scan – l'application fusionne les doublons.",
|
||||
"cooking.timerHint": "Durée approximative de l'étape – utilisez le minuteur de votre téléphone.",
|
||||
"kitchen.deleteConfirm": "Supprimer les articles sélectionnés de {label} ?",
|
||||
"kitchen.scopeSearch": "la recherche",
|
||||
"kitchen.scopeAll": "tout le stock",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "L'écran reste allumé pendant que vous cuisinez",
|
||||
"cooking.scale": "Portions",
|
||||
"cooking.step": "Étape {current} sur {total}",
|
||||
"cooking.timer": "Lancer le minuteur",
|
||||
"cooking.timerDone": "Terminé !",
|
||||
"cooking.timerRunning": "{time} restants",
|
||||
"cooking.approxTime": "Environ {time}",
|
||||
"home.budget": "Budget",
|
||||
"home.emptyInventory": "Le stock est vide. Scannez le frigo ou ajoutez manuellement.",
|
||||
"home.expired": "Expiré",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Enregistré !",
|
||||
"cookedLog.doneBody": "Les ingrédients ont été déduits de votre stock et le repas est enregistré.",
|
||||
"plan.addMeal": "Ajouter un repas",
|
||||
"plan.regenerate": "Replanifier la semaine"
|
||||
"plan.regenerate": "Replanifier la semaine",
|
||||
"season.midsommar": "Solstice d'été",
|
||||
"season.jul": "Noël",
|
||||
"season.påsk": "Pâques",
|
||||
"season.nyår": "Saint-Sylvestre",
|
||||
"season.kraftskiva": "Fête des écrevisses",
|
||||
"season.surstromming": "Première du hareng fermenté",
|
||||
"season.lucia": "Sainte-Lucie",
|
||||
"season.valborg": "Nuit de Walpurgis",
|
||||
"season.grillsasong": "Saison des barbecues",
|
||||
"season.skolstart": "Rentrée scolaire",
|
||||
"season.alla-hjartans-dag": "Saint-Valentin",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Aïd el-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Aggiungi",
|
||||
"common.back": "Indietro",
|
||||
"common.cancel": "Annulla",
|
||||
"mealbox.eatBy": "Consuma questo pasto entro il {date}. Zero cucina, zero sprechi.",
|
||||
"mealbox.ready": "Cibo pronto in attesa: la cena più veloce di casa.",
|
||||
"common.remove": "Rimuovi",
|
||||
"common.all": "Tutti",
|
||||
"auth.tagline": "Meno sprechi, meno stress, più soldi in tasca",
|
||||
"auth.passwordMin8": "La password deve contenere almeno 8 caratteri.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Scatta un’altra",
|
||||
"scan.analyzeCount": "Analizza ({count})",
|
||||
"scan.tips.merge": "Frigo/freezer/dispensa: scatta più foto nella stessa scansione – l’app unisce i duplicati.",
|
||||
"cooking.timerHint": "Tempo indicativo per il passaggio – usa il timer del tuo telefono.",
|
||||
"kitchen.deleteConfirm": "Rimuovere i prodotti selezionati da {label}?",
|
||||
"kitchen.scopeSearch": "la ricerca",
|
||||
"kitchen.scopeAll": "tutto l’inventario",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "Lo schermo resta acceso mentre cucini",
|
||||
"cooking.scale": "Porzioni",
|
||||
"cooking.step": "Passo {current} di {total}",
|
||||
"cooking.timer": "Avvia timer",
|
||||
"cooking.timerDone": "Fatto!",
|
||||
"cooking.timerRunning": "{time} rimasti",
|
||||
"cooking.approxTime": "Circa {time}",
|
||||
"home.budget": "Budget",
|
||||
"home.emptyInventory": "La dispensa è vuota. Scansiona il frigo o aggiungi manualmente.",
|
||||
"home.expired": "Scaduto",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Registrato!",
|
||||
"cookedLog.doneBody": "Gli ingredienti sono stati scalati dalla tua dispensa e il pasto è registrato.",
|
||||
"plan.addMeal": "Aggiungi un pasto",
|
||||
"plan.regenerate": "Ripianifica la settimana"
|
||||
"plan.regenerate": "Ripianifica la settimana",
|
||||
"season.midsommar": "Festa di mezza estate",
|
||||
"season.jul": "Natale",
|
||||
"season.påsk": "Pasqua",
|
||||
"season.nyår": "Capodanno",
|
||||
"season.kraftskiva": "Festa dei gamberi di fiume",
|
||||
"season.surstromming": "Debutto dell'aringa fermentata",
|
||||
"season.lucia": "Santa Lucia",
|
||||
"season.valborg": "Notte di Valpurga",
|
||||
"season.grillsasong": "Stagione delle grigliate",
|
||||
"season.skolstart": "Rientro a scuola",
|
||||
"season.alla-hjartans-dag": "San Valentino",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Legg til",
|
||||
"common.back": "Tilbake",
|
||||
"common.cancel": "Avbryt",
|
||||
"mealbox.eatBy": "Spis denne matboksen innen {date}. Null matlaging, null svinn.",
|
||||
"mealbox.ready": "Ferdig mat som venter – husets raskeste middag.",
|
||||
"common.remove": "Fjern",
|
||||
"common.all": "Alle",
|
||||
"auth.tagline": "Mindre svinn, mindre stress, mer igjen i lommeboka",
|
||||
"auth.passwordMin8": "Passordet må være minst 8 tegn.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Ta en til",
|
||||
"scan.analyzeCount": "Analyser ({count})",
|
||||
"scan.tips.merge": "Kjøl/frys/spiskammer: ta flere bilder i samme skanning – appen slår sammen duplikater.",
|
||||
"cooking.timerHint": "Omtrentlig tid for steget – bruk telefonens egen tidtaker.",
|
||||
"kitchen.deleteConfirm": "Fjerne valgte varer fra {label}?",
|
||||
"kitchen.scopeSearch": "søket",
|
||||
"kitchen.scopeAll": "hele lageret",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "Skjermen holdes våken mens du lager mat",
|
||||
"cooking.scale": "Porsjoner",
|
||||
"cooking.step": "Steg {current} av {total}",
|
||||
"cooking.timer": "Start timer",
|
||||
"cooking.timerDone": "Ferdig!",
|
||||
"cooking.timerRunning": "{time} igjen",
|
||||
"cooking.approxTime": "Cirka {time}",
|
||||
"home.budget": "Matbudsjett",
|
||||
"home.emptyInventory": "Lageret er tomt. Skann kjøleskapet eller legg til varer manuelt.",
|
||||
"home.expired": "Utløpt",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Registrert!",
|
||||
"cookedLog.doneBody": "Råvarene er trukket fra lageret ditt, og måltidet er logget.",
|
||||
"plan.addMeal": "Legg til et måltid",
|
||||
"plan.regenerate": "Planlegg uken på nytt"
|
||||
"plan.regenerate": "Planlegg uken på nytt",
|
||||
"season.midsommar": "Sankthans",
|
||||
"season.jul": "Jul",
|
||||
"season.påsk": "Påske",
|
||||
"season.nyår": "Nyttårsaften",
|
||||
"season.kraftskiva": "Krepselag",
|
||||
"season.surstromming": "Surströmming-premiere",
|
||||
"season.lucia": "Luciadagen",
|
||||
"season.valborg": "Valborgsnatt",
|
||||
"season.grillsasong": "Grillsesong",
|
||||
"season.skolstart": "Skolestart",
|
||||
"season.alla-hjartans-dag": "Valentinsdagen",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Toevoegen",
|
||||
"common.back": "Terug",
|
||||
"common.cancel": "Annuleren",
|
||||
"mealbox.eatBy": "Eet deze maaltijdbox uiterlijk op {date}. Geen kookwerk, geen verspilling.",
|
||||
"mealbox.ready": "Kant-en-klaar eten dat wacht – het snelste avondeten in huis.",
|
||||
"common.remove": "Verwijderen",
|
||||
"common.all": "Alle",
|
||||
"auth.tagline": "Minder verspilling, minder stress, meer over in je portemonnee",
|
||||
"auth.passwordMin8": "Het wachtwoord moet minstens 8 tekens bevatten.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Nog een maken",
|
||||
"scan.analyzeCount": "Analyseren ({count})",
|
||||
"scan.tips.merge": "Koelkast/vriezer/voorraadkast: maak meerdere foto's in dezelfde scan – de app voegt dubbele items samen.",
|
||||
"cooking.timerHint": "Geschatte tijd voor de stap – gebruik de eigen timer van je telefoon.",
|
||||
"kitchen.deleteConfirm": "Geselecteerde producten uit {label} verwijderen?",
|
||||
"kitchen.scopeSearch": "de zoekopdracht",
|
||||
"kitchen.scopeAll": "de hele voorraad",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "Het scherm blijft aan tijdens het koken",
|
||||
"cooking.scale": "Porties",
|
||||
"cooking.step": "Stap {current} van {total}",
|
||||
"cooking.timer": "Timer starten",
|
||||
"cooking.timerDone": "Klaar!",
|
||||
"cooking.timerRunning": "{time} over",
|
||||
"cooking.approxTime": "Ongeveer {time}",
|
||||
"home.budget": "Voedselbudget",
|
||||
"home.emptyInventory": "De voorraad is leeg. Scan de koelkast of voeg handmatig toe.",
|
||||
"home.expired": "Verlopen",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Vastgelegd!",
|
||||
"cookedLog.doneBody": "De ingrediënten zijn van je voorraad afgetrokken en de maaltijd is vastgelegd.",
|
||||
"plan.addMeal": "Maaltijd toevoegen",
|
||||
"plan.regenerate": "Week opnieuw plannen"
|
||||
"plan.regenerate": "Week opnieuw plannen",
|
||||
"season.midsommar": "Midzomer",
|
||||
"season.jul": "Kerst",
|
||||
"season.påsk": "Pasen",
|
||||
"season.nyår": "Oudejaarsavond",
|
||||
"season.kraftskiva": "Rivierkreeftfeest",
|
||||
"season.surstromming": "Surströmming-première",
|
||||
"season.lucia": "Sint-Luciadag",
|
||||
"season.valborg": "Walpurgisnacht",
|
||||
"season.grillsasong": "Barbecueseizoen",
|
||||
"season.skolstart": "Begin schooljaar",
|
||||
"season.alla-hjartans-dag": "Valentijnsdag",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Dodaj",
|
||||
"common.back": "Wstecz",
|
||||
"common.cancel": "Anuluj",
|
||||
"mealbox.eatBy": "Zjedz ten pojemnik najpóźniej {date}. Zero gotowania, zero marnowania.",
|
||||
"mealbox.ready": "Gotowe jedzenie czeka – najszybsza kolacja w domu.",
|
||||
"common.remove": "Usuń",
|
||||
"common.all": "Wszystkie",
|
||||
"auth.tagline": "Mniej marnowania, mniej stresu, więcej w portfelu",
|
||||
"auth.passwordMin8": "Hasło musi mieć co najmniej 8 znaków.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Zrób kolejne",
|
||||
"scan.analyzeCount": "Analizuj ({count})",
|
||||
"scan.tips.merge": "Lodówka/zamrażarka/spiżarnia: zrób kilka zdjęć w jednym skanowaniu – aplikacja połączy duplikaty.",
|
||||
"cooking.timerHint": "Przybliżony czas etapu – użyj minutnika w telefonie.",
|
||||
"kitchen.deleteConfirm": "Usunąć wybrane produkty z {label}?",
|
||||
"kitchen.scopeSearch": "wyszukiwania",
|
||||
"kitchen.scopeAll": "całego zapasu",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "Ekran pozostaje włączony podczas gotowania",
|
||||
"cooking.scale": "Porcje",
|
||||
"cooking.step": "Krok {current} z {total}",
|
||||
"cooking.timer": "Uruchom minutnik",
|
||||
"cooking.timerDone": "Gotowe!",
|
||||
"cooking.timerRunning": "Pozostało {time}",
|
||||
"cooking.approxTime": "Około {time}",
|
||||
"home.budget": "Budżet na jedzenie",
|
||||
"home.emptyInventory": "Spiżarnia jest pusta. Zeskanuj lodówkę albo dodaj produkty ręcznie.",
|
||||
"home.expired": "Przeterminowane",
|
||||
@@ -594,5 +589,19 @@
|
||||
"cookedLog.doneTitle": "Zapisano!",
|
||||
"cookedLog.doneBody": "Składniki zostały odjęte z Twojej spiżarni, a posiłek zapisano.",
|
||||
"plan.addMeal": "Dodaj posiłek",
|
||||
"plan.regenerate": "Zaplanuj tydzień ponownie"
|
||||
"plan.regenerate": "Zaplanuj tydzień ponownie",
|
||||
"season.midsommar": "Noc Świętojańska",
|
||||
"season.jul": "Boże Narodzenie",
|
||||
"season.påsk": "Wielkanoc",
|
||||
"season.nyår": "Sylwester",
|
||||
"season.kraftskiva": "Święto raków",
|
||||
"season.surstromming": "Premiera surströmming",
|
||||
"season.lucia": "Dzień Świętej Łucji",
|
||||
"season.valborg": "Noc Walpurgi",
|
||||
"season.grillsasong": "Sezon grillowy",
|
||||
"season.skolstart": "Powrót do szkoły",
|
||||
"season.alla-hjartans-dag": "Walentynki",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Adicionar",
|
||||
"common.back": "Voltar",
|
||||
"common.cancel": "Cancelar",
|
||||
"mealbox.eatBy": "Come esta refeição até {date}, o mais tardar. Zero cozinha, zero desperdício.",
|
||||
"mealbox.ready": "Comida pronta à espera – o jantar mais rápido cá de casa.",
|
||||
"common.remove": "Remover",
|
||||
"common.all": "Todos",
|
||||
"auth.tagline": "Menos desperdício, menos stress, mais dinheiro na carteira",
|
||||
"auth.passwordMin8": "A palavra-passe tem de ter pelo menos 8 caracteres.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Tirar mais uma",
|
||||
"scan.analyzeCount": "Analisar ({count})",
|
||||
"scan.tips.merge": "Frigorífico/congelador/despensa: tira várias fotos na mesma digitalização – a app junta os duplicados.",
|
||||
"cooking.timerHint": "Tempo aproximado para o passo – usa o temporizador do teu telemóvel.",
|
||||
"kitchen.deleteConfirm": "Remover os artigos selecionados de {label}?",
|
||||
"kitchen.scopeSearch": "a pesquisa",
|
||||
"kitchen.scopeAll": "todo o inventário",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "O ecrã fica ligado enquanto cozinha",
|
||||
"cooking.scale": "Doses",
|
||||
"cooking.step": "Passo {current} de {total}",
|
||||
"cooking.timer": "Iniciar temporizador",
|
||||
"cooking.timerDone": "Pronto!",
|
||||
"cooking.timerRunning": "Faltam {time}",
|
||||
"cooking.approxTime": "Cerca de {time}",
|
||||
"home.budget": "Orçamento alimentar",
|
||||
"home.emptyInventory": "A despensa está vazia. Digitalize o frigorífico ou adicione manualmente.",
|
||||
"home.expired": "Expirado",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Registado!",
|
||||
"cookedLog.doneBody": "Os ingredientes foram descontados do seu stock e a refeição fica registada.",
|
||||
"plan.addMeal": "Adicionar uma refeição",
|
||||
"plan.regenerate": "Replanear a semana"
|
||||
"plan.regenerate": "Replanear a semana",
|
||||
"season.midsommar": "Solstício de verão",
|
||||
"season.jul": "Natal",
|
||||
"season.påsk": "Páscoa",
|
||||
"season.nyår": "Véspera de Ano Novo",
|
||||
"season.kraftskiva": "Festa dos lagostins",
|
||||
"season.surstromming": "Estreia do arenque fermentado",
|
||||
"season.lucia": "Santa Luzia",
|
||||
"season.valborg": "Noite de Valpúrgia",
|
||||
"season.grillsasong": "Época dos grelhados",
|
||||
"season.skolstart": "Regresso às aulas",
|
||||
"season.alla-hjartans-dag": "Dia dos Namorados",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
@@ -51,9 +51,7 @@
|
||||
"common.add": "Lägg till",
|
||||
"common.back": "Tillbaka",
|
||||
"common.cancel": "Avbryt",
|
||||
"mealbox.eatBy": "Matlådan bör ätas senast {date}. Noll matlagning, noll svinn.",
|
||||
"mealbox.ready": "Färdig mat som väntar – snabbaste middagen i huset.",
|
||||
"common.remove": "Ta bort",
|
||||
"common.all": "Alla",
|
||||
"auth.tagline": "Mindre svinn, mindre stress, mer kvar i plånboken",
|
||||
"auth.passwordMin8": "Lösenordet måste vara minst 8 tecken.",
|
||||
@@ -67,7 +65,6 @@
|
||||
"scan.takeAnother": "Ta en till",
|
||||
"scan.analyzeCount": "Analysera ({count})",
|
||||
"scan.tips.merge": "Kyl/frys/skafferi: ta flera bilder i samma skanning – appen slår ihop dubbletter.",
|
||||
"cooking.timerHint": "Ungefärlig tid för steget – använd din telefons egen timer.",
|
||||
"kitchen.deleteConfirm": "Ta bort valda varor ur {label}?",
|
||||
"kitchen.scopeSearch": "sökningen",
|
||||
"kitchen.scopeAll": "hela lagret",
|
||||
@@ -129,9 +126,7 @@
|
||||
"cooking.keepAwake": "Skärmen hålls vaken medan du lagar",
|
||||
"cooking.scale": "Portioner",
|
||||
"cooking.step": "Steg {current} av {total}",
|
||||
"cooking.timer": "Starta timer",
|
||||
"cooking.timerDone": "Klart!",
|
||||
"cooking.timerRunning": "{time} kvar",
|
||||
"cooking.approxTime": "Ungefär {time}",
|
||||
"home.budget": "Matbudget",
|
||||
"home.emptyInventory": "Lagret är tomt. Skanna kylen eller lägg till varor manuellt.",
|
||||
"home.expired": "Utgången",
|
||||
@@ -580,5 +575,19 @@
|
||||
"cookedLog.doneTitle": "Registrerat!",
|
||||
"cookedLog.doneBody": "Råvarorna är avräknade från ditt lager och måltiden är loggad.",
|
||||
"plan.addMeal": "Lägg till måltid",
|
||||
"plan.regenerate": "Planera om veckan"
|
||||
"plan.regenerate": "Planera om veckan",
|
||||
"season.midsommar": "Midsommar",
|
||||
"season.jul": "Jul",
|
||||
"season.påsk": "Påsk",
|
||||
"season.nyår": "Nyårsafton",
|
||||
"season.kraftskiva": "Kräftskivepremiär",
|
||||
"season.surstromming": "Surströmmingspremiär",
|
||||
"season.lucia": "Lucia",
|
||||
"season.valborg": "Valborg",
|
||||
"season.grillsasong": "Grillsäsong",
|
||||
"season.skolstart": "Skolstart",
|
||||
"season.alla-hjartans-dag": "Alla hjärtans dag",
|
||||
"season.halloween": "Halloween",
|
||||
"season.oktoberfest": "Oktoberfest",
|
||||
"season.eid": "Eid al-Fitr"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user