Skip to content
Snippets Groups Projects
nav_cubit_pages.dart 546 B
import 'package:hydrated_bloc/hydrated_bloc.dart';

import 'package:midisynth/config/activity_page.dart';

class NavCubitPage extends HydratedCubit<int> {
  NavCubitPage() : super(0);

  void updateIndex(int index) {
    if (ActivityPage.isIndexAllowed(index)) {
      emit(index);
    } else {
      emit(ActivityPage.indexHome);
    }
  }

  @override
  int fromJson(Map<String, dynamic> json) {
    return ActivityPage.indexHome;
  }

  @override
  Map<String, dynamic>? toJson(int state) {
    return <String, int>{'pageIndex': state};
  }
}