package Ġcom . jd agn ogo . we lov em ar athon . common . ui . component Ċ Ċ import Ġandroidx . annotation . Keep Ċ import Ġandroidx . compose . animation . Experimental Animation Api Ċ import Ġandroidx . compose . foundation . Experimental Foundation Api Ċ import Ġandroidx . compose . material . Experimental Material Api Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . h ilt . navigation . compose . h ilt ViewModel Ċ import Ġandroidx . lifecycle . ViewModel Store Owner Ċ import Ġandroidx . navigation . Nav Controller Ċ import Ġandroidx . navigation . Nav Graph Builder Ċ import Ġandroidx . navigation . Nav Type Ċ import Ġandroidx . navigation . compose . Nav Host Ċ import Ġandroidx . navigation . compose . comp osable Ċ import Ġandroidx . navigation . compose . remember Nav Controller Ċ import Ġandroidx . navigation . nav Argument Ċ import Ġandroidx . navigation . navigation Ċ import Ġcom . google . ac comp an ist . pager . Experimental Pager Api Ċ import Ġcom . jd agn ogo . we lov em ar athon . R Ċ import Ġcom . jd agn ogo . we lov em ar athon . activities . presentation . Activities Menu Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . activities . presentation . Activities Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . activities . presentation . Activities ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . be ach . presentation . Be ach Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . be ach . presentation . Be ach ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . be ach . presentation . Be aches Bar Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . common . ui . Menu Content Ċ import Ġcom . jd agn ogo . we lov em ar athon . culture . presentation . Culture Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . culture . presentation . Culture ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . culture . presentation . C ult ures Bar Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . favorites . presentation . Fav ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . favorites . presentation . F avorites Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . food . presentation . Food Menu Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . food . presentation . Food Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . food . presentation . Food ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . home . presentation . Home Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . home . presentation . Home ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . map . presentation . Map Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . map . view model . Map ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . shopping . presentation . Shopping Menu Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . shopping . presentation . Shopping Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . shopping . presentation . Shopping ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . splash . Splash Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . sport . presentation . Sport Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . sport . presentation . Sport ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . tips . presentation . Tips Screen Ċ import Ġcom . jd agn ogo . we lov em ar athon . tips . presentation . Tips ViewModel Ċ import Ġcom . jd agn ogo . we lov em ar athon . wine . presentation . W ine Screen Ċ import Ġkotlinx . coroutines . Internal Cor outines Api Ċ Ċ @ Internal Cor outines Api Ċ @ Experimental Material Api Ċ @ Experimental Pager Api Ċ @ Experimental Foundation Api Ċ @ Experimental Animation Api Ċ @ Composable Ċ fun ĠNav Graph () Ġ{ ĊĠĠĠ Ġval Ġnav Controller Ġ= Ġremember Nav Controller () ĊĠĠĠ ĠNav Host ( ĊĠĠĠĠĠĠĠ Ġnav Controller Ġ= Ġnav Controller , ĊĠĠĠĠĠĠĠ Ġstart Destination Ġ= ĠGlobal Dest inations . Splash Screen . route ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcomp osable ( Global Dest inations . Splash Screen . route ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSpl ash Screen ( nav Controller Ġ= Ġnav Controller ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġcomp osable ( Global Dest inations . Main Screen . route ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMenu Content () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Internal Cor outines Api Ċ @ Experimental Material Api Ċ @ Experimental Pager Api Ċ @ Experimental Foundation Api Ċ @ Experimental Animation Api Ċ fun ĠNav Graph Builder . w lm Nav Graph ( ĊĠĠĠ Ġnav Controller : ĠNav Controller , ĊĠĠĠ ĠviewModel Store Owner : ĠViewModel Store Owner Ċ ) Ġ{ ĊĠĠĠ Ġnavigation ( ĊĠĠĠĠĠĠĠ Ġroute Ġ= ĠMain Dest inations . Home . route , ĊĠĠĠĠĠĠĠ Ġstart Destination Ġ= ĠHome Sections . HOME . route ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġhome Graph ( nav Controller Ġ= Ġnav Controller ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġcomp osable ( Main Dest inations . Be aches . route ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Be ach ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠBe ach Screen ( viewModel Ġ= ĠviewModel , Ġnav Controller Ġ= Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . C ult ures . route ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Culture ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠCulture Screen ( viewModel Ġ= ĠviewModel , Ġnav Controller Ġ= Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . C ult ures Details . route ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Culture ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠC ult ures Bar Screen ( viewModel Ġ= ĠviewModel , Ġnav Controller Ġ= Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . Be aches Bar . route ) ĊĠĠĠ Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Be ach ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠBe aches Bar Screen ( viewModel Ġ= ĠviewModel , Ġnav Controller Ġ= Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . Shopping Sub Menu . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Shopping ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠShop ping Menu Screen ( viewModel , Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . Food Sub Menu . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Food ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠFood Menu Screen ( viewModel , Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . Food . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Food ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠFood Screen ( viewModel , Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . Activities Sub Menu . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġh ilt ViewModel < Activities ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠActiv ities Menu Screen ( viewModel , Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . Activities . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġh ilt ViewModel < Activities ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠActiv ities Screen ( viewModel , Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . Shopping . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Shopping ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠShop ping Screen ( viewModel , Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( ĊĠĠĠĠĠĠĠ ĠMain Dest inations . Map . route , ĊĠĠĠĠĠĠĠ Ġarguments Ġ= ĠlistOf ( nav Argument ( KEY _ MAP _ TYPE ) Ġ{ Ġtype Ġ= ĠNav Type . StringType Ġ}) ĊĠĠĠ Ġ) Ġ{ Ġback Stack Entry Ġ-> ĊĠĠĠĠĠĠĠ Ġval Ġarguments Ġ= Ġrequire NotNull ( back Stack Entry . arguments ) ĊĠĠĠĠĠĠĠ Ġval Ġmap Type Ġ= Ġarguments . getString ( KEY _ MAP _ TYPE ) Ġ?: Ġ"" ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Map ViewModel >( viewModel Store Owner Ġ= ĠviewModel Store Owner ) ĊĠĠĠĠĠĠĠ ĠMap Screen ( map Type , ĠviewModel , Ġnav Controller ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcomp osable ( Main Dest inations . Sport . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Sport ViewModel >() ĊĠĠĠĠĠĠĠ ĠS port Screen ( viewModel ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġcomp osable ( Main Dest inations . W ine . route ) Ġ{ ĊĠĠĠĠĠĠĠ ĠW ine Screen () ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Experimental Material Api Ċ @ Experimental Foundation Api Ċ @ Experimental Animation Api Ċ fun ĠNav Graph Builder . home Graph ( ĊĠĠĠ Ġnav Controller : ĠNav Controller , ĊĠĠĠ Ġmodifier : ĠModifier Ġ= ĠModifier , Ċ ) Ġ{ ĊĠĠĠ Ġcomp osable ( Home Sections . HOME . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Home ViewModel >() ĊĠĠĠĠĠĠĠ ĠHome Screen ( viewModel , Ġnav Controller , Ġmodifier ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġcomp osable ( Home Sections . FA V OR ITES . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Fav ViewModel >() ĊĠĠĠĠĠĠĠ ĠF avorites Screen ( viewModel , Ġnav Controller , Ġmodifier ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġcomp osable ( Home Sections . TI PS . route ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠviewModel Ġ= Ġh ilt ViewModel < Tips ViewModel >() ĊĠĠĠĠĠĠĠ ĠT ips Screen ( viewModel , Ġmodifier ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġcomp osable ( Home Sections . RUN . route ) Ġ{ ĊĊĠĠĠ Ġ} ĊĠĠĠ Ġcomp osable ( Home Sections . AB OUT . route ) Ġ{ ĊĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠDest inations Ġused Ġin Ġthe Ġapp . Ċ Ġ*/ Ċ Ċ enum Ġclass ĠHome Sections ( ĊĠĠĠ Ġval Ġtitle : ĠString , ĊĠĠĠ Ġval Ġicon : ĠInt , ĊĠĠĠ Ġval Ġroute : ĠString , Ċ ) Ġ{ ĊĠĠĠ ĠHOME (" Home ", ĠR . drawable . home , Ġ" home / activities "), ĊĠĠĠ ĠT IPS (" Tips ", ĠR . drawable . tips , Ġ" home / tips "), ĊĠĠĠ ĠF AV OR ITES (" Fav s ", ĠR . drawable . fav , Ġ" home / favorites "), ĊĠĠĠ ĠRUN (" Run ", ĠR . drawable . run , Ġ" home / run "), ĊĠĠĠ ĠA BO UT (" About ", ĠR . drawable . about , Ġ" home / food ") Ċ } Ċ Ċ @ Keep Ċ sealed Ġclass ĠMain Dest inations ( val Ġroute : ĠString ) Ġ{ ĊĠĠĠ Ġobject ĠHome Ġ: ĠMain Dest inations (" home ") ĊĠĠĠ Ġobject ĠFood Ġ: ĠMain Dest inations (" food ") ĊĠĠĠ Ġobject ĠActiv ities Ġ: ĠMain Dest inations (" activities ") ĊĠĠĠ Ġobject ĠShop ping Sub Menu Ġ: ĠMain Dest inations (" shopping Sub Menu ") ĊĠĠĠ Ġobject ĠFood Sub Menu Ġ: ĠMain Dest inations (" food Sub Menu ") ĊĠĠĠ Ġobject ĠActiv ities Sub Menu Ġ: ĠMain Dest inations (" activities Sub Menu ") ĊĠĠĠ Ġobject ĠShop ping Ġ: ĠMain Dest inations (" shopping ") ĊĠĠĠ Ġobject ĠMap Ġ: ĠMain Dest inations (" map /{ $ KEY _ MAP _ TYPE }") Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġcreate Route ( map Type : ĠString ) Ġ= Ġ" map /$ map Type " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠBe aches Bar Ġ: ĠMain Dest inations (" be aches Bar ") ĊĠĠĠ Ġobject ĠS port Ġ: ĠMain Dest inations (" sport ") ĊĠĠĠ Ġobject ĠW ine Ġ: ĠMain Dest inations (" wine ") ĊĠĠĠ Ġobject ĠBe aches Ġ: ĠMain Dest inations (" be aches ") ĊĠĠĠ Ġobject ĠC ult ures Ġ: ĠMain Dest inations (" c ult ures ") ĊĠĠĠ Ġobject ĠC ult ures Details Ġ: ĠMain Dest inations (" c ult ures Details ") Ċ } Ċ Ċ sealed Ġclass ĠGlobal Dest inations ( val Ġroute : ĠString ) Ġ{ ĊĠĠĠ Ġobject ĠSpl ash Screen Ġ: ĠMain Dest inations (" splash _ screen ") ĊĠĠĠ Ġobject ĠMain Screen Ġ: ĠMain Dest inations (" main _ screen ") Ċ } Ċ Ċ const Ġval ĠKEY _ MAP _ TYPE Ġ= Ġ" map Type " Ċ