import {Project} from "../models/project"; import { useState } from "react"; import { ProjectStorageKeyPrefix } from "../util/storage"; export function loadStoredProjects(): Project[] { const projects: Project[] = []; Object.keys(window.localStorage).forEach(key => { if (key.startsWith(ProjectStorageKeyPrefix)) { try { const data = window.localStorage.getItem(key); if (data) { const project = JSON.parse(data); projects.push(project); } } catch(err) { console.error(err); } } }); return projects } export function useStoredProjectList(): [Project[], () => void] { const [ projects, setProjects ] = useState(() => { return loadStoredProjects(); }); const refresh = () => { setProjects(loadStoredProjects()); }; return [ projects, refresh]; }