leafittome/lib/l10n/generated/app_localizations_de.dart
cschlaefke f0b420b656 V3: Stellplatz-Bewertung (Standort-Analyse per Foto + Eignungs-Sterne auf Abruf)
Letzter Roadmap-Punkt von V3. Foto-basierte Lichtverhältnis-Analyse pro
Stellplatz (Cloud Function analyzeLocation) und darauf aufbauende, rein
textbasierte Eignungs-Bewertung einer Pflanze (assessPlantFit) — beides
ausschließlich auf Abruf, nicht automatisch (Kostenkontrolle, eigener
Anthropic-Key). Neue Stellplatz-Detailseite, Verlinkung im Pflanzen-Detail,
Erkennung veralteter Bewertungen bei Umzug/Neuanalyse.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-24 00:17:18 +02:00

576 lines
13 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// ignore: unused_import
import 'package:intl/intl.dart' as intl;
import 'app_localizations.dart';
// ignore_for_file: type=lint
/// The translations for German (`de`).
class AppLocalizationsDe extends AppLocalizations {
AppLocalizationsDe([String locale = 'de']) : super(locale);
@override
String get appTitle => 'LeafItToMe';
@override
String get menuToday => 'Heute';
@override
String get menuPlants => 'Meine Pflanzen';
@override
String get menuLocations => 'Stellplätze';
@override
String get menuHousehold => 'Haushalt';
@override
String get menuSettings => 'Einstellungen';
@override
String get todayTitle => 'Heute';
@override
String get todayAllDone => 'Alles versorgt!';
@override
String get todayEmptyHint => 'Heute stehen keine Aufgaben an.';
@override
String todayNextTask(String date) {
return 'Nächste Aufgabe: $date';
}
@override
String todayOpenTasks(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: '$count offene Aufgaben',
one: '1 offene Aufgabe',
);
return '$_temp0';
}
@override
String taskWaterTitle(String name) {
return '$name gießen';
}
@override
String taskFertilizeTitle(String name) {
return '$name düngen';
}
@override
String get taskDueToday => 'Heute fällig';
@override
String taskOverdue(int days) {
String _temp0 = intl.Intl.pluralLogic(
days,
locale: localeName,
other: 'Seit $days Tagen überfällig',
one: 'Seit gestern überfällig',
);
return '$_temp0';
}
@override
String get taskDone => 'Erledigt';
@override
String taskDoneConfirmation(String name) {
return '$name als erledigt markiert.';
}
@override
String get addPlant => 'Pflanze hinzufügen';
@override
String get plantsTitle => 'Meine Pflanzen';
@override
String get plantsEmpty => 'Noch keine Pflanzen angelegt.';
@override
String get plantsEmptyHint =>
'Lege deine erste Pflanze über den Button unten an.';
@override
String get plantDetailTitle => 'Pflanzenprofil';
@override
String get nicknameLabel => 'Spitzname';
@override
String get speciesLabel => 'Pflanzenart';
@override
String get locationLabel => 'Stellplatz';
@override
String get locationNone => 'Kein Stellplatz';
@override
String wateringEvery(int days) {
return 'Gießen: alle $days Tage';
}
@override
String fertilizingEvery(int days) {
return 'Düngen: alle $days Tage';
}
@override
String get wateringIntervalLabel => 'Gieß-Intervall (Tage)';
@override
String get fertilizingIntervalLabel => 'Dünge-Intervall (Tage)';
@override
String get repottingIntervalLabel => 'Umtopf-Intervall (Monate)';
@override
String get repottingIntervalHelper =>
'Leer lassen, wenn du keine Umtopf-Erinnerung möchtest.';
@override
String get lastRepottedLabel => 'Zuletzt umgetopft';
@override
String get pickDate => 'Datum wählen';
@override
String taskRepotTitle(String name) {
return '$name umtopfen';
}
@override
String repottingEvery(int months) {
return 'Umtopfen: alle $months Monate';
}
@override
String lastRepotted(String date) {
return 'Zuletzt umgetopft: $date';
}
@override
String lastWatered(String date) {
return 'Zuletzt gegossen: $date';
}
@override
String lastFertilized(String date) {
return 'Zuletzt gedüngt: $date';
}
@override
String get never => 'noch nie';
@override
String get save => 'Speichern';
@override
String get cancel => 'Abbrechen';
@override
String get delete => 'Löschen';
@override
String deletePlantQuestion(String name) {
return '$name wirklich löschen?';
}
@override
String get requiredField => 'Bitte ausfüllen';
@override
String get invalidNumber => 'Bitte eine Zahl größer 0 eingeben';
@override
String get locationsTitle => 'Stellplätze';
@override
String get locationsEmpty => 'Noch keine Stellplätze angelegt.';
@override
String get addLocation => 'Stellplatz hinzufügen';
@override
String get locationNameLabel => 'Name des Stellplatzes';
@override
String locationPlantCount(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: '$count Pflanzen',
one: '1 Pflanze',
zero: 'Keine Pflanzen',
);
return '$_temp0';
}
@override
String get locationAnalysisButton => 'Standort analysieren';
@override
String get locationAnalyzing => 'Standort wird analysiert …';
@override
String get locationAnalysisEmpty =>
'Noch keine Analyse. Foto aufnehmen, damit die KI die Lichtverhältnisse einschätzen kann.';
@override
String get locationAnalysisFailed =>
'Die Analyse hat nicht geklappt. Bitte versuche es erneut.';
@override
String get locationAssignedPlants => 'Zugeordnete Pflanzen';
@override
String get locationNoPlantsAssigned =>
'Diesem Stellplatz ist noch keine Pflanze zugeordnet.';
@override
String get householdTitle => 'Haushalt';
@override
String get myHouseholds => 'Meine Haushalte';
@override
String get activeHouseholdLabel => 'Aktiv';
@override
String switchHouseholdSuccess(String name) {
return 'Du bist jetzt im Haushalt „$name“.';
}
@override
String get householdMembers => 'Mitglieder';
@override
String get roleMember => 'Mitglied';
@override
String get roleSitter => 'Pflanzen-Sitter';
@override
String get ownerLabel => 'Besitzer';
@override
String get ownerIsMe => 'Dein Haushalt';
@override
String ownerIs(String name) {
return 'Besitzer: $name';
}
@override
String get renameHousehold => 'Haushalt umbenennen';
@override
String get householdNameLabel => 'Name des Haushalts';
@override
String get saveButton => 'Speichern';
@override
String get leaveHousehold => 'Haushalt verlassen';
@override
String get leaveHouseholdConfirmTitle => 'Haushalt verlassen?';
@override
String leaveHouseholdConfirmBody(String name) {
return 'Du verlierst den Zugriff auf „$name“ und alle Pflanzen darin. Ein neuer Beitritt ist nur mit einem neuen Einladungscode möglich.';
}
@override
String leftHousehold(String name) {
return 'Du hast den Haushalt „$name“ verlassen.';
}
@override
String get removeMemberConfirmTitle => 'Mitglied entfernen?';
@override
String removeMemberConfirmBody(String name) {
return '$name verliert sofort den Zugriff auf diesen Haushalt und alle Pflanzen darin.';
}
@override
String get removeMemberAction => 'Entfernen';
@override
String memberRemoved(String name) {
return '$name wurde aus dem Haushalt entfernt.';
}
@override
String get meLabel => 'Ich';
@override
String get inviteTitle => 'Einladen';
@override
String get inviteMember => 'Mitglied einladen';
@override
String get inviteSitter => 'Pflanzen-Sitter einladen';
@override
String get inviteExplanation =>
'Mitglieder haben volle Rechte. Pflanzen-Sitter sehen die Pläne und können Aufgaben abhaken, aber nichts ändern.';
@override
String get inviteCodeTitle => 'Einladungscode';
@override
String get inviteCodeHint =>
'Gib diesen Code an die Person weiter. Sie trägt ihn in ihrer App unter „Haushalt“ ein. Der Code ist 7 Tage gültig und einmal verwendbar.';
@override
String get copyCode => 'Code kopieren';
@override
String get codeCopied => 'Code kopiert.';
@override
String get joinTitle => 'Haushalt beitreten';
@override
String get joinCodeLabel => 'Einladungscode eingeben';
@override
String get joinButton => 'Beitreten';
@override
String get joinWarningTitle => 'Haushalt beitreten?';
@override
String get joinWarningBody =>
'Du trittst dem Haushalt bei und wechselst direkt dorthin. Deine bisherigen Haushalte bleiben erhalten unter „Meine Haushalte“ kannst du jederzeit zurückwechseln.';
@override
String joinSuccess(String name) {
return 'Willkommen im Haushalt „$name“!';
}
@override
String get joinErrorInvalid => 'Dieser Code ist ungültig oder abgelaufen.';
@override
String get joinErrorUsed => 'Dieser Code wurde bereits verwendet.';
@override
String doneBy(String name) {
return ' · von $name';
}
@override
String get settingsTitle => 'Einstellungen';
@override
String get settingsAppearance => 'Erscheinungsbild';
@override
String get themeSystem => 'System';
@override
String get themeLight => 'Hell';
@override
String get themeDark => 'Dunkel';
@override
String get settingsTextSize => 'Schriftgröße';
@override
String get textSizeNormal => 'Normal';
@override
String get textSizeLarge => 'Groß';
@override
String get textSizeXLarge => 'Sehr groß';
@override
String get settingsHighContrast => 'Hoher Kontrast';
@override
String get settingsReminderTime => 'Erinnerungszeit';
@override
String get settingsReminderTimeHint =>
'Zu dieser Uhrzeit erinnert dich LeafItToMe an offene Aufgaben.';
@override
String get settingsAccount => 'Konto';
@override
String get logout => 'Abmelden';
@override
String get loginSubtitle => 'Melde dich an, um deine Pflanzen zu versorgen.';
@override
String get emailLabel => 'E-Mail-Adresse';
@override
String get passwordLabel => 'Passwort';
@override
String get signInButton => 'Anmelden';
@override
String get signUpButton => 'Konto erstellen';
@override
String get switchToSignUp => 'Neu hier? Konto erstellen';
@override
String get switchToSignIn => 'Du hast schon ein Konto? Anmelden';
@override
String get orDivider => 'oder';
@override
String get signInWithApple => 'Mit Apple anmelden';
@override
String get signInWithGoogle => 'Mit Google anmelden';
@override
String get authErrorAppleFailed =>
'Die Anmeldung mit Apple hat nicht geklappt. Bitte versuche es erneut.';
@override
String get authErrorGoogleFailed =>
'Die Anmeldung mit Google hat nicht geklappt. Bitte versuche es erneut.';
@override
String get authErrorInvalidCredential =>
'E-Mail-Adresse oder Passwort ist falsch.';
@override
String get authErrorEmailInUse =>
'Mit dieser E-Mail-Adresse gibt es bereits ein Konto.';
@override
String get authErrorWeakPassword =>
'Das Passwort muss mindestens 6 Zeichen lang sein.';
@override
String get authErrorInvalidEmail =>
'Bitte gib eine gültige E-Mail-Adresse ein.';
@override
String get authErrorGeneric =>
'Das hat leider nicht geklappt. Bitte versuche es erneut.';
@override
String get bootstrapPreparing => 'Dein Haushalt wird eingerichtet …';
@override
String get bootstrapFailed =>
'Dein Haushalt konnte nicht eingerichtet werden. Bitte prüfe deine Internetverbindung und versuche es erneut.';
@override
String get bootstrapRetry => 'Erneut versuchen';
@override
String get takePhoto => 'Foto aufnehmen';
@override
String get fromGallery => 'Aus der Galerie';
@override
String get recognizing => 'Pflanze wird erkannt …';
@override
String recognitionSuccess(String name) {
return 'Erkannt: $name';
}
@override
String get recognitionFailed =>
'Die Erkennung hat nicht geklappt du kannst die Angaben auch von Hand eintragen.';
@override
String get diagnoseButton => 'Pflanze untersuchen';
@override
String get diagnoseHint =>
'Foto von kranken Blättern oder Stellen aufnehmen die KI beurteilt den Zustand und gibt Behandlungstipps.';
@override
String get diagnosing => 'Foto wird untersucht …';
@override
String get diagnosisTreatmentTitle => 'Was du tun kannst';
@override
String get diagnosisPreventionTitle => 'So beugst du vor';
@override
String get diagnosisDisclaimer =>
'Die Einschätzung kommt von einer KI und kann falsch liegen. Bei wertvollen Pflanzen im Zweifel eine Gärtnerei fragen.';
@override
String diagnosisSpeciesMismatch(String name) {
return 'Das Foto zeigt offenbar eine andere Pflanze als „$name“. Die Einschätzung unten bezieht sich auf die Pflanze im Bild.';
}
@override
String get diagnosisFailed =>
'Die Untersuchung hat nicht geklappt. Bitte versuche es erneut.';
@override
String get diagnosisHistoryTitle => 'Untersuchungen';
@override
String get diagnosisHistoryButton => 'Frühere Untersuchungen';
@override
String get diagnosisHistoryEmpty => 'Noch keine Untersuchungen gespeichert.';
@override
String diagnosisDate(String date) {
return 'Untersucht am $date';
}
@override
String deleteDiagnosisQuestion(String date) {
return 'Untersuchung vom $date löschen?';
}
@override
String get fitCheckButton => 'Eignung prüfen';
@override
String get fitChecking => 'Wird geprüft …';
@override
String get fitCheckNeedsAnalysis =>
'Erst den Stellplatz analysieren (Foto oben)';
@override
String get fitCheckStale => 'Stellplatz hat sich geändert neu prüfen';
@override
String get fitCheckFailed =>
'Die Prüfung hat nicht geklappt. Bitte versuche es erneut.';
@override
String get fitCheckNotDone => 'Eignung noch nicht geprüft';
@override
String get saveError => 'Speichern fehlgeschlagen. Bitte versuche es erneut.';
@override
String saveErrorDetail(String detail) {
return 'Speichern fehlgeschlagen ($detail). Bitte versuche es erneut.';
}
}