package Ġnam . tran . mov ied b . view . home Ċ Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġandroidx . lifecycle . ViewModel Providers Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ import Ġdagger . android . Contribut es Android Injector Ċ import Ġdagger . mult ib ind ings . Into Map Ċ import Ġnam . tran . data . inter actor . I UseCase Ċ import Ġtran . nam . core . di . inject . ViewModel Key Ċ Ċ @ Module ( includes Ġ= Ġ[ Home Module . Provide ViewModel :: class ]) Ċ abstract Ġclass ĠHome Module Ġ{ ĊĊĠĠĠ Ġ@ Contribut es Android Injector ( modules Ġ= Ġ[ Inject ViewModel :: class ]) ĊĠĠĠ Ġabstract Ġfun Ġbind (): ĠHome Fragment ĊĊĠĠĠ Ġ@ Module ĊĠĠĠ Ġclass ĠProvide ViewModel Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ Provides ĊĠĠĠĠĠĠĠ Ġ@ Into Map ĊĠĠĠĠĠĠĠ Ġ@ ViewModel Key ( Home ViewModel :: class ) ĊĠĠĠĠĠĠĠ Ġfun Ġprovide ViewModel ( use Case Ġ: ĠI UseCase ): ĠViewModel Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHome ViewModel ( use Case ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Module ĊĠĠĠ Ġclass ĠInject ViewModel Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Provides ĊĠĠĠĠĠĠĠ Ġfun Ġprovide ViewModel ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfactory : ĠViewModel Provider . Factory , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtarget : ĠHome Fragment ĊĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠViewModel Providers . of ( target , Ġfactory ). get ( Home ViewModel :: class . java ) ĊĠĠĠ Ġ} Ċ } Ċ