package Ġni . dev otion . float y _ head . utils Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Type face Ċ import Ġandroid . util . Typed Value Ċ import Ġandroid . view . Gravity Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroidx . annotation . Nullable Ċ import Ġni . dev otion . float y _ head . models . Margin Ċ import Ġni . dev otion . float y _ head . utils . Constants . KEY _ M ARGIN ĊĊ Ċ object ĠCommons Ġ{ ĊĠĠĠ Ġfun Ġget Map From Object ( map : ĠMap < String , ĠAny >, Ġkey : ĠString ?): ĠMap < String , ĠAny >? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmap [ key ] Ġas ĠMap < String , ĠAny >? ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Map List From Object ( map : ĠMap < String , ĠAny >, Ġkey : ĠString ?): ĠList < Map < String , ĠAny >> ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġmap [ key ] Ġas ĠList < Map < String , ĠAny >> ? ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Sp From Pixels ( context : ĠContext , Ġpx : ĠFloat ): ĠFloat Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġscaled Density Ġ= Ġcontext . resources . display Metrics . scaled Density ĊĠĠĠĠĠĠĠ Ġreturn Ġpx Ġ/ Ġscaled Density ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Pixels From Dp ( context : ĠContext , Ġdp : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( dp Ġ== Ġ- 1 ) Ġ- 1 Ġelse ĠTyped Value . apply Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTyped Value . COMPLEX _ UNIT _ DIP , Ġdp . toFloat (), Ġcontext . resources . display Metrics ). toInt () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Pixels From Dp ( context : ĠContext , Ġdp : ĠFloat ): ĠFloat Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( dp Ġ== Ġ- 1 f ) Ġ(- 1 ). toFloat () Ġelse ĠTyped Value . apply Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTyped Value . COMPLEX _ UNIT _ DIP , Ġdp , Ġcontext . resources . display Metrics ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Gravity (@ Nullable Ġgravity Str : ĠString ?, Ġdef Val : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġgravity Ġ= Ġdef Val ĊĠĠĠĠĠĠĠ Ġif Ġ( gravity Str Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( gravity Str ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" top " Ġ-> Ġgravity Ġ= ĠGr avity . TOP ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" center " Ġ-> Ġgravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" bottom " Ġ-> Ġgravity Ġ= ĠGr avity . BOTTOM ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" leading " Ġ-> Ġgravity Ġ= ĠGr avity . START ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" trailing " Ġ-> Ġgravity Ġ= ĠGr avity . END ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġgravity ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Font Weight (@ Nullable ĠfontWeight Str : ĠString ?, Ġdef Val : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġvar ĠfontWeight Ġ= Ġdef Val ĊĠĠĠĠĠĠĠ Ġif Ġ( font Weight Str Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠfontWeight Ġ= Ġwhen Ġ( font Weight Str ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" normal " Ġ-> ĠType face . NORMAL ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" bold " Ġ-> ĠType face . BOLD ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" italic " Ġ-> ĠType face . ITAL IC ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" bold _ italic " Ġ-> ĠType face . BOLD _ ITAL IC ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠType face . NORMAL ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn ĠfontWeight ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Margin ( context : ĠContext ?, Ġparams : ĠLinearLayout . LayoutParams , Ġmap : ĠMap < String , ĠAny ?> ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmargin : ĠMargin Ġ= ĠUi Builder . get Margin ( context , Ġmap [ KEY _ M ARGIN ]) ĊĠĠĠĠĠĠĠ Ġparams . set Margins ( margin . left , Ġmargin . top , Ġmargin . right , Ġmargin . bottom ) ĊĠĠĠ Ġ} Ċ } Ċ