import 'package:equatable/equatable.dart'; import '../../../domain/entities/server.dart'; abstract class ServerState extends Equatable { const ServerState(); @override List get props => []; } class ServerInitial extends ServerState { const ServerInitial(); } class ServerLoading extends ServerState { const ServerLoading(); } class ServerLoaded extends ServerState { final List servers; final int dirtyCount; const ServerLoaded(this.servers, {this.dirtyCount = 0}); @override List get props => [servers, dirtyCount]; } class ServerOperationSuccess extends ServerState { final String message; const ServerOperationSuccess(this.message); @override List get props => [message]; } class ServerError extends ServerState { final String message; const ServerError(this.message); @override List get props => [message]; } class ServerSyncing extends ServerState { final String message; const ServerSyncing({this.message = 'Syncing changes...'}); @override List get props => [message]; } class ServerSyncSuccess extends ServerState { final String message; final int syncedCount; const ServerSyncSuccess(this.message, this.syncedCount); @override List get props => [message, syncedCount]; } class ServerDownloading extends ServerState { const ServerDownloading(); }