refactor(apps): 主题系统迁移至 ColorScheme + 扩展架构并支持 Dark Mode

This commit is contained in:
qzl
2026-03-27 19:07:39 +08:00
parent ecc1ec6ce4
commit ae29a8209b
146 changed files with 4301 additions and 3200 deletions
@@ -25,6 +25,7 @@ class CalendarInviteCard extends StatelessWidget {
@override
Widget build(BuildContext context) {
final l10n = context.l10n;
final colorScheme = Theme.of(context).colorScheme;
return Container(
margin: const EdgeInsets.symmetric(
@@ -33,9 +34,9 @@ class CalendarInviteCard extends StatelessWidget {
),
padding: const EdgeInsets.all(AppSpacing.md),
decoration: BoxDecoration(
color: AppColors.white,
color: colorScheme.surface,
borderRadius: BorderRadius.circular(AppRadius.md),
border: Border.all(color: AppColors.border),
border: Border.all(color: colorScheme.outlineVariant),
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
@@ -45,12 +46,12 @@ class CalendarInviteCard extends StatelessWidget {
Container(
padding: const EdgeInsets.all(8),
decoration: BoxDecoration(
color: AppColors.blue100,
color: colorScheme.primaryContainer,
borderRadius: BorderRadius.circular(AppRadius.sm),
),
child: const Icon(
child: Icon(
Icons.calendar_today,
color: AppColors.blue600,
color: colorScheme.primary,
size: 20,
),
),
@@ -71,7 +72,7 @@ class CalendarInviteCard extends StatelessWidget {
eventTitle != null
? l10n.messagesCalendarCardInviteWithTitle(eventTitle!)
: l10n.messagesCalendarCardInviteWithoutTitle,
style: const TextStyle(fontSize: 14, color: AppColors.slate700),
style: TextStyle(fontSize: 14, color: colorScheme.onSurfaceVariant),
),
const SizedBox(height: AppSpacing.md),
Row(
@@ -112,6 +113,7 @@ class CalendarUpdateCard extends StatelessWidget {
@override
Widget build(BuildContext context) {
final l10n = context.l10n;
final colorScheme = Theme.of(context).colorScheme;
return GestureDetector(
onTap: onTap,
@@ -122,21 +124,21 @@ class CalendarUpdateCard extends StatelessWidget {
),
padding: const EdgeInsets.all(AppSpacing.md),
decoration: BoxDecoration(
color: AppColors.white,
color: colorScheme.surface,
borderRadius: BorderRadius.circular(AppRadius.md),
border: Border.all(color: AppColors.border),
border: Border.all(color: colorScheme.outlineVariant),
),
child: Row(
children: [
Container(
padding: const EdgeInsets.all(8),
decoration: BoxDecoration(
color: AppColors.blue100,
color: colorScheme.primaryContainer,
borderRadius: BorderRadius.circular(AppRadius.sm),
),
child: const Icon(
child: Icon(
Icons.calendar_today,
color: AppColors.blue600,
color: colorScheme.primary,
size: 20,
),
),
@@ -157,15 +159,15 @@ class CalendarUpdateCard extends StatelessWidget {
const SizedBox(height: 2),
Text(
_formatTime(context, message.createdAt),
style: const TextStyle(
style: TextStyle(
fontSize: 12,
color: AppColors.slate500,
color: colorScheme.onSurfaceVariant,
),
),
],
),
),
const Icon(Icons.chevron_right, color: AppColors.slate400),
Icon(Icons.chevron_right, color: colorScheme.outline),
],
),
),
@@ -201,6 +203,7 @@ class CalendarDeleteCard extends StatelessWidget {
@override
Widget build(BuildContext context) {
final l10n = context.l10n;
final colorScheme = Theme.of(context).colorScheme;
return Container(
margin: const EdgeInsets.symmetric(
@@ -209,21 +212,21 @@ class CalendarDeleteCard extends StatelessWidget {
),
padding: const EdgeInsets.all(AppSpacing.md),
decoration: BoxDecoration(
color: AppColors.slate50,
color: colorScheme.surfaceContainerLowest,
borderRadius: BorderRadius.circular(AppRadius.md),
border: Border.all(color: AppColors.slate200),
border: Border.all(color: colorScheme.outlineVariant),
),
child: Row(
children: [
Container(
padding: const EdgeInsets.all(8),
decoration: BoxDecoration(
color: AppColors.slate200,
color: colorScheme.surfaceContainerHigh,
borderRadius: BorderRadius.circular(AppRadius.sm),
),
child: const Icon(
child: Icon(
Icons.calendar_today,
color: AppColors.slate500,
color: colorScheme.onSurfaceVariant,
size: 20,
),
),
@@ -233,7 +236,10 @@ class CalendarDeleteCard extends StatelessWidget {
eventTitle != null
? l10n.messagesCalendarCardDeletedWithTitle(eventTitle!)
: l10n.messagesCalendarCardDeletedWithoutTitle,
style: const TextStyle(fontSize: 14, color: AppColors.slate500),
style: TextStyle(
fontSize: 14,
color: colorScheme.onSurfaceVariant,
),
),
),
],