import 'package:flutter/material.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'core/l10n/l10n.dart'; import 'core/realtime/realtime_sync.dart'; import 'core/router/app_router.dart'; void main() { runApp(const ProviderScope(child: RecipeApp())); } class RecipeApp extends ConsumerWidget { const RecipeApp({super.key}); @override Widget build(BuildContext context, WidgetRef ref) { final router = ref.watch(appRouterProvider); return MaterialApp.router( onGenerateTitle: (context) => context.l10n.appTitle, builder: (context, child) { return GlobalRealtimeSync( child: SelectionArea(child: child ?? const SizedBox.shrink()), ); }, theme: ThemeData( colorScheme: ColorScheme.fromSeed(seedColor: Colors.green), useMaterial3: true, ), localizationsDelegates: const [ AppLocalizations.delegate, GlobalMaterialLocalizations.delegate, GlobalWidgetsLocalizations.delegate, GlobalCupertinoLocalizations.delegate, ], supportedLocales: AppLocalizations.supportedLocales, locale: const Locale('sv'), routerConfig: router, ); } }