part of 'transaction_bloc.dart'; final class TransactionState extends Equatable { final double globalTotal; final Map accountsTotals; final List transactions; final List transactionsLines; final TransactionDate transactionDate; final TransactionCategory transactionCategory; final TransactionDescription transactionDescription; final TransactionAccount transactionAccount; final TransactionValue transactionValue; final bool isValid; final bool showAddDialog; final Transaction? currentTransaction; const TransactionState({ this.globalTotal = 0, this.accountsTotals = const {}, this.transactions = const [], this.transactionsLines = 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 }); TransactionState copyWith({ double? globalTotal, Map? accountsTotals, List? transactions, List? transactionsLines, TransactionDate? transactionDate, TransactionCategory? transactionCategory, TransactionDescription? transactionDescription, TransactionAccount? transactionAccount, TransactionValue? transactionValue, bool? isValid, bool? showAddDialog, Transaction? currentTransaction, }) { return TransactionState( globalTotal: globalTotal ?? this.globalTotal, accountsTotals: accountsTotals ?? this.accountsTotals, transactions: transactions ?? this.transactions, transactionsLines: transactionsLines ?? this.transactionsLines, 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, ); } @override List get props => [ transactionDate, transactionCategory, transactionDescription, transactionAccount, transactionValue, isValid, showAddDialog, currentTransaction, ]; }