package Ġsample . k anda . mv vm Ċ Ċ import Ġandroid . content . Context Ċ import Ġcom . github . sal om on br ys . kode in .* Ċ import Ġsample . k anda . data . local . AppData Base Ċ import Ġsample . k anda . data . local . AppData Base . Companion . data Base Builder Ċ import Ġsample . k anda . data . local . contact . Contact DataSource Ċ import Ġsample . k anda . data . local . contact . Label DataSource Ċ import Ġsample . k anda . domain . Remove Contact Ċ import Ġsample . k anda . domain . Retrieve Contacts Ċ import Ġsample . k anda . domain . Retrieve Labels Ċ import Ġsample . k anda . domain . Save Contacts Ċ import Ġsample . k anda . mv vm . detail . Detail ViewModel Ċ import Ġsample . k anda . mv vm . home . Home ViewModel Ċ import Ġsample . k anda . mv vm . register . Register ViewModel Ċ import Ġsample . k anda . mv vm . register . validators . Fields Validator Ċ Ċ /** Ċ Ġ* ĠCreated Ġby Ġj cos il va Ġon Ġ 2 / 5 / 2 0 1 8 . Ċ Ġ*/ Ċ class ĠInject or ( context : ĠContext ) Ġ{ ĊĠĠĠ Ġval Ġk ode in Ġ= ĠK ode in Ġ{ ĊĊĊĠĠĠĠĠĠĠ Ġbind < Home ViewModel >() Ġwith Ġprovider Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHome ViewModel ( contacts Ġ= Ġinstance ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbind < Detail ViewModel >() Ġwith Ġprovider Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDetail ViewModel ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġremove Contact Ġ= Ġinstance (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġret rive Contact Ġ= Ġinstance (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield DataSource Ġ= Ġinstance () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbind < Register ViewModel >() Ġwith Ġprovider Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRegister ViewModel ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontact DataSource Ġ= Ġinstance (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield DataSource Ġ= Ġinstance (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfields Validator Ġ= Ġinstance () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbind < AppData Base >() Ġwith Ġsingleton Ġ{ Ġdata Base Builder ( context ) Ġ} ĊĊĠĠĠĠĠĠĠ Ġbind < Retrieve Contacts >() Ġwith Ġprovider Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠContact DataSource ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontact Dao Ġ= Ġinstance < AppData Base >(). contact Dao ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbind < Retrieve Labels >() Ġwith Ġprovider Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLabel DataSource ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlabel Dao Ġ= Ġinstance < AppData Base >(). label Dao () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbind < Fields Validator >() Ġwith Ġprovider Ġ{ ĠFields Validator () Ġ} ĊĊĠĠĠĠĠĠĠ Ġbind < Save Contacts >() Ġwith Ġprovider Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠContact DataSource ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontact Dao Ġ= Ġinstance < AppData Base >(). contact Dao ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbind < Remove Contact >() Ġwith Ġprovider Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠContact DataSource ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontact Dao Ġ= Ġinstance < AppData Base >(). contact Dao ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ Ċ }