Coverage Summary for Class: InjectApplicationComponent (com.vsevolodganin.clicktrack.di.component)

Class Class, % Method, % Branch, % Line, % Instruction, %
InjectApplicationComponent 0% (0/1) 0% (0/8) 0% (0/13) 0% (0/54)


 package com.vsevolodganin.clicktrack.di.component
 
 import android.app.Application
 import com.vsevolodganin.clicktrack.NativeLibraries
 import com.vsevolodganin.clicktrack.storage.UserPreferencesRepository
 import com.vsevolodganin.clicktrack.theme.ThemeManager
 import kotlin.reflect.KClass
 import me.tatarka.inject.`internal`.LazyMap
 import me.tatarka.inject.`internal`.ScopedComponent
 
 public fun KClass<ApplicationComponent>.create(application: Application): ApplicationComponent =
     InjectApplicationComponent(application)
 
 public class InjectApplicationComponent(
   application: Application,
 ) : ApplicationComponent(application), ScopedComponent {
   override val _scoped: LazyMap = LazyMap()
 
   override val nativeLibraries: NativeLibraries
     get() = _scoped.get("com.vsevolodganin.clicktrack.NativeLibraries") {
       NativeLibraries()
     }
 
   override val userPreferences: UserPreferencesRepository
     get() = _scoped.get("com.vsevolodganin.clicktrack.storage.UserPreferencesRepository") {
       UserPreferencesRepository(
         settings = provideUserPreferences(
           application = application
         ),
         json = _scoped.get("kotlinx.serialization.json.Json") {
           provideJson()
         }
       )
     }
 
   override val themeManager: ThemeManager
     get() = _scoped.get("com.vsevolodganin.clicktrack.theme.ThemeManager") {
       ThemeManager(
         userPreferences = userPreferences
       )
     }
 }