Create space flow (#4957)

* create space flow implementation

# Conflicts:
#	ElementX/Sources/FlowCoordinators/SpacesTabFlowCoordinator.swift

* create space flow fully implemented and working

* updated tests and updated the create room camera button UI

* updated the avatar button in the create room screen, and added power level overrides for spaces

* update power level content overrides to behave just as EW, and removed ask to join when creating a space regardless of the FF

* updated UI tests snapshots

* invite for a public space should always be forced to 50

* pr suggestions + PL override fix

* fix a missed code change
This commit is contained in:
Mauro
2026-01-15 14:52:18 +01:00
committed by GitHub
parent f41424436c
commit 648caa4e82
52 changed files with 446 additions and 116 deletions
@@ -19,6 +19,7 @@ struct SpacesScreenCoordinatorParameters {
enum SpacesScreenCoordinatorAction {
case selectSpace(SpaceRoomListProxyProtocol)
case showSettings
case showCreateSpace
}
final class SpacesScreenCoordinator: CoordinatorProtocol {
@@ -51,6 +52,8 @@ final class SpacesScreenCoordinator: CoordinatorProtocol {
actionsSubject.send(.selectSpace(spaceRoomListProxy))
case .showSettings:
actionsSubject.send(.showSettings)
case .showCreateSpace:
actionsSubject.send(.showCreateSpace)
}
}
.store(in: &cancellables)
@@ -11,6 +11,7 @@ import Foundation
enum SpacesScreenViewModelAction {
case selectSpace(SpaceRoomListProxyProtocol)
case showSettings
case showCreateSpace
}
struct SpacesScreenViewState: BindableState {
@@ -79,8 +79,7 @@ class SpacesScreenViewModel: SpacesScreenViewModelType, SpacesScreenViewModelPro
case .featureAnnouncementAppeared:
appSettings.hasSeenSpacesAnnouncement = true
case .createSpace:
// TODO: Implement
break
actionsSubject.send(.showCreateSpace)
}
}