package Ġau . com . cr azy bean . mobile x . kur ir . modules . base Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . annotation . String Res Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġau . com . cr azy bean . foundation . navigator . Arguments Ċ import Ġau . com . cr azy bean . foundation . navigator . Navigator Ċ import Ġau . com . cr azy bean . mobile x . foundation . s aw . Wrapper Ċ import Ġau . com . cr azy bean . mobile x . foundation . s aw . Actor Ċ import Ġau . com . cr azy bean . mobile x . foundation . s aw . pulse . Pulse Ċ import Ġau . com . cr azy bean . mobile x . foundation . s aw . pulse . Pulse Owner Ċ import Ġau . com . cr azy bean . mobile x . kur ir . extension . params Ċ Ċ abstract Ġclass ĠBase Fragment < out ĠA CTOR : ĠActor < Scene , ĠWrapper >> Ġ: ĠFragment (), ĠNavigator , ĠPulse Owner Ġ{ ĊĠĠĠ Ġprotected Ġabstract Ġval Ġactor : ĠA CTOR ? ĊĠĠĠ Ġprotected Ġabstract Ġval Ġlayout Res : ĠInt ĊĊĠĠĠ Ġprivate Ġval Ġdispatcher Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠLifecycle Dispatcher ( actor ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġval Ġpulse : ĠPulse ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġactor ?. pulse ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): Ġandroid . view . View ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( layout Res , Ġcontainer , Ġfalse )?. also Ġ{ Ġlayout Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon View Load ( layout Ġas ĠViewGroup ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġactor ?. perform ( this , Ġarguments ?. params ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlifecycle . add Observer ( dispatcher ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġon View Load ( layout : ĠViewGroup ) Ġ{ ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġnavigate ( arguments : ĠArguments , Ġrequest Code : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġarguments . resolve ( context )?. let Ġ{ Ġintent Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( request Code Ġ!= Ġ- 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue Ġ-> ĠstartActivity For Result ( intent , Ġrequest Code ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ?: Ġ( activity ?. take If Ġ{ Ġit Ġis ĠBase Activity < *> Ġ} Ġas ĠBase Activity < *> ?) ?. navigate ( arguments , Ġrequest Code ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġfun Ġnavigate ( module : ĠModule , Ġrequest Code : ĠInt Ġ= Ġ- 1 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnavigate ( module . arguments , Ġrequest Code ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġfun Ġshow Loading () Ġ{ ĊĠĠĠĠĠĠĠ Ġ( activity ?. take If Ġ{ Ġit Ġis ĠBase Activity < *> Ġ} Ġas ĠBase Activity < *> ?) ?. show Loading () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġfun Ġhide Loading () Ġ{ ĊĠĠĠĠĠĠĠ Ġ( activity ?. take If Ġ{ Ġit Ġis ĠBase Activity < *> Ġ} Ġas ĠBase Activity < *> ?) ?. hide Loading () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġfun Ġshow Error (@ String Res Ġres Id : ĠInt , Ġon Action : Ġ(() Ġ-> ĠUnit )? Ġ= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ( activity ?. take If Ġ{ Ġit Ġis ĠBase Activity < *> Ġ} Ġas ĠBase Activity < *> ?) ?. show Error ( res Id , Ġon Action ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġopen Ġfun Ġdismiss () Ġ{} Ċ }