From 0cee325477bab2768a4c22548f1f0707514084b6 Mon Sep 17 00:00:00 2001 From: Michael Telatynski <7t3chguy@gmail.com> Date: Mon, 21 Aug 2023 16:12:43 +0100 Subject: [PATCH 01/10] Unwrap string literals for Typescript to be happy --- src/IdentityAuthClient.tsx | 4 +-- src/LegacyCallHandler.tsx | 12 ++----- src/Lifecycle.ts | 3 +- src/Notifier.ts | 3 +- src/SlashCommands.tsx | 14 +++----- src/TextForEvent.tsx | 31 +++++++---------- .../security/CreateSecretStorageDialog.tsx | 13 +++---- .../dialogs/security/ExportE2eKeysDialog.tsx | 13 ++----- .../dialogs/security/ImportE2eKeysDialog.tsx | 8 ++--- .../security/NewRecoveryMethodDialog.tsx | 5 +-- .../security/RecoveryMethodRemovedDialog.tsx | 12 ++----- src/components/structures/MatrixChat.tsx | 20 +++-------- src/components/structures/RoomStatusBar.tsx | 12 +++---- src/components/structures/SpaceRoomView.tsx | 3 +- src/components/structures/ThreadPanel.tsx | 3 +- src/components/structures/TimelinePanel.tsx | 3 +- .../WaitingForThirdPartyRoomView.tsx | 3 +- .../structures/auth/ForgotPassword.tsx | 10 ++---- .../structures/auth/Registration.tsx | 3 +- .../structures/auth/SetupEncryptionBody.tsx | 19 +++-------- src/components/structures/auth/SoftLogout.tsx | 12 ++----- .../auth/forgot-password/VerifyEmailModal.tsx | 3 +- .../auth/InteractiveAuthEntryComponents.tsx | 3 +- .../views/context_menus/WidgetContextMenu.tsx | 3 +- .../dialogs/AnalyticsLearnMoreDialog.tsx | 4 +-- .../views/dialogs/BugReportDialog.tsx | 10 ++---- .../views/dialogs/BulkRedactDialog.tsx | 10 ++---- .../CantStartVoiceMessageBroadcastDialog.tsx | 3 +- .../views/dialogs/ConfirmWipeDeviceDialog.tsx | 3 +- .../views/dialogs/CreateRoomDialog.tsx | 9 ++--- .../views/dialogs/CryptoStoreTooNewDialog.tsx | 8 ++--- .../views/dialogs/EndPollDialog.tsx | 4 +-- .../views/dialogs/FeedbackDialog.tsx | 6 ++-- .../views/dialogs/IncomingSasDialog.tsx | 14 +++----- .../dialogs/IntegrationsImpossibleDialog.tsx | 3 +- src/components/views/dialogs/InviteDialog.tsx | 16 ++++----- .../dialogs/LazyLoadingDisabledDialog.tsx | 9 ++--- .../views/dialogs/LazyLoadingResyncDialog.tsx | 4 +-- .../views/dialogs/LeaveSpaceDialog.tsx | 7 ++-- src/components/views/dialogs/LogoutDialog.tsx | 8 ++--- .../ManageRestrictedJoinRuleDialog.tsx | 3 +- .../dialogs/RegistrationEmailPromptDialog.tsx | 3 +- .../views/dialogs/ReportEventDialog.tsx | 34 +++++-------------- .../views/dialogs/RoomUpgradeDialog.tsx | 10 ++---- .../dialogs/RoomUpgradeWarningDialog.tsx | 12 +++---- .../views/dialogs/ServerOfflineDialog.tsx | 3 +- .../views/dialogs/SeshatResetDialog.tsx | 4 +-- .../dialogs/SessionRestoreErrorDialog.tsx | 7 ++-- .../views/dialogs/SetEmailDialog.tsx | 3 +- .../views/dialogs/SpacePreferencesDialog.tsx | 3 +- .../views/dialogs/StorageEvictedDialog.tsx | 4 +-- .../views/dialogs/UploadFailureDialog.tsx | 7 ++-- .../security/AccessSecretStorageDialog.tsx | 6 ++-- .../ConfirmDestroyCrossSigningDialog.tsx | 5 +-- .../security/RestoreKeyBackupDialog.tsx | 19 ++++------- .../dialogs/spotlight/SpotlightDialog.tsx | 5 +-- .../views/elements/ErrorBoundary.tsx | 12 ++----- src/components/views/elements/ReplyChain.tsx | 3 +- .../views/elements/ServerPicker.tsx | 4 +-- .../views/location/EnableLiveShare.tsx | 5 +-- .../views/messages/DateSeparator.tsx | 11 ++---- .../views/messages/EncryptionEvent.tsx | 6 ++-- .../views/messages/RoomPredecessorTile.tsx | 7 ++-- src/components/views/messages/TextualBody.tsx | 4 +-- .../views/right_panel/EncryptionInfo.tsx | 6 ++-- .../views/right_panel/PinnedMessagesCard.tsx | 3 +- src/components/views/right_panel/UserInfo.tsx | 18 +++------- .../views/right_panel/VerificationPanel.tsx | 4 +-- .../views/room_settings/AliasSettings.tsx | 18 ++++------ .../room_settings/UrlPreviewSettings.tsx | 7 ++-- src/components/views/rooms/NewRoomIntro.tsx | 4 +-- src/components/views/rooms/RoomPreviewBar.tsx | 10 ++---- .../views/rooms/RoomUpgradeWarningBar.tsx | 10 ++---- .../views/rooms/ThirdPartyMemberInfo.tsx | 3 +- .../views/settings/CrossSigningPanel.tsx | 3 +- .../views/settings/EventIndexPanel.tsx | 12 ++----- .../views/settings/JoinRuleSettings.tsx | 7 ++-- .../views/settings/SecureBackupPanel.tsx | 11 ++---- src/components/views/settings/SetIdServer.tsx | 28 +++++---------- .../views/settings/SetIntegrationManager.tsx | 5 ++- .../views/settings/account/PhoneNumbers.tsx | 3 +- .../settings/devices/DeviceDetailHeading.tsx | 6 ++-- .../devices/DeviceSecurityLearnMore.tsx | 9 ++--- .../settings/devices/FilteredDeviceList.tsx | 5 ++- .../settings/devices/LoginWithQRSection.tsx | 3 +- .../devices/SecurityRecommendations.tsx | 6 ++-- .../notifications/NotificationSettings2.tsx | 6 +--- .../tabs/room/AdvancedRoomSettingsTab.tsx | 4 +-- .../settings/tabs/room/BridgeSettingsTab.tsx | 4 +-- .../tabs/room/NotificationSettingsTab.tsx | 3 +- .../tabs/room/RolesRoomSettingsTab.tsx | 6 ++-- .../tabs/room/SecurityRoomSettingsTab.tsx | 27 ++++----------- .../tabs/room/VoipRoomSettingsTab.tsx | 7 ++-- .../tabs/user/GeneralUserSettingsTab.tsx | 3 +- .../tabs/user/HelpUserSettingsTab.tsx | 28 +++++---------- .../tabs/user/LabsUserSettingsTab.tsx | 10 ++---- .../tabs/user/MjolnirUserSettingsTab.tsx | 13 ++----- .../tabs/user/SecurityUserSettingsTab.tsx | 3 +- .../settings/tabs/user/SessionManagerTab.tsx | 3 +- .../tabs/user/SidebarUserSettingsTab.tsx | 3 +- .../views/spaces/SpaceCreateMenu.tsx | 3 +- .../user-onboarding/UserOnboardingHeader.tsx | 12 +++---- .../verification/VerificationComplete.tsx | 3 +- src/createRoom.ts | 3 +- src/editor/commands.tsx | 3 +- src/settings/Settings.tsx | 4 +-- src/stores/RoomViewStore.tsx | 4 +-- src/toasts/AnalyticsToast.tsx | 3 +- src/toasts/MobileGuideToast.ts | 3 +- src/utils/AutoDiscoveryUtils.tsx | 12 ++----- src/utils/ErrorUtils.tsx | 7 ++-- src/utils/MultiInviter.ts | 3 +- src/utils/leave-behaviour.ts | 3 +- src/utils/location/LocationShareErrors.ts | 3 +- src/utils/location/positionFailureMessage.ts | 3 +- .../ConfirmListenBroadcastStopCurrent.tsx | 3 +- .../hooks/useVoiceBroadcastRecording.tsx | 3 +- .../checkVoiceBroadcastPreConditions.tsx | 9 ++--- .../utils/showCantStartACallDialog.tsx | 3 +- 119 files changed, 265 insertions(+), 636 deletions(-) diff --git a/src/IdentityAuthClient.tsx b/src/IdentityAuthClient.tsx index 44f0aaf2e6b..78dc1ea0af8 100644 --- a/src/IdentityAuthClient.tsx +++ b/src/IdentityAuthClient.tsx @@ -141,9 +141,7 @@ export default class IdentityAuthClient {
{_t(
- "This action requires accessing the default identity server " +
- "
{_t(
- "Please ask the administrator of your homeserver " +
- "(%(homeserverDomain)s
) to configure a TURN server in " +
- "order for calls to work reliably.",
+ "Please ask the administrator of your homeserver (%(homeserverDomain)s
) to configure a TURN server in order for calls to work reliably.",
{ homeserverDomain: cli.getDomain() },
{ code: (sub: string) => {sub}
},
)}
{_t(
- "Alternatively, you can try to use the public server at " +
- "{new URL(FALLBACK_ICE_SERVER).pathname}
},
)}
@@ -865,8 +860,7 @@ export default class LegacyCallHandler extends EventEmitter {
description = (
{_t( - "Use an identity server to invite by email. " + - "Click continue to use the default identity server " + - "(%(defaultIdentityServerName)s) or manage in Settings.", + "Use an identity server to invite by email. Click continue to use the default identity server (%(defaultIdentityServerName)s) or manage in Settings.", { defaultIdentityServerName: abbreviateUrl(defaultIdentityServerUrl), }, @@ -717,9 +714,7 @@ export const Commands = [ if (device.getFingerprint() !== fingerprint) { const fprint = device.getFingerprint(); throw new UserFriendlyError( - "WARNING: KEY VERIFICATION FAILED! The signing key for %(userId)s and session" + - ' %(deviceId)s is "%(fprint)s" which does not match the provided key ' + - '"%(fingerprint)s". This could mean your communications are being intercepted!', + 'WARNING: KEY VERIFICATION FAILED! The signing key for %(userId)s and session %(deviceId)s is "%(fprint)s" which does not match the provided key "%(fingerprint)s". This could mean your communications are being intercepted!', { fprint, userId, @@ -739,8 +734,7 @@ export const Commands = [
{_t( - "The signing key you provided matches the signing key you received " + - "from %(userId)s's session %(deviceId)s. Session marked as verified.", + "The signing key you provided matches the signing key you received from %(userId)s's session %(deviceId)s. Session marked as verified.", { userId, deviceId }, )}
diff --git a/src/TextForEvent.tsx b/src/TextForEvent.tsx index 93896cd0aa5..c4aa4416a9f 100644 --- a/src/TextForEvent.tsx +++ b/src/TextForEvent.tsx @@ -482,17 +482,14 @@ function textForHistoryVisibilityEvent(event: MatrixEvent): (() => string) | nul case HistoryVisibility.Invited: return () => _t( - "%(senderName)s made future room history visible to all room members, " + - "from the point they are invited.", + "%(senderName)s made future room history visible to all room members, from the point they are invited.", { senderName }, ); case HistoryVisibility.Joined: return () => - _t( - "%(senderName)s made future room history visible to all room members, " + - "from the point they joined.", - { senderName }, - ); + _t("%(senderName)s made future room history visible to all room members, from the point they joined.", { + senderName, + }); case HistoryVisibility.Shared: return () => _t("%(senderName)s made future room history visible to all room members.", { senderName }); case HistoryVisibility.WorldReadable: @@ -810,33 +807,31 @@ function textForMjolnirEvent(event: MatrixEvent): (() => string) | null { if (USER_RULE_TYPES.includes(event.getType())) { return () => _t( - "%(senderName)s changed a rule that was banning users matching %(oldGlob)s to matching " + - "%(newGlob)s for %(reason)s", + "%(senderName)s changed a rule that was banning users matching %(oldGlob)s to matching %(newGlob)s for %(reason)s", { senderName, oldGlob: prevEntity, newGlob: entity, reason }, ); } else if (ROOM_RULE_TYPES.includes(event.getType())) { return () => _t( - "%(senderName)s changed a rule that was banning rooms matching %(oldGlob)s to matching " + - "%(newGlob)s for %(reason)s", + "%(senderName)s changed a rule that was banning rooms matching %(oldGlob)s to matching %(newGlob)s for %(reason)s", { senderName, oldGlob: prevEntity, newGlob: entity, reason }, ); } else if (SERVER_RULE_TYPES.includes(event.getType())) { return () => _t( - "%(senderName)s changed a rule that was banning servers matching %(oldGlob)s to matching " + - "%(newGlob)s for %(reason)s", + "%(senderName)s changed a rule that was banning servers matching %(oldGlob)s to matching %(newGlob)s for %(reason)s", { senderName, oldGlob: prevEntity, newGlob: entity, reason }, ); } // Unknown type. We'll say something but we shouldn't end up here. return () => - _t( - "%(senderName)s updated a ban rule that was matching %(oldGlob)s to matching %(newGlob)s " + - "for %(reason)s", - { senderName, oldGlob: prevEntity, newGlob: entity, reason }, - ); + _t("%(senderName)s updated a ban rule that was matching %(oldGlob)s to matching %(newGlob)s for %(reason)s", { + senderName, + oldGlob: prevEntity, + newGlob: entity, + reason, + }); } export function textForLocationEvent(event: MatrixEvent): () => string { diff --git a/src/async-components/views/dialogs/security/CreateSecretStorageDialog.tsx b/src/async-components/views/dialogs/security/CreateSecretStorageDialog.tsx index 2a0cf589166..9c28f4f05be 100644 --- a/src/async-components/views/dialogs/security/CreateSecretStorageDialog.tsx +++ b/src/async-components/views/dialogs/security/CreateSecretStorageDialog.tsx @@ -559,8 +559,7 @@ export default class CreateSecretStorageDialog extends React.PureComponent{_t( - "Safeguard against losing access to encrypted messages & data by " + - "backing up encryption keys on your server.", + "Safeguard against losing access to encrypted messages & data by backing up encryption keys on your server.", )}
{_t( - "Upgrade this session to allow it to verify other sessions, " + - "granting them access to encrypted messages and marking them " + - "as trusted for other users.", + "Upgrade this session to allow it to verify other sessions, granting them access to encrypted messages and marking them as trusted for other users.", )}
{_t( - "Enter a Security Phrase only you know, as it's used to safeguard your data. " + - "To be secure, you shouldn't re-use your account password.", + "Enter a Security Phrase only you know, as it's used to safeguard your data. To be secure, you shouldn't re-use your account password.", )}
@@ -752,8 +748,7 @@ export default class CreateSecretStorageDialog extends React.PureComponent{_t( - "Store your Security Key somewhere safe, like a password manager or a safe, " + - "as it's used to safeguard your encrypted data.", + "Store your Security Key somewhere safe, like a password manager or a safe, as it's used to safeguard your encrypted data.", )}
{_t( - "This process allows you to export the keys for messages " + - "you have received in encrypted rooms to a local file. You " + - "will then be able to import the file into another Matrix " + - "client in the future, so that client will also be able to " + - "decrypt these messages.", + "This process allows you to export the keys for messages you have received in encrypted rooms to a local file. You will then be able to import the file into another Matrix client in the future, so that client will also be able to decrypt these messages.", )}
{_t( - "The exported file will allow anyone who can read it to decrypt " + - "any encrypted messages that you can see, so you should be " + - "careful to keep it secure. To help with this, you should enter " + - "a unique passphrase below, which will only be used to encrypt the " + - "exported data. " + - "It will only be possible to import the data by using the same passphrase.", + "The exported file will allow anyone who can read it to decrypt any encrypted messages that you can see, so you should be careful to keep it secure. To help with this, you should enter a unique passphrase below, which will only be used to encrypt the exported data. It will only be possible to import the data by using the same passphrase.", )}
{_t( - "This process allows you to import encryption keys " + - "that you had previously exported from another Matrix " + - "client. You will then be able to decrypt any " + - "messages that the other client could decrypt.", + "This process allows you to import encryption keys that you had previously exported from another Matrix client. You will then be able to decrypt any messages that the other client could decrypt.", )}
{_t( - "The export file will be protected with a passphrase. " + - "You should enter the passphrase here, to decrypt the file.", + "The export file will be protected with a passphrase. You should enter the passphrase here, to decrypt the file.", )}
{_t( - "If you didn't set the new recovery method, an " + - "attacker may be trying to access your account. " + - "Change your account password and set a new recovery " + - "method immediately in Settings.", + "If you didn't set the new recovery method, an attacker may be trying to access your account. Change your account password and set a new recovery method immediately in Settings.", )}
); diff --git a/src/async-components/views/dialogs/security/RecoveryMethodRemovedDialog.tsx b/src/async-components/views/dialogs/security/RecoveryMethodRemovedDialog.tsx index b5983b66c0f..f91d6504696 100644 --- a/src/async-components/views/dialogs/security/RecoveryMethodRemovedDialog.tsx +++ b/src/async-components/views/dialogs/security/RecoveryMethodRemovedDialog.tsx @@ -53,23 +53,17 @@ export default class RecoveryMethodRemovedDialog extends React.PureComponent{_t( - "This session has detected that your Security Phrase and key " + - "for Secure Messages have been removed.", + "This session has detected that your Security Phrase and key for Secure Messages have been removed.", )}
{_t( - "If you did this accidentally, you can setup Secure Messages on " + - "this session which will re-encrypt this session's message " + - "history with a new recovery method.", + "If you did this accidentally, you can setup Secure Messages on this session which will re-encrypt this session's message history with a new recovery method.", )}
{_t( - "If you didn't remove the recovery method, an " + - "attacker may be trying to access your account. " + - "Change your account password and set a new recovery " + - "method immediately in Settings.", + "If you didn't remove the recovery method, an attacker may be trying to access your account. Change your account password and set a new recovery method immediately in Settings.", )}
{" "} {_t( - "To continue using the %(homeserverDomain)s homeserver " + - "you must review and agree to our terms and conditions.", + "To continue using the %(homeserverDomain)s homeserver you must review and agree to our terms and conditions.", { homeserverDomain: cli.getDomain() }, )}
@@ -1643,13 +1639,7 @@ export default class MatrixChat extends React.PureComponent
{_t(
- "Reply to an ongoing thread or use “%(replyInThread)s” " +
- "when hovering over a message to start a new one.",
+ "Reply to an ongoing thread or use “%(replyInThread)s” when hovering over a message to start a new one.",
{
replyInThread: _t("Reply in thread"),
},
diff --git a/src/components/structures/TimelinePanel.tsx b/src/components/structures/TimelinePanel.tsx
index 8cf3edd223b..0b77d5daa94 100644
--- a/src/components/structures/TimelinePanel.tsx
+++ b/src/components/structures/TimelinePanel.tsx
@@ -1651,8 +1651,7 @@ class TimelinePanel extends React.Component
{_t(
- "Signing out your devices will delete the message encryption keys stored on them, " +
- "making encrypted chat history unreadable.",
+ "Signing out your devices will delete the message encryption keys stored on them, making encrypted chat history unreadable.",
)}
{_t(
- "If you want to retain access to your chat history in encrypted rooms, set up Key Backup " +
- "or export your message keys from one of your other devices before proceeding.",
+ "If you want to retain access to your chat history in encrypted rooms, set up Key Backup or export your message keys from one of your other devices before proceeding.",
)}
{_t(
- "You have been logged out of all devices and will no longer receive " +
- "push notifications. To re-enable notifications, sign in again on each " +
- "device.",
+ "You have been logged out of all devices and will no longer receive push notifications. To re-enable notifications, sign in again on each device.",
)}
{_t(
- "Your new account (%(newAccountId)s) is registered, but you're already " +
- "logged into a different account (%(loggedInUserId)s).",
+ "Your new account (%(newAccountId)s) is registered, but you're already logged into a different account (%(loggedInUserId)s).",
{
newAccountId: this.state.registeredUsername,
loggedInUserId: this.state.differentLoggedInUserId,
diff --git a/src/components/structures/auth/SetupEncryptionBody.tsx b/src/components/structures/auth/SetupEncryptionBody.tsx
index 1de7cc7d83f..5562b8a14e9 100644
--- a/src/components/structures/auth/SetupEncryptionBody.tsx
+++ b/src/components/structures/auth/SetupEncryptionBody.tsx
@@ -161,10 +161,7 @@ export default class SetupEncryptionBody extends React.Component
{_t(
- "It looks like you don't have a Security Key or any other devices you can " +
- "verify against. This device will not be able to access old encrypted messages. " +
- "In order to verify your identity on this device, you'll need to reset " +
- "your verification keys.",
+ "It looks like you don't have a Security Key or any other devices you can verify against. This device will not be able to access old encrypted messages. In order to verify your identity on this device, you'll need to reset your verification keys.",
)}
{_t(
- "Your new device is now verified. It has access to your " +
- "encrypted messages, and other users will see it as trusted.",
+ "Your new device is now verified. It has access to your encrypted messages, and other users will see it as trusted.",
)}
{_t(
- "Without verifying, you won't have access to all your messages " +
- "and may appear as untrusted to others.",
+ "Without verifying, you won't have access to all your messages and may appear as untrusted to others.",
)}
{_t(
- "Resetting your verification keys cannot be undone. After resetting, " +
- "you won't have access to old encrypted messages, and any friends who " +
- "have previously verified you will see security warnings until you " +
- "re-verify with them.",
+ "Resetting your verification keys cannot be undone. After resetting, you won't have access to old encrypted messages, and any friends who have previously verified you will see security warnings until you re-verify with them.",
)}
{_t(
- "Please only proceed if you're sure you've lost all of your other " +
- "devices and your Security Key.",
+ "Please only proceed if you're sure you've lost all of your other devices and your Security Key.",
)}
- {_t(
- "You cannot sign in to your account. Please contact your " +
- "homeserver admin for more information.",
- )}
+ {_t("You cannot sign in to your account. Please contact your homeserver admin for more information.")}
{_t(
- "Warning: your personal data (including encryption keys) is still stored " +
- "in this session. Clear it if you're finished using this session, or want to sign " +
- "in to another account.",
+ "Warning: your personal data (including encryption keys) is still stored in this session. Clear it if you're finished using this session, or want to sign in to another account.",
)}
{_t(
- "We need to know it’s you before resetting your password. " +
- "Click the link in the email we just sent to %(email)s",
+ "We need to know it’s you before resetting your password. Click the link in the email we just sent to %(email)s",
{
email,
},
diff --git a/src/components/views/auth/InteractiveAuthEntryComponents.tsx b/src/components/views/auth/InteractiveAuthEntryComponents.tsx
index add3638fcb4..de6f07be1db 100644
--- a/src/components/views/auth/InteractiveAuthEntryComponents.tsx
+++ b/src/components/views/auth/InteractiveAuthEntryComponents.tsx
@@ -220,8 +220,7 @@ export class RecaptchaAuthEntry extends React.Component
{_t(
- "Debug logs contain application usage data including your " +
- "username, the IDs or aliases of the rooms you " +
- "have visited, which UI elements you last interacted with, " +
- "and the usernames of other users. They do not contain messages.",
+ "Debug logs contain application usage data including your username, the IDs or aliases of the rooms you have visited, which UI elements you last interacted with, and the usernames of other users. They do not contain messages.",
)}
@@ -273,10 +270,7 @@ export default class BugReportDialog extends React.Component
{_t(
- "You are about to remove %(count)s messages by %(user)s. " +
- "This will remove them permanently for everyone in the conversation. " +
- "Do you wish to continue?",
+ "You are about to remove %(count)s messages by %(user)s. This will remove them permanently for everyone in the conversation. Do you wish to continue?",
{ count, user },
)}
{_t(
- "For a large amount of messages, this might take some time. " +
- "Please don't refresh your client in the meantime.",
+ "For a large amount of messages, this might take some time. Please don't refresh your client in the meantime.",
)}
{_t(
- "You can't start a voice message as you are currently recording a live broadcast. " +
- "Please end your live broadcast in order to start recording a voice message.",
+ "You can't start a voice message as you are currently recording a live broadcast. Please end your live broadcast in order to start recording a voice message.",
)}
{_t(
- "Clearing all data from this session is permanent. Encrypted messages will be lost " +
- "unless their keys have been backed up.",
+ "Clearing all data from this session is permanent. Encrypted messages will be lost unless their keys have been backed up.",
)}
{_t(
- "PRO TIP: If you start a bug, please submit
{_t(
- "Please view
{_t(
- "Verify this user to mark them as trusted. " +
- "Trusting users gives you extra peace of mind when using " +
- "end-to-end encrypted messages.",
+ "Verify this user to mark them as trusted. Trusting users gives you extra peace of mind when using end-to-end encrypted messages.",
)}
{_t(
// NB. Below wording adjusted to singular 'session' until we have
// cross-signing
- "Verifying this user will mark their session as trusted, and " +
- "also mark your session as trusted to them.",
+ "Verifying this user will mark their session as trusted, and also mark your session as trusted to them.",
)}
{_t(
- "Verify this device to mark it as trusted. " +
- "Trusting this device gives you and other users extra peace of mind when using " +
- "end-to-end encrypted messages.",
+ "Verify this device to mark it as trusted. Trusting this device gives you and other users extra peace of mind when using end-to-end encrypted messages.",
)}
{_t(
- "Verifying this device will mark it as trusted, and users who have verified with " +
- "you will trust this device.",
+ "Verifying this device will mark it as trusted, and users who have verified with you will trust this device.",
)}
{_t(
- "Your %(brand)s doesn't allow you to use an integration manager to do this. " +
- "Please contact an admin.",
+ "Your %(brand)s doesn't allow you to use an integration manager to do this. Please contact an admin.",
{ brand },
)}
{_t(
- "Encrypted messages are secured with end-to-end encryption. " +
- "Only you and the recipient(s) have the keys to read these messages.",
+ "Encrypted messages are secured with end-to-end encryption. Only you and the recipient(s) have the keys to read these messages.",
)}
{_t(
- "When you sign out, these keys will be deleted from this device, " +
- "which means you won't be able to read encrypted messages unless you " +
- "have the keys for them on your other devices, or backed them up to the " +
- "server.",
+ "When you sign out, these keys will be deleted from this device, which means you won't be able to read encrypted messages unless you have the keys for them on your other devices, or backed them up to the server.",
)}
{_t("Back up your keys before signing out to avoid losing them.")}
{_t(
- "Decide which spaces can access this room. " +
- "If a space is selected, its members can find and join
{_t(
- "Just a heads up, if you don't add an email and forget your password, you could " +
- "permanently lose access to your account.",
+ "Just a heads up, if you don't add an email and forget your password, you could permanently lose access to your account.",
{},
{
b: (sub) => {sub},
diff --git a/src/components/views/dialogs/ReportEventDialog.tsx b/src/components/views/dialogs/ReportEventDialog.tsx
index 41a24f01bdb..cd540b1b715 100644
--- a/src/components/views/dialogs/ReportEventDialog.tsx
+++ b/src/components/views/dialogs/ReportEventDialog.tsx
@@ -317,54 +317,39 @@ export default class ReportEventDialog extends React.Component
{_t(
- "Reporting this message will send its unique 'event ID' to the administrator of " +
- "your homeserver. If messages in this room are encrypted, your homeserver " +
- "administrator will not be able to read the message text or view any files " +
- "or images.",
+ "Reporting this message will send its unique 'event ID' to the administrator of your homeserver. If messages in this room are encrypted, your homeserver administrator will not be able to read the message text or view any files or images.",
)}
{_t(
- "Upgrading this room requires closing down the current " +
- "instance of the room and creating a new room in its place. " +
- "To give room members the best possible experience, we will:",
+ "Upgrading this room requires closing down the current instance of the room and creating a new room in its place. To give room members the best possible experience, we will:",
)}
{_t(
- "Please note upgrading will make a new version of the room. " +
- "All current messages will stay in this archived room.",
+ "Please note upgrading will make a new version of the room. All current messages will stay in this archived room.",
{},
{
b: (sub) => {sub},
diff --git a/src/components/views/dialogs/ServerOfflineDialog.tsx b/src/components/views/dialogs/ServerOfflineDialog.tsx
index 30257a701ea..5de0e79eb91 100644
--- a/src/components/views/dialogs/ServerOfflineDialog.tsx
+++ b/src/components/views/dialogs/ServerOfflineDialog.tsx
@@ -107,8 +107,7 @@ export default class ServerOfflineDialog extends React.PureComponent
{_t(
- "Your server isn't responding to some of your requests. " +
- "Below are some of the most likely reasons.",
+ "Your server isn't responding to some of your requests. Below are some of the most likely reasons.",
)}
{_t(
- "If you have previously used a more recent version of %(brand)s, your session " +
- "may be incompatible with this version. Close this window and return " +
- "to the more recent version.",
+ "If you have previously used a more recent version of %(brand)s, your session may be incompatible with this version. Close this window and return to the more recent version.",
{ brand },
)}
{_t(
- "Clearing your browser's storage may fix the problem, but will sign you " +
- "out and cause any encrypted chat history to become unreadable.",
+ "Clearing your browser's storage may fix the problem, but will sign you out and cause any encrypted chat history to become unreadable.",
)}
{_t(
- "Some session data, including encrypted message keys, is " +
- "missing. Sign out and sign in to fix this, restoring keys " +
- "from backup.",
+ "Some session data, including encrypted message keys, is missing. Sign out and sign in to fix this, restoring keys from backup.",
)}
diff --git a/src/components/views/dialogs/UploadFailureDialog.tsx b/src/components/views/dialogs/UploadFailureDialog.tsx
index 3e4860665d7..1ea367969ec 100644
--- a/src/components/views/dialogs/UploadFailureDialog.tsx
+++ b/src/components/views/dialogs/UploadFailureDialog.tsx
@@ -49,8 +49,7 @@ export default class UploadFailureDialog extends React.Component
{_t(
- "If you reset everything, you will restart with no trusted sessions, no trusted users, and " +
- "might not be able to see past messages.",
+ "If you reset everything, you will restart with no trusted sessions, no trusted users, and might not be able to see past messages.",
)}
{_t(
- "Deleting cross-signing keys is permanent. " +
- "Anyone you have verified with will see security alerts. " +
- "You almost certainly don't want to do this, unless " +
- "you've lost every device you can cross-sign from.",
+ "Deleting cross-signing keys is permanent. Anyone you have verified with will see security alerts. You almost certainly don't want to do this, unless you've lost every device you can cross-sign from.",
)}
{_t(
- "Backup could not be decrypted with this Security Key: " +
- "please verify that you entered the correct Security Key.",
+ "Backup could not be decrypted with this Security Key: please verify that you entered the correct Security Key.",
)}
{_t(
- "Backup could not be decrypted with this Security Phrase: " +
- "please verify that you entered the correct Security Phrase.",
+ "Backup could not be decrypted with this Security Phrase: please verify that you entered the correct Security Phrase.",
)}
{_t(
- "Access your secure message history and set up secure " +
- "messaging by entering your Security Phrase.",
+ "Access your secure message history and set up secure messaging by entering your Security Phrase.",
)}
{_t(
- "Access your secure message history and set up secure " +
- "messaging by entering your Security Key.",
+ "Access your secure message history and set up secure messaging by entering your Security Key.",
)}
{_t("Messages in this room are not end-to-end encrypted.")}
{_t(
- "In encrypted rooms, your messages are secured and only you and the recipient have " +
- "the unique keys to unlock them.",
+ "In encrypted rooms, your messages are secured and only you and the recipient have the unique keys to unlock them.",
)}
{_t(
- "When someone puts a URL in their message, a URL preview can be shown to give more " +
- "information about that link such as the title, description, and an image from the website.",
+ "When someone puts a URL in their message, a URL preview can be shown to give more information about that link such as the title, description, and an image from the website.",
)}
{previewsForAccount}
{_t(
- "Upgrading this room will shut down the current instance of the room and create " +
- "an upgraded room with the same name.",
+ "Upgrading this room will shut down the current instance of the room and create an upgraded room with the same name.",
)}
{_t(
- "Warning: upgrading a room will not automatically migrate room members " +
- "to the new version of the room. We'll post a link to the new room in the old " +
- "version of the room - room members will have to click this link to join the new room.",
+ "Warning: upgrading a room will not automatically migrate room members to the new version of the room. We'll post a link to the new room in the old version of the room - room members will have to click this link to join the new room.",
{},
{
b: (sub) => {sub},
@@ -111,8 +108,7 @@ export default class RoomUpgradeWarningBar extends React.PureComponent
{_t(
- "You should remove your personal data from identity server " +
- "
{_t(
- "We recommend that you remove your email addresses and phone numbers " +
- "from the identity server before disconnecting.",
+ "We recommend that you remove your email addresses and phone numbers from the identity server before disconnecting.",
)}
{_t(
- `Other users in direct messages and rooms that you join ` +
- `are able to view a full list of your sessions.`,
+ "Other users in direct messages and rooms that you join are able to view a full list of your sessions.",
)}
{_t(
- `This provides them with confidence that they are really speaking to you, ` +
- `but it also means they can see the session name you enter here.`,
+ "This provides them with confidence that they are really speaking to you, but it also means they can see the session name you enter here.",
)}
{_t(
- `This means that you have all the keys needed to unlock your encrypted messages ` +
- `and confirm to other users that you trust this session.`,
+ "This means that you have all the keys needed to unlock your encrypted messages and confirm to other users that you trust this session.",
)}
{_t(
- `You should make especially certain that you recognise these sessions ` +
- `as they could represent an unauthorised use of your account.`,
+ "You should make especially certain that you recognise these sessions as they could represent an unauthorised use of your account.",
)}
{_t(
- `Removing inactive sessions improves security and performance, ` +
- `and makes it easier for you to identify if a new session is suspicious.`,
+ "Removing inactive sessions improves security and performance, and makes it easier for you to identify if a new session is suspicious.",
)}
{_t(
- "You can use this device to sign in a new device with a QR code. You will need to " +
- "scan the QR code shown on this device with your device that's signed out.",
+ "You can use this device to sign in a new device with a QR code. You will need to scan the QR code shown on this device with your device that's signed out.",
)}
{_t(
- "Warning: upgrading a room will not automatically migrate room members " +
- "to the new version of the room. We'll post a link to the new room in the old " +
- "version of the room - room members will have to click this link to join the new room.",
+ "Warning: upgrading a room will not automatically migrate room members to the new version of the room. We'll post a link to the new room in the old version of the room - room members will have to click this link to join the new room.",
{},
{
b: (sub) => {sub},
diff --git a/src/components/views/settings/tabs/room/BridgeSettingsTab.tsx b/src/components/views/settings/tabs/room/BridgeSettingsTab.tsx
index 03c67604ebd..03d52089021 100644
--- a/src/components/views/settings/tabs/room/BridgeSettingsTab.tsx
+++ b/src/components/views/settings/tabs/room/BridgeSettingsTab.tsx
@@ -63,7 +63,7 @@ export default class BridgeSettingsTab extends React.Component
{_t(
- "This room is bridging messages to the following platforms. " + "Learn more.",
+ "This room is bridging messages to the following platforms. Learn more.",
{},
{
// TODO: We don't have this link yet: this will prevent the translators
@@ -85,7 +85,7 @@ export default class BridgeSettingsTab extends React.Component
{_t(
- "This room isn't bridging messages to any platforms. " + "Learn more.",
+ "This room isn't bridging messages to any platforms. Learn more.",
{},
{
// TODO: We don't have this link yet: this will prevent the translators
diff --git a/src/components/views/settings/tabs/room/NotificationSettingsTab.tsx b/src/components/views/settings/tabs/room/NotificationSettingsTab.tsx
index 21d13dfd63b..0f3d258deca 100644
--- a/src/components/views/settings/tabs/room/NotificationSettingsTab.tsx
+++ b/src/components/views/settings/tabs/room/NotificationSettingsTab.tsx
@@ -221,8 +221,7 @@ export default class NotificationsSettingsTab extends React.Component
{_t(
- "People with supported clients will be able to join " +
- "the room without having a registered account.",
+ "People with supported clients will be able to join the room without having a registered account.",
)}
{_t(
- "Add users and servers you want to ignore here. Use asterisks " +
- "to have %(brand)s match any characters. For example,
{_t(
- "Ignoring people is done through ban lists which contain rules for " +
- "who to ban. Subscribing to a ban list means the users/servers blocked by " +
- "that list will be hidden from you.",
+ "Ignoring people is done through ban lists which contain rules for who to ban. Subscribing to a ban list means the users/servers blocked by that list will be hidden from you.",
)}
{_t(
- "Spaces are a new way to group rooms and people. What kind of Space do you want to create? " +
- "You can change this later.",
+ "Spaces are a new way to group rooms and people. What kind of Space do you want to create? You can change this later.",
)}
{_t("You've successfully verified this user.")}
{_t(
- "Secure messages with this user are end-to-end encrypted and not able to be " +
- "read by third parties.",
+ "Secure messages with this user are end-to-end encrypted and not able to be read by third parties.",
)}
{_t("Unrecognised command: %(commandText)s", { commandText })}
{_t(
- "You can use
{_t(
- "If you start listening to this live broadcast, " +
- "your current live broadcast recording will be ended.",
+ "If you start listening to this live broadcast, your current live broadcast recording will be ended.",
)}
{_t(
- "Are you sure you want to stop your live broadcast? " +
- "This will end the broadcast and the full recording will be available in the room.",
+ "Are you sure you want to stop your live broadcast? This will end the broadcast and the full recording will be available in the room.",
)}
{_t(
- "You are already recording a voice broadcast. " +
- "Please end your current voice broadcast to start a new one.",
+ "You are already recording a voice broadcast. Please end your current voice broadcast to start a new one.",
)}
{_t(
- "You don't have the required permissions to start a voice broadcast in this room. " +
- "Contact a room administrator to upgrade your permissions.",
+ "You don't have the required permissions to start a voice broadcast in this room. Contact a room administrator to upgrade your permissions.",
)}
{_t(
- "Someone else is already recording a voice broadcast. " +
- "Wait for their voice broadcast to end to start a new one.",
+ "Someone else is already recording a voice broadcast. Wait for their voice broadcast to end to start a new one.",
)}
{_t(
- "You can’t start a call as you are currently recording a live broadcast. " +
- "Please end your live broadcast in order to start a call.",
+ "You can’t start a call as you are currently recording a live broadcast. Please end your live broadcast in order to start a call.",
)}
{_t("Clear personal data")}
{_t("Verify your email to continue")}
{_t("Report a bug")}
@@ -104,14 +102,12 @@ export default class RoomUpgradeDialog extends React.Component
diff --git a/src/components/views/dialogs/RoomUpgradeWarningDialog.tsx b/src/components/views/dialogs/RoomUpgradeWarningDialog.tsx
index a8ad1d94a6d..53c0d5bc3de 100644
--- a/src/components/views/dialogs/RoomUpgradeWarningDialog.tsx
+++ b/src/components/views/dialogs/RoomUpgradeWarningDialog.tsx
@@ -135,8 +135,7 @@ export default class RoomUpgradeWarningDialog extends React.Component
diff --git a/src/components/views/dialogs/SeshatResetDialog.tsx b/src/components/views/dialogs/SeshatResetDialog.tsx
index badd808ac9e..c2619c29449 100644
--- a/src/components/views/dialogs/SeshatResetDialog.tsx
+++ b/src/components/views/dialogs/SeshatResetDialog.tsx
@@ -37,9 +37,7 @@ export default class SeshatResetDialog extends React.PureComponent
{_t(
- "If you do, please note that none of your messages will be deleted, " +
- "but the search experience might be degraded for a few moments " +
- "whilst the index is recreated",
+ "If you do, please note that none of your messages will be deleted, but the search experience might be degraded for a few moments whilst the index is recreated",
)}
{_t("Some results may be hidden")}
{_t("Are you sure?")}
@@ -1355,9 +1349,7 @@ const BasicUserInfo: React.FC<{
description: (
{this.props.room.getVersion()}
,
diff --git a/src/components/views/rooms/ThirdPartyMemberInfo.tsx b/src/components/views/rooms/ThirdPartyMemberInfo.tsx
index 0ffd0dc5517..b8682e27515 100644
--- a/src/components/views/rooms/ThirdPartyMemberInfo.tsx
+++ b/src/components/views/rooms/ThirdPartyMemberInfo.tsx
@@ -108,8 +108,7 @@ export default class ThirdPartyMemberInfo extends React.Component
diff --git a/src/components/views/settings/devices/DeviceDetailHeading.tsx b/src/components/views/settings/devices/DeviceDetailHeading.tsx
index cc338d634b1..895da52d2e3 100644
--- a/src/components/views/settings/devices/DeviceDetailHeading.tsx
+++ b/src/components/views/settings/devices/DeviceDetailHeading.tsx
@@ -84,14 +84,12 @@ const DeviceNameEditor: React.FC
@bot:*
" +
- "would ignore all users that have the name 'bot' on any server.",
+ "Add users and servers you want to ignore here. Use asterisks to have %(brand)s match any characters. For example, @bot:*
would ignore all users that have the name 'bot' on any server.",
{ brand },
{ code: (s) => {s}
},
)}
/help
to list available commands. " +
- "Did you mean to send this as a message?",
+ "You can use /help
to list available commands. Did you mean to send this as a message?",
{},
{
code: (t) => {t}
,
diff --git a/src/settings/Settings.tsx b/src/settings/Settings.tsx
index 7592c21209f..66fc4a03c86 100644
--- a/src/settings/Settings.tsx
+++ b/src/settings/Settings.tsx
@@ -266,7 +266,7 @@ export const SETTINGS: { [setting: string]: ISetting } = {
labsGroup: LabGroup.Moderation,
displayName: _td("Report to moderators"),
description: _td(
- "In rooms that support moderation, " + "the “Report” button will let you report abuse to room moderators.",
+ "In rooms that support moderation, the “Report” button will let you report abuse to room moderators.",
),
supportedLevels: LEVELS_FEATURE,
default: false,
@@ -805,7 +805,7 @@ export const SETTINGS: { [setting: string]: ISetting } = {
"deviceClientInformationOptIn": {
supportedLevels: [SettingLevel.ACCOUNT],
displayName: _td(
- `Record the client name, version, and url ` + `to recognise sessions more easily in session manager`,
+ "Record the client name, version, and url to recognise sessions more easily in session manager",
),
default: false,
},
diff --git a/src/stores/RoomViewStore.tsx b/src/stores/RoomViewStore.tsx
index 53d4f0781a0..50c060c4462 100644
--- a/src/stores/RoomViewStore.tsx
+++ b/src/stores/RoomViewStore.tsx
@@ -630,9 +630,7 @@ export class RoomViewStore extends EventEmitter {
description = (
diff --git a/src/toasts/AnalyticsToast.tsx b/src/toasts/AnalyticsToast.tsx
index 0a5b00cd587..8011594d437 100644
--- a/src/toasts/AnalyticsToast.tsx
+++ b/src/toasts/AnalyticsToast.tsx
@@ -104,8 +104,7 @@ export const showToast = (): void => {
);
props = {
description: _t(
- "Share anonymous data to help us identify issues. Nothing personal. No third parties. " +
- "