import 'package:flutter/material.dart'; import 'package:afterwork/presentation/screens/login/login_screen.dart'; import 'package:afterwork/presentation/screens/home/home_screen.dart'; import 'package:afterwork/presentation/screens/event/event_screen.dart'; import 'package:afterwork/presentation/screens/story/story_screen.dart'; import 'package:afterwork/presentation/screens/profile/profile_screen.dart'; import 'package:afterwork/presentation/screens/settings/settings_screen.dart'; import 'package:afterwork/data/datasources/event_remote_data_source.dart'; import '../presentation/reservations/reservations_screen.dart'; class AppRouter { final EventRemoteDataSource eventRemoteDataSource; final String userId; final String userName; final String userLastName; AppRouter({ required this.eventRemoteDataSource, required this.userId, required this.userName, required this.userLastName, }); Route generateRoute(RouteSettings settings) { switch (settings.name) { case '/': return MaterialPageRoute(builder: (_) => const LoginScreen()); case '/home': return MaterialPageRoute( builder: (_) => HomeScreen( eventRemoteDataSource: eventRemoteDataSource, userId: userId, userName: userName, userLastName: userLastName, ), ); case '/event': return MaterialPageRoute( builder: (_) => EventScreen( eventRemoteDataSource: eventRemoteDataSource, userId: userId, userName: userName, userLastName: userLastName, ), ); case '/story': return MaterialPageRoute(builder: (_) => const StoryScreen()); case '/profile': return MaterialPageRoute(builder: (_) => const ProfileScreen()); case '/settings': return MaterialPageRoute(builder: (_) => const SettingsScreen()); case '/reservations': return MaterialPageRoute(builder: (_) => const ReservationsScreen()); default: return MaterialPageRoute( builder: (_) => const Scaffold( body: Center(child: Text('Page non trouvée')), ), ); } } }