37 lines
1.1 KiB
Dart
37 lines
1.1 KiB
Dart
import 'package:firebase_core/firebase_core.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
|
|
|
import 'app/router.dart';
|
|
import 'core/app_settings.dart';
|
|
import 'firebase_options.dart';
|
|
import 'theme/toss_theme.dart';
|
|
|
|
Future<void> main() async {
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
try {
|
|
await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform);
|
|
} catch (e) {
|
|
debugPrint('Firebase.initializeApp skipped (configure firebase_options / google-services): $e');
|
|
}
|
|
runApp(const ProviderScope(child: MsnApp()));
|
|
}
|
|
|
|
class MsnApp extends ConsumerWidget {
|
|
const MsnApp({super.key});
|
|
|
|
@override
|
|
Widget build(BuildContext context, WidgetRef ref) {
|
|
final router = ref.watch(goRouterProvider);
|
|
final themeMode = ref.watch(themeModeProvider);
|
|
return MaterialApp.router(
|
|
title: 'IYKYKA',
|
|
theme: buildTossTheme(),
|
|
// Match light theme so OS dark mode does not switch to a separate dark palette.
|
|
darkTheme: buildTossTheme(),
|
|
themeMode: themeMode,
|
|
routerConfig: router,
|
|
);
|
|
}
|
|
}
|