import 'package:equatable/equatable.dart'; import '../data/auth_repository.dart'; enum AuthStatus { unknown, unauthenticated, codeSent, authenticating, authenticated, error, } class AuthState extends Equatable { final AuthStatus status; final String phone; final AppUser? user; final String? error; const AuthState({ this.status = AuthStatus.unknown, this.phone = '', this.user, this.error, }); AuthState copyWith({ AuthStatus? status, String? phone, AppUser? user, String? error, }) { return AuthState( status: status ?? this.status, phone: phone ?? this.phone, user: user ?? this.user, error: error, ); } @override List get props => [status, phone, user, error]; }