import 'package:dynamic_color/dynamic_color.dart'; import 'package:flutter/material.dart'; class GlobalTheme { static final Color _lightFocusColor = Colors.black.withOpacity(0.12); static final Color _darkFocusColor = Colors.white.withOpacity(0.12); static ThemeData lightThemeData(ColorScheme? dynamicColorScheme) { return themeData(lightColorScheme, dynamicColorScheme, _lightFocusColor); } static ThemeData darkThemeData(ColorScheme? dynamicColorScheme) { return themeData(darkColorScheme, dynamicColorScheme, _darkFocusColor); } static ThemeData themeData(ColorScheme colorScheme, ColorScheme? dynamic, Color focusColor) { return ThemeData( colorScheme: colorScheme, canvasColor: colorScheme.surface, scaffoldBackgroundColor: colorScheme.surface, highlightColor: Colors.transparent, dividerColor: colorScheme.shadow, focusColor: focusColor, useMaterial3: true, appBarTheme: AppBarTheme( backgroundColor: colorScheme.surface, foregroundColor: colorScheme.onSurface, elevation: 0 ) ); } static ColorScheme get lightColorScheme { return ColorScheme( primary: Color(0xff747ab5), onPrimary: Colors.white, secondary: Color(0x335d63a6),// Color(0xFFDDE0E0), onSecondary: Color(0xFF322942), tertiary: Colors.grey[300], onTertiary: Colors.grey[700], surfaceContainer: (Colors.grey[100])!, outline: (Colors.grey[500])!, shadow: (Colors.grey[300])!, error: (Colors.red[400])!, onError: Colors.white, surface: Color(0xFFFAFBFB), onSurface: Color(0xFF241E30), brightness: Brightness.light, ); } static ColorScheme get darkColorScheme { return ColorScheme( primary: Color(0xff5d63a6), secondary: Colors.blue.shade500, secondaryContainer: Color(0xff1c1c1c), surface: Colors.black, surfaceContainer: Color(0xff0f0f0f), onSurfaceVariant: Colors.grey[400], tertiary: Colors.grey[900], onTertiary: Colors.grey, outline: (Colors.grey[700])!, shadow: (Colors.grey[800])!, error: (Colors.red[400])!, onError: Colors.white, onPrimary: Colors.white, onSecondary: (Colors.grey[400])!, onSurface: Colors.white, brightness: Brightness.dark, ); } }