import { getUiPreferences, patchUiPreferences } from './uiPreferencesDb'; import { DEFAULT_TRADE_NOTIFICATION_GRID_PRESET, normalizeTradeNotificationGridPreset, type TradeNotificationGridPresetId, } from './tradeNotificationGridPresets'; export type TradeNotificationListLayout = 'list' | 'grid'; /** 알림 목록 정렬 */ export type TradeNotificationListSort = 'market' | 'newest' | 'oldest'; export function loadTradeNotificationListLayout(): TradeNotificationListLayout { const v = getUiPreferences().tradeNotifications?.listLayout; return v === 'grid' ? 'grid' : 'list'; } export function saveTradeNotificationListLayout(layout: TradeNotificationListLayout): void { patchUiPreferences({ tradeNotifications: { listLayout: layout } }); } export function loadTradeNotificationGridPreset(): TradeNotificationGridPresetId { return normalizeTradeNotificationGridPreset( getUiPreferences().tradeNotifications?.gridPreset ?? DEFAULT_TRADE_NOTIFICATION_GRID_PRESET, ); } export function saveTradeNotificationGridPreset(preset: TradeNotificationGridPresetId): void { patchUiPreferences({ tradeNotifications: { gridPreset: preset } }); } export function loadTradeNotificationListSort(): TradeNotificationListSort { const v = getUiPreferences().tradeNotifications?.listSort; if (v === 'market' || v === 'oldest') return v; return 'newest'; } export function saveTradeNotificationListSort(sort: TradeNotificationListSort): void { patchUiPreferences({ tradeNotifications: { listSort: sort } }); }