18 lines
605 B
TypeScript
18 lines
605 B
TypeScript
import type { KbxScreenPreference } from '@kbx/contracts'
|
|
|
|
const PREFIX = 'kbx.screen.preference.'
|
|
|
|
export function loadScreenPreference(screenId: string): KbxScreenPreference | null {
|
|
const raw = localStorage.getItem(PREFIX + screenId)
|
|
if (!raw) return null
|
|
try { return JSON.parse(raw) as KbxScreenPreference } catch { return null }
|
|
}
|
|
|
|
export function saveScreenPreference(preference: KbxScreenPreference) {
|
|
localStorage.setItem(PREFIX + preference.screenId, JSON.stringify(preference))
|
|
}
|
|
|
|
export function clearScreenPreference(screenId: string) {
|
|
localStorage.removeItem(PREFIX + screenId)
|
|
}
|