import 'package:flutter/material.dart';
import 'package:mohem_flutter_app/ui/attendance/monthly_attendance.dart';
import 'package:mohem_flutter_app/ui/bottom_sheets/attendence_details_bottom_sheet.dart';
import 'package:mohem_flutter_app/ui/landing/dashboard_screen.dart';
import 'package:mohem_flutter_app/ui/landing/today_attendance_screen.dart';
import 'package:mohem_flutter_app/ui/login/forgot_password_screen.dart';
import 'package:mohem_flutter_app/ui/login/login_screen.dart';
import 'package:mohem_flutter_app/ui/login/new_password_screen.dart';
import 'package:mohem_flutter_app/ui/login/verify_last_login_screen.dart';
import 'package:mohem_flutter_app/ui/login/verify_login_screen.dart';
import 'package:mohem_flutter_app/ui/misc/request_submit_screen.dart';
import 'package:mohem_flutter_app/ui/my_attendance/dynamic_screens/dynamic_input_screen.dart';
import 'package:mohem_flutter_app/ui/my_attendance/dynamic_screens/dynamic_listview_screen.dart';
import 'package:mohem_flutter_app/ui/my_attendance/my_attendance_screen.dart';
import 'package:mohem_flutter_app/ui/payslip/monthly_pay_slip_screen.dart';
import 'package:mohem_flutter_app/ui/profile/basic_details.dart';
import 'package:mohem_flutter_app/ui/profile/contact_details.dart';
import 'package:mohem_flutter_app/ui/profile/delete_familyMember.dart';
import 'package:mohem_flutter_app/ui/profile/dynamic_screens/dynamic_input_address_screen.dart';
import 'package:mohem_flutter_app/ui/profile/dynamic_screens/dynamic_input_basic_details_screen.dart';
import 'package:mohem_flutter_app/ui/profile/family_members.dart';
import 'package:mohem_flutter_app/ui/profile/personal_info.dart';
import 'package:mohem_flutter_app/ui/screens/announcements/announcement_details.dart';
import 'package:mohem_flutter_app/ui/screens/announcements/announcements.dart';

// import 'package:mohem_flutter_app/ui/my_attendance/work_from_home_screen.dart';
import 'package:mohem_flutter_app/ui/screens/eit/add_eit.dart';
import 'package:mohem_flutter_app/ui/screens/mowadhafhi/mowadhafhi_home.dart';
import 'package:mohem_flutter_app/ui/screens/mowadhafhi/mowadhafhi_hr_request.dart';
import 'package:mohem_flutter_app/ui/screens/mowadhafhi/request_details.dart';
import 'package:mohem_flutter_app/ui/screens/pending_transactions/pending_transactions.dart';
import 'package:mohem_flutter_app/ui/screens/pending_transactions/pending_transactions_details.dart';
import 'package:mohem_flutter_app/ui/screens/profile/profile_screen.dart';
import 'package:mohem_flutter_app/ui/screens/submenu_screen.dart';
import 'package:mohem_flutter_app/ui/work_list/item_history_screen.dart';
import 'package:mohem_flutter_app/ui/work_list/itg_detail_screen.dart';
import 'package:mohem_flutter_app/ui/work_list/work_list_screen.dart';
import 'package:mohem_flutter_app/ui/work_list/worklist_detail_screen.dart';

class AppRoutes {
  static const String splash = "/splash";
  static const String registerSelection = "/registerSelection";
  static const String loginVerifyAccount = "/loginVerifyAccount";
  static const String login = "/login";
  static const String verifyLogin = "/verifyLogin";
  static const String verifyLastLogin = "/verifyLastLogin";
  static const String forgotPassword = "/forgotPassword";
  static const String newPassword = "/newPassword";
  static const String loginVerification = "/loginVerification";
  static const String dashboard = "/dashboard";
  static const String todayAttendance = "/todayAttendance";
  static const String subMenuScreen = "/submenuScreen";
  static const String addEitScreen = "/addeitScreen";
  static const String initialRoute = login;

  //Work List
  static const String workList = "/workList";
  static const String workListDetail = "/workListDetail";
  static const String itgDetail = "/itgDetail";
  static const String itemHistory = "/itemHistory";

  static const String myAttendance = "/myAttendance";
  static const String dynamicScreen = "/dynamicScreen";
  static const String addDynamicInput = "/addDynamicInput";
  static const String requestSubmitScreen = "/requestSubmitScreen";

  //profile

  static const String addDynamicInputProfile = 'addDynamicInputProfile';
  static const String addDynamicAddressScreen = 'addDynamicAddressProfile';
  //Attendance
  static const String attendance = "/attendance";
  static const String monthlyAttendance = "/monthlyAttendance";

  //Bottom Sheet
  static const String attendanceDetailsBottomSheet = "/attendanceDetailsBottomSheet";

  //Profile
  static const String profile = "/profile";
  static const String personalInfo = "/personalInfo";
  static const String basicDetails = "/basicDetails";
  static const String contactDetails = "/contactDetails";
  static const String familyMembers = "/familyMembers";
  static const String deleteFamilyMember = "/deleteFamilyMember";

  // Mowadhafhi
  static const String mowadhafhi = "/mowadhafhi";
  static const String mowadhafhiDetails = "/mowadhafhiDetails";
  static const String mowadhafhiHRRequest = "/mowadhafhiHRRequest";

  // Pending Transactions
  static const String pendingTransactions = "/pendingTransactions";
  static const String pendingTransactionsDetails = "/pendingTransactionsDetails";

  // Announcements
  static const String announcements = "/announcements";
  static const String announcementsDetails = "/announcementsDetails";

  //Pay slip
  static const String monthlyPaySlip = "/monthlyPaySlip";

  static final Map<String, WidgetBuilder> routes = {
    login: (context) => LoginScreen(),
    verifyLogin: (context) => VerifyLoginScreen(),
    verifyLastLogin: (context) => VerifyLastLoginScreen(),
    dashboard: (context) => DashboardScreen(),

    subMenuScreen: (context) => SubMenuScreen(),
    newPassword: (context) => NewPasswordScreen(),
    forgotPassword: (context) => ForgotPasswordScreen(),
    todayAttendance: (context) => TodayAttendanceScreen(),
    //eit

    addEitScreen: (context) => AddEITScreen(),

    //Work List
    workList: (context) => WorkListScreen(),
    workListDetail: (context) => WorkListDetailScreen(),
    itgDetail: (context) => ItgDetailScreen(),
    itemHistory: (context) => ItemHistoryScreen(),

    myAttendance: (context) => MyAttendanceScreen(),
    // workFromHome: (context) => WorkFromHomeScreen(),
    // addWorkFromHome: (context) => AddWorkFromHomeScreen(),
    profile: (context) => ProfileScreen(),
    //Attendance
    monthlyAttendance: (context) => MonthlyAttendance(),

    //Bottom Sheet
    attendanceDetailsBottomSheet: (context) => AttendenceDetailsBottomSheet(),

    //Profile
    //profile: (context) => Profile(),
    //profile: (context) => Profile(),
    personalInfo: (context) => PesonalInfo(),
    basicDetails: (context) => BasicDetails(),
    contactDetails: (context) => ContactDetails(),
    familyMembers: (context) => FamilyMembers(),
    dynamicScreen: (context) => DynamicListViewScreen(),
    addDynamicInput: (context) => DynamicInputScreen(),
    addDynamicInputProfile: (context) => DynamicInputScreenProfile(),
    addDynamicAddressScreen: (context) => DynamicInputScreenAddress(),
    deleteFamilyMember: (context) => DeleteFamilyMember(),
    requestSubmitScreen: (context) => RequestSubmitScreen(),

    //mowadhafhi
    mowadhafhi: (context) => MowadhafhiHome(),
    mowadhafhiDetails: (context) => MowadhafhiRequestDetails(),
    mowadhafhiHRRequest: (context) => MowadhafhiHRRequest(),

    pendingTransactions: (context) => PendingTransactions(),
    pendingTransactionsDetails: (context) => PendingTransactionsDetails(),

    announcements: (context) => Announcements(),
    announcementsDetails: (context) => AnnouncementDetails(),

    //pay slip
    monthlyPaySlip: (context) => MonthlyPaySlipScreen(),
  };
}
