Rework info messages to reflect groups v2.
This commit is contained in:
parent
ffbafc1dba
commit
bbdad34838
@ -282,7 +282,6 @@
|
||||
34BBC858220C7ADA00857249 /* ImageEditorContents.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BBC853220C7ADA00857249 /* ImageEditorContents.swift */; };
|
||||
34BBC859220C7ADA00857249 /* ImageEditorStrokeItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BBC854220C7ADA00857249 /* ImageEditorStrokeItem.swift */; };
|
||||
34BBC85A220C7ADA00857249 /* ImageEditorTextItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BBC855220C7ADA00857249 /* ImageEditorTextItem.swift */; };
|
||||
34BBC85B220C7ADA00857249 /* OrderedDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BBC856220C7ADA00857249 /* OrderedDictionary.swift */; };
|
||||
34BBC85D220D19D600857249 /* ImageEditorPanGestureRecognizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BBC85C220D19D600857249 /* ImageEditorPanGestureRecognizer.swift */; };
|
||||
34BBC861220E883300857249 /* ImageEditorModelTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BBC85F220E883200857249 /* ImageEditorModelTest.swift */; };
|
||||
34BBC862220E883300857249 /* ImageEditorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 34BBC860220E883200857249 /* ImageEditorTest.swift */; };
|
||||
@ -1154,7 +1153,6 @@
|
||||
34BBC853220C7ADA00857249 /* ImageEditorContents.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageEditorContents.swift; sourceTree = "<group>"; };
|
||||
34BBC854220C7ADA00857249 /* ImageEditorStrokeItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageEditorStrokeItem.swift; sourceTree = "<group>"; };
|
||||
34BBC855220C7ADA00857249 /* ImageEditorTextItem.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageEditorTextItem.swift; sourceTree = "<group>"; };
|
||||
34BBC856220C7ADA00857249 /* OrderedDictionary.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = OrderedDictionary.swift; sourceTree = "<group>"; };
|
||||
34BBC85C220D19D600857249 /* ImageEditorPanGestureRecognizer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageEditorPanGestureRecognizer.swift; sourceTree = "<group>"; };
|
||||
34BBC85F220E883200857249 /* ImageEditorModelTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageEditorModelTest.swift; sourceTree = "<group>"; };
|
||||
34BBC860220E883200857249 /* ImageEditorTest.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageEditorTest.swift; sourceTree = "<group>"; };
|
||||
@ -2402,7 +2400,6 @@
|
||||
34BBC84A220B2CB200857249 /* ImageEditorTextViewController.swift */,
|
||||
340872C022394CAA00CB25B0 /* ImageEditorTransform.swift */,
|
||||
34BEDB1221C43F69007B0EAE /* ImageEditorView.swift */,
|
||||
34BBC856220C7ADA00857249 /* OrderedDictionary.swift */,
|
||||
34080F03222858DC0087E99F /* OWSViewController+ImageEditor.swift */,
|
||||
346B4A762369BFC600B56007 /* PermissiveGestureRecognizer.swift */,
|
||||
);
|
||||
@ -4272,7 +4269,6 @@
|
||||
346129AB1FD1F0EE00532771 /* OWSFormat.m in Sources */,
|
||||
34AC0A12211B39EA00997B47 /* ContactTableViewCell.m in Sources */,
|
||||
451F8A461FD715BA005CB9DA /* OWSGroupAvatarBuilder.m in Sources */,
|
||||
34BBC85B220C7ADA00857249 /* OrderedDictionary.swift in Sources */,
|
||||
34C2EEB42270D1CE00BCA1D0 /* StickerView.swift in Sources */,
|
||||
346129961FD1E30000532771 /* OWSDatabaseMigration.m in Sources */,
|
||||
346129FB1FD5F31400532771 /* OWS101ExistingUsersBlockOnIdentityChange.m in Sources */,
|
||||
|
||||
@ -893,7 +893,7 @@
|
||||
/* table cell label in conversation settings */
|
||||
"DISAPPEARING_MESSAGES" = "Disappearing Messages";
|
||||
|
||||
/* Info Message when added to a group which has enabled disappearing messages. Embeds {{time amount}} before messages disappear, see the *_TIME_AMOUNT strings for context. */
|
||||
/* Info Message when added to a group which has enabled disappearing messages. Embeds {{time amount}} before messages disappear. See the *_TIME_AMOUNT strings for context. */
|
||||
"DISAPPEARING_MESSAGES_CONFIGURATION_GROUP_EXISTING_FORMAT" = "Messages in this conversation will disappear after %@.";
|
||||
|
||||
/* subheading in conversation settings */
|
||||
@ -1163,27 +1163,102 @@
|
||||
/* Title of notification shown during GRDB migration indicating that user may need to open app to view their content. */
|
||||
"GRDB_MIGRATION_NOTIFICATION_TITLE" = "Optimizing Database";
|
||||
|
||||
/* Message indicating that the access to the group's attributes was changed by the local user. Embeds {{new access level}}. */
|
||||
"GROUP_ACCESS_ATTRIBUTES_UPDATED_BY_LOCAL_USER_FORMAT" = "You changed who can edit group info to “%@“.";
|
||||
|
||||
/* Message indicating that the access to the group's attributes was changed by a remote user. Embeds {{ %1$@ user who changed the access, %2$@ new access level}}. */
|
||||
"GROUP_ACCESS_ATTRIBUTES_UPDATED_BY_REMOTE_USER_FORMAT" = "%@ changed who can edit group info to “%@“.";
|
||||
|
||||
/* Message indicating that the access to the group's attributes was changed. Embeds {{new access level}}. */
|
||||
"GROUP_ACCESS_ATTRIBUTES_UPDATED_FORMAT" = "Group info can be changed by “%@“.";
|
||||
|
||||
/* Description of the 'admins only' access level. */
|
||||
"GROUP_ACCESS_LEVEL_ADMINISTRATORS" = "Admins Only";
|
||||
|
||||
/* Description of the 'all users' access level. */
|
||||
"GROUP_ACCESS_LEVEL_ANY" = "Any User";
|
||||
|
||||
/* Description of the 'all members' access level. */
|
||||
"GROUP_ACCESS_LEVEL_MEMBER" = "All Members";
|
||||
|
||||
/* Description of the 'unknown' access level. */
|
||||
"GROUP_ACCESS_LEVEL_UNKNOWN" = "Unknown";
|
||||
|
||||
/* Message indicating that the access to the group's members was changed by the local user. Embeds {{new access level}}. */
|
||||
"GROUP_ACCESS_MEMBERS_UPDATED_BY_LOCAL_USER_FORMAT" = "You changed who can edit group membership to “%@“.";
|
||||
|
||||
/* Message indicating that the access to the group's members was changed by a remote user. Embeds {{ %1$@ user who changed the access, %2$@ new access level}}. */
|
||||
"GROUP_ACCESS_MEMBERS_UPDATED_BY_REMOTE_USER_FORMAT" = "%@ changed who can edit group membership to “%@“.";
|
||||
|
||||
/* Message indicating that the access to the group's members was changed. Embeds {{new access level}}. */
|
||||
"GROUP_ACCESS_MEMBERS_UPDATED_FORMAT" = "Group membership can be changed by “%@“.";
|
||||
|
||||
/* Error indicating that a member cannot be added to a group. */
|
||||
"GROUP_CANNOT_ADD_INVALID_MEMBER" = "This user cannot be added to the group.";
|
||||
|
||||
/* conversation history entry */
|
||||
"GROUP_CREATED" = "Group created.";
|
||||
|
||||
/* conversation history entry when the local user created a group */
|
||||
/* Message indicating that group was created by the local user. */
|
||||
"GROUP_CREATED_BY_LOCAL_USER" = "You created the group.";
|
||||
|
||||
/* conversation history entry after a remote user added you to a group. Embeds {{remote user name}} */
|
||||
/* Message indicating that group was created by another user. Embeds {{remote user name}}. */
|
||||
"GROUP_CREATED_BY_REMOTE_USER_FORMAT" = "%@ added you to the group.";
|
||||
|
||||
/* Message indicating that group was created by an unknown user. */
|
||||
"GROUP_CREATED_BY_UNKNOWN_USER" = "Group was created.";
|
||||
|
||||
/* Message shown in conversation view that indicates there were issues with group creation. */
|
||||
"GROUP_CREATION_FAILED" = "Not all members could be added to the group. Tap to retry.";
|
||||
|
||||
/* Message indicating that the local user was added to the group by another user. Embeds {{remote user name}}. */
|
||||
"GROUP_LOCAL_USER_ADDED_TO_GROUP_BY_REMOTE_USER_FORMAT" = "%@ added you.";
|
||||
|
||||
/* Message indicating that the local user was granted administrator role. */
|
||||
"GROUP_LOCAL_USER_GRANTED_ADMINISTRATOR" = "You are now an admin.";
|
||||
|
||||
/* Message indicating that the local user was granted administrator role by another user. Embeds {{remote user name}}. */
|
||||
"GROUP_LOCAL_USER_GRANTED_ADMINISTRATOR_BY_REMOTE_USER_FORMAT" = "%@ made you an admin.";
|
||||
|
||||
/* Message indicating that the local user accepted an invite to the group. */
|
||||
"GROUP_LOCAL_USER_INVITE_ACCEPTED" = "You accepted an invitation to the group.";
|
||||
|
||||
/* Message indicating that the local user accepted an invite to the group. Embeds {{user who invited the local user}}. */
|
||||
"GROUP_LOCAL_USER_INVITE_ACCEPTED_FORMAT" = "You accepted an invitation to the group from $@.";
|
||||
|
||||
/* Message indicating that the local user declined an invite to the group. */
|
||||
"GROUP_LOCAL_USER_INVITE_DECLINED_BY_LOCAL_USER" = "You declined an invitation to the group.";
|
||||
|
||||
/* Message indicating that the local user declined an invite to the group. Embeds {{user who invited the local user}}. */
|
||||
"GROUP_LOCAL_USER_INVITE_DECLINED_FORMAT" = "You declined an invitation to the group from $@.";
|
||||
|
||||
/* Message indicating that the local user's invite was revoked by another user. Embeds {{remote user name}}. */
|
||||
"GROUP_LOCAL_USER_INVITE_REVOKED_BY_REMOTE_USER_FORMAT" = "%@ revoked your invitation to the group.";
|
||||
|
||||
/* Message indicating that the local user's invite was revoked by an unknown user. */
|
||||
"GROUP_LOCAL_USER_INVITE_REVOKED_BY_UNKNOWN_USER" = "Your invitation to the group was revoked.";
|
||||
|
||||
/* Message indicating that the local user was invited to the group by another user. Embeds {{remote user name}}. */
|
||||
"GROUP_LOCAL_USER_INVITED_BY_REMOTE_USER_FORMAT" = "%@ invited you.";
|
||||
|
||||
/* Message indicating that the local user was invited to the group. */
|
||||
"GROUP_LOCAL_USER_INVITED_TO_THE_GROUP" = "You were invited to the group.";
|
||||
|
||||
/* Message indicating that the local user has joined the group. */
|
||||
"GROUP_LOCAL_USER_JOINED_THE_GROUP" = "You joined the group.";
|
||||
|
||||
/* Message indicating that the local user was removed from the group by another user. Embeds {{remote user name}}. */
|
||||
"GROUP_LOCAL_USER_REMOVED_BY_REMOTE_USER_FORMAT" = "%@ removed you.";
|
||||
|
||||
/* Message indicating that the local user was removed from the group by an unknown user. */
|
||||
"GROUP_LOCAL_USER_REMOVED_BY_UNKNOWN_USER" = "You were removed from the group.";
|
||||
|
||||
/* Message indicating that the local user had their administrator role revoked. */
|
||||
"GROUP_LOCAL_USER_REVOKED_ADMINISTRATOR" = "Your admin privileges were revoked.";
|
||||
|
||||
/* Message indicating that the local user had their administrator role revoked by another user. Embeds {{remote user name}}. */
|
||||
"GROUP_LOCAL_USER_REVOKED_ADMINISTRATOR_BY_REMOTE_USER_FORMAT" = "%@ revoked your admin privileges.";
|
||||
|
||||
/* Conversation settings table section title */
|
||||
"GROUP_MANAGEMENT_SECTION" = "Group Management";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
"GROUP_MEMBER_LEFT" = " %@ left the group. ";
|
||||
|
||||
/* Button label for the 'call group member' button */
|
||||
"GROUP_MEMBERS_CALL" = "Call";
|
||||
|
||||
@ -1202,37 +1277,139 @@
|
||||
/* Button label for the 'send message to group member' button */
|
||||
"GROUP_MEMBERS_SEND_MESSAGE" = "Message";
|
||||
|
||||
/* conversation history entry */
|
||||
/* Message indicating that a remote user has accepted their invite. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_ACCEPTED_INVITE_FORMAT" = "%@ accepted an invitation to the group.";
|
||||
|
||||
/* Message indicating that a remote user has accepted an invite from the local user. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_ACCEPTED_INVITE_FROM_LOCAL_USER_FORMAT" = "%@ accepted your invitation to the group.";
|
||||
|
||||
/* Message indicating that a remote user has accepted their invite. Embeds {{ %1$@ user who accepted their invite, %2$@ user who invited the user}}. */
|
||||
"GROUP_REMOTE_USER_ACCEPTED_INVITE_FROM_REMOTE_USER_FORMAT" = "%1$@ accepted an invitation to the group from %2$@.";
|
||||
|
||||
/* Message indicating that a remote user was added to the group by the local user. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_ADDED_TO_GROUP_BY_LOCAL_USER_FORMAT" = "You added %@.";
|
||||
|
||||
/* Message indicating that a remote user was added to the group by another user. Embeds {{ %1$@ user who added the user, %2$@ user who was added}}. */
|
||||
"GROUP_REMOTE_USER_ADDED_TO_GROUP_BY_REMOTE_USER_FORMAT" = "%1$@ added %2$@.";
|
||||
|
||||
/* Message indicating that a remote user was added to the group. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_ADDED_TO_GROUP_FORMAT" = "%@ was added to the group.";
|
||||
|
||||
/* Message indicating that a remote user has declined their invite. */
|
||||
"GROUP_REMOTE_USER_DECLINED_INVITE" = "1 person declined the invitation to the group.";
|
||||
|
||||
/* Message indicating that a remote user has declined their invite. Embeds {{ user who invited them }}. */
|
||||
"GROUP_REMOTE_USER_DECLINED_INVITE_FORMAT" = "1 person invited by %@ declined the invitation to the group.";
|
||||
|
||||
/* Message indicating that a remote user has declined an invite to the group from the local user. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_DECLINED_INVITE_FROM_LOCAL_USER_FORMAT" = "%@ declined your invitation to the group.";
|
||||
|
||||
/* Message indicating that a remote user was granted administrator role. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_GRANTED_ADMINISTRATOR" = "%@ is now an admin";
|
||||
|
||||
/* Message indicating that a remote user was granted administrator role by local user. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_GRANTED_ADMINISTRATOR_BY_LOCAL_USER" = "You made %@ an admin.";
|
||||
|
||||
/* Message indicating that a remote user was granted administrator role by another user. Embeds {{ %1$@ user who granted, %2$@ user who was granted administrator role}}. */
|
||||
"GROUP_REMOTE_USER_GRANTED_ADMINISTRATOR_BY_REMOTE_USER_FORMAT" = "%1$@ made %2$@ an admin.";
|
||||
|
||||
/* Message indicating that a single remote user's invite was revoked. */
|
||||
"GROUP_REMOTE_USER_INVITE_REVOKED_1" = "Invitation to the group was revoked for 1 person.";
|
||||
|
||||
/* Message indicating that a remote user's invite was revoked by the local user. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_INVITE_REVOKED_BY_LOCAL_USER_FORMAT" = "Invitation to the group was revoked for %@.";
|
||||
|
||||
/* Message indicating that a single remote user's invite was revoked by a remote user. Embeds {{ user who revoked the invite }}. */
|
||||
"GROUP_REMOTE_USER_INVITE_REVOKED_BY_REMOTE_USER_1_FORMAT" = "%@ revoked an invitation to the group for 1 person.";
|
||||
|
||||
/* Message indicating that a group of remote users' invites were revoked by a remote user. Embeds {{ %1$@ user who revoked the invite, %2$@ number of users }}. */
|
||||
"GROUP_REMOTE_USER_INVITE_REVOKED_BY_REMOTE_USER_N_FORMAT" = "%1$@ revoked an invitation to the group for %2$@ people.";
|
||||
|
||||
/* Message indicating that a group of remote users' invites were revoked. Embeds {{ number of users }}. */
|
||||
"GROUP_REMOTE_USER_INVITE_REVOKED_N_FORMAT" = "Invitations to the group were revoked for %@ people.";
|
||||
|
||||
/* Message indicating that a single remote user was invited to the group. */
|
||||
"GROUP_REMOTE_USER_INVITED_1" = "1 person was invited to the group.";
|
||||
|
||||
/* Message indicating that a remote user was invited to the group by the local user. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_INVITED_BY_LOCAL_USER_FORMAT" = "You invited %@ to the group.";
|
||||
|
||||
/* Message indicating that a single remote user was invited to the group by the local user. Embeds {{ user who invited the user }}. */
|
||||
"GROUP_REMOTE_USER_INVITED_BY_REMOTE_USER_1_FORMAT" = "%@ invited 1 person to the group.";
|
||||
|
||||
/* Message indicating that a group of remote users were invited to the group by the local user. Embeds {{ %1$@ user who invited the user, %2$@ number of invited users }}. */
|
||||
"GROUP_REMOTE_USER_INVITED_BY_REMOTE_USER_N_FORMAT" = "%1$@ invited %2$@ people to the group.";
|
||||
|
||||
/* Message indicating that a group of remote users were invited to the group. Embeds {{number of invited users}}. */
|
||||
"GROUP_REMOTE_USER_INVITED_N_FORMAT" = "%@ people were invited to the group.";
|
||||
|
||||
/* Message indicating that a remote user was added to the group. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_JOINED_GROUP_FORMAT" = "%@ joined the group.";
|
||||
|
||||
/* Message indicating that a remote user has left the group. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_LEFT_GROUP_FORMAT" = "%@ left the group.";
|
||||
|
||||
/* Message indicating that a remote user was removed from the group by the local user. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_REMOVED_BY_LOCAL_USER_FORMAT" = "You removed %@.";
|
||||
|
||||
/* Message indicating that the remote user was removed from the group. Embeds {{ %1$@ user who removed the user, %2$@ user who was removed}}. */
|
||||
"GROUP_REMOTE_USER_REMOVED_FROM_GROUP_BY_REMOTE_USER_FORMAT" = "%1$@ removed %2$@.";
|
||||
|
||||
/* Message indicating that a remote user had their administrator role revoked. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_REVOKED_ADMINISTRATOR" = "%@ had their admin privileges revoked.";
|
||||
|
||||
/* Message indicating that a remote user had their administrator role revoked by local user. Embeds {{remote user name}}. */
|
||||
"GROUP_REMOTE_USER_REVOKED_ADMINISTRATOR_BY_LOCAL_USER" = "You revoked admin privileges from %@.";
|
||||
|
||||
/* Message indicating that a remote user had their administrator role revoked by another user. Embeds {{ %1$@ user who revoked, %2$@ user who was granted administrator role}}. */
|
||||
"GROUP_REMOTE_USER_REVOKED_ADMINISTRATOR_BY_REMOTE_USER_FORMAT" = "%1$@ revoked admin privileges from %2$@.";
|
||||
|
||||
/* Info message indicating that the group was updated by an unknown user. */
|
||||
"GROUP_UPDATED" = "Group updated.";
|
||||
|
||||
/* conversation history entry. embeds {0: all but the final member} and {1: the final member} */
|
||||
"GROUP_UPDATED_ADDED_MULTIPLE_MEMBERS_FORMAT" = "%@ and %@ joined the group.";
|
||||
/* Message indicating that the group's avatar was removed. */
|
||||
"GROUP_UPDATED_AVATAR_REMOVED" = "The group avatar was removed.";
|
||||
|
||||
/* conversation history entry. Embeds the {{added user's name}} */
|
||||
"GROUP_UPDATED_ADDED_ONE_MEMBER_FORMAT" = "%@ joined the group.";
|
||||
/* Message indicating that the group's avatar was removed. */
|
||||
"GROUP_UPDATED_AVATAR_REMOVED_BY_LOCAL_USER" = "You removed the avatar.";
|
||||
|
||||
/* conversation history entry */
|
||||
"GROUP_UPDATED_AVATAR_REMOVED" = "Removed the group avatar.";
|
||||
/* Message indicating that the group's avatar was removed by a remote user. Embeds {{user who removed the avatar}}. */
|
||||
"GROUP_UPDATED_AVATAR_REMOVED_BY_REMOTE_USER_FORMAT" = "%@ removed the avatar.";
|
||||
|
||||
/* conversation history entry */
|
||||
/* Message indicating that the group's avatar was changed. */
|
||||
"GROUP_UPDATED_AVATAR_UPDATED" = "Updated the group avatar.";
|
||||
|
||||
/* conversation history entry. */
|
||||
/* Message indicating that the group's avatar was changed. */
|
||||
"GROUP_UPDATED_AVATAR_UPDATED_BY_LOCAL_USER" = "You updated the avatar.";
|
||||
|
||||
/* Message indicating that the group's avatar was changed by a remote user. Embeds {{user who changed the avatar}}. */
|
||||
"GROUP_UPDATED_AVATAR_UPDATED_BY_REMOTE_USER_FORMAT" = "%@ updated the avatar.";
|
||||
|
||||
/* Info message indicating that the group was updated by the local user. */
|
||||
"GROUP_UPDATED_BY_LOCAL_USER" = "You updated the group.";
|
||||
|
||||
/* conversation history entry. Embeds {{remote user's name}} */
|
||||
/* Info message indicating that the group was updated by another user. Embeds {{remote user name}}. */
|
||||
"GROUP_UPDATED_BY_REMOTE_USER_FORMAT" = "%@ updated the group.";
|
||||
|
||||
/* conversation history entry */
|
||||
"GROUP_UPDATED_NAME_REMOVED" = "Removed the name.";
|
||||
/* Message indicating that the group's name was removed. */
|
||||
"GROUP_UPDATED_NAME_REMOVED" = "The group name was removed.";
|
||||
|
||||
/* conversation history entry. Embeds {{group name}} */
|
||||
/* Message indicating that the group's name was removed by the local user. */
|
||||
"GROUP_UPDATED_NAME_REMOVED_BY_LOCAL_USER" = "You removed the group name.";
|
||||
|
||||
/* Message indicating that the group's name was removed by a remote user. Embeds {{user who removed the name}}. */
|
||||
"GROUP_UPDATED_NAME_REMOVED_BY_REMOTE_USER_FORMAT" = "%@ removed the group name.";
|
||||
|
||||
/* Message indicating that the group's name was changed by the local user. Embeds {{new group name}}. */
|
||||
"GROUP_UPDATED_NAME_UPDATED_BY_LOCAL_USER_FORMAT" = "You changed the group name to “%@“.";
|
||||
|
||||
/* Message indicating that the group's name was changed by a remote user. Embeds {{ %1$@ user who changed the name, %2$@ new group name}}. */
|
||||
"GROUP_UPDATED_NAME_UPDATED_BY_REMOTE_USER_FORMAT" = "%1$@ changed the group name to “%2$@“.";
|
||||
|
||||
/* Message indicating that the group's name was changed. Embeds {{new group name}}. */
|
||||
"GROUP_UPDATED_NAME_UPDATED_FORMAT" = "Group name is now “%@”.";
|
||||
|
||||
/* conversation history entry */
|
||||
"GROUP_UPDATED_READDED_YOU" = "Re-added you to the group.";
|
||||
|
||||
/* No comment provided by engineer. */
|
||||
/* Message indicating that the local user left the group. */
|
||||
"GROUP_YOU_LEFT" = "You have left the group.";
|
||||
|
||||
/* Error indicating that an error occurred while accepting an invite. */
|
||||
@ -1979,10 +2156,10 @@
|
||||
/* Button text which opens the settings app */
|
||||
"OPEN_SETTINGS_BUTTON" = "Settings";
|
||||
|
||||
/* Info Message when {{other user}} disables or doesn't support disappearing messages */
|
||||
/* Info Message when another user disabled disappearing messages. Embeds {{name of other user}}. */
|
||||
"OTHER_DISABLED_DISAPPEARING_MESSAGES_CONFIGURATION" = "%@ disabled disappearing messages.";
|
||||
|
||||
/* Info Message when {{other user}} updates message expiration to {{time amount}}, see the *_TIME_AMOUNT strings for context. */
|
||||
/* Info Message when another user enabled disappearing messages. Embeds {{name of other user}} and {{time amount}} before messages disappear. See the *_TIME_AMOUNT strings for context. */
|
||||
"OTHER_UPDATED_DISAPPEARING_MESSAGES_CONFIGURATION" = "%@ set disappearing message time to %@.";
|
||||
|
||||
/* Label warning the user that the Signal service may be down. */
|
||||
@ -2171,6 +2348,9 @@
|
||||
/* Body for PIN megaphone when user already has a PIN */
|
||||
"PINS_MEGAPHONE_HAS_PIN_BODY" = "Your Registration Lock is now called a PIN. Updating it takes seconds.";
|
||||
|
||||
/* Toast indication that the user will be reminded later to update their PIN. Embeds {{time until mandatory}} */
|
||||
"PINS_MEGAPHONE_HAS_PIN_SNOOZE_TOAST_FORMAT" = "PINS_MEGAPHONE_HAS_PIN_SNOOZE_TOAST_FORMAT";
|
||||
|
||||
/* Title for PIN megaphone when user already has a PIN */
|
||||
"PINS_MEGAPHONE_HAS_PIN_TITLE" = "Introducing PINs";
|
||||
|
||||
@ -2180,6 +2360,9 @@
|
||||
/* Body for PIN megaphone when user doesn't have a PIN */
|
||||
"PINS_MEGAPHONE_NO_PIN_BODY" = "PINs add another layer of security to your Signal account.";
|
||||
|
||||
/* Toast indication that the user will be reminded later to setup their PIN. Embeds {{time until mandatory}} */
|
||||
"PINS_MEGAPHONE_NO_PIN_SNOOZE_TOAST_FORMAT" = "PINS_MEGAPHONE_NO_PIN_SNOOZE_TOAST_FORMAT";
|
||||
|
||||
/* Title for PIN megaphone when user doesn't have a PIN */
|
||||
"PINS_MEGAPHONE_NO_PIN_TITLE" = "Create a PIN";
|
||||
|
||||
@ -3170,6 +3353,12 @@
|
||||
/* Info message recorded in conversation history when local user has received an unknown message and has upgraded. */
|
||||
"UNKNOWN_PROTOCOL_VERSION_UPGRADE_COMPLETE_WITHOUT_NAME" = "You can ask the sender to re-send this message now that you are using an up-to-date version of Signal.";
|
||||
|
||||
/* Info Message when an unknown user disabled disappearing messages. */
|
||||
"UNKNOWN_USER_DISABLED_DISAPPEARING_MESSAGES_CONFIGURATION" = "Disappearing messages were disabled.";
|
||||
|
||||
/* Info Message when an unknown user enabled disappearing messages. Embeds {{time amount}} before messages disappear. see the *_TIME_AMOUNT strings for context. */
|
||||
"UNKNOWN_USER_UPDATED_DISAPPEARING_MESSAGES_CONFIGURATION" = "Disappearing message time was set to %@.";
|
||||
|
||||
/* Indicates an unknown or unrecognizable value. */
|
||||
"UNKNOWN_VALUE" = "Unknown";
|
||||
|
||||
@ -3329,11 +3518,11 @@
|
||||
/* Activity indicator title, shown upon returning to the device manager, until you complete the provisioning process on desktop */
|
||||
"WAITING_TO_COMPLETE_DEVICE_LINK_TEXT" = "Complete setup on Signal Desktop.";
|
||||
|
||||
/* Info Message when you disable disappearing messages */
|
||||
/* Info Message when you disabled disappearing messages. */
|
||||
"YOU_DISABLED_DISAPPEARING_MESSAGES_CONFIGURATION" = "You disabled disappearing messages.";
|
||||
|
||||
/* alert body shown when trying to use features in the app before completing registration-related setup. */
|
||||
"YOU_MUST_COMPLETE_ONBOARDING_BEFORE_PROCEEDING" = "You must complete setup before proceeding.";
|
||||
|
||||
/* Info message embedding a {{time amount}}, see the *_TIME_AMOUNT strings for context. */
|
||||
/* Info Message when you disabled disappearing messages. Embeds a {{time amount}} before messages disappear. see the *_TIME_AMOUNT strings for context. */
|
||||
"YOU_UPDATED_DISAPPEARING_MESSAGES_CONFIGURATION" = "You set disappearing message time to %@.";
|
||||
|
||||
@ -11,6 +11,7 @@ public class DisappearingMessageToken: MTLModel {
|
||||
@objc
|
||||
public var durationSeconds: UInt32 = 0
|
||||
|
||||
@objc
|
||||
public init(isEnabled: Bool, durationSeconds: UInt32) {
|
||||
// Consider disabled if duration is zero.
|
||||
self.isEnabled = isEnabled && durationSeconds > 0
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
#import "OWSDisappearingConfigurationUpdateInfoMessage.h"
|
||||
#import "OWSDisappearingMessagesConfiguration.h"
|
||||
#import <SignalCoreKit/NSString+OWS.h>
|
||||
#import <SignalServiceKit/SignalServiceKit-Swift.h>
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@ -134,43 +135,12 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
- (NSString *)previewTextWithTransaction:(SDSAnyReadTransaction *)transaction
|
||||
{
|
||||
if (self.createdInExistingGroup) {
|
||||
OWSAssertDebug(self.configurationIsEnabled && self.configurationDurationSeconds > 0);
|
||||
NSString *infoFormat = NSLocalizedString(@"DISAPPEARING_MESSAGES_CONFIGURATION_GROUP_EXISTING_FORMAT",
|
||||
@"Info Message when added to a group which has enabled disappearing messages. Embeds {{time amount}} "
|
||||
@"before messages disappear, see the *_TIME_AMOUNT strings for context.");
|
||||
|
||||
NSString *durationString = [NSString formatDurationSeconds:self.configurationDurationSeconds useShortFormat:NO];
|
||||
return [NSString stringWithFormat:infoFormat, durationString];
|
||||
} else if (self.createdByRemoteName) {
|
||||
if (self.configurationIsEnabled && self.configurationDurationSeconds > 0) {
|
||||
NSString *infoFormat = NSLocalizedString(@"OTHER_UPDATED_DISAPPEARING_MESSAGES_CONFIGURATION",
|
||||
@"Info Message when {{other user}} updates message expiration to {{time amount}}, see the "
|
||||
@"*_TIME_AMOUNT "
|
||||
@"strings for context.");
|
||||
|
||||
NSString *durationString =
|
||||
[NSString formatDurationSeconds:self.configurationDurationSeconds useShortFormat:NO];
|
||||
return [NSString stringWithFormat:infoFormat, self.createdByRemoteName, durationString];
|
||||
} else {
|
||||
NSString *infoFormat = NSLocalizedString(@"OTHER_DISABLED_DISAPPEARING_MESSAGES_CONFIGURATION",
|
||||
@"Info Message when {{other user}} disables or doesn't support disappearing messages");
|
||||
return [NSString stringWithFormat:infoFormat, self.createdByRemoteName];
|
||||
}
|
||||
} else {
|
||||
// Changed by localNumber on this device or via synced transcript
|
||||
if (self.configurationIsEnabled && self.configurationDurationSeconds > 0) {
|
||||
NSString *infoFormat = NSLocalizedString(@"YOU_UPDATED_DISAPPEARING_MESSAGES_CONFIGURATION",
|
||||
@"Info message embedding a {{time amount}}, see the *_TIME_AMOUNT strings for context.");
|
||||
|
||||
NSString *durationString =
|
||||
[NSString formatDurationSeconds:self.configurationDurationSeconds useShortFormat:NO];
|
||||
return [NSString stringWithFormat:infoFormat, durationString];
|
||||
} else {
|
||||
return NSLocalizedString(@"YOU_DISABLED_DISAPPEARING_MESSAGES_CONFIGURATION",
|
||||
@"Info Message when you disable disappearing messages");
|
||||
}
|
||||
}
|
||||
DisappearingMessageToken *newToken =
|
||||
[[DisappearingMessageToken alloc] initWithIsEnabled:self.configurationIsEnabled
|
||||
durationSeconds:self.configurationDurationSeconds];
|
||||
return [TSInfoMessage legacyDisappearingMessageUpdateDescriptionWithToken:newToken
|
||||
wasAddedToExistingGroup:self.createdInExistingGroup
|
||||
updaterName:self.createdByRemoteName];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
//
|
||||
// Copyright (c) 2019 Open Whisper Systems. All rights reserved.
|
||||
// Copyright (c) 2020 Open Whisper Systems. All rights reserved.
|
||||
//
|
||||
|
||||
import Foundation
|
||||
@ -103,3 +103,38 @@ public class OrderedDictionary<KeyType: Hashable, ValueType> {
|
||||
return values
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: -
|
||||
|
||||
extension OrderedDictionary: Sequence {
|
||||
public typealias Iterator = AnyIterator<(KeyType, ValueType)>
|
||||
|
||||
struct OrderedDictionaryIterator {
|
||||
private let keys: [KeyType]
|
||||
private let map: [KeyType: ValueType]
|
||||
private var index: Int = 0
|
||||
|
||||
fileprivate init(keys: [KeyType], map: [KeyType: ValueType]) {
|
||||
self.keys = keys
|
||||
self.map = map
|
||||
}
|
||||
|
||||
mutating func next() -> (KeyType, ValueType)? {
|
||||
guard index < keys.count else {
|
||||
return nil
|
||||
}
|
||||
let key = keys[index]
|
||||
index += 1
|
||||
guard let value = map[key] else {
|
||||
owsFailDebug("Missing value for key.")
|
||||
return nil
|
||||
}
|
||||
return (key, value)
|
||||
}
|
||||
}
|
||||
|
||||
public func makeIterator() -> Iterator {
|
||||
var iterator = OrderedDictionaryIterator(keys: orderedKeys, map: keyValueMap)
|
||||
return AnyIterator { iterator.next() }
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user