Files
mail-client/src/lib/settings.ts
T
KanjiG 20bfd2cf6b Initial commit: Outlook-competitor desktop mail client
Tauri v2 (Rust backend, React/TypeScript frontend). IMAP/POP3/SMTP core,
Google OAuth (mail/calendar/contacts sync), CalDAV, local calendar with
recurrence, rules engine, contacts, tasks, unified inbox, context menus,
drag & drop, snooze, templates, and more.
2026-07-28 20:56:05 +02:00

29 lines
725 B
TypeScript

export interface AppSettings {
desktop: boolean
popup: boolean
composePopup: boolean
}
const KEY = 'mailclient.notifySettings'
const DEFAULTS: AppSettings = { desktop: true, popup: true, composePopup: false }
export function loadAppSettings(): AppSettings {
try {
const raw = localStorage.getItem(KEY)
if (!raw) return DEFAULTS
const parsed = JSON.parse(raw) as Partial<AppSettings>
return {
desktop: parsed.desktop ?? DEFAULTS.desktop,
popup: parsed.popup ?? DEFAULTS.popup,
composePopup: parsed.composePopup ?? DEFAULTS.composePopup,
}
} catch {
return DEFAULTS
}
}
export function saveAppSettings(v: AppSettings) {
localStorage.setItem(KEY, JSON.stringify(v))
}