chnages has been made and net salary is being displayed

This commit is contained in:
Daniah Ayad Al-sultani
2026-02-11 14:31:03 +03:00
parent 1002937045
commit a7930d19e5
23 changed files with 691 additions and 141 deletions

View File

@@ -0,0 +1,41 @@
import 'package:flutter_bloc/flutter_bloc.dart';
import '../../../domain/usecases/change_password_usecase.dart';
import 'change_password_event.dart';
import 'change_password_state.dart';
class ChangePasswordBloc
extends Bloc<ChangePasswordEvent, ChangePasswordState> {
final ChangePasswordUseCase changePasswordUseCase;
ChangePasswordBloc({required this.changePasswordUseCase})
: super(const ChangePasswordInitial()) {
on<ChangePasswordSubmitted>(_onChangePasswordSubmitted);
on<ChangePasswordReset>(_onChangePasswordReset);
}
Future<void> _onChangePasswordSubmitted(
ChangePasswordSubmitted event,
Emitter<ChangePasswordState> emit,
) async {
emit(const ChangePasswordLoading());
final result = await changePasswordUseCase(event.request);
result.fold((failure) => emit(ChangePasswordError(failure.message)), (
response,
) {
if (response.isSuccess) {
emit(ChangePasswordSuccess(response.message));
} else {
emit(ChangePasswordError(response.message));
}
});
}
void _onChangePasswordReset(
ChangePasswordReset event,
Emitter<ChangePasswordState> emit,
) {
emit(const ChangePasswordInitial());
}
}

View File

@@ -0,0 +1,11 @@
import '../../../domain/models/change_password_request.dart';
abstract class ChangePasswordEvent {}
class ChangePasswordSubmitted extends ChangePasswordEvent {
final ChangePasswordRequest request;
ChangePasswordSubmitted(this.request);
}
class ChangePasswordReset extends ChangePasswordEvent {}

View File

@@ -0,0 +1,23 @@
abstract class ChangePasswordState {
const ChangePasswordState();
}
class ChangePasswordInitial extends ChangePasswordState {
const ChangePasswordInitial();
}
class ChangePasswordLoading extends ChangePasswordState {
const ChangePasswordLoading();
}
class ChangePasswordSuccess extends ChangePasswordState {
final String message;
const ChangePasswordSuccess(this.message);
}
class ChangePasswordError extends ChangePasswordState {
final String message;
const ChangePasswordError(this.message);
}