package Ġcom . example . play . ui Ċ Ċ import Ġandroidx . compose . foundation . background Ċ import Ġandroidx . compose . foundation . layout . Spacer Ċ import Ġandroidx . compose . foundation . layout . height Ċ import Ġandroidx . compose . foundation . layout . width Ċ import Ġandroidx . compose . foundation . shape . Rounded Corner Shape Ċ import Ġandroidx . compose . material . Scroll able Tab Row Ċ import Ġandroidx . compose . material . Tab Ċ import Ġandroidx . compose . material . Tab Position Ċ import Ġandroidx . compose . material . Tab Row Defaults . tab Indicator Offset Ċ import Ġandroidx . compose . material . Text Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . graphics . Color Ċ import Ġandroidx . compose . ui . res . string Resource Ċ import Ġandroidx . compose . ui . text . TextStyle Ċ import Ġandroidx . compose . ui . text . font . Font Weight Ċ import Ġandroidx . compose . ui . tool ing . preview . Preview Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġandroidx . compose . ui . unit . sp Ċ import Ġcom . example . play . R Ċ import Ġcom . example . play . theme . Play Theme Ċ import Ġcom . example . play . ui . Apps Category . Categories Ċ import Ġcom . example . play . ui . Apps Category . Early Access Ċ import Ġcom . example . play . ui . Apps Category . Editors Choice Ċ import Ġcom . example . play . ui . Apps Category . For You Ċ import Ġcom . example . play . ui . Apps Category . Top Charts Ċ import Ġcom . example . play . ui . Movies Category . New Releases Ċ import Ġcom . example . play . ui . Movies Category . Top Sell ing Ċ Ċ @ Composable Ċ fun ĠApps Category Tabs ( ĊĠ Ġcategories : ĠList < Apps Category >, ĊĠ Ġselected Category : ĠApps Category , ĊĠ Ġon Category Selected : Ġ( Apps Category ) Ġ-> ĠUnit Ċ ) Ġ{ ĊĠ Ġval Ġselected Index Ġ= Ġcategories . indexOf First Ġ{ Ġit Ġ== Ġselected Category Ġ} ĊĠ Ġval Ġindicator Ġ= Ġ@ Composable Ġ{ Ġtab Positions : ĠList < Tab Position > Ġ-> ĊĠĠĠ ĠHome Category Tab Indicator ( ĊĠĠĠĠĠ ĠModifier . tab Indicator Offset ( tab Positions [ selectedIndex ]) ĊĠĠĠ Ġ) ĊĠ Ġ} ĊĊĠ ĠScroll able Tab Row ( ĊĠĠĠ Ġselected TabIndex Ġ= Ġselected Index , ĊĠĠĠ Ġindicator Ġ= Ġindicator , ĊĠĠĠ ĠbackgroundColor Ġ= ĠPlay Theme . colors . ui Background , ĊĠĠĠ Ġedge Padding Ġ= Ġ 3 2 . dp ĊĠ Ġ) Ġ{ ĊĠĠĠ Ġcategories . forEach Indexed Ġ{ Ġindex , Ġcategory Ġ-> ĊĠĠĠĠĠ ĠTab ( ĊĠĠĠĠĠĠĠ Ġselected Ġ= Ġindex Ġ== Ġselected Index , ĊĠĠĠĠĠĠĠ ĠonClick Ġ= Ġ{ Ġon Category Selected ( category ) Ġ}, ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . background ( color Ġ= ĠPlay Theme . colors . ui Background ), ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġwhen Ġ( category ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFor You Ġ-> Ġstring Resource ( R . string . for _ you ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTop Charts Ġ-> Ġstring Resource ( R . string . top _ charts ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCategories Ġ-> Ġstring Resource ( R . string . categories ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEditor s Choice Ġ-> Ġstring Resource ( R . string . editor s _ choice ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEarly Access Ġ-> Ġstring Resource ( R . string . early _ access ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= Ġif Ġ( index Ġ== Ġselected Index ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPlay Theme . colors . accent ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPlay Theme . colors . text Primary ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle Ġ= ĠTextStyle ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontWeight Ġ= ĠFontWeight . Normal , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 2 . sp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ fun ĠMov ies Category Tabs ( ĊĠ Ġcategories : ĠList < Movies Category >, ĊĠ Ġselected Category : ĠMov ies Category , ĊĠ Ġon Category Selected : Ġ( Movies Category ) Ġ-> ĠUnit Ċ ) Ġ{ ĊĠ Ġval Ġselected Index Ġ= Ġcategories . indexOf First Ġ{ Ġit Ġ== Ġselected Category Ġ} ĊĠ Ġval Ġindicator Ġ= Ġ@ Composable Ġ{ Ġtab Positions : ĠList < Tab Position > Ġ-> ĊĠĠĠ ĠHome Category Tab Indicator ( ĊĠĠĠĠĠ ĠModifier . tab Indicator Offset ( tab Positions [ selectedIndex ]) ĊĠĠĠ Ġ) ĊĠ Ġ} ĊĊĠ ĠScroll able Tab Row ( ĊĠĠĠ Ġselected TabIndex Ġ= Ġselected Index , ĊĠĠĠ Ġindicator Ġ= Ġindicator , ĊĠĠĠ ĠbackgroundColor Ġ= ĠPlay Theme . colors . ui Background , ĊĠĠĠ Ġedge Padding Ġ= Ġ 3 2 . dp ĊĠ Ġ) Ġ{ ĊĠĠĠ Ġcategories . forEach Indexed Ġ{ Ġindex , Ġcategory Ġ-> ĊĠĠĠĠĠ ĠTab ( ĊĠĠĠĠĠĠĠ Ġselected Ġ= Ġindex Ġ== Ġselected Index , ĊĠĠĠĠĠĠĠ ĠonClick Ġ= Ġ{ Ġon Category Selected ( category ) Ġ}, ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . background ( color Ġ= ĠPlay Theme . colors . ui Background ), ĊĠĠĠĠĠĠĠ Ġtext Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġwhen Ġ( category ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠMov ies Category . For You Ġ-> Ġstring Resource ( R . string . for _ you ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTop Sell ing Ġ-> Ġstring Resource ( R . string . top _ sell ing ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠNew Releases Ġ-> Ġstring Resource ( R . string . new _ releases ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= Ġif Ġ( index Ġ== Ġselected Index ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPlay Theme . colors . accent ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPlay Theme . colors . text Primary ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstyle Ġ= ĠTextStyle ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontWeight Ġ= ĠFontWeight . Normal , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfontSize Ġ= Ġ 1 2 . sp ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ fun ĠHome Category Tab Indicator ( ĊĠ Ġmodifier : ĠModifier Ġ= ĠModifier , ĊĠ Ġcolor : ĠColor Ġ= ĠPlay Theme . colors . accent Ċ ) Ġ{ ĊĠ ĠSp acer ( ĊĠĠĠ Ġmodifier ĊĠĠĠĠĠ Ġ. width ( 5 . dp ) ĊĠĠĠĠĠ Ġ. height ( 3 . dp ) ĊĠĠĠĠĠ Ġ. background ( color , ĠRo unded Corner Shape ( percent Ġ= Ġ 5 0 )) ĊĠ Ġ) Ċ } Ċ Ċ @ Preview Ċ @ Composable Ċ fun ĠApp Category Tabs Preview () Ġ{ ĊĠ ĠPlay Theme Ġ{ ĊĠĠĠ ĠApps Category Tabs ( ĊĠĠĠĠĠ Ġcategories Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ ĠFor You , ĠTop Charts , ĠCategories , ĠEditor s Choice , ĠEarly Access ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ Ġselected Category Ġ= ĠFor You , ĊĠĠĠĠĠ Ġon Category Selected Ġ= Ġ{} ĊĠĠĠ Ġ) ĊĠ Ġ} Ċ } Ċ Ċ @ Preview Ċ @ Composable Ċ fun ĠApp Category Tabs Dark Preview () Ġ{ ĊĠ ĠPlay Theme ( dark Theme Ġ= Ġtrue ) Ġ{ ĊĠĠĠ ĠApps Category Tabs ( ĊĠĠĠĠĠ Ġcategories Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ ĠFor You , ĠTop Charts , ĠCategories , ĠEditor s Choice , ĠEarly Access ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ Ġselected Category Ġ= ĠFor You , ĊĠĠĠĠĠ Ġon Category Selected Ġ= Ġ{} ĊĠĠĠ Ġ) ĊĠ Ġ} Ċ } Ċ Ċ @ Preview Ċ @ Composable Ċ fun ĠMovie Category Tabs Preview () Ġ{ ĊĠ ĠPlay Theme Ġ{ ĊĠĠĠ ĠMov ies Category Tabs ( ĊĠĠĠĠĠ Ġcategories Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ ĠMov ies Category . For You , ĠTop Sell ing , ĠNew Releases ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ Ġselected Category Ġ= ĠMov ies Category . For You , ĊĠĠĠĠĠ Ġon Category Selected Ġ= Ġ{} ĊĠĠĠ Ġ) ĊĠ Ġ} Ċ } Ċ Ċ @ Preview Ċ @ Composable Ċ fun ĠMovie Category Tabs Dark Preview () Ġ{ ĊĠ ĠPlay Theme ( dark Theme Ġ= Ġtrue ) Ġ{ ĊĠĠĠ ĠMov ies Category Tabs ( ĊĠĠĠĠĠ Ġcategories Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ ĠMov ies Category . For You , ĠTop Sell ing , ĠNew Releases ĊĠĠĠĠĠ Ġ), ĊĠĠĠĠĠ Ġselected Category Ġ= ĠMov ies Category . For You , ĊĠĠĠĠĠ Ġon Category Selected Ġ= Ġ{} ĊĠĠĠ Ġ) ĊĠ Ġ} Ċ }