package Ġcom . my k . feature . search . presentation . search Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroidx . paging . Paging Data Adapter Ċ import Ġcom . my k . feature . search . databinding . Pokemon Item Binding Ċ import Ġcom . my k . feature . search . domain . model . Pokemon Domain Model Ċ Ċ class ĠPokemon Adapter Ġ: ĠP aging Data Adapter < Pokemon Domain Model , ĠPokemon ViewHolder >( ĊĠĠĠ ĠSearch Fragment . Pokemon Diff Util () Ċ ) Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġon ItemClickListener : Ġ(( Pokemon Domain Model , ĠImageView ) Ġ-> ĠUnit )? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠPokemon ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= ĠgetItem ( position ) Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġholder . item View . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon ItemClickListener ?. invoke ( item , Ġholder . binding . imageView ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġholder . bind ( item ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset OnClickListener ( listener : Ġ( Pokemon Domain Model , ĠImageView ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠĠĠ Ġon ItemClickListener Ġ= Ġlistener ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ) Ġ= ĠPokemon ViewHolder ( ĊĠĠĠĠĠĠĠ ĠPokemon Item Binding . inflate ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLayoutInflater . from ( parent . context ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparent , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ) Ċ } Ċ