part of 'exercise_new_bloc.dart';

@immutable
abstract class ExerciseNewEvent extends Equatable {
  const ExerciseNewEvent();

  @override
  List<Object> get props => [];
}

class ExerciseNewLoad extends ExerciseNewEvent {
  const ExerciseNewLoad();
}

class ExerciseNewQuantityChange extends ExerciseNewEvent {
  final double quantity;
  const ExerciseNewQuantityChange({required this.quantity});

  @override
  List<Object> get props => [quantity];
}

class ExerciseNewQuantityUnitChange extends ExerciseNewEvent {
  final double quantity;
  const ExerciseNewQuantityUnitChange({required this.quantity});

  @override
  List<Object> get props => [quantity];
}

class ExerciseNewBirthyearChange extends ExerciseNewEvent {
  final int value;
  const ExerciseNewBirthyearChange({required this.value});
  @override
  List<Object> get props => [value];
}

class ExerciseNewWeightChange extends ExerciseNewEvent {
  final double value;
  const ExerciseNewWeightChange({required this.value});
  @override
  List<Object> get props => [value];
}

class ExerciseNewHeightChange extends ExerciseNewEvent {
  final double value;
  const ExerciseNewHeightChange({required this.value});

  @override
  List<Object> get props => [value];
}

class ExerciseNewFitnessLevelChange extends ExerciseNewEvent {
  final String value;
  const ExerciseNewFitnessLevelChange({required this.value});

  @override
  List<Object> get props => [value];
}

class ExerciseNewSizeChange extends ExerciseNewEvent {
  final String propertyName;
  final double value;
  const ExerciseNewSizeChange({required this.propertyName, required this.value});

  @override
  List<Object> get props => [propertyName, value];
}

class ExerciseNewSaveWeight extends ExerciseNewEvent {
  const ExerciseNewSaveWeight();
}

class ExerciseNewBMIAnimate extends ExerciseNewEvent {
  final dynamic value;
  const ExerciseNewBMIAnimate({required this.value});

  @override
  List<Object> get props => [value];
}

class ExerciseNewSubmit extends ExerciseNewEvent {
  const ExerciseNewSubmit();
}

class ExerciseNewAddError extends ExerciseNewEvent {
  final String message;
  const ExerciseNewAddError({required this.message});
  @override
  List<Object> get props => [message];
}
