package Ġcom . wo 1 f . base _ android Ċ Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . graphics . Bitmap Factory Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . runtime . Mutable State Ċ import Ġandroidx . compose . runtime . mutable State Of Ċ import Ġandroidx . compose . runtime . remember Ċ import Ġandroidx . compose . ui . platform . Local Context Ċ import Ġcom . bump tech . glide . load . engine . Disk Cache Strategy Ċ import Ġcom . bump tech . glide . request . target . Custom Target Ċ import Ġcom . bump tech . glide . request . transition . Transition Ċ Ċ val Ġdefault Profile Image Ġ= ĠR . drawable . cat _ profile Ċ val Ġpost Image Place Holder Ġ= ĠR . drawable . post _ image _ place _ holder Ċ Ċ @ Composable Ċ fun Ġload Profile Image ( url : ĠString , Ġdefault Image : ĠBitmap ?): ĠBitmap ? Ġ{ ĊĊĠĠĠ Ġval Ġcontext Ġ= ĠLocal Context . current ĊĠĠĠ Ġval Ġbitmap State : ĠMutable State < Bitmap ?> Ġ= Ġremember Ġ{ ĊĠĠĠĠĠĠĠ Ġmutable State Of ( default Image Ġ?: ĠBitmap Factory . decode Resource ( context . resources , Ġdefault Profile Image )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġif Ġ( url . isNotBlank ()) Ġ{ ĊĠĠĠĠĠĠĠ ĠG lide App . with ( Local Context . current ). as Bitmap (). load ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. disk Cache Strategy ( Disk Cache Strategy . RESOURCE ). into ( object Ġ: ĠCustom Target < Bitmap >() Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Resource Ready ( resource : ĠBitmap , Ġtransition : ĠTransition < in ĠBitmap > ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbitmap State . value Ġ= Ġresource ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonLoad Cle ared ( placeholder : ĠDrawable ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn Ġbitmap State . value Ċ } Ċ Ċ @ Composable Ċ fun Ġload Post Image ( url : ĠString ): ĠBitmap ? Ġ{ ĊĠĠĠ Ġreturn Ġif Ġ( url . isNotBlank ()) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠLocal Context . current ĊĠĠĠĠĠĠĠ Ġval Ġbitmap State : ĠMutable State < Bitmap ?> Ġ= Ġremember Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmutable State Of ( Bitmap Factory . decode Resource ( context . resources , Ġpost Image Place Holder )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠG lide App . with ( Local Context . current ). as Bitmap (). load ( url ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. disk Cache Strategy ( Disk Cache Strategy . RESOURCE ). into ( object Ġ: ĠCustom Target < Bitmap >() Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Resource Ready ( resource : ĠBitmap , Ġtransition : ĠTransition < in ĠBitmap > ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbitmap State . value Ġ= Ġresource ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonLoad Cle ared ( placeholder : ĠDrawable ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġbitmap State . value ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} Ċ } Ċ