import 'package:get/get.dart';
import 'package:wallpaperx/page/about/about_binding.dart';
import 'package:wallpaperx/page/about/about_view.dart';
import 'package:wallpaperx/page/ai_manager/ai_manager_binding.dart';
import 'package:wallpaperx/page/ai_manager/ai_manager_view.dart';
import 'package:wallpaperx/page/category/category_binding.dart';
import 'package:wallpaperx/page/category/category_view.dart';
import 'package:wallpaperx/page/category_item/category_item_binding.dart';
import 'package:wallpaperx/page/category_item/category_item_view.dart';
import 'package:wallpaperx/page/edit_userinfo/edit_userinfo_binding.dart';
import 'package:wallpaperx/page/edit_userinfo/edit_userinfo_view.dart';
import 'package:wallpaperx/page/feed_back/feed_back_binding.dart';
import 'package:wallpaperx/page/feed_back/feed_back_view.dart';
import 'package:wallpaperx/page/home/home_binding.dart';
import 'package:wallpaperx/page/home/home_view.dart';
import 'package:wallpaperx/page/login/login_binding.dart';
import 'package:wallpaperx/page/login/login_view.dart';
import 'package:wallpaperx/page/search_image/search_image_binding.dart';
import 'package:wallpaperx/page/search_image/search_image_view.dart';
import 'package:wallpaperx/page/splash/splash_binding.dart';
import 'package:wallpaperx/page/splash/splash_view.dart';
import 'package:wallpaperx/page/wallpaper_detail/wallpaper_detail_binding.dart';
import 'package:wallpaperx/page/wallpaper_detail/wallpaper_detail_view.dart';
import 'package:wallpaperx/page/wallpaper_detail_v2/wallpaper_detail_v2_binding.dart';
import 'package:wallpaperx/page/wallpaper_detail_v2/wallpaper_detail_v2_view.dart';
import 'package:wallpaperx/page/web/web_view.dart';
import 'package:wallpaperx/page/web/web_view_binding.dart';

class AppPages {
  AppPages._();

  /// 开屏页
  static const splash = '/splash';

  /// 首页
  static const home = '/home';

  /// 分类
  static const category = '/category';

  /// 分类详情
  static const categoryItem = '/category_item';

  /// 壁纸详情
  static const wallpaperDetail = '/wallpaper_detail';

  /// 壁纸详情v2
  static const wallpaperDetailV2 = '/wallpaper_detail_v2';

  /// 关于
  static const about = '/about';

  /// 隐私政策
  static const privacyPolicy = '/privacy_policy';

  /// 服务条款
  static const termsOfService = '/terms_of_service';

  /// 用户编辑/注册
  static const editUserinfo = '/edit_userinfo';

  /// 登录
  static const login = '/login';

  /// ai 设置
  static const aiManager = '/ai_manager';

  /// 搜索
  static const searchImage = '/search_image';

  /// 反馈
  static const feedBack = '/feed_back';

  static final routes = [
    GetPage(
      name: splash,
      page: () => const SplashView(),
      binding: SplashBinding(),
    ),
    GetPage(
      name: home,
      page: () => const HomeView(),
      binding: HomeBinding(),
    ),
    GetPage(
      name: category,
      page: () => const CategoryView(),
      binding: CategoryBinding(),
    ),
    GetPage(
      name: categoryItem,
      page: () => const CategoryItemView(),
      binding: CategoryItemBinding(),
    ),
    GetPage(
      name: wallpaperDetail,
      page: () => const WallpaperDetailView(),
      binding: WallpaperDetailBinding(),
    ),
    GetPage(
      name: wallpaperDetailV2,
      page: () => const WallpaperDetailV2View(),
      binding: WallpaperDetailV2Binding(),
    ),
    GetPage(
      name: about,
      page: () => const AboutView(),
      binding: AboutBinding(),
    ),
    GetPage(
      name: privacyPolicy,
      page: () => const WebView(),
      binding: WebBinding(),
    ),
    GetPage(
      name: termsOfService,
      page: () => const WebView(),
      binding: WebBinding(),
    ),
    GetPage(
      name: editUserinfo,
      page: () => const EditUserinfoView(),
      binding: EditUserinfoBinding(),
    ),
    GetPage(
      name: login,
      page: () => const LoginView(),
      binding: LoginBinding(),
    ),
    GetPage(
      name: aiManager,
      page: () => const AiManagerView(),
      binding: AiManagerBinding(),
    ),
    GetPage(
      name: searchImage,
      page: () => const SearchImageView(),
      binding: SearchImageBinding(),
    ),
    GetPage(
      name: feedBack,
      page: () => const FeedBackView(),
      binding: FeedBackBinding(),
    ),
  ];
}
