function loadFromLocalStorage()

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;
	}
}