export function getItem(name: string, defaultValue?: T): T { const value = localStorage.getItem(name) return value ? JSON.parse(value) : defaultValue } export function setItem(name: string, value: T) { localStorage.setItem(name, JSON.stringify(value)) } export function editItem(name: string, editor: (value: T | undefined) => T) { setItem(name, editor(getItem(name, undefined))) } export function getPageKey() { return document.querySelector('meta[name=page-key]')!.content }