import type { Grid } from '@/types/grid'; export interface SavedArt { id: string; name: string; grid: Grid; timestamp: number; } const STORAGE_KEY = 'ansicolor-saved-art'; const MAX_SAVES = 8; export const saveArt = (name: string, grid: Grid): void => { const saves = getSavedArt(); const newSave: SavedArt = { id: Date.now().toString(), name, grid, timestamp: Date.now(), }; const updatedSaves = [newSave, ...saves].slice(0, MAX_SAVES); localStorage.setItem(STORAGE_KEY, JSON.stringify(updatedSaves)); }; export const getSavedArt = (): SavedArt[] => { const saved = localStorage.getItem(STORAGE_KEY); if (!saved) return []; try { return JSON.parse(saved); } catch (e) { console.error('Failed to parse saved art', e); return []; } }; export const deleteSavedArt = (id: string): void => { const saves = getSavedArt(); const filtered = saves.filter(save => save.id !== id); localStorage.setItem(STORAGE_KEY, JSON.stringify(filtered)); };