You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
152 lines
6.8 KiB
Dart
152 lines
6.8 KiB
Dart
import 'package:mc_common_app/models/requests_models/offers_model.dart';
|
|
import 'package:mc_common_app/models/requests_models/provider_offers_model.dart';
|
|
import 'package:mc_common_app/models/requests_models/request_model.dart';
|
|
import 'package:mc_common_app/models/user_models/register_user.dart';
|
|
import 'package:mc_common_app/utils/enums.dart';
|
|
import 'package:mc_common_app/views/profile/profile_view.dart';
|
|
|
|
import 'package:mc_common_app/views/user/change_email_page.dart';
|
|
import 'package:mc_common_app/views/user/change_mobile_page.dart';
|
|
import 'package:mc_common_app/views/user/change_password_page.dart';
|
|
import 'package:mc_common_app/views/user/complete_profile_page.dart';
|
|
import 'package:mc_common_app/views/user/confirm_new_password_page.dart';
|
|
import 'package:mc_common_app/views/user/edit_account_page.dart';
|
|
import 'package:mc_common_app/views/user/forget_password_method_page.dart';
|
|
import 'package:mc_common_app/views/user/forget_password_page.dart';
|
|
import 'package:mc_common_app/views/user/login_method_selection_page.dart';
|
|
import 'package:mc_common_app/views/user/login_verification_page.dart';
|
|
import 'package:mc_common_app/views/user/login_verify_account_page.dart';
|
|
import 'package:mc_common_app/views/user/login_with_password_page.dart';
|
|
import 'package:mc_common_app/views/user/register_page.dart';
|
|
import 'package:mc_common_app/views/user/register_provider_page.dart';
|
|
import 'package:mc_common_app/views/user/register_selection_page.dart';
|
|
import 'package:mc_common_app/views/splash/splash_page.dart';
|
|
import 'package:mc_common_app/views/user/vertify_password_page.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
class AppRoutes {
|
|
//User
|
|
static const String splash = "/splash";
|
|
static const String registerSelection = "/registerSelection";
|
|
static const String loginVerifyAccount = "/loginVerifyAccount";
|
|
static const String registerCustomer = "/registerCustomer";
|
|
static const String registerProvider = "/registerProvider";
|
|
static const String forgetPassword = "/forgetPassword";
|
|
static const String loginVerification = "/loginVerification";
|
|
static const String loginWithPassword = "/loginWithPassword";
|
|
static const String loginMethodSelection = "/loginMethodSelection";
|
|
static const String completeProfile = "/completeProfile";
|
|
static const String profile1 = "/profile1";
|
|
static const String profile2 = "/profile2";
|
|
static const String profile3 = "/profile3";
|
|
static const String verifyPassword = "/vertifyPassword";
|
|
static const String confirmNewPasswordPage = "/confirmNewPasswordPage";
|
|
static const String changePassword = "/changePassword";
|
|
static const String forgetPasswordMethodPage = "/forgetPasswordMethodPage";
|
|
static const String changeMobilePage = "/changeMobilePage";
|
|
static const String changeEmailPage = "/changeEmailPage";
|
|
static const String editAccountPage = "/editAccoundPage";
|
|
|
|
static const String dashboard = "/dashboard";
|
|
static const String bookProviderAppView = "/bookProviderAppView";
|
|
static const String appointmentDetailView = "/appointmentDetailView";
|
|
static const String bookAppointmenServicesView = "/bookAppointmenServicesView";
|
|
static const String bookAppointmenSchedulesView = "/bookAppointmenSchedulesView";
|
|
static const String bookAppointmentsItemView = "/bookAppointmentsItemView";
|
|
static const String reviewAppointmentView = "/reviewAppointmentView";
|
|
|
|
//Advertisement
|
|
static const String selectAdTypeView = "/selectAdTypeView";
|
|
static const String adsDetailView = "/adsDetailView";
|
|
static const String createAdView = "/createAdView";
|
|
static const String adsFilterView = "/adsFilterView";
|
|
|
|
// Payments
|
|
static const String paymentMethodsView = "/paymentMethodsView";
|
|
|
|
//Customer APP: Provider & Services
|
|
static const String branchDetailPage = "/branchDetailPage";
|
|
static const String providerProfilePage = "/providerProfilePage";
|
|
|
|
// Subscriptions
|
|
static const String mySubscriptionsPage = "/mySubscriptionsPage";
|
|
static const String subscriptionsPage = "/subscriptionsPage";
|
|
|
|
//Requests
|
|
static const String myRequestsPage = "/myRequestsPage";
|
|
static const String createRequestPage = "/createRequestPage";
|
|
static const String offersListPage = "/offersListPage";
|
|
static const String requestsDetailPage = "/requestsDetailPage";
|
|
static const String sendOfferPage = "/sendOfferPage";
|
|
|
|
//Setting Options
|
|
static const String settingOptionsFaqs = "/settingOptionsFaqs";
|
|
static const String settingOptionsLanguages = "/settingOptionsLanguages";
|
|
static const String settingOptionsInviteFriends = "/settingOptionsInviteFriends";
|
|
|
|
//Profile Screen
|
|
static const String profileView = "/profileView";
|
|
|
|
|
|
//Chat
|
|
static const String chatView = "/chatView";
|
|
|
|
static const String initialRoute = splash;
|
|
|
|
static final Map<String, WidgetBuilder> routes = {
|
|
//User
|
|
splash: (context) => const SplashPage(),
|
|
registerSelection: (context) => const RegisterSelectionPage(),
|
|
loginVerifyAccount: (context) => LoginVerifyAccountPage(),
|
|
registerCustomer: (context) => const RegisterCustomerPage(),
|
|
registerProvider: (context) => const RegisterProviderPage(),
|
|
forgetPassword: (context) => const ForgetPasswordPage(),
|
|
loginVerification: (context) => const LoginVerificationPage(),
|
|
loginWithPassword: (context) => const LoginWithPassword(),
|
|
loginMethodSelection: (context) => LoginMethodSelectionPage(ModalRoute.of(context)!.settings.arguments as String),
|
|
completeProfile: (context) => CompleteProfilePage(ModalRoute.of(context)!.settings.arguments as RegisterUserRespModel),
|
|
verifyPassword: (context) => VerifyPasswordPage(),
|
|
confirmNewPasswordPage: (context) => ConfirmNewPasswordPage(ModalRoute.of(context)!.settings.arguments as String),
|
|
changePassword: (context) => const ChangePasswordPage(),
|
|
forgetPasswordMethodPage: (context) => ForgetPasswordMethodPage(ModalRoute.of(context)!.settings.arguments as String),
|
|
changeMobilePage: (context) => ChangeMobilePage(),
|
|
changeEmailPage: (context) => const ChangeEmailPage(),
|
|
editAccountPage: (context) => const EditAccountPage(),
|
|
profileView: (context) => const ProfileScreen(),
|
|
};
|
|
}
|
|
|
|
class ChatViewArguments {
|
|
final int? requestId;
|
|
final ChatTypeEnum chatTypeEnum;
|
|
final String senderId;
|
|
final String receiverId;
|
|
final int providerIndex;
|
|
final int requestIndex;
|
|
final RequestModel? requestModel;
|
|
|
|
ChatViewArguments({
|
|
required this.chatTypeEnum,
|
|
this.requestId,
|
|
required this.senderId,
|
|
required this.receiverId,
|
|
required this.providerIndex,
|
|
required this.requestIndex,
|
|
this.requestModel,
|
|
});
|
|
}
|
|
|
|
class OfferListPageArguments {
|
|
final List<ServiceProvidersOffers> serviceProviderOffers;
|
|
final int? requestId;
|
|
|
|
OfferListPageArguments({required this.serviceProviderOffers, this.requestId});
|
|
}
|
|
|
|
class RequestDetailPageArguments {
|
|
final int requestIndex;
|
|
final RequestModel requestModel;
|
|
|
|
RequestDetailPageArguments({required this.requestIndex, required this.requestModel});
|
|
}
|