import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:food_ai/l10n/app_localizations.dart'; import 'core/locale/language_provider.dart'; import 'core/router/app_router.dart'; import 'core/theme/app_theme.dart'; import 'features/home/home_provider.dart'; import 'features/products/product_job_provider.dart'; class App extends ConsumerStatefulWidget { const App({super.key}); @override ConsumerState createState() => _AppState(); } class _AppState extends ConsumerState with WidgetsBindingObserver { @override void initState() { super.initState(); WidgetsBinding.instance.addObserver(this); } @override void dispose() { WidgetsBinding.instance.removeObserver(this); super.dispose(); } @override void didChangeAppLifecycleState(AppLifecycleState lifecycleState) { if (lifecycleState == AppLifecycleState.resumed) { ref.read(recentProductJobsProvider.notifier).refresh(); ref.read(todayJobsProvider.notifier).load(); } } @override Widget build(BuildContext context) { final router = ref.watch(routerProvider); final languageCode = ref.watch(languageProvider); return MaterialApp.router( title: 'FoodAI', theme: appTheme(), routerConfig: router, debugShowCheckedModeBanner: false, locale: Locale(languageCode), localizationsDelegates: AppLocalizations.localizationsDelegates, supportedLocales: AppLocalizations.supportedLocales, ); } }