/*import 'package:flutter/material.dart'; import 'theme_type.dart'; import 'package:google_fonts/google_fonts.dart'; class AppThemes { static ThemeData getLightTheme(ThemeType type) { final Color seedColor; switch (type) { case ThemeType.green: seedColor = Colors.green; break; case ThemeType.orange: seedColor = Colors.orange; break; case ThemeType.blue: seedColor = Colors.blue; break; case ThemeType.violet: seedColor = Colors.deepPurple; break; } final colorScheme = ColorScheme.fromSeed( seedColor: seedColor, brightness: Brightness.light, // Explicitly set for a light theme ); return ThemeData.from( colorScheme: colorScheme, useMaterial3: true, // Recommended for modern Flutter apps textTheme: GoogleFonts.rubikTextTheme()) .copyWith( scaffoldBackgroundColor: Colors.white, bottomNavigationBarTheme: BottomNavigationBarThemeData( backgroundColor: colorScheme.surface, ), ); } }*/ import 'dart:developer'; import 'package:flutter/material.dart'; import 'theme_type.dart'; import 'package:google_fonts/google_fonts.dart'; class AppThemes { static ThemeData getLightTheme(ThemeType type) { print('inside get light theme'); final Color seedColor = _getSeedColor(type); final colorScheme = ColorScheme.fromSeed( seedColor: seedColor, brightness: Brightness.light, ); print(seedColor.toString()); return ThemeData.from( colorScheme: colorScheme, useMaterial3: true, textTheme: GoogleFonts.rubikTextTheme(), ); // .copyWith( // scaffoldBackgroundColor: Colors.white, // bottomNavigationBarTheme: BottomNavigationBarThemeData( // backgroundColor: colorScheme.surface, // ), // ); } static ThemeData getDarkTheme(ThemeType type) { print('inside get dark theme'); final Color seedColor = _getSeedColor(type); log(seedColor.toString()); final colorScheme = ColorScheme.fromSeed( seedColor: seedColor, brightness: Brightness.dark, // Define custom background and surface colors for better contrast // background: const Color(0xFF121212), // A common dark theme background c // surface: const Color(0xFF1E1E1E), // A slightly lighter surface color ); return ThemeData.from( colorScheme: colorScheme, useMaterial3: true, textTheme: GoogleFonts.rubikTextTheme( ThemeData(brightness: Brightness.dark).textTheme, ), ); // .copyWith( // Explicitly set scaffold background color // scaffoldBackgroundColor: colorScheme.background, // // Customize card theme for dark mode // cardTheme: CardTheme( // elevation: 2, // color: colorScheme.surface, // surfaceTintColor: colorScheme.surface, // ), // // Customize text input fields // inputDecorationTheme: InputDecorationTheme( // filled: true, // fillColor: colorScheme.surface, // border: OutlineInputBorder( // borderRadius: BorderRadius.circular(8), // borderSide: BorderSide.none, // ), // focusedBorder: OutlineInputBorder( // borderRadius: BorderRadius.circular(8), // borderSide: BorderSide(color: colorScheme.primary), // ), // ), // Ensure icons have a contrasting color // iconTheme: IconThemeData(color: colorScheme.onSurface), // Adjust bottom navigation bar // bottomNavigationBarTheme: BottomNavigationBarThemeData( // backgroundColor: colorScheme.surface, // selectedItemColor: colorScheme.primary, // unselectedItemColor: colorScheme.onSurface.withOpacity(0.6), // ), // ); } static Color _getSeedColor(ThemeType type) { switch (type) { case ThemeType.green: return Colors.green; case ThemeType.orange: return Colors.orange; case ThemeType.blue: return Colors.blue; case ThemeType.violet: return Colors.deepPurple; case ThemeType.yellow: return Colors.yellow; } } }