import 'package:equatable/equatable.dart'; import '../../models/models.dart'; class BookDetailsState extends Equatable { final Book? book; final bool isLoading; final bool isDeleted; final String? errorMessage; const BookDetailsState({ this.book, this.isLoading = false, this.isDeleted = false, this.errorMessage, }); factory BookDetailsState.initial() { return const BookDetailsState( isLoading: true, ); } BookDetailsState copyWith({ Book? book, bool? isLoading, bool? isDeleted, String? errorMessage, }) { return BookDetailsState( book: book ?? this.book, isLoading: isLoading ?? this.isLoading, isDeleted: isDeleted ?? this.isDeleted, errorMessage: errorMessage ?? this.errorMessage, ); } @override List get props => [ book, isLoading, isDeleted, errorMessage, ]; }