part of 'image_upload_cubit.dart';

enum ImageUploadStatus { initial, addingPicture, uploading, success, failure }

class ImageUploadState extends Equatable {
  final ImageUploadStatus status;
  final String? errorMessage;
  final List<PlatformFile> stagedFiles;

  const ImageUploadState({
    this.status = ImageUploadStatus.initial,
    this.errorMessage,
    this.stagedFiles = const [],
  });
  ImageUploadState copyWith({
    ImageUploadStatus? status,
    String? errorMessage,
    List<PlatformFile>? stagedFiles,
  }) {
    return ImageUploadState(
      status: status ?? this.status,
      errorMessage: errorMessage,
      stagedFiles: stagedFiles ?? this.stagedFiles,
    );
  }

  @override
  List<Object?> get props => [status, errorMessage, stagedFiles];
}
