part of 'transaction_bloc.dart'; final class TransactionState extends Equatable { final double globalTotal; final Map accountsTotals; final List transactions; final List transactionsLines; final List transactionsLinesFiltered; final Category? categoryFilter; final Account? accountFilter; final TransactionDate transactionDate; final TransactionCategory transactionCategory; final TransactionDescription transactionDescription; final TransactionAccount transactionAccount; final TransactionValue transactionValue; final bool isValid; final bool showAddDialog; final Transaction? currentTransaction; final bool showSnackBar; final String snackBarMessage; final bool snackBarIsError; const TransactionState({ this.globalTotal = 0, this.accountsTotals = const {}, this.transactions = const [], this.transactionsLines = const [], this.transactionsLinesFiltered = const [], this.transactionDate = const TransactionDate.pure(), this.transactionCategory = const TransactionCategory.pure(), this.transactionDescription = const TransactionDescription.pure(), this.transactionAccount = const TransactionAccount.pure(), this.transactionValue = const TransactionValue.pure(), this.isValid = false, this.showAddDialog = false, this.currentTransaction, this.categoryFilter, this.accountFilter, this.showSnackBar = false, this.snackBarMessage = '', this.snackBarIsError = false, }); TransactionState copyWith({ double? globalTotal, Map? accountsTotals, List? transactions, List? transactionsLines, List? transactionsLinesFiltered, TransactionDate? transactionDate, TransactionCategory? transactionCategory, TransactionDescription? transactionDescription, TransactionAccount? transactionAccount, TransactionValue? transactionValue, bool? isValid, bool? showAddDialog, Transaction? currentTransaction, Category? categoryFilter, Account? accountFilter, bool? showSnackBar, String? snackBarMessage, bool? snackBarIsError, }) { return TransactionState( globalTotal: globalTotal ?? this.globalTotal, accountsTotals: accountsTotals ?? this.accountsTotals, transactions: transactions ?? this.transactions, transactionsLines: transactionsLines ?? this.transactionsLines, transactionsLinesFiltered: transactionsLinesFiltered ?? this.transactionsLinesFiltered, transactionDate: transactionDate ?? this.transactionDate, transactionCategory: transactionCategory ?? this.transactionCategory, transactionDescription: transactionDescription ?? this.transactionDescription, transactionAccount: transactionAccount ?? this.transactionAccount, transactionValue: transactionValue ?? this.transactionValue, isValid: isValid ?? this.isValid, showAddDialog: showAddDialog ?? this.showAddDialog, currentTransaction: currentTransaction ?? this.currentTransaction, categoryFilter: categoryFilter ?? this.categoryFilter, accountFilter: accountFilter ?? this.accountFilter, showSnackBar: showSnackBar ?? this.showSnackBar, snackBarMessage: snackBarMessage ?? this.snackBarMessage, snackBarIsError: snackBarIsError ?? this.snackBarIsError, ); } @override List get props => [ transactions, transactionsLines, transactionsLinesFiltered, transactionDate, transactionCategory, transactionDescription, transactionAccount, transactionValue, isValid, showAddDialog, currentTransaction, categoryFilter, accountFilter, showSnackBar, snackBarMessage, snackBarIsError, ]; }