package Ġcom . jd agn ogo . we lov em ar athon . common . banner Ċ Ċ import Ġandroid . os . Build . VERSION . SDK _ INT Ċ import Ġandroidx . compose . foundation . Image Ċ import Ġandroidx . compose . foundation . layout . fill Max Width Ċ import Ġandroidx . compose . foundation . layout . height Ċ import Ġandroidx . compose . foundation . layout . padding Ċ import Ġandroidx . compose . material . Card Ċ import Ġandroidx . compose . material . Experimental Material Api Ċ import Ġandroidx . compose . material . Material Theme Ċ import Ġandroidx . compose . runtime . Composable Ċ import Ġandroidx . compose . ui . Modifier Ċ import Ġandroidx . compose . ui . layout . Content Scale Ċ import Ġandroidx . compose . ui . platform . Local Context Ċ import Ġandroidx . compose . ui . platform . Local Uri Handler Ċ import Ġandroidx . compose . ui . tool ing . preview . Preview Ċ import Ġandroidx . compose . ui . unit . dp Ċ import Ġco il . Image Loader Ċ import Ġco il . compose . remember Image Painter Ċ import Ġco il . decode . Gif Decoder Ċ import Ġco il . decode . Image Decoder Decoder Ċ Ċ @ Experimental Material Api Ċ @ Composable Ċ fun ĠG if Banner Component ( gif Banner : ĠG if Banner , Ġmodifier : ĠModifier Ġ= ĠModifier ) Ġ{ ĊĠĠĠ Ġval Ġcontext Ġ= ĠLocal Context . current ĊĠĠĠ Ġval Ġuri Handler Ġ= ĠLocal Uri Handler . current ĊĠĠĠ ĠCard ( ĊĠĠĠĠĠĠĠ Ġshape Ġ= ĠMaterial Theme . shapes . large , ĊĠĠĠĠĠĠĠ ĠonClick Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġuri Handler . open Uri ( gif Banner . link ) ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġmodifier Ġ= Ġmodifier ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. fill Max Width () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. height ( 8 0 . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. padding ( top Ġ= Ġ 1 6 . dp , Ġstart Ġ= Ġ 1 6 . dp , Ġend Ġ= Ġ 1 6 . dp ) ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġimage Loader Ġ= ĠImage Loader . invoke ( context ). newBuilder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. component Registry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( SDK _ INT Ġ>= Ġ 2 8 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd ( Image Decoder Decoder ( context )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd ( Gif Decoder ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. build () ĊĠĠĠĠĠĠĠ ĠImage ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpainter Ġ= Ġremember Image Painter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata Ġ= Ġgif Banner . res Link , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbuilder Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcross fade ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage Loader Ġ= Ġimage Loader ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Description Ġ= Ġgif Banner . name , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Scale Ġ= ĠContent Scale . Crop ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ @ Experimental Material Api Ċ @ Preview Ċ @ Composable Ċ fun ĠG if Banner Component Preview () Ġ{ ĊĠĠĠ ĠMaterial Theme Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġbanner Ġ= ĠG if Banner (). fake Banner () ĊĠĠĠĠĠĠĠ ĠG if Banner Component ( banner , Ġmodifier Ġ= ĠModifier ) ĊĠĠĠ Ġ} Ċ } Ċ