import 'package:auto_route/auto_route.dart';
import 'package:domain/entity/id_name_entity.dart';
import 'package:flutter/material.dart';
import 'package:router/ext/auto_router_extensions.dart';
import 'package:router/path/router_path.dart';

import '../../modules/auth_login/auth_login_page.dart';
import '../../modules/forgot_input/forgot_input_page.dart';
import '../../modules/forgot_verify/forgot_verify_page.dart';
import '../../modules/sign_up/sign_up_page.dart';
import '../../modules/sing_up_verify/sign_up_verify_page.dart';
import '../../modules/sing_up_success/sign_up_success_page.dart';
import '../../modules/select_estate/select_estate_page.dart';
import '../../modules/select_unit/select_unit_page.dart';
import '../../modules/select_role/select_role_page.dart';
import '../../modules/tenant_doc/tenant_doc_page.dart';
import '../../modules/estate_upload_success/estate_upload_success_page.dart';



part 'auth_page_router.gr.dart';

/*\
 * 全局的通用页面的路由
 */
@AutoRouterConfig(replaceInRouteName: 'Page|Screen,PageRoute')
class AuthPageRouter extends _$AuthPageRouter {
  @override
  List<AutoRoute> get routes => [
    CustomRoute(page: AuthLoginPageRoute.page, path: RouterPath.authLogin, transitionsBuilder: applySlideTransition),
    CustomRoute(page: ForgotInputPageRoute.page, path: RouterPath.authForgotInput, transitionsBuilder: applySlideTransition),
    CustomRoute(page: ForgotVerifyPageRoute.page, path: RouterPath.authForgotVerify, transitionsBuilder: applySlideTransition),
    CustomRoute(page: SignUpPageRoute.page, path: RouterPath.authSignUp, transitionsBuilder: applySlideTransition),
    CustomRoute(page: SignUpVerifyPageRoute.page, path: RouterPath.authSignUpVerify, transitionsBuilder: applySlideTransition),
    CustomRoute(page: SignUpSuccessPageRoute.page, path: RouterPath.authSignUpSuccess, transitionsBuilder: applySlideTransition),
    CustomRoute(page: SelectEstatePageRoute.page, path: RouterPath.authSelectEstate, transitionsBuilder: applySlideTransition),
    CustomRoute(page: SelectUnitPageRoute.page, path: RouterPath.authSelectUnit, transitionsBuilder: applySlideTransition),
    CustomRoute(page: SelectRolePageRoute.page, path: RouterPath.authSelectRole, transitionsBuilder: applySlideTransition),
    CustomRoute(page: TenantDocPageRoute.page, path: RouterPath.authTenantDoc, transitionsBuilder: applySlideTransition),
    CustomRoute(page: EstateUploadSuccessPageRoute.page, path: RouterPath.authEstateUploadSuccess, transitionsBuilder: applySlideTransition),
  ];
}
