Commit Graph

13 Commits

Author SHA1 Message Date
Dani B
2f9ea1a0e8 feat: Complete Phase 1 Authentication and setup Flutter project structure
- Completed authentication system with signup, login, password reset, and logout
- Enhanced error handling and accessibility across all auth flows
- Added comprehensive loading states and user feedback
- Implemented confirmation dialogs for destructive actions
- Setup complete Flutter project structure with proper configuration
- Added planning documentation for Phase 2 household creation
- All Phase 1 success criteria verified and complete
2026-01-28 22:58:09 -05:00
Dani B
ec1b7648db feat(01-09): integrate enhanced auth components into auth pages
Updated login and signup pages:
- Replace inline error displays with AuthForm.formWideError
- Add onErrorDismissed callbacks for better UX
- Maintain consistent error handling across auth flows

Updated password reset form:
- Add form-wide error display matching AuthForm style
- Add field-specific error styling with icons
- Implement auto-clear error when user starts typing
- Add accessibility announcements for error clearing
- Maintain consistent visual hierarchy
2026-01-28 12:49:19 -05:00
Dani B
e69cb9b87e feat(01-08): enhance password reset page with comprehensive error handling
- Enhanced error mapping with specific user-friendly messages
- Added accessibility announcements for success and error states
- Improved success message with detailed step-by-step instructions
- Added resend email functionality with cooldown timer preparation
- Enhanced error disposal when user starts typing
- Added email validation for empty inputs
- Improved PasswordResetForm widget with onEmailChanged callback
- Added spam folder guidance in success instructions
- Enhanced error recovery instructions for different scenarios
2026-01-28 12:33:58 -05:00
Dani B
ef471f28b0 feat(01-08): enhance signup page with comprehensive error handling
- Connected to AuthProvider for real registration
- Added specific error messages for different exception types
- Implemented password mismatch validation before submission
- Added error message display with proper styling
- Enhanced form validation with empty field checks
- Added accessibility error announcements via Semantics
- Connected to real registration flow instead of simulation
- Added success message with quick navigation to login
- Included terms agreement validation with clear error message
2026-01-28 12:30:46 -05:00
Dani B
bd21a62fe5 feat(01-08): enhance login page with comprehensive error handling
- Connected to AuthProvider for real authentication
- Added specific error messages for different exception types
- Implemented error message display with proper styling
- Added accessibility error announcements via Semantics
- Enhanced form validation with empty field checks
- Connected to real authentication flow instead of simulation
- Added error disposal when user starts typing
- Included loading state management
2026-01-28 12:27:33 -05:00
Dani B
53329c9eb8 feat(01-07): update pages with password reset navigation and deep linking
- Updated login page to navigate to /reset-password instead of placeholder
- Added "Forgot Password?" link to signup page
- Enhanced reset password confirmation page to extract token/email from URL parameters
- Updated update password page to handle deep linking parameters
- Added deep linking support configuration in main.dart
- Improved router with URL parameter extraction helpers
2026-01-28 12:18:34 -05:00
Dani B
f456451540 docs(01-06): complete password update plan
Tasks completed: 2/2
- Create password update page with validation
- Update auth repository for password reset

Files created:
- lib/features/authentication/presentation/pages/update_password_page.dart
- lib/core/utils/password_validator.dart
- lib/features/authentication/presentation/pages/reset_password_confirm_page.dart

SUMMARY: .planning/phases/01-authentication/01-06-SUMMARY.md
2026-01-28 12:09:00 -05:00
Dani B
e56dd26fef feat(01-06): create password update page with validation
- Implemented UpdatePasswordPage with password strength indicator
- Added password validation utility with comprehensive checks
- Enhanced AuthProvider with updatePasswordFromReset method
- Extended AuthRepository interface and implementation for password reset
- Added InvalidTokenException to auth exception hierarchy
- Includes accessibility features and error handling
- Password strength indicator with real-time feedback

Files:
- lib/features/authentication/presentation/pages/update_password_page.dart
- lib/core/utils/password_validator.dart
- lib/providers/auth_provider.dart
- lib/features/authentication/domain/repositories/auth_repository.dart
- lib/features/authentication/data/repositories/auth_repository_impl.dart
- lib/core/errors/auth_exceptions.dart
2026-01-28 12:05:15 -05:00
Dani B
16a27f1cc8 feat(01-05): create password reset request page
- Complete reset password page with email input and validation
- Shows success message after email sent
- Displays helpful instructions and next steps
- Handles loading and error states properly
- Integrates with AuthProvider for password reset
- Includes accessibility features and responsive design
- Provides 'Back to Login' navigation option
- Clear error mapping for different failure scenarios
2026-01-28 11:50:03 -05:00
Dani B
37139bdb06 feat(01-11): integrate router into main app with error handling
- Updated main.dart to use ProviderScope and MaterialApp.router
- Integrated AppRouter with proper GoRouter configuration
- Added comprehensive error handling with ErrorBoundary widget
- Updated HomePage to use auth provider for logout functionality
- Fixed SplashPage to use GoRouter navigation
- Implemented router provider for Riverpod integration
- Added proper resource disposal and restart functionality

Files modified:
- lib/main.dart (complete app structure)
- lib/core/router/app_router.dart (router integration)
- lib/features/authentication/presentation/pages/splash_page.dart (navigation fix)
- lib/features/home/presentation/pages/home_page.dart (logout implementation)
2026-01-28 11:22:56 -05:00
Dani B
1410e32005 feat(01-11): implement auth-aware router and splash screen
- Created AppRouter with GoRouter for declarative navigation
- Added protected routes that redirect to login if not authenticated
- Implemented splash screen with loading state and auth checking
- Set up route definitions for login, signup, home, and splash
- Added error handling for navigation failures
- Includes authentication state-based redirects

Files modified:
- lib/core/router/app_router.dart
- lib/features/authentication/presentation/pages/splash_page.dart
2026-01-28 11:05:02 -05:00
Dani B
7b3d1bbd63 feat(01-03): create signup page with password confirmation
- Complete registration screen with email/password/confirm password fields
- Integrated AuthForm widget for consistent form handling
- Terms of Service and Privacy Policy checkboxes with placeholder dialogs
- Password confirmation validation matching requirement
- Sign in navigation to login screen
- Loading states during registration process
- Responsive design matching login page layout
- Error handling for duplicate emails and registration failures

Authentication UI components complete and ready for backend integration.
2026-01-28 10:13:13 -05:00
Dani B
8d8ee17586 feat(01-03): create login page with form integration
- Complete login screen with email/password authentication form
- Integrated AuthForm widget for consistent form handling
- Added forgot password placeholder functionality
- Sign up navigation to registration screen
- Loading states during authentication process
- Responsive design with SafeArea and centered layout
- App icon and welcome messaging
- Error handling for invalid credentials

Ready for authentication logic integration.
2026-01-28 10:09:34 -05:00