/* Ċ Ġ* ĠCopyright Ġ 2 0 2 1 ĠStream . IO , ĠInc . ĠAll ĠRights ĠReserved . Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġio . get stream . av engers chat . view . custom Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroidx . annotation . Color Int Ċ import Ġio . get stream . av engers chat . R Ċ import Ġio . get stream . av engers chat . extensions . drawable Ċ import Ġio . get stream . chat . android . ui . Chat UI Ċ import Ġio . get stream . chat . android . ui . Style Transformer Ċ import Ġio . get stream . chat . android . ui . Supported Re actions Ċ import Ġio . get stream . chat . android . ui . Transform Style Ċ Ċ /** Ċ Ġ* ĠStream Global Styles Ġun ify Ġthe Ġstyles Ġof Ġthe ĠStream ĠUI Ġcomponents Ġby Ġusing Ġthe Ċ Ġ* Ġglobal Ġstyle Ġtransformer Ġ[ Transform Style ]. Ċ Ġ*/ Ċ object ĠStream Global Styles Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ ĠTransform Style . channel Actions Dialog Style Transformer Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStyle Transformer Ġ{ Ġchannel Actions Dialog Style Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel Actions Dialog Style . copy ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġleave Group Enabled Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġupdates Ġand Ġun ifies Ġthe ĠStream ĠUI Ġcomponents Ġcolor Ġthemes . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġupdate Primary Color Global Styles (@ Color Int Ġcolor : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ ĠTransform Style . channel List Style Transformer Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStyle Transformer Ġ{ Ġchannel List Style Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchannel List Style . copy ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġindicator Read Icon Ġ= Ġchannel List Style . indicator Read Icon . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Tint ( color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠTransform Style . message ListItem Style Transformer Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStyle Transformer Ġ{ Ġmessage ListItem Style Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage ListItem Style . copy ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage BackgroundColor Mine Ġ= Ġcolor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdate Separator BackgroundColor Ġ= Ġcolor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Style Date Separator Ġ= Ġmessage ListItem Style . text Style Date Separator , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Style UserName Ġ= Ġmessage ListItem Style . text Style UserName . copy ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcolor Ġ= Ġcolor ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġicon Indicator Read Ġ= Ġmessage ListItem Style . icon Indicator Read . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Tint ( color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠTransform Style . message Input Style Transformer Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠStyle Transformer Ġ{ Ġmessage Input Style Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Input Style . copy ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsend Button Enabled Icon Ġ= Ġmessage Input Style . send Button Enabled Icon . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Tint ( color ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġupdates Ġand Ġun ifies Ġthe ĠStream ĠUI Ġcomponents Ġreaction Ġdata . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġinitialize Re actions Global Styles ( context : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsupported Re actions Data Ġ= Ġre actions . map Values Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdrawable Ġ= Ġcontext . drawable ( it . value ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSupported Re actions . Reaction Drawable ( drawable , Ġdrawable ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠChat UI . supported Re actions Ġ= ĠSupported Re actions ( context , Ġsupported Re actions Data ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġre actions : ĠMap < String , ĠInt > Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠ Ġ" like " Ġto ĠR . drawable . thumb sup , ĊĠĠĠĠĠĠĠ Ġ" love " Ġto ĠR . drawable . love , ĊĠĠĠĠĠĠĠ Ġ" smile " Ġto ĠR . drawable . smile , ĊĠĠĠĠĠĠĠ Ġ" joy " Ġto ĠR . drawable . joy , ĊĠĠĠĠĠĠĠ Ġ" w ink " Ġto ĠR . drawable . w ink ĊĠĠĠ Ġ) Ċ } Ċ