Create fun handleEvents
This commit is contained in:
parent
f6b81ae21d
commit
3543e3b231
1 changed files with 26 additions and 24 deletions
|
|
@ -81,6 +81,31 @@ class DefaultInvitePeoplePresenter @AssistedInject constructor(
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun handleEvents(event: InvitePeopleEvents) {
|
||||||
|
when (event) {
|
||||||
|
is DefaultInvitePeopleEvents.OnSearchActiveChanged -> {
|
||||||
|
searchActive = event.active
|
||||||
|
searchQuery = ""
|
||||||
|
}
|
||||||
|
|
||||||
|
is DefaultInvitePeopleEvents.UpdateSearchQuery -> {
|
||||||
|
searchQuery = event.query
|
||||||
|
}
|
||||||
|
|
||||||
|
is DefaultInvitePeopleEvents.ToggleUser -> {
|
||||||
|
selectedUsers.toggleUser(event.user)
|
||||||
|
searchResults.toggleUser(event.user)
|
||||||
|
}
|
||||||
|
is InvitePeopleEvents.SendInvites -> {
|
||||||
|
coroutineScope.sendInvites(selectedUsers.value)
|
||||||
|
}
|
||||||
|
is InvitePeopleEvents.CloseSearch -> {
|
||||||
|
searchActive = false
|
||||||
|
searchQuery = ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return DefaultInvitePeopleState(
|
return DefaultInvitePeopleState(
|
||||||
canInvite = selectedUsers.value.isNotEmpty(),
|
canInvite = selectedUsers.value.isNotEmpty(),
|
||||||
selectedUsers = selectedUsers.value,
|
selectedUsers = selectedUsers.value,
|
||||||
|
|
@ -88,30 +113,7 @@ class DefaultInvitePeoplePresenter @AssistedInject constructor(
|
||||||
isSearchActive = searchActive,
|
isSearchActive = searchActive,
|
||||||
searchResults = searchResults.value,
|
searchResults = searchResults.value,
|
||||||
showSearchLoader = showSearchLoader.value,
|
showSearchLoader = showSearchLoader.value,
|
||||||
eventSink = {
|
eventSink = ::handleEvents,
|
||||||
when (it) {
|
|
||||||
is DefaultInvitePeopleEvents.OnSearchActiveChanged -> {
|
|
||||||
searchActive = it.active
|
|
||||||
searchQuery = ""
|
|
||||||
}
|
|
||||||
|
|
||||||
is DefaultInvitePeopleEvents.UpdateSearchQuery -> {
|
|
||||||
searchQuery = it.query
|
|
||||||
}
|
|
||||||
|
|
||||||
is DefaultInvitePeopleEvents.ToggleUser -> {
|
|
||||||
selectedUsers.toggleUser(it.user)
|
|
||||||
searchResults.toggleUser(it.user)
|
|
||||||
}
|
|
||||||
is InvitePeopleEvents.SendInvites -> {
|
|
||||||
coroutineScope.sendInvites(selectedUsers.value)
|
|
||||||
}
|
|
||||||
is InvitePeopleEvents.CloseSearch -> {
|
|
||||||
searchActive = false
|
|
||||||
searchQuery = ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue