package Ġcom . challenge . android _ template . base ui Ċ Ċ import Ġandroid . net . Uri Ċ import Ġandroidx . core . net . to Uri Ċ Ċ // ĠTODO Ġupdate Ġas Ġsoon Ġas Ġcompose Ġnavigation Ġallows Ġthe Ġuse Ġon Ġdynamic Ġmodules Ċ /** Ċ Ġ* ĠRepresents Ġthe Ġpossible Ġdest inations Ġof Ġthe Ġapp Ġvia ĠCompose ĠNavigation . ĠThe Ġdest inations Ġrepresents Ċ Ġ* Ġa Ġflow Ġwhere Ġa Ġback stack Ġis Ġrequired , Ġso Ġthe Ġtabs Ġinside Ġthe ĠHome Ġdestination Ġis Ġa Ġsimple Ċ Ġ* Ġnavigation . Ċ Ġ*/ Ċ object ĠDest inations Ġ{ ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠHome Ġdestination . ĊĠĠ Ġ*/ ĊĠ Ġconst Ġval ĠHome Ġ= Ġ" home " ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠTask Ġdetail Ġdestination . ĊĠĠ Ġ*/ ĊĠ Ġconst Ġval ĠFoo Detail Ġ= Ġ" task _ detail " ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠAbout Ġdestination . ĊĠĠ Ġ*/ ĊĠ Ġconst Ġval ĠAbout Ġ= Ġ" about " Ċ } Ċ Ċ // ĠTODO Ġupdate Ġwith Ġthe Ġargs Ġfor Ġyour Ġown Ġapp Ċ /** Ċ Ġ* ĠRepresents Ġthe Ġarguments Ġto Ġbe Ġpassed Ġthrough Ġthe Ġ[ Dest inations ]. Ċ Ġ*/ Ċ object ĠDestination Args Ġ{ ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠArgument Ġto Ġbe Ġpassed Ġto Ġ[ Dest inations . Foo Detail ] Ġrepresenting Ġthe Ġfoo Ġid Ġto Ġbe Ġdetailed . ĊĠĠ Ġ*/ ĊĠ Ġconst Ġval ĠFoo Id Ġ= Ġ" foo _ id " Ċ } ĊĊ Ċ /** Ċ Ġ* ĠRepresents Ġthe ĠDeep ĠLinks Ġto Ġimplicit Ġnavigate Ġthrough Ġthe Ġapplication , Ġlike ĠPending Intent . Ċ Ġ*/ Ċ object ĠDestination Deep Link Ġ{ ĊĊĠ Ġprivate Ġval ĠBase Uri Ġ= Ġ" app :// some Url ". to Uri () ĊĊĠ Ġ/** ĊĠĠ Ġ* ĠDeep Ġlink Ġpattern Ġto Ġbe Ġregistered Ġin Ġ[ Dest inations . Foo Detail ] Ġcomp osable . ĊĠĠ Ġ*/ ĊĠ Ġval ĠFoo Detail Pattern Ġ= Ġ"$ Base Uri /${ Destination Args . Foo Id } ={ ${ Destination Args . Foo Id }}" ĊĊĊĠ Ġ/** ĊĠĠ Ġ* ĠReturns Ġthe Ġ[ Dest inations . Foo Detail ] Ġdeep Ġlink Ġwith Ġthe Ġargument Ġset . ĊĠĠ Ġ* ĊĠĠ Ġ* Ġ@ return Ġthe Ġ[ Dest inations . Foo Detail ] Ġdeep Ġlink Ġwith Ġthe Ġargument Ġset ĊĠĠ Ġ*/ ĊĠ Ġfun Ġget Foo Detail Uri ( taskId : ĠLong ): ĠUri Ġ= ĊĠĠĠ Ġ"$ Base Uri /${ Destination Args . Foo Id } =$ taskId ". to Uri () Ċ }