- Updated signup.dart to replace Provider with BLoC for state management. - Created AuthRepository to handle authentication logic and Firestore user management. - Added TripRepository and UserRepository for trip and user data management. - Implemented methods for user sign-in, sign-up, and data retrieval in repositories. - Enhanced trip management with create, update, delete, and participant management functionalities. - Updated AuthService to include new methods for sign-in and sign-up. - Removed unnecessary print statements from TripService for cleaner code. - Added dependencies for flutter_bloc and equatable in pubspec.yaml. Not tested yet
42 lines
829 B
Dart
42 lines
829 B
Dart
import 'package:equatable/equatable.dart';
|
|
import '../../data/models/user.dart';
|
|
|
|
abstract class AuthState extends Equatable {
|
|
const AuthState();
|
|
|
|
@override
|
|
List<Object?> get props => [];
|
|
}
|
|
|
|
class AuthInitial extends AuthState {}
|
|
|
|
class AuthLoading extends AuthState {}
|
|
|
|
class AuthAuthenticated extends AuthState {
|
|
final User user;
|
|
|
|
const AuthAuthenticated({required this.user});
|
|
|
|
@override
|
|
List<Object?> get props => [user];
|
|
}
|
|
|
|
class AuthUnauthenticated extends AuthState {}
|
|
|
|
class AuthError extends AuthState {
|
|
final String message;
|
|
|
|
const AuthError({required this.message});
|
|
|
|
@override
|
|
List<Object?> get props => [message];
|
|
}
|
|
|
|
class AuthPasswordResetSent extends AuthState {
|
|
final String email;
|
|
|
|
const AuthPasswordResetSent({required this.email});
|
|
|
|
@override
|
|
List<Object?> get props => [email];
|
|
} |