Commit Graph

9 Commits

Author SHA1 Message Date
Dani B
9a6332eacf fix(01-10): update router to use AuthProvider
- Updated AppRouter to use AuthProvider instead of direct Supabase calls
- Ensures proper navigation after logout through state management
- Router now correctly responds to AuthProvider state changes
2026-01-28 12:59:52 -05:00
Dani B
680ecdc0df feat(01-07): add password reset routes and deep linking support
- Added /reset-password, /reset-password-confirm, and /update-password routes
- Updated redirect logic to allow password reset routes regardless of auth state
- Added token extraction from query parameters for deep linking
- Enhanced error handling for malformed reset URLs
- Updated imports to include password reset pages
2026-01-28 12:14:16 -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
7233996293 fix(01-11): resolve Flutter analysis errors and API issues
- Fixed GoRouter state.location -> state.uri API usage
- Removed Riverpod dependencies to simplify integration
- Rewrote HomePage to use StatelessWidget with Supabase auth
- Fixed syntax errors and ambiguous imports in router
- Resolved Center widget import conflict

Files modified:
- lib/core/router/app_router.dart (API fixes)
- lib/features/home/presentation/pages/home_page.dart (syntax fixes)
2026-01-28 11:36:28 -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
58f2b5bce4 fix(01-02): resolve compilation errors in auth models
- Fixed import path in AuthRepository to reach core errors
- Updated AuthUser.fromSupabase() to handle DateTime parsing safely
- Added UnknownAuthException for fallback error handling
- Fixed null-aware operators in AuthUser model
- All authentication files now compile without errors
2026-01-28 09:34:56 -05:00
Dani B
b46cabe9fa feat(01-02): create custom authentication exceptions
- Base AuthException class for consistent error handling
- Specific exception types: InvalidCredentials, UserNotFound, WeakPassword
- EmailAlreadyInUse, Network, SessionExpired, EmailNotVerified
- TooManyRequests, AuthDisabled exceptions for edge cases
- AuthExceptionFactory converts Supabase errors to custom exceptions
- User-friendly error messages with proper error codes
2026-01-28 09:12:01 -05:00
Dani B
44f444eafc feat(01-01): Create secure Supabase configuration system
- Created .env template with SUPABASE_URL and SUPABASE_ANON_KEY placeholders
- Added .env to .gitignore to prevent committing secrets
- Created SupabaseConstants class with secure environment loading
- Added validation to ensure required environment variables are set
- Created core/constants directory structure
2026-01-28 08:26:50 -05:00