/* Ċ Ġ* ĠDesign ed Ġand Ġdeveloped Ġby Ġ 2 0 2 1 Ġbe om jo Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . be om jo . wh it eno ise . ui . main . home Ċ Ċ import Ġandroidx . lifecycle . LiveData Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġcom . be om jo . wh it eno ise . base . Base ViewModel Ċ import Ġcom . be om jo . wh it eno ise . model . Category Ċ import Ġcom . be om jo . wh it eno ise . model . User Ċ import Ġcom . be om jo . wh it eno ise . repositories . auth . Auth Repository Ċ import Ġcom . be om jo . wh it eno ise . repositories . home . Home Repository Ċ import Ġdagger . h ilt . android . lifecycle . H ilt ViewModel Ċ import Ġjavax . inject . Inject Ċ Ċ @ H ilt ViewModel Ċ class ĠHome ViewModel Ġ@ Inject Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġauth Repository : ĠAuth Repository , ĊĠĠĠ Ġprivate Ġval Ġhome Repository : ĠHome Repository , Ċ ) Ġ: ĠBase ViewModel () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġ_ categories Ġ= ĠMutable LiveData < List < Category >>() ĊĠĠĠ Ġval Ġcategories : ĠLive Data < List < Category >> Ġget () Ġ= Ġ_ categories ĊĊĠĠĠ Ġprivate Ġval Ġ_ user Ġ= ĠMutable LiveData < User >() ĊĠĠĠ Ġval Ġuser : ĠLive Data < User > Ġget () Ġ= Ġ_ user ĊĊĠĠĠ Ġprivate Ġval Ġ_ isLoading Ġ= ĠMutable LiveData < Boolean >() ĊĠĠĠ Ġval ĠisLoading : ĠLive Data < Boolean > Ġget () Ġ= Ġ_ isLoading ĊĊĠĠĠ Ġprivate Ġval Ġ_ is Refresh Ġ= ĠMutable LiveData < Boolean >() ĊĠĠĠ Ġval Ġis Refresh : ĠLive Data < Boolean > Ġget () Ġ= Ġ_ is Refresh ĊĊĠĠĠ Ġfun Ġinit () Ġ{ ĊĠĠĠĠĠĠĠ Ġload UserInfo () ĊĠĠĠĠĠĠĠ Ġload Home Category List () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġload UserInfo () Ġ{ ĊĠĠĠĠĠĠĠ Ġlaunch Ġ{ Ġ_ user . value Ġ= Ġauth Repository . getUser Info () Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġload Home Category List () Ġ{ ĊĠĠĠĠĠĠĠ Ġlaunch Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ isLoading . value Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ categories . value Ġ= Ġhome Repository . get Home Category List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ isLoading . value Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ_ is Refresh . value Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġon Refresh () Ġ{ ĊĠĠĠĠĠĠĠ Ġ_ is Refresh . value Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġload Home Category List () ĊĠĠĠ Ġ} Ċ } Ċ