Array of filter presets, empty array if none found or error.
export function getFilterPresets(): FilterPreset[] {
try {
const saved = storage.getItem(STORAGE_KEYS.MATCH_FILTER_PRESETS);
if (!saved) {
return [];
}
const parsed = JSON.parse(saved);
if (!Array.isArray(parsed)) {
console.error("[Storage] Filter presets is not an array");
return [];
}
// Validate each preset structure
const validPresets = parsed.filter((preset): preset is FilterPreset => {
return (
typeof preset === "object" &&
typeof preset.id === "string" &&
typeof preset.name === "string" &&
typeof preset.filters === "object" &&
typeof preset.createdAt === "string" &&
typeof preset.updatedAt === "string"
);
});
return validPresets;
} catch (error) {
console.error("[Storage] Failed to load filter presets:", error);
return [];
}
}
Retrieves user-created filter presets.