import 'package:flutter/material.dart'; import 'utils/app_theme.dart'; import 'utils/app_initializer.dart'; import 'utils/force_guide_checker.dart'; import 'routes/app_routes.dart'; import 'constants/app_constants.dart'; import 'controllers/shared_preferences_storage_controller.dart'; void main() async { WidgetsFlutterBinding.ensureInitialized(); await SharedPreferencesStorageController.init(); final result = await AppInitializer.initialize(); runApp( MyApp( initialRoute: result.initialRoute, guideCheckResult: result.guideCheckResult, ), ); } class MyApp extends StatelessWidget { final String initialRoute; final GuideCheckResult? guideCheckResult; const MyApp({super.key, required this.initialRoute, this.guideCheckResult}); @override Widget build(BuildContext context) { return MaterialApp( title: AppConstants.appName, debugShowCheckedModeBanner: false, theme: AppTheme.lightTheme, darkTheme: AppTheme.darkTheme, themeMode: ThemeMode.system, initialRoute: initialRoute, onGenerateRoute: AppRoutes.generateRoute, ); } }