Shuffle/app/lib/app.dart
cschlaefke 936ca7bd4b feat(theme): add Material 3 light/dark theme base and design tokens
Refs #31

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-02 20:19:19 +01:00

31 lines
1.2 KiB
Dart

import 'package:flutter/material.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:shuffle/core/l10n/app_locale.dart';
import 'package:shuffle/core/routing/app_router.dart';
import 'package:shuffle/core/theme/app_theme.dart';
import 'package:shuffle/l10n/app_localizations.dart';
class ShuffleApp extends ConsumerWidget {
const ShuffleApp({super.key});
@override
Widget build(BuildContext context, WidgetRef ref) {
return MaterialApp.router(
onGenerateTitle: (context) => AppLocalizations.of(context).appTitle,
theme: AppTheme.light(),
darkTheme: AppTheme.dark(),
themeMode: ThemeMode.system,
routerConfig: ref.watch(appRouterProvider),
locale: ref.watch(appLocaleProvider),
supportedLocales: AppLocalizations.supportedLocales,
localizationsDelegates: const [
AppLocalizations.delegate,
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
localeResolutionCallback: (locale, supported) => resolveAppLocale(locale),
);
}
}