export function getLocalStorage(base?: string) { let object: any = {}; return new Proxy(object, { get(_, key: string): any { const item: any = localStorage.getItem( base ? `${base}.${key}` : key.toString() ); try { return JSON.parse(item); } catch (err) { return item; } }, set(_, key: string, value: any): boolean { localStorage.setItem( base ? `${base}.${key}` : key.toString(), typeof value === "object" ? JSON.stringify(value) : value ); return true; }, deleteProperty(_, key: string): boolean { localStorage.removeItem(base ? `${base}.${key}` : key.toString()); return true; }, }); }