package Ġcom . rf on zi . m vi _ sample . compose . second Page Ċ Ċ import Ġandroidx . compose . animation . animate Color As State Ċ import Ġandroidx . compose . animation . core . Fast Out Linear In E asing Ċ import Ġandroidx . compose . animation . core . t ween Ċ import Ġandroidx . compose . foundation . Experimental Foundation Api Ċ import Ġandroidx . compose . foundation . background Ċ import Ġandroidx . compose . foundation . click able Ċ import Ġandroidx . compose . foundation . layout .* Ċ import Ġandroidx . compose . foundation . lazy . Grid Cells Ċ import Ġandroidx . compose . foundation . lazy . Lazy Vertical Grid Ċ import Ġandroidx . compose . foundation . lazy . items Ċ import Ġandroidx . compose . material . Card Ċ import Ġandroidx . compose . material . Circular Progress Indicator Ċ import Ġandroidx . compose . material . Material Theme Ċ import Ġandroidx . compose . material . Text Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . runtime . getValue Ċ import Ġandroidx . compose . runtime . mutable State Of Ċ import Ġandroidx . compose . runtime . remember Ċ import Ġandroidx . compose . ui . Alignment Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . graphics . Color Ċ import Ġandroidx . compose . ui . tool ing . preview . Preview Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġcom . rf on zi . m vi _ sample . shared . domain Models . Color Model Ċ import Ġcom . rf on zi . m vi _ sample . shared . ui Models . Second Page Ċ Ċ @ Composable Ċ fun ĠColor Page ( ĊĠĠĠ Ġmodifier : ĠModifier Ġ= ĠModifier , ĊĠĠĠ Ġmodel : ĠSecond Page , ĊĠĠĠ Ġclicked Model : Ġ( Color Model ) Ġ-> ĠUnit Ċ ) Ġ{ ĊĠĠĠ Ġwhen Ġ( model ) Ġ{ ĊĠĠĠĠĠĠĠ Ġis ĠSecond Page . Colors Visible Ġ-> ĠColors Visible Page ( model Ġ= Ġmodel ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclicked Model ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġis ĠSecond Page . Loading Ġ-> ĠColors Loading () ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ @ Composable Ċ fun ĠColors Loading () Ġ{ ĊĠĠĠ ĠBox ( ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill MaxSize (), ĊĠĠĠĠĠĠĠ Ġcontent Alignment Ġ= ĠAlignment . Center ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠCircular Progress Indicator () ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ @ Composable Ċ fun ĠColors Visible Page ( ĊĠĠĠ Ġmodel : ĠSecond Page . Colors Visible , ĊĠĠĠ Ġclicked Model : Ġ( Color Model ) Ġ-> ĠUnit Ċ ) Ġ{ ĊĠĠĠ Ġval Ġdefault Color Ġ= ĠMaterial Theme . colors . surface ĊĠĠĠ Ġval Ġcolor : ĠColor Ġby Ġremember Ġ{ ĊĠĠĠĠĠĠĠ Ġmutable State Of ( Color ( model . chosen Color Model ?. color Ġ?: Ġdefault Color . value . to Long ())) ĊĠĠĠ Ġ} ĊĠĠĠ Ġval Ġselected Color : ĠColor Ġby Ġanimate Color As State ( ĊĠĠĠĠĠĠĠ Ġtarget Value Ġ= Ġcolor , ĊĠĠĠĠĠĠĠ Ġanimation Spec Ġ= Ġt ween ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġduration Millis Ġ= Ġ 2 0 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeasing Ġ= ĠFast Out Linear In E asing ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) ĊĊĠĠĠ ĠColumn Ġ{ ĊĠĠĠĠĠĠĠ ĠSelected Color Preview ( color Ġ= Ġselected Color ) ĊĠĠĠĠĠĠĠ ĠColor List ( model . listOf Color Models ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclicked Model ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Preview Ċ @ Composable Ċ fun ĠSelected Color Preview ( ĊĠĠĠ Ġcolor : ĠColor Ġ= ĠMaterial Theme . colors . primary Ċ ) Ġ{ ĊĠĠĠ ĠBox ( ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. fill Max Width () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. height ( 4 0 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. background ( color ) ĊĠĠĠ Ġ) Ċ } Ċ Ċ @ Opt In ( Experimental Foundation Api :: class ) Ċ @ Composable Ċ fun ĠColor List ( ĊĠĠĠ ĠlistOf Color Models : ĠList < Color Model >, ĊĠĠĠ Ġclicked Model : Ġ( Color Model ) Ġ-> ĠUnit Ċ ) Ġ{ ĊĠĠĠ ĠLazy Vertical Grid ( ĊĠĠĠĠĠĠĠ Ġcells Ġ= ĠGrid Cells . Adaptive ( 8 0 . dp ), ĊĠĠĠĠĠĠĠ Ġcontent Padding Ġ= ĠPadding Values ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Ġ= Ġ 8 . dp , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtop Ġ= Ġ 8 . dp , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġend Ġ= Ġ 1 6 . dp , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbottom Ġ= Ġ 1 6 . dp ĊĠĠĠĠĠĠĠ Ġ), ĊĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġitems ( listOf Color Models ) Ġ{ Ġitem Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBox ( modifier Ġ= ĠModifier . padding ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Ġ= Ġ 8 . dp , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtop Ġ= Ġ 8 . dp ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ)) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColor Item ( item ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġclicked Model ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Preview Ċ @ Composable Ċ fun ĠColor Item ( ĊĠĠĠ Ġmodel : ĠColor Model Ġ= ĠColor Model ( 1 , Ġ" Green ", Ġ 0 xFF 0 0 FF 0 0 ), ĊĠĠĠ ĠonClick : Ġ( Color Model ) Ġ-> ĠUnit Ġ= Ġ{} Ċ ) Ġ{ ĊĠĠĠ ĠCard ( ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. width ( 6 0 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. click able Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick ( model ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠColumn Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBox ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. fill Max Width () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. height ( 6 0 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. background ( Color ( model . color )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġmodel . description , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . padding ( 8 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }