update: auth use cases updated

This commit is contained in:
jahongireshonqulov
2025-10-29 17:35:16 +05:00
parent 37d0713cfa
commit d31b68cde2
7 changed files with 152 additions and 0 deletions

View File

@@ -17,6 +17,17 @@ import '../../feature/auth/data/datasource/auth_datasource.dart' as _i246;
import '../../feature/auth/data/repository/auth_repository_impl.dart' as _i648; import '../../feature/auth/data/repository/auth_repository_impl.dart' as _i648;
import '../../feature/auth/domain/repository/auth_repository.dart' as _i884; import '../../feature/auth/domain/repository/auth_repository.dart' as _i884;
import '../../feature/auth/domain/usecases/login_usecase.dart' as _i241; import '../../feature/auth/domain/usecases/login_usecase.dart' as _i241;
import '../../feature/auth/domain/usecases/register_usecase.dart' as _i607;
import '../../feature/auth/domain/usecases/reset_password_usecase.dart'
as _i694;
import '../../feature/auth/domain/usecases/verify_otp_code_login_usecase.dart'
as _i318;
import '../../feature/auth/domain/usecases/verify_otp_code_register_usecase.dart'
as _i406;
import '../../feature/auth/domain/usecases/verify_phone_login_usecase.dart'
as _i801;
import '../../feature/auth/domain/usecases/verify_phone_register_usecase.dart'
as _i664;
import '../../feature/auth/presentation/blocs/login_bloc/login_bloc.dart' import '../../feature/auth/presentation/blocs/login_bloc/login_bloc.dart'
as _i1065; as _i1065;
import '../../feature/basket/presentation/blocs/basket_bloc.dart' as _i728; import '../../feature/basket/presentation/blocs/basket_bloc.dart' as _i728;
@@ -68,9 +79,28 @@ extension GetItInjectableX on _i174.GetIt {
gh<_i246.AuthDatasource>(), gh<_i246.AuthDatasource>(),
), ),
); );
gh.factory<_i607.RegisterUseCase>(
() => _i607.RegisterUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i241.LoginUseCase>( gh.factory<_i241.LoginUseCase>(
() => _i241.LoginUseCase(gh<_i884.AuthRepository>()), () => _i241.LoginUseCase(gh<_i884.AuthRepository>()),
); );
gh.factory<_i694.ResetPasswordUseCase>(
() => _i694.ResetPasswordUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i318.VerifyOtpCodeForgotPasswordUseCase>(
() =>
_i318.VerifyOtpCodeForgotPasswordUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i801.VerifyPhoneNumberLoginUseCase>(
() => _i801.VerifyPhoneNumberLoginUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i664.VerifyPhoneRegisterUseCase>(
() => _i664.VerifyPhoneRegisterUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i406.VerifyOtpCodeRegisterUseCase>(
() => _i406.VerifyOtpCodeRegisterUseCase(gh<_i884.AuthRepository>()),
);
gh.factory<_i1065.LoginBloc>( gh.factory<_i1065.LoginBloc>(
() => _i1065.LoginBloc( () => _i1065.LoginBloc(
gh<_i241.LoginUseCase>(), gh<_i241.LoginUseCase>(),

View File

@@ -1,3 +1,22 @@
import 'package:dartz/dartz.dart';
import 'package:food_delivery_client/core/exceptions/failure.dart';
import 'package:food_delivery_client/feature/auth/domain/repository/auth_repository.dart';
import 'package:food_delivery_client/feature/common/common.dart';
import 'package:food_delivery_client/food_delivery_client.dart';
import '../../../../core/usecase/usecase.dart';
@injectable
class RegisterUseCase implements UseCase<SuccessModel, RegisterParams> {
final AuthRepository _authRepository;
RegisterUseCase(this._authRepository);
@override
Future<Either<Failure, SuccessModel>> call(RegisterParams params) async {
return _authRepository.register(params: params);
}
}
class RegisterParams { class RegisterParams {
final String firstName; final String firstName;
final String lastName; final String lastName;

View File

@@ -1,3 +1,23 @@
import 'package:dartz/dartz.dart';
import 'package:food_delivery_client/core/exceptions/failure.dart';
import 'package:food_delivery_client/feature/auth/domain/repository/auth_repository.dart';
import 'package:food_delivery_client/feature/common/common.dart';
import 'package:food_delivery_client/food_delivery_client.dart';
import '../../../../core/usecase/usecase.dart';
@injectable
class ResetPasswordUseCase
implements UseCase<SuccessModel, ResetPasswordParams> {
final AuthRepository _authRepository;
ResetPasswordUseCase(this._authRepository);
@override
Future<Either<Failure, SuccessModel>> call(ResetPasswordParams params) async {
return _authRepository.resetPassword(params: params);
}
}
class ResetPasswordParams { class ResetPasswordParams {
final String newPassword; final String newPassword;
final String phoneNumber; final String phoneNumber;

View File

@@ -1,3 +1,24 @@
import 'package:dartz/dartz.dart';
import 'package:food_delivery_client/feature/auth/domain/repository/auth_repository.dart';
import 'package:food_delivery_client/food_delivery_client.dart';
import '../../../../core/usecase/usecase.dart';
@injectable
class VerifyOtpCodeForgotPasswordUseCase
implements UseCase<SuccessModel, VerifyOtpCodeParams> {
final AuthRepository _authRepository;
VerifyOtpCodeForgotPasswordUseCase(this._authRepository);
@override
Future<Either<Failure, SuccessModel>> call(VerifyOtpCodeParams params) async {
return _authRepository.verifyOtpCodeResetPassword(params: params);
}
}
class VerifyOtpCodeParams { class VerifyOtpCodeParams {
final String otpCode; final String otpCode;
final String phoneNumber; final String phoneNumber;

View File

@@ -0,0 +1,19 @@
import 'package:dartz/dartz.dart';
import 'package:food_delivery_client/feature/auth/domain/repository/auth_repository.dart';
import 'package:food_delivery_client/feature/auth/domain/usecases/verify_otp_code_login_usecase.dart';
import 'package:food_delivery_client/food_delivery_client.dart';
import '../../../../core/usecase/usecase.dart';
@injectable
class VerifyOtpCodeRegisterUseCase
implements UseCase<SuccessModel, VerifyOtpCodeParams> {
final AuthRepository _authRepository;
VerifyOtpCodeRegisterUseCase(this._authRepository);
@override
Future<Either<Failure, SuccessModel>> call(VerifyOtpCodeParams params) async {
return _authRepository.verifyOtpCodeRegister(params: params);
}
}

View File

@@ -1,3 +1,25 @@
import 'package:dartz/dartz.dart';
import 'package:food_delivery_client/core/exceptions/failure.dart';
import 'package:food_delivery_client/feature/auth/domain/repository/auth_repository.dart';
import 'package:food_delivery_client/feature/common/common.dart';
import 'package:food_delivery_client/food_delivery_client.dart';
import '../../../../core/usecase/usecase.dart';
@injectable
class VerifyPhoneNumberLoginUseCase
implements UseCase<SuccessModel, VerifyPhoneNumberParams> {
final AuthRepository _authRepository;
VerifyPhoneNumberLoginUseCase(this._authRepository);
@override
Future<Either<Failure, SuccessModel>> call(
VerifyPhoneNumberParams params,
) async {
return _authRepository.verifyPhoneResetPassword(params: params);
}
}
class VerifyPhoneNumberParams { class VerifyPhoneNumberParams {
final String phoneNumber; final String phoneNumber;

View File

@@ -0,0 +1,21 @@
import 'package:dartz/dartz.dart';
import 'package:food_delivery_client/feature/auth/domain/repository/auth_repository.dart';
import 'package:food_delivery_client/feature/auth/domain/usecases/verify_phone_login_usecase.dart';
import 'package:food_delivery_client/food_delivery_client.dart';
import '../../../../core/usecase/usecase.dart';
@injectable
class VerifyPhoneRegisterUseCase
implements UseCase<SuccessModel, VerifyPhoneNumberParams> {
final AuthRepository _authRepository;
VerifyPhoneRegisterUseCase(this._authRepository);
@override
Future<Either<Failure, SuccessModel>> call(
VerifyPhoneNumberParams params,
) async {
return _authRepository.verifyPhoneRegister(params: params);
}
}