package Ġcom . m ire go . tri kot . view models . decl arative . components . factory Ċ Ċ import Ġcom . m ire go . tri kot . streams . c ancellable . C ancellable Manager Ċ import Ġcom . m ire go . tri kot . view models . decl arative . components . impl . VM D Button ViewModel Impl Ċ import Ġcom . m ire go . tri kot . view models . decl arative . components . impl . VM D Image ViewModel Impl Ċ import Ġcom . m ire go . tri kot . view models . decl arative . components . impl . VM D List ViewModel Impl Ċ import Ġcom . m ire go . tri kot . view models . decl arative . components . impl . VM D Loading ViewModel Impl Ċ import Ġcom . m ire go . tri kot . view models . decl arative . components . impl . VM D Progress ViewModel Impl Ċ import Ġcom . m ire go . tri kot . view models . decl arative . components . impl . VM D TextField ViewModel Impl Ċ import Ġcom . m ire go . tri kot . view models . decl arative . components . impl . VM D Text ViewModel Impl Ċ import Ġcom . m ire go . tri kot . view models . decl arative . components . impl . VM D Toggle ViewModel Impl Ċ import Ġcom . m ire go . tri kot . view models . decl arative . content . VM D Ident ifiable Content Ċ import Ġcom . m ire go . tri kot . view models . decl arative . content . VM D Image Content Ċ import Ġcom . m ire go . tri kot . view models . decl arative . content . VM D Image Descriptor Content Ċ import Ġcom . m ire go . tri kot . view models . decl arative . content . VM D No Content Ċ import Ġcom . m ire go . tri kot . view models . decl arative . content . VM D Text Content Ċ import Ġcom . m ire go . tri kot . view models . decl arative . content . VM D Text Image Pair Content Ċ import Ġcom . m ire go . tri kot . view models . decl arative . content . VM D Text Pair Content Ċ import Ġcom . m ire go . tri kot . view models . decl arative . properties . VM D Image Descriptor Ċ import Ġcom . m ire go . tri kot . view models . decl arative . properties . VM D Image Resource Ċ import Ġcom . m ire go . tri kot . view models . decl arative . properties . VM D Progress Determin ation Ċ Ċ object ĠV MD Components Ġ{ ĊĠĠĠ Ġclass ĠText Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġempty ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Text ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Text ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Content ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Text ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Text ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġtext Ġ= Ġcontent Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠImage Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġempty ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Image ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Image ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġlocal ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage Resource : ĠV MD Image Resource , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Image ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Image ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġimage Ġ= ĠV MD Image Descriptor . Local ( image Resource ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġremote ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage URL : ĠString ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaceholder Image Resource : ĠV MD Image Resource Ġ= ĠV MD Image Resource . None , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Image ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Image ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage Ġ= ĠV MD Image Descriptor . Remote ( image URL , Ġplaceholder Image Resource ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Descriptor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage Descriptor : ĠV MD Image Descriptor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Image ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĠV MD Image ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage Ġ= Ġimage Descriptor ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠButton Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġempty ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Button ViewModel Impl < VM D No Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Button ViewModel Impl ( c ancellable Manager , ĠV MD No Content ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Text ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Button ViewModel Impl < VM D Text Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Button ViewModel Impl ( c ancellable Manager , ĠV MD Text Content ( text )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Image ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage : ĠV MD Image Resource , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Button ViewModel Impl < VM D Image Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Button ViewModel Impl ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Image Content ( image ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith ImageUrl ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠimageUrl : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaceholder Image Resource : ĠV MD Image Resource Ġ= ĠV MD Image Resource . None , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Button ViewModel Impl < VM D Image Descriptor Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Button ViewModel Impl ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Image Descriptor Content ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Image Descriptor . Remote ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠimageUrl , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaceholder Image Resource Ġ= Ġplaceholder Image Resource ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Text Pair ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Pair : ĠV MD Text Pair Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Button ViewModel Impl < VM D Text Pair Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Button ViewModel Impl ( c ancellable Manager , Ġtext Pair ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Text Image ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Image : ĠV MD Text Image Pair Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Button ViewModel Impl < VM D Text Image Pair Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Button ViewModel Impl ( c ancellable Manager , Ġtext Image ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠTextField Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġempty ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD TextField ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD TextField ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Placeholder ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplaceholder Text : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD TextField ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD TextField ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġplaceholder Ġ= Ġplaceholder Text Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠToggle Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġempty ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Toggle ViewModel Impl < VM D No Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Toggle ViewModel Impl ( c ancellable Manager , ĠV MD No Content ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith State ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Toggle ViewModel Impl < VM D No Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Toggle ViewModel Impl ( c ancellable Manager , ĠV MD No Content ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġis On Ġ= Ġstate Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Text ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext : ĠString , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Toggle ViewModel Impl < VM D Text Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Toggle ViewModel Impl ( c ancellable Manager , ĠV MD Text Content ( text )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġis On Ġ= Ġstate Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Image ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage : ĠV MD Image Resource , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Toggle ViewModel Impl < VM D Image Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Toggle ViewModel Impl ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Image Content ( image ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġis On Ġ= Ġstate Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Text Pair ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Pair : ĠV MD Text Pair Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Toggle ViewModel Impl < VM D Text Pair Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Toggle ViewModel Impl ( c ancellable Manager , Ġtext Pair ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġis On Ġ= Ġstate Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġwith Text Image ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Image : ĠV MD Text Image Pair Content , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate : ĠBoolean , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Toggle ViewModel Impl < VM D Text Image Pair Content >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Toggle ViewModel Impl ( c ancellable Manager , Ġtext Image ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġis On Ġ= Ġstate Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠLoading Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġinactive ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Loading ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Loading ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġactive ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Loading ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Loading ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĠisLoading Ġ= Ġtrue Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠProgress Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġin determinate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Progress ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Progress ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġdetermin ate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprogress : ĠFloat , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Progress ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Progress ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġdetermin ation Ġ= ĠV MD Progress Determin ation ( progress , Ġ 1 f ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġdetermin ate ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprogress : ĠFloat , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtotal : ĠFloat , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD Progress ViewModel Impl . () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD Progress ViewModel Impl ( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġdetermin ation Ġ= ĠV MD Progress Determin ation ( progress , Ġtotal ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠList Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġ< C Ġ: ĠV MD Ident ifiable Content > Ġempty ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD List ViewModel Impl < C >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD List ViewModel Impl < C >( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġfun Ġ< C Ġ: ĠV MD Ident ifiable Content > Ġof ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar arg Ġlist Elements : ĠC , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcancell able Manager : ĠC ancellable Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclosure : ĠV MD List ViewModel Impl < C >. () Ġ-> ĠUnit Ġ= Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠV MD List ViewModel Impl < C >( c ancellable Manager ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġelements Ġ= Ġlist Elements . asList () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply ( closure ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ