ursus
class ViewModel { fun sync() { setState { copy(syncInFlightCounter = syncInFlightCounter + 1 )} ... setState { copy(syncInFlightCounter = syncInFlightCounter - 1 )} } data class State(val syncInFlightCounter = 0) } ... viewModel.state .subscribe { state -> progressBar.show = state.syncInFlightCounter > 0 }
A modern programming language that makes developers happier.