import 'package:equatable/equatable.dart';
import 'package:syncrow_app/features/scene/enum/effective_period_options.dart';

abstract class EffectPeriodEvent extends Equatable {
  const EffectPeriodEvent();

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

class SetPeriod extends EffectPeriodEvent {
  final EnumEffectivePeriodOptions period;

  const SetPeriod(this.period);

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

class ToggleDay extends EffectPeriodEvent {
  final String day;

  const ToggleDay(this.day);

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

class SetCustomTime extends EffectPeriodEvent {
  final String startTime;
  final String endTime;

  const SetCustomTime(this.startTime, this.endTime);

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

class ResetEffectivePeriod extends EffectPeriodEvent {}

class ResetDays extends EffectPeriodEvent {
  @override
  List<Object> get props => [];
}

class SetDays extends EffectPeriodEvent {
  final String daysBinary;

  const SetDays(this.daysBinary);
}
