import type { Project } from '../domain/types' import { normalizeProject } from './exportImport' import type { ProjectRepository } from './ProjectRepository' const STORAGE_KEY = 'av-planner:project:v1' export class LocalStorageProjectRepository implements ProjectRepository { async load(): Promise { try { const raw = window.localStorage.getItem(STORAGE_KEY) if (!raw) return null return normalizeProject(JSON.parse(raw) as Project) } catch (err) { console.error('Failed to load project from localStorage', err) return null } } async save(project: Project): Promise { window.localStorage.setItem(STORAGE_KEY, JSON.stringify(project)) } async clear(): Promise { window.localStorage.removeItem(STORAGE_KEY) } }