package Ġcom . example . bor uto app . feature _ hero . presentation . screens . splash Ċ Ċ import Ġandroidx . compose . animation . core . Anim atable Ċ import Ġandroidx . compose . animation . core . t ween Ċ import Ġandroidx . compose . foundation . Image Ċ import Ġandroidx . compose . foundation . background Ċ import Ġandroidx . compose . foundation . is System In Dark Theme Ċ import Ġandroidx . compose . foundation . layout . Box Ċ import Ġandroidx . compose . foundation . layout . fill MaxSize Ċ import Ġandroidx . compose . runtime .* Ċ import Ġandroidx . compose . ui . Alignment Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . draw . rotate Ċ import Ġandroidx . compose . ui . graphics . Brush Ċ import Ġandroidx . compose . ui . graphics . Color Ċ import Ġandroidx . compose . ui . res . p ainter Resource Ċ import Ġandroidx . compose . ui . res . string Resource Ċ import Ġandroidx . compose . ui . tool ing . preview . Preview Ċ import Ġandroidx . h ilt . navigation . compose . h ilt ViewModel Ċ import Ġandroidx . navigation . Nav Host Controller Ċ import Ġcom . example . bor uto app . R Ċ import Ġcom . example . bor uto app . navigation . Screen Ċ import Ġcom . example . bor uto app . ui . theme . Pur ple 5 0 0 Ċ import Ġcom . example . bor uto app . ui . theme . Pur ple 7 0 0 Ċ Ċ @ Composable Ċ fun ĠSpl ash Screen ( ĊĠĠĠ Ġnav Controller : ĠNav Host Controller , ĊĠĠĠ Ġsplash ViewModel : ĠSpl ash ViewModel Ġ= Ġh ilt ViewModel () Ċ ) Ġ{ ĊĊĠĠĠ Ġval Ġon Board ing Completed Ġby Ġsplash ViewModel . on Board ing Completed . collect As State () ĊĊĠĠĠ Ġval Ġdegrees Ġ= Ġremember Ġ{ ĠAnim atable ( 0 f ) Ġ} ĊĊĠĠĠ ĠLa unched Effect ( key 1 Ġ= Ġtrue ){ ĊĠĠĠĠĠĠĠ Ġdegrees . animate To ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtarget Value Ġ= Ġ 3 6 0 f , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġanimation Spec Ġ= Ġt ween ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġduration Millis Ġ= Ġ 1 0 0 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelay Millis Ġ= Ġ 2 0 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġnav Controller . pop Back Stack () ĊĠĠĠĠĠĠĠ Ġif ( on Board ing Completed ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnav Controller . navigate ( Screen . Home . route ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnav Controller . navigate ( Screen . Welcome . route ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ ĠSpl ash ( degrees Ġ= Ġdegrees . value ) Ċ } Ċ Ċ @ Composable Ċ fun ĠSpl ash ( degrees : ĠFloat ) Ġ{ ĊĠĠĠ Ġif Ġ( is System In Dark Theme ()){ ĊĠĠĠĠĠĠĠ ĠBox ( modifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. background ( Color . Black ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. fill MaxSize (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Alignment Ġ= ĠAlignment . Center ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . rotate ( degrees Ġ= Ġdegrees ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpainter Ġ= Ġpainter Resource ( id Ġ= ĠR . drawable . ic _ logo ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Description Ġ= Ġstring Resource ( R . string . app _ logo ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ ĠBox ( modifier Ġ= ĠModifier ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. background ( Brush . vertical Gradient ( listOf ( Pur ple 7 0 0 , ĠPur ple 5 0 0 ))) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. fill MaxSize (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Alignment Ġ= ĠAlignment . Center ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . rotate ( degrees Ġ= Ġdegrees ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpainter Ġ= Ġpainter Resource ( id Ġ= ĠR . drawable . ic _ logo ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Description Ġ= Ġstring Resource ( R . string . app _ logo ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } ĊĊ Ċ @ Preview Ċ @ Composable Ċ fun ĠSpl ash Screen Preview () Ġ{ ĊĠĠĠ ĠSpl ash ( degrees Ġ= Ġ 0 f ) Ċ }