25 lines
573 B
Dart
25 lines
573 B
Dart
import 'package:flutter/material.dart';
|
|
|
|
class ThemeState {
|
|
final ThemeMode themeMode;
|
|
final bool isLoading;
|
|
|
|
const ThemeState({
|
|
required this.themeMode,
|
|
this.isLoading = false,
|
|
});
|
|
|
|
ThemeState copyWith({
|
|
ThemeMode? themeMode,
|
|
bool? isLoading,
|
|
}) {
|
|
return ThemeState(
|
|
themeMode: themeMode ?? this.themeMode,
|
|
isLoading: isLoading ?? this.isLoading,
|
|
);
|
|
}
|
|
|
|
bool get isDarkMode => themeMode == ThemeMode.dark;
|
|
bool get isLightMode => themeMode == ThemeMode.light;
|
|
bool get isSystemMode => themeMode == ThemeMode.system;
|
|
} |