app_pages.dart 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. import 'package:get/get.dart';
  2. import 'package:keyboard/module/about/about_controller.dart';
  3. import 'package:keyboard/module/browser/browser_controller.dart';
  4. import 'package:keyboard/module/character/content/character_group_content_controller.dart';
  5. import 'package:keyboard/module/character_custom/character_custom_controller.dart';
  6. import 'package:keyboard/module/character_custom/detail/character_custom_detail_page.dart';
  7. import 'package:keyboard/module/character_custom/list/character_custom_list_controller.dart';
  8. import 'package:keyboard/module/feedback/feedback_controller.dart';
  9. import 'package:keyboard/module/intimacy_analyse/intimacy_analyse_controller.dart';
  10. import 'package:keyboard/module/intimacy_analyse/intimacy_analyse_page.dart';
  11. import 'package:keyboard/module/keyboard/keyboard_controller.dart';
  12. import 'package:keyboard/module/keyboard_manage/keyboard_manage_controller.dart';
  13. import 'package:keyboard/module/login/login_controller.dart';
  14. import 'package:keyboard/module/mine/mine_controller.dart';
  15. import 'package:keyboard/module/profile/edit/profile_edit_controller.dart';
  16. import 'package:keyboard/module/profile/profile_controller.dart';
  17. import 'package:keyboard/module/profile/profile_page.dart';
  18. import 'package:keyboard/module/store/store_controller.dart';
  19. import 'package:keyboard/module/store/store_page.dart';
  20. import '../di/get_it.dart';
  21. import '../module/about/about_page.dart';
  22. import '../module/browser/browser_page.dart';
  23. import '../module/character/character_controller.dart';
  24. import '../module/character_custom/character_custom_page.dart';
  25. import '../module/character_custom/detail/character_custom_detail_controller.dart';
  26. import '../module/character_custom/list/character_custom_list_page.dart';
  27. import '../module/feedback/feedback_page.dart';
  28. import '../module/intimacy_analyse/analyse_report/intimacy_analyse_report_view_controller.dart';
  29. import '../module/intimacy_analyse/intimacy_analyse_upload/intimacy_analyse_upload_controller.dart';
  30. import '../module/intimacy_analyse/intimacy_analyse_upload/intimacy_analyse_upload_page.dart';
  31. import '../module/intimacy_analyse/screenshot_reply/intimacy_analyse_screenshot_reply_controller.dart';
  32. import '../module/keyboard_guide/keyboard_guide_controller.dart';
  33. import '../module/keyboard_guide/keyboard_guide_page.dart';
  34. import '../module/keyboard_manage/keyboard_manage_page.dart';
  35. import '../module/login/login_page.dart';
  36. import '../module/main/main_controller.dart';
  37. import '../module/main/main_page.dart';
  38. import '../module/profile/edit/profile_edit_page.dart';
  39. import '../module/store/discount/discount_controller.dart';
  40. import '../module/store/suprise/goods_surprise_controller.dart';
  41. abstract class AppPage {
  42. static final pages = <GetPage>[...generalPages];
  43. }
  44. abstract class RoutePath {
  45. static const splash = '/';
  46. static const mainTab = '/mainTab';
  47. static const login = '/login';
  48. static const keyboardSetting = '/keyboardSetting';
  49. static const feedback = '/feedback';
  50. static const about = '/about';
  51. static const browser = '/browser';
  52. static const keyboardManage = '/keyboardManage';
  53. static const characterCustom = '/characterCustom';
  54. static const characterCustomDetail = '/characterCustomDetail';
  55. static const characterCustomList = '/characterCustomList';
  56. static const store = '/store';
  57. static const profile = '/profile';
  58. static const profileEdit = '/profileEdit';
  59. // 键盘引导页
  60. static const keyboardGuide = '/keyboardGuide';
  61. // 亲密度分析页
  62. static const intimacyAnalyse = '/intimacyAnalyse';
  63. // 亲密度分析上传页
  64. static const intimacyAnalyseUpload = '/intimacyAnalyseUpload';
  65. }
  66. class AppBinding extends Bindings {
  67. @override
  68. void dependencies() {
  69. lazyPut(() => getIt.get<MainController>());
  70. lazyPut(() => getIt.get<MineController>());
  71. lazyPut(() => getIt.get<CharacterController>());
  72. lazyPut(() => getIt.get<LoginController>());
  73. lazyPut(() => getIt.get<KeyBoardController>());
  74. lazyPut(() => getIt.get<FeedbackController>());
  75. lazyPut(() => getIt.get<AboutController>());
  76. lazyPut(() => getIt.get<BrowserController>());
  77. lazyPut(() => getIt.get<CharacterGroupContentController>());
  78. lazyPut(() => getIt.get<KeyboardManageController>());
  79. lazyPut(() => getIt.get<CharacterCustomController>());
  80. lazyPut(() => getIt.get<CharacterCustomDetailController>());
  81. lazyPut(() => getIt.get<CharacterCustomListController>());
  82. lazyPut(() => getIt.get<StoreController>());
  83. lazyPut(() => getIt.get<GoodsSurpriseController>());
  84. lazyPut(() => getIt.get<DiscountController>());
  85. lazyPut(() => getIt.get<ProfileController>());
  86. lazyPut(() => getIt.get<ProfileEditController>());
  87. lazyPut(() => getIt.get<KeyboardGuidePageController>());
  88. lazyPut(() => getIt.get<IntimacyAnalyseController>());
  89. lazyPut(() => getIt.get<IntimacyAnalyseReportController>());
  90. lazyPut(() => getIt.get<IntimacyAnalyseScreenshotReplyController>());
  91. lazyPut(() => getIt.get<IntimacyAnalyseUploadController>());
  92. }
  93. void lazyPut<S>(InstanceBuilderCallback<S> builder) {
  94. Get.lazyPut(builder, fenix: true);
  95. }
  96. }
  97. final generalPages = [
  98. GetPage(name: RoutePath.mainTab, page: () => MainPage()),
  99. GetPage(name: RoutePath.login, page: () => LoginPage()),
  100. GetPage(name: RoutePath.feedback, page: () => FeedbackPage()),
  101. GetPage(name: RoutePath.about, page: () => AboutPage()),
  102. GetPage(name: RoutePath.browser, page: () => BrowserPage()),
  103. GetPage(name: RoutePath.keyboardManage, page: () => KeyboardManagePage()),
  104. GetPage(name: RoutePath.characterCustom, page: () => CharacterCustomPage()),
  105. GetPage(
  106. name: RoutePath.characterCustomDetail,
  107. page: () => CharacterCustomDetailPage(),
  108. ),
  109. GetPage(
  110. name: RoutePath.characterCustomList,
  111. page: () => CharacterCustomListPage(),
  112. ),
  113. GetPage(name: RoutePath.store, page: () => StorePage()),
  114. GetPage(name: RoutePath.profile, page: () => ProfilePage()),
  115. GetPage(name: RoutePath.profileEdit, page: () => ProfileEditPage()),
  116. // 键盘引导页
  117. GetPage(name: RoutePath.keyboardGuide, page: () => KeyboardGuidePage()),
  118. // 亲密度报告页
  119. GetPage(name: RoutePath.intimacyAnalyse, page: () => IntimacyAnalysePage()),
  120. // 亲密度分析上传页
  121. GetPage(name: RoutePath.intimacyAnalyseUpload, page: () => IntimacyAnalyseUploadPage()),
  122. ];