package Ġchat . sphinx . concept _ image _ loader Ċ Ċ import Ġchat . sphinx . wrapper _ view . Px Ċ Ċ @ Suppress (" Data Class Private Constructor ") Ċ data Ġclass ĠImage Loader Options Ġprivate Ġconstructor ( ĊĠĠĠ Ġval Ġtransformation : ĠTransformation ?, ĊĠĠĠ Ġval Ġtransition : ĠTransition , ĊĠĠĠ Ġval Ġerror Res Id : ĠInt ?, ĊĠĠĠ Ġval Ġplaceholder Res Id : ĠInt ?, ĊĠĠĠ Ġval Ġadditional Headers : ĠMap < String , ĠString >, Ċ ) Ġ{ ĊĊĠĠĠ Ġclass ĠBuilder Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġtransformation : ĠTransformation ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġtransition : ĠTransition Ġ= ĠTransition . None ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġerror Res Id : ĠInt ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġplaceholder Res Id : ĠInt ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġadditional Headers : ĠMutable Map < String , ĠString > Ġ= ĠLinkedHashMap ( 0 ) ĊĊĠĠĠĠĠĠĠ Ġfun Ġtransformation ( transformation : ĠTransformation ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . transformation Ġ= Ġtransformation ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġtransition ( transition : ĠTransition ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . transition Ġ= Ġtransition ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġerror Res Id ( resourceId : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . error Res Id Ġ= Ġresource Id ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġplaceholder Res Id ( resourceId : ĠInt ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . placeholder Res Id Ġ= Ġresource Id ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( this . error Res Id Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis . error Res Id Ġ= Ġresource Id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġadd Header ( key : ĠString , Ġvalue : ĠString ) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( key . isNotEmpty () Ġ&& Ġvalue . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadditional Headers [ key ] Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġbuild () Ġ= ĠImage Loader Options ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtransformation , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtransition , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġerror Res Id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġplaceholder Res Id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadditional Headers , ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ sealed Ġclass ĠTransformation Ġ{ ĊĊĠĠĠ Ġdata Ġclass ĠBl ur ( ĊĠĠĠĠĠĠĠ Ġval Ġradius : ĠFloat Ġ= ĠDEFAULT _ RADIUS , ĊĠĠĠĠĠĠĠ Ġval Ġsampling : ĠFloat Ġ= ĠDEFAULT _ SAMP LING , ĊĠĠĠ Ġ): ĠTransformation () Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconst Ġval ĠDEFAULT _ RADIUS Ġ= Ġ 1 0 f ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconst Ġval ĠDEFAULT _ SAMP LING Ġ= Ġ 1 f ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠCircle Crop : ĠTransformation () ĊĠĠĠ Ġobject ĠGray Scale : ĠTransformation () ĊĊĠĠĠ Ġdata Ġclass ĠRo unded C orners ( ĊĠĠĠĠĠĠĠ Ġval Ġtop Left : ĠPx Ġ= ĠPx ( 0 f ), ĊĠĠĠĠĠĠĠ Ġval Ġtop Right : ĠPx Ġ= ĠPx ( 0 f ), ĊĠĠĠĠĠĠĠ Ġval Ġbottom Left : ĠPx Ġ= ĠPx ( 0 f ), ĊĠĠĠĠĠĠĠ Ġval Ġbottom Right : ĠPx Ġ= ĠPx ( 0 f ), ĊĠĠĠ Ġ): ĠTransformation () Ċ } Ċ Ċ sealed Ġclass ĠTransition Ġ{ ĊĊĠĠĠ Ġdata Ġclass ĠCross Fade ( ĊĠĠĠĠĠĠĠ Ġval Ġduration Millis : ĠInt Ġ= ĠDEFAULT _ DURATION , ĊĠĠĠĠĠĠĠ Ġval Ġprefer Exact Intr insic Size : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġ): ĠTransition () Ġ{ ĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconst Ġval ĠDEFAULT _ DURATION Ġ= Ġ 1 0 0 ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġobject ĠNone : ĠTransition () Ċ }