package Ġcom . or ata k ashi . movie q . ui . review Ċ Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . paging . Paged ListAdapter Ċ import Ġandroidx . recyclerview . widget . Diff Util Ċ import Ġco il . load Ċ import Ġco il . transform . Circle Crop Transformation Ċ import Ġcom . or ata k ashi . movie q . Build Config Ċ import Ġcom . or ata k ashi . movie q . R Ċ import Ġcom . or ata k ashi . movie q . data . model . review . Data Review Ċ import Ġcom . or ata k ashi . movie q . databinding . Adapter Review Binding Ċ import Ġcom . or ata k ashi . movie q . utils . date Format Ċ import Ġcom . or ata k ashi . view binding . core . ViewHolder Ċ import Ġcom . or ata k ashi . view binding . core . view Binding Ċ import Ġcom . squareup . pic asso . Pic asso Ċ Ċ class ĠReview Adapter Ġ: ĠP aged ListAdapter < Data Review , ĠViewHolder < Adapter Review Binding >>( DIFF _ CALLBACK ) Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( ĊĠĠĠĠĠĠĠ Ġparent : ĠViewGroup , ĊĠĠĠĠĠĠĠ Ġview Type : ĠInt ĊĠĠĠ Ġ): ĠViewHolder < Adapter Review Binding > Ġ= Ġview Binding ( parent ) ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder < Adapter Review Binding >, Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( holder . binding ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( getItem ( position )?. author _ details ?. avatar _ path Ġ!= Ġnull ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġiv Image . load ( when ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetItem ( position )?. author _ details ?. avatar _ path !!. contains (" http ") Ġ|| ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetItem ( position )?. author _ details ?. avatar _ path !!. contains (" https ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĠĠ Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBuild Config . IMAGE _ URL Ġ+ ĠgetItem ( position )?. author _ details ?. avatar _ path ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĠĠĠ Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetItem ( position )?. author _ details ?. avatar _ path !!. substring ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtransformations ( Circle Crop Transformation ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Name . text Ġ= ĠgetItem ( position )?. author _ details ?. username ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Date . date Format ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetItem ( position )?. updated _ at !! ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace (" T ", Ġ" Ġ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace (" Z ", Ġ""), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" yyyy - MM - dd ĠHH : mm : ss ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" dd ĠM MMM Ġy yyy ĠHH : mm " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Content . text Ġ= ĠgetItem ( position )?. content ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠDIFF _ CALLBACK Ġ= Ġobject Ġ: ĠDiff Util . Item Callback < Data Review > (){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Items The Same ( old Item : ĠData Review , Ġnew Item : ĠData Review ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item Ġ== Ġnew Item ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Contents The Same ( old Item : ĠData Review , Ġnew Item : ĠData Review ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item . id Ġ== Ġnew Item . id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }