package Ġbr . com . luc as cor de iro . poke dex . compose . ui . components Ċ Ċ import Ġandroidx . compose . foundation . Icon Ċ import Ġandroidx . compose . foundation . Text Ċ import Ġandroidx . compose . foundation . click able Ċ import Ġandroidx . compose . foundation . layout . preferred Size Ċ import Ġandroidx . compose . material . IconButton Ċ import Ġandroidx . compose . material . Material Theme Ċ import Ġandroidx . compose . material . Top AppBar Ċ import Ġandroidx . compose . material . icons . Icons Ċ import Ġandroidx . compose . material . icons . filled . Keyboard Arrow Left Ċ import Ġandroidx . compose . material . icons . rounded . Clear Ċ import Ġandroidx . compose . material . icons . rounded . Done Ċ import Ġandroidx . compose . material . icons . rounded . Filter Alt Ċ import Ġandroidx . compose . material . icons . rounded . Keyboard Back space Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . graphics . Color Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġandroidx . ui . tool ing . preview . Preview Ċ import Ġbr . com . luc as cor de iro . poke dex . compose . ui . theme . Po ke dex Compose Theme Ċ Ċ @ Composable Ċ fun ĠTop Bar ( ĊĠĠĠ Ġtitle : ĠString , ĊĠĠĠ Ġt int : ĠColor Ġ= ĠMaterial Theme . colors . on Surface , ĊĠĠĠ Ġon Back Click : Ġ() Ġ-> ĠUnit , ĊĠĠĠ Ġfilter : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġon Filter Mode : ĠBoolean Ġ= Ġfalse , ĊĠĠĠ Ġapply Filter : Ġ() Ġ-> ĠUnit Ġ= Ġ{}, ĊĠĠĠ Ġcancel Filter : Ġ() Ġ-> ĠUnit Ġ= Ġ{}, ĊĠĠĠ Ġopen Filter : Ġ() Ġ-> ĠUnit Ġ= Ġ{}, ĊĠĠĠ Ġmodifier : ĠModifier Ġ= ĠModifier Ċ ) Ġ{ ĊĠĠĠ ĠTop AppBar ( ĊĠĠĠĠĠĠĠ Ġtitle Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġtitle , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= Ġif ( on Filter Mode ) ĠMaterial Theme . colors . on Surface Ġelse Ġt int ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġnavigation Icon Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIcon Button ( onClick Ġ= Ġ{ if ( on Filter Mode ) Ġcancel Filter () Ġelse Ġon Back Click () Ġ}) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIcon ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġasset Ġ= Ġif ( on Filter Mode ) ĠIcons . Rounded . Clear Ġelse ĠIcons . Rounded . Keyboard Back space , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt int Ġ= Ġif ( on Filter Mode ) ĠMaterial Theme . colors . on Surface . copy ( alpha Ġ= Ġ 0 . 3 f ) Ġelse Ġt int ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġactions Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( filter ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIcon Button ( onClick Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( on Filter Mode ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġapply Filter () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} else { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġopen Filter () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠIcon ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġasset Ġ= Ġif ( on Filter Mode ) ĠIcons . Rounded . Done Ġelse ĠIcons . Rounded . Filter Alt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt int Ġ= Ġif ( on Filter Mode ) ĠMaterial Theme . colors . on Surface Ġelse Ġt int ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= Ġmodifier ĊĠĠĠ Ġ) Ċ } Ċ Ċ @ Preview Ċ @ Composable Ċ fun ĠPreview Top Bar () Ġ{ ĊĠĠĠ ĠPo ke dex Compose Theme ( dark Theme Ġ= Ġtrue ) Ġ{ ĊĠĠĠĠĠĠĠ ĠTop Bar ( title Ġ= Ġ" Po ke dex ", Ġon Back Click Ġ= Ġ{}) ĊĠĠĠ Ġ} Ċ } Ċ