|
- import 'package:flutter/material.dart';
- import 'package:google_fonts/google_fonts.dart';
- import 'colors.dart';
-
- class AppTheme {
- static ThemeData get lightTheme {
- return ThemeData(
- useMaterial3: true,
- colorScheme: ColorScheme.fromSeed(
- seedColor: AppColors.primary,
- brightness: Brightness.light,
- ),
- scaffoldBackgroundColor: AppColors.background,
- textTheme: GoogleFonts.interTextTheme(ThemeData.light().textTheme),
-
- appBarTheme: AppBarTheme(
- backgroundColor: Colors.white,
- elevation: 0,
- centerTitle: true,
- scrolledUnderElevation: 0,
- titleTextStyle: GoogleFonts.inter(
- fontSize: 20,
- fontWeight: FontWeight.w600,
- color: AppColors.textPrimary,
- ),
- iconTheme: const IconThemeData(color: AppColors.textPrimary),
- ),
-
- elevatedButtonTheme: ElevatedButtonThemeData(
- style: ElevatedButton.styleFrom(
- backgroundColor: AppColors.primary,
- foregroundColor: Colors.white,
- padding: const EdgeInsets.symmetric(horizontal: 32, vertical: 16),
- shape: RoundedRectangleBorder(
- borderRadius: BorderRadius.circular(12),
- ),
- elevation: 0,
- textStyle: GoogleFonts.inter(
- fontSize: 16,
- fontWeight: FontWeight.w600,
- ),
- ),
- ),
-
- outlinedButtonTheme: OutlinedButtonThemeData(
- style: OutlinedButton.styleFrom(
- padding: const EdgeInsets.symmetric(horizontal: 24, vertical: 12),
- shape: RoundedRectangleBorder(
- borderRadius: BorderRadius.circular(12),
- ),
- ),
- ),
-
- inputDecorationTheme: InputDecorationTheme(
- filled: true,
- fillColor: Colors.grey[50],
- border: OutlineInputBorder(
- borderRadius: BorderRadius.circular(12),
- borderSide: BorderSide(color: Colors.grey[300]!),
- ),
- enabledBorder: OutlineInputBorder(
- borderRadius: BorderRadius.circular(12),
- borderSide: BorderSide(color: Colors.grey[300]!),
- ),
- focusedBorder: OutlineInputBorder(
- borderRadius: BorderRadius.circular(12),
- borderSide: const BorderSide(color: AppColors.primary, width: 2),
- ),
- contentPadding: const EdgeInsets.symmetric(horizontal: 16, vertical: 16),
- ),
-
- cardTheme: CardThemeData(
- elevation: 0,
- shape: RoundedRectangleBorder(
- borderRadius: BorderRadius.circular(16),
- side: BorderSide(color: Colors.grey[200]!),
- ),
- color: Colors.white,
- ),
-
- chipTheme: ChipThemeData(
- padding: const EdgeInsets.symmetric(horizontal: 12, vertical: 8),
- labelPadding: const EdgeInsets.symmetric(horizontal: 8),
- shape: RoundedRectangleBorder(
- borderRadius: BorderRadius.circular(24),
- ),
- ),
- );
- }
-
- static ThemeData get darkTheme {
- return ThemeData(
- useMaterial3: true,
- colorScheme: ColorScheme.fromSeed(
- seedColor: AppColors.primary,
- brightness: Brightness.dark,
- ),
- scaffoldBackgroundColor: const Color(0xFF121212),
- );
- }
- }
|