in newswires/client/src/context/localStorage.tsx [3:22]
function loadFromLocalStorage<T>(
key: string,
schema: z.ZodSchema<T>,
): T | null {
const item = localStorage.getItem(key);
if (!item) {
return null;
}
try {
const parsed = schema.safeParse(JSON.parse(item));
if (!parsed.success) {
console.error(parsed.error);
return null;
}
return parsed.data;
} catch (e) {
console.error(e);
return null;
}
}