/** * RecipeListPage - Displays a list of all recipes with search and filtering */ import { useState } from 'react'; import { Link } from 'react-router-dom'; import { useRecipes } from '../hooks/useRecipes'; import { RecipeCard } from '../components/RecipeCard'; export function RecipeListPage() { const [searchTerm, setSearchTerm] = useState(''); const [searchQuery, setSearchQuery] = useState(''); const { recipes, loading, error, hasMore, loadMore } = useRecipes({ search: searchQuery, limit: 20, }); const handleSearch = (e: React.FormEvent) => { e.preventDefault(); setSearchQuery(searchTerm); }; const handleClearSearch = () => { setSearchTerm(''); setSearchQuery(''); }; return (
Browse and search your recipe collection
Searching for: "{searchQuery}"
)}Error: {error}
Loading recipes...
{searchQuery ? 'Try a different search term' : 'Get started by adding your first recipe'}
{!searchQuery && ( Add Your First Recipe )}