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