added transaction snackbar message

This commit is contained in:
2024-06-29 20:02:54 +02:00
parent 78614bd021
commit f4294e0e11
5 changed files with 72 additions and 21 deletions

View File

@@ -37,6 +37,7 @@ class TransactionBloc extends Bloc<TransactionEvent, TransactionState> {
on<TransactionDeleteCurrent>(_onTransactionDeleteCurrent);
on<TransactionFilterCategory>(_onTransactionFilterCategory);
on<TransactionFilterAccount>(_onTransactionFilterAccount);
on<TransactionResetSnackBar>(_onTransactionResetSnackBar);
_transactionsRepository
.getTransactionsStream()
@@ -181,6 +182,9 @@ class TransactionBloc extends Bloc<TransactionEvent, TransactionState> {
transactionsLinesFiltered: _applyFilters(computeResult.list),
globalTotal: computeResult.globalTotal,
accountsTotals: computeResult.accountsTotals,
showSnackBar: true,
snackBarIsError: false,
snackBarMessage: 'Transaction ${currentTransaction == null ? 'added' : 'updated'} !',
));
}
}
@@ -231,6 +235,9 @@ class TransactionBloc extends Bloc<TransactionEvent, TransactionState> {
transactionsLinesFiltered: _applyFilters(computeResult.list),
globalTotal: computeResult.globalTotal,
accountsTotals: computeResult.accountsTotals,
showSnackBar: true,
snackBarIsError: false,
snackBarMessage: 'Transaction removed !',
));
}
}
@@ -296,4 +303,12 @@ class TransactionBloc extends Bloc<TransactionEvent, TransactionState> {
return transactionsLinesFiltered;
}
FutureOr<void> _onTransactionResetSnackBar(TransactionResetSnackBar event, Emitter<TransactionState> emit) {
emit(state.copyWith(
showSnackBar: false,
snackBarIsError: false,
snackBarMessage: '',
));
}
}

View File

@@ -83,4 +83,8 @@ final class TransactionFilterAccount extends TransactionEvent {
final Account? account;
const TransactionFilterAccount(this.account);
}
final class TransactionResetSnackBar extends TransactionEvent {
const TransactionResetSnackBar();
}

View File

@@ -20,6 +20,10 @@ final class TransactionState extends Equatable {
final Transaction? currentTransaction;
final bool showSnackBar;
final String snackBarMessage;
final bool snackBarIsError;
const TransactionState({
this.globalTotal = 0,
this.accountsTotals = const <String, double>{},
@@ -36,6 +40,9 @@ final class TransactionState extends Equatable {
this.currentTransaction,
this.categoryFilter,
this.accountFilter,
this.showSnackBar = false,
this.snackBarMessage = '',
this.snackBarIsError = false,
});
TransactionState copyWith({
@@ -54,6 +61,9 @@ final class TransactionState extends Equatable {
Transaction? currentTransaction,
Category? categoryFilter,
Account? accountFilter,
bool? showSnackBar,
String? snackBarMessage,
bool? snackBarIsError,
}) {
return TransactionState(
globalTotal: globalTotal ?? this.globalTotal,
@@ -71,6 +81,9 @@ final class TransactionState extends Equatable {
currentTransaction: currentTransaction ?? this.currentTransaction,
categoryFilter: categoryFilter ?? this.categoryFilter,
accountFilter: accountFilter ?? this.accountFilter,
showSnackBar: showSnackBar ?? this.showSnackBar,
snackBarMessage: snackBarMessage ?? this.snackBarMessage,
snackBarIsError: snackBarIsError ?? this.snackBarIsError,
);
}
@@ -89,6 +102,9 @@ final class TransactionState extends Equatable {
currentTransaction,
categoryFilter,
accountFilter,
showSnackBar,
snackBarMessage,
snackBarIsError,
];
}