package Ġme . s aket . press . shared . preferences Ċ Ċ import Ġcom . rus sh w olf . settings . Observable Settings Ċ import Ġme . s aket . press . shared . theme . Theme Switch ingMode Ċ import Ġme . s aket . press . shared . theme . Theme Switch ingMode . Match System Ċ import Ġme . s aket . press . shared . theme . Ui Styles . Type face Ċ import Ġme . s aket . press . shared . theme . Ui Styles . Type face . Work Sans Ċ import Ġme . s aket . press . shared . theme . pa let tes . Cascade Theme Palette Ċ import Ġme . s aket . press . shared . theme . pa let tes . City Lights Theme Palette Ċ import Ġme . s aket . press . shared . theme . pa let tes . Dr ac ula Theme Palette Ċ import Ġme . s aket . press . shared . theme . pa let tes . Minimal Dark Theme Palette Ċ import Ġme . s aket . press . shared . theme . pa let tes . Minimal Light Theme Palette Ċ import Ġme . s aket . press . shared . theme . pa let tes . Pure Black Theme Palette Ċ import Ġme . s aket . press . shared . theme . pa let tes . Sol ar ized Light Theme Palette Ċ import Ġme . s aket . press . shared . theme . pa let tes . Theme Palette Ċ Ċ inline Ġclass ĠAuto Correct Enabled ( val Ġenabled : ĠBoolean ) Ċ Ċ class ĠUser Preferences ( settings : ĠObservable Settings ) Ġ{ ĊĠ Ġval Ġauto Correct Enabled Ġ= Ġsettings . setting ( ĊĠĠĠ Ġkey Ġ= Ġ" autoc orrect _ enabled ", ĊĠĠĠ Ġfrom Ġ= Ġ{ ĠAuto Correct Enabled ( it . to Boolean ()) Ġ}, ĊĠĠĠ Ġto Ġ= Ġ{ Ġit . enabled . toString () Ġ}, ĊĠĠĠ ĠdefaultValue Ġ= ĠAuto Correct Enabled ( true ) ĊĠ Ġ) ĊĊĠ Ġval Ġtype face Ġ= Ġsettings . setting ( ĊĠĠĠ Ġkey Ġ= Ġ" type face ", ĊĠĠĠ Ġfrom Ġ= Ġ{ ĠType face . valueOf ( it ) Ġ}, ĊĠĠĠ Ġto Ġ= Ġ{ Ġit . name Ġ}, ĊĠĠĠ ĠdefaultValue Ġ= ĠWork Sans ĊĠ Ġ) ĊĊĠ Ġval Ġtheme Switch ingMode Ġ= Ġsettings . setting ( ĊĠĠĠ Ġkey Ġ= Ġ" theme _ switch ing _ mode ", ĊĠĠĠ Ġfrom Ġ= Ġ{ ĠTheme Switch ingMode . valueOf ( it ) Ġ}, ĊĠĠĠ Ġto Ġ= Ġ{ Ġit . name Ġ}, ĊĠĠĠ ĠdefaultValue Ġ= ĠMatch System ĊĠ Ġ) ĊĊĠ Ġval Ġlight Theme Palette Ġ= Ġsettings . setting ( ĊĠĠĠ Ġkey Ġ= Ġ" light _ theme _ palette ", ĊĠĠĠ Ġfrom Ġ= Ġ{ ĠTheme Palette Serializer . fromString ( it , Ġdefault Ġ= ĠCascade Theme Palette ) Ġ}, ĊĠĠĠ Ġto Ġ= Ġ{ ĠTheme Palette Serializer . toString ( it ) Ġ}, ĊĠĠĠ ĠdefaultValue Ġ= ĠCascade Theme Palette ĊĠ Ġ) ĊĊĠ Ġval Ġdark Theme Palette Ġ= Ġsettings . setting ( ĊĠĠĠ Ġkey Ġ= Ġ" dark _ theme _ palette ", ĊĠĠĠ Ġfrom Ġ= Ġ{ ĠTheme Palette Serializer . fromString ( it , Ġdefault Ġ= ĠDr ac ula Theme Palette ) Ġ}, ĊĠĠĠ Ġto Ġ= Ġ{ ĠTheme Palette Serializer . toString ( it ) Ġ}, ĊĠĠĠ ĠdefaultValue Ġ= ĠDr ac ula Theme Palette ĊĠ Ġ) ĊĊĠ Ġprivate Ġobject ĠTheme Palette Serializer Ġ{ ĊĠĠĠ Ġprivate Ġval Ġpalette To Names Ġ= Ġmap Of ( ĊĠĠĠĠĠ ĠCascade Theme Palette Ġto Ġ" cascade ", ĊĠĠĠĠĠ ĠCity Lights Theme Palette Ġto Ġ" city _ lights ", ĊĠĠĠĠĠ ĠDr ac ula Theme Palette Ġto Ġ" dr ac ula ", ĊĠĠĠĠĠ ĠMin imal Dark Theme Palette Ġto Ġ" minimal _ dark ", ĊĠĠĠĠĠ ĠMin imal Light Theme Palette Ġto Ġ" minimal _ light ", ĊĠĠĠĠĠ ĠPure Black Theme Palette Ġto Ġ" pure _ black ", ĊĠĠĠĠĠ ĠSol ar ized Light Theme Palette Ġto Ġ" solar ized _ light ", ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġfun ĠtoString ( palette : ĠTheme Palette ): ĠString Ġ{ ĊĠĠĠĠĠ Ġreturn Ġpalette To Names [ palette ] !! ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ@ param Ġdefault Ġwill Ġbe Ġused Ġin Ġcase Ġof Ġde - serialization Ġerrors . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġfrom String ( serialized : ĠString , Ġdefault : ĠTheme Palette ): ĠTheme Palette Ġ{ ĊĠĠĠĠĠ Ġreturn Ġpalette To Names . entries ĊĠĠĠĠĠĠĠ Ġ. first OrNull Ġ{ Ġ(_, ĠserializedName ) Ġ-> Ġserialized Ġ== ĠserializedName Ġ} ĊĠĠĠĠĠĠĠ Ġ? . key Ġ?: Ġdefault ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ