Sonnat Project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

27 lines
772 B

1 year ago
1 year ago
1 year ago
  1. import 'package:flutter_bloc/flutter_bloc.dart';
  2. import 'package:sonnat/core/theme/panel_colors.dart';
  3. import 'package:sonnat/core/theme/panel_theme.dart';
  4. import 'package:sonnat/core/theme/panel_typography.dart';
  5. import 'package:sonnat/core/utils/base_cubit_type.dart';
  6. class ThemeCubit extends Cubit<BaseCubitType<ThemeState>> {
  7. PanelTheme _currentTheme = LightTheme();
  8. ThemeCubit() : super(BaseCubitType(eventName: ThemeState.empty));
  9. void empty() => emit(BaseCubitType(eventName: ThemeState.empty));
  10. void setTheme(PanelTheme theme) {
  11. _currentTheme = theme;
  12. }
  13. PanelTheme get currentTheme => _currentTheme;
  14. sonnatColors get colors => _currentTheme.colors;
  15. sonnatTypography get typo => _currentTheme.typography;
  16. }
  17. enum ThemeState {
  18. empty,
  19. }