mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-20 08:32:53 +02:00
Merge branch 'develop' into alfogrillo/learn_more_sheet
# Conflicts: # RiotSwiftUI/Modules/UserSessions/UserOtherSessions/UserOtherSessionsModels.swift # RiotSwiftUI/Modules/UserSessions/UserOtherSessions/UserOtherSessionsViewModel.swift # RiotSwiftUI/Modules/UserSessions/UserSessionOverview/UserSessionOverviewModels.swift # RiotSwiftUI/Modules/UserSessions/UserSessionOverview/UserSessionOverviewViewModel.swift # RiotSwiftUI/Modules/UserSessions/UserSessionOverview/View/UserSessionOverview.swift
This commit is contained in:
+9
-2
@@ -22,13 +22,15 @@ typealias UserSessionOverviewViewModelType = StateStoreViewModel<UserSessionOver
|
||||
class UserSessionOverviewViewModel: UserSessionOverviewViewModelType, UserSessionOverviewViewModelProtocol {
|
||||
private let sessionInfo: UserSessionInfo
|
||||
private let service: UserSessionOverviewServiceProtocol
|
||||
|
||||
private let settingService: UserSessionSettingsProtocol
|
||||
|
||||
var completion: ((UserSessionOverviewViewModelResult) -> Void)?
|
||||
|
||||
// MARK: - Setup
|
||||
|
||||
init(sessionInfo: UserSessionInfo,
|
||||
service: UserSessionOverviewServiceProtocol,
|
||||
settingsService: UserSessionSettingsProtocol,
|
||||
sessionsOverviewDataPublisher: CurrentValueSubject<UserSessionsOverviewData, Never> = .init(.init(currentSession: nil,
|
||||
unverifiedSessions: [],
|
||||
inactiveSessions: [],
|
||||
@@ -36,13 +38,15 @@ class UserSessionOverviewViewModel: UserSessionOverviewViewModelType, UserSessio
|
||||
linkDeviceEnabled: false))) {
|
||||
self.sessionInfo = sessionInfo
|
||||
self.service = service
|
||||
self.settingService = settingsService
|
||||
|
||||
let cardViewData = UserSessionCardViewData(sessionInfo: sessionInfo)
|
||||
let state = UserSessionOverviewViewState(cardViewData: cardViewData,
|
||||
isCurrentSession: sessionInfo.isCurrent,
|
||||
isPusherEnabled: service.pusherEnabledSubject.value,
|
||||
remotelyTogglingPushersAvailable: service.remotelyTogglingPushersAvailableSubject.value,
|
||||
showLoadingIndicator: false)
|
||||
showLoadingIndicator: false,
|
||||
showLocationInfo: settingsService.showIPAddressesInSessionsManager)
|
||||
super.init(initialViewState: state)
|
||||
|
||||
startObservingService()
|
||||
@@ -95,6 +99,9 @@ class UserSessionOverviewViewModel: UserSessionOverviewViewModelType, UserSessio
|
||||
completion?(.renameSession(sessionInfo))
|
||||
case .logoutOfSession:
|
||||
completion?(.logoutOfSession(sessionInfo))
|
||||
case .showLocationInfo:
|
||||
settingService.showIPAddressesInSessionsManager.toggle()
|
||||
state.showLocationInfo = settingService.showIPAddressesInSessionsManager
|
||||
case .viewSessionInfo:
|
||||
completion?(.showSessionStateInfo(sessionInfo))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user