getChatBubble(withText:NSLocalizedString("It's a secure, decentralized cross-platform private messaging app",comment:""),wasSentByCurrentUser:false),
getChatBubble(withText:NSLocalizedString("So it doesn't collect my personal information or my conversation metadata? How's it work?",comment:""),wasSentByCurrentUser:true),
getChatBubble(withText:NSLocalizedString("It's a secure, decentralized private messaging app",comment:""),wasSentByCurrentUser:false),
getChatBubble(withText:NSLocalizedString("So it doesn't collect my personal information or my conversation metadata? How does it work?",comment:""),wasSentByCurrentUser:true),
getChatBubble(withText:NSLocalizedString("Using a combination of advanced anonymous routing and end-to-end encryption technologies.",comment:""),wasSentByCurrentUser:false),
getChatBubble(withText:NSLocalizedString("Friends don't let friends use compromised messengers. You're welcome.",comment:""),wasSentByCurrentUser:false)
@ -121,7 +121,7 @@ final class DeviceLinkingModal : Modal, DeviceLinkingSessionDelegate {
subtitleLabel.text={
switchmode{
case.master:returnNSLocalizedString("Create a new account on your other device and click \"Link to an existing account\" to start the linking process",comment:"")
case.slave:returnNSLocalizedString("Please check that the words below match the ones shown on your other device",comment:"")
case.slave:returnNSLocalizedString("Please check that the words below match those shown on your other device",comment:"")
letalert=UIAlertController(title:NSLocalizedString("Invalid Public Key",comment:""),message:NSLocalizedString("Please check the public key you entered and try again.",comment:""),preferredStyle:.alert)
letalert=UIAlertController(title:NSLocalizedString("Invalid Session ID",comment:""),message:NSLocalizedString("Please check the Session ID you entered and try again.",comment:""),preferredStyle:.alert)
explanationLabel.text=NSLocalizedString("Users can share their public key by going into their account settings and tapping \"Share Public Key\", or by sharing their QR code.",comment:"")
explanationLabel.text=NSLocalizedString("Users can share their Session ID by going into their account settings and tapping \"Share Session ID\", or by sharing their QR code.",comment:"")
explanationLabel.numberOfLines=0
explanationLabel.textAlignment=.center
explanationLabel.lineBreakMode=.byWordWrapping
//Setupseparator
letseparator=Separator(title:NSLocalizedString("Your Public Key",comment:""))
explanationLabel.text=NSLocalizedString("This will delete your entire account, including all data, any messages currently linked to your public key, as well as your personal key pair.",comment:"")
explanationLabel.text=NSLocalizedString("This will delete your entire account, including all data, any messages currently linked to your Session ID, as well as your personal key pair.",comment:"")
letalert=UIAlertController(title:NSLocalizedString("Invalid Public Key",comment:""),message:NSLocalizedString("Please check the public key you entered and try again.",comment:""),preferredStyle:.alert)
letalert=UIAlertController(title:NSLocalizedString("Invalid Session ID",comment:""),message:NSLocalizedString("Please check the Session ID you entered and try again.",comment:""),preferredStyle:.alert)
attributedText.addAttribute(.font,value:Fonts.boldSpaceMono(ofSize:Values.mediumFontSize),range:(textasNSString).range(of:"your unique public QR code"))
attributedText.addAttribute(.font,value:UIFont.boldSystemFont(ofSize:Values.mediumFontSize),range:(textasNSString).range(of:"your unique public QR code"))
explanationLabel.attributedText=attributedText
explanationLabel.numberOfLines=0
explanationLabel.textAlignment=.center
@ -239,7 +239,7 @@ private final class ScanQRCodePlaceholderVC : UIViewController {
explanationLabel.text=NSLocalizedString("This is your personal password. It can be used to restore your account or migrate your account to a new device.",comment:"")
explanationLabel.text=NSLocalizedString("This is your personal recovery phrase. It can be used to restore your account or migrate your account to a new device.",comment:"")
"Your seed couldn't be verified. Please check what you entered and try again." = "Your seed couldn't be verified. Please check what you entered and try again.";
"Search by public key" = "Search by public key";
"Start a Conversation" = "Start a Conversation";
"Invalid public key" = "Invalid public key";
"Invalid Session ID" = "Invalid Session ID";
"No search results" = "No search results";
"Calculating proof of work" = "Calculating proof of work";
"Failed to calculate proof of work." = "Failed to calculate proof of work.";
"Please check the public key you entered and try again." = "Please check the public key you entered and try again.";
"Invalid Session ID" = "Invalid Session ID";
"Please check the Session ID you entered and try again." = "Please check the Session ID you entered and try again.";
"Looks like you don't have any conversations yet. Get started by messaging a friend." = "Looks like you don't have any conversations yet. Get started by messaging a friend.";
"Enter the public key of the person you'd like to securely message. They can share their public key with you by going into Loki Messenger's in-app settings and clicking \"Share Public Key\"." = "Enter the public key of the person you'd like to securely message. They can share their public key with you by going into Loki Messenger's in-app settings and clicking \"Share Public Key\".";
"Waiting for Authorization" = "Waiting for Authorization";
"Create a new account on your other device and click \"Link Device\" when you're at the \"Create Your Loki Messenger Account\" step to start the linking process" = "Create a new account on your other device and click \"Link Device\" when you're at the \"Create Your Loki Messenger Account\" step to start the linking process";
"Please check that the words below match the ones shown on your other device" = "Please check that the words below match the ones shown on your other device";
"Invalid Session ID" = "Invalid Session ID";
"Please check that the words below match those shown on your other device" = "Please check that the words below match those shown on your other device";
"Link to an existing device by going into its in-app settings and clicking \"Link Device\"." = "Link to an existing device by going into its in-app settings and clicking \"Link Device\".";
"Authorize" = "Authorize";
"Enter the Other Device's Public Key" = "Enter the Other Device's Public Key";
@ -2679,23 +2679,23 @@
"Delete" = "Delete";
"Search" = "Search";
"New Conversation" = "New Conversation";
"Enter public key of recipient" = "Enter public key of recipient";
"Users can share their public key by going into their account settings and tapping \"Share Public Key\", or by sharing their QR code." = "Users can share their public key by going into their account settings and tapping \"Share Public Key\", or by sharing their QR code.";
"Enter Session ID of recipient" = "Enter Session ID of recipient";
"Users can share their Session ID by going into their account settings and tapping \"Share Session ID\", or by sharing their QR code." = "Users can share their Session ID by going into their account settings and tapping \"Share Session ID\", or by sharing their QR code.";
"Users can share their QR code by going into their account settings and tapping \"Share QR Code\"." = "Users can share their QR code by going into their account settings and tapping \"Share QR Code\".";
"Your Public Key" = "Your Public Key";
"Your Session ID" = "Your Session ID";
"Copy" = "Copy";
"Copied" = "Copied";
"Share" = "Share";
"Next" = "Next";
"Loki Messenger needs camera access to scan QR codes" = "Loki Messenger needs camera access to scan QR codes";
"Session needs camera access to scan QR codes" = "Session needs camera access to scan QR codes";
"Enable Camera Access" = "Enable Camera Access";
"Scan the QR code of the person you'd like to securely message. They can find their QR code by going into Loki Messenger's in-app settings and tapping \"Show QR Code\"." = "Scan the QR code of the person you'd like to securely message. They can find their QR code by going into Loki Messenger's in-app settings and tapping \"Show QR Code\".";
"Enter Public Key" = "Enter Public Key";
"Enter Chat URL" = "Enter Chat URL";
"Enter Session ID" = "Enter Session ID";
"Enter Channel URL" = "Enter Channel URL";
"Scan QR Code" = "Scan QR Code";
"Scan the QR code of the public chat you'd like to join" = "Scan the QR code of the public chat you'd like to join";
"Join Public Chat" = "Join Public Chat";
"Enter the URL of the public chat you'd like to join" = "Enter the URL of the public chat you'd like to join";
"Scan the QR code of the channel you'd like to join" = "Scan the QR code of the channel you'd like to join";
"Join Channel" = "Join Channel";
"Enter the URL of the channel you'd like to join" = "Enter the URL of the channel you'd like to join";
"Invalid URL" = "Invalid URL";
"Please check the URL you entered and try again" = "Please check the URL you entered and try again";
"Couldn't Join" = "Couldn't Join";
@ -2703,11 +2703,11 @@
"Privacy" = "Privacy";
"Notifications" = "Notifications";
"Linked Devices" = "Linked Devices";
"Show Seed" = "Show Seed";
"Show Recovery Phrase" = "Show Recovery Phrase";
"Clear All Data" = "Clear All Data";
"This will delete your entire account, including all data, any messages currently linked to your public key, as well as your personal key pair." = "This will delete your entire account, including all data, any messages currently linked to your public key, as well as your personal key pair.";
"This will delete your entire account, including all data, any messages currently linked to your Session ID, as well as your personal key pair." = "This will delete your entire account, including all data, any messages currently linked to your Session ID, as well as your personal key pair.";
"Delete" = "Delete";
"This is your personal password. It can be used to restore your account or migrate your account to a new device." = "This is your personal password. It can be used to restore your account or migrate your account to a new device.";
"This is your personal recovery phrase. It can be used to restore your account or migrate your account to a new device." = "This is your personal recovery phrase. It can be used to restore your account or migrate your account to a new device.";
"Notifications can appear while your phone is locked. You may wish to limit what is shown in these notifications." = "Notifications can appear while your phone is locked. You may wish to limit what is shown in these notifications.";
"Notifications" = "Notifications";
"Back" = "Back";
@ -2715,7 +2715,7 @@
"Scan someone's QR code to start a conversation with them" = "Scan someone's QR code to start a conversation with them";
"QR Code" = "QR Code";
"Scan Me" = "Scan Me";
"This is your unique public QR code. Other users may scan this in order to begin a conversation with you." = "This is your unique public QR code. Other users may scan this in order to begin a conversation with you.";
"This is your unique public QR code. Other users can scan this to start a conversation with you." = "This is your unique public QR code. Other users can scan this to start a conversation with you.";
"Privacy" = "Privacy";
"Unlock Loki Messenger's screen using Touch ID, Face ID, or your iOS device passcode. You can still receive message notifications while Screen Lock is enabled. Loki Messenger's notification settings allow you to customize the information that is displayed." = "Unlock Loki Messenger's screen using Touch ID, Face ID, or your iOS device passcode. You can still receive message notifications while Screen Lock is enabled. Loki Messenger's notification settings allow you to customize the information that is displayed.";
"It's a secure, decentralized cross-platform private messaging app" = "It's a secure, decentralized cross-platform private messaging app";
"So it doesn't collect my personal information or my conversation metadata? How's it work?" = "So it doesn't collect my personal information or my conversation metadata? How's it work?";
"It's a secure, decentralized private messaging app" = "It's a secure, decentralized private messaging app";
"So it doesn't collect my personal information or my conversation metadata? How does it work?" = "So it doesn't collect my personal information or my conversation metadata? How does it work?";
"Using a combination of advanced anonymous routing and end-to-end encryption technologies." = "Using a combination of advanced anonymous routing and end-to-end encryption technologies.";
"Friends don't let friends use compromised messengers. You're welcome." = "Friends don't let friends use compromised messengers. You're welcome.";
"Create Account" = "Create Account";
"Continue your Session" = "Continue your Session";
"Say hello to your Session ID" = "Say hello to your Session ID";
"Continue" = "Continue";
"Copy Public Key" = "Copy Public Key";
"Copy Session ID" = "Copy Session ID";
"Pick your display name" = "Pick your display name";
"Enter a display name" = "Enter a display name";
"Restore your account using your seed" = "Restore your account using your seed";
"Enter your seed" = "Enter your seed";
"Restore your account" = "Restore your account";
"Enter your recovery phrase" = "Enter your recovery phrase";
"Message" = "Message";
"You" = "You";
"Encrypting message" = "Encrypting message";
@ -2746,17 +2746,22 @@
"Sending message" = "Sending message";
"Message sent securely" = "Message sent securely";
"Message failed to send" = "Message failed to send";
"Secure your account by saving your seed" = "Secure your account by saving your seed";
"Secure your account by saving your recovery phrase" = "Secure your account by saving your recovery phrase";
"Continue" = "Continue";
"Your Seed" = "Your Seed";
"Meet your seed" = "Meet your seed";
"Your Recovery Phrase" = "Your Recovery Phrase";
"Meet your recovery phrase" = "Meet your recovery phrase";
"Think of this as the crypto-equivalent of a social security number. This allows whomever has it complete access to your account." = "Think of this as the crypto-equivalent of a social security number. This allows whomever has it complete access to your account.";
"Press the redacted words to view your seed and secure your account" = "Press the redacted words to view your seed and secure your account";
"Press the redacted words to view your recovery phrase and secure your account" = "Press the redacted words to view your recovery phrase and secure your account";
"Hold to reveal" = "Hold to reveal";
"Make sure to store your seed in a safe place" = "Make sure to store your seed in a safe place";
"Make sure to store your recovery phrase in a safe place" = "Make sure to store your recovery phrase in a safe place";
"Link to an existing account" = "Link to an existing account";
"Enter your public key" = "Enter your public key";
"Link to your existing account by going into your in-app settings and clicking \"Linked Devices\"." = "Link to your existing account by going into your in-app settings and clicking \"Linked Devices\".";
"Create a new account on your other device and click \"Link to an existing account\" to start the linking process" = "Create a new account on your other device and click \"Link to an existing account\" to start the linking process";
"Group Settings" = "Group Settings";
"Your Session ID is the unique address that people can use to contact you on Session. With no connection to your real identity, your Session ID is totally anonymous and private by design." = "Your Session ID is the unique address that people can use to contact you on Session. With no connection to your real identity, your Session ID is totally anonymous and private by design.";
"Enter the recovery phrase that was given to you when you signed up to restore your account." = "Enter the recovery phrase that was given to you when you signed up to restore your account.";
"Enter Session ID" = "Enter Session ID";
"Link your device" = "Link your device";
"Enter your Session ID to start the linking process." = "Enter your Session ID to start the linking process.";
"Enter your Session ID" = "Enter your Session ID";