package Ġio . horizontal systems . bank wallet . modules . settings . security . tor Ċ Ċ import Ġandroidx . lifecycle . ViewModel Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġio . horizontal systems . bank wallet . R Ċ import Ġio . horizontal systems . bank wallet . core . App Ċ Ċ object ĠSecurity Tor Settings Module Ġ{ ĊĊĠĠĠ Ġclass ĠFactory Ġ: ĠViewModel Provider . Factory Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġ< T Ġ: ĠViewModel > Ġcreate ( model Class : ĠClass < T >): ĠT Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġservice Ġ= ĠSecurity Tor Settings Service ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠApp . tor Kit Manager , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠApp . pin Component , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠSecurity Tor Settings ViewModel ( service ) Ġas ĠT ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ enum Ġclass ĠTor Status ( val Ġvalue : ĠInt ) Ġ{ ĊĠĠĠ ĠConnected ( R . string . Tor Page _ Connected ), ĊĠĠĠ ĠClosed ( R . string . Tor Page _ Connection Closed ), ĊĠĠĠ ĠFailed ( R . string . Tor Page _ Failed ), ĊĠĠĠ ĠConnect ing ( R . string . Tor Page _ Connecting ); ĊĊĠĠĠ Ġval Ġicon : ĠInt ? ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠConnected Ġ-> ĠR . drawable . ic _ tor _ connection _ success _ 2 4 ĊĠĠĠĠĠĠĠĠĠĠĠ ĠClosed Ġ-> ĠR . drawable . ic _ tor _ connection _ 2 4 ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFailed Ġ-> ĠR . drawable . ic _ tor _ connection _ error _ 2 4 ĊĠĠĠĠĠĠĠĠĠĠĠ ĠConnect ing Ġ-> Ġnull ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġshow Connection Spinner : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġwhen Ġ( this ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠConnect ing Ġ-> Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġfalse ĊĠĠĠĠĠĠĠ Ġ} Ċ }