Slide 54
Slide 54 text
@ragdroid
@droidconBos
fun reducer(previousState: State, result: Result): State =
when (result) {
...
is Result.PullToRefreshing -> previousState.copy(
loading = false,
pullToRefreshing = true,
pullToRefreshError = null)
is Result.PullToRefreshError -> previousState.copy(
pullToRefreshing = false,
pullToRefreshError = result.throwable)
is Result.PullToRefreshComplete -> previousState.copy(
pullToRefreshing = false,
pullToRefreshError = null,
items = result.characters)
is Result.PullToRefreshEmpty -> previousState.copy(
pullToRefreshing = false,
loadingError = null,
items = emptyList(),
emptyStateVisible = true
)
}
Presenter