mirror of
https://github.com/twonlyapp/twonly-app.git
synced 2026-09-01 07:24:07 +00:00
2530 lines
69 KiB
Dart
2530 lines
69 KiB
Dart
// 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 registerSlogan => 'Privat in Kontakt bleiben.';
|
|
|
|
@override
|
|
String get onboardingWelcomeTitle => 'Willkommen bei twonly!';
|
|
|
|
@override
|
|
String get onboardingWelcomeBody =>
|
|
'Erlebe eine private und sichere Möglichkeit mit Freunden in Kontakt zu bleiben, indem du spontane Bilder teilst.';
|
|
|
|
@override
|
|
String get onboardingE2eTitle => 'Unbekümmert teilen';
|
|
|
|
@override
|
|
String get onboardingE2eBody =>
|
|
'Genieße durch die Ende-zu-Ende-Verschlüsselung die Gewissheit, dass nur du und deine Freunde die geteilten Momente sehen können.';
|
|
|
|
@override
|
|
String get onboardingFocusTitle =>
|
|
'Fokussiere dich auf das Teilen von Momenten';
|
|
|
|
@override
|
|
String get onboardingFocusBody =>
|
|
'Verabschiede dich von süchtig machenden Funktionen! twonly wurde für das Teilen von Momenten ohne nutzlose Ablenkungen oder Werbung entwickelt.';
|
|
|
|
@override
|
|
String get onboardingNotProductTitle => 'Du bist nicht das Produkt!';
|
|
|
|
@override
|
|
String get onboardingNotProductBody =>
|
|
'twonly wird durch ein optionales Abonnement finanziert. Deine Daten werden niemals verkauft.';
|
|
|
|
@override
|
|
String get registerUsernameSlogan => 'Konto erstellen';
|
|
|
|
@override
|
|
String get registerUsernameDecoration => 'Benutzername';
|
|
|
|
@override
|
|
String get registerUsernameLimits => 'Mindestens 3 Zeichen.';
|
|
|
|
@override
|
|
String get registerProofOfWorkFailed =>
|
|
'Beim Captcha-Test gab es ein Problem. Bitte versuche es erneut.';
|
|
|
|
@override
|
|
String get registerSubmitButton => 'Jetzt registrieren!';
|
|
|
|
@override
|
|
String get chatsTapToSend => 'Klicke, um dein erstes Bild zu teilen.';
|
|
|
|
@override
|
|
String get cameraPreviewSendTo => 'Senden an';
|
|
|
|
@override
|
|
String get shareImageTitle => 'Teilen mit';
|
|
|
|
@override
|
|
String get shareImageBestFriends => 'Beste Freunde';
|
|
|
|
@override
|
|
String get shareImagePinnedContacts => 'Angeheftet';
|
|
|
|
@override
|
|
String get shareImagedEditorSendImage => 'Senden';
|
|
|
|
@override
|
|
String get shareImagedEditorShareWith => 'Teilen mit';
|
|
|
|
@override
|
|
String get shareImagedEditorSaveImage => 'Speichern';
|
|
|
|
@override
|
|
String get shareImagedEditorSavedImage => 'Gespeichert';
|
|
|
|
@override
|
|
String get shareImageSearchAllContacts => 'Alle Kontakte durchsuchen';
|
|
|
|
@override
|
|
String get startNewChatSearchHint => 'Name, Benutzername oder Gruppenname';
|
|
|
|
@override
|
|
String get shareImagedSelectAll => 'Alle auswählen';
|
|
|
|
@override
|
|
String get startNewChatTitle => 'Kontakt wählen';
|
|
|
|
@override
|
|
String get startNewChatNewContact => 'Neuer Kontakt';
|
|
|
|
@override
|
|
String get shareImageAllUsers => 'Alle Kontakte';
|
|
|
|
@override
|
|
String get shareImageShowArchived => 'Archivierte Benutzer anzeigen';
|
|
|
|
@override
|
|
String get searchUsernameInput => 'Benutzername';
|
|
|
|
@override
|
|
String get addFriendTitle => 'Freunde hinzufügen';
|
|
|
|
@override
|
|
String get searchUserNamePending => 'Anfrage ausstehend';
|
|
|
|
@override
|
|
String get searchUsernameNotFound => 'Benutzername nicht gefunden';
|
|
|
|
@override
|
|
String get searchUsernameNewFollowerTitle => 'Offene Anfragen';
|
|
|
|
@override
|
|
String get chatListDetailInput => 'Nachricht eingeben';
|
|
|
|
@override
|
|
String get userDeletedAccount => 'Der Nutzer hat deren Konto gelöscht.';
|
|
|
|
@override
|
|
String get contextMenuUserProfile => 'Userprofil';
|
|
|
|
@override
|
|
String get contextMenuArchiveUser => 'Archivieren';
|
|
|
|
@override
|
|
String get contextMenuUndoArchiveUser => 'Archivierung aufheben';
|
|
|
|
@override
|
|
String get contextMenuOpenChat => 'Chat';
|
|
|
|
@override
|
|
String get contextMenuPin => 'Anheften';
|
|
|
|
@override
|
|
String get contextMenuUnpin => 'Lösen';
|
|
|
|
@override
|
|
String get contextMenuViewAgain => 'Nochmal anschauen';
|
|
|
|
@override
|
|
String get mediaViewerAuthReason =>
|
|
'Bitte authentifiziere dich, um diesen twonly zu sehen!';
|
|
|
|
@override
|
|
String get mediaViewerTwonlyTapToOpen => 'Tippe um den twonly zu öffnen!';
|
|
|
|
@override
|
|
String get messageSendState_Received => 'Empfangen';
|
|
|
|
@override
|
|
String get messageSendState_Opened => 'Geöffnet';
|
|
|
|
@override
|
|
String get messageSendState_Send => 'Gesendet';
|
|
|
|
@override
|
|
String get messageSendState_Sending => 'Wird gesendet';
|
|
|
|
@override
|
|
String get messageSendState_TapToLoad => 'Tippe zum Laden';
|
|
|
|
@override
|
|
String get messageSendState_Loading => 'Herunterladen';
|
|
|
|
@override
|
|
String get messageStoredInGallery => 'Gespeichert';
|
|
|
|
@override
|
|
String get messageReopened => 'Erneut geöffnet';
|
|
|
|
@override
|
|
String get imageEditorDrawOk => 'Zeichnung machen';
|
|
|
|
@override
|
|
String get settingsTitle => 'Einstellungen';
|
|
|
|
@override
|
|
String get settingsChats => 'Chats';
|
|
|
|
@override
|
|
String get settingsPreSelectedReactions => 'Vorgewählte Reaktions-Emojis';
|
|
|
|
@override
|
|
String get settingsAutomaticallyMarkEqualMediaFilesAsOpenedTitle =>
|
|
'Duplikate als geöffnet markieren';
|
|
|
|
@override
|
|
String get settingsAutomaticallyMarkEqualMediaFilesAsOpenedSubtitle =>
|
|
'Wenn du die selbe Mediendatei in mehreren Chats erhältst, markiert das Öffnen einer Kopie alle anderen als geöffnet.';
|
|
|
|
@override
|
|
String get settingsPreSelectedReactionsError =>
|
|
'Es können maximal 12 Reaktionen ausgewählt werden.';
|
|
|
|
@override
|
|
String get settingsProfile => 'Profil';
|
|
|
|
@override
|
|
String get settingsStorageData => 'Daten und Speicher';
|
|
|
|
@override
|
|
String get settingsStorageDataStoreInGTitle => 'In der Galerie speichern';
|
|
|
|
@override
|
|
String get settingsStorageDataMediaAutoDownload =>
|
|
'Automatischer Mediendownload';
|
|
|
|
@override
|
|
String get settingsStorageDataAutoDownMobile => 'Bei Nutzung mobiler Daten';
|
|
|
|
@override
|
|
String get settingsStorageDataAutoDownWifi => 'Bei Nutzung von WLAN';
|
|
|
|
@override
|
|
String get settingsStorageManageTitle => 'Speicher verwalten';
|
|
|
|
@override
|
|
String get settingsStorageUsed => 'Speicherplatz belegt';
|
|
|
|
@override
|
|
String get settingsStorageImages => 'Bilder';
|
|
|
|
@override
|
|
String get settingsStorageVideos => 'Videos';
|
|
|
|
@override
|
|
String get settingsStorageGifs => 'GIFs';
|
|
|
|
@override
|
|
String get settingsProfileCustomizeAvatar => 'Avatar anpassen';
|
|
|
|
@override
|
|
String get settingsProfileEditDisplayName => 'Anzeigename';
|
|
|
|
@override
|
|
String get settingsProfileEditDisplayNameNew => 'Neuer Anzeigename';
|
|
|
|
@override
|
|
String get settingsAccount => 'Konto';
|
|
|
|
@override
|
|
String get settingsSubscription => 'Abonnement';
|
|
|
|
@override
|
|
String get settingsAppearance => 'Erscheinungsbild';
|
|
|
|
@override
|
|
String get settingsPrivacy => 'Datenschutz & Sicherheit';
|
|
|
|
@override
|
|
String get settingsPrivacyBlockUsers => 'Kontakte blockieren';
|
|
|
|
@override
|
|
String get settingsPrivacyBlockUsersDesc =>
|
|
'Blockierte Kontakte können nicht mit dir kommunizieren. Du kannst einen blockierten Kontakt jederzeit wieder entsperren.';
|
|
|
|
@override
|
|
String settingsPrivacyBlockUsersCount(Object len) {
|
|
return '$len Kontakt(e)';
|
|
}
|
|
|
|
@override
|
|
String get settingsNotification => 'Benachrichtigung';
|
|
|
|
@override
|
|
String get settingsNotifyPermission => 'Benachrichtigungsberechtigung';
|
|
|
|
@override
|
|
String get settingsNotifyPermissionDesc =>
|
|
'Systemeinstellungen öffnen, um Push-Benachrichtigungen zu erlauben.';
|
|
|
|
@override
|
|
String get settingsNotifyTroubleshooting => 'Fehlersuche';
|
|
|
|
@override
|
|
String get settingsNotifyTroubleshootingDesc =>
|
|
'Hier klicken, wenn Probleme beim Empfang von Push-Benachrichtigungen auftreten.';
|
|
|
|
@override
|
|
String get settingsNotifyTroubleshootingNoProblem =>
|
|
'Kein Problem festgestellt';
|
|
|
|
@override
|
|
String get settingsNotifyTroubleshootingNoProblemDesc =>
|
|
'Um eine Testbenachrichtigung zu erhalten, klicke auf OK. Falls du die Testbenachrichtigung nicht erhältst, klicke bitte auf den neuen Menüpunkt, der nach dem Klicken auf „OK“ angezeigt wird.';
|
|
|
|
@override
|
|
String get settingsNotifyResetTitle => 'Keine Testbenachrichtigung erhalten?';
|
|
|
|
@override
|
|
String get settingsNotifyResetTitleSubtitle =>
|
|
'Falls du keine Testbenachrichtigungen erhalten hast, klicke hier, um deine Benachrichtigungstoken zurückzusetzen.';
|
|
|
|
@override
|
|
String get settingsNotifyResetTitleReset =>
|
|
'Deine Benachrichtigungstoken wurden zurückgesetzt.';
|
|
|
|
@override
|
|
String get settingsNotifyResetTitleResetDesc =>
|
|
'Sollte das Problem weiterhin bestehen, sende uns bitte dein Debug-Protokoll über „Einstellungen“ > „Hilfe“, damit wir das Problem untersuchen können.';
|
|
|
|
@override
|
|
String get settingsHelp => 'Hilfe';
|
|
|
|
@override
|
|
String get settingsHelpDiagnostics => 'Diagnoseprotokoll';
|
|
|
|
@override
|
|
String get settingsHelpFAQ => 'FAQ';
|
|
|
|
@override
|
|
String get feedbackTooltip => 'Feedback zur Verbesserung von twonly geben.';
|
|
|
|
@override
|
|
String get settingsHelpContactUs => 'Kontaktiere uns';
|
|
|
|
@override
|
|
String get settingsHelpVersion => 'Version';
|
|
|
|
@override
|
|
String get settingsHelpLicenses => 'Lizenzen (Source-Code)';
|
|
|
|
@override
|
|
String get settingsHelpCredits => 'Lizenzen (Bilder)';
|
|
|
|
@override
|
|
String get settingsHelpImprint => 'Impressum & Datenschutzrichtlinie';
|
|
|
|
@override
|
|
String get contactUsFaq => 'FAQ schon gelesen?';
|
|
|
|
@override
|
|
String get contactUsEmojis => 'Wie fühlst du dich? (optional)';
|
|
|
|
@override
|
|
String get contactUsSelectOption => 'Bitte wähle eine Option';
|
|
|
|
@override
|
|
String get contactUsReason => 'Sag uns, warum du uns kontaktierst';
|
|
|
|
@override
|
|
String get contactUsMessage =>
|
|
'Wenn du eine Antwort erhalten möchtest, füge bitte deine E-Mail-Adresse hinzu, damit wir dich kontaktieren können.';
|
|
|
|
@override
|
|
String get contactUsYourMessage => 'Deine Nachricht';
|
|
|
|
@override
|
|
String get contactUsMessageTitle => 'Erzähl uns, was los ist';
|
|
|
|
@override
|
|
String get contactUsReasonNotWorking => 'Etwas funktioniert nicht';
|
|
|
|
@override
|
|
String get contactUsReasonFeatureRequest => 'Funktionsanfrage';
|
|
|
|
@override
|
|
String get contactUsReasonQuestion => 'Frage';
|
|
|
|
@override
|
|
String get contactUsReasonFeedback => 'Feedback';
|
|
|
|
@override
|
|
String get contactUsReasonOther => 'Sonstiges';
|
|
|
|
@override
|
|
String get contactUsIncludeLog => 'Debug-Protokoll anhängen.';
|
|
|
|
@override
|
|
String get contactUsWhatsThat => 'Was ist das?';
|
|
|
|
@override
|
|
String get contactUsLastWarning =>
|
|
'Dies sind die Informationen, die an uns gesendet werden. Bitte prüfe sie und klicke dann auf „Abschicken“.';
|
|
|
|
@override
|
|
String get contactUsSuccess => 'Feedback erfolgreich übermittelt!';
|
|
|
|
@override
|
|
String get hideNewsIcon => 'Neuigkeiten-Symbol ausblenden';
|
|
|
|
@override
|
|
String get settingsHelpTerms => 'Nutzungsbedingungen';
|
|
|
|
@override
|
|
String get settingsAppearanceTheme => 'Theme';
|
|
|
|
@override
|
|
String get settingsAccountDeleteAccount => 'Konto löschen';
|
|
|
|
@override
|
|
String get settingsAccountDeleteAccountNoBallance =>
|
|
'Wenn du dein Konto gelöscht hast, gibt es keinen Weg zurück.';
|
|
|
|
@override
|
|
String get settingsAccountDeleteModalTitle => 'Bist du sicher?';
|
|
|
|
@override
|
|
String get settingsAccountDeleteModalBody =>
|
|
'Dein Konto wird gelöscht. Es gibt keine Möglichkeit, es wiederherzustellen.';
|
|
|
|
@override
|
|
String get contactVerifyNumberTitle => 'Kontakte verifizieren';
|
|
|
|
@override
|
|
String verifyUserIdentity(Object username) {
|
|
return 'Identität von $username verifizieren';
|
|
}
|
|
|
|
@override
|
|
String get contactVerifyNumberSubtitle =>
|
|
'Überprüfe die Identität deiner Kontakte, um sicherzugehen, dass du mit der richtigen Person schreibst.';
|
|
|
|
@override
|
|
String get inChatContactNotVerified => 'Kontakt nicht verifiziert.';
|
|
|
|
@override
|
|
String groupMembersNotVerified(Object count) {
|
|
return '$count Mitglieder sind nicht verifiziert.';
|
|
}
|
|
|
|
@override
|
|
String get userVerifiedTitle => 'Kontakt verifiziert';
|
|
|
|
@override
|
|
String scanUserQrCode(Object username) {
|
|
return 'QR-Code von $username scannen';
|
|
}
|
|
|
|
@override
|
|
String get openOwnQrCode => 'Eigenen QR-Code öffnen';
|
|
|
|
@override
|
|
String contactVerifiedBy(Object username) {
|
|
return 'Verifiziert von $username';
|
|
}
|
|
|
|
@override
|
|
String get contactSharedByUnknown =>
|
|
'Geteilt von einem verifizierten Kontakt (Benutzername nicht verfügbar)';
|
|
|
|
@override
|
|
String get verificationTypeQrScanned => 'Du hast den QR-Code gescannt.';
|
|
|
|
@override
|
|
String verificationTypeSecretQrToken(Object username) {
|
|
return '$username hat deinen QR-Code gescannt.';
|
|
}
|
|
|
|
@override
|
|
String get verificationTypeLink => 'Per Link verifiziert.';
|
|
|
|
@override
|
|
String get verificationTypeMigratedFromOldVersion =>
|
|
'Von alter Version migriert';
|
|
|
|
@override
|
|
String get contactViewMessage => 'Nachricht';
|
|
|
|
@override
|
|
String get contactNickname => 'Spitzname';
|
|
|
|
@override
|
|
String get contactNicknameNew => 'Neuer Spitzname';
|
|
|
|
@override
|
|
String get contactBlock => 'Blockieren';
|
|
|
|
@override
|
|
String contactBlockTitle(Object username) {
|
|
return 'Blockiere $username';
|
|
}
|
|
|
|
@override
|
|
String get contactBlockBody =>
|
|
'Ein blockierter Kontakt kann dir keine Nachrichten mehr senden, und deren Profil ist nicht mehr sichtbar. Um die Blockierung eines Kontakts aufzuheben, navigiere einfach zu Einstellungen > Datenschutz > Blockierte Kontakte.';
|
|
|
|
@override
|
|
String get contactRemove => 'Kontakt löschen';
|
|
|
|
@override
|
|
String contactRemoveTitle(Object username) {
|
|
return '$username löschen?';
|
|
}
|
|
|
|
@override
|
|
String get contactRemoveBody =>
|
|
'Den Kontakt dauerhaft entfernen. Wenn der Kontakt versucht, dir eine neue Nachricht zu senden, musst du den Kontakt erst wieder akzeptieren.';
|
|
|
|
@override
|
|
String get undo => 'Rückgängig';
|
|
|
|
@override
|
|
String get redo => 'Wiederholen';
|
|
|
|
@override
|
|
String get next => 'Weiter';
|
|
|
|
@override
|
|
String get finishSetup => 'Setup abschließen';
|
|
|
|
@override
|
|
String get submit => 'Abschicken';
|
|
|
|
@override
|
|
String get close => 'Schließen';
|
|
|
|
@override
|
|
String get disable => 'Deaktiviern';
|
|
|
|
@override
|
|
String get enable => 'Aktivieren';
|
|
|
|
@override
|
|
String get cancel => 'Abbrechen';
|
|
|
|
@override
|
|
String get now => 'Jetzt';
|
|
|
|
@override
|
|
String get you => 'Du';
|
|
|
|
@override
|
|
String get minutesShort => 'Min.';
|
|
|
|
@override
|
|
String get image => 'Bild';
|
|
|
|
@override
|
|
String get video => 'Video';
|
|
|
|
@override
|
|
String get react => 'Reagieren';
|
|
|
|
@override
|
|
String get reply => 'Antworten';
|
|
|
|
@override
|
|
String get copy => 'Kopieren';
|
|
|
|
@override
|
|
String get edit => 'Bearbeiten';
|
|
|
|
@override
|
|
String get delete => 'Löschen';
|
|
|
|
@override
|
|
String get info => 'Info';
|
|
|
|
@override
|
|
String get ok => 'Ok';
|
|
|
|
@override
|
|
String get switchFrontAndBackCamera =>
|
|
'Zwischen Front- und Rückkamera wechseln.';
|
|
|
|
@override
|
|
String get addTextItem => 'Text';
|
|
|
|
@override
|
|
String get protectAsARealTwonly => 'Als echtes twonly senden!';
|
|
|
|
@override
|
|
String get addDrawing => 'Zeichnung';
|
|
|
|
@override
|
|
String get addEmoji => 'Emoji';
|
|
|
|
@override
|
|
String get toggleFlashLight => 'Taschenlampe umschalten';
|
|
|
|
@override
|
|
String userFound(Object username) {
|
|
return '$username gefunden';
|
|
}
|
|
|
|
@override
|
|
String userFoundBody(String username) {
|
|
return 'Möchtest du dich mit $username vernetzen?';
|
|
}
|
|
|
|
@override
|
|
String get errorInternalError =>
|
|
'Der Server ist derzeit nicht verfügbar. Bitte versuche es später erneut.';
|
|
|
|
@override
|
|
String get errorInvalidInvitationCode =>
|
|
'Der von dir angegebene Einladungscode ist ungültig. Bitte überprüfe den Code und versuche es erneut.';
|
|
|
|
@override
|
|
String get errorUsernameAlreadyTaken =>
|
|
'Der Benutzername ist bereits vergeben.';
|
|
|
|
@override
|
|
String get errorUsernameNotValid =>
|
|
'Der von dir angegebene Benutzername entspricht nicht den erforderlichen Kriterien. Bitte wähle einen gültigen Benutzernamen.';
|
|
|
|
@override
|
|
String get errorNotEnoughCredit => 'Du hast nicht genügend twonly-Guthaben.';
|
|
|
|
@override
|
|
String get errorVoucherInvalid =>
|
|
'Der eingegebene Gutschein-Code ist nicht gültig.';
|
|
|
|
@override
|
|
String get errorPlanLimitReached =>
|
|
'Du hast das Limit deines Plans erreicht. Bitte upgrade deinen Plan.';
|
|
|
|
@override
|
|
String get errorPlanNotAllowed =>
|
|
'Dieses Feature ist in deinem aktuellen Plan nicht verfügbar.';
|
|
|
|
@override
|
|
String get errorPlanUpgradeNotYearly =>
|
|
'Das Upgrade des Plans muss jährlich bezahlt werden, da der aktuelle Plan ebenfalls jährlich abgerechnet wird.';
|
|
|
|
@override
|
|
String upgradeToPaidPlanButton(Object planId, Object sufix) {
|
|
return 'Auf $planId upgraden$sufix';
|
|
}
|
|
|
|
@override
|
|
String partOfPaidPlanOf(Object username) {
|
|
return 'Du bist Teil des bezahlten Plans von $username!';
|
|
}
|
|
|
|
@override
|
|
String get year => 'Jahr';
|
|
|
|
@override
|
|
String get yearly => 'Jährlich';
|
|
|
|
@override
|
|
String get month => 'Monat';
|
|
|
|
@override
|
|
String get monthly => 'Monatlich';
|
|
|
|
@override
|
|
String get proFeature1 => '✓ Unbegrenzte Medien-Datei-Uploads';
|
|
|
|
@override
|
|
String get proFeature2 => '✓ 1 zusätzlicher Plus Benutzer';
|
|
|
|
@override
|
|
String get proFeature3 => '✓ 25GB Memories Speicher';
|
|
|
|
@override
|
|
String get proFeature4 => '✓ Flammen wiederherstellen';
|
|
|
|
@override
|
|
String get familyFeature1 => '✓ Unbegrenzte Medien-Datei-Uploads';
|
|
|
|
@override
|
|
String get familyFeature2 => '✓ 4 zusätzliche Plus Benutzer';
|
|
|
|
@override
|
|
String get familyFeature3 => '✓ 50GB Memories Speicher';
|
|
|
|
@override
|
|
String get familyFeature4 => '✓ Flammen wiederherstellen';
|
|
|
|
@override
|
|
String get freeFeature1 => '✓ 10 Medien-Datei-Uploads pro Tag';
|
|
|
|
@override
|
|
String get plusFeature1 => '✓ Unbegrenzte Medien-Datei-Uploads';
|
|
|
|
@override
|
|
String get plusFeature2 => '✓ Zusatzfunktionen (coming-soon)';
|
|
|
|
@override
|
|
String get manageAdditionalUsers => 'Zusätzliche Benutzer verwalten';
|
|
|
|
@override
|
|
String get open => 'Offene';
|
|
|
|
@override
|
|
String get buy => 'Kaufen';
|
|
|
|
@override
|
|
String get autoRenewal => 'Automatische Verlängerung';
|
|
|
|
@override
|
|
String get additionalUsersList => 'Deine zusätzlichen Benutzer';
|
|
|
|
@override
|
|
String get galleryDelete => 'Datei löschen';
|
|
|
|
@override
|
|
String get galleryExport => 'In Galerie exportieren';
|
|
|
|
@override
|
|
String get galleryExportSuccess => 'Erfolgreich in der Gallery gespeichert.';
|
|
|
|
@override
|
|
String get gallerySelectAll => 'Alle auswählen';
|
|
|
|
@override
|
|
String get galleryDeselectAll => 'Auswahl aufheben';
|
|
|
|
@override
|
|
String get galleryFavorite => 'Als Favorit markieren';
|
|
|
|
@override
|
|
String get galleryUnfavorite => 'Favorit entfernen';
|
|
|
|
@override
|
|
String get galleryCancel => 'Abbrechen';
|
|
|
|
@override
|
|
String get memoriesEmpty =>
|
|
'Sobald du Bilder oder Videos speicherst, landen sie hier in deinen Erinnerungen.';
|
|
|
|
@override
|
|
String get deleteTitle => 'Bist du dir sicher?';
|
|
|
|
@override
|
|
String get deleteOkBtnForAll => 'Für alle löschen';
|
|
|
|
@override
|
|
String memoriesDeleteSnackbarSuccess(num count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '$count Elemente erfolgreich gelöscht',
|
|
one: '1 Element erfolgreich gelöscht',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get deleteOkBtnForMe => 'Für mich löschen';
|
|
|
|
@override
|
|
String get deleteImageTitle => 'Bist du dir sicher?';
|
|
|
|
@override
|
|
String get deleteImageBody => 'Das Bild wird unwiderruflich gelöscht.';
|
|
|
|
@override
|
|
String deleteMemoriesBody(num count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: 'Die $count Bilder werden unwiderruflich gelöscht.',
|
|
one: 'Das Bild wird unwiderruflich gelöscht.',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get deleteMemoriesLocalOnly => 'Nur lokal';
|
|
|
|
@override
|
|
String get deleteMemoriesCompletely => 'Komplett';
|
|
|
|
@override
|
|
String memoriesSelectedCount(num count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '$count Elemente',
|
|
one: '1 Element',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get memoriesMenuSelectAll => 'Alles auswählen';
|
|
|
|
@override
|
|
String get memoriesMenuDeselectAll => 'Alle abwählen';
|
|
|
|
@override
|
|
String get memoriesMenuExport => 'In Gallery exportieren';
|
|
|
|
@override
|
|
String get memoriesMenuFavorite => 'Favorisieren';
|
|
|
|
@override
|
|
String get memoriesMenuDelete => 'Löschen';
|
|
|
|
@override
|
|
String get memoriesMenuDeleteLocal => 'Lokal löschen';
|
|
|
|
@override
|
|
String get settingsBackup => 'Backup';
|
|
|
|
@override
|
|
String get backupPending => 'Ausstehend';
|
|
|
|
@override
|
|
String get backupFailed => 'Fehlgeschlagen';
|
|
|
|
@override
|
|
String get backupSuccess => 'Erfolgreich';
|
|
|
|
@override
|
|
String get backupTwonlySafeDesc =>
|
|
'Sichere deine twonly-Identität, da dies die einzige Möglichkeit ist, dein Konto wiederherzustellen, wenn du die App deinstallierst oder dein Handy verlierst.';
|
|
|
|
@override
|
|
String get backupNoPasswordRecovery =>
|
|
'Aufgrund des Sicherheitssystems von twonly gibt es (derzeit) keine Funktion zur Wiederherstellung des Passworts. Daher musst du dir dein Passwort merken oder, besser noch, aufschreiben.';
|
|
|
|
@override
|
|
String get backupIdentityHeader => 'Identität';
|
|
|
|
@override
|
|
String get backupArchiveHeader => 'Kontakte, Einstellungen und Nachrichten';
|
|
|
|
@override
|
|
String get backupLastBackupDate => 'Letztes Backup';
|
|
|
|
@override
|
|
String get backupLastBackupSize => 'Backup-Größe';
|
|
|
|
@override
|
|
String get backupLastBackupResult => 'Ergebnis';
|
|
|
|
@override
|
|
String get backupInsecurePassword => 'Unsicheres Passwort';
|
|
|
|
@override
|
|
String get backupInsecurePasswordDesc =>
|
|
'Das gewählte Passwort ist sehr unsicher und kann daher leicht von Angreifern erraten werden. Bitte wähle ein sicheres Passwort.';
|
|
|
|
@override
|
|
String get backupInsecurePasswordOk => 'Trotzdem fortfahren';
|
|
|
|
@override
|
|
String get backupInsecurePasswordCancel => 'Erneut versuchen';
|
|
|
|
@override
|
|
String get backupTwonlySafeLongDesc =>
|
|
'twonly hat keine zentralen Benutzerkonten. Während der Installation wird ein Schlüsselpaar erstellt, das aus einem öffentlichen und einem privaten Schlüssel besteht. Der private Schlüssel wird nur auf deinem Gerät gespeichert, um ihn vor unbefugtem Zugriff zu schützen. Der öffentliche Schlüssel wird auf den Server hochgeladen und mit deinem gewählten Benutzernamen verknüpft, damit andere dich finden können.\n\ntwonly Backup erstellt regelmäßig ein verschlüsseltes, anonymes Backup deines privaten Schlüssels zusammen mit deinen Kontakten und Einstellungen. Dein Benutzername und das gewählte Passwort reichen aus, um diese Daten auf einem anderen Gerät wiederherzustellen.';
|
|
|
|
@override
|
|
String get backupSelectStrongPassword =>
|
|
'Wähle ein sicheres Passwort. Dies ist erforderlich, wenn du dein twonly Backup wiederherstellen möchtest.';
|
|
|
|
@override
|
|
String get password => 'Passwort';
|
|
|
|
@override
|
|
String get passwordRepeated => 'Passwort wiederholen';
|
|
|
|
@override
|
|
String get passwordRepeatedNotEqual => 'Passwörter stimmen nicht überein.';
|
|
|
|
@override
|
|
String get backupPasswordRequirement =>
|
|
'Das Passwort muss mindestens 10 Zeichen lang sein.';
|
|
|
|
@override
|
|
String get backupEnableBackup => 'Automatische Sicherung aktivieren';
|
|
|
|
@override
|
|
String get backupTwonlySaveNow => 'Jetzt speichern';
|
|
|
|
@override
|
|
String get backupChangePassword => 'Passwort ändern';
|
|
|
|
@override
|
|
String get backupChangePasswordAuthReason => 'Backup-Passwort ändern';
|
|
|
|
@override
|
|
String get backupChangePasswordAuthFailed =>
|
|
'Du kannst dein Passwort nur ändern, wenn du dich authentifiziert hast!';
|
|
|
|
@override
|
|
String get twonlySafeRecoverTitle => 'Backup wiederherstellen';
|
|
|
|
@override
|
|
String get twonlySafeRecoverBtn => 'Backup wiederherstellen';
|
|
|
|
@override
|
|
String get inviteFriends => 'Freunde einladen';
|
|
|
|
@override
|
|
String get inviteFriendsShareBtn => 'Teilen';
|
|
|
|
@override
|
|
String inviteFriendsShareText(Object url) {
|
|
return 'Wechseln wir zu twonly: $url';
|
|
}
|
|
|
|
@override
|
|
String get appOutdated => 'Deine Version von twonly ist veraltet.';
|
|
|
|
@override
|
|
String get appOutdatedBtn => 'Jetzt aktualisieren.';
|
|
|
|
@override
|
|
String get doubleClickToReopen => 'Doppelklicken zum\nerneuten Öffnen.';
|
|
|
|
@override
|
|
String get uploadLimitReached =>
|
|
'Das Upload-Limit wurde\nerreicht. Upgrade auf Pro\noder warte bis morgen.';
|
|
|
|
@override
|
|
String get fileLimitReached => 'Maximale Dateigröße\nerreicht';
|
|
|
|
@override
|
|
String get retransmissionRequested => 'Wird erneut versucht.';
|
|
|
|
@override
|
|
String reportUserTitle(Object username) {
|
|
return 'Melde $username';
|
|
}
|
|
|
|
@override
|
|
String get reportUserReason => 'Meldegrund';
|
|
|
|
@override
|
|
String get reportUser => 'Kontakt melden';
|
|
|
|
@override
|
|
String get newDeviceRegistered =>
|
|
'Du hast dich auf einem anderen Gerät angemeldet. Daher wurdest du hier abgemeldet.';
|
|
|
|
@override
|
|
String get tabToRemoveEmoji => 'Tippen um zu entfernen';
|
|
|
|
@override
|
|
String get quotedMessageWasDeleted =>
|
|
'Die zitierte Nachricht wurde gelöscht.';
|
|
|
|
@override
|
|
String get messageWasDeleted => 'Nachricht wurde gelöscht.';
|
|
|
|
@override
|
|
String get messageWasDeletedShort => 'Gelöscht';
|
|
|
|
@override
|
|
String get sent => 'Versendet';
|
|
|
|
@override
|
|
String get sentTo => 'Zugestellt an';
|
|
|
|
@override
|
|
String get received => 'Empfangen';
|
|
|
|
@override
|
|
String get opened => 'Geöffnet';
|
|
|
|
@override
|
|
String get waitingForInternet => 'Warten auf Internet';
|
|
|
|
@override
|
|
String get editHistory => 'Bearbeitungshistorie';
|
|
|
|
@override
|
|
String get archivedChats => 'Archivierte Chats';
|
|
|
|
@override
|
|
String get durationShortSecond => 'Sek.';
|
|
|
|
@override
|
|
String get durationShortMinute => 'Min.';
|
|
|
|
@override
|
|
String get durationShortHour => 'Std.';
|
|
|
|
@override
|
|
String durationShortDays(num count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '$count Tage',
|
|
one: '1 Tag',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get contacts => 'Kontakte';
|
|
|
|
@override
|
|
String get groups => 'Gruppen';
|
|
|
|
@override
|
|
String get newGroup => 'Neue Gruppe';
|
|
|
|
@override
|
|
String get selectMembers => 'Mitglieder auswählen';
|
|
|
|
@override
|
|
String get selectGroupName => 'Gruppennamen wählen';
|
|
|
|
@override
|
|
String get groupNameInput => 'Gruppennamen';
|
|
|
|
@override
|
|
String get groupMembers => 'Mitglieder';
|
|
|
|
@override
|
|
String get addMember => 'Mitglied hinzufügen';
|
|
|
|
@override
|
|
String get createGroup => 'Gruppe erstellen';
|
|
|
|
@override
|
|
String get leaveGroup => 'Gruppe verlassen';
|
|
|
|
@override
|
|
String get createContactRequest => 'Kontaktanfrage erstellen';
|
|
|
|
@override
|
|
String get contactRequestSend => 'Kontakanfrage gesendet';
|
|
|
|
@override
|
|
String get makeAdmin => 'Zum Admin machen';
|
|
|
|
@override
|
|
String get removeAdmin => 'Als Admin entfernen';
|
|
|
|
@override
|
|
String get removeFromGroup => 'Aus Gruppe entfernen';
|
|
|
|
@override
|
|
String get admin => 'Admin';
|
|
|
|
@override
|
|
String revokeAdminRightsTitle(Object username) {
|
|
return 'Adminrechte von $username entfernen?';
|
|
}
|
|
|
|
@override
|
|
String get revokeAdminRightsOkBtn => 'Als Admin entfernen';
|
|
|
|
@override
|
|
String makeAdminRightsTitle(Object username) {
|
|
return '$username zum Admin machen?';
|
|
}
|
|
|
|
@override
|
|
String makeAdminRightsBody(Object username) {
|
|
return '$username wird diese Gruppe und ihre Mitglieder bearbeiten können.';
|
|
}
|
|
|
|
@override
|
|
String get makeAdminRightsOkBtn => 'Zum Admin machen';
|
|
|
|
@override
|
|
String get updateGroup => 'Gruppe aktualisieren';
|
|
|
|
@override
|
|
String get alreadyInGroup => 'Bereits Mitglied';
|
|
|
|
@override
|
|
String get contactNotVerified => 'Nicht verifiziert';
|
|
|
|
@override
|
|
String removeContactFromGroupTitle(Object username) {
|
|
return '$username aus dieser Gruppe entfernen?';
|
|
}
|
|
|
|
@override
|
|
String youChangedGroupName(Object newGroupName) {
|
|
return 'Du hast den Gruppennamen zu „$newGroupName“ geändert.';
|
|
}
|
|
|
|
@override
|
|
String makerChangedGroupName(Object maker, Object newGroupName) {
|
|
return '$maker hat den Gruppennamen zu „$newGroupName“ geändert.';
|
|
}
|
|
|
|
@override
|
|
String get youCreatedGroup => 'Du hast die Gruppe erstellt.';
|
|
|
|
@override
|
|
String makerCreatedGroup(Object maker) {
|
|
return '$maker hat die Gruppe erstellt.';
|
|
}
|
|
|
|
@override
|
|
String youRemovedMember(Object affected) {
|
|
return 'Du hast $affected aus der Gruppe entfernt.';
|
|
}
|
|
|
|
@override
|
|
String makerRemovedMember(Object affected, Object maker) {
|
|
return '$maker hat $affected aus der Gruppe entfernt.';
|
|
}
|
|
|
|
@override
|
|
String youAddedMember(Object affected) {
|
|
return 'Du hast $affected zur Gruppe hinzugefügt.';
|
|
}
|
|
|
|
@override
|
|
String makerAddedMember(Object affected, Object maker) {
|
|
return '$maker hat $affected zur Gruppe hinzugefügt.';
|
|
}
|
|
|
|
@override
|
|
String youMadeAdmin(Object affected) {
|
|
return 'Du hast $affected zum Administrator gemacht.';
|
|
}
|
|
|
|
@override
|
|
String makerMadeAdmin(Object affected, Object maker) {
|
|
return '$maker hat $affected zum Administrator gemacht.';
|
|
}
|
|
|
|
@override
|
|
String youRevokedAdminRights(Object affectedR) {
|
|
return 'Du hast $affectedR die Administratorrechte entzogen.';
|
|
}
|
|
|
|
@override
|
|
String makerRevokedAdminRights(Object affectedR, Object maker) {
|
|
return '$maker hat $affectedR die Administratorrechte entzogen.';
|
|
}
|
|
|
|
@override
|
|
String get youLeftGroup => 'Du hast die Gruppe verlassen.';
|
|
|
|
@override
|
|
String makerLeftGroup(Object maker) {
|
|
return '$maker hat die Gruppe verlassen.';
|
|
}
|
|
|
|
@override
|
|
String get groupActionYou => 'dich';
|
|
|
|
@override
|
|
String get groupActionYour => 'deine';
|
|
|
|
@override
|
|
String get notificationFillerIn => 'in';
|
|
|
|
@override
|
|
String notificationText(Object inGroup) {
|
|
return 'hat eine Nachricht$inGroup gesendet.';
|
|
}
|
|
|
|
@override
|
|
String notificationTwonly(Object inGroup) {
|
|
return 'hat ein twonly$inGroup gesendet.';
|
|
}
|
|
|
|
@override
|
|
String notificationVideo(Object inGroup) {
|
|
return 'hat ein Video$inGroup gesendet.';
|
|
}
|
|
|
|
@override
|
|
String notificationImage(Object inGroup) {
|
|
return 'hat ein Bild$inGroup gesendet.';
|
|
}
|
|
|
|
@override
|
|
String notificationAudio(Object inGroup) {
|
|
return 'hat eine Sprachnachricht$inGroup gesendet.';
|
|
}
|
|
|
|
@override
|
|
String notificationAddedToGroup(Object groupname) {
|
|
return 'hat dich zu \"$groupname\" hinzugefügt.';
|
|
}
|
|
|
|
@override
|
|
String get notificationContactRequest => 'möchte sich mit dir vernetzen.';
|
|
|
|
@override
|
|
String get notificationAcceptRequest => 'ist jetzt mit dir vernetzt.';
|
|
|
|
@override
|
|
String get notificationStoredMediaFile => 'hat dein Bild gespeichert.';
|
|
|
|
@override
|
|
String get notificationReaction => 'hat auf dein Bild reagiert.';
|
|
|
|
@override
|
|
String get notificationReopenedMedia => 'hat dein Bild erneut geöffnet.';
|
|
|
|
@override
|
|
String notificationReactionToVideo(Object reaction) {
|
|
return 'hat mit $reaction auf dein Video reagiert.';
|
|
}
|
|
|
|
@override
|
|
String notificationReactionToText(Object reaction) {
|
|
return 'hat mit $reaction auf deine Nachricht reagiert.';
|
|
}
|
|
|
|
@override
|
|
String notificationReactionToImage(Object reaction) {
|
|
return 'hat mit $reaction auf dein Bild reagiert.';
|
|
}
|
|
|
|
@override
|
|
String notificationReactionToAudio(Object reaction) {
|
|
return 'hat mit $reaction auf deine Sprachnachricht reagiert.';
|
|
}
|
|
|
|
@override
|
|
String notificationResponse(Object inGroup) {
|
|
return 'hat dir$inGroup geantwortet.';
|
|
}
|
|
|
|
@override
|
|
String get notificationCategoryMessageTitle => 'Nachrichten';
|
|
|
|
@override
|
|
String get notificationCategoryMessageDesc =>
|
|
'Nachrichten von anderen Benutzern.';
|
|
|
|
@override
|
|
String get groupContextMenuDeleteGroup =>
|
|
'Dadurch werden alle Nachrichten in diesem Chat dauerhaft gelöscht.';
|
|
|
|
@override
|
|
String get groupYouAreNowLongerAMember =>
|
|
'Du bist nicht mehr Mitglied dieser Gruppe.';
|
|
|
|
@override
|
|
String get groupNetworkIssue =>
|
|
'Netzwerkproblem. Bitte probiere es später noch einmal.';
|
|
|
|
@override
|
|
String get leaveGroupSelectOtherAdminTitle => 'Einen Admin auswählen';
|
|
|
|
@override
|
|
String get leaveGroupSelectOtherAdminBody =>
|
|
'Um die Gruppe zu verlassen, musst du zuerst einen neuen Administrator auswählen.';
|
|
|
|
@override
|
|
String get leaveGroupSureTitle => 'Gruppe verlassen';
|
|
|
|
@override
|
|
String get leaveGroupSureBody => 'Willst du die Gruppe wirklich verlassen?';
|
|
|
|
@override
|
|
String get leaveGroupSureOkBtn => 'Gruppe verlassen';
|
|
|
|
@override
|
|
String changeDisplayMaxTime(Object time, Object username) {
|
|
return 'Chats werden ab jetzt nach $time gelöscht ($username).';
|
|
}
|
|
|
|
@override
|
|
String youChangedDisplayMaxTime(Object time) {
|
|
return 'Chats werden ab jetzt nach $time gelöscht.';
|
|
}
|
|
|
|
@override
|
|
String get userGotReported => 'Benutzer wurde gemeldet.';
|
|
|
|
@override
|
|
String get deleteChatAfter => 'Chat löschen nach...';
|
|
|
|
@override
|
|
String get deleteChatAfterAnHour => 'einer Stunde.';
|
|
|
|
@override
|
|
String get deleteChatAfterADay => 'einem Tag.';
|
|
|
|
@override
|
|
String get deleteChatAfterAWeek => 'einer Woche.';
|
|
|
|
@override
|
|
String get deleteChatAfterAMonth => 'einem Monat.';
|
|
|
|
@override
|
|
String get deleteChatAfterAYear => 'einem Jahr.';
|
|
|
|
@override
|
|
String get yourTwonlyScore => 'Dein twonly-Score';
|
|
|
|
@override
|
|
String get registrationClosed =>
|
|
'Aufgrund des aktuell sehr hohen Aufkommens haben wir die Registrierung vorübergehend deaktiviert, damit der Dienst zuverlässig bleibt. Bitte versuche es in ein paar Tagen noch einmal.';
|
|
|
|
@override
|
|
String get dialogAskDeleteMediaFilePopTitle =>
|
|
'Bist du sicher, dass du dein Meisterwerk löschen möchtest?';
|
|
|
|
@override
|
|
String get dialogAskDeleteMediaFilePopDelete => 'Löschen';
|
|
|
|
@override
|
|
String get allowErrorTracking => 'Fehler und Crashes mit uns teilen';
|
|
|
|
@override
|
|
String get allowErrorTrackingSubtitle =>
|
|
'Wenn twonly abstürzt oder Fehler auftreten, werden diese automatisch an unsere selbst gehostete Glitchtip-Instanz gemeldet. Persönliche Daten wie Nachrichten oder Bilder werden niemals hochgeladen.';
|
|
|
|
@override
|
|
String get avatarSaveChanges => 'Möchtest du die Änderungen speichern?';
|
|
|
|
@override
|
|
String get avatarSaveChangesStore => 'Speichern';
|
|
|
|
@override
|
|
String get avatarSaveChangesDiscard => 'Verwerfen';
|
|
|
|
@override
|
|
String get inProcess => 'Wird verarbeitet';
|
|
|
|
@override
|
|
String get draftMessage => 'Entwurf';
|
|
|
|
@override
|
|
String get voiceMessageSlideToCancel => 'Zum Abbrechen ziehen';
|
|
|
|
@override
|
|
String get voiceMessageCancel => 'Abbrechen';
|
|
|
|
@override
|
|
String get shareYourProfile => 'Teile dein Profil';
|
|
|
|
@override
|
|
String get scanOtherProfile => 'Scanne ein anderes Profil';
|
|
|
|
@override
|
|
String get openYourOwnQRcode => 'Eigenen QR-Code öffnen';
|
|
|
|
@override
|
|
String get addContactQrSheetSubtext =>
|
|
'Lass einen Freund diesen QR-Code scannen, um dich hinzuzufügen';
|
|
|
|
@override
|
|
String letUserScanQrCode(Object username) {
|
|
return 'Lass $username diesen QR-Code scannen';
|
|
}
|
|
|
|
@override
|
|
String get finishSetupCardTitle => 'Profil vervollständigen';
|
|
|
|
@override
|
|
String get finishSetupCardDesc =>
|
|
'Du hast es fast geschafft! Schließe die Einrichtung deines Kontos ab, um twonly optimal zu nutzen.';
|
|
|
|
@override
|
|
String get finishSetupCardAction => 'Setup fortsetzen';
|
|
|
|
@override
|
|
String get missingBackupCardTitle => 'Backup einrichten';
|
|
|
|
@override
|
|
String get missingBackupCardDesc =>
|
|
'Wir haben den Backup-Mechanismus verbessert, weshalb du ihn erneut einrichten musst.';
|
|
|
|
@override
|
|
String get missingBackupCardAction => 'Jetzt einrichten';
|
|
|
|
@override
|
|
String get onboardingFinishLater => 'Später abschließen';
|
|
|
|
@override
|
|
String get onboardingProfileTitle => 'Wähle deinen Look';
|
|
|
|
@override
|
|
String get onboardingProfileBody =>
|
|
'Wähle einen Avatar und einen Anzeigenamen, den deine Freunde sehen werden.';
|
|
|
|
@override
|
|
String get onboardingBackupBody =>
|
|
'Sichere deine twonly-Identität, da dies die einzige Möglichkeit ist, dein Konto wiederherzustellen, wenn du die App deinstallierst oder dein Handy verlierst.';
|
|
|
|
@override
|
|
String get onboardingUserDiscoveryShareFriends => 'Freunde teilen';
|
|
|
|
@override
|
|
String get onboardingUserDiscoveryShareFriendsDesc =>
|
|
'Teile deinen Freunden mit, wen du kennst und wen du verifiziert hast. Freunde können von deiner Freundesliste *nur gemeinsame Freunde sehen*.';
|
|
|
|
@override
|
|
String get onboardingUserDiscoveryContactsVerifiedBadge =>
|
|
'Von Freunden verifizierte Kontakte erhalten einen Haken';
|
|
|
|
@override
|
|
String get onboardingUserDiscoveryWhoIsRequesting =>
|
|
'Erfahre, wer dich anfragt';
|
|
|
|
@override
|
|
String get userDiscoverySettingsManualApproval => 'Vor jedem Teilen fragen';
|
|
|
|
@override
|
|
String get userDiscoverySettingsManualApprovalDesc =>
|
|
'Bevor einer deiner Freunde geteilt wird, wirst du jedes Mal gefragt.';
|
|
|
|
@override
|
|
String get onboardingUserDiscoveryLetFriendsFindYou =>
|
|
'Lass dich von deinen Freunden finden';
|
|
|
|
@override
|
|
String get onboardingUserDiscoveryBeRecommended =>
|
|
'Anderen vorgeschlagen werden';
|
|
|
|
@override
|
|
String get onboardingUserDiscoveryWhatOthersSee => 'Was andere sehen werden';
|
|
|
|
@override
|
|
String get onboardingUserDiscoveryWhatYouSee =>
|
|
'Wenn du angefragt wirst, wirst du das sehen';
|
|
|
|
@override
|
|
String get onboardingAddContactsTitle => 'Neue Kontakte hinzufügen';
|
|
|
|
@override
|
|
String get onboardingAddContactsAcceptDesc =>
|
|
'In twonly muss jeder Kontakt zuerst akzeptiert werden, bevor ihr kommunizieren könnt.';
|
|
|
|
@override
|
|
String get onboardingAddContactsMethodHeading => 'Kontakte hinzufügen';
|
|
|
|
@override
|
|
String get onboardingAddContactsMethodScan =>
|
|
'Den QR-Code des Kontaktes scannen.';
|
|
|
|
@override
|
|
String get onboardingAddContactsMethodSearch =>
|
|
'Nach dem Benutzernamen suchen.';
|
|
|
|
@override
|
|
String get onboardingAddContactsMethodShare =>
|
|
'Einen Kontakt in den Chats teilen.';
|
|
|
|
@override
|
|
String linkFromUsername(Object username) {
|
|
return 'Ist der Link von $username?';
|
|
}
|
|
|
|
@override
|
|
String get linkFromUsernameLong =>
|
|
'Wenn du den Link von der Person direkt erhalten hast, kannst du den Kontakt als verifiziert markieren, da der öffentliche Schlüssel im Link mit dem bereits für diesen Benutzer gespeicherten öffentlichen Schlüssel übereinstimmt.';
|
|
|
|
@override
|
|
String get gotLinkFromFriend => 'Ja, der Link kommt direkt von der Person.';
|
|
|
|
@override
|
|
String couldNotVerifyUsername(Object username) {
|
|
return '$username konnte nicht verifiziert werden';
|
|
}
|
|
|
|
@override
|
|
String get linkPubkeyDoesNotMatch =>
|
|
'Der öffentliche Schlüssel im Link stimmt nicht mit dem für diesen Kontakt gespeicherten öffentlichen Schlüssel überein. Triff die Person persönlich und scanne den QR-Code direkt!';
|
|
|
|
@override
|
|
String get startWithCameraOpen => 'Mit geöffneter Kamera starten';
|
|
|
|
@override
|
|
String get showImagePreviewWhenSending =>
|
|
'Bildvorschau bei der Auswahl von Empfängern anzeigen';
|
|
|
|
@override
|
|
String verifiedPublicKey(Object username) {
|
|
return 'Die Identität von $username wurde erfolgreich überprüft.';
|
|
}
|
|
|
|
@override
|
|
String get memoriesAYearAgo => 'Vor einem Jahr';
|
|
|
|
@override
|
|
String memoriesXYearsAgo(Object years) {
|
|
return 'Vor $years Jahren';
|
|
}
|
|
|
|
@override
|
|
String migrationOfMemories(Object open) {
|
|
return 'Migration von Mediendateien: $open noch offen.';
|
|
}
|
|
|
|
@override
|
|
String get autoStoreAllSendUnlimitedMediaFiles =>
|
|
'Alle gesendeten Medien speichern';
|
|
|
|
@override
|
|
String get autoStoreAllSendUnlimitedMediaFilesSubtitle =>
|
|
'Wenn du diese Option aktivierst, werden alle Bilder, die du sendest, gespeichert, sofern sie mit einem unendlichen Countdown und nicht im twonly-Modus gesendet wurden.';
|
|
|
|
@override
|
|
String get termsOfService => 'Allgemeine Geschäftsbedingungen';
|
|
|
|
@override
|
|
String get privacyPolicy => 'Datenschutzerklärung';
|
|
|
|
@override
|
|
String additionalUserAddError(Object username) {
|
|
return '$username konnte nicht hinzugefügt werden, bitte versuche es später noch einmal.';
|
|
}
|
|
|
|
@override
|
|
String additionalUserAddErrorNotInFreePlan(Object username) {
|
|
return '$username hat bereits einen bezahlten Tarif und konnte daher nicht hinzugefügt werden.';
|
|
}
|
|
|
|
@override
|
|
String additionalUserAddButton(Object limit, Object used) {
|
|
return 'Zusätzlichen Benutzer hinzufügen ($used/$limit)';
|
|
}
|
|
|
|
@override
|
|
String get additionalUserRemoveTitle =>
|
|
'Diesen zusätzlichen Benutzer entfernen';
|
|
|
|
@override
|
|
String get additionalUserRemoveDesc =>
|
|
'Der zusätzliche Nutzer wird nach der Entfernung automatisch auf den kostenlosen Tarif zurückgestuft und du kannst eine andere Person hinzufügen.';
|
|
|
|
@override
|
|
String get additionalUserSelectTitle => 'Zusätzliche Benutzer auswählen';
|
|
|
|
@override
|
|
String additionalUserSelectButton(Object limit, Object used) {
|
|
return 'Benutzer auswählen ($used/$limit)';
|
|
}
|
|
|
|
@override
|
|
String get storeAsDefault => 'Als Standard speichern';
|
|
|
|
@override
|
|
String get deleteUserErrorMessage =>
|
|
'Du kannst den Kontakt erst löschen, wenn der direkte Chat gelöscht wurde und der Kontakt nicht mehr Mitglied einer Gruppe ist.';
|
|
|
|
@override
|
|
String groupSizeLimitError(Object size) {
|
|
return 'Derzeit ist die Gruppengröße auf $size Personen begrenzt!';
|
|
}
|
|
|
|
@override
|
|
String get authRequestReopenImage =>
|
|
'Um das Bild erneut zu öffnen, musst du dich authentifizieren.';
|
|
|
|
@override
|
|
String get shareContactsMenu => 'Kontakt';
|
|
|
|
@override
|
|
String get shareContactsTitle => 'Kontakte auswählen';
|
|
|
|
@override
|
|
String get shareContactsSubmit => 'Jetzt teilen';
|
|
|
|
@override
|
|
String get updateTwonlyMessage =>
|
|
'Um diese Nachricht zu sehen, musst du twonly aktualisieren.';
|
|
|
|
@override
|
|
String get verificationBadgeNote =>
|
|
'Du kannst deine Freunde verifizieren, indem du deren öffentlichen QR-Code scannst. Klicke, um mehr zu erfahren.';
|
|
|
|
@override
|
|
String get verificationBadgeTitle => 'Verifizierung';
|
|
|
|
@override
|
|
String get verificationBadgeGeneralDesc =>
|
|
'Der Haken gibt dir die Sicherheit, dass du mit der *richtigen Person* schreibst und deine *Nachrichten vertraulich* bleiben.';
|
|
|
|
@override
|
|
String get verificationBadgeGreenDesc =>
|
|
'Ein Kontakt, den du über den QR-code *persönlich verifiziert* hast.';
|
|
|
|
@override
|
|
String get verificationBadgeYellowDesc =>
|
|
'Ein Kontakt, der von mind. einem *deiner Kontakte verifiziert* wurde.';
|
|
|
|
@override
|
|
String get verificationBadgeRedDesc =>
|
|
'Ein Kontakt, dessen Identität noch *nicht überprüft* wurde.';
|
|
|
|
@override
|
|
String get scanNow => 'Jetzt scannen';
|
|
|
|
@override
|
|
String get qrScannerVerifyHint =>
|
|
'Zum Verifizieren muss die andere Person ihren QR-Code öffnen (Chat-Liste > QR-Code-Button unten rechts)';
|
|
|
|
@override
|
|
String qrScannerVerifyUserHint(Object username) {
|
|
return 'Zum Verifizieren muss $username seinen QR-Code öffnen (Chat-Liste > QR-Code-Button unten rechts)';
|
|
}
|
|
|
|
@override
|
|
String get openQrCode => 'QR-Code öffnen';
|
|
|
|
@override
|
|
String get letFriendScanQrToVerify =>
|
|
'Lass einen Freund diesen QR-Code scannen, um euch zu verifizieren';
|
|
|
|
@override
|
|
String get deleteVerificationTitle => 'Verifizierung löschen?';
|
|
|
|
@override
|
|
String get deleteVerificationBody =>
|
|
'Möchtest du diese Verifizierung wirklich löschen?';
|
|
|
|
@override
|
|
String secretQrTokenVerifiedSnackbar(Object username) {
|
|
return '$username hat deinen QR-Code gescannt und ist nun verifiziert.';
|
|
}
|
|
|
|
@override
|
|
String askForFriendPromotionsPrompt(Object username) {
|
|
return 'Hilf $username, bekannte Gesichter auf twonly zu finden, indem du gemeinsame Freunde teilst.';
|
|
}
|
|
|
|
@override
|
|
String mutualGroupsTitle(num count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '$count gemeinsame Gruppen',
|
|
one: '1 gemeinsame Gruppe',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String chatEntryFlameRestored(Object count) {
|
|
return '$count Flammen wiederhergestellt';
|
|
}
|
|
|
|
@override
|
|
String requestedUserToastText(Object username) {
|
|
return '$username wurde erfolgreich angefragt.';
|
|
}
|
|
|
|
@override
|
|
String get profileYourQrCode => 'Dein QR-Code';
|
|
|
|
@override
|
|
String get settingsScreenLock => 'Bildschirmsperre';
|
|
|
|
@override
|
|
String get settingsScreenLockSubtitle =>
|
|
'Um twonly zu öffnen, wird die Entsperrfunktion deines Smartphones verwenden.';
|
|
|
|
@override
|
|
String get settingsScreenLockAuthMessageEnable =>
|
|
'Bildschirmsperre von twonly verwenden';
|
|
|
|
@override
|
|
String get settingsScreenLockAuthMessageDisable =>
|
|
'Bildschirmsperre von twonly deaktivieren.';
|
|
|
|
@override
|
|
String get unlockTwonly => 'twonly entsperren';
|
|
|
|
@override
|
|
String get unlockTwonlyTryAgain => 'Erneut versuchen';
|
|
|
|
@override
|
|
String get unlockTwonlyDesc =>
|
|
'Entsperre twonly über die Sperreinstellungen deines Handys';
|
|
|
|
@override
|
|
String get settingsTypingIndication => 'Tipp-Indikatoren';
|
|
|
|
@override
|
|
String get settingsTypingIndicationSubtitle =>
|
|
'Bei deaktivierten Tipp-Indikatoren kannst du nicht sehen, wenn andere gerade eine Nachricht tippen.';
|
|
|
|
@override
|
|
String get contactActionBlock => 'Blockieren';
|
|
|
|
@override
|
|
String get contactActionAccept => 'Annehmen';
|
|
|
|
@override
|
|
String get userDiscoverySettingsMutualFriends =>
|
|
'Wähle aus, wie viele gemeinsame Freunde eine Person haben muss, damit du ihr vorgeschlagen wirst.';
|
|
|
|
@override
|
|
String get userDiscoverySettingsApply => 'Änderungen übernehmen';
|
|
|
|
@override
|
|
String get userDiscoveryEnabledDisableWarning =>
|
|
'Wenn du das Feature „Gemeinsame Freunde“ deaktivierst, werden dir keine Vorschläge mehr angezeigt. Du teilst neuen Kontakten dann auch nicht mehr deine Freunde.';
|
|
|
|
@override
|
|
String get userDiscoveryEnabledChangeSettings => 'Einstellungen ändern';
|
|
|
|
@override
|
|
String get userDiscoveryEnabledFaq =>
|
|
'In unserem FAQ erklären wir dir wie das Feature \"Gemeinsame Freunde\" funktioniert.';
|
|
|
|
@override
|
|
String get userDiscoveryDisabledIntro =>
|
|
'twonly kann *ohne Telefonnummer* oder den Zugriff auf dein Adressbuch verwendet werden. Stattdessen kannst du *deine Freunde über gemeinsame Freunde* finden.';
|
|
|
|
@override
|
|
String get userDiscoverySettingsTitle => 'Gemeinsame Freunde';
|
|
|
|
@override
|
|
String get userDiscoveryFeatureOffers => 'Dein Nutzen auf einen Blick';
|
|
|
|
@override
|
|
String get userDiscoveryDisabledLearnMore => 'Mehr erfahren';
|
|
|
|
@override
|
|
String get userDiscoveryEnabledDialogTitle => 'Wirklich deaktivieren?';
|
|
|
|
@override
|
|
String get userDiscoveryEnabledFriendsShared => 'Freunde die du teilst';
|
|
|
|
@override
|
|
String get userDiscoveryEnabledFriendsSharedDesc =>
|
|
'Du teilst nur Freunde, die diese Funktion ebenfalls aktiviert haben und die den von dir festgelegten Schwellenwert erreicht haben.';
|
|
|
|
@override
|
|
String get userDiscoverySettingsCurrentlyDisabled =>
|
|
'Das Feature \"Gemeinsame Freunde\" ist derzeit deaktiviert.';
|
|
|
|
@override
|
|
String get userDiscoveryEnabledNoFriendsShared =>
|
|
'Bisher teilst du noch niemanden.';
|
|
|
|
@override
|
|
String get userDiscoveryActionDisable => 'Deaktivieren';
|
|
|
|
@override
|
|
String get friendSuggestionsTitle => 'Freundschaftsvorschläge';
|
|
|
|
@override
|
|
String get andWord => 'und';
|
|
|
|
@override
|
|
String friendSuggestionsFriendsWith(Object friends) {
|
|
return 'Befreundet mit $friends.';
|
|
}
|
|
|
|
@override
|
|
String friendSuggestionsGroupMemberIn(Object groups) {
|
|
return ' Gruppenmitglied in $groups.';
|
|
}
|
|
|
|
@override
|
|
String get friendSuggestionsRequest => 'Anfragen';
|
|
|
|
@override
|
|
String get friendSuggestionsAskFriend => 'Deine Freunde fragen';
|
|
|
|
@override
|
|
String askFriendsDialogTitle(Object username) {
|
|
return 'Nach $username fragen';
|
|
}
|
|
|
|
@override
|
|
String get askFriendsDialogDescription =>
|
|
'Wähle die Freunde aus, die du zu diesem Nutzer fragen möchtest:';
|
|
|
|
@override
|
|
String get askFriendsDialogConfirm => 'Fragen';
|
|
|
|
@override
|
|
String get askFriendsDialogCancel => 'Abbrechen';
|
|
|
|
@override
|
|
String get chatAskAFriendReceivedDescription =>
|
|
'Dein Freund hat diesen Nutzer als Vorschlag erhalten und möchte wissen, ob er diese Person kennt.';
|
|
|
|
@override
|
|
String get chatAskAFriendAddedDescription =>
|
|
'Du hast diesen Nutzer zu deinen Kontakten hinzugefügt.';
|
|
|
|
@override
|
|
String get chatAskAFriendHide => 'Ausblenden';
|
|
|
|
@override
|
|
String get chatAskAFriendRequest => 'Anfragen';
|
|
|
|
@override
|
|
String chatAskAFriendUnknownUser(Object userId) {
|
|
return 'Nutzer $userId';
|
|
}
|
|
|
|
@override
|
|
String contactUserDiscoveryImagesLeft(Object imagesLeft, Object username) {
|
|
return 'Es fehlen noch $imagesLeft Bilder bis deine Freunde mit $username geteilt werden.';
|
|
}
|
|
|
|
@override
|
|
String userDiscoveryEnabledVersion(Object version) {
|
|
return 'Version: $version';
|
|
}
|
|
|
|
@override
|
|
String userDiscoveryEnabledYourVersion(Object version) {
|
|
return 'Deine Version: $version';
|
|
}
|
|
|
|
@override
|
|
String get userDiscoveryEnabledStopSharing => 'Nicht mehr teilen';
|
|
|
|
@override
|
|
String userDiscoveryManualApprovalReachedThreshold(Object username) {
|
|
return 'Möchtes du $username mit deinen Freunden teilen?';
|
|
}
|
|
|
|
@override
|
|
String get userDiscoveryManualApprovalHideContact => 'Kontakt verbergen';
|
|
|
|
@override
|
|
String get userDiscoveryManualApprovalShareContact => 'Kontakt teilen';
|
|
|
|
@override
|
|
String onboardingSetupCompleteTitle(Object username) {
|
|
return 'Du bist startklar, $username!';
|
|
}
|
|
|
|
@override
|
|
String get onboardingSetupCompleteDesc =>
|
|
'Du kannst jetzt deine Momente sicher mit deinen Freunden teilen, ohne Ablenkungen wie Werbung.';
|
|
|
|
@override
|
|
String get contactUserDiscoveryManualApprovalPending =>
|
|
'Der Kontakt wurde noch nicht manuell freigegeben.';
|
|
|
|
@override
|
|
String get contactUserDiscoveryManualApprovalApprove => 'Freigeben';
|
|
|
|
@override
|
|
String get exampleUserName1 => 'max_mustermann';
|
|
|
|
@override
|
|
String get exampleUserName2 => 'erika_musterfrau';
|
|
|
|
@override
|
|
String get exampleUserName3 => 'hans';
|
|
|
|
@override
|
|
String get exampleUserName4 => 'petra';
|
|
|
|
@override
|
|
String get exampleUserName5 => 'klaus';
|
|
|
|
@override
|
|
String get exampleUserName6 => 'sabine';
|
|
|
|
@override
|
|
String get exampleUserName7 => 'stefan';
|
|
|
|
@override
|
|
String get exampleUserName8 => 'monika';
|
|
|
|
@override
|
|
String get exampleUserName9 => 'christian';
|
|
|
|
@override
|
|
String get exampleUserName10 => 'lena';
|
|
|
|
@override
|
|
String get exampleUserName11 => 'david';
|
|
|
|
@override
|
|
String get exampleJane => 'erika';
|
|
|
|
@override
|
|
String get back => 'Zurück';
|
|
|
|
@override
|
|
String makerChangedUsername(Object maker, Object oldName, Object newName) {
|
|
return '$maker hat den Benutzernamen von $oldName zu $newName geändert.';
|
|
}
|
|
|
|
@override
|
|
String makerChangedDisplayName(Object maker, Object oldName, Object newName) {
|
|
return '$maker hat den Anzeigenamen von $oldName zu $newName geändert.';
|
|
}
|
|
|
|
@override
|
|
String get recoverErrorNoInternet =>
|
|
'Keine Internetverbindung. Bitte überprüfe deine Netzwerkverbindung und versuche es erneut.';
|
|
|
|
@override
|
|
String get recoverErrorUsernameNotValid =>
|
|
'Der eingegebene Benutzername ist ungültig oder existiert nicht.';
|
|
|
|
@override
|
|
String get recoverErrorPasswordInvalid =>
|
|
'Das eingegebene Passwort ist falsch.';
|
|
|
|
@override
|
|
String get recoverErrorTryAgainLater =>
|
|
'Der Server ist derzeit nicht erreichbar. Bitte versuche es später erneut.';
|
|
|
|
@override
|
|
String get recoverErrorUnknown =>
|
|
'Ein unbekannter Fehler ist aufgetreten. Bitte versuche es erneut.';
|
|
|
|
@override
|
|
String get recoverSuccessTitle => 'Backup erfolgreich wiederhergestellt.';
|
|
|
|
@override
|
|
String get recoverSuccessBody => 'Klicke hier, um die App wieder zu öffnen';
|
|
|
|
@override
|
|
String get iosRecoveryWelcomeBack => 'Willkommen zurück';
|
|
|
|
@override
|
|
String get iosRecoveryPrompt =>
|
|
'Wir haben eine zuvor gesicherte twonly-Identität auf diesem Gerät erkannt. Möchtest du deine Kontakte, Nachrichten und Einstellungen automatisch aus deinem Cloud-Archiv herunterladen und wiederherstellen?';
|
|
|
|
@override
|
|
String iosRecoveryNoBackupFound(Object error) {
|
|
return 'Für dieses Gerät konnte kein Backup-Archiv vom Server abgerufen werden.\n\nFehler: $error\n\nBitte fahre mit der Registrierung eines neuen twonly-Kontos fort.';
|
|
}
|
|
|
|
@override
|
|
String get registerNewAccount => 'Neues Konto registrieren';
|
|
|
|
@override
|
|
String get tryRestoreAgain => 'Wiederherstellung erneut versuchen';
|
|
|
|
@override
|
|
String get registeringNewAccount => 'Neues Konto wird registriert';
|
|
|
|
@override
|
|
String get createShortcut => 'Shortcut erstellen';
|
|
|
|
@override
|
|
String get editShortcut => 'Shortcut bearbeiten';
|
|
|
|
@override
|
|
String get deleteShortcut => 'Shortcut löschen';
|
|
|
|
@override
|
|
String get deleteShortcutBody =>
|
|
'Bist du sicher, dass du diesen Shortcut löschen möchtest?';
|
|
|
|
@override
|
|
String get updateShortcut => 'Shortcut aktualisieren';
|
|
|
|
@override
|
|
String get selectEmoji => 'Emoji auswählen';
|
|
|
|
@override
|
|
String get errorEmojiUsedOrInvalid =>
|
|
'Emoji wird bereits verwendet oder ist ungültig';
|
|
|
|
@override
|
|
String get subscriptionPledgeSecureTitle => 'Secure by Design';
|
|
|
|
@override
|
|
String get subscriptionPledgeSecureDesc =>
|
|
'Deine Nachrichten und Bilder sind immer vollständig Ende-zu-Ende verschlüsselt.';
|
|
|
|
@override
|
|
String get subscriptionPledgeNoAdsTitle => 'Keine Werbung oder Datenverkauf';
|
|
|
|
@override
|
|
String get subscriptionPledgeNoAdsDesc =>
|
|
'twonly wird niemals Werbung anzeigen oder deine privaten Daten verkaufen.';
|
|
|
|
@override
|
|
String get subscriptionPledgeSubtitle => 'Keine Werbung. Volle Privatsphäre.';
|
|
|
|
@override
|
|
String get dragToZoom => 'Zum Zoomen ziehen';
|
|
|
|
@override
|
|
String get onboardingProfileSelectionTitle => 'Wähle deinen Setup-Weg';
|
|
|
|
@override
|
|
String get onboardingProfileSelectionSubtitle =>
|
|
'Wähle aus, wie du deine Sicherheits- und Privatsphäre-Einstellungen konfigurieren möchtest.';
|
|
|
|
@override
|
|
String get onboardingProfileSelectionDefaultTitle => 'Standard';
|
|
|
|
@override
|
|
String get onboardingProfileSelectionDefaultDesc =>
|
|
'Wendet sofort die empfohlenen Einstellungen an, damit du die App direkt nutzen kannst.';
|
|
|
|
@override
|
|
String get onboardingProfileSelectionDefaultBadge => 'Schnelles Setup';
|
|
|
|
@override
|
|
String get onboardingProfileSelectionCustomizeTitle => 'Anpassen';
|
|
|
|
@override
|
|
String get onboardingProfileSelectionCustomizeDesc =>
|
|
'Schritt-für-Schritt-Einrichtung, damit du selbst entscheiden kannst.';
|
|
|
|
@override
|
|
String get replyFlameRestored => 'Flammen wiederhergestellt';
|
|
|
|
@override
|
|
String get replyAskAFriend => 'Einen Freund fragen';
|
|
|
|
@override
|
|
String get unverifiedWarningButton => 'Jetzt verifizieren';
|
|
|
|
@override
|
|
String get today => 'Heute';
|
|
|
|
@override
|
|
String get yesterday => 'Gestern';
|
|
|
|
@override
|
|
String get galleryDisableWarningTitle => 'Galeriespeicherung deaktivieren?';
|
|
|
|
@override
|
|
String get galleryDisableWarningBody =>
|
|
'Wenn du dies deaktivierst, werden deine Mediendateien nicht in deiner Galerie gespeichert und könnten dauerhaft verloren gehen, wenn twonly deinstalliert wird oder ein Problem auftritt, da Mediendateien noch nicht in Backups enthalten sind.';
|
|
|
|
@override
|
|
String get galleryDisableWarningConfirm => 'Deaktivieren';
|
|
|
|
@override
|
|
String get settingsStorageScanGalleryTitle => 'Aus Galerie importieren';
|
|
|
|
@override
|
|
String get importGalleryDeselectAll => 'Alle abwählen';
|
|
|
|
@override
|
|
String get importGallerySelectAll => 'Alle auswählen';
|
|
|
|
@override
|
|
String get importGalleryPermissionRequired =>
|
|
'Zugriff auf deine Galerie ist erforderlich, um frühere twonly-Mediendateien zu importieren.';
|
|
|
|
@override
|
|
String importGalleryPermissionError(Object error) {
|
|
return 'Beim Anfordern der Berechtigung ist ein Fehler aufgetreten: $error';
|
|
}
|
|
|
|
@override
|
|
String importGalleryLoadError(Object error) {
|
|
return 'Laden der Medien fehlgeschlagen: $error';
|
|
}
|
|
|
|
@override
|
|
String importGalleryImportingOf(Object current, Object total) {
|
|
return '$current von $total wird importiert...';
|
|
}
|
|
|
|
@override
|
|
String get importGalleryStarting => 'Import wird gestartet...';
|
|
|
|
@override
|
|
String importGalleryComplete(Object imported, Object failed) {
|
|
return 'Import abgeschlossen: $imported erfolgreich importiert und $failed fehlgeschlagen.';
|
|
}
|
|
|
|
@override
|
|
String get importGalleryGrantAccess => 'Zugriff erlauben';
|
|
|
|
@override
|
|
String get importGalleryOpenSettings => 'Einstellungen öffnen';
|
|
|
|
@override
|
|
String get importGalleryPermissionDenied => 'Zugriff auf Galerie verweigert.';
|
|
|
|
@override
|
|
String get importGalleryTryAgain => 'Erneut versuchen';
|
|
|
|
@override
|
|
String get importGalleryAlbumNotFound => '\"twonly\"-Album nicht gefunden';
|
|
|
|
@override
|
|
String get importGalleryAlbumNotFoundDesc =>
|
|
'Falls du dieses Album noch nicht hast, kannst du es auch erstellen, um Fotos in twonly zu importieren.';
|
|
|
|
@override
|
|
String get importGalleryNoImagesFound => 'Keine Bilder gefunden';
|
|
|
|
@override
|
|
String get importGalleryNoImagesFoundDesc =>
|
|
'Es befinden sich keine Bilder auf deinem Gerät.';
|
|
|
|
@override
|
|
String get importGalleryFilterTwonly => 'Nur das twonly-Album anzeigen';
|
|
|
|
@override
|
|
String get importGalleryRefresh => 'Aktualisieren';
|
|
|
|
@override
|
|
String get importGallerySelectToImport =>
|
|
'Elemente zum Importieren auswählen';
|
|
|
|
@override
|
|
String importGalleryImportCount(num count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '$count Elemente importieren',
|
|
one: '1 Element importieren',
|
|
);
|
|
return '$_temp0';
|
|
}
|
|
|
|
@override
|
|
String get emptyChatListTitle => 'Finde deinen ersten Freund';
|
|
|
|
@override
|
|
String get emptyChatListDesc =>
|
|
'Lass Freunde deinen QR-Code scannen oder teile dein Profil mit ihnen.';
|
|
|
|
@override
|
|
String get emptyChatListShareBtn => 'Profil teilen';
|
|
|
|
@override
|
|
String get emptyChatListScanBtn => 'QR-Code';
|
|
|
|
@override
|
|
String get emptyChatListAddUsernameBtn => 'Per Benutzername';
|
|
|
|
@override
|
|
String get avatarCustomizeRandomize => 'Zufällig';
|
|
|
|
@override
|
|
String get avatarCustomizeReset => 'Zurücksetzen';
|
|
|
|
@override
|
|
String get passwordlessRecovery => 'Passwortloses Backup';
|
|
|
|
@override
|
|
String get passwordlessRecoveryNotConfigured => 'Nicht konfiguriert';
|
|
|
|
@override
|
|
String get passwordlessRecoveryTestPin => 'PIN testen';
|
|
|
|
@override
|
|
String get passwordlessRecoveryTestPinTitle => 'PIN testen';
|
|
|
|
@override
|
|
String get passwordlessRecoveryTestPinHint => 'Gib deine PIN ein';
|
|
|
|
@override
|
|
String get passwordlessRecoveryTestPinCorrect => 'PIN ist korrekt!';
|
|
|
|
@override
|
|
String get passwordlessRecoveryTestPinIncorrect => 'Falsche PIN.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryTest => 'Testen';
|
|
|
|
@override
|
|
String get passwordlessRecoverySecondFactorNone => 'Keiner';
|
|
|
|
@override
|
|
String passwordlessRecoverySecondFactorEmailLabel(Object email) {
|
|
return 'E-Mail ($email)';
|
|
}
|
|
|
|
@override
|
|
String get passwordlessRecoverySecondFactorPin => 'PIN';
|
|
|
|
@override
|
|
String get passwordlessRecoverySecondFactorEmail => 'E-Mail';
|
|
|
|
@override
|
|
String get passwordlessRecoveryModify => 'Einstellungen bearbeiten';
|
|
|
|
@override
|
|
String get passwordlessRecoveryModifyDesc =>
|
|
'Aktualisiere deine Backupkonfiguration';
|
|
|
|
@override
|
|
String get passwordlessRecoverySecondFactor => 'Zweiter Faktor';
|
|
|
|
@override
|
|
String get passwordlessRecoveryNoFriendsFound => 'Keine Freunde gefunden.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryActiveFriends => 'Aktive Freunde';
|
|
|
|
@override
|
|
String get passwordlessRecoveryActiveFriendsDesc =>
|
|
'Diese Freunde nutzen twonly aktiv und können dir wahrscheinlich helfen, dein Konto wiederherzustellen.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryInactiveFriends => 'Inaktive Freunde';
|
|
|
|
@override
|
|
String get passwordlessRecoveryInactiveFriendsDesc =>
|
|
'Diese Freunde haben entweder ihren Teil noch nicht erhalten oder nutzen twonly nicht mehr aktiv, was bedeutet, dass sie möglicherweise nicht helfen können.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryEnableSuccess =>
|
|
'Passwortloses Backup erfolgreich aktiviert!';
|
|
|
|
@override
|
|
String get passwordlessRecoveryEnterPin => 'Bitte gib eine PIN ein.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryEnterEmail =>
|
|
'Bitte gib eine E-Mail-Adresse ein.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryEnableBtn => 'Passwortloses Backup aktivieren';
|
|
|
|
@override
|
|
String get passwordlessRecoveryRecoverBtn => 'Passwortlos wiederherstellen';
|
|
|
|
@override
|
|
String get passwordlessRecoveryModifyBtn => 'Passwortloses Backup bearbeiten';
|
|
|
|
@override
|
|
String passwordlessRecoveryStatusEnabled(num count) {
|
|
return 'Aktiviert • $count Freunde';
|
|
}
|
|
|
|
@override
|
|
String get passwordlessRecoveryInfoHowItWorks => 'Wie es funktioniert';
|
|
|
|
@override
|
|
String get passwordlessRecoveryInfoHowItWorksDesc =>
|
|
'twonly funktioniert ohne Telefonnummern, weshalb wir auf einen dezentralen Wiederherstellungsmechanismus setzen. Mit Shamir\'s Secret Sharing wird deine kryptografische Identität in unabhängige Teile aufgeteilt und an deine Freunde verteilt. Um den Zugriff wiederherzustellen, muss eine vorher festgelegte Anzahl dieser Freunde ihre Teile kombinieren.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryInfoWhySecondFactor =>
|
|
'Warum ein zweiter Faktor?';
|
|
|
|
@override
|
|
String get passwordlessRecoveryInfoWhySecondFactorDesc =>
|
|
'Der zweite Faktor (E-Mail oder PIN) ist ein wichtiger zusätzlicher Schutz. Selbst wenn sich deine Freunde heimlich zusammentun, können sie ohne diesen zweiten Faktor nicht auf dein Konto zugreifen.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryInfoGotIt => 'Verstanden';
|
|
|
|
@override
|
|
String get passwordlessRecoveryMethod => 'Methode für den zweiten Faktor';
|
|
|
|
@override
|
|
String get passwordlessRecoveryMethodNoneDesc =>
|
|
'Ohne zweiten Faktor könnten sich deine Freunde absprechen, um dein Konto wiederherzustellen. Daher wird empfohlen, einen zweiten Faktor zu konfigurieren.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryMethodPinHint => 'PIN eingeben';
|
|
|
|
@override
|
|
String get passwordlessRecoveryMethodEmailHint =>
|
|
'Wiederherstellungs-E-Mail-Adresse eingeben';
|
|
|
|
@override
|
|
String get passwordlessRecoveryMethodEmailDesc =>
|
|
'Deine E-Mail-Adresse wird *niemals auf dem Server gespeichert* und nur im Falle einer Wiederherstellung an ihn gesendet.';
|
|
|
|
@override
|
|
String passwordlessRecoveryThresholdDesc(num count) {
|
|
return 'Um dein Konto wiederherzustellen, brauchst du $count deiner ausgewählten Freunde.';
|
|
}
|
|
|
|
@override
|
|
String get passwordlessRecoveryThresholdTitle =>
|
|
'Benötigte Freunde für das Backup';
|
|
|
|
@override
|
|
String passwordlessRecoverySelectFriendsNeeded(num count) {
|
|
return 'Freunde auswählen ($count weitere benötigt)';
|
|
}
|
|
|
|
@override
|
|
String get passwordlessRecoverySelectFriends => 'Freunde auswählen';
|
|
|
|
@override
|
|
String get passwordlessRecoveryTrustedFriends => 'Kontowiederherstellung';
|
|
|
|
@override
|
|
String passwordlessRecoveryDoneBtn(num count) {
|
|
return 'Fertig ($count)';
|
|
}
|
|
|
|
@override
|
|
String get passwordlessRecoveryNoFriendsSelected =>
|
|
'Noch keine Freunde ausgewählt';
|
|
|
|
@override
|
|
String get passwordlessRecoverySubtitle =>
|
|
'Stelle deine Identität ohne Passwort wieder her.';
|
|
|
|
@override
|
|
String get recoverPasswordlessExplanation =>
|
|
'Wenn du die passwortlose Wiederherstellung aktiviert hast, kannst du dein Konto mithilfe deiner Freunde wiederherstellen.';
|
|
|
|
@override
|
|
String get recoverPasswordlessNotificationCardTitle =>
|
|
'Benachrichtigungen aktivieren';
|
|
|
|
@override
|
|
String get recoverPasswordlessNotificationCardSubtitle =>
|
|
'Lass dich benachrichtigen, wenn ein Freund dir geholfen hat, dein Konto wiederherzustellen.';
|
|
|
|
@override
|
|
String get recoverPasswordlessNotificationCardBtn =>
|
|
'Push-Benachrichtigungen aktivieren';
|
|
|
|
@override
|
|
String get recoverPasswordlessQrInstructions =>
|
|
'Lass deine Freunde den QR-Code scannen oder teile den Link.';
|
|
|
|
@override
|
|
String get recoverPasswordlessShareBtn => 'Wiederherstellungs-Link teilen';
|
|
|
|
@override
|
|
String get recoverPasswordlessCopyBtn => 'Kopieren';
|
|
|
|
@override
|
|
String get recoverPasswordlessCopiedSnackbar =>
|
|
'Link in die Zwischenablage kopiert!';
|
|
|
|
@override
|
|
String get passwordlessRecoveryNoShareStored =>
|
|
'Kein Wiederherstellungs-Teil für diesen Kontakt gespeichert.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryEmailSent =>
|
|
'Wiederherstellungs-E-Mail gesendet!';
|
|
|
|
@override
|
|
String get passwordlessRecoveryShareSent =>
|
|
'Wiederherstellungs-Teil gesendet!';
|
|
|
|
@override
|
|
String get passwordlessRecoveryNetworkError =>
|
|
'Netzwerkfehler, bitte stelle sicher, dass du Internet hast';
|
|
|
|
@override
|
|
String get passwordlessRecoveryInvalidEmail =>
|
|
'Die E-Mail-Adresse ist ungültig.';
|
|
|
|
@override
|
|
String get passwordlessRecoveryResendEmail => 'E-Mail erneut senden';
|
|
|
|
@override
|
|
String get passwordlessRecoveryHelpAFriend => 'Einem Freund helfen';
|
|
|
|
@override
|
|
String get passwordlessRecoverySelectContactDesc =>
|
|
'Wähle den Kontakt aus, dem du helfen möchtest.';
|
|
|
|
@override
|
|
String get passwordlessRecoverySearchContacts => 'Kontakte suchen...';
|
|
|
|
@override
|
|
String get passwordlessRecoveryNoContactsFound => 'Keine Kontakte gefunden';
|
|
|
|
@override
|
|
String get passwordlessRecoveryCantHelpHim =>
|
|
'Du kannst dieser Person nicht helfen';
|
|
|
|
@override
|
|
String passwordlessRecoveryDoesAskedYou(Object username) {
|
|
return 'Hat $username dich gefragt?';
|
|
}
|
|
|
|
@override
|
|
String get passwordlessRecoveryVerifySourceDesc =>
|
|
'Bitte stelle sicher, dass diese Anfrage wirklich von dieser Person stammt. Im Zweifel frage kurz über einen anderen Kanal nach!';
|
|
|
|
@override
|
|
String get passwordlessRecoveryNo => 'Nein';
|
|
|
|
@override
|
|
String get passwordlessRecoveryYes => 'Ja';
|
|
|
|
@override
|
|
String passwordlessRecoveryYesWithTimer(Object seconds) {
|
|
return 'Ja (${seconds}s)';
|
|
}
|
|
|
|
@override
|
|
String recoverPasswordlessSharesReceived(Object received, Object threshold) {
|
|
return '$received von $threshold Freunden haben geholfen';
|
|
}
|
|
|
|
@override
|
|
String get recoverPasswordlessRecoverNowBtn => 'Jetzt wiederherstellen';
|
|
|
|
@override
|
|
String get missingRecoveryContactsCardTitle => 'Vertrauenswürdige Kontakte';
|
|
|
|
@override
|
|
String get missingRecoveryContactsCardDesc =>
|
|
'Wähle Kontakte für die Kontowiederherstellung aus, die dir helfen, dein Konto ohne Passwort wiederherzustellen.';
|
|
|
|
@override
|
|
String get missingRecoveryContactsCardAction => 'Kontakte auswählen';
|
|
|
|
@override
|
|
String get memoriesBackupLimitReached =>
|
|
'Cloud-Backup-Limit erreicht! Bitte aktualisiere dein Abonnement oder gib Speicherplatz frei.';
|
|
|
|
@override
|
|
String get settingsStorageLocal => 'Lokaler Speicherplatz';
|
|
|
|
@override
|
|
String get settingsStorageNoCloudBackupTitle => 'Kein Cloud-Backup';
|
|
|
|
@override
|
|
String get settingsStorageNoCloudBackupCard =>
|
|
'Sichere deine Erinnerungen in der Cloud, um lokalen Speicherplatz freizugeben und deine Bilder nicht zu verlieren. Alles Ende-zu-Ende verschlüsselt.';
|
|
|
|
@override
|
|
String get galleryActionSave => 'Sichern';
|
|
|
|
@override
|
|
String get galleryActionExport => 'Exportieren';
|
|
|
|
@override
|
|
String get galleryActionFavorite => 'Favorit';
|
|
|
|
@override
|
|
String get galleryActionUnfavorite => 'Favorit';
|
|
|
|
@override
|
|
String get galleryActionDelete => 'Löschen';
|
|
|
|
@override
|
|
String get galleryActionShare => 'Teilen';
|
|
|
|
@override
|
|
String get settingsStorageHidePromo => 'Ausblenden';
|
|
|
|
@override
|
|
String get memoriesBackupTitle => 'Memories Backup';
|
|
|
|
@override
|
|
String get settingsHelpNews => 'Neuigkeiten';
|
|
|
|
@override
|
|
String get settingsStorageContents => 'Speicherinhalte';
|
|
|
|
@override
|
|
String get settingsStorageSortStorage => 'Belegter Speicher';
|
|
|
|
@override
|
|
String get settingsStorageSortNewest => 'Neueste';
|
|
|
|
@override
|
|
String get settingsStorageSortOldest => 'Älteste';
|
|
|
|
@override
|
|
String get settingsStorageNoContents => 'Keine Speicherinhalte gefunden.';
|
|
|
|
@override
|
|
String get settingsStorageCloudOnly => 'Nur Cloud';
|
|
|
|
@override
|
|
String get settingsStorageLocalAndCloud => 'Lokal & Cloud';
|
|
|
|
@override
|
|
String get settingsStorageLocalOnly => 'Nur lokal';
|
|
|
|
@override
|
|
String get settingsStorageDisableBackupTitle => 'Backup deaktivieren?';
|
|
|
|
@override
|
|
String settingsStorageDisableBackupBody(num count) {
|
|
String _temp0 = intl.Intl.pluralLogic(
|
|
count,
|
|
locale: localeName,
|
|
other: '*$count Bilder*, die',
|
|
one: '*1 Bild*, das',
|
|
);
|
|
return 'Dadurch werden alle gesicherten Erinnerungen aus der Cloud gelöscht. Es gibt $_temp0 nur in der Cloud und nicht lokal gespeichert sind. Diese gehen *dauerhaft verloren*. Fortfahren?';
|
|
}
|
|
|
|
@override
|
|
String get settingsStorageDisableBackupBtn => 'Deaktivieren';
|
|
|
|
@override
|
|
String get settingsStorageDisableBackupAction => 'Cloud-Backup deaktivieren';
|
|
|
|
@override
|
|
String get settingsStorageSyncNow => 'Jetzt synchronisieren';
|
|
|
|
@override
|
|
String get settingsStorageSyncUpToDate =>
|
|
'Alle Memories sind auf dem neuesten Stand.';
|
|
|
|
@override
|
|
String restoreLostFlames(int count) {
|
|
return 'Stelle deine $count verlorenen Flammen wieder her';
|
|
}
|
|
|
|
@override
|
|
String get settingsShowRestoreFlameTitle =>
|
|
'Hinweis zur Flammen-Wiederherstellung anzeigen';
|
|
|
|
@override
|
|
String get contactLabelsTitle => 'Kontaktlabels';
|
|
|
|
@override
|
|
String get contactLabelsSubtitleEmpty => 'Keine Labels ausgewählt';
|
|
|
|
@override
|
|
String get contactLabelsMaxLimit => 'Maximal 3 Labels pro Kontakt';
|
|
|
|
@override
|
|
String get createLabel => 'Neues Label erstellen';
|
|
|
|
@override
|
|
String get editLabel => 'Label bearbeiten';
|
|
|
|
@override
|
|
String get deleteLabel => 'Label löschen';
|
|
|
|
@override
|
|
String get deleteLabelConfirmation =>
|
|
'Möchtest du dieses Label wirklich löschen? Es wird von allen Kontakten entfernt.';
|
|
|
|
@override
|
|
String get labelNameHint => 'Label-Name';
|
|
|
|
@override
|
|
String get labelTextColor => 'Textfarbe';
|
|
|
|
@override
|
|
String get labelBackgroundColor => 'Hintergrundfarbe';
|
|
|
|
@override
|
|
String get customColor => 'Eigene Farbe';
|
|
|
|
@override
|
|
String get hue => 'Farbton';
|
|
|
|
@override
|
|
String get saturation => 'Sättigung';
|
|
|
|
@override
|
|
String get brightness => 'Helligkeit';
|
|
}
|