Introduce a StartChatFlowCoordinator instead of handing a navigation stack to the Screen Coordinator. (#4674)

* Introduce a basic StartChatFlowCoordinator.

* Move the rest of the start chat flow from the screen coordinator into the flow coordinator.

* Add a UI test for the entire start chat flow.

* Refactor CreateRoom… to CreateRoomScreen…
This commit is contained in:
Doug
2025-10-30 16:12:56 +00:00
committed by GitHub
parent 401ff49882
commit 933891614c
68 changed files with 764 additions and 789 deletions
@@ -16,7 +16,6 @@ enum InviteUsersScreenErrorType: Error {
enum InviteUsersScreenViewModelAction {
case dismiss
case proceed(selectedUsers: [UserProfileProxy])
}
enum InviteUsersScreenRoomType {
@@ -53,18 +52,18 @@ struct InviteUsersScreenViewState: BindableState {
membershipState[user.userID]
}
let isCreatingRoom: Bool
let isSkippable: Bool
var actionText: String {
if isCreatingRoom {
return selectedUsers.isEmpty ? L10n.actionSkip : L10n.actionNext
if isSkippable, selectedUsers.isEmpty {
L10n.actionSkip
} else {
return L10n.actionInvite
L10n.actionInvite
}
}
var isActionDisabled: Bool {
isCreatingRoom ? false : selectedUsers.isEmpty
isSkippable ? false : selectedUsers.isEmpty
}
}