Compare commits
No commits in common. "main" and "update-translations" have entirely different histories.
main
...
update-tra
3 changed files with 750 additions and 1573 deletions
760
en.arb
760
en.arb
|
|
@ -1,19 +1,30 @@
|
|||
{
|
||||
"@@locale": "en",
|
||||
"registerSlogan": "Stay in touch privately.",
|
||||
"registerTitle": "Welcome to twonly!",
|
||||
"registerSlogan": "twonly, a privacy friendly way to connect with friends through secure, spontaneous image sharing",
|
||||
"onboardingWelcomeTitle": "Welcome to twonly!",
|
||||
"onboardingWelcomeBody": "Experience a private and secure way to stay in touch with friends by sharing instant pictures.",
|
||||
"onboardingE2eTitle": "Carefree sharing",
|
||||
"onboardingE2eBody": "With end-to-end encryption, enjoy the peace of mind that only you and your friends can see the moments you share.",
|
||||
"onboardingFocusTitle": "Focus on sharing moments",
|
||||
"onboardingFocusBody": "Say goodbye to addictive features! twonly was created for sharing moments, free from useless distractions or ads.",
|
||||
"onboardingSendTwonliesTitle": "Send twonlies",
|
||||
"onboardingSendTwonliesBody": "Share moments securely with your partner. twonly ensures that only your partner can open it, keeping your moments with your partner a two(o)nly thing!",
|
||||
"onboardingNotProductTitle": "You are not the product!",
|
||||
"onboardingNotProductBody": "twonly is financed by an optional subscription. Your data will never be sold.",
|
||||
"registerUsernameSlogan": "Create your account",
|
||||
"onboardingNotProductBody": "twonly is financed by donations and an optional subscription. Your data will never be sold.",
|
||||
"onboardingBuyOneGetTwoTitle": "Buy one get two",
|
||||
"onboardingBuyOneGetTwoBody": "twonly always requires at least two people, which is why you receive a second free license for your twonly partner with your purchase.",
|
||||
"onboardingGetStartedTitle": "Let's go!",
|
||||
"onboardingGetStartedBody": "You can test twonly free of charge in preview mode. In this mode you can be found by others and receive pictures or videos but you cannot send any yourself.",
|
||||
"onboardingTryForFree": "Try for free",
|
||||
"registerUsernameSlogan": "Please select a username so others can find you!",
|
||||
"registerUsernameDecoration": "Username",
|
||||
"registerUsernameLimits": "At least 3 characters.",
|
||||
"registerUsernameLimits": "Your username must be at least 3 characters long.",
|
||||
"registerProofOfWorkFailed": "There was an issue with the captcha test. Please try again.",
|
||||
"registerSubmitButton": "Register now!",
|
||||
"registerTwonlyCodeText": "Have you received a twonly code? Then redeem it either directly here or later!",
|
||||
"registerTwonlyCodeLabel": "twonly-Code",
|
||||
"newMessageTitle": "New message",
|
||||
"chatsTapToSend": "Click to send your first image",
|
||||
"cameraPreviewSendTo": "Send to",
|
||||
"shareImageTitle": "Share with",
|
||||
|
|
@ -28,16 +39,32 @@
|
|||
"shareImagedSelectAll": "Select all",
|
||||
"startNewChatTitle": "Select Contact",
|
||||
"startNewChatNewContact": "New Contact",
|
||||
"startNewChatYourContacts": "Your Contacts",
|
||||
"shareImageAllUsers": "All contacts",
|
||||
"shareImageAllTwonlyWarning": "twonlies can only be send to verified contacts!",
|
||||
"shareImageUserNotVerified": "User is not verified",
|
||||
"shareImageUserNotVerifiedDesc": "twonlies can only be sent to verified users. To verify a user, go to their profile and to verify security number.",
|
||||
"shareImageShowArchived": "Show archived users",
|
||||
"searchUsernameInput": "Username",
|
||||
"addFriendTitle": "Add friends",
|
||||
"searchUserNamePreview": "To protect you and other twonly users from spam and abuse, it is not possible to search for other people in preview mode. Other users can find you and their requests will be displayed here!",
|
||||
"selectSubscription": "Select subscription",
|
||||
"searchUserNamePending": "Request pending",
|
||||
"searchUsernameNotFound": "Username not found",
|
||||
"searchUsernameNotFoundBody": "There is no user with the username \"{username}\" registered",
|
||||
"@searchUsernameNotFoundBody": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"searchUsernameNewFollowerTitle": "Open requests",
|
||||
"searchUsernameQrCodeBtn": "Scan QR code",
|
||||
"chatListViewSearchUserNameBtn": "Add your first twonly contact!",
|
||||
"chatListViewSendFirstTwonly": "Send your first twonly!",
|
||||
"chatListDetailInput": "Type a message",
|
||||
"userDeletedAccount": "The user has deleted their account.",
|
||||
"contextMenuUserProfile": "User profile",
|
||||
"contextMenuVerifyUser": "Verify",
|
||||
"contextMenuArchiveUser": "Archive",
|
||||
"contextMenuUndoArchiveUser": "Undo archiving",
|
||||
"contextMenuOpenChat": "Open chat",
|
||||
|
|
@ -58,20 +85,14 @@
|
|||
"settingsTitle": "Settings",
|
||||
"settingsChats": "Chats",
|
||||
"settingsPreSelectedReactions": "Preselected reaction emojis",
|
||||
"settingsAutomaticallyMarkEqualMediaFilesAsOpenedTitle": "Mark duplicates as opened",
|
||||
"settingsAutomaticallyMarkEqualMediaFilesAsOpenedSubtitle": "If you receive the same media in multiple chats, opening one marks all others as opened.",
|
||||
"settingsPreSelectedReactionsError": "A maximum of 12 reactions can be selected.",
|
||||
"settingsProfile": "Profile",
|
||||
"settingsStorageData": "Data and storage",
|
||||
"settingsStorageDataStoreInGTitle": "Store in Gallery",
|
||||
"settingsStorageDataStoreInGSubtitle": "Store saved images additional in the systems gallery.",
|
||||
"settingsStorageDataMediaAutoDownload": "Media auto-download",
|
||||
"settingsStorageDataAutoDownMobile": "When using mobile data",
|
||||
"settingsStorageDataAutoDownWifi": "When using WI-FI",
|
||||
"settingsStorageManageTitle": "Manage storage",
|
||||
"settingsStorageUsed": "Storage used",
|
||||
"settingsStorageImages": "Images",
|
||||
"settingsStorageVideos": "Videos",
|
||||
"settingsStorageGifs": "GIFs",
|
||||
"settingsProfileCustomizeAvatar": "Customize your avatar",
|
||||
"settingsProfileEditDisplayName": "Displayname",
|
||||
"settingsProfileEditDisplayNameNew": "New Displayname",
|
||||
|
|
@ -79,8 +100,8 @@
|
|||
"settingsSubscription": "Subscription",
|
||||
"settingsAppearance": "Appearance",
|
||||
"settingsPrivacy": "Privacy & Security",
|
||||
"settingsPrivacyBlockUsers": "Block contacts",
|
||||
"settingsPrivacyBlockUsersDesc": "Blocked contacts will not be able to communicate with you. You can unblock a blocked contact at any time.",
|
||||
"settingsPrivacyBlockUsers": "Block users",
|
||||
"settingsPrivacyBlockUsersDesc": "Blocked users will not be able to communicate with you. You can unblock a blocked user at any time.",
|
||||
"settingsPrivacyBlockUsersCount": "{len} contact(s)",
|
||||
"@settingsPrivacyBlockUsersCount": {
|
||||
"placeholders": {
|
||||
|
|
@ -88,10 +109,12 @@
|
|||
}
|
||||
},
|
||||
"settingsNotification": "Notification",
|
||||
"settingsNotifyPermission": "Notification permissions",
|
||||
"settingsNotifyPermissionDesc": "Open system settings to allow push notifications.",
|
||||
"settingsNotifyResetTitle": "Reset notification tokens",
|
||||
"settingsNotifyResetTitleSubtitle": "Reset your notification tokens if you have problems receiving push notifications.",
|
||||
"settingsNotifyTroubleshooting": "Troubleshooting",
|
||||
"settingsNotifyTroubleshootingDesc": "Click here if you have problems receiving push notifications.",
|
||||
"settingsNotifyTroubleshootingNoProblem": "No problem detected",
|
||||
"settingsNotifyTroubleshootingNoProblemDesc": "Press OK to receive a test notification. If you do not receive the test notification, please click on the new menu item that appears after you click “OK”.",
|
||||
"settingsNotifyResetTitle": "Didn't receive a test notification?",
|
||||
"settingsNotifyResetTitleSubtitle": "If you haven't received any test notifications, click here to reset your notification tokens.",
|
||||
"settingsNotifyResetTitleReset": "Your notification tokens have been reset.",
|
||||
"settingsNotifyResetTitleResetDesc": "If the problem persists, please send us your debug log via Settings > Help so we can investigate the issue.",
|
||||
"settingsHelp": "Help",
|
||||
|
|
@ -119,50 +142,35 @@
|
|||
"contactUsWhatsThat": "What's that?",
|
||||
"contactUsLastWarning": "This are the information's which will be send to us. Please verify them and then press submit.",
|
||||
"contactUsSuccess": "Feedback submitted successfully!",
|
||||
"hideNewsIcon": "Hide News Icon",
|
||||
"contactUsShortcut": "Hide Feedback Icon",
|
||||
"settingsHelpTerms": "Terms of Service",
|
||||
"settingsAppearanceTheme": "Theme",
|
||||
"settingsAccountDeleteAccount": "Delete account",
|
||||
"settingsAccountDeleteAccountWithBallance": "In the next step, you can select what you want to to with the remaining credit ({credit}).",
|
||||
"settingsAccountDeleteAccountNoBallance": "Once you delete your account, there is no going back.",
|
||||
"settingsAccountDeleteAccountNoInternet": "An Internet connection is required to delete your account.",
|
||||
"settingsAccountDeleteModalTitle": "Are you sure?",
|
||||
"settingsAccountDeleteModalBody": "Your account will be deleted. There is no change to restore it.",
|
||||
"contactVerifyNumberTitle": "Verify contacts",
|
||||
"verifyUserIdentity": "Verify {username}'s identity",
|
||||
"@verifyUserIdentity": {
|
||||
"contactVerifyNumberTitle": "Verify contact",
|
||||
"contactVerifyNumberTapToScan": "Tap to scan",
|
||||
"contactVerifyNumberMarkAsVerified": "Mark as verified",
|
||||
"contactVerifyNumberClearVerification": "Clear verification",
|
||||
"contactVerifyNumberLongDesc": "To verify the end-to-end encryption with {username}, compare the numbers with their device. The person can also scan your code with their device.",
|
||||
"@contactVerifyNumberLongDesc": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"contactVerifyNumberSubtitle": "Verify the identity of your contacts to make sure you are texting the right person.",
|
||||
"inChatContactNotVerified": "Contact not verified.",
|
||||
"groupMembersNotVerified": "{count} members are not verified.",
|
||||
"@groupMembersNotVerified": {
|
||||
"placeholders": {
|
||||
"count": {}
|
||||
}
|
||||
},
|
||||
"userVerifiedTitle": "Contact verified",
|
||||
"scanUserQrCode": "Scan {username}'s QR code",
|
||||
"@scanUserQrCode": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"openOwnQrCode": "Open your own QR code",
|
||||
"contactVerifiedBy": "Verified by {username}",
|
||||
"contactSharedByUnknown": "Shared by a verified contact (username not available)",
|
||||
"verificationTypeQrScanned": "You scanned their QR code.",
|
||||
"verificationTypeSecretQrToken": "{username} has scanned your QR code.",
|
||||
"@verificationTypeSecretQrToken": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"verificationTypeLink": "Verified via link.",
|
||||
"verificationTypeMigratedFromOldVersion": "Migrated from old version.",
|
||||
"contactViewMessage": "Message",
|
||||
"contactNickname": "Nickname",
|
||||
"contactNicknameNew": "New nickname",
|
||||
"deleteAllContactMessages": "Delete all text-messages",
|
||||
"deleteAllContactMessagesBody": "This will remove all messages, except stored media files, in your chat with {username}. This will NOT delete the messages stored at {username}'s device!",
|
||||
"@deleteAllContactMessagesBody": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"contactBlock": "Block",
|
||||
"contactBlockTitle": "Block {username}",
|
||||
"@contactBlockTitle": {
|
||||
|
|
@ -170,14 +178,13 @@
|
|||
"username": {}
|
||||
}
|
||||
},
|
||||
"contactBlockBody": "A blocked contact will no longer be able to send you messages and their profile will be hidden from view. To unblock a contact, simply navigate to Settings > Privacy > Blocked Contacts.",
|
||||
"contactRemove": "Remove contact",
|
||||
"contactBlockBody": "A blocked user will no longer be able to send you messages and their profile will be hidden from view. To unblock a user, simply navigate to Settings > Privacy > Blocked Users.",
|
||||
"contactRemove": "Remove user",
|
||||
"contactRemoveTitle": "Remove {username}",
|
||||
"contactRemoveBody": "Permanently remove the contact. If the contact tries to send you a new message, you will have to accept the contact again first.",
|
||||
"contactRemoveBody": "Permanently remove the user. If the user tries to send you a new message, you will have to accept the user again first.",
|
||||
"undo": "Undo",
|
||||
"redo": "Redo",
|
||||
"next": "Next",
|
||||
"finishSetup": "Complete setup",
|
||||
"submit": "Submit",
|
||||
"close": "Close",
|
||||
"disable": "Disable",
|
||||
|
|
@ -201,24 +208,34 @@
|
|||
"addDrawing": "Drawing",
|
||||
"addEmoji": "Emoji",
|
||||
"toggleFlashLight": "Toggle the flash light",
|
||||
"toggleHighQuality": "Toggle better resolution",
|
||||
"userFound": "{username} found",
|
||||
"userFoundBody": "Do you want to connect with {username}?",
|
||||
"@userFoundBody": {
|
||||
"userFoundBody": "Do you want to create a follow request?",
|
||||
"searchUsernameNotFoundLong": "\"{username}\" is not a twonly user. Please check the username and try again.",
|
||||
"@searchUsernameNotFoundLong": {
|
||||
"placeholders": {
|
||||
"username": {
|
||||
"type": "String"
|
||||
}
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"errorUnknown": "An unexpected error has occurred. Please try again later.",
|
||||
"errorBadRequest": "The request could not be understood by the server due to malformed syntax. Please check your input and try again.",
|
||||
"errorTooManyRequests": "You have made too many requests in a short period. Please wait a moment before trying again.",
|
||||
"errorInternalError": "The server is currently not available. Please try again later.",
|
||||
"errorInvalidInvitationCode": "The invitation code you provided is invalid. Please check the code and try again.",
|
||||
"errorUsernameAlreadyTaken": "The username is already taken.",
|
||||
"errorSignatureNotValid": "The provided signature is not valid. Please check your credentials and try again.",
|
||||
"errorUsernameNotFound": "The username you entered does not exist. Please check the spelling or create a new account.",
|
||||
"errorUsernameNotValid": "The username you provided does not meet the required criteria. Please choose a valid username.",
|
||||
"errorInvalidPublicKey": "The public key you provided is invalid. Please check the key and try again.",
|
||||
"errorSessionAlreadyAuthenticated": "You are already logged in. Please log out if you want to log in with a different account.",
|
||||
"errorSessionNotAuthenticated": "Your session is not authenticated. Please log in to continue.",
|
||||
"errorOnlyOneSessionAllowed": "Only one active session is allowed per user. Please log out from other devices to continue.",
|
||||
"errorNotEnoughCredit": "You do not have enough twonly-credit.",
|
||||
"errorVoucherInvalid": "The voucher code you entered is not valid.",
|
||||
"errorPlanLimitReached": "You have reached your plans limit. Please upgrade your plan.",
|
||||
"errorPlanNotAllowed": "This feature is not available in your current plan.",
|
||||
"errorPlanUpgradeNotYearly": "The plan upgrade must be paid for annually, as the current plan is also billed annually.",
|
||||
"upgradeToPaidPlan": "Upgrade to a paid plan.",
|
||||
"upgradeToPaidPlanButton": "Upgrade to {planId}{sufix}",
|
||||
"partOfPaidPlanOf": "You are part of the paid plan of {username}!",
|
||||
"year": "year",
|
||||
|
|
@ -227,103 +244,119 @@
|
|||
"monthly": "Monthly",
|
||||
"proFeature1": "✓ Unlimited media file uploads",
|
||||
"proFeature2": "✓ 1 additional Plus user",
|
||||
"proFeature3": "✓ 25GB Memories storage",
|
||||
"proFeature4": "✓ Restore flames",
|
||||
"proFeature3": "✓ Restore flames",
|
||||
"proFeature4": "✓ Support twonly",
|
||||
"familyFeature1": "✓ Unlimited media file uploads",
|
||||
"familyFeature2": "✓ 4 additional Plus user",
|
||||
"familyFeature3": "✓ 50GB Memories storage",
|
||||
"familyFeature4": "✓ Restore flames",
|
||||
"familyFeature3": "✓ Restore flames",
|
||||
"familyFeature4": "✓ Support twonly",
|
||||
"freeFeature1": "✓ 10 Media file uploads per day",
|
||||
"plusFeature1": "✓ Unlimited media file uploads",
|
||||
"plusFeature2": "✓ Additional features (coming-soon)",
|
||||
"transactionHistory": "Your transaction history",
|
||||
"manageSubscription": "Manage your subscription",
|
||||
"nextPayment": "Next payment",
|
||||
"currentBalance": "Current balance",
|
||||
"manageAdditionalUsers": "Manage additional users",
|
||||
"open": "Open",
|
||||
"createOrRedeemVoucher": "Buy or redeem voucher",
|
||||
"createVoucher": "Buy voucher",
|
||||
"createVoucherDesc": "Choose the value of the voucher. The value of the voucher will be deducted from your twonly balance.",
|
||||
"redeemVoucher": "Redeem voucher",
|
||||
"openVouchers": "Open vouchers",
|
||||
"voucherCreated": "Voucher created",
|
||||
"voucherRedeemed": "Voucher redeemed",
|
||||
"enterVoucherCode": "Enter Voucher Code",
|
||||
"requestedVouchers": "Requested vouchers",
|
||||
"redeemedVouchers": "Redeemed vouchers",
|
||||
"buy": "Buy",
|
||||
"subscriptionRefund": "When you upgrade, you will receive a refund of {refund} for your current subscription.",
|
||||
"transactionCash": "Cash transaction",
|
||||
"transactionPlanUpgrade": "Plan upgrade",
|
||||
"transactionRefund": "Refund transaction",
|
||||
"transactionThanksForTesting": "Thank you for testing",
|
||||
"transactionUnknown": "Unknown transaction",
|
||||
"transactionVoucherCreated": "Voucher created",
|
||||
"transactionVoucherRedeemed": "Voucher redeemed",
|
||||
"transactionAutoRenewal": "Automatic renewal",
|
||||
"checkoutOptions": "Options",
|
||||
"refund": "Refund",
|
||||
"checkoutPayYearly": "Pay yearly",
|
||||
"checkoutTotal": "Total",
|
||||
"selectPaymentMethod": "Select Payment Method",
|
||||
"twonlyCredit": "twonly-Credit",
|
||||
"notEnoughCredit": "You do not have enough credit!",
|
||||
"chargeCredit": "Charge credit",
|
||||
"autoRenewal": "Auto renewal",
|
||||
"autoRenewalDesc": "You can change this at any time.",
|
||||
"autoRenewalLongDesc": "When your subscription expires, you will automatically be downgraded to the Preview plan. If you activate the automatic renewal, please make sure that you have enough credit for the automatic renewal. We will notify you in good time before the automatic renewal.",
|
||||
"planSuccessUpgraded": "Successfully upgraded your plan.",
|
||||
"checkoutSubmit": "Order with a fee.",
|
||||
"additionalUsersList": "Your additional users",
|
||||
"additionalUsersPlusTokens": "twonly-codes for \"Plus\" user",
|
||||
"additionalUsersFreeTokens": "twonly-codes for \"Free\" user",
|
||||
"planLimitReached": "You have reached your plan limit for today. Upgrade your plan now to send the media file.",
|
||||
"planNotAllowed": "You cannot send media files with your current tariff. Upgrade your plan now to send the media file.",
|
||||
"galleryDelete": "Delete file",
|
||||
"galleryDetails": "Show details",
|
||||
"galleryExport": "Export to gallery",
|
||||
"galleryExportSuccess": "Successfully saved in the Gallery.",
|
||||
"gallerySelectAll": "Select all",
|
||||
"galleryDeselectAll": "Deselect all",
|
||||
"galleryFavorite": "Favorite",
|
||||
"galleryUnfavorite": "Unfavorite",
|
||||
"galleryCancel": "Cancel",
|
||||
"settingsResetTutorials": "Show tutorials again",
|
||||
"settingsResetTutorialsDesc": "Click here to show already displayed tutorials again.",
|
||||
"settingsResetTutorialsSuccess": "Tutorials will be displayed again.",
|
||||
"tutorialChatListSearchUsersTitle": "Find Friends and Manage Friend Requests",
|
||||
"tutorialChatListSearchUsersDesc": "If you know your friends' usernames, you can search for them here and send a friend request. You will also see all requests from other users that you can accept or block.",
|
||||
"tutorialChatListContextMenuTitle": "Long press on the contact to open the context menu.",
|
||||
"tutorialChatListContextMenuDesc": "With the context menu, you can pin, archive, and perform various actions on your contacts. Simply long press the contact and then move your finger to the desired option or tap directly on it.",
|
||||
"tutorialChatMessagesVerifyShieldTitle": "Verify your contacts!",
|
||||
"tutorialChatMessagesVerifyShieldDesc": "twonly uses the Signal protocol for secure end-to-end encryption. When you first contact someone, their public identity key is downloaded. To ensure that this key has not been tampered with by third parties, you should compare it with your friend when you meet in person. Once you have verified the user, you can also enable the twonly mode when sending images and videos.",
|
||||
"tutorialChatMessagesReopenMessageTitle": "Reopen Images and Videos",
|
||||
"tutorialChatMessagesReopenMessageDesc": "If your friend has sent you a picture or video with infinite display time, you can open it again at any time until you restart the app. To do this, simply double-click on the message. Your friend will then receive a notification that you have viewed the picture again.",
|
||||
"memoriesEmpty": "As soon as you save pictures or videos, they end up here in your memories.",
|
||||
"deleteTitle": "Are you sure?",
|
||||
"deleteOkBtnForAll": "Delete for all",
|
||||
"memoriesDeleteSnackbarSuccess": "{count, plural, =1 {Deleted 1 item successfully} other {Deleted {count} items successfully}}",
|
||||
"deleteOkBtnForMe": "Delete for me",
|
||||
"deleteOnlyForMe": "Delete only for me",
|
||||
"deleteImageTitle": "Are you sure?",
|
||||
"deleteImageBody": "The image will be irrevocably deleted.",
|
||||
"deleteMemoriesBody": "{count, plural, =1 {The image will be irrevocably deleted.} other {The {count} images will be irrevocably deleted.}}",
|
||||
"@deleteMemoriesBody": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "num"
|
||||
}
|
||||
}
|
||||
},
|
||||
"deleteMemoriesLocalOnly": "Local Only",
|
||||
"deleteMemoriesCompletely": "Completely",
|
||||
"memoriesSelectedCount": "{count, plural, =1 {1 Element} other {{count} Elements}}",
|
||||
"@memoriesSelectedCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "num"
|
||||
}
|
||||
}
|
||||
},
|
||||
"memoriesMenuSelectAll": "Select all",
|
||||
"memoriesMenuDeselectAll": "Deselect all",
|
||||
"memoriesMenuExport": "Export to gallery",
|
||||
"memoriesMenuFavorite": "Favorite",
|
||||
"memoriesMenuDelete": "Delete completely",
|
||||
"memoriesMenuDeleteLocal": "Delete locally",
|
||||
"settingsBackup": "Backup",
|
||||
"backupNoticeTitle": "No backup configured",
|
||||
"backupNoticeDesc": "If you change or lose your device, no one can restore your account without a backup. Therefore, back up your data.",
|
||||
"backupNoticeLater": "Remind later",
|
||||
"backupNoticeOpenBackup": "Create backup",
|
||||
"backupPending": "Pending",
|
||||
"backupFailed": "Failed",
|
||||
"backupSuccess": "Success",
|
||||
"backupTwonlySafeDesc": "Back up your twonly identity, as this is the only way to restore your account if you uninstall the app or lose your phone.",
|
||||
"backupNoPasswordRecovery": "Due to twonly's security system, there is (currently) no password recovery function. Therefore, you must remember your password or, better yet, write it down.",
|
||||
"backupIdentityHeader": "Identity",
|
||||
"backupArchiveHeader": "Contacts & Messages",
|
||||
"backupServer": "Server",
|
||||
"backupMaxBackupSize": "max. backup size",
|
||||
"backupStorageRetention": "Storage retention",
|
||||
"backupLastBackupDate": "Last backup",
|
||||
"backupLastBackupSize": "Backup size",
|
||||
"backupLastBackupResult": "Result",
|
||||
"deleteBackupTitle": "Are you sure?",
|
||||
"deleteBackupBody": "Without an backup, you can not restore your user account.",
|
||||
"backupData": "Data-Backup",
|
||||
"backupDataDesc": "This backup contains besides of your twonly-Identity also all of your media files. This backup will is also encrypted but stored locally. You then have to ensure to manually copy it onto your laptop or device of your choice.",
|
||||
"backupInsecurePassword": "Insecure password",
|
||||
"backupInsecurePasswordDesc": "The chosen password is very insecure and can therefore easily be guessed by attackers. Please choose a secure password.",
|
||||
"backupInsecurePasswordOk": "Continue anyway",
|
||||
"backupInsecurePasswordCancel": "Try again",
|
||||
"backupTwonlySafeLongDesc": "twonly does not have any central user accounts. A key pair is created during installation, which consists of a public and a private key. The private key is only stored on your device to protect it from unauthorized access. The public key is uploaded to the server and linked to your chosen username so that others can find you.\n\ntwonly Backup regularly creates an encrypted, anonymous backup of your private key together with your contacts and settings. Your username and chosen password are enough to restore this data on another device.",
|
||||
"backupSelectStrongPassword": "Select a secure password. It is recommended to generate and store it via your password manager of choice.",
|
||||
"backupSelectStrongPassword": "Choose a secure password. This is required if you want to restore your twonly Backup.",
|
||||
"password": "Password",
|
||||
"passwordRepeated": "Repeat password",
|
||||
"passwordRepeatedNotEqual": "Passwords do not match.",
|
||||
"backupPasswordRequirement": "Password must be at least 10 characters long.",
|
||||
"backupEnableBackup": "Enable Password Backup",
|
||||
"backupPasswordRequirement": "Password must be at least 8 characters long.",
|
||||
"backupExpertSettings": "Expert settings",
|
||||
"backupEnableBackup": "Activate automatic backup",
|
||||
"backupOwnServerDesc": "Save your twonly Backup at twonly or on any server of your choice.",
|
||||
"backupUseOwnServer": "Use server",
|
||||
"backupResetServer": "Use standard server",
|
||||
"backupTwonlySaveNow": "Save now",
|
||||
"backupChangePassword": "Change password",
|
||||
"backupChangePasswordAuthReason": "Changing backup password",
|
||||
"backupChangePasswordAuthFailed": "You can only change your password after you have authenticated!",
|
||||
"backupFreeSpaceWithCloud": "Free Space with Cloud Backup",
|
||||
"backupMemoriesNotEnabled": "Not enabled",
|
||||
"backupMemoriesUpgradeRequired": "Upgrade required",
|
||||
"todayAt": "Today at {time}",
|
||||
"@todayAt": {
|
||||
"placeholders": {
|
||||
"time": {}
|
||||
}
|
||||
},
|
||||
"yesterdayAt": "Yesterday at {time}",
|
||||
"@yesterdayAt": {
|
||||
"placeholders": {
|
||||
"time": {}
|
||||
}
|
||||
},
|
||||
"twonlySafeRecoverTitle": "Restore backup",
|
||||
"twonlySafeRecoverTitle": "Recovery",
|
||||
"twonlySafeRecoverDesc": "If you have created a backup with twonly Backup, you can restore it here.",
|
||||
"twonlySafeRecoverBtn": "Restore backup",
|
||||
"inviteFriends": "Invite your friends",
|
||||
"inviteFriendsShareBtn": "Share",
|
||||
|
|
@ -334,9 +367,11 @@
|
|||
"uploadLimitReached": "The upload limit has\nbeen reached. Upgrade to Pro\nor wait until tomorrow.",
|
||||
"fileLimitReached": "Maximum file size\nexceeded",
|
||||
"retransmissionRequested": "Retransmission requested",
|
||||
"testPaymentMethod": "Thanks for the interest in a paid plan. Currently the paid plans are still deactivated. But they will be activated soon!",
|
||||
"openChangeLog": "Open changelog automatically",
|
||||
"reportUserTitle": "Report {username}",
|
||||
"reportUserReason": "Reporting reason",
|
||||
"reportUser": "Report contact",
|
||||
"reportUser": "Report user",
|
||||
"newDeviceRegistered": "You have logged in on another device. You have therefore been logged out here.",
|
||||
"tabToRemoveEmoji": "Tab to remove",
|
||||
"quotedMessageWasDeleted": "The quoted message has been deleted.",
|
||||
|
|
@ -348,7 +383,6 @@
|
|||
"opened": "Opened",
|
||||
"waitingForInternet": "Waiting for internet",
|
||||
"editHistory": "Edit history",
|
||||
"fileSize": "File size",
|
||||
"archivedChats": "Archived chats",
|
||||
"durationShortSecond": "Sec.",
|
||||
"durationShortMinute": "Min.",
|
||||
|
|
@ -377,7 +411,6 @@
|
|||
"makeAdminRightsOkBtn": "Make admin",
|
||||
"updateGroup": "Update group",
|
||||
"alreadyInGroup": "Already in Group",
|
||||
"contactNotVerified": "Not verified",
|
||||
"removeContactFromGroupTitle": "Remove {username} from this group?",
|
||||
"youChangedGroupName": "You have changed the group name to \"{newGroupName}\".",
|
||||
"makerChangedGroupName": "{maker} has changed the group name to \"{newGroupName}\".",
|
||||
|
|
@ -403,6 +436,7 @@
|
|||
"notificationAudio": "sent a voice message{inGroup}.",
|
||||
"notificationAddedToGroup": "has added you to \"{groupname}\"",
|
||||
"notificationContactRequest": "wants to connect with you.",
|
||||
"notificationContactRequestUnknownUser": "have received a new contact request.",
|
||||
"notificationAcceptRequest": "is now connected with you.",
|
||||
"notificationStoredMediaFile": "has stored your image.",
|
||||
"notificationReaction": "has reacted to your image.",
|
||||
|
|
@ -412,9 +446,10 @@
|
|||
"notificationReactionToImage": "has reacted with {reaction} to your image.",
|
||||
"notificationReactionToAudio": "has reacted with {reaction} to your audio message.",
|
||||
"notificationResponse": "has responded{inGroup}.",
|
||||
"notificationTitleUnknown": "You have a new message.",
|
||||
"notificationBodyUnknown": "Open twonly to learn more.",
|
||||
"notificationCategoryMessageTitle": "Messages",
|
||||
"notificationCategoryMessageDesc": "Messages from other users.",
|
||||
"notificationConnectionFallback": "You may have new messages.",
|
||||
"groupContextMenuDeleteGroup": "This will permanently delete all messages in this chat.",
|
||||
"groupYouAreNowLongerAMember": "You are no longer part of this group.",
|
||||
"groupNetworkIssue": "Network issue. Try again later.",
|
||||
|
|
@ -443,44 +478,14 @@
|
|||
"avatarSaveChangesDiscard": "Discard",
|
||||
"inProcess": "In process",
|
||||
"draftMessage": "Draft",
|
||||
"exportMemories": "Export memories (Beta)",
|
||||
"importMemories": "Import memories (Beta)",
|
||||
"voiceMessageSlideToCancel": "Slide to cancel",
|
||||
"voiceMessageCancel": "Cancel",
|
||||
"shareYourProfile": "Share your profile",
|
||||
"scanOtherProfile": "Scan other profile",
|
||||
"openYourOwnQRcode": "Open your own QR code",
|
||||
"addContactQrSheetSubtext": "Let a friend scan this QR code to add you",
|
||||
"letUserScanQrCode": "Let {username} scan this QR code",
|
||||
"@letUserScanQrCode": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"finishSetupCardTitle": "Complete your profile",
|
||||
"finishSetupCardDesc": "You are almost there! Finish setting up your account to get the most out of twonly.",
|
||||
"finishSetupCardAction": "Resume Setup",
|
||||
"missingBackupCardTitle": "Setup backup",
|
||||
"missingBackupCardDesc": "We have improved the backup mechanism, which requires you to set it up again.",
|
||||
"missingBackupCardAction": "Set up now",
|
||||
"onboardingFinishLater": "Finish later",
|
||||
"onboardingProfileTitle": "Choose your look",
|
||||
"onboardingProfileBody": "Select an avatar and a display name that friends will see.",
|
||||
"onboardingBackupBody": "Back up your twonly identity, as this is the only way to restore your account if you uninstall the app or lose your phone.",
|
||||
"onboardingUserDiscoveryShareFriends": "Share your friends",
|
||||
"onboardingUserDiscoveryShareFriendsDesc": "Share with your friends who you know and who you have verified. Friends can *only see mutual friends* from your friend list. You can change your mind at *any time* or *hide specific people*.",
|
||||
"onboardingUserDiscoveryContactsVerifiedBadge": "Contacts verified by your friends get a badge",
|
||||
"onboardingUserDiscoveryWhoIsRequesting": "Be informed about who is requesting",
|
||||
"userDiscoverySettingsManualApproval": "Ask every time before sharing",
|
||||
"userDiscoverySettingsManualApprovalDesc": "Before one of your friends is shared, you will be asked every time.",
|
||||
"onboardingUserDiscoveryLetFriendsFindYou": "Let your friends find you",
|
||||
"onboardingUserDiscoveryBeRecommended": "Be recommended to others",
|
||||
"onboardingUserDiscoveryWhatOthersSee": "What others will see",
|
||||
"onboardingUserDiscoveryWhatYouSee": "If requested, that's what you will see",
|
||||
"onboardingAddContactsTitle": "Add new contacts",
|
||||
"onboardingAddContactsAcceptDesc": "In twonly, every contact must first be accepted before you can communicate.",
|
||||
"onboardingAddContactsMethodHeading": "Add contacts",
|
||||
"onboardingAddContactsMethodScan": "Scan the contact's QR code.",
|
||||
"onboardingAddContactsMethodSearch": "Search for the username.",
|
||||
"onboardingAddContactsMethodShare": "Share a contact in chats.",
|
||||
"skipForNow": "Skip for now",
|
||||
"linkFromUsername": "Is the link from {username}?",
|
||||
"linkFromUsernameLong": "If you received the link from your friend, you can mark the user as verified, as the public key in the link matches the public key already stored for that user?",
|
||||
"gotLinkFromFriend": "Yes, I got the link from my friend!",
|
||||
|
|
@ -488,7 +493,7 @@
|
|||
"linkPubkeyDoesNotMatch": "The public key in the link does not match the public key stored for this contact. Try to meet your friend in person and scan the QR code directly!",
|
||||
"startWithCameraOpen": "Start with camera open",
|
||||
"showImagePreviewWhenSending": "Display image preview when selecting recipients",
|
||||
"verifiedPublicKey": "The identity of {username} has been successfully verified.",
|
||||
"verifiedPublicKey": "The public key of {username} has been verified and is valid.",
|
||||
"memoriesAYearAgo": "One year ago",
|
||||
"memoriesXYearsAgo": "{years} years ago",
|
||||
"migrationOfMemories": "Migration of media files: {open} still to be processed.",
|
||||
|
|
@ -503,6 +508,7 @@
|
|||
"additionalUserRemoveDesc": "After removal, the additional user will automatically be downgraded to the free plan, and you can add another person.",
|
||||
"additionalUserSelectTitle": "Select additional users",
|
||||
"additionalUserSelectButton": "Select users ({used}/{limit})",
|
||||
"manageSubscription": "Manage subscription",
|
||||
"storeAsDefault": "Store as default",
|
||||
"deleteUserErrorMessage": "You can only delete the contact once the direct chat has been deleted and the contact is no longer a member of a group.",
|
||||
"groupSizeLimitError": "Currently, group size is limited to {size} people!",
|
||||
|
|
@ -513,42 +519,10 @@
|
|||
"updateTwonlyMessage": "To see this message, you need to update twonly.",
|
||||
"verificationBadgeNote": "You can verify your friends by scanning their public QR code. Click to learn more.",
|
||||
"verificationBadgeTitle": "Verification",
|
||||
"verificationBadgeGeneralDesc": "The badge gives you the peace of mind that you are messaging the *right person* and your *messages remain confidential*.",
|
||||
"verificationBadgeGreenDesc": "A contact you have *personally verified* using the QR code.",
|
||||
"verificationBadgeYellowDesc": "A contact who has been verified by at least one of *your contacts*.",
|
||||
"verificationBadgeRedDesc": "A contact whose identity has *not* yet been verified.",
|
||||
"scanNow": "Scan now",
|
||||
"qrScannerVerifyHint": "To verify, the other person must open their QR code (Chat Lists > QR code button at the bottom right)",
|
||||
"qrScannerVerifyUserHint": "To verify, {username} must open their QR code (Chat Lists > QR code button at the bottom right)",
|
||||
"@qrScannerVerifyUserHint": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"openQrCode": "Open QR code",
|
||||
"letFriendScanQrToVerify": "Let a friend scan this QR code to verify you",
|
||||
"deleteVerificationTitle": "Delete verification?",
|
||||
"deleteVerificationBody": "Are you sure you want to delete this verification?",
|
||||
"secretQrTokenVerifiedSnackbar": "{username} has scanned your QR code and is now verified.",
|
||||
"@secretQrTokenVerifiedSnackbar": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"askForFriendPromotionsPrompt": "Help {username} find familiar faces on twonly by sharing mutual friends.",
|
||||
"@askForFriendPromotionsPrompt": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"mutualGroupsTitle": "{count, plural, =1{1 mutual group} other{{count} mutual groups}}",
|
||||
"@mutualGroupsTitle": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "num"
|
||||
}
|
||||
}
|
||||
},
|
||||
"verificationBadgeGeneralDesc": "The green checkmark gives you the certainty that you are messaging the right person.",
|
||||
"verificationBadgeGreenDesc": "Contact that you have personally verified via QR code. This also verified their public key.",
|
||||
"verificationBadgeYellowDesc": "(Coming soon) Contact whose QR code was scanned by one of your personally verified contacts.",
|
||||
"verificationBadgeRedDesc": "Unknown contact whose identity has not yet been verified.",
|
||||
"chatEntryFlameRestored": "{count} flames restored",
|
||||
"requestedUserToastText": "{username} was successfully requested.",
|
||||
"profileYourQrCode": "Your QR code",
|
||||
|
|
@ -561,21 +535,29 @@
|
|||
"unlockTwonlyDesc": "Use your phone's unlock settings to unlock twonly",
|
||||
"settingsTypingIndication": "Typing Indicators",
|
||||
"settingsTypingIndicationSubtitle": "When the typing indicator is turned off, you can't see when others are typing a message.",
|
||||
"scanQrOrShow": "Scan / Show QR",
|
||||
|
||||
"contactActionBlock": "Block",
|
||||
"contactActionAccept": "Accept",
|
||||
"userDiscoverySettingsMinImages": "Choose the minimum number of images you must have exchanged with a person before you securely share your friends with them.",
|
||||
"userDiscoverySettingsMutualFriends": "Choose how many mutual friends a person must have for you to be suggested to them.",
|
||||
"userDiscoverySettingsApply": "Apply changes",
|
||||
"userDiscoveryEnabledDisableWarning": "If you disable the \"Mutual Friends\" feature, you will no longer see suggestions. You will also stop sharing your friends with new contacts.",
|
||||
"userDiscoveryEnabledDisableWarning": "If you disable the \"Find friends\" feature, you will no longer see suggestions. You will also stop sharing your friends with new contacts.",
|
||||
"userDiscoveryEnabledChangeSettings": "Change settings",
|
||||
"userDiscoveryEnabledFaq": "In our FAQ we explain how the \"Mutual Friends\" feature works.",
|
||||
"userDiscoveryDisabledIntro": "twonly does *not* collect your phone number or needs access to your contacts. Instead, twonly can *find your friends through mutual friends*.",
|
||||
"userDiscoverySettingsTitle": "Mutual Friends",
|
||||
"userDiscoveryFeatureOffers": "Your benefits at a glance",
|
||||
"userDiscoveryEnabledFaq": "In our FAQ we explain how the \"Find friends\" feature works.",
|
||||
"userDiscoveryDisabledIntro": "twonly doesn't use phone numbers, so we suggest friends based on mutual contacts instead – securely and privately.",
|
||||
"userDiscoveryDisabledInvisible": "Your friend list is *completely invisible to strangers*. Only your friends can see parts of it – and only those people with whom they have *mutual friends* themselves.",
|
||||
"userDiscoveryDisabledDecide": "Decide for yourself who can see your friends. You can change your mind at any time or hide specific people.",
|
||||
"userDiscoverySettingsTitle": "Find friends",
|
||||
"userDiscoverySettingsMinImagesTitle": "Number of shared images",
|
||||
"userDiscoverySettingsMutualFriendsTitle": "Number of mutual friends",
|
||||
"userDiscoveryDisabledYouHaveControl": "You are in control",
|
||||
"userDiscoveryDisabledEnableWithDefault": "Enable with default settings",
|
||||
"userDiscoveryDisabledCustomizeSettings": "Customize settings",
|
||||
"userDiscoveryDisabledLearnMore": "Learn more",
|
||||
"userDiscoveryEnabledDialogTitle": "Really disable?",
|
||||
"userDiscoveryEnabledFriendsShared": "Friends you share",
|
||||
"userDiscoveryEnabledFriendsSharedDesc": "You only share friends who have also activated this feature and who have reached the threshold you set.",
|
||||
"userDiscoverySettingsCurrentlyDisabled": "The feature \"Mutual Friends\" is currently disabled.",
|
||||
"userDiscoveryEnabledNoFriendsShared": "You are not sharing anyone yet.",
|
||||
"userDiscoveryActionDisable": "Disable",
|
||||
"friendSuggestionsTitle": "Friend suggestions",
|
||||
|
|
@ -593,26 +575,6 @@
|
|||
}
|
||||
},
|
||||
"friendSuggestionsRequest": "Request",
|
||||
"friendSuggestionsAskFriend": "Ask your friends",
|
||||
"askFriendsDialogTitle": "Ask about {username}",
|
||||
"@askFriendsDialogTitle": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"askFriendsDialogDescription": "Select the friends you want to ask about this user:",
|
||||
"askFriendsDialogConfirm": "Ask",
|
||||
"askFriendsDialogCancel": "Cancel",
|
||||
"chatAskAFriendReceivedDescription": "Your friend just got this as a suggestion and wants to know if he knows this person.",
|
||||
"chatAskAFriendAddedDescription": "You have added this user to your contacts.",
|
||||
"chatAskAFriendHide": "Hide",
|
||||
"chatAskAFriendRequest": "Request",
|
||||
"chatAskAFriendUnknownUser": "User {userId}",
|
||||
"@chatAskAFriendUnknownUser": {
|
||||
"placeholders": {
|
||||
"userId": {}
|
||||
}
|
||||
},
|
||||
"contactUserDiscoveryImagesLeft": "{imagesLeft} more images are needed until your friends are shared with {username}.",
|
||||
"@contactUserDiscoveryImagesLeft": {
|
||||
"placeholders": {
|
||||
|
|
@ -632,371 +594,5 @@
|
|||
"version": {}
|
||||
}
|
||||
},
|
||||
"userDiscoveryEnabledStopSharing": "Stop sharing",
|
||||
"userDiscoveryManualApprovalReachedThreshold": "Would you like to share {username} with your friends?",
|
||||
"@userDiscoveryManualApprovalReachedThreshold": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"userDiscoveryManualApprovalHideContact": "Hide contact",
|
||||
"userDiscoveryManualApprovalShareContact": "Share contact",
|
||||
"onboardingSetupCompleteTitle": "You're all set, {username}!",
|
||||
"@onboardingSetupCompleteTitle": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"onboardingSetupCompleteDesc": "You can now share your moments with your friends securely without distractions like ads.",
|
||||
"contactUserDiscoveryManualApprovalPending": "Contact was not yet manually approved.",
|
||||
"contactUserDiscoveryManualApprovalApprove": "Approve",
|
||||
"exampleUserName1": "james",
|
||||
"exampleUserName2": "mary",
|
||||
"exampleUserName3": "john",
|
||||
"exampleUserName4": "patricia",
|
||||
"exampleUserName5": "robert",
|
||||
"exampleUserName6": "jennifer",
|
||||
"exampleUserName7": "michael",
|
||||
"exampleUserName8": "linda",
|
||||
"exampleUserName9": "william",
|
||||
"exampleUserName10": "lena",
|
||||
"exampleUserName11": "david",
|
||||
"exampleJane": "jane",
|
||||
"back": "Back",
|
||||
"makerChangedUsername": "{maker} changed their username from {oldName} to {newName}.",
|
||||
"@makerChangedUsername": {
|
||||
"placeholders": {
|
||||
"maker": {},
|
||||
"oldName": {},
|
||||
"newName": {}
|
||||
}
|
||||
},
|
||||
"makerChangedDisplayName": "{maker} changed their display name from {oldName} to {newName}.",
|
||||
"@makerChangedDisplayName": {
|
||||
"placeholders": {
|
||||
"maker": {},
|
||||
"oldName": {},
|
||||
"newName": {}
|
||||
}
|
||||
},
|
||||
"recoverErrorNoInternet": "No internet connection. Please check your network and try again.",
|
||||
"recoverErrorUsernameNotValid": "The username provided is not valid or does not exist.",
|
||||
"recoverErrorPasswordInvalid": "The password provided is incorrect.",
|
||||
"recoverErrorTryAgainLater": "The server is currently unavailable. Please try again later.",
|
||||
"recoverErrorUnknown": "An unknown error occurred. Please try again.",
|
||||
"recoverSuccessTitle": "Backup successfully recovered.",
|
||||
"recoverSuccessBody": "Click here to open the app again",
|
||||
"iosRecoveryWelcomeBack": "Welcome Back",
|
||||
"iosRecoveryPrompt": "We detected a previously secured twonly identity on this device. Would you like to automatically download and restore your contacts, messages, and settings from your cloud archive?",
|
||||
"iosRecoveryNoBackupFound": "No backup archive could be retrieved from the server for this device.\n\nError: {error}\n\nPlease proceed to register a new twonly account.",
|
||||
"@iosRecoveryNoBackupFound": {
|
||||
"placeholders": {
|
||||
"error": {}
|
||||
}
|
||||
},
|
||||
"registerNewAccount": "Register New Account",
|
||||
"tryRestoreAgain": "Try Restore Again",
|
||||
"registeringNewAccount": "Registering new account",
|
||||
"createShortcut": "Create shortcut",
|
||||
"editShortcut": "Edit shortcut",
|
||||
"deleteShortcut": "Delete shortcut",
|
||||
"deleteShortcutBody": "Are you sure you want to delete this shortcut?",
|
||||
"updateShortcut": "Update shortcut",
|
||||
"selectEmoji": "Select Emoji",
|
||||
"errorEmojiUsedOrInvalid": "Emoji already used or invalid",
|
||||
"subscriptionPledgeSecureTitle": "Secure by Design",
|
||||
"subscriptionPledgeSecureDesc": "Your messages and shared moments are fully end-to-end encrypted.",
|
||||
"subscriptionPledgeNoAdsTitle": "No Ads or Data selling",
|
||||
"subscriptionPledgeNoAdsDesc": "twonly will never show advertisements or sell your private data.",
|
||||
"subscriptionPledgeSubtitle": "Zero ads. Total privacy.",
|
||||
"subscriptionManage": "Manage subscription",
|
||||
"dragToZoom": "Drag to Zoom",
|
||||
"onboardingProfileSelectionTitle": "Choose your setup path",
|
||||
"onboardingProfileSelectionSubtitle": "Choose how you want to configure your security and privacy settings.",
|
||||
"onboardingProfileSelectionDefaultTitle": "Default",
|
||||
"onboardingProfileSelectionDefaultDesc": "Instantly applies recommended settings so you can start using the app.",
|
||||
"onboardingProfileSelectionDefaultBadge": "Fast Setup",
|
||||
"onboardingProfileSelectionCustomizeTitle": "Customize",
|
||||
"onboardingProfileSelectionCustomizeDesc": "Step-by-step setup so you can decide for yourself.",
|
||||
"replyFlameRestored": "Flames restored",
|
||||
"replyAskAFriend": "Ask a friend",
|
||||
"unverifiedWarningButton": "Verify now",
|
||||
"today": "Today",
|
||||
"yesterday": "Yesterday",
|
||||
"galleryDisableWarningTitle": "Disable gallery saving?",
|
||||
"galleryDisableWarningBody": "If you disable this, your media files will not be saved to your gallery and could be permanently lost if twonly is removed or has an issue, as media files are not yet backed up.",
|
||||
"galleryDisableWarningConfirm": "Disable",
|
||||
"settingsStorageScanGalleryTitle": "Import from Gallery",
|
||||
"importGalleryDeselectAll": "Deselect all",
|
||||
"importGallerySelectAll": "Select all",
|
||||
"importGalleryPermissionRequired": "Permission to access your gallery is required to import previous twonly media files.",
|
||||
"importGalleryPermissionError": "An error occurred while requesting permission: {error}",
|
||||
"@importGalleryPermissionError": {
|
||||
"placeholders": {
|
||||
"error": {}
|
||||
}
|
||||
},
|
||||
"importGalleryLoadError": "Failed to load assets: {error}",
|
||||
"@importGalleryLoadError": {
|
||||
"placeholders": {
|
||||
"error": {}
|
||||
}
|
||||
},
|
||||
"importGalleryImportingOf": "Importing {current} of {total}...",
|
||||
"@importGalleryImportingOf": {
|
||||
"placeholders": {
|
||||
"current": {},
|
||||
"total": {}
|
||||
}
|
||||
},
|
||||
"importGalleryStarting": "Starting import...",
|
||||
"importGalleryComplete": "Import complete: {imported} successfully imported and {failed} failed.",
|
||||
"@importGalleryComplete": {
|
||||
"placeholders": {
|
||||
"imported": {},
|
||||
"failed": {}
|
||||
}
|
||||
},
|
||||
"importGalleryGrantAccess": "Grant Access",
|
||||
"importGalleryOpenSettings": "Open Settings",
|
||||
"importGalleryPermissionDenied": "Permission to access gallery denied.",
|
||||
"importGalleryTryAgain": "Try Again",
|
||||
"importGalleryAlbumNotFound": "\"twonly\" album not found",
|
||||
"importGalleryAlbumNotFoundDesc": "If you don't have this album yet, you can also create it to import photos into twonly.",
|
||||
"importGalleryNoImagesFound": "No images found",
|
||||
"importGalleryNoImagesFoundDesc": "There are no images on your device.",
|
||||
"importGalleryFilterTwonly": "Only show the twonly-Album",
|
||||
"importGalleryRefresh": "Refresh",
|
||||
"importGallerySelectToImport": "Select items to import",
|
||||
"importGalleryImportCount": "{count, plural, =1{Import 1 item} other{Import {count} items}}",
|
||||
"@importGalleryImportCount": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "num"
|
||||
}
|
||||
}
|
||||
},
|
||||
"emptyChatListTitle": "Find your first friend",
|
||||
"emptyChatListDesc": "Let friends scan your QR code, or share them your profile.",
|
||||
"emptyChatListShareBtn": "Share your profile",
|
||||
"emptyChatListScanBtn": "QR Code",
|
||||
"emptyChatListAddUsernameBtn": "By Username",
|
||||
"avatarCustomizeRandomize": "Randomize",
|
||||
"avatarCustomizeReset": "Reset",
|
||||
"passwordlessRecovery": "Trusted Friends",
|
||||
"passwordlessRecoveryNotConfigured": "Not configured",
|
||||
"passwordlessRecoveryTestPin": "Test PIN",
|
||||
"passwordlessRecoveryTestPinTitle": "Test PIN",
|
||||
"passwordlessRecoveryTestPinHint": "Enter your PIN",
|
||||
"passwordlessRecoveryTestPinCorrect": "PIN is correct!",
|
||||
"passwordlessRecoveryTestPinIncorrect": "Incorrect PIN.",
|
||||
"passwordlessRecoveryTest": "Test",
|
||||
"passwordlessRecoverySecondFactorNone": "None",
|
||||
"passwordlessRecoverySecondFactorEmailLabel": "Email ({email})",
|
||||
"@passwordlessRecoverySecondFactorEmailLabel": {
|
||||
"placeholders": {
|
||||
"email": {}
|
||||
}
|
||||
},
|
||||
"passwordlessRecoverySecondFactorPin": "PIN",
|
||||
"passwordlessRecoverySecondFactorEmail": "Email",
|
||||
"passwordlessRecoveryModify": "Modify Recovery Settings",
|
||||
"passwordlessRecoveryModifyDesc": "Update your recovery configuration",
|
||||
"passwordlessRecoverySecondFactor": "Second Factor",
|
||||
"passwordlessRecoveryNoFriendsFound": "No trusted friends found.",
|
||||
"passwordlessRecoveryActiveFriends": "Active Friends",
|
||||
"passwordlessRecoveryActiveFriendsDesc": "These trusted friends are actively using twonly and can probably help you recover your account.",
|
||||
"passwordlessRecoveryInactiveFriends": "Inactive Friends",
|
||||
"passwordlessRecoveryInactiveFriendsDesc": "These friends either have not yet received their share or do not use twonly actively anymore, which could mean that they maybe cannot help.",
|
||||
"passwordlessRecoveryEnableSuccess": "Trusted Friends successfully set up!",
|
||||
"passwordlessRecoveryEnterPin": "Please enter a PIN.",
|
||||
"passwordlessRecoveryEnterEmail": "Please enter an email address.",
|
||||
"passwordlessRecoveryEnableBtn": "Enable Trusted Friends",
|
||||
"passwordlessRecoveryRecoverBtn": "Recover via Trusted Friends",
|
||||
"passwordlessRecoveryModifyBtn": "Modify Trusted Friends",
|
||||
"passwordlessRecoveryStatusEnabled": "Enabled • {count} trusted friends",
|
||||
"@passwordlessRecoveryStatusEnabled": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "num"
|
||||
}
|
||||
}
|
||||
},
|
||||
"passwordlessRecoveryInfoHowItWorks": "How it works",
|
||||
"passwordlessRecoveryInfoHowItWorksDesc": "twonly operates without phone numbers, which is why we rely on a decentralized recovery mechanism. Using Shamir's Secret Sharing, your cryptographic identity is split into independent shares and distributed among your trusted friends. To restore access, a predefined number of these friends must combine their shares.",
|
||||
"passwordlessRecoveryInfoWhySecondFactor": "Why a Second Factor?",
|
||||
"passwordlessRecoveryInfoWhySecondFactorDesc": "The second factor (Email or PIN) provides important additional protection. Even if your friends were to secretly team up, they still couldn't access your account without this second factor.",
|
||||
"passwordlessRecoveryInfoGotIt": "Got it",
|
||||
"passwordlessRecoveryMethod": "Second factor method",
|
||||
"passwordlessRecoveryMethodNoneDesc": "Without second-factor, your friends could collaborate to recover your account. Therefore, it is recommended to configure a second-factor.",
|
||||
"passwordlessRecoveryMethodPinHint": "Enter PIN",
|
||||
"passwordlessRecoveryMethodEmailHint": "Enter recovery email address",
|
||||
"passwordlessRecoveryMethodEmailDesc": "Your email address is *never stored on the server* and is only sent to it in the event of a recovery.",
|
||||
"passwordlessRecoveryThresholdDesc": "To recover your account you need {count} of your selected trusted friends.",
|
||||
"@passwordlessRecoveryThresholdDesc": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "num"
|
||||
}
|
||||
}
|
||||
},
|
||||
"passwordlessRecoveryThresholdTitle": "Required trusted friends for recovery",
|
||||
"passwordlessRecoverySelectFriendsNeeded": "Select friends ({count} more needed)",
|
||||
"@passwordlessRecoverySelectFriendsNeeded": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "num"
|
||||
}
|
||||
}
|
||||
},
|
||||
"passwordlessRecoverySelectFriends": "Select trusted friends",
|
||||
"passwordlessRecoveryTrustedFriends": "Account recovery",
|
||||
"passwordlessRecoveryDoneBtn": "Done ({count})",
|
||||
"@passwordlessRecoveryDoneBtn": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "num"
|
||||
}
|
||||
}
|
||||
},
|
||||
"passwordlessRecoveryNoFriendsSelected": "No trusted friends selected yet",
|
||||
"passwordlessRecoverySubtitle": "Recover your identity without a password.",
|
||||
"recoverPasswordlessExplanation": "If enabled, you can recover your account by asking your selected friends to help you.",
|
||||
"recoverPasswordlessNotificationCardTitle": "Enable notifications",
|
||||
"recoverPasswordlessNotificationCardSubtitle": "Get notified when a friend has helped you recover your account.",
|
||||
"recoverPasswordlessNotificationCardBtn": "Enable push notifications",
|
||||
"recoverPasswordlessQrInstructions": "Let friends scan the QR code or share the link.",
|
||||
"recoverPasswordlessShareBtn": "Share Recovery Link",
|
||||
"recoverPasswordlessCopyBtn": "Copy",
|
||||
"recoverPasswordlessCopiedSnackbar": "Link copied to clipboard!",
|
||||
"passwordlessRecoveryNoShareStored": "No recovery share stored for this contact.",
|
||||
"passwordlessRecoveryEmailSent": "Recovery email sent!",
|
||||
"passwordlessRecoveryShareSent": "Recovery share sent!",
|
||||
"passwordlessRecoveryNetworkError": "Network error, please ensure you have internet",
|
||||
"passwordlessRecoveryInvalidEmail": "The email address is invalid.",
|
||||
"passwordlessRecoveryResendEmail": "Resend recovery email",
|
||||
"passwordlessRecoveryHelpAFriend": "Help a Friend",
|
||||
"passwordlessRecoverySelectContactDesc": "Please select the contact who requested recovery below to send them their recovery key.",
|
||||
"passwordlessRecoverySearchContacts": "Search contacts...",
|
||||
"passwordlessRecoveryNoContactsFound": "No contacts found",
|
||||
"passwordlessRecoveryCantHelpHim": "You can't help this person",
|
||||
"passwordlessRecoveryDoesAskedYou": "Has {username} asked you?",
|
||||
"@passwordlessRecoveryDoesAskedYou": {
|
||||
"placeholders": {
|
||||
"username": {}
|
||||
}
|
||||
},
|
||||
"passwordlessRecoveryVerifySourceDesc": "Please make sure this request really came from this person. If in doubt, ask them via another channel!",
|
||||
"passwordlessRecoveryNo": "No",
|
||||
"passwordlessRecoveryYes": "Yes",
|
||||
"passwordlessRecoveryYesWithTimer": "Yes ({seconds}s)",
|
||||
"@passwordlessRecoveryYesWithTimer": {
|
||||
"placeholders": {
|
||||
"seconds": {}
|
||||
}
|
||||
},
|
||||
"recoverPasswordlessSharesReceived": "{received} out of {threshold} friends have helped",
|
||||
"@recoverPasswordlessSharesReceived": {
|
||||
"placeholders": {
|
||||
"received": {},
|
||||
"threshold": {}
|
||||
}
|
||||
},
|
||||
"recoverPasswordlessRecoverNowBtn": "Recover now",
|
||||
"missingRecoveryContactsCardTitle": "Account Recovery",
|
||||
"missingRecoveryContactsCardDesc": "Select Recovery Contacts to help you recover your account without requiring a password.",
|
||||
"missingRecoveryContactsCardAction": "Select Contacts",
|
||||
"memoriesBackupLimitReached": "Cloud backup limit reached! Please upgrade your plan or free up space.",
|
||||
"settingsStorageLocal": "Local storage",
|
||||
"settingsStorageNoCloudBackupTitle": "No Cloud Backup",
|
||||
"settingsStorageNoCloudBackupCard": "Back up your memories to the cloud to free up local space and ensure you never lose your pictures. All end-to-end encrypted.",
|
||||
"galleryActionSave": "Save",
|
||||
"galleryActionExport": "Export",
|
||||
"galleryActionFavorite": "Favorite",
|
||||
"galleryActionUnfavorite": "Unfavorite",
|
||||
"galleryActionDelete": "Delete",
|
||||
"galleryActionShare": "Share",
|
||||
"settingsStorageHidePromo": "Hide",
|
||||
"memoriesBackupTitle": "Memories Backup",
|
||||
"settingsHelpNews": "News",
|
||||
"settingsStorageContents": "Free up space",
|
||||
"settingsStorageSortStorage": "Occupied storage",
|
||||
"settingsStorageSortNewest": "Newest",
|
||||
"settingsStorageSortOldest": "Oldest",
|
||||
"settingsStorageNoContents": "No storage contents found.",
|
||||
"settingsStorageCloudOnly": "Cloud only",
|
||||
"settingsStorageLocalAndCloud": "Local and cloud",
|
||||
"settingsStorageLocalOnly": "Local only",
|
||||
"settingsStorageDisableBackupTitle": "Disable Backup?",
|
||||
"settingsStorageDisableBackupBody": "This will delete all backed up memories from the cloud. There {count, plural, =1 {is *1 image*} other {are *{count} images*}} only stored in the cloud that will be *permanently lost*. Are you sure you want to proceed?",
|
||||
"@settingsStorageDisableBackupBody": {
|
||||
"placeholders": {
|
||||
"count": {}
|
||||
}
|
||||
},
|
||||
"settingsStorageDisableBackupBtn": "Disable",
|
||||
"settingsStorageDisableBackupAction": "Disable Cloud Backup",
|
||||
"settingsStorageSyncNow": "Sync now",
|
||||
"settingsStorageSyncUpToDate": "All memories are up to date.",
|
||||
"restoreLostFlames": "Restore your {count} lost flames",
|
||||
"@restoreLostFlames": {
|
||||
"placeholders": {
|
||||
"count": {
|
||||
"type": "int"
|
||||
}
|
||||
}
|
||||
},
|
||||
"settingsShowRestoreFlameTitle": "Show flame restore warning",
|
||||
"contactLabelsTitle": "Contact Labels",
|
||||
"contactLabelsSubtitleEmpty": "No labels selected",
|
||||
"contactLabelsMaxLimit": "Maximum 3 labels per contact",
|
||||
"createLabel": "Create new label",
|
||||
"editLabel": "Edit label",
|
||||
"deleteLabel": "Delete label",
|
||||
"deleteLabelConfirmation": "Are you sure you want to delete this label? It will be removed from all contacts.",
|
||||
"labelNameHint": "Label name",
|
||||
"labelTextColor": "Text color",
|
||||
"labelBackgroundColor": "Background color",
|
||||
"customColor": "Custom Color",
|
||||
"hue": "Hue",
|
||||
"saturation": "Saturation",
|
||||
"brightness": "Brightness",
|
||||
"settingsAppearancePrimaryColor": "Primary Color",
|
||||
"themeSystemDefault": "System default",
|
||||
"themeLight": "Light",
|
||||
"themeDark": "Dark",
|
||||
"backupRecoverySectionTitle": "Secure Account Access",
|
||||
"backupRecoverySectionDescNone": "You must select at least one recovery option, as otherwise no one can help you if you lose access to your device.",
|
||||
"backupRecoverySectionDescSome": "You can recover your account with the recovery options below. It is recommended to enable both options.",
|
||||
"backupRecoveryOptionAFriends": "Via trusted friends",
|
||||
"backupRecoveryOptionAMicrocopy": "Select friends who can help you recover your account.",
|
||||
"backupRecoveryOptionBPassword": "Classic Password",
|
||||
"backupRecoveryOptionBMicrocopy": "Set a password for your access.",
|
||||
"backupCloudSectionTitle": "Backup Your Data",
|
||||
"backupCloudSectionDesc": "Backup your content so nothing gets lost.",
|
||||
"backupCloudContactsMessages": "Contacts & Messages",
|
||||
"backupCloudFreeActive": "Free Active",
|
||||
"backupCloudImagesMedia": "Images & Media",
|
||||
"backupCloudProBadge": "Pro",
|
||||
"memoriesAddingToFavorites": "Adding to favorites...",
|
||||
"memoriesRemovingFromFavorites": "Removing from favorites...",
|
||||
"memoriesDeletingProgress": "Deleting memories...",
|
||||
"memoriesExportingProgress": "Exporting memories...",
|
||||
"fileLimitReachedTitle": "File too large to send",
|
||||
"fileLimitReachedDetail": "This file is {size}, but your plan allows at most {limit} per send.",
|
||||
"@fileLimitReachedDetail": {
|
||||
"placeholders": {
|
||||
"size": { "type": "String" },
|
||||
"limit": { "type": "String" }
|
||||
}
|
||||
},
|
||||
"fileLimitReachedDetailNoSize": "Your plan allows at most {limit} per send.",
|
||||
"@fileLimitReachedDetailNoSize": {
|
||||
"placeholders": {
|
||||
"limit": { "type": "String" }
|
||||
}
|
||||
},
|
||||
"fileLimitReachedHint": "Record a shorter video and send it again.",
|
||||
"fileLimitReachedHintFree": "Record a shorter video, or upgrade your plan to send larger files.",
|
||||
"fileLimitReachedUpgrade": "Upgrade plan"
|
||||
"userDiscoveryEnabledStopSharing": "Stop sharing"
|
||||
}
|
||||
3
sv.arb
Normal file
3
sv.arb
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"@@locale": "sv"
|
||||
}
|
||||
Loading…
Reference in a new issue