Coverage Summary for Class: BaseViewModel (com.stslex93.notes.core.ui.base)

Class Class, % Method, % Branch, % Line, % Instruction, %
BaseViewModel 0% (0/1) 0% (0/2) 0% (0/8) 0% (0/31)


 package com.stslex93.notes.core.ui.base
 
 import androidx.lifecycle.ViewModel
 import androidx.lifecycle.viewModelScope
 import com.stslex93.notes.core.ui.base.store.Store
 import com.stslex93.notes.core.ui.base.store.Store.Action
 import com.stslex93.notes.core.ui.base.store.Store.Event
 import com.stslex93.notes.core.ui.base.store.Store.State
 import kotlinx.coroutines.flow.SharedFlow
 import kotlinx.coroutines.flow.StateFlow
 
 open class BaseViewModel<out S : State, out E : Event, in A : Action>(
     private val store: Store<S, E, A>
 ) : ViewModel() {
 
     val state: StateFlow<S> = store.state
     val event: SharedFlow<E> = store.event
 
     init {
         store.init(viewModelScope)
     }
 
     fun sendAction(action: A) {
         store.processAction(action)
     }
 }