Merge pull request #6860 from vector-im/aleksandrs/6838_filter_sessions

Device Manager: Filter sessions
This commit is contained in:
Aleksandrs Proskurins
2022-10-12 15:27:42 +03:00
committed by GitHub
22 changed files with 412 additions and 57 deletions
@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "user_other_sessions_filter.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
@@ -0,0 +1,3 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M11 18H13C13.55 18 14 17.55 14 17C14 16.45 13.55 16 13 16H11C10.45 16 10 16.45 10 17C10 17.55 10.45 18 11 18ZM3 7C3 7.55 3.45 8 4 8H20C20.55 8 21 7.55 21 7C21 6.45 20.55 6 20 6H4C3.45 6 3 6.45 3 7ZM7 13H17C17.55 13 18 12.55 18 12C18 11.45 17.55 11 17 11H7C6.45 11 6 11.45 6 12C6 12.55 6.45 13 7 13Z" fill="#0DBD8B"/>
</svg>

After

Width:  |  Height:  |  Size: 429 B

@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "user_other_sessions_filter_selected.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
@@ -0,0 +1,6 @@
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M13 6H4C3.45 6 3 6.45 3 7C3 7.55 3.45 8 4 8H13.3414C13.1203 7.37444 13 6.70127 13 6Z" fill="#0DBD8B"/>
<path d="M15.6822 11C16.3676 11.4557 17.1521 11.7743 17.9965 11.9165C17.9988 11.944 18 11.9719 18 12C18 12.55 17.55 13 17 13H7C6.45 13 6 12.55 6 12C6 11.45 6.45 11 7 11H15.6822Z" fill="#0DBD8B"/>
<path d="M11 18H13C13.55 18 14 17.55 14 17C14 16.45 13.55 16 13 16H11C10.45 16 10 16.45 10 17C10 17.55 10.45 18 11 18Z" fill="#0DBD8B"/>
<path d="M19 9C20.6569 9 22 7.65685 22 6C22 4.34315 20.6569 3 19 3C17.3431 3 16 4.34315 16 6C16 7.65685 17.3431 9 19 9Z" fill="#0DBD8B"/>
</svg>

After

Width:  |  Height:  |  Size: 686 B

@@ -0,0 +1,12 @@
{
"images" : [
{
"filename" : "user_other_sessions_verified.svg",
"idiom" : "universal"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
@@ -0,0 +1,4 @@
<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1.125 9.30375V2.30625L9 0L16.875 2.30625V9.30375C16.875 16.4587 9 18 9 18C9 18 1.125 16.4587 1.125 9.30375Z" fill="#0DBD8B"/>
<path d="M13.0617 5.10705C12.8592 4.8933 12.5217 4.88205 12.3079 5.08455L7.50415 9.58455L5.7379 8.34705C5.50165 8.18955 5.1754 8.18955 4.9504 8.39205C4.6804 8.61705 4.6579 9.02205 4.8829 9.29205L6.91915 11.6321C6.9529 11.6658 6.98665 11.7108 7.03165 11.7333C7.41415 12.0483 7.9879 11.9921 8.3029 11.6096L8.33665 11.5646L13.0842 5.8158C13.2417 5.6133 13.2417 5.30955 13.0617 5.10705Z" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 638 B

+11
View File
@@ -2437,7 +2437,18 @@ To enable access, tap Settings> Location and select Always";
"user_other_session_security_recommendation_title" = "Security recommendation";
"user_other_session_unverified_sessions_header_subtitle" = "Verify your sessions for enhanced secure messaging or sign out from those you dont recognize or use anymore.";
"user_other_session_unverified_current_session_details" = "%@ · Your current session";
"user_other_session_verified_sessions_header_subtitle" = "For best security, sign out from any session that you dont recognize or use anymore.";
"user_other_session_filter" = "Filter";
"user_other_session_filter_menu_all" = "All sessions";
"user_other_session_filter_menu_verified" = "Verified";
"user_other_session_filter_menu_unverified" = "Unverified";
"user_other_session_filter_menu_inactive" = "Inactive";
"user_other_session_no_inactive_sessions" = "No inactive sessions found.";
"user_other_session_no_verified_sessions" = "No verified sessions found.";
"user_other_session_no_unverified_sessions" = "No unverified sessions found.";
"user_other_session_clear_filter" = "Clear filter";
// First item is client name and second item is session display name
"user_session_name" = "%@: %@";
+3
View File
@@ -107,8 +107,11 @@ internal class Asset: NSObject {
internal static let deviceTypeMobile = ImageAsset(name: "device_type_mobile")
internal static let deviceTypeUnknown = ImageAsset(name: "device_type_unknown")
internal static let deviceTypeWeb = ImageAsset(name: "device_type_web")
internal static let userOtherSessionsFilter = ImageAsset(name: "user_other_sessions_filter")
internal static let userOtherSessionsFilterSelected = ImageAsset(name: "user_other_sessions_filter_selected")
internal static let userOtherSessionsInactive = ImageAsset(name: "user_other_sessions_inactive")
internal static let userOtherSessionsUnverified = ImageAsset(name: "user_other_sessions_unverified")
internal static let userOtherSessionsVerified = ImageAsset(name: "user_other_sessions_verified")
internal static let userSessionListItemInactiveSession = ImageAsset(name: "user_session_list_item_inactive_session")
internal static let userSessionUnverified = ImageAsset(name: "user_session_unverified")
internal static let userSessionVerificationUnknown = ImageAsset(name: "user_session_verification_unknown")
+40
View File
@@ -8635,6 +8635,42 @@ public class VectorL10n: NSObject {
public static func userInactiveSessionItemWithDate(_ p1: String) -> String {
return VectorL10n.tr("Vector", "user_inactive_session_item_with_date", p1)
}
/// Clear filter
public static var userOtherSessionClearFilter: String {
return VectorL10n.tr("Vector", "user_other_session_clear_filter")
}
/// Filter
public static var userOtherSessionFilter: String {
return VectorL10n.tr("Vector", "user_other_session_filter")
}
/// All sessions
public static var userOtherSessionFilterMenuAll: String {
return VectorL10n.tr("Vector", "user_other_session_filter_menu_all")
}
/// Inactive
public static var userOtherSessionFilterMenuInactive: String {
return VectorL10n.tr("Vector", "user_other_session_filter_menu_inactive")
}
/// Unverified
public static var userOtherSessionFilterMenuUnverified: String {
return VectorL10n.tr("Vector", "user_other_session_filter_menu_unverified")
}
/// Verified
public static var userOtherSessionFilterMenuVerified: String {
return VectorL10n.tr("Vector", "user_other_session_filter_menu_verified")
}
/// No inactive sessions found.
public static var userOtherSessionNoInactiveSessions: String {
return VectorL10n.tr("Vector", "user_other_session_no_inactive_sessions")
}
/// No unverified sessions found.
public static var userOtherSessionNoUnverifiedSessions: String {
return VectorL10n.tr("Vector", "user_other_session_no_unverified_sessions")
}
/// No verified sessions found.
public static var userOtherSessionNoVerifiedSessions: String {
return VectorL10n.tr("Vector", "user_other_session_no_verified_sessions")
}
/// Security recommendation
public static var userOtherSessionSecurityRecommendationTitle: String {
return VectorL10n.tr("Vector", "user_other_session_security_recommendation_title")
@@ -8647,6 +8683,10 @@ public class VectorL10n: NSObject {
public static var userOtherSessionUnverifiedSessionsHeaderSubtitle: String {
return VectorL10n.tr("Vector", "user_other_session_unverified_sessions_header_subtitle")
}
/// For best security, sign out from any session that you dont recognize or use anymore.
public static var userOtherSessionVerifiedSessionsHeaderSubtitle: String {
return VectorL10n.tr("Vector", "user_other_session_verified_sessions_header_subtitle")
}
/// Name
public static var userSessionDetailsApplicationName: String {
return VectorL10n.tr("Vector", "user_session_details_application_name")