Commit Graph

7 Commits

Author SHA1 Message Date
796bde22e7 feat: Add comprehensive input validation
- Created lib/validation.ts with validation utilities for all form inputs
- Added validation for list titles, item titles, colors, dates, tags, descriptions, and notes
- Implemented inline validation with real-time error feedback in ListForm
- Enhanced ItemForm with comprehensive validation for all fields
- Updated InlineItemCreate with validation
- Added input sanitization to prevent XSS attacks
- Updated server actions to use validation utilities
- Added maxLength attributes to prevent excessive input
- Improved accessibility with aria-invalid and aria-describedby attributes
- Added visual feedback for validation errors with red borders
- Validates Requirements 1.1 and 2.1
2025-12-01 21:26:26 +00:00
12ce70e495 Implement comprehensive error handling
- Add try-catch blocks to all server actions with retry logic
- Implement exponential backoff retry mechanism for database operations
- Add input validation to all server actions
- Create ErrorBoundary component for React error handling
- Add page-level error handlers (error.tsx, global-error.tsx)
- Add route-specific error pages for list and item routes
- Enhance database connection with graceful error handling
- Add user-friendly error messages throughout the application
- Implement proper error logging for debugging

Task: 16. Implement error handling
Requirements: All (error handling is cross-cutting)
2025-12-01 21:18:57 +00:00
282a0295ec feat: implement item detail page and form components
- Created ItemForm component with fields for all metadata (priority, due date, tags, notes)
- Created ItemDetail component to display all item information
- Built /list/[id]/item/[itemId] page for viewing full item details
- Built /list/[id]/item/[itemId]/edit page for editing items
- Added form validation for item inputs (title required, length limits)
- Created DeleteItemButton and ToggleItemButton helper components
- Enhanced createItem action to support full metadata on creation
- Added getItem action to fetch individual items with list data

Requirements: 1.1, 1.2, 5.1, 5.2, 5.3, 5.4
2025-12-01 19:16:37 +00:00
3aedfb0954 Implement filtering and sorting functionality
- Add getItemsByFilter server action with support for:
  - Priority filtering (low, medium, high)
  - Completed status filtering
  - Tag filtering with compound AND logic
  - Due date range filtering
  - Sorting by createdAt, dueDate, priority, and title
  - Ascending and descending sort order
- Handle null due dates in sorting (placed at end)
- Implement compound filter logic with AND conditions
- Requirements: 6.1, 6.2, 6.3, 6.5
2025-12-01 19:13:44 +00:00
6626a26160 Implement search functionality - Add searchItems server action with list-scoped and global search - Add highlightText utility function for search result highlighting - Search across title, description, notes, and tags fields - Requirements: 8.1, 8.2, 8.5 2025-12-01 19:04:37 +00:00
dcb1ce929f feat: implement core server actions for enhanced task operations
- Add updateItem server action with support for all metadata fields (title, description, completed, priority, dueDate, tags, notes)
- Add deleteItem server action with proper revalidation
- Add deleteList server action with cascade behavior (handled by Prisma schema)
- Add updateList server action for renaming and color updates

Requirements: 1.2, 1.3, 2.4, 2.5
2025-12-01 19:00:21 +00:00
0cfcd05921 Connect app to MySQL database at 192.168.4.20 2025-12-01 18:45:48 +00:00