mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 06:55:59 +00:00
refactored the flows to use a state and an event for the transfer ownership screen
This commit is contained in:
@@ -66,7 +66,7 @@ struct LeaveSpaceView: View {
|
||||
Section {
|
||||
ForEach(context.viewState.leaveHandle.rooms, id: \.spaceServiceRoom.id) { room in
|
||||
LeaveSpaceRoomDetailsCell(room: room,
|
||||
hideSelection: !context.viewState.leaveHandle.canLeave,
|
||||
hideSelection: !room.canLeave,
|
||||
mediaProvider: context.mediaProvider) {
|
||||
context.send(viewAction: .toggleRoom(roomID: room.spaceServiceRoom.id))
|
||||
}
|
||||
|
||||
@@ -79,7 +79,7 @@ final class SpaceScreenCoordinator: CoordinatorProtocol {
|
||||
actionsSubject.send(.addExistingChildren)
|
||||
case .displayCreateChildRoomFlow(let space):
|
||||
actionsSubject.send(.displayCreateChildRoomFlow(space: space))
|
||||
case .presentTransferOwnership(roomProxy: let roomProxy):
|
||||
case .presentTransferOwnership(let roomProxy):
|
||||
actionsSubject.send(.displayTransferOwnership(roomProxy: roomProxy))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -254,7 +254,7 @@ class SpaceScreenViewModel: SpaceScreenViewModelType, SpaceScreenViewModelProtoc
|
||||
state.bindings.leaveSpaceViewModel = nil
|
||||
case .presentRolesAndPermissions:
|
||||
guard let roomProxy = state.roomProxy else {
|
||||
fatalError("The space screen should always have a room proxy")
|
||||
fatalError("There should always be a room proxy available for joined spaces.")
|
||||
}
|
||||
state.bindings.leaveSpaceViewModel = nil
|
||||
actionsSubject.send(.presentRolesAndPermissions(roomProxy: roomProxy))
|
||||
@@ -263,7 +263,7 @@ class SpaceScreenViewModel: SpaceScreenViewModelType, SpaceScreenViewModelProtoc
|
||||
actionsSubject.send(.leftSpace)
|
||||
case .presentTransferOwnership:
|
||||
guard let roomProxy = state.roomProxy else {
|
||||
fatalError("The space screen should always have a room proxy")
|
||||
fatalError("There should always be a room proxy available for joined spaces.")
|
||||
}
|
||||
state.bindings.leaveSpaceViewModel = nil
|
||||
actionsSubject.send(.presentTransferOwnership(roomProxy: roomProxy))
|
||||
|
||||
Reference in New Issue
Block a user