import 'package:equatable/equatable.dart'; import 'package:flutter/material.dart'; import 'package:hydrated_bloc/hydrated_bloc.dart'; import 'package:scrobbles/models/counts_by_hour.dart'; part 'data_counts_by_hour_state.dart'; class DataCountsByHourCubit extends HydratedCubit<DataCountsByHourState> { DataCountsByHourCubit() : super(const DataCountsByHourState()); void getData(DataCountsByHourState state) { emit(state); } CountsByHourData? getValue() { return state.countsByHour; } void update(CountsByHourData? countsByHour) { if ((countsByHour != null) && (state.countsByHour.toString() != countsByHour.toString())) { setValue(countsByHour); } } void setValue(CountsByHourData? countsByHour) { emit(DataCountsByHourState( countsByHour: countsByHour, )); } @override DataCountsByHourState? fromJson(Map<String, dynamic> json) { return DataCountsByHourState( countsByHour: CountsByHourData.fromJson(json['countsByHour']), ); } @override Map<String, Object?>? toJson(DataCountsByHourState state) { return <String, Object?>{ 'countsByHour': state.countsByHour?.toJson(), }; } }