/* Ċ Ġ* ĠCopyright Ġ 2 0 2 2 ĠCompose ĠA cademy Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġa cademy . compose . music . ui Ċ Ċ import Ġa cademy . compose . music . Content Factory Ċ import Ġa cademy . compose . music . Tags . TAG _ DASH BOARD Ċ import Ġa cademy . compose . music . Tags . TAG _ SEARCH _ RESULTS Ċ import Ġa cademy . compose . music . Tags . TAG _ TRACK S _ DASH BOARD Ċ import Ġa cademy . compose . music . model . Music Dashboard State Ċ import Ġa cademy . compose . music . model . Track Ċ import Ġa cademy . compose . music . ui . featured . Feature d Tracks Ċ import Ġa cademy . compose . music . ui . new _ tracks . New Tracks Ċ import Ġa cademy . compose . music . ui . recent . Recent Tracks Ċ import Ġa cademy . compose . music . ui . search . SearchResults Ċ import Ġandroidx . compose . foundation . Experimental Foundation Api Ċ import Ġandroidx . compose . foundation . layout . Padding Values Ċ import Ġandroidx . compose . foundation . layout . fill Max Width Ċ import Ġandroidx . compose . foundation . lazy . Lazy Column Ċ import Ġandroidx . compose . material . Material Theme Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . platform . test Tag Ċ import Ġandroidx . compose . ui . tool ing . preview . Preview Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġdev . chr is ban es . snap per . Experimental Snap per Api Ċ Ċ @ Opt In ( Experimental Foundation Api :: class ) Ċ @ Experimental Snap per Api Ċ @ Composable Ċ fun ĠTrack s Dashboard ( ĊĠĠĠ Ġmodifier : ĠModifier Ġ= ĠModifier , ĊĠĠĠ Ġstate : ĠMusic Dashboard State , ĊĠĠĠ Ġon Track Clicked : Ġ( track : ĠTrack ) Ġ-> ĠUnit Ċ ) Ġ{ ĊĠĠĠ Ġif Ġ( state . search Term . isNull OrEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠ ĠLazy Column ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= Ġmodifier . test Tag ( TAG _ TRACK S _ DASH BOARD ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Padding Ġ= ĠPadding Values ( top Ġ= Ġ 1 2 . dp , Ġbottom Ġ= Ġ 8 . dp ) ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFeature d Tracks ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtracks Ġ= Ġstate . featured Tracks (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Track Clicked Ġ= Ġon Track Clicked ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠNew Tracks ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtracks Ġ= Ġstate . new Tracks (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Track Clicked Ġ= Ġon Track Clicked ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! state . recent Tracks (). isNull OrEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠRecent Tracks ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtracks Ġ= Ġstate . recent Tracks (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Track Clicked Ġ= Ġon Track Clicked ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ ĠSearch Results ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= Ġmodifier ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. fill Max Width () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. test Tag ( TAG _ SEARCH _ RESULTS ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresults Ġ= Ġstate . search Results , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Track Clicked Ġ= Ġon Track Clicked ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Experimental Snap per Api Ċ @ Preview ( show Background Ġ= Ġtrue ) Ċ @ Composable Ċ fun ĠTrack s Dashboard _ Preview () Ġ{ ĊĠĠĠ ĠMaterial Theme Ġ{ ĊĠĠĠĠĠĠĠ ĠTrack s Dashboard ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstate Ġ= ĠMusic Dashboard State ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtracks Ġ= ĠContent Factory . make Content List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Track Clicked Ġ= Ġ{ Ġ} ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ }