mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-05-03 14:46:56 +02:00
Merge branch 'develop' into aleksandrs/6786_inactive_sessions_screen
# Conflicts: # Riot/Assets/en.lproj/Vector.strings # Riot/Generated/Strings.swift # RiotSwiftUI/Modules/UserSessions/Coordinator/UserSessionsFlowCoordinator.swift # RiotSwiftUI/Modules/UserSessions/UserSessionOverview/Test/Unit/UserSessionOverviewViewModelTests.swift # RiotSwiftUI/Modules/UserSessions/UserSessionsOverview/Coordinator/UserSessionsOverviewCoordinator.swift # RiotSwiftUI/Modules/UserSessions/UserSessionsOverview/Service/Mock/MockUserSessionsOverviewService.swift # RiotSwiftUI/Modules/UserSessions/UserSessionsOverview/UserSessionsOverviewModels.swift # RiotSwiftUI/Modules/UserSessions/UserSessionsOverview/View/UserSessionListItemViewData.swift
This commit is contained in:
@@ -109,12 +109,14 @@ struct UserSessionCardView: View {
|
||||
.buttonStyle(PrimaryActionButtonStyle())
|
||||
.padding(.top, 4)
|
||||
.padding(.bottom, 3)
|
||||
.accessibilityIdentifier("userSessionCardVerifyButton")
|
||||
}
|
||||
|
||||
if viewData.isCurrentSessionDisplayMode {
|
||||
Text(VectorL10n.userSessionViewDetails)
|
||||
.font(theme.fonts.body)
|
||||
.foregroundColor(theme.colors.accent)
|
||||
.accessibilityIdentifier("userSessionCardViewDetails")
|
||||
}
|
||||
}
|
||||
.padding(24)
|
||||
@@ -134,18 +136,24 @@ struct UserSessionCardViewPreview: View {
|
||||
@Environment(\.theme) var theme: ThemeSwiftUI
|
||||
|
||||
let viewData: UserSessionCardViewData
|
||||
|
||||
init(isCurrentSessionInfo: Bool = false) {
|
||||
let session = UserSessionInfo(id: "alice",
|
||||
|
||||
init(isCurrent: Bool = false) {
|
||||
let sessionInfo = UserSessionInfo(id: "alice",
|
||||
name: "iOS",
|
||||
deviceType: .mobile,
|
||||
isVerified: false,
|
||||
lastSeenIP: "10.0.0.10",
|
||||
lastSeenTimestamp: Date().timeIntervalSince1970 - 100,
|
||||
lastSeenTimestamp: nil,
|
||||
applicationName: "Element iOS",
|
||||
applicationVersion: "1.0.0",
|
||||
applicationURL: nil,
|
||||
deviceModel: nil,
|
||||
deviceOS: "iOS 15.5",
|
||||
lastSeenIPLocation: nil,
|
||||
deviceName: "My iPhone",
|
||||
isActive: true,
|
||||
isCurrent: isCurrentSessionInfo)
|
||||
|
||||
viewData = UserSessionCardViewData(session: session)
|
||||
isCurrent: isCurrent)
|
||||
viewData = UserSessionCardViewData(sessionInfo: sessionInfo)
|
||||
}
|
||||
|
||||
var body: some View {
|
||||
@@ -161,8 +169,8 @@ struct UserSessionCardViewPreview: View {
|
||||
struct UserSessionCardView_Previews: PreviewProvider {
|
||||
static var previews: some View {
|
||||
Group {
|
||||
UserSessionCardViewPreview(isCurrentSessionInfo: true).theme(.light).preferredColorScheme(.light)
|
||||
UserSessionCardViewPreview(isCurrentSessionInfo: true).theme(.dark).preferredColorScheme(.dark)
|
||||
UserSessionCardViewPreview(isCurrent: true).theme(.light).preferredColorScheme(.light)
|
||||
UserSessionCardViewPreview(isCurrent: true).theme(.dark).preferredColorScheme(.dark)
|
||||
UserSessionCardViewPreview().theme(.light).preferredColorScheme(.light)
|
||||
UserSessionCardViewPreview().theme(.dark).preferredColorScheme(.dark)
|
||||
}
|
||||
|
||||
@@ -18,9 +18,6 @@ import Foundation
|
||||
|
||||
/// View data for UserSessionCardView
|
||||
struct UserSessionCardViewData {
|
||||
private static let userSessionNameFormatter = UserSessionNameFormatter()
|
||||
private static let lastActivityDateFormatter = UserSessionLastActivityFormatter()
|
||||
|
||||
var id: String {
|
||||
sessionId
|
||||
}
|
||||
@@ -48,13 +45,13 @@ struct UserSessionCardViewData {
|
||||
lastSeenIP: String?,
|
||||
isCurrentSessionDisplayMode: Bool = false) {
|
||||
self.sessionId = sessionId
|
||||
sessionName = Self.userSessionNameFormatter.sessionName(deviceType: deviceType, sessionDisplayName: sessionDisplayName)
|
||||
sessionName = UserSessionNameFormatter.sessionName(deviceType: deviceType, sessionDisplayName: sessionDisplayName)
|
||||
self.isVerified = isVerified
|
||||
|
||||
var lastActivityDateString: String?
|
||||
|
||||
if let lastActivityTimestamp = lastActivityTimestamp {
|
||||
lastActivityDateString = Self.lastActivityDateFormatter.lastActivityDateString(from: lastActivityTimestamp)
|
||||
lastActivityDateString = UserSessionLastActivityFormatter.lastActivityDateString(from: lastActivityTimestamp)
|
||||
}
|
||||
|
||||
self.lastActivityDateString = lastActivityDateString
|
||||
@@ -66,13 +63,13 @@ struct UserSessionCardViewData {
|
||||
}
|
||||
|
||||
extension UserSessionCardViewData {
|
||||
init(session: UserSessionInfo) {
|
||||
self.init(sessionId: session.id,
|
||||
sessionDisplayName: session.name,
|
||||
deviceType: session.deviceType,
|
||||
isVerified: session.isVerified,
|
||||
lastActivityTimestamp: session.lastSeenTimestamp,
|
||||
lastSeenIP: session.lastSeenIP,
|
||||
isCurrentSessionDisplayMode: session.isCurrent)
|
||||
init(sessionInfo: UserSessionInfo) {
|
||||
self.init(sessionId: sessionInfo.id,
|
||||
sessionDisplayName: sessionInfo.name,
|
||||
deviceType: sessionInfo.deviceType,
|
||||
isVerified: sessionInfo.isVerified,
|
||||
lastActivityTimestamp: sessionInfo.lastSeenTimestamp,
|
||||
lastSeenIP: sessionInfo.lastSeenIP,
|
||||
isCurrentSessionDisplayMode: sessionInfo.isCurrent)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user