/* Ċ Ġ* ĠCopyright Ġ 2 0 1 9 ĠNew ĠVector ĠLtd Ċ Ġ* Ċ Ġ* Ġ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 Ġim . vector . app . features . home . room . list . actions Ċ Ċ import Ġcom . air bnb . mv rx . Fragment ViewModel Context Ċ import Ġcom . air bnb . mv rx . Mv Rx ViewModel Factory Ċ import Ġcom . air bnb . mv rx . ViewModel Context Ċ import Ġcom . squareup . inject . ass isted . Ass isted Ċ import Ġcom . squareup . inject . ass isted . Ass isted Inject Ċ import Ġim . vector . app . core . platform . Empty Action Ċ import Ġim . vector . app . core . platform . Empty View Events Ċ import Ġim . vector . app . core . platform . Vector ViewModel Ċ import Ġorg . matrix . android . sdk . api . session . Session Ċ import Ġorg . matrix . android . sdk . rx . rx Ċ import Ġorg . matrix . android . sdk . rx . unwrap Ċ Ċ class ĠRoom List Quick Actions ViewModel Ġ@ Ass isted Inject Ġconstructor (@ Ass isted ĠinitialState : ĠRoom List Quick Actions State , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġsession : ĠSession Ċ ) Ġ: ĠVector ViewModel < Room List Quick Actions State , ĠEmpty Action , ĠEmpty View Events >( initialState ) Ġ{ ĊĊĠĠĠ Ġ@ Ass isted Inject . Factory ĊĠĠĠ Ġinterface ĠFactory Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġcreate ( initialState : ĠRoom List Quick Actions State ): ĠRoom List Quick Actions ViewModel ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ: ĠM v Rx ViewModel Factory < Room List Quick Actions ViewModel , ĠRoom List Quick Actions State > Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcreate ( viewModel Context : ĠViewModel Context , Ġstate : ĠRoom List Quick Actions State ): ĠRoom List Quick Actions ViewModel ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfragment : ĠRoom List Quick Actions Bottom Sheet Ġ= Ġ( viewModel Context Ġas ĠFragment ViewModel Context ). fragment () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġfragment . room List Actions ViewModel Factory . create ( state ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġroom Ġ= Ġsession . get Room ( initialState . roomId ) !! ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġobserve Room Summary () ĊĠĠĠĠĠĠĠ Ġobserve Notification State () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġobserve Notification State () Ġ{ ĊĠĠĠĠĠĠĠ Ġroom ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. rx () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. live Notification State () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcopy ( room Notification State Ġ= Ġit ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġobserve Room Summary () Ġ{ ĊĠĠĠĠĠĠĠ Ġroom ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. rx () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. live Room Summary () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. unwrap () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. execute Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcopy ( room Summary Ġ= Ġit ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġhandle ( action : ĠEmpty Action ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠNo Ġop ĊĠĠĠ Ġ} Ċ } Ċ