package Ġcom . cook ery . common . compose . components Ċ Ċ import Ġandroidx . compose . animation . Animated Visibility Ċ import Ġandroidx . compose . animation . Experimental Animation Api Ċ import Ġandroidx . compose . foundation . layout . Column Ċ import Ġandroidx . compose . foundation . layout . Row Ċ import Ġandroidx . compose . foundation . layout . Row Scope Ċ import Ġandroidx . compose . foundation . layout . Spacer Ċ import Ġandroidx . compose . foundation . layout . fill Max Width Ċ import Ġandroidx . compose . foundation . layout . height Ċ import Ġandroidx . compose . foundation . layout . padding Ċ import Ġandroidx . compose . foundation . layout . size Ċ import Ġandroidx . compose . foundation . layout . width Ċ import Ġandroidx . compose . material . Material Theme Ċ import Ġandroidx . compose . material . Text Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Alignment Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . res . string Resource Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġapp . cook ery . data . entities . categories . Area Ċ import Ġapp . cook ery . data . entities . categories . Category Ċ import Ġapp . cook ery . data . entities . categories . Category Details Ċ import Ġcom . cook ery . common . compose . R Ċ import Ġcom . cook ery . common . compose . modifiers . Layout Ċ import Ġcom . cook ery . common . compose . theme . get Theme Primary Color Ċ Ċ @ Composable Ċ fun Ġ< T > ĠCollection With Header ( ĊĠĠĠ Ġitems : ĠList < T >, ĊĠĠĠ Ġtitle : ĠString , ĊĠĠĠ Ġrefresh ing : ĠBoolean , ĊĠĠĠ Ġopen Me als Details : Ġ( String ) Ġ-> ĠUnit , ĊĠĠĠ Ġopen Category Details : Ġ( String ) Ġ-> ĠUnit , ĊĠĠĠ Ġopen Area Details : Ġ( String ) Ġ-> ĠUnit , ĊĠĠĠ Ġmodifier : ĠModifier Ġ= ĠModifier Ċ ) Ġ{ ĊĊĠĠĠ ĠColumn ( modifier ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( refresh ing Ġ|| Ġitems . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSp acer ( Modifier . height ( Layout . gutter )) ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠHeader ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġtitle , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġloading Ġ= Ġrefresh ing , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠHandle Category Types ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitems Ġ= Ġitems , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġtitle , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġopen Me al Details Ġ= Ġopen Me als Details , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġopen Category Details Ġ= Ġopen Category Details , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġopen Area Details Ġ= Ġopen Area Details ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Suppress (" UN CHECK ED _ CAST ") Ċ @ Composable Ċ internal Ġfun Ġ< T > ĠHandle Category Types ( ĊĠĠĠ Ġitems : ĠList < T >, ĊĠĠĠ Ġtitle : ĠString , ĊĠĠĠ Ġopen Me al Details : Ġ( String ) Ġ-> ĠUnit , ĊĠĠĠ Ġopen Category Details : Ġ( String ) Ġ-> ĠUnit , ĊĠĠĠ Ġopen Area Details : Ġ( String ) Ġ-> ĠUnit , Ċ ) Ġ{ ĊĠĠĠ Ġval Ġpopular Ġ= Ġstring Resource ( R . string . category _ type _ popular ) ĊĠĠĠ Ġval Ġcategories Ġ= Ġstring Resource ( R . string . category _ type _ all _ categories ) ĊĠĠĠ Ġval Ġrecommended Ġ= Ġstring Resource ( R . string . category _ type _ recommended ) ĊĠĠĠ Ġval Ġareas Ġ= Ġstring Resource ( R . string . category _ type _ areas ) ĊĊĠĠĠ Ġif Ġ( items . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( title ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpopular Ġ-> ĠRandom ized Me als ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcategory Me als Ġ= Ġitems Ġas ĠList < Category Details >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Me al Details Ġ= Ġopen Me al Details ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcategories Ġ-> ĠHighlight ed Categories ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcategories Ġ= Ġitems Ġas ĠList < Category >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Category Details Ġ= Ġopen Category Details ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrecommended Ġ-> ĠRandom ized Me als ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcategory Me als Ġ= Ġitems Ġas ĠList < Category Details >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Me al Details Ġ= Ġopen Me al Details ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġareas Ġ-> ĠAre as ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġareas Ġ= Ġitems Ġas ĠList < Area >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Area Details Ġ= Ġopen Area Details ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Opt In ( Experimental Animation Api :: class ) Ċ @ Composable Ċ internal Ġfun ĠHeader ( ĊĠĠĠ Ġtitle : ĠString , ĊĠĠĠ Ġmodifier : ĠModifier Ġ= ĠModifier , ĊĠĠĠ Ġloading : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġcontent : Ġ@ Composable ĠRow Scope . () Ġ-> ĠUnit Ġ= Ġ{} Ċ ) Ġ{ ĊĠĠĠ ĠRow ( modifier ) Ġ{ ĊĠĠĠĠĠĠĠ ĠSp acer ( Modifier . width ( Layout . body Margin )) ĊĊĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġtitle , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle Ġ= ĠMaterial Theme . typography . subtitle 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. align ( Alignment . Center Vert ically ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( vertical Ġ= Ġ 8 . dp ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠSp acer ( Modifier . weight ( 1 f )) ĊĊĠĠĠĠĠĠĠ ĠAnimated Visibility ( visible Ġ= Ġloading ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAuto Sized Circular Progress Indicator ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= Ġget Theme Primary Color (). copy ( alpha Ġ= Ġ 0 . 5 f ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( 8 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. size ( 1 6 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġcontent () ĊĊĠĠĠĠĠĠĠ ĠSp acer ( Modifier . width ( Layout . body Margin )) ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ fun Ġ< T > ĠCollection ( ĊĠĠĠ Ġitems : ĠList < T >, ĊĠĠĠ Ġtitle : ĠString , ĊĠĠĠ Ġopen Me al Details : Ġ( String ) Ġ-> ĠUnit , ĊĠĠĠ Ġopen Category Details : Ġ( String ) Ġ-> ĠUnit , ĊĠĠĠ Ġopen Area Details : Ġ( String ) Ġ-> ĠUnit , ĊĠĠĠ Ġmodifier : ĠModifier Ġ= ĠModifier Ċ ) Ġ{ ĊĠĠĠ ĠColumn ( modifier ) Ġ{ ĊĠĠĠĠĠĠĠ ĠSp acer ( Modifier . height ( Layout . gutter )) ĊĊĠĠĠĠĠĠĠ ĠHandle Category Types ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitems Ġ= Ġitems , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle Ġ= Ġtitle , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġopen Me al Details Ġ= Ġopen Me al Details , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġopen Category Details Ġ= Ġopen Category Details , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġopen Area Details Ġ= Ġopen Area Details ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ