package Ġcom . vip ulas ri . jet instagram . ui . re els Ċ Ċ import Ġandroidx . annotation . Drawable Res Ċ import Ġandroidx . compose . foundation . Canvas Ċ import Ġandroidx . compose . foundation . Image Ċ import Ġandroidx . compose . foundation . background Ċ import Ġandroidx . compose . foundation . layout .* Ċ import Ġandroidx . compose . foundation . lazy . Lazy Column Ċ import Ġandroidx . compose . foundation . lazy . items Indexed Ċ import Ġandroidx . compose . foundation . shape . Circle Shape Ċ import Ġandroidx . compose . material .* Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Alignment Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . draw . clip Ċ import Ġandroidx . compose . ui . graphics . Color Ċ import Ġandroidx . compose . ui . graphics . Image Bitmap Ċ import Ġandroidx . compose . ui . layout . Content Scale Ċ import Ġandroidx . compose . ui . res . image Resource Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġco il . compose . remember Image Painter Ċ import Ġcom . vip ulas ri . jet instagram . R Ċ import Ġcom . vip ulas ri . jet instagram . data . Re els Repository Ċ import Ġcom . vip ulas ri . jet instagram . model . Re el Ċ import Ġcom . vip ulas ri . jet instagram . ui . components .* Ċ Ċ @ Composable Ċ fun ĠRe els () Ġ{ ĊĠĠĠ ĠBox ( modifier Ġ= ĠModifier . background ( color Ġ= ĠColor . Black )) Ġ{ ĊĠĠĠ ĠRe els List () ĊĠĠĠ ĠRe els Header () ĊĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠRe els Header () Ġ{ ĊĠ ĠRow ( ĊĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width () ĊĠĠĠĠĠĠĠĠĠ Ġ. default Padding (), ĊĠĠĠĠĠ Ġhorizontal Arrange ment Ġ= ĠArrange ment . Space Between ĊĠ Ġ) Ġ{ ĊĠĠĠ ĠText (" Re els ", Ġcolor Ġ= ĠColor . White ) ĊĠĠĠ ĠIcon ( ĊĠĠĠĠĠĠĠ ĠImage Bitmap . image Resource ( id Ġ= ĠR . drawable . ic _ outlined _ camera ), ĊĠĠĠĠĠĠĠ Ġt int Ġ= ĠColor . White , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . icon (), ĊĠĠĠĠĠĠĠ Ġcontent Description Ġ= Ġ"" ĊĠĠĠ Ġ) ĊĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠRe els List () Ġ{ ĊĠ Ġval Ġre els Ġ= ĠRe els Repository . get Re els () Ċ Ċ /* ĊĠ Ġval Ġconfiguration Ġ= ĠConfiguration Ambient . current ĊĠ Ġval Ġre els Height Ġ= Ġconfiguration . screen Height Dp . dp Ġ- Ġbottom Bar Height Ċ */ ĊĊĠĠĠ ĠLazy Column { ĊĊĠĠĠĠĠĠĠ Ġitems Indexed ( re els ) Ġ{ Ġ_, Ġre el Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBox ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Parent MaxSize (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠVideo Player ( uri Ġ= Ġre el . get Video Url ()) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠColumn ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . align ( Alignment . Bottom Start ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠRe el Footer ( re el Ġ= Ġre el ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDiv ider () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠRe el Footer ( ĊĠ Ġre el : ĠRe el Ċ ) Ġ{ ĊĠ ĠColumn ( ĊĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . default Padding (), ĊĠĠĠĠĠ Ġvertical Arrange ment Ġ= ĠArrange ment . Center ĊĠ Ġ) Ġ{ ĊĊĠĠĠ Ġ// Ġuser Ġdata ĊĠĠĠ ĠRow ( ĊĠĠĠĠĠĠĠ Ġvertical Alignment Ġ= ĠAlignment . Center Vert ically , ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠ ĠImage ( ĊĠĠĠĠĠĠĠ Ġpainter Ġ= Ġremember Image Painter ( re el . user . image ), ĊĠĠĠĠĠĠĠ Ġcontent Description Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . size ( 2 0 . dp ) ĊĠĠĠĠĠĠĠĠĠ Ġ. background ( color Ġ= ĠColor . Gray , Ġshape Ġ= ĠCircle Shape ) ĊĠĠĠĠĠĠĠĠĠ Ġ. clip ( Circle Shape ) ĊĠĠĠĠĠ Ġ) ĊĠĠĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . width ( horizontal Padding )) ĊĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġre el . user . username , ĊĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= ĠColor . White , ĊĠĠĠĠĠĠĠĠĠ Ġstyle Ġ= ĠMaterial Theme . typography . subtitle 2 ĊĠĠĠĠĠ Ġ) ĊĠĠĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . width ( horizontal Padding )) ĊĠĠĠĠĠ ĠCanvas ( modifier Ġ= ĠModifier . size ( 5 . dp ), Ġon Draw Ġ= Ġ{ ĊĠĠĠĠĠĠĠ Ġdraw Circle ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= ĠColor . White , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradius Ġ= Ġ 8 f ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . width ( horizontal Padding )) ĊĠĠĠĠĠ ĠText ( ĊĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġ" Follow ", ĊĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= ĠColor . White , ĊĠĠĠĠĠĠĠĠĠ Ġstyle Ġ= ĠMaterial Theme . typography . subtitle 2 ĊĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . height ( vertical Padding )) ĊĊĠĠĠ Ġ// Ġactions ĊĠĠĠ ĠRow ( ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . fill Max Width (), ĊĠĠĠĠĠĠĠ Ġhorizontal Arrange ment Ġ= ĠArrange ment . Space Between , ĊĠĠĠĠĠĠĠ Ġvertical Alignment Ġ= ĠAlignment . Center Vert ically ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠ ĠRow ( ĊĠĠĠĠĠĠĠĠĠ Ġvertical Alignment Ġ= ĠAlignment . Center Vert ically ĊĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠUser Action ( R . drawable . ic _ outlined _ favorite ) ĊĠĠĠĠĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . width ( horizontal Padding )) ĊĠĠĠĠĠĠĠ ĠUser Action ( R . drawable . ic _ outlined _ comment ) ĊĠĠĠĠĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . width ( horizontal Padding )) ĊĠĠĠĠĠĠĠ ĠUser Action ( R . drawable . ic _ dm ) ĊĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠ ĠRow ( ĊĠĠĠĠĠĠĠĠĠ Ġvertical Alignment Ġ= ĠAlignment . Center Vert ically ĊĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ ĠUser Action With Text ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdrawable Res Ġ= ĠR . drawable . ic _ outlined _ favorite , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġre el . likes Count . toString () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠSp acer ( modifier Ġ= ĠModifier . width ( horizontal Padding )) ĊĠĠĠĠĠĠĠ ĠUser Action With Text ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdrawable Res Ġ= ĠR . drawable . ic _ outlined _ favorite , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext Ġ= Ġre el . comments Count . toString () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠ Ġ} Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠUser Action (@ Drawable Res Ġdrawable Res : ĠInt ) Ġ{ ĊĠ ĠIcon ( ĊĠĠĠĠĠ ĠImage Bitmap . image Resource ( id Ġ= Ġdrawable Res ), ĊĠĠĠĠĠ Ġt int Ġ= ĠColor . White , ĊĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . icon (), ĊĠĠĠĠĠ Ġcontent Description Ġ= Ġ"" ĊĠ Ġ) Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠUser Action With Text ( ĊĠ Ġ@ Drawable Res Ġdrawable Res : ĠInt , ĊĠ Ġtext : ĠString Ċ ) Ġ{ ĊĠ ĠIcon ( ĊĠĠĠĠĠ ĠImage Bitmap . image Resource ( id Ġ= Ġdrawable Res ), ĊĠĠĠĠĠ Ġt int Ġ= ĠColor . White , ĊĠĠĠĠĠ Ġmodifier Ġ= ĠModifier . size ( 1 8 . dp ), ĊĠĠĠĠĠ Ġcontent Description Ġ= Ġ"" ĊĠ Ġ) ĊĠ ĠSp acer ( modifier Ġ= ĠModifier . width ( horizontal Padding Ġ/ Ġ 2 )) ĊĠ ĠText ( ĊĠĠĠĠĠ Ġtext Ġ= Ġtext , ĊĠĠĠĠĠ Ġcolor Ġ= ĠColor . White , ĊĠĠĠĠĠ Ġstyle Ġ= ĠMaterial Theme . typography . body 2 ĊĠ Ġ) Ċ } Ċ Ċ @ Composable Ċ private Ġfun ĠLoading Indicator ( modifier : ĠModifier ) Ġ{ ĊĠ ĠBox ( ĊĠĠĠĠĠ Ġmodifier Ġ= Ġmodifier , ĊĠĠĠĠĠ Ġcontent Alignment Ġ= ĠAlignment . Center ĊĠ Ġ) Ġ{ ĊĠĠĠ ĠCircular Progress Indicator ( ĊĠĠĠĠĠĠĠ Ġcolor Ġ= ĠColor . Gray , ĊĠĠĠĠĠĠĠ ĠstrokeWidth Ġ= Ġ 2 . dp ĊĠĠĠ Ġ) ĊĠ Ġ} Ċ }