sojorn/sojorn_app/lib/providers/auth_provider.dart
2026-02-15 00:33:24 -06:00

36 lines
983 B
Dart

import 'package:flutter_riverpod/flutter_riverpod.dart';
import '../services/auth_service.dart';
final authServiceProvider = Provider<AuthService>((ref) {
return AuthService();
});
final currentUserProvider = Provider<User?>((ref) {
final authService = ref.watch(authServiceProvider);
ref.watch(authStateProvider);
return authService.currentUser;
});
final authStateProvider = StreamProvider<AuthState>((ref) {
final authService = ref.watch(authServiceProvider);
return authService.authStateChanges;
});
final isAuthenticatedProvider = Provider<bool>((ref) {
final authService = ref.watch(authServiceProvider);
ref.watch(authStateProvider);
return authService.currentUser != null;
});
class EmailVerifiedEventNotifier extends Notifier<bool> {
@override
bool build() => false;
void set(bool value) => state = value;
}
final emailVerifiedEventProvider =
NotifierProvider<EmailVerifiedEventNotifier, bool>(
EmailVerifiedEventNotifier.new);