diff --git a/public/locales/en/translation.json b/public/locales/en/translation.json index 60aaae8e..76f1903a 100644 --- a/public/locales/en/translation.json +++ b/public/locales/en/translation.json @@ -1,5 +1,5 @@ { - "common" : { + "common": { "close": "Close", "open": "Open", "leave": "Leave", @@ -41,402 +41,403 @@ "browser_not_supported": "Not supported in this browser", "generic": "Something went wrong!" }, - "Welcome": { - "heading": "Welcome to Cinny!", - "subheading": "Yet another Matrix client" - }, - "ViewSource":{ - "title": "View Source", - "original_source": "Original source", - "decrypted_source": "Decrypted source" - }, - "SpaceManage": { - "subtitle": "manage rooms", - "load_more": "Load more", - "rooms_and_spaces": "Rooms and spaces", - "private_rooms_message": "Either the space contains private rooms or you need to join space to view it's rooms.", - "items_selected_zero": "No selected items", - "items_selected_one": "{{count}} selected item", - "items_selected_other": "{{count}} selected items", - "room_members_zero": "No room members", - "room_members_one": "{{count}} room member", - "room_members_other": "{{count}} room members", - "mark_suggested_zero": "Marking no rooms as suggested", - "mark_suggested_one": "Marking {{count}} room as suggested", - "mark_suggested_other": "Marking {{count}} rooms as suggested", - "mark_not_suggested_zero": "Marking no rooms as suggested", - "mark_not_suggested_one": "Marking {{count}} room as suggested", - "mark_not_suggested_other": "Marking {{count}} rooms as suggested", - "remove_zero": "Removing no items", - "remove_one": "Removing {{count}} item", - "remove_other": "Removing {{count}} items.", - "suggested": "Suggested", - "mark_as_suggested":"Mark as suggested", - "mark_as_not_suggested": "Mark as not suggested" - }, - "SpaceSettings":{ - "subtitle": "space settings", - "leave":{ - "leave_space": "Leave Space", - "leave_dialog_title": "Leave Space", - "leave_dialog_message": "Are you sure you want to leave {{space}}?" + "Organisms": { + "Welcome": { + "heading": "Welcome to Cinny!", + "subheading": "Yet another Matrix client" }, - "visibility":{ - "header": "Space visibility (who can join)" + "ViewSource": { + "title": "View Source", + "original_source": "Original source", + "decrypted_source": "Decrypted source" }, - "addresses": { - "header": "Space addresses" + "SpaceManage": { + "subtitle": "manage rooms", + "load_more": "Load more", + "rooms_and_spaces": "Rooms and spaces", + "private_rooms_message": "Either the space contains private rooms or you need to join space to view it's rooms.", + "items_selected_zero": "No selected items", + "items_selected_one": "{{count}} selected item", + "items_selected_other": "{{count}} selected items", + "room_members_zero": "No room members", + "room_members_one": "{{count}} room member", + "room_members_other": "{{count}} room members", + "mark_suggested_zero": "Marking no rooms as suggested", + "mark_suggested_one": "Marking {{count}} room as suggested", + "mark_suggested_other": "Marking {{count}} rooms as suggested", + "mark_not_suggested_zero": "Marking no rooms as suggested", + "mark_not_suggested_one": "Marking {{count}} room as suggested", + "mark_not_suggested_other": "Marking {{count}} rooms as suggested", + "remove_zero": "Removing no items", + "remove_one": "Removing {{count}} item", + "remove_other": "Removing {{count}} items.", + "suggested": "Suggested", + "mark_as_suggested": "Mark as suggested", + "mark_as_not_suggested": "Mark as not suggested" }, - "categorize_subspaces": "Categorize subspaces", - "uncategorize_subspaces": "Uncategorize subspaces", - "pin_sidebar": "Pin to sidebar", - "unpin_sidebar": "Unpin from sidebar" - }, - "Settings": { - "title": "Settings", - "theme": { - "follow_system": { - "title": "Follow system theme", - "description": "Use light or dark mode based on the system settings." + "SpaceSettings": { + "subtitle": "space settings", + "leave": { + "leave_space": "Leave Space", + "leave_dialog_title": "Leave Space", + "leave_dialog_message": "Are you sure you want to leave {{space}}?" + }, + "visibility": { + "header": "Space visibility (who can join)" + }, + "addresses": { + "header": "Space addresses" + }, + "categorize_subspaces": "Categorize subspaces", + "uncategorize_subspaces": "Uncategorize subspaces", + "pin_sidebar": "Pin to sidebar", + "unpin_sidebar": "Unpin from sidebar" + }, + "Settings": { + "title": "Settings", + "theme": { + "follow_system": { + "title": "Follow system theme", + "description": "Use light or dark mode based on the system settings." }, - "title": "Theme", - "theme_light": "Light", - "theme_silver": "Silver", - "theme_dark": "Dark", - "theme_butter": "Butter" - }, - "markdown": { - "title": "Markdown formatting", - "description": "Format messages with markdown before sending" - }, - "hide_membership_events": { - "title": "Hide membership events", - "description": "Hide membership change messages from room timeline. (Join, Leave, Invite, Kick and Ban)" - }, - "hide_nickname_avatar_events": { - "title": "Hide nick/avatar events", - "description": "Hide nickname and avatar change messages from the room timeline." - }, - "notifications_and_sound": { - "title": "Notifications & Sound", - "desktop": { - "title": "Desktop notifications", - "description": "Show desktop notifications when new messages arrive." + "title": "Theme", + "theme_light": "Light", + "theme_silver": "Silver", + "theme_dark": "Dark", + "theme_butter": "Butter" }, - "sound": { - "title": "Notification sound", - "description": "Play a sound when new messages arrive." - } - }, - "security": { - "cross_signing": { - "title": "Cross signing and backup" + "markdown": { + "title": "Markdown formatting", + "description": "Format messages with markdown before sending" }, - "export_import_encryption_keys": { - "title": "Export / Import encryption keys" + "hide_membership_events": { + "title": "Hide membership events", + "description": "Hide membership change messages from room timeline. (Join, Leave, Invite, Kick and Ban)" }, - "export_encryption_keys": { - "title": "Export E2E room keys", - "description": "Export end-to-end encryption room keys to decrypt old messages in other session. In order to encrypt keys you need to set a password, which will be used while importing." + "hide_nickname_avatar_events": { + "title": "Hide nick/avatar events", + "description": "Hide nickname and avatar change messages from the room timeline." }, - "import_encryption_keys": { - "title": "Import E2E room keys", - "description": "To decrypt older messages, Export E2EE room keys from Element (Settings > Security & Privacy > Encryption > Cryptography) and import them here. Imported keys are encrypted so you\\'ll have to enter the password you set in order to decrypt it." - } - }, - "logout": { - "title": "Logout", - "dialog": { + "notifications_and_sound": { + "title": "Notifications & Sound", + "desktop": { + "title": "Desktop notifications", + "description": "Show desktop notifications when new messages arrive." + }, + "sound": { + "title": "Notification sound", + "description": "Play a sound when new messages arrive." + } + }, + "security": { + "cross_signing": { + "title": "Cross signing and backup" + }, + "export_import_encryption_keys": { + "title": "Export / Import encryption keys" + }, + "export_encryption_keys": { + "title": "Export E2E room keys", + "description": "Export end-to-end encryption room keys to decrypt old messages in other session. In order to encrypt keys you need to set a password, which will be used while importing." + }, + "import_encryption_keys": { + "title": "Import E2E room keys", + "description": "To decrypt older messages, Export E2EE room keys from Element (Settings > Security & Privacy > Encryption > Cryptography) and import them here. Imported keys are encrypted so you\\'ll have to enter the password you set in order to decrypt it." + } + }, + "logout": { "title": "Logout", - "description": "Are you sure that you want to logout your session?", - "confirm": "Logout" + "dialog": { + "title": "Logout", + "description": "Are you sure that you want to logout your session?", + "confirm": "Logout" + } + }, + "about": { + "application": "Application", + "credits": "Credits" } }, - "about":{ - "application": "Application", - "credits": "Credits" - } - }, - "ShortcutSpaces": { - "header": "Pin Spaces", - "pinned_spaces": "Pinned spaces", - "no_pinned_spaces": "No pinned spaces", - "unpinned_spaces": "Unpinned spaces", - "no_unpinned_spaces": "No unpinned spaces", - "spaces_selected_zero": "No selected spaces", - "spaces_selected_one": "{{count}} selected space", - "spaces_selected_other": "{{count}} selected spaces", - "pin_button": "Pin" - }, - "SecretStorageAccess": { - "incorrect_security_key": "Incorrect security key", - "incorrect_security_phrase": "Incorrect security phrase", - "security_phrase": "Security Phrase", - "security_key": "Security Key", - "use_security_key": "Use Security Key", - "use_security_phrase": "Use Security Phrase" - }, - "KeyBackup": { - "create_backup_title": "Create key backup", - "create_backup_tooltip": "Create backup", - "creating_backup": "Creating Backup...", - "backup_created": "Successfully created backup", - "backup_failed": "Failed to create backup", - "restoring": "Restoring backup keys...", - "restoring_progress": "Restoring backup keys... ({{progress}}/{{total}}", - "restore_backup_title": "Restore Key Backup", - "restore_backup_tooltip": "Restore Key Backup", - "restore_complete": "Successfully restored backup keys ({{progress}}/{{total}})", - "restore_failed_bad_key": "Failed to restore backup. Key is invalid!", - "restore_failed_unknown": "Failed to restore backup.", - "delete_key_backup_title": "Delete key backup", - "delete_key_backup_tooltip": "Delete backup", - "delete_key_backup_subtitle": "Deleting key backup is permanent.", - "delete_key_backup_message": "All encrypted message keys stored on the server will be permanently deleted.", - "encrypted_messages_backup_description": "Online backup your encrypted messages keys with your account data in case you lose access to your sessions. Your keys will be secured with a unique Security Key.", - "encrypted_messages_backup_title": "Encrypted messages backup", - "encrypted_messages_backup_cross_signing_disabled": "Setup cross signing to backup your encrypted messages." - }, - "DeviceManage": { - "edit_session_name_title": "Edit session name", - "edit_session_name_subtitle": "Session name", - "edit_session_name_tooltip": "Edit session name", - "current_device_label": "Current", - "verify_session_button": "Verify", - "unverified_sessions_title": "Unverified sessions", - "unverified_sessions_none": "No unverified sessions", - "unencrypted_sessions_title": "Sessions without encryption support", - "verified_sessions_title": "Verified sessions", - "verified_sessions_none": "No verified sessions", - "setup_cross_signing_message": "Setup cross signing in case you lose all your sessions", - "loading_devices": "Loading devices...", - "logout_device_title": "Logout {{device}}", - "logout_device_message": "You are about to log out the session for {{device}}", - "logout_device_confirm": "Logout", - "logout_device_tooltip": "Remove session", - "session_verification_title": "Session Verification", - "session_name_privacy_message": "Session names are visible to everyone, so do not put any private info here." - }, - "CrossSigning":{ - "title": "Cross Signing", - "setup_failed": "Failed to setup cross signing. Please try again", - "setup": "Setup cross signing", - "save_security_key_message": "Please save this security key somewhere safe", - "security_key_dialog_title": "Security Key", - "security_key_generation_message": "We will generate a Security Key, which you can use to manage message backups and session verification.", - "security_key_generation_button": "Generate Key", - "security_phrase_message": "Alternatively you can set a 'Security Phrase' so you don't have to remember the long Security Key, and optionally save the key as a backup", - "security_phrase_label": "Security Phrase", - "security_phrase_confirm_label": "Confirm Security Phrase", - "security_phrase_set_button": "Set Phrase & Generate Key", - "setup_dialog_title": "Setup cross signing", - "setup_message": "Setup to verify and keep track of all your sessions. Also required to backup encrypted message.", - "reset_keys_subtitle": "Resetting cross-signing keys is permanent.", - "reset_keys_message": "Anyone you have verified with will see security alerts and your message backup will lost. You almost certainly do not want to do this, unless you have lost Security Key or Phrase and every session you can cross-sign from." - - }, - "AuthRequest" : { - "wrong_password": "Wrong password. Please enter the correct password", - "request_failed": "Request failed!", - "password_label": "Account password" - }, - "Search": { - "description": "Type # for rooms, @ for DMs and * for spaces. Hotkey: Ctrl + k" - }, - "RoomViewInput":{ - "upload_progress": "Uploading: {{progress}}/{{total}} ({{percent}}%)", - "tombstone_replaced": "This room has been replaced, and is no longer active.", - "tombstone_permission_denied": "You do not have permission to post to this room", - "send_message_placeholder": "Send a message...", - "emoji_tooltip": "Emoji", - "file_size": "Size: {{size}}", - "cancel_reply_tooltip": "Cancel reply" - }, - "RoomViewHeader": { - "search_tooltip": "Search", - "people_tooltip": "People", - "members_tooltip": "Members" - }, - "RoomViewFloating": { - "jump_unread": "Jump to unread messages", - "mark_read": "Mark as read", - "jump_latest": "Jump to latest", - "user_typing_one": "{{user_one}} is typing...", - "user_typing_two": "{{user_one}} and {{user_two}} are typing...", - "user_typing_three": "{{user_one}}, {{user_two}} and {{user_three}} are typing...", - "user_typing_four": "{{user_one}}, {{user_two}}, {{user_three}} and {{user_four}} are typing...", - "user_typing_other": "Several people are typing..." - }, - "RoomViewContent": { - "welcome_to_room": "Welcome to {{room_name}}!", - "beginning_room": "This is the beginning of the {{room_name}} room.", - "beginning_dm": "This is the beginning of your direct message history with @{{user_name}}.", - "created_on": "Created on {{date, datetime}}", - "new_messages": "New messages" - }, - "RoomSettings" : { - "leave_room": "Leave room", - "leave_room_confirm_message": "Are you sure you want to leave {{room_name}}?", - "leave_room_confirm_button": "Leave", - "notification_header": "Notifications (Changing this will only affect you)", - "visibility_header": "Room visibility (Who can join)", - "address_header": "Room addresses", - "encryption_header": "Encryption", - "message_history_header": "Message history visibility", - "room_settings_subtitle": "room settings" - }, - "RoomCommon": { - "user_joined": "{{user_name}} joined the room", - "user_left": "{{user_name}} left the room", - "user_invited": "{{inviter_name}} invited {{user_name}}", - "invite_cancelled": "{{inviter_name}} cancelled {{user_name}}'s invite", - "invite_rejected": "{{user_name}} rejected the invitation", - "user_kicked": "{{actor}} kicked {{user_name}}: {{reason}}", - "user_banned": "{{actor}} banned {{user_name}}: {{reason}}", - "user_unbanned": "{{actor}} unbanned {{user_name}}", - "avatar_set": "{{user_name}} set an avatar", - "avatar_changed": "{{user_name}} changed their avatar", - "avatar_removed": "{{user_name}} removed their avatar", - "name_set": "{{user_name}} set their display name to {{new_name}}", - "name_changed": "{{user_name}} changed their display name to {{new_name}}", - "name_removed": "{{user_name}} removed their display name {{new_name}}" - }, - "PublicRooms": { - "could_not_join_alias": "Unable to join {{alias}}. Either the room is private or doesn't exist", - "try_joining_alias": "Try joining {{alias}}", - "joining_alias": "Joining {{alias}}...", - "no_public_rooms": "No public rooms on {{homeserver}}", - "no_result_found": "No result found for '{{input}}' on {{homeserver}}", - "title": "Public Rooms", - "search_room_name_alias": "Room name or alias", - "search_button": "Search", - "loading": "Loading public rooms from {{homeserver}}...", - "searching": "Searching for '{{query}}' on {{homeserver}}...", - "result_title": "Public rooms on {{homeserver}}", - "search_result_title": "Search result for '{{query}}' on {{homeserver}}" - }, - "ProfileViewer": { - "kick_button": "Kick", - "kick_reason_label": "Kick Reason", - "ban_button": "Ban", - "ban_reason_label": "Ban reason", - "loading_sessions" : "Loading sessions...", - "no_sessions_found": "No sessions found.", - "view_sessions_one": "View session", - "view_sessions_other": "View {{count}} sessions", - "send_direct_message_button": "Message", - "creating_dm_room": "Creating room...", - "ignore": "Ignore", - "ignoring": "Ignoring...", - "unignore": "Unignore", - "unignoring": "Unignoring...", - "change_power_level": "Change power level", - "shared_power_message": "You will not be able to undo this change as you are promoting the user to have the same power level as yourself. Are you sure?", - "demoting_self_message": "You will not be able to undo this change as you are demoting yourself. Are you sure?" - }, - "ProfileEditor": { - "remove_avatar": "Remove avatar", - "remove_avatar_confirmation": "Are you sure that you want to remove your avatar?", - "display_name_message": "Display name of {{user_name}}" - }, - "DrawerBreadcrumb": { - "home": "Home" - }, - "DrawerHeader" : { - "add_rooms_or_spaces": "Add rooms or spaces", - "create_new_space": "Create new space", - "create_new_room": "Create new room", - "join_public_room": "Join public room", - "join_with_address": "Join with address", - "add_existing": "Add existing", - "manage_rooms": "Manage rooms", - "home": "Home", - "direct_messages": "Direct messages", - "start_dm_tooltip": "Start DM", - "add_rooms_spaces_tooltip": "Add rooms/spaces" - }, - "SideBar": { - "settings_tooltip": "Settings", - "unverified_sessions_one": "{{count}} unverified session", - "unverified_sessions_other": "{{count}} unverified sessions", - "home_tooltip": "Home", - "direct_messages_tooltip": "People", - "pin_spaces_tooltip": "Pin spaces", - "search_tooltip": "Search", - "invites_tooltip": "Invites" - }, - "JoinAlias": { - "invalid_address": "Invalid address.", - "looking_for_address": "Looking for address...", - "joining_alias": "Joining {{alias_name}}...", - "couldnt_find_room_or_space_alias": "Unable to find room/space with {{alias_name}}. Either the room/space is private or doesn't exist.", - "couldnt_find_room_or_space": "Unable to join {{alias_name}}. Either the room/space is private or doesn't exist.", - "address_label": "Address", - "title": "Join with address" - }, - "InviteUser": { - "user_not_found": "{{user_name}} not found!", - "no_matches_found": "No matches found for {{user_name}}", - "invite_result": { - "invited": "Invited", - "already_joined": "Already joined", - "already_invited": "Already invited", - "banned": "Banned" + "ShortcutSpaces": { + "header": "Pin Spaces", + "pinned_spaces": "Pinned spaces", + "no_pinned_spaces": "No pinned spaces", + "unpinned_spaces": "Unpinned spaces", + "no_unpinned_spaces": "No unpinned spaces", + "spaces_selected_zero": "No selected spaces", + "spaces_selected_one": "{{count}} selected space", + "spaces_selected_other": "{{count}} selected spaces", + "pin_button": "Pin" }, - "search_label": "Name or User ID", - "search_result_title": "Search result for user {{user_name}}", - "searching_for_user": "Searching for user {{user_name}}...", - "invite_to_room": "Invite to {{room}}", - "invite_to_dm": "Direct Message" - }, - "InviteList": { - "accept_invite": "Accept", - "reject_invite": "Reject", - "direct_messages_title": "Direct Messages", - "rooms_title": "Rooms", - "spaces_title": "Spaces", - "title": "Invites" - }, - "EmojiVerification": { - "waiting_for_response": "Waiting for response from other device...", - "confirmation_prompt": "Confirm the emoji below are displayed on both devices, in the same order:", - "emojis_match_button": "They match", - "emojis_dont_match_button": "They don't match", - "accept_request_from_other_device_message": "Please accept the request from other device.", - "begin_verification_process_message": "Click accept to start the verification process.", - "begin_verification_button_text": "Accept", - "title": "Emoji Verification" - }, - "DragDrop": { - "drop_file_to_upload_prompt": "Drop file to upload" - }, - "CreateRoom": { - "private_room_short": "Private", - "restricted_room_short": "Restricted", - "public_room_short": "Public", - "private_room_long": "Private (invite only)", - "restricted_room_long": "Restricted (space member can join)", - "public_room_long": "Public (anyone can join)", - "visibility_title": "Visibility", - "visibility_message": "Visibility (who can join)", - "select_who_can_join_space": "Select who can join this space", - "select_who_can_join_room": "Select who can join this room", - "space_address": "Space address", - "room_address": "Room address", - "room_address_already_in_use": "{{room_address}} is already in use", - "e2e_title": "Enable end-to-end encryption", - "e2e_message": "You can’t disable this later. Bridges & most bots won’t work yet.", - "role_title": "Select your role", - "role_message": "Selecting 'Admin' sets your power level to 100 whereas 'Founder' sets it to 101.", - "creating_room": "Creating room...", - "creating_space": "Creating space...", - "topic_label": "Topic (optional)", - "space_name": "Space name", - "room_name": "Room name", - "role_admin": "Admin", - "role_founder": "Founder", - "create_room": "Create room", - "create_space": "Create space", - "home": "Home" + "SecretStorageAccess": { + "incorrect_security_key": "Incorrect security key", + "incorrect_security_phrase": "Incorrect security phrase", + "security_phrase": "Security Phrase", + "security_key": "Security Key", + "use_security_key": "Use Security Key", + "use_security_phrase": "Use Security Phrase" + }, + "KeyBackup": { + "create_backup_title": "Create key backup", + "create_backup_tooltip": "Create backup", + "creating_backup": "Creating Backup...", + "backup_created": "Successfully created backup", + "backup_failed": "Failed to create backup", + "restoring": "Restoring backup keys...", + "restoring_progress": "Restoring backup keys... ({{progress}}/{{total}}", + "restore_backup_title": "Restore Key Backup", + "restore_backup_tooltip": "Restore Key Backup", + "restore_complete": "Successfully restored backup keys ({{progress}}/{{total}})", + "restore_failed_bad_key": "Failed to restore backup. Key is invalid!", + "restore_failed_unknown": "Failed to restore backup.", + "delete_key_backup_title": "Delete key backup", + "delete_key_backup_tooltip": "Delete backup", + "delete_key_backup_subtitle": "Deleting key backup is permanent.", + "delete_key_backup_message": "All encrypted message keys stored on the server will be permanently deleted.", + "encrypted_messages_backup_description": "Online backup your encrypted messages keys with your account data in case you lose access to your sessions. Your keys will be secured with a unique Security Key.", + "encrypted_messages_backup_title": "Encrypted messages backup", + "encrypted_messages_backup_cross_signing_disabled": "Setup cross signing to backup your encrypted messages." + }, + "DeviceManage": { + "edit_session_name_title": "Edit session name", + "edit_session_name_subtitle": "Session name", + "edit_session_name_tooltip": "Edit session name", + "current_device_label": "Current", + "verify_session_button": "Verify", + "unverified_sessions_title": "Unverified sessions", + "unverified_sessions_none": "No unverified sessions", + "unencrypted_sessions_title": "Sessions without encryption support", + "verified_sessions_title": "Verified sessions", + "verified_sessions_none": "No verified sessions", + "setup_cross_signing_message": "Setup cross signing in case you lose all your sessions", + "loading_devices": "Loading devices...", + "logout_device_title": "Logout {{device}}", + "logout_device_message": "You are about to log out the session for {{device}}", + "logout_device_confirm": "Logout", + "logout_device_tooltip": "Remove session", + "session_verification_title": "Session Verification", + "session_name_privacy_message": "Session names are visible to everyone, so do not put any private info here." + }, + "CrossSigning": { + "title": "Cross Signing", + "setup_failed": "Failed to setup cross signing. Please try again", + "setup": "Setup cross signing", + "save_security_key_message": "Please save this security key somewhere safe", + "security_key_dialog_title": "Security Key", + "security_key_generation_message": "We will generate a Security Key, which you can use to manage message backups and session verification.", + "security_key_generation_button": "Generate Key", + "security_phrase_message": "Alternatively you can set a 'Security Phrase' so you don't have to remember the long Security Key, and optionally save the key as a backup", + "security_phrase_label": "Security Phrase", + "security_phrase_confirm_label": "Confirm Security Phrase", + "security_phrase_set_button": "Set Phrase & Generate Key", + "setup_dialog_title": "Setup cross signing", + "setup_message": "Setup to verify and keep track of all your sessions. Also required to backup encrypted message.", + "reset_keys_subtitle": "Resetting cross-signing keys is permanent.", + "reset_keys_message": "Anyone you have verified with will see security alerts and your message backup will lost. You almost certainly do not want to do this, unless you have lost Security Key or Phrase and every session you can cross-sign from." + }, + "AuthRequest": { + "wrong_password": "Wrong password. Please enter the correct password", + "request_failed": "Request failed!", + "password_label": "Account password" + }, + "Search": { + "description": "Type # for rooms, @ for DMs and * for spaces. Hotkey: Ctrl + k" + }, + "RoomViewInput": { + "upload_progress": "Uploading: {{progress}}/{{total}} ({{percent}}%)", + "tombstone_replaced": "This room has been replaced, and is no longer active.", + "tombstone_permission_denied": "You do not have permission to post to this room", + "send_message_placeholder": "Send a message...", + "emoji_tooltip": "Emoji", + "file_size": "Size: {{size}}", + "cancel_reply_tooltip": "Cancel reply" + }, + "RoomViewHeader": { + "search_tooltip": "Search", + "people_tooltip": "People", + "members_tooltip": "Members" + }, + "RoomViewFloating": { + "jump_unread": "Jump to unread messages", + "mark_read": "Mark as read", + "jump_latest": "Jump to latest", + "user_typing_one": "{{user_one}} is typing...", + "user_typing_two": "{{user_one}} and {{user_two}} are typing...", + "user_typing_three": "{{user_one}}, {{user_two}} and {{user_three}} are typing...", + "user_typing_four": "{{user_one}}, {{user_two}}, {{user_three}} and {{user_four}} are typing...", + "user_typing_other": "Several people are typing..." + }, + "RoomViewContent": { + "welcome_to_room": "Welcome to {{room_name}}!", + "beginning_room": "This is the beginning of the {{room_name}} room.", + "beginning_dm": "This is the beginning of your direct message history with @{{user_name}}.", + "created_on": "Created on {{date, datetime}}", + "new_messages": "New messages" + }, + "RoomSettings": { + "leave_room": "Leave room", + "leave_room_confirm_message": "Are you sure you want to leave {{room_name}}?", + "leave_room_confirm_button": "Leave", + "notification_header": "Notifications (Changing this will only affect you)", + "visibility_header": "Room visibility (Who can join)", + "address_header": "Room addresses", + "encryption_header": "Encryption", + "message_history_header": "Message history visibility", + "room_settings_subtitle": "room settings" + }, + "RoomCommon": { + "user_joined": "{{user_name}} joined the room", + "user_left": "{{user_name}} left the room", + "user_invited": "{{inviter_name}} invited {{user_name}}", + "invite_cancelled": "{{inviter_name}} cancelled {{user_name}}'s invite", + "invite_rejected": "{{user_name}} rejected the invitation", + "user_kicked": "{{actor}} kicked {{user_name}}: {{reason}}", + "user_banned": "{{actor}} banned {{user_name}}: {{reason}}", + "user_unbanned": "{{actor}} unbanned {{user_name}}", + "avatar_set": "{{user_name}} set an avatar", + "avatar_changed": "{{user_name}} changed their avatar", + "avatar_removed": "{{user_name}} removed their avatar", + "name_set": "{{user_name}} set their display name to {{new_name}}", + "name_changed": "{{user_name}} changed their display name to {{new_name}}", + "name_removed": "{{user_name}} removed their display name {{new_name}}" + }, + "PublicRooms": { + "could_not_join_alias": "Unable to join {{alias}}. Either the room is private or doesn't exist", + "try_joining_alias": "Try joining {{alias}}", + "joining_alias": "Joining {{alias}}...", + "no_public_rooms": "No public rooms on {{homeserver}}", + "no_result_found": "No result found for '{{input}}' on {{homeserver}}", + "title": "Public Rooms", + "search_room_name_alias": "Room name or alias", + "search_button": "Search", + "loading": "Loading public rooms from {{homeserver}}...", + "searching": "Searching for '{{query}}' on {{homeserver}}...", + "result_title": "Public rooms on {{homeserver}}", + "search_result_title": "Search result for '{{query}}' on {{homeserver}}" + }, + "ProfileViewer": { + "kick_button": "Kick", + "kick_reason_label": "Kick Reason", + "ban_button": "Ban", + "ban_reason_label": "Ban reason", + "loading_sessions": "Loading sessions...", + "no_sessions_found": "No sessions found.", + "view_sessions_one": "View session", + "view_sessions_other": "View {{count}} sessions", + "send_direct_message_button": "Message", + "creating_dm_room": "Creating room...", + "ignore": "Ignore", + "ignoring": "Ignoring...", + "unignore": "Unignore", + "unignoring": "Unignoring...", + "change_power_level": "Change power level", + "shared_power_message": "You will not be able to undo this change as you are promoting the user to have the same power level as yourself. Are you sure?", + "demoting_self_message": "You will not be able to undo this change as you are demoting yourself. Are you sure?" + }, + "ProfileEditor": { + "remove_avatar": "Remove avatar", + "remove_avatar_confirmation": "Are you sure that you want to remove your avatar?", + "display_name_message": "Display name of {{user_name}}" + }, + "DrawerBreadcrumb": { + "home": "Home" + }, + "DrawerHeader": { + "add_rooms_or_spaces": "Add rooms or spaces", + "create_new_space": "Create new space", + "create_new_room": "Create new room", + "join_public_room": "Join public room", + "join_with_address": "Join with address", + "add_existing": "Add existing", + "manage_rooms": "Manage rooms", + "home": "Home", + "direct_messages": "Direct messages", + "start_dm_tooltip": "Start DM", + "add_rooms_spaces_tooltip": "Add rooms/spaces" + }, + "SideBar": { + "settings_tooltip": "Settings", + "unverified_sessions_one": "{{count}} unverified session", + "unverified_sessions_other": "{{count}} unverified sessions", + "home_tooltip": "Home", + "direct_messages_tooltip": "People", + "pin_spaces_tooltip": "Pin spaces", + "search_tooltip": "Search", + "invites_tooltip": "Invites" + }, + "JoinAlias": { + "invalid_address": "Invalid address.", + "looking_for_address": "Looking for address...", + "joining_alias": "Joining {{alias_name}}...", + "couldnt_find_room_or_space_alias": "Unable to find room/space with {{alias_name}}. Either the room/space is private or doesn't exist.", + "couldnt_find_room_or_space": "Unable to join {{alias_name}}. Either the room/space is private or doesn't exist.", + "address_label": "Address", + "title": "Join with address" + }, + "InviteUser": { + "user_not_found": "{{user_name}} not found!", + "no_matches_found": "No matches found for {{user_name}}", + "invite_result": { + "invited": "Invited", + "already_joined": "Already joined", + "already_invited": "Already invited", + "banned": "Banned" + }, + "search_label": "Name or User ID", + "search_result_title": "Search result for user {{user_name}}", + "searching_for_user": "Searching for user {{user_name}}...", + "invite_to_room": "Invite to {{room}}", + "invite_to_dm": "Direct Message" + }, + "InviteList": { + "accept_invite": "Accept", + "reject_invite": "Reject", + "direct_messages_title": "Direct Messages", + "rooms_title": "Rooms", + "spaces_title": "Spaces", + "title": "Invites" + }, + "EmojiVerification": { + "waiting_for_response": "Waiting for response from other device...", + "confirmation_prompt": "Confirm the emoji below are displayed on both devices, in the same order:", + "emojis_match_button": "They match", + "emojis_dont_match_button": "They don't match", + "accept_request_from_other_device_message": "Please accept the request from other device.", + "begin_verification_process_message": "Click accept to start the verification process.", + "begin_verification_button_text": "Accept", + "title": "Emoji Verification" + }, + "DragDrop": { + "drop_file_to_upload_prompt": "Drop file to upload" + }, + "CreateRoom": { + "private_room_short": "Private", + "restricted_room_short": "Restricted", + "public_room_short": "Public", + "private_room_long": "Private (invite only)", + "restricted_room_long": "Restricted (space member can join)", + "public_room_long": "Public (anyone can join)", + "visibility_title": "Visibility", + "visibility_message": "Visibility (who can join)", + "select_who_can_join_space": "Select who can join this space", + "select_who_can_join_room": "Select who can join this room", + "space_address": "Space address", + "room_address": "Room address", + "room_address_already_in_use": "{{room_address}} is already in use", + "e2e_title": "Enable end-to-end encryption", + "e2e_message": "You can’t disable this later. Bridges & most bots won’t work yet.", + "role_title": "Select your role", + "role_message": "Selecting 'Admin' sets your power level to 100 whereas 'Founder' sets it to 101.", + "creating_room": "Creating room...", + "creating_space": "Creating space...", + "topic_label": "Topic (optional)", + "space_name": "Space name", + "room_name": "Room name", + "role_admin": "Admin", + "role_founder": "Founder", + "create_room": "Create room", + "create_space": "Create space", + "home": "Home" + } } } \ No newline at end of file diff --git a/src/app/organisms/create-room/CreateRoom.jsx b/src/app/organisms/create-room/CreateRoom.jsx index d9d7d509..5c10618d 100644 --- a/src/app/organisms/create-room/CreateRoom.jsx +++ b/src/app/organisms/create-room/CreateRoom.jsx @@ -137,8 +137,8 @@ function CreateRoomContent({ isSpace, parentId, onRequestClose }) { }; const joinRules = ['invite', 'restricted', 'public']; - const joinRuleShortText = [ t("CreateRoom.private_room_short"), t("CreateRoom.restricted_room_short"), t("CreateRoom.public_room_short")]; - const joinRuleText = [ t("CreateRoom.private_room_long"), t("CreateRoom.restricted_room_long"), t("CreateRoom.public_room_long")]; + const joinRuleShortText = [ t("Organisms.CreateRoom.private_room_short"), t("Organisms.CreateRoom.restricted_room_short"), t("Organisms.CreateRoom.public_room_short")]; + const joinRuleText = [ t("Organisms.CreateRoom.private_room_long"), t("Organisms.CreateRoom.restricted_room_long"), t("Organisms.CreateRoom.public_room_long")]; const jrRoomIC = [HashLockIC, HashIC, HashGlobeIC]; const jrSpaceIC = [SpaceLockIC, SpaceIC, SpaceGlobeIC]; const handleJoinRule = (evt) => { @@ -147,7 +147,7 @@ function CreateRoomContent({ isSpace, parentId, onRequestClose }) { getEventCords(evt, '.btn-surface'), (closeMenu) => ( <> - {t("CreateRoom.visibility_message")} + {t("Organisms.CreateRoom.visibility_message")} { joinRules.map((rule) => (
{joinRuleShortText[joinRules.indexOf(joinRule)]} )} - content={{isSpace ? t("CreateRoom.select_who_can_join_space") : t("CreateRoom.select_who_can_join_room")}} + content={{isSpace ? t("Organisms.CreateRoom.select_who_can_join_space") : t("Organisms.CreateRoom.select_who_can_join_room")}} /> {joinRule === 'public' && (
- {isSpace ? t("CreateRoom.space_address") : t("CreateRoom.room_address")} + {isSpace ? t("Organisms.CreateRoom.space_address") : t("Organisms.CreateRoom.room_address")}
# {`:${userHs}`}
- {isValidAddress === false && { t("CreateRoom.room_address_already_in_use", {room_address: `#${addressValue}:${userHs}`})}} + {isValidAddress === false && { t("Organisms.CreateRoom.room_address_already_in_use", {room_address: `#${addressValue}:${userHs}`})}}
)} {!isSpace && joinRule !== 'public' && ( } - content={ {t("CreateRoom.e2e_message")}} + content={ {t("Organisms.CreateRoom.e2e_message")}} /> )} )} content={( - {t("CreateRoom.role_message")} + {t("Organisms.CreateRoom.role_message")} )} /> - +
- +
)} {typeof creatingError === 'string' && {creatingError}} @@ -284,9 +284,9 @@ function CreateRoom() { isOpen={create !== null} title={( - {parentId ? twemojify(room.name) : t("CreateRoom.home")} + {parentId ? twemojify(room.name) : t("Organisms.CreateRoom.home")} - {` — ${isSpace ? t("CreateRoom.create_space") : t("CreateRoom.create_room")}`} + {` — ${isSpace ? t("Organisms.CreateRoom.create_space") : t("Organisms.CreateRoom.create_room")}`} )} diff --git a/src/app/organisms/drag-drop/DragDrop.jsx b/src/app/organisms/drag-drop/DragDrop.jsx index 8576325f..aae8c1c5 100644 --- a/src/app/organisms/drag-drop/DragDrop.jsx +++ b/src/app/organisms/drag-drop/DragDrop.jsx @@ -18,7 +18,7 @@ function DragDrop({ isOpen }) { overlayClassName="drag-drop__overlay" isOpen={isOpen} > - {t("DragDrop.drop_file_to_upload_prompt")} + {t("Organisms.DragDrop.drop_file_to_upload_prompt")} ); } diff --git a/src/app/organisms/emoji-verification/EmojiVerification.jsx b/src/app/organisms/emoji-verification/EmojiVerification.jsx index 9d54ba24..5fa6e080 100644 --- a/src/app/organisms/emoji-verification/EmojiVerification.jsx +++ b/src/app/organisms/emoji-verification/EmojiVerification.jsx @@ -100,14 +100,14 @@ function EmojiVerificationContent({ data, requestClose }) { const renderWait = () => ( <> - {t("EmojiVerification.waiting_for_response")} + {t("Organisms.EmojiVerification.waiting_for_response")} ); if (sas !== null) { return (
- {t("EmojiVerification.confirmation_prompt")} + {t("Organisms.EmojiVerification.confirmation_prompt")}
{sas.sas.emoji.map((emoji, i) => ( // eslint-disable-next-line react/no-array-index-key @@ -120,8 +120,8 @@ function EmojiVerificationContent({ data, requestClose }) {
{process ? renderWait() : ( <> - - + + )}
@@ -132,7 +132,7 @@ function EmojiVerificationContent({ data, requestClose }) { if (targetDevice) { return (
- {t("EmojiVerification.accept_request_from_other_device_message")} + {t("Organisms.EmojiVerification.accept_request_from_other_device_message")}
{renderWait()}
@@ -142,12 +142,12 @@ function EmojiVerificationContent({ data, requestClose }) { return (
- {t("EmojiVerification.begin_verification_process_message")} + {t("Organisms.EmojiVerification.begin_verification_process_message")}
{ process ? renderWait() - : + : }
@@ -188,7 +188,7 @@ function EmojiVerification() { className="emoji-verification" title={( - {t("EmojiVerification.title")} + {t("Organisms.EmojiVerification.title")} )} contentOptions={} diff --git a/src/app/organisms/invite-list/InviteList.jsx b/src/app/organisms/invite-list/InviteList.jsx index c94950a5..e0e8553e 100644 --- a/src/app/organisms/invite-list/InviteList.jsx +++ b/src/app/organisms/invite-list/InviteList.jsx @@ -81,8 +81,8 @@ function InviteList({ isOpen, onRequestClose }) { ? () : (
- - + +
) } @@ -93,14 +93,14 @@ function InviteList({ isOpen, onRequestClose }) { return ( } onRequestClose={onRequestClose} >
{ initMatrix.roomList.inviteDirects.size !== 0 && (
- {t("InviteList.direct_messages_title")} + {t("Organisms.InviteList.direct_messages_title")}
)} { @@ -118,8 +118,8 @@ function InviteList({ isOpen, onRequestClose }) { ? () : (
- - + +
) } @@ -129,14 +129,14 @@ function InviteList({ isOpen, onRequestClose }) { } { initMatrix.roomList.inviteSpaces.size !== 0 && (
- {t("InviteList.spaces_title")} + {t("Organisms.InviteList.spaces_title")}
)} { Array.from(initMatrix.roomList.inviteSpaces).map(renderRoomTile) } { initMatrix.roomList.inviteRooms.size !== 0 && (
- {t("InviteList.rooms_title")} + {t("Organisms.InviteList.rooms_title")}
)} { Array.from(initMatrix.roomList.inviteRooms).map(renderRoomTile) } diff --git a/src/app/organisms/invite-user/InviteUser.jsx b/src/app/organisms/invite-user/InviteUser.jsx index 56ad16fd..db52b2ec 100644 --- a/src/app/organisms/invite-user/InviteUser.jsx +++ b/src/app/organisms/invite-user/InviteUser.jsx @@ -88,7 +88,7 @@ function InviteUser({ avatar_url: result.avatar_url, }]); } catch (e) { - updateSearchQuery({error: t("InviteUser.user_not_found", {user_name: inputUsername})}); + updateSearchQuery({error: t("Organisms.InviteUser.user_not_found", {user_name: inputUsername})}); } } else { try { @@ -97,7 +97,7 @@ function InviteUser({ limit: 20, }); if (result.results.length === 0) { - updateSearchQuery({ error: t("InviteUser.no_matches_found", {user_name: inputUsername})}); + updateSearchQuery({ error: t("Organisms.InviteUser.no_matches_found", {user_name: inputUsername})}); updateIsSearching(false); return; } @@ -179,7 +179,7 @@ function InviteUser({ return ; } if (invitedUserIds.has(userId)) { - return messageJSX(t("InviteUser.invite_result.invited"), true); + return messageJSX(t("Organisms.InviteUser.invite_result.invited"), true); } if (typeof roomId === 'string') { const member = mx.getRoom(roomId).getMember(userId); @@ -187,11 +187,11 @@ function InviteUser({ const userMembership = member.membership; switch (userMembership) { case 'join': - return messageJSX(t("InviteUser.invite_result.already_joined"), true); + return messageJSX(t("Organisms.InviteUser.invite_result.already_joined"), true); case 'invite': - return messageJSX(t("InviteUser.invite_result.already_invited"), true); + return messageJSX(t("Organisms.InviteUser.invite_result.already_invited"), true); case 'ban': - return messageJSX(t("InviteUser.invite_result.banned"), false); + return messageJSX(t("Organisms.InviteUser.invite_result.banned"), false); default: } } @@ -245,13 +245,13 @@ function InviteUser({ return ( } onRequestClose={onRequestClose} >
{ e.preventDefault(); searchUser(usernameRef.current.value); }}> - +
@@ -259,13 +259,13 @@ function InviteUser({ typeof searchQuery.username !== 'undefined' && isSearching && (
- {t("InviteUser.searching_for_user", {user_name: searchQuery.username})} + {t("Organisms.InviteUser.searching_for_user", {user_name: searchQuery.username})}
) } { typeof searchQuery.username !== 'undefined' && !isSearching && ( - {t("InviteUser.search_result_title", {user_name: searchQuery.username})} + {t("Organisms.InviteUser.search_result_title", {user_name: searchQuery.username})} ) } { diff --git a/src/app/organisms/join-alias/JoinAlias.jsx b/src/app/organisms/join-alias/JoinAlias.jsx index 05e033a3..7089d8bd 100644 --- a/src/app/organisms/join-alias/JoinAlias.jsx +++ b/src/app/organisms/join-alias/JoinAlias.jsx @@ -61,10 +61,10 @@ function JoinAliasContent({ term, requestClose }) { const alias = e.target.alias.value; if (alias?.trim() === '') return; if (alias.match(ALIAS_OR_ID_REG) === null) { - setError(t("JoinAlias.invalid_address")); + setError(t("Organisms.JoinAlias.invalid_address")); return; } - setProcess(t("JoinAlias.looking_for_address")); + setProcess(t("Organisms.JoinAlias.looking_for_address")); setError(undefined); let via; if (alias.startsWith('#')) { @@ -72,12 +72,12 @@ function JoinAliasContent({ term, requestClose }) { const aliasData = await mx.resolveRoomAlias(alias); via = aliasData?.servers.slice(0, 3) || []; if (mountStore.getItem()) { - setProcess(t("JoinAlias.joining_alias", {alias_name: alias})); + setProcess(t("Organisms.JoinAlias.joining_alias", {alias_name: alias})); } } catch (err) { if (!mountStore.getItem()) return; setProcess(false); - setError(t("JoinAlias.couldnt_find_room_or_space_alias", {alias_name: alias})); + setError(t("Organisms.JoinAlias.couldnt_find_room_or_space_alias", {alias_name: alias})); } } try { @@ -88,14 +88,14 @@ function JoinAliasContent({ term, requestClose }) { } catch { if (!mountStore.getItem()) return; setProcess(false); - setError(t("JoinAlias.couldnt_find_room_or_space", {alias_name: alias})); + setError(t("Organisms.JoinAlias.couldnt_find_room_or_space", {alias_name: alias})); } }; return (
{t("JoinAlias.title")} + {t("Organisms.JoinAlias.title")} )} contentOptions={} onRequestClose={requestClose} diff --git a/src/app/organisms/navigation/DrawerBreadcrumb.jsx b/src/app/organisms/navigation/DrawerBreadcrumb.jsx index f67693bf..69375bec 100644 --- a/src/app/organisms/navigation/DrawerBreadcrumb.jsx +++ b/src/app/organisms/navigation/DrawerBreadcrumb.jsx @@ -116,7 +116,7 @@ function DrawerBreadcrumb({ spaceId }) { className={index === spacePath.length - 1 ? 'drawer-breadcrumb__btn--selected' : ''} onClick={() => selectSpace(id)} > - {id === cons.tabs.HOME ? t("DrawerBreadcrumb.home") : twemojify(mx.getRoom(id).name)} + {id === cons.tabs.HOME ? t("Organisms.DrawerBreadcrumb.home") : twemojify(mx.getRoom(id).name)} { noti !== null && ( - {t("DrawerHeader.add_rooms_or_spaces")} + {t("Organisms.DrawerHeader.add_rooms_or_spaces")} { afterOptionSelect(); openCreateRoom(true, spaceId); }} disabled={!canManage} > - {t("DrawerHeader.create_new_space")} + {t("Organisms.DrawerHeader.create_new_space")} { afterOptionSelect(); openCreateRoom(false, spaceId); }} disabled={!canManage} > - {t("DrawerHeader.create_new_room")} + {t("Organisms.DrawerHeader.create_new_room")} { !spaceId && ( { afterOptionSelect(); openPublicRooms(); }} > - {t("DrawerHeader.join_public_room")} + {t("Organisms.DrawerHeader.join_public_room")} )} { !spaceId && ( @@ -72,7 +72,7 @@ export function HomeSpaceOptions({ spaceId, afterOptionSelect }) { iconSrc={PlusIC} onClick={() => { afterOptionSelect(); openJoinAlias(); }} > - {t("DrawerHeader.join_with_address")} + {t("Organisms.DrawerHeader.join_with_address")} )} { spaceId && ( @@ -81,7 +81,7 @@ export function HomeSpaceOptions({ spaceId, afterOptionSelect }) { onClick={() => { afterOptionSelect(); openSpaceAddExisting(spaceId); }} disabled={!canManage} > - {t("DrawerHeader.add_existing")} + {t("Organisms.DrawerHeader.add_existing")} )} { spaceId && ( @@ -89,7 +89,7 @@ export function HomeSpaceOptions({ spaceId, afterOptionSelect }) { onClick={() => { afterOptionSelect(); openSpaceManage(spaceId); }} iconSrc={HashSearchIC} > - {t("DrawerHeader.manage_rooms")} + {t("Organisms.DrawerHeader.manage_rooms")} )} @@ -105,7 +105,7 @@ HomeSpaceOptions.propTypes = { function DrawerHeader({ selectedTab, spaceId }) { const mx = initMatrix.matrixClient; - const tabName = selectedTab !== cons.tabs.DIRECTS ? t("DrawerHeader.home") : t("DrawerHeader.direct_messages"); + const tabName = selectedTab !== cons.tabs.DIRECTS ? t("Organisms.DrawerHeader.home") : t("Organisms.DrawerHeader.direct_messages"); const isDMTab = selectedTab === cons.tabs.DIRECTS; const room = mx.getRoom(spaceId); @@ -149,8 +149,8 @@ function DrawerHeader({ selectedTab, spaceId }) { )} - { isDMTab && openInviteUser()} tooltip={t("DrawerHeader.start_dm_tooltip")} src={PlusIC} size="small" /> } - { !isDMTab && } + { isDMTab && openInviteUser()} tooltip={t("Organisms.DrawerHeader.start_dm_tooltip")} src={PlusIC} size="small" /> } + { !isDMTab && } ); } diff --git a/src/app/organisms/navigation/SideBar.jsx b/src/app/organisms/navigation/SideBar.jsx index 8f587b12..39a2b075 100644 --- a/src/app/organisms/navigation/SideBar.jsx +++ b/src/app/organisms/navigation/SideBar.jsx @@ -85,7 +85,7 @@ function ProfileAvatarMenu() { return ( openSettings(settingTabText.SECURITY)} avatar={} /> @@ -155,7 +155,7 @@ function FeaturedTab() { return ( <> selectTab(cons.tabs.HOME)} avatar={} @@ -167,7 +167,7 @@ function FeaturedTab() { ) : null} /> selectTab(cons.tabs.DIRECTS)} avatar={} @@ -363,7 +363,7 @@ function SideBar() {
openShortcutSpaces()} avatar={} /> @@ -375,13 +375,13 @@ function SideBar() {
openSearch()} avatar={} /> { totalInvites !== 0 && ( openInviteList()} avatar={} notificationBadge={} diff --git a/src/app/organisms/profile-editor/ProfileEditor.jsx b/src/app/organisms/profile-editor/ProfileEditor.jsx index 5eaa3b24..c45f0699 100644 --- a/src/app/organisms/profile-editor/ProfileEditor.jsx +++ b/src/app/organisms/profile-editor/ProfileEditor.jsx @@ -49,8 +49,8 @@ function ProfileEditor({ userId }) { const handleAvatarUpload = async (url) => { if (url === null) { const isConfirmed = await confirmDialog( - t("ProfileEditor.remove_avatar"), - t("ProfileViewer.remove_avatar_confirmation"), + t("Organisms.ProfileEditor.remove_avatar"), + t("Organisms.ProfileViewer.remove_avatar_confirmation"), t("common.remove"), 'caution', ); @@ -90,7 +90,7 @@ function ProfileEditor({ userId }) { onSubmit={(e) => { e.preventDefault(); saveDisplayName(); }} > {canIKick && ( - - + + )} {canIBan && (
- - + +
)}
@@ -127,8 +127,8 @@ function SessionInfo({ userId }) { if (!isVisible) return null; return (
- {devices === null && {t("ProfileViewer.loading_sessions")}} - {devices?.length === 0 && {t("ProfileViewer.no_sessions_found")}} + {devices === null && {t("Organisms.ProfileViewer.loading_sessions")}} + {devices?.length === 0 && {t("Organisms.ProfileViewer.no_sessions_found")}} {devices !== null && (devices.map((device) => ( setIsVisible(!isVisible)} iconSrc={isVisible ? ChevronBottomIC : ChevronRightIC} > - {t("ProfileViewer.view_sessions", {count: devices?.length})} + {t("Organisms.ProfileViewer.view_sessions", {count: devices?.length})} {renderSessionChips()}
@@ -261,7 +261,7 @@ function ProfileFooter({ roomId, userId, onRequestClose }) { onClick={openDM} disabled={isCreatingDM} > - {isCreatingDM ? t("ProfileViewer.creating_dm_room") : t("ProfileViewer.send_direct_message_button")} + {isCreatingDM ? t("Organisms.ProfileViewer.creating_dm_room") : t("Organisms.ProfileViewer.send_direct_message_button")} { isBanned && canIKick && (
@@ -374,14 +374,14 @@ function ProfileViewer() { const handleChangePowerLevel = async (newPowerLevel) => { if (newPowerLevel === powerLevel) return; - const SHARED_POWER_MSG = t("ProfileViewer.shared_power_message"); - const DEMOTING_MYSELF_MSG = t("ProfileViewer.demoting_self_message"); + const SHARED_POWER_MSG = t("Organisms.ProfileViewer.shared_power_message"); + const DEMOTING_MYSELF_MSG = t("Organisms.ProfileViewer.demoting_self_message"); const isSharedPower = newPowerLevel === myPowerLevel; const isDemotingMyself = userId === mx.getUserId(); if (isSharedPower || isDemotingMyself) { const isConfirmed = await confirmDialog( - t("ProfileViewer.change_power_level"), + t("Organisms.ProfileViewer.change_power_level"), isSharedPower ? SHARED_POWER_MSG : DEMOTING_MYSELF_MSG, t("common.change"), 'caution', diff --git a/src/app/organisms/public-rooms/PublicRooms.jsx b/src/app/organisms/public-rooms/PublicRooms.jsx index 970db63a..19df1cea 100644 --- a/src/app/organisms/public-rooms/PublicRooms.jsx +++ b/src/app/organisms/public-rooms/PublicRooms.jsx @@ -59,7 +59,7 @@ function TryJoinWithAlias({ alias, onRequestClose }) { } catch (e) { setStatus({ isJoining: false, - error: t("PublicRooms.could_not_join_alias", {alias: alias}), + error: t("Organisms.PublicRooms.could_not_join_alias", {alias: alias}), roomId: null, tempRoomId: null, }); @@ -69,12 +69,12 @@ function TryJoinWithAlias({ alias, onRequestClose }) { return (
{status.roomId === null && !status.isJoining && status.error === null && ( - + )} {status.isJoining && ( <> - {t("PublicRooms.joining_alias", {alias: alias})} + {t("Organisms.PublicRooms.joining_alias", {alias: alias})} )} {status.roomId !== null && ( @@ -147,8 +147,8 @@ function PublicRooms({ isOpen, searchTerm, onRequestClose }) { if (totalRooms.length === 0) { updateSearchQuery({ error: inputRoomName === '' - ? t("PublicRooms.no_public_rooms", {homeserver: inputHs}) - : t("PublicRooms.no_result_found", {homeserver: inputHs, input: inputRoomName}), + ? t("Organisms.PublicRooms.no_public_rooms", {homeserver: inputHs}) + : t("Organisms.PublicRooms.no_result_found", {homeserver: inputHs, input: inputRoomName}), alias: isInputAlias ? inputRoomName : null, }); } @@ -225,17 +225,17 @@ function PublicRooms({ isOpen, searchTerm, onRequestClose }) { return ( } onRequestClose={onRequestClose} >
{ e.preventDefault(); searchRooms(); }}>
- +
- +
{ @@ -244,13 +244,13 @@ function PublicRooms({ isOpen, searchTerm, onRequestClose }) { ? (
- {t("PublicRooms.loading", {homeserver: searchQuery.homeserver})} + {t("Organisms.PublicRooms.loading", {homeserver: searchQuery.homeserver})}
) : (
- {t("PublicRooms.searching", {homeserver: searchQuery.homeserver, query: searchQuery.name})} + {t("Organisms.PublicRooms.searching", {homeserver: searchQuery.homeserver, query: searchQuery.name})}
) ) @@ -258,8 +258,8 @@ function PublicRooms({ isOpen, searchTerm, onRequestClose }) { { typeof searchQuery.name !== 'undefined' && !isSearching && ( searchQuery.name === '' - ? {t("PublicRooms.result_title", {homeserver: searchQuery.homeserver})} - : {t("PublicRooms.search_result_title", {homeserver: searchQuery.homeserver, query: searchQuery.name})} + ? {t("Organisms.PublicRooms.result_title", {homeserver: searchQuery.homeserver})} + : {t("Organisms.PublicRooms.search_result_title", {homeserver: searchQuery.homeserver, query: searchQuery.name})} ) } { searchQuery.error && ( diff --git a/src/app/organisms/room/RoomSettings.jsx b/src/app/organisms/room/RoomSettings.jsx index dbd597f1..3504aa8e 100644 --- a/src/app/organisms/room/RoomSettings.jsx +++ b/src/app/organisms/room/RoomSettings.jsx @@ -94,9 +94,9 @@ function GeneralSettings({ roomId }) { variant="danger" onClick={async () => { const isConfirmed = await confirmDialog( - t("RoomSettings.leave_room"), - t("RoomSettings.leave_room_confirm_message", {room_name: room.name}), - t("RoomSettings.leave_room_confirm_button"), + t("Organisms.RoomSettings.leave_room"), + t("Organisms.RoomSettings.leave_room_confirm_message", {room_name: room.name}), + t("Organisms.RoomSettings.leave_room_confirm_button"), 'danger', ); if (!isConfirmed) return; @@ -108,15 +108,15 @@ function GeneralSettings({ roomId }) {
- {t("RoomSettings.notification_header")} + {t("Organisms.RoomSettings.notification_header")}
- {t("RoomSettings.visibility_header")} + {t("Organisms.RoomSettings.visibility_header")}
- {t("RoomSettings.address_header")} + {t("Organisms.RoomSettings.address_header")}
@@ -131,11 +131,11 @@ function SecuritySettings({ roomId }) { return ( <>
- {t("RoomSettings.encryption_header")} + {t("Organisms.RoomSettings.encryption_header")}
- {t("RoomSettings.message_history_header")} + {t("Organisms.RoomSettings.message_history_header")}
@@ -187,7 +187,7 @@ function RoomSettings({ roomId }) { {`${room.name}`} - — {t("RoomSettings.room_settings_subtitle")} + — {t("Organisms.RoomSettings.room_settings_subtitle")} diff --git a/src/app/organisms/room/RoomViewContent.jsx b/src/app/organisms/room/RoomViewContent.jsx index 9a5ec5c1..c856e56e 100644 --- a/src/app/organisms/room/RoomViewContent.jsx +++ b/src/app/organisms/room/RoomViewContent.jsx @@ -68,14 +68,14 @@ function RoomIntroContainer({ event, timeline }) { let avatarSrc = room.getAvatarUrl(mx.baseUrl, 80, 80, 'crop'); avatarSrc = isDM ? room.getAvatarFallbackMember()?.getAvatarUrl(mx.baseUrl, 80, 80, 'crop') : avatarSrc; - const heading = isDM ? room.name : t("RoomViewContent.welcome_to_room", {room_name: room.name}); + const heading = isDM ? room.name : t("Organisms.RoomViewContent.welcome_to_room", {room_name: room.name}); const topic = twemojify(roomTopic || '', undefined, true); const nameJsx = twemojify(room.name); const desc = isDM ? ( <> }} /> @@ -86,7 +86,7 @@ function RoomIntroContainer({ event, timeline }) { : ( <> }} /> @@ -112,7 +112,7 @@ function RoomIntroContainer({ event, timeline }) { name={room.name} heading={twemojify(heading)} desc={desc} - time={event ? t("RoomViewContent.created_on", {date: event.getDate(), formatParams: { date: { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric'}}}) : null} + time={event ? t("Organisms.RoomViewContent.created_on", {date: event.getDate(), formatParams: { date: { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric'}}}) : null} /> ); } @@ -539,7 +539,7 @@ function RoomViewContent({ eventId, roomTimeline }) { && readUptoEvent.getTs() < mEvent.getTs()); if (unreadDivider) { isNewEvent = true; - tl.push(); + tl.push(); itemCountIndex += 1; if (jumpToItemIndex === -1) jumpToItemIndex = itemCountIndex; } diff --git a/src/app/organisms/room/RoomViewFloating.jsx b/src/app/organisms/room/RoomViewFloating.jsx index bd8c1676..cda05fe8 100644 --- a/src/app/organisms/room/RoomViewFloating.jsx +++ b/src/app/organisms/room/RoomViewFloating.jsx @@ -124,17 +124,17 @@ function RoomViewFloating({ <>
0 ? ' room-view__typing--open' : ''}`}>
}} /> @@ -142,7 +142,7 @@ function RoomViewFloating({
diff --git a/src/app/organisms/room/RoomViewHeader.jsx b/src/app/organisms/room/RoomViewHeader.jsx index af4ae2c2..951f1bb2 100644 --- a/src/app/organisms/room/RoomViewHeader.jsx +++ b/src/app/organisms/room/RoomViewHeader.jsx @@ -98,9 +98,9 @@ function RoomViewHeader({ roomId }) { - toggleRoomSettings(tabText.SEARCH)} tooltip={t("RoomViewHeader.search_tooltip")} src={SearchIC} /> - - toggleRoomSettings(tabText.MEMBERS)} tooltip={t("RoomViewHeader.members_tooltip")} src={UserIC} /> + toggleRoomSettings(tabText.SEARCH)} tooltip={t("Organisms.RoomViewHeader.search_tooltip")} src={SearchIC} /> + + toggleRoomSettings(tabText.MEMBERS)} tooltip={t("Organisms.RoomViewHeader.members_tooltip")} src={UserIC} /> { tombstoneEvent - ? tombstoneEvent.getContent()?.body ?? t("RoomViewInput.tombstone_replaced") - : t("RoomViewInput.tombstone_permission_denied") + ? tombstoneEvent.getContent()?.body ?? t("Organisms.RoomViewInput.tombstone_replaced") + : t("Organisms.RoomViewInput.tombstone_permission_denied") } ); @@ -338,7 +338,7 @@ function RoomViewInput({ onChange={handleMsgTyping} onPaste={handlePaste} onKeyDown={handleKeyDown} - placeholder={t("RoomViewInput.send_message_placeholder")} + placeholder={t("Organisms.RoomViewInput.send_message_placeholder")} /> @@ -352,7 +352,7 @@ function RoomViewInput({ cords.y -= 250; openEmojiBoard(cords, addEmoji); }} - tooltip={t("RoomViewInput.emoji_tooltip")} + tooltip={t("Organisms.RoomViewInput.emoji_tooltip")} src={EmojiIC} /> @@ -373,7 +373,7 @@ function RoomViewInput({
{attachment.name} - {t("RoomViewInput.file_size", {size: bytesToSize(attachment.size)})} + {t("Organisms.RoomViewInput.file_size", {size: bytesToSize(attachment.size)})}
); @@ -388,7 +388,7 @@ function RoomViewInput({ setReplyTo(null); }} src={CrossIC} - tooltip={t("RoomViewInput.cancel_reply_tooltip")} + tooltip={t("Organisms.RoomViewInput.cancel_reply_tooltip")} size="extra-small" /> }} /> @@ -29,7 +29,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -40,7 +40,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -51,7 +51,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -62,7 +62,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -74,7 +74,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -86,7 +86,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -97,7 +97,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -108,7 +108,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -119,7 +119,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -130,7 +130,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -141,7 +141,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -152,7 +152,7 @@ function getTimelineJSXMessages() { return ( <> }} /> @@ -163,7 +163,7 @@ function getTimelineJSXMessages() { return ( <> }} /> diff --git a/src/app/organisms/search/Search.jsx b/src/app/organisms/search/Search.jsx index 14e8058c..02a11e12 100644 --- a/src/app/organisms/search/Search.jsx +++ b/src/app/organisms/search/Search.jsx @@ -229,7 +229,7 @@ function Search() {
- {t("Search.description")} + {t("Organisms.Search.description")}
diff --git a/src/app/organisms/settings/AuthRequest.jsx b/src/app/organisms/settings/AuthRequest.jsx index 3310ac30..2ddf22cd 100644 --- a/src/app/organisms/settings/AuthRequest.jsx +++ b/src/app/organisms/settings/AuthRequest.jsx @@ -45,10 +45,10 @@ function AuthRequest({ onComplete, makeRequest }) { lastUsedPassword = undefined; if (!mountStore.getItem()) return; if (err.errcode === 'M_FORBIDDEN') { - setStatus({ error: t("AuthRequest.wrong_password") }); + setStatus({ error: t("Organisms.AuthRequest.wrong_password") }); return; } - setStatus({ error: t("AuthRequest.request_failed") }); + setStatus({ error: t("Organisms.AuthRequest.request_failed") }); } }; @@ -61,7 +61,7 @@ function AuthRequest({ onComplete, makeRequest }) {
(
{twemojify('❌')} - {t("CrossSigning.setup_failed")} + {t("Organisms.CrossSigning.setup_failed")}
); openReusableDialog( - {t("CrossSigning.setup")}, + {t("Organisms.CrossSigning.setup")}, renderFailure, ); }; @@ -59,7 +59,7 @@ function CrossSigningSetup() { const renderSecurityKey = () => (
- {t("CrossSigning.save_security_key_message")} + {t("Organisms.CrossSigning.save_security_key_message")} {key.encodedPrivateKey} @@ -74,7 +74,7 @@ function CrossSigningSetup() { downloadKey(); openReusableDialog( - {t("CrossSigning.security_key_dialog_title")}, + {t("Organisms.CrossSigning.security_key_dialog_title")}, () => renderSecurityKey(), ); }; @@ -130,9 +130,9 @@ function CrossSigningSetup() {
- {t("CrossSigning.security_key_generation_message")} + {t("Organisms.CrossSigning.security_key_generation_message")} - {genWithPhrase !== false && } + {genWithPhrase !== false && } {genWithPhrase === false && }
{t("common.or")} @@ -150,13 +150,13 @@ function CrossSigningSetup() { disabled={genWithPhrase !== undefined} > - {t("CrossSigning.security_phrase_message")} + {t("Organisms.CrossSigning.security_phrase_message")} {errors.confirmPhrase && {errors.confirmPhrase}} - {genWithPhrase !== true && } + {genWithPhrase !== true && } {genWithPhrase === true && } )} @@ -193,9 +193,9 @@ function CrossSigningReset() { return (
{twemojify('✋🧑‍🚒🤚')} - {t("CrossSigning.reset_keys_subtitle")} + {t("Organisms.CrossSigning.reset_keys_subtitle")} - {t("CrossSigning.reset_keys_message")} + {t("Organisms.CrossSigning.reset_keys_message")}
@@ -215,8 +215,8 @@ function CrossSignin() { const isCSEnabled = useCrossSigningStatus(); return ( {t("CrossSigning.setup_message")}} + title={t("Organisms.CrossSigning.title")} + content={{t("Organisms.CrossSigning.setup_message")}} options={( isCSEnabled ? diff --git a/src/app/organisms/settings/DeviceManage.jsx b/src/app/organisms/settings/DeviceManage.jsx index 175ca1b7..db6591a1 100644 --- a/src/app/organisms/settings/DeviceManage.jsx +++ b/src/app/organisms/settings/DeviceManage.jsx @@ -45,7 +45,7 @@ const promptDeviceName = async (deviceName) => new Promise((resolve) => { }; return (
- +
@@ -55,7 +55,7 @@ const promptDeviceName = async (deviceName) => new Promise((resolve) => { }; openReusableDialog( - {t("DeviceManage.edit_session_name_title")}, + {t("Organisms.DeviceManage.edit_session_name_title")}, (requestClose) => renderContent((name) => { isCompleted = true; resolve(name); @@ -95,7 +95,7 @@ function DeviceManage() { }; return ( - +
@@ -105,7 +105,7 @@ function DeviceManage() { }; openReusableDialog( - {t("DeviceManage.edit_session_name_title")}, + {t("Organisms.DeviceManage.edit_session_name_title")}, (requestClose) => renderContent((name) => { isCompleted = true; resolve(name); @@ -132,7 +132,7 @@ function DeviceManage() {
- {t("DeviceManage.loading_devices")} + {t("Organisms.DeviceManage.loading_devices")}
); @@ -155,14 +155,14 @@ function DeviceManage() { const handleRemove = async (device) => { const isConfirmed = await confirmDialog( - t("DeviceManage.logout_device_title", {device: device.display_name}), - t("DeviceManage.logout_device_message", {device: device.display_name}), - t("DeviceManage.logout_device_confirm"), + t("Organisms.DeviceManage.logout_device_title", {device: device.display_name}), + t("Organisms.DeviceManage.logout_device_message", {device: device.display_name}), + t("Organisms.DeviceManage.logout_device_confirm"), 'danger', ); if (!isConfirmed) return; addToProcessing(device); - await authRequest(t("DeviceManage.logout_device_title", {device: device.display_name}), async (auth) => { + await authRequest(t("Organisms.DeviceManage.logout_device_title", {device: device.display_name}), async (auth) => { await mx.deleteDevice(device.device_id, auth); }); @@ -171,7 +171,7 @@ function DeviceManage() { }; const verifyWithKey = async (device) => { - const keyData = await accessSecretStorage(t("DeviceManage.session_verification_title")); + const keyData = await accessSecretStorage(t("Organisms.DeviceManage.session_verification_title")); if (!keyData) return; addToProcessing(device); await mx.checkOwnCrossSigningTrust(); @@ -205,7 +205,7 @@ function DeviceManage() { {displayName} {`${displayName ? ' — ' : ''}${deviceId}`} - {isCurrentDevice && {t("DeviceManage.current_device_label")}} + {isCurrentDevice && {t("Organisms.DeviceManage.current_device_label")}} )} options={ @@ -213,9 +213,9 @@ function DeviceManage() { ? : ( <> - {(isCSEnabled && canVerify) && } - handleRename(device)} src={PencilIC} tooltip={t("DeviceManage.edit_session_name_tooltip")} /> - handleRemove(device)} src={BinIC} tooltip={t("DeviceManage.logout_device_tooltip")}/> + {(isCSEnabled && canVerify) && } + handleRename(device)} src={PencilIC} tooltip={t("Organisms.DeviceManage.edit_session_name_tooltip")} /> + handleRemove(device)} src={BinIC} tooltip={t("Organisms.DeviceManage.logout_device_tooltip")}/> ) } @@ -256,38 +256,38 @@ function DeviceManage() { return (
- {t("DeviceManage.unverified_sessions_title")} + {t("Organisms.DeviceManage.unverified_sessions_title")} {!isCSEnabled && (
)} { unverified.length > 0 ? unverified.map((device) => renderDevice(device, false)) - : {t("DeviceManage.unverified_sessions_none")} + : {t("Organisms.DeviceManage.unverified_sessions_none")} }
{noEncryption.length > 0 && (
- {t("DeviceManage.unencrypted_sessions_title")} + {t("Organisms.DeviceManage.unencrypted_sessions_title")} {noEncryption.map((device) => renderDevice(device, null))}
)}
- {t("DeviceManage.verified_sessions_title")} + {t("Organisms.DeviceManage.verified_sessions_title")} { verified.length > 0 ? verified.map((device, index) => { if (truncated && index >= TRUNCATED_COUNT) return null; return renderDevice(device, true); }) - : {t("DeviceManage.verified_sessions_none")} + : {t("Organisms.DeviceManage.verified_sessions_none")} } { verified.length > TRUNCATED_COUNT && ( )} { deviceList.length > 0 && ( - {t("DeviceManage.session_name_privacy_message")} + {t("Organisms.DeviceManage.session_name_privacy_message")} )}
diff --git a/src/app/organisms/settings/KeyBackup.jsx b/src/app/organisms/settings/KeyBackup.jsx index dd5d257b..5437968b 100644 --- a/src/app/organisms/settings/KeyBackup.jsx +++ b/src/app/organisms/settings/KeyBackup.jsx @@ -66,18 +66,18 @@ function CreateKeyBackupDialog({ keyData }) { {done === false && (
- {t("KeyBackup.creating_backup")} + {t("Organisms.KeyBackup.creating_backup")}
)} {done === true && ( <> {twemojify('✅')} - {t("KeyBackup.backup_created")} + {t("Organisms.KeyBackup.backup_created")} )} {done === null && ( <> - {t("KeyBackup.backup_failed")} + {t("Organisms.KeyBackup.backup_failed")} )} @@ -108,7 +108,7 @@ function RestoreKeyBackupDialog({ keyData }) { meBreath = true; }, 200); - setStatus({ message: t("KeyBackup.restoring_progress", {progress: progress.successes, total: progress.total}) }); + setStatus({ message: t("Organisms.KeyBackup.restoring_progress", {progress: progress.successes, total: progress.total}) }); }; try { @@ -120,14 +120,14 @@ function RestoreKeyBackupDialog({ keyData }) { { progressCallback }, ); if (!mountStore.getItem()) return; - setStatus({ done: t("KeyBackup.restore_complete", {progress: info.imported, total: info.total})}); + setStatus({ done: t("Organisms.KeyBackup.restore_complete", {progress: info.imported, total: info.total})}); } catch (e) { if (!mountStore.getItem()) return; if (e.errcode === 'RESTORE_BACKUP_ERROR_BAD_KEY') { deletePrivateKey(keyData.keyId); - setStatus({ error: t("KeyBackup.restore_failed_bad_key"), errorCode: 'BAD_KEY' }); + setStatus({ error: t("Organisms.KeyBackup.restore_failed_bad_key"), errorCode: 'BAD_KEY' }); } else { - setStatus({ error: t("KeyBackup.restore_failed_unknown"), errCode: 'UNKNOWN' }); + setStatus({ error: t("Organisms.KeyBackup.restore_failed_unknown"), errCode: 'UNKNOWN' }); } } }; @@ -142,7 +142,7 @@ function RestoreKeyBackupDialog({ keyData }) { {(status === false || status.message) && (
- {status.message ?? t("KeyBackup.restoring")} + {status.message ?? t("Organisms.KeyBackup.restoring")}
)} {status.done && ( @@ -187,8 +187,8 @@ function DeleteKeyBackupDialog({ requestClose }) { return (
{twemojify('🗑')} - {t("KeyBackup.delete_key_backup_subtitle")} - {t("KeyBackup.delete_key_backup_message")} + {t("Organisms.KeyBackup.delete_key_backup_subtitle")} + {t("Organisms.KeyBackup.delete_key_backup_message")} { isDeleting ? @@ -231,28 +231,28 @@ function KeyBackup() { }, [isCSEnabled]); const openCreateKeyBackup = async () => { - const keyData = await accessSecretStorage(t('KeyBackup.create_backup_title')); + const keyData = await accessSecretStorage(t('Organisms.KeyBackup.create_backup_title')); if (keyData === null) return; openReusableDialog( - {t('KeyBackup.create_backup_title')}, + {t('Organisms.KeyBackup.create_backup_title')}, () => , () => fetchKeyBackupVersion(), ); }; const openRestoreKeyBackup = async () => { - const keyData = await accessSecretStorage(t('KeyBackup.restore_backup_title')); + const keyData = await accessSecretStorage(t('Organisms.KeyBackup.restore_backup_title')); if (keyData === null) return; openReusableDialog( - {t('KeyBackup.restore_backup_title')}, + {t('Organisms.KeyBackup.restore_backup_title')}, () => , ); }; const openDeleteKeyBackup = () => openReusableDialog( - {t('KeyBackup.delete_key_backup_title')}, + {t('Organisms.KeyBackup.delete_key_backup_title')}, (requestClose) => ( { @@ -265,28 +265,28 @@ function KeyBackup() { const renderOptions = () => { if (keyBackup === undefined) return ; - if (keyBackup === null) return ; + if (keyBackup === null) return ; return ( <> - - + + ); }; return ( - {t("KeyBackup.encrypted_messages_backup_description")} + {t("Organisms.KeyBackup.encrypted_messages_backup_description")} {!isCSEnabled && ( )} diff --git a/src/app/organisms/settings/Settings.jsx b/src/app/organisms/settings/Settings.jsx index bc8f5b16..4d6ef207 100644 --- a/src/app/organisms/settings/Settings.jsx +++ b/src/app/organisms/settings/Settings.jsx @@ -53,26 +53,26 @@ function AppearanceSection() {
Theme { toggleSystemTheme(); updateState({}); }} /> )} - content={{t("Settings.theme.follow_system.description")}} + content={{t("Organisms.Settings.theme.follow_system.description")}} /> {!settings.useSystemTheme && ( settings.setTheme(index)} /> @@ -83,34 +83,34 @@ function AppearanceSection() {
Room messages { toggleMarkdown(); updateState({}); }} /> )} - content={{t("Settings.markdown.description")}} + content={{t("Organisms.Settings.markdown.description")}} /> { toggleMembershipEvents(); updateState({}); }} /> )} - content={{t("Settings.hide_membership_events.description")}} + content={{t("Organisms.Settings.hide_membership_events.description")}} /> { toggleNickAvatarEvents(); updateState({}); }} /> )} - content={{t("Settings.hide_nickname_avatar_events.description")}} + content={{t("Organisms.Settings.hide_nickname_avatar_events.description")}} />
@@ -154,21 +154,21 @@ function NotificationsSection() { return (
- {t("Settings.notifications_and_sound.title")} + {t("Organisms.Settings.notifications_and_sound.title")} {t("Settings.notifications_and_sound.desktop.description")}} + content={{t("Organisms.Settings.notifications_and_sound.desktop.description")}} /> { toggleNotificationSounds(); updateState({}); }} /> )} - content={{t("Settings.notifications_and_sound.desktop.description")}} + content={{t("Organisms.Settings.notifications_and_sound.desktop.description")}} />
); @@ -181,27 +181,27 @@ function SecuritySection() { return (
- {t("Settings.security.cross_signing.title")} + {t("Organisms.Settings.security.cross_signing.title")}
- {t("Settings.security.export_import_encryption_keys.title")} + {t("Organisms.Settings.security.export_import_encryption_keys.title")} - {t("Settings.security.export_encryption_keys.description")} + {t("Organisms.Settings.security.export_encryption_keys.description")} )} /> - {t("Settings.security.import_encryption_keys.description")} + {t("Organisms.Settings.security.import_encryption_keys.description")} )} @@ -218,7 +218,7 @@ function AboutSection() { return (
- {t("Settings.about.application")} + {t("Organisms.Settings.about.application")}
Cinny logo
@@ -236,7 +236,7 @@ function AboutSection() {
- {t("Settings.about.credits")} + {t("Organisms.Settings.about.credits")}
  • @@ -314,7 +314,7 @@ function Settings() { const handleTabChange = (tabItem) => setSelectedTab(tabItem); const handleLogout = async () => { - if (await confirmDialog(t("Settings.logout.dialog.title"), t("Settings.logout.dialog.description"), t("Settings.logout.dialog.confirm"), 'danger')) { + if (await confirmDialog(t("Organisms.Settings.logout.dialog.title"), t("Organisms.Settings.logout.dialog.description"), t("Organisms.Settings.logout.dialog.confirm"), 'danger')) { logout(); } }; @@ -323,11 +323,11 @@ function Settings() { {t("Settings.title")}} + title={{t("Organisms.Settings.title")}} contentOptions={( <> diff --git a/src/app/organisms/shortcut-spaces/ShortcutSpaces.jsx b/src/app/organisms/shortcut-spaces/ShortcutSpaces.jsx index 6ede460d..e39abcd7 100644 --- a/src/app/organisms/shortcut-spaces/ShortcutSpaces.jsx +++ b/src/app/organisms/shortcut-spaces/ShortcutSpaces.jsx @@ -115,18 +115,18 @@ function ShortcutSpacesContent() { return ( <> - {t("ShortcutSpaces.pinned_spaces")} - {spaceShortcut.length === 0 && {t("ShortcutSpaces.no_pinned_spaces")}} + {t("Organisms.ShortcutSpaces.pinned_spaces")} + {spaceShortcut.length === 0 && {t("Organisms.ShortcutSpaces.no_pinned_spaces")}} {spaceShortcut.map((spaceId) => renderSpace(spaceId, true))} - {t("ShortcutSpaces.unpinned_spaces")} - {spaceWithoutShortcut.length === 0 && {t("ShortcutSpaces.no_unpinned_spaces")}} + {t("Organisms.ShortcutSpaces.unpinned_spaces")} + {spaceWithoutShortcut.length === 0 && {t("Organisms.ShortcutSpaces.no_unpinned_spaces")}} {spaceWithoutShortcut.map((spaceId) => renderSpace(spaceId, false))} {selected.length !== 0 && (
    {process && } - {process || t("ShortcutSpaces.spaces_selected", {count: selected.length})} + {process || t("Organisms.ShortcutSpaces.spaces_selected", {count: selected.length})} { !process && ( - + )}
    )} @@ -160,7 +160,7 @@ function ShortcutSpaces() { className="shortcut-spaces" title={( - {t("ShortcutSpaces.header")} + {t("Organisms.ShortcutSpaces.header")} )} contentOptions={} diff --git a/src/app/organisms/space-manage/SpaceManage.jsx b/src/app/organisms/space-manage/SpaceManage.jsx index e2c035c1..f81c5a16 100644 --- a/src/app/organisms/space-manage/SpaceManage.jsx +++ b/src/app/organisms/space-manage/SpaceManage.jsx @@ -120,7 +120,7 @@ function SpaceManageItem({ const roomNameJSX = ( {twemojify(name)} - • {t("SpaceManage.room_members", {count: roomInfo.num_joined_members})} + • {t("Organisms.SpaceManage.room_members", {count: roomInfo.num_joined_members})} ); @@ -148,7 +148,7 @@ function SpaceManageItem({ > {roomAvatarJSX} {roomNameJSX} - {isSuggested && {t("SpaceManage.suggested")}} + {isSuggested && {t("Organisms.SpaceManage.suggested")}} {roomInfo.topic && expandBtnJsx} { @@ -187,15 +187,15 @@ function SpaceManageFooter({ parentId, selected }) { }); const handleRemove = () => { - setProcess(t("SpaceManage.remove", {count: selected.length})); + setProcess(t("Organisms.SpaceManage.remove", {count: selected.length})); selected.forEach((roomId) => { mx.sendStateEvent(parentId, 'm.space.child', {}, roomId); }); }; const handleToggleSuggested = (isMark) => { - if (isMark) setProcess(t("SpaceManage.mark_suggested", {count: selected.length})); - else setProcess(t("SpaceManage.mark_not_suggested", {count: selected.length})); + if (isMark) setProcess(t("Organisms.SpaceManage.mark_suggested", {count: selected.length})); + else setProcess(t("Organisms.SpaceManage.mark_not_suggested", {count: selected.length})); selected.forEach((roomId) => { const sEvent = room.currentState.getStateEvents('m.space.child', roomId); if (!sEvent) return; @@ -210,7 +210,7 @@ function SpaceManageFooter({ parentId, selected }) { return (
    {process && } - {process || t("SpaceManage.items_selected", {count: selected.length})} + {process || t("Organisms.SpaceManage.items_selected", {count: selected.length})} { !process && ( <> @@ -352,11 +352,11 @@ function SpaceManageContent({ roomId, requestClose }) { {spacePath.length > 1 && ( )} - {t("SpaceManage.rooms_and_spaces")} + {t("Organisms.SpaceManage.rooms_and_spaces")}
    {!isLoading && currentHierarchy?.rooms?.length === 1 && ( - {t("SpaceManage.private_rooms_message")} + {t("Organisms.SpaceManage.private_rooms_message")} )} {currentHierarchy && (currentHierarchy.rooms?.map((roomInfo) => ( @@ -378,7 +378,7 @@ function SpaceManageContent({ roomId, requestClose }) { {!currentHierarchy && {t("common.loading")}}
    {currentHierarchy?.canLoadMore && !isLoading && ( - + )} {isLoading && (
    @@ -428,7 +428,7 @@ function SpaceManage() { title={( {roomId && twemojify(room.name)} - — {t("SpaceManage.subtitle")} + — {t("Organisms.SpaceManage.subtitle")} )} contentOptions={} diff --git a/src/app/organisms/space-settings/SpaceSettings.jsx b/src/app/organisms/space-settings/SpaceSettings.jsx index 89ba468d..2bb12b0b 100644 --- a/src/app/organisms/space-settings/SpaceSettings.jsx +++ b/src/app/organisms/space-settings/SpaceSettings.jsx @@ -83,7 +83,7 @@ function GeneralSettings({ roomId }) { }} iconSrc={isCategorized ? CategoryFilledIC : CategoryIC} > - {isCategorized ? t("SpaceSettings.uncategorize_subspaces") : t("SpaceSettings.categorize_subspaces")} + {isCategorized ? t("Organisms.SpaceSettings.uncategorize_subspaces") : t("Organisms.SpaceSettings.categorize_subspaces")} { @@ -93,30 +93,30 @@ function GeneralSettings({ roomId }) { }} iconSrc={isPinned ? PinFilledIC : PinIC} > - {isPinned ? t("SpaceSettings.unpin_sidebar") : t("SpaceSettings.pin_sidebar")} + {isPinned ? t("Organisms.SpaceSettings.unpin_sidebar") : t("Organisms.SpaceSettings.pin_sidebar")} { const isConfirmed = await confirmDialog( - t("SpaceSettings.leave.leave_dialog_title"), - t("SpaceSettings.leave.leave_dialog_message", {space: roomName}), - t("SpaceSettings.leave.leave_space"), + t("Organisms.SpaceSettings.leave.leave_dialog_title"), + t("Organisms.SpaceSettings.leave.leave_dialog_message", {space: roomName}), + t("Organisms.SpaceSettings.leave.leave_space"), 'danger', ); if (isConfirmed) leave(roomId); }} iconSrc={LeaveArrowIC} > - {t("SpaceSettings.leave.leave_space")} + {t("Organisms.SpaceSettings.leave.leave_space")}
    - {t("SpaceSettings.visibility.header")} + {t("Organisms.SpaceSettings.visibility.header")}
    - {t("SpaceSettings.addresses.header")} + {t("Organisms.SpaceSettings.addresses.header")}
    @@ -169,7 +169,7 @@ function SpaceSettings() { title={( {isOpen && twemojify(room.name)} - — {t("SpaceSettings.subtitle")} + — {t("Organisms.SpaceSettings.subtitle")} )} contentOptions={} diff --git a/src/app/organisms/view-source/ViewSource.jsx b/src/app/organisms/view-source/ViewSource.jsx index deb8b926..38d4e4c7 100644 --- a/src/app/organisms/view-source/ViewSource.jsx +++ b/src/app/organisms/view-source/ViewSource.jsx @@ -56,15 +56,15 @@ function ViewSource() { const renderViewSource = () => (
    - {event.isEncrypted() && } - + {event.isEncrypted() && } +
    ); return ( setIsOpen(false)} contentOptions={ setIsOpen(false)} tooltip={t("common.close")} />} diff --git a/src/app/organisms/welcome/Welcome.jsx b/src/app/organisms/welcome/Welcome.jsx index 1b17db60..51f9a64b 100644 --- a/src/app/organisms/welcome/Welcome.jsx +++ b/src/app/organisms/welcome/Welcome.jsx @@ -16,8 +16,8 @@ function Welcome() {
    Cinny logo - {t('Welcome.heading')} - {t('Welcome.subheading')} + {t('Organisms.Welcome.heading')} + {t('Organisms.Welcome.subheading')}
    );