77 lines
2.5 KiB
Dart
77 lines
2.5 KiB
Dart
|
|
import 'package:flutter/material.dart';
|
||
|
|
|
||
|
|
import '../shared/theme/app_color_palette.dart';
|
||
|
|
|
||
|
|
class AppTheme {
|
||
|
|
static const Color _primary = Color(0xFF673AB7);
|
||
|
|
static const Color _accent = Color(0xFF9C27B0);
|
||
|
|
static const Color _scaffold = Color(0xFFF8F8F8);
|
||
|
|
static const Color _textHigh = Color(0xFF333333);
|
||
|
|
static const Color _textMid = Color(0xFF666666);
|
||
|
|
static const Color _textLow = Color(0xFF999999);
|
||
|
|
|
||
|
|
static ThemeData light() {
|
||
|
|
const colorScheme = ColorScheme.light(
|
||
|
|
primary: _primary,
|
||
|
|
onPrimary: Color(0xFFFFFFFF),
|
||
|
|
secondary: _accent,
|
||
|
|
onSecondary: Color(0xFFFFFFFF),
|
||
|
|
surface: Color(0xFFFFFFFF),
|
||
|
|
onSurface: _textHigh,
|
||
|
|
error: Color(0xFFB00020),
|
||
|
|
onError: Color(0xFFFFFFFF),
|
||
|
|
outline: Color(0xFFDDDDDD),
|
||
|
|
surfaceContainerHighest: Color(0xFFF0E6FF),
|
||
|
|
surfaceContainerHigh: Color(0xFFF4F5F7),
|
||
|
|
surfaceContainerLow: Color(0xFFFAFAFA),
|
||
|
|
);
|
||
|
|
|
||
|
|
return ThemeData(
|
||
|
|
useMaterial3: true,
|
||
|
|
colorScheme: colorScheme,
|
||
|
|
scaffoldBackgroundColor: _scaffold,
|
||
|
|
textTheme: const TextTheme(
|
||
|
|
headlineMedium: TextStyle(
|
||
|
|
fontSize: 24,
|
||
|
|
fontWeight: FontWeight.w700,
|
||
|
|
color: _textHigh,
|
||
|
|
),
|
||
|
|
titleLarge: TextStyle(
|
||
|
|
fontSize: 20,
|
||
|
|
fontWeight: FontWeight.w600,
|
||
|
|
color: _textHigh,
|
||
|
|
),
|
||
|
|
titleMedium: TextStyle(
|
||
|
|
fontSize: 16,
|
||
|
|
fontWeight: FontWeight.w600,
|
||
|
|
color: _textHigh,
|
||
|
|
),
|
||
|
|
bodyLarge: TextStyle(fontSize: 16, color: _textMid),
|
||
|
|
bodyMedium: TextStyle(fontSize: 14, color: _textMid),
|
||
|
|
bodySmall: TextStyle(fontSize: 12, color: _textLow),
|
||
|
|
),
|
||
|
|
extensions: const <ThemeExtension<dynamic>>[
|
||
|
|
AppColorPalette(
|
||
|
|
accentPurple: _accent,
|
||
|
|
historyGoldBg: Color(0xFFFFF8E1),
|
||
|
|
historyGoldText: Color(0xFFFFB300),
|
||
|
|
historyBlueBg: Color(0xFFE6F7FF),
|
||
|
|
historyBlueText: Color(0xFF1890FF),
|
||
|
|
historyGrayBg: Color(0xFFF5F5F5),
|
||
|
|
historyGrayText: Color(0xFF9E9E9E),
|
||
|
|
categoryCareerBg: Color(0xFFF0E6FF),
|
||
|
|
categoryCareerText: Color(0xFF673AB7),
|
||
|
|
categoryLoveBg: Color(0xFFFFF3E0),
|
||
|
|
categoryLoveText: Color(0xFFFF9800),
|
||
|
|
categoryMoneyBg: Color(0xFFE8F5E9),
|
||
|
|
categoryMoneyText: Color(0xFF4CAF50),
|
||
|
|
notificationDot: Color(0xFFE53935),
|
||
|
|
warning: Color(0xFFF57C00),
|
||
|
|
warningContainer: Color(0xFFFFF3E0),
|
||
|
|
onWarningContainer: Color(0xFF8A4B00),
|
||
|
|
),
|
||
|
|
],
|
||
|
|
);
|
||
|
|
}
|
||
|
|
}
|