Remove the CommonSettingsProtocol and use UserSession to carry multiple dependencies. (#6302)

* Remove the CommonSettingsProtocol.

* Replace multiple dependencies with the UserSession when it carries them.
This commit is contained in:
Doug
2026-10-09 10:20:00 +01:00
committed by GitHub
parent a3d170534c
commit 65bab49f39
75 changed files with 212 additions and 369 deletions
@@ -13,7 +13,6 @@ struct JoinRoomScreenCoordinatorParameters {
let source: JoinRoomScreenSource
let userSession: UserSessionProtocol
let userIndicatorController: UserIndicatorControllerProtocol
let userSettings: UserSettings
}
enum JoinRoomScreenSource {
@@ -53,7 +52,6 @@ final class JoinRoomScreenCoordinator: CoordinatorProtocol {
init(parameters: JoinRoomScreenCoordinatorParameters) {
viewModel = JoinRoomScreenViewModel(source: parameters.source,
userSettings: parameters.userSettings,
userSession: parameters.userSession,
userIndicatorController: parameters.userIndicatorController)
}
@@ -30,11 +30,10 @@ class JoinRoomScreenViewModel: JoinRoomScreenViewModelType, JoinRoomScreenViewMo
}
init(source: JoinRoomScreenSource,
userSettings: UserSettings,
userSession: UserSessionProtocol,
userIndicatorController: UserIndicatorControllerProtocol) {
self.source = source
self.userSettings = userSettings
userSettings = userSession.userSettings
clientProxy = userSession.clientProxy
self.userIndicatorController = userIndicatorController
@@ -49,7 +48,7 @@ class JoinRoomScreenViewModel: JoinRoomScreenViewModelType, JoinRoomScreenViewMo
context.$viewState.map(\.mode)
.removeDuplicates()
.sink { mode in
.sink { [userSettings = self.userSettings] mode in
switch mode {
case .invited:
userSettings.app.seenInvites.insert(roomID)
@@ -402,8 +402,6 @@ struct JoinRoomScreenPreviewWrapper: Identifiable {
self.isSpace = isSpace
self.customPreviewName = customPreviewName
let userSettings = UserSettings.mock()
let clientProxy = ClientProxyMock(.init(hideInviteAvatars: hideInviteAvatars))
clientProxy.canJoinRoomWithReturnValue = canJoinRoom
@@ -455,7 +453,6 @@ struct JoinRoomScreenPreviewWrapper: Identifiable {
}
viewModel = JoinRoomScreenViewModel(source: source,
userSettings: userSettings,
userSession: UserSessionMock(.init(clientProxy: clientProxy)),
userIndicatorController: UserIndicatorControllerMock())
}