package Ġio . horizontal systems . bank wallet . core . storage Ċ Ċ import Ġandroidx . room . Type Converter Ċ import Ġio . horizontal systems . bank wallet . core . App Ċ import Ġio . horizontal systems . bank wallet . entities . Coin Type Ċ import Ġio . horizontal systems . bank wallet . entities . Price Alert Ċ import Ġio . horizontal systems . bank wallet . entities . Subscription Job Ċ import Ġjava . math . BigDecimal Ċ Ċ class ĠDatabase Converters Ġ{ ĊĊĠĠĠ Ġ// ĠBigDecimal ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom String ( value : ĠString ?): ĠBigDecimal ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġvalue ?. let Ġ{ ĠBigDecimal ( it ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun ĠtoString ( big Decimal : ĠBigDecimal ?): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġbig Decimal ?. to Plain String () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// ĠSecret String ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġdecrypt Secret String ( value : ĠString ?): ĠSecret String ? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ== Ġnull ) Ġreturn Ġnull ĊĊĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSecret String ( App . encryption Manager . decrypt ( value )) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġencrypt Secret String ( secret String : ĠSecret String ?): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsecret String ?. value ?. let Ġ{ ĠApp . encryption Manager . encrypt ( it ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// ĠSecret List ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġdecrypt Secret List ( value : ĠString ?): ĠSecret List ? Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( value Ġ== Ġnull ) Ġreturn Ġnull ĊĊĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSecret List ( App . encryption Manager . decrypt ( value ). split ("," )) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġencrypt Secret List ( secret List : ĠSecret List ?): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġsecret List ?. list ?. join ToString ( separator Ġ= Ġ", ") ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠApp . encryption Manager . encrypt ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom Coin Type ( coin Type : ĠCoin Type ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen ( coin Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCoin Type . Bitcoin Ġ-> Ġbitcoin ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCoin Type . Lite coin Ġ-> Ġlite coin ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCoin Type . Bitcoin Cash Ġ-> Ġbitcoin Cash ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCoin Type . Dash Ġ-> Ġdash ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCoin Type . E thereum Ġ-> Ġe thereum ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ"" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġto Coin Type ( value : ĠString ): ĠCoin Type ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġwhen Ġ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbitcoin Ġ-> ĠCoin Type . Bitcoin ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlite coin Ġ-> ĠCoin Type . Lite coin ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbitcoin Cash Ġ-> ĠCoin Type . Bitcoin Cash ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdash Ġ-> ĠCoin Type . Dash ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe thereum Ġ-> ĠCoin Type . E thereum ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom Change State ( state : ĠPrice Alert . Change State ): ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġstate . value ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġto Change State ( value : ĠString ?): ĠPrice Alert . Change State ? { ĊĠĠĠĠĠĠĠ Ġreturn ĠPrice Alert . Change State . valueOf ( value ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom Trend State ( state : ĠPrice Alert . Trend State ): ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġstate . value ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġto Trend State ( value : ĠString ?): ĠPrice Alert . Trend State ? { ĊĠĠĠĠĠĠĠ Ġreturn ĠPrice Alert . Trend State . valueOf ( value ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom State Type ( state : ĠSubscription Job . State Type ): ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġstate . value ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġto State Type ( value : ĠString ?): ĠSubscription Job . State Type ? { ĊĠĠĠĠĠĠĠ Ġreturn ĠSubscription Job . State Type . valueOf ( value ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġfrom Job Type ( state : ĠSubscription Job . Job Type ): ĠString { ĊĠĠĠĠĠĠĠ Ġreturn Ġstate . value ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Type Converter ĊĠĠĠ Ġfun Ġto Job Type ( value : ĠString ?): ĠSubscription Job . Job Type ? { ĊĠĠĠĠĠĠĠ Ġreturn ĠSubscription Job . Job Type . valueOf ( value ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval Ġbitcoin Ġ= Ġ" bitcoin " ĊĠĠĠĠĠĠĠ Ġconst Ġval Ġlite coin Ġ= Ġ" lite coin " ĊĠĠĠĠĠĠĠ Ġconst Ġval Ġbitcoin Cash Ġ= Ġ" bit co inc ash " ĊĠĠĠĠĠĠĠ Ġconst Ġval Ġdash Ġ= Ġ" dash " ĊĠĠĠĠĠĠĠ Ġconst Ġval Ġe thereum Ġ= Ġ" ethereum " ĊĠĠĠ Ġ} Ċ Ċ } Ċ