package Ġcom . th om ask io ko . tv man iac . settings Ċ Ċ import Ġcom . th om ask io ko . tv man iac . shared . core . store . Action Ċ import Ġcom . th om ask io ko . tv man iac . shared . core . store . Effect Ċ import Ġcom . th om ask io ko . tv man iac . shared . core . store . State Ċ Ċ data Ġclass ĠSettings State ( ĊĠĠĠ Ġval Ġtheme : ĠTheme , ĊĠĠĠ Ġval Ġshow Popup : ĠBoolean Ċ ) Ġ: ĠState Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠDEFAULT Ġ= ĠSettings State ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtheme Ġ= ĠTheme . SYSTEM , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow Popup Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ sealed Ġclass ĠSettings Actions Ġ: ĠAction Ġ{ ĊĠĠĠ Ġdata Ġclass ĠTheme Selected ( ĊĠĠĠĠĠĠĠ Ġval Ġtheme : ĠString ĊĠĠĠ Ġ) Ġ: ĠSettings Actions () ĊĊĠĠĠ Ġobject ĠLoad Theme Ġ: ĠSettings Actions () ĊĠĠĠ Ġobject ĠTheme Clicked Ġ: ĠSettings Actions () Ċ } Ċ Ċ sealed Ġclass ĠSettings Effect Ġ: ĠEffect Ċ Ċ enum Ġclass ĠTheme Ġ{ ĊĠĠĠ ĠLIGHT , ĊĠĠĠ ĠD ARK , ĊĠĠĠ ĠSYSTEM Ċ } Ċ