add storageModel methods

This commit is contained in:
marlon-erler
2024-07-19 18:26:04 +02:00
parent 9e74d0227a
commit 536569b6ad
+28 -1
View File
@@ -1 +1,28 @@
// this file is responsible for reading and writing persistent data; all storage shall be handled by this file. // this file is responsible for reading and writing persistent data; all storage shall be handled by this file.
import { parse, stringify } from "../utility";
// basic
export function store(key: string, value: string): void {
localStorage.setItem(key, value);
}
export function restore(key: string): string | null {
return localStorage.getItem(key);
}
// array
export function storeArray(key: string, value: any[]): void {
const valueString = stringify(value);
store(key, valueString);
}
export function restoreArray(key: string): any[] | null {
const valueString = restore(key);
if (!valueString) return null;
const parsed = parse(valueString);
if (!Array.isArray(parsed)) return null;
return parsed;
}