import 'package:bloc/bloc.dart'; import 'package:meta/meta.dart'; import 'dart:async'; part 'auth_event.dart'; part 'auth_state.dart'; class AuthBloc extends Bloc { AuthBloc() : super(AuthInitial()) { on((event, emit) async { emit(AuthLoading()); await Future.delayed(const Duration(seconds: 1)); if (event.phoneNumber.isNotEmpty) { emit(AuthCodeSentSuccess()); } else { emit(AuthFailure('شماره موبایل معتبر نیست.')); } }); on((event, emit) async { emit(AuthLoading()); await Future.delayed(const Duration(seconds: 1)); if (event.otp == '12345') { emit(AuthVerified()); } else { emit(AuthFailure('کد تایید صحیح نمی‌باشد.')); } }); on((event, emit) async { emit(AuthLoading()); await Future.delayed(const Duration(milliseconds: 500)); print('User info to save: Name: ${event.name}, Gender: ${event.gender}'); if (event.name.trim().isEmpty) { emit(AuthFailure('لطفاً نام خود را وارد کنید.')); } else { emit(UserInfoSaved()); } }); } }