feat: Add visual feedback and polish (Task 15)
- Implement toast notification system for success/error messages - Add loading states with skeleton loaders for async operations - Create smooth CSS transitions and animations - Enhance empty states with EmptyState component - Add loading.tsx files for Next.js loading states - Integrate toast notifications across all CRUD operations - Add fade-in and scale-in animations for better UX - Improve visual feedback for user actions
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
import { highlightText } from '@/lib/utils'
|
||||
import Link from 'next/link'
|
||||
import { Calendar, Tag, AlertCircle } from 'lucide-react'
|
||||
import EmptyState from './EmptyState'
|
||||
|
||||
interface SearchResultsProps {
|
||||
results: Array<{
|
||||
@@ -31,10 +32,11 @@ export default function SearchResults({ results, query, onClose }: SearchResults
|
||||
|
||||
if (results.length === 0) {
|
||||
return (
|
||||
<div className="bg-white rounded-lg border border-gray-200 p-8 text-center">
|
||||
<p className="text-gray-500">No tasks found matching "{query}"</p>
|
||||
<p className="text-sm text-gray-400 mt-2">Try a different search term</p>
|
||||
</div>
|
||||
<EmptyState
|
||||
icon="search"
|
||||
title={`No tasks found matching "${query}"`}
|
||||
description="Try a different search term or check your spelling"
|
||||
/>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -45,7 +47,7 @@ export default function SearchResults({ results, query, onClose }: SearchResults
|
||||
}
|
||||
|
||||
return (
|
||||
<div className="space-y-2">
|
||||
<div className="space-y-2 animate-fade-in">
|
||||
<div className="flex items-center justify-between mb-4">
|
||||
<p className="text-sm text-gray-600">
|
||||
Found {results.length} {results.length === 1 ? 'task' : 'tasks'}
|
||||
|
||||
Reference in New Issue
Block a user