Files
kmobile/lib/features/auth/controllers/theme_state.dart

52 lines
1.2 KiB
Dart

import 'package:equatable/equatable.dart';
import 'package:flutter/material.dart';
import 'package:kmobile/config/theme_type.dart';
import 'package:kmobile/config/themes.dart';
// class ThemeState {
// final ThemeData lightTheme;
// final ThemeMode themeMode;
// final ThemeType themeType;
// ThemeState({
// required this.lightTheme,
// required this.themeMode,
// required this.themeType,
// });
// ThemeState copyWith({
// ThemeData? lightTheme,
// ThemeMode? themeMode,
// ThemeType? themeType,
// }) {
// return ThemeState(
// lightTheme: lightTheme ?? this.lightTheme,
// themeMode: themeMode ?? this.themeMode,
// themeType: themeType ?? this.themeType,
// );
// }
// bool get isDarkMode => themeMode == ThemeMode.dark;
// }
abstract class ThemeState extends Equatable {
getThemeData();
@override
List<Object?> get props => [];
}
class ThemeBlue extends ThemeState {
@override
getThemeData() {
print('returning blue theme');
return AppThemes.getLightTheme(ThemeType.blue);
}
}
class ThemeViolet extends ThemeState {
@override
getThemeData() {
print('returning violet theme');
return AppThemes.getLightTheme(ThemeType.violet);
}
}