Coverage Summary for Class: AboutViewModelImpl (com.vsevolodganin.clicktrack.about)

Class Method, % Branch, % Line, % Instruction, %
AboutViewModelImpl 0% (0/7) 0% (0/12) 0% (0/46)
AboutViewModelImpl$Const
AboutViewModelImpl$onBackClick$$inlined$pop$default$1 0% (0/1)
AboutViewModelImpl$onBackClick$$inlined$pop$default$2 0% (0/1)
Total 0% (0/9) 0% (0/12) 0% (0/46)


 package com.vsevolodganin.clicktrack.about
 
 import com.arkivanov.decompose.ComponentContext
 import com.arkivanov.decompose.router.stack.pop
 import com.vsevolodganin.clicktrack.ScreenStackNavigation
 import com.vsevolodganin.clicktrack.common.BuildConfig
 import com.vsevolodganin.clicktrack.common.LinkOpener
 import kotlinx.coroutines.flow.MutableStateFlow
 import kotlinx.coroutines.flow.StateFlow
 import me.tatarka.inject.annotations.Assisted
 import me.tatarka.inject.annotations.Inject
 
 @Inject
 class AboutViewModelImpl(
     @Assisted componentContext: ComponentContext,
     private val navigation: ScreenStackNavigation,
     private val linkOpener: LinkOpener,
     buildConfig: BuildConfig,
 ) : AboutViewModel, ComponentContext by componentContext {
     override val state: StateFlow<AboutState> = MutableStateFlow(
         AboutState(displayVersion = buildConfig.versionName),
     )
 
     override fun onBackClick() = navigation.pop()
 
     override fun onHomeClick() = linkOpener.url(HOME_PAGE)
 
     override fun onTwitterClick() = linkOpener.url(TWITTER)
 
     override fun onEmailClick() = linkOpener.email(EMAIL)
 
     override fun onArtstationClick() = linkOpener.url(ARTSTATION)
 
     override fun onProjectLinkClick() = linkOpener.url(GITHUB_PROJECT)
 
     private companion object Const {
         const val EMAIL = "contact@vsevolodganin.com"
         const val HOME_PAGE = "https://vsevolodganin.com"
         const val TWITTER = "https://twitter.com/vsga_dev"
         const val ARTSTATION = "https://varvara_furu.artstation.com"
         const val GITHUB_PROJECT = "https://github.com/vganin/click-track"
     }
 }