| import { ss } from '@/utils/storage' | |
| const LOCAL_NAME = 'appSetting' | |
| export type Theme = 'light' | 'dark' | 'auto' | |
| export type Language = 'zh-CN' | 'zh-TW' | 'en-US' | |
| export interface AppState { | |
| siderCollapsed: boolean | |
| theme: Theme | |
| language: Language | |
| } | |
| export function defaultSetting(): AppState { | |
| return { siderCollapsed: false, theme: 'auto', language: 'zh-CN' } | |
| } | |
| export function getLocalSetting(): AppState { | |
| const localSetting: AppState | undefined = ss.get(LOCAL_NAME) | |
| return { ...defaultSetting(), ...localSetting } | |
| } | |
| export function setLocalSetting(setting: AppState): void { | |
| ss.set(LOCAL_NAME, setting) | |
| } | |