import 'package:flutter/material.dart';
import '../booking/views/booking_page.dart';
import '../booking/views/selected_time_slot_page.dart';
import '../login/views/forgot_password_page.dart';
import '../login/views/login_page.dart';
import '../login/views/otp_verification_page.dart';
import '../login/views/reset_password_page.dart';
import '../onboarding/views/onboarding_page.dart';
import '../profile/views/profile_page.dart';
import '../scan_history/views/scan_history_page.dart';
import '../support/view/help_support_page.dart';

class AppRouter {
  static const String onboarding = '/onboarding';
  static const String login = '/login';
  static const String home = '/home';
  static const String scanHistory = '/scanHistory';
  static const String forgotPassword = '/forgot_password';
  static const String otpVerification = '/otp_verification';
  static const String resetPassword = '/reset_password';
  static const String profileScreen = '/profile_screen';
  static const String bookingPage = '/booking_page';
  static const String selectedTimeSlotPage = '/selected_time_slot_page';
  static const String helpSupportPage = '/help_support_page';


  static Route<dynamic> generateRoute(RouteSettings settings) {
    switch (settings.name) {
      case onboarding:
        return MaterialPageRoute(builder: (_) => const OnboardingPage());
      case login:
        return MaterialPageRoute(builder: (_) => const LoginPage());
      case scanHistory:
        return MaterialPageRoute(builder: (_) => const ScanHistoryPage());
      case forgotPassword:
        return MaterialPageRoute(builder: (_) => const ForgotPasswordPage());
      case otpVerification:
        return MaterialPageRoute(builder: (_) => const OtpVerificationPage());
      case resetPassword:
        return MaterialPageRoute(builder: (_) => const ResetPasswordPage());
      case profileScreen:
        return MaterialPageRoute(builder: (_) => const ProfileScreen());
     case selectedTimeSlotPage:
        return MaterialPageRoute(builder: (_) => const SelectedTimeSlotPage());
     case bookingPage:
        return MaterialPageRoute(builder: (_) => const BookingPage());
        case helpSupportPage:
        return MaterialPageRoute(builder: (_) => const HelpSupportPage());
      default:
        return MaterialPageRoute(
          builder: (_) =>
              const Scaffold(body: Center(child: Text('No route defined'))),
        );
    }
  }
}
