app_pages.dart 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. import 'package:electronic_assistant/module/main/controller.dart';
  2. import 'package:electronic_assistant/module/record/controller.dart';
  3. import 'package:electronic_assistant/module/task/search/task_search.dart';
  4. import 'package:electronic_assistant/module/task/view.dart';
  5. import 'package:get/get.dart';
  6. import '../module/chat/controller.dart';
  7. import '../module/chat/view.dart';
  8. import '../module/files/search/view.dart';
  9. import '../module/files/view.dart';
  10. import '../module/home/controller.dart';
  11. import '../module/login/controller.dart';
  12. import '../module/login/view.dart';
  13. import '../module/main/view.dart';
  14. import '../module/record/view.dart';
  15. import '../module/splash/view.dart';
  16. import '../module/task/controller.dart';
  17. abstract class AppPage {
  18. static final pages = <GetPage>[
  19. ...generalPages,
  20. ];
  21. }
  22. abstract class RoutePath {
  23. static const splash = '/';
  24. static const login = '/login';
  25. static const mainTab = '/mainTab';
  26. static const files = '/files';
  27. static const fileSearch = '/fileSearch';
  28. static const task = '/task';
  29. static const taskSearch = '/taskSearch';
  30. static const chat = '/chat';
  31. static const record = '/record';
  32. }
  33. class AppBinding extends Bindings {
  34. @override
  35. void dependencies() {
  36. lazyPut(() => MainController());
  37. lazyPut(() => HomePageController());
  38. lazyPut(() => LoginController());
  39. lazyPut(() => TaskController());
  40. lazyPut(() => ChatController());
  41. lazyPut(() => RecordController());
  42. }
  43. void lazyPut<S>(InstanceBuilderCallback<S> builder) {
  44. Get.lazyPut(builder, fenix: true);
  45. }
  46. }
  47. final generalPages = [
  48. GetPage(name: RoutePath.splash, page: () => const SplashPage()),
  49. GetPage(name: RoutePath.login, page: () => const LoginPage()),
  50. GetPage(name: RoutePath.mainTab, page: () => MainTabPage()),
  51. GetPage(name: RoutePath.files, page: () => const FilesPage()),
  52. GetPage(name: RoutePath.fileSearch, page: () => const FileSearchPage()),
  53. GetPage(name: RoutePath.chat, page: () => const ChatPage()),
  54. GetPage(name: RoutePath.task, page: () => const TaskPage()),
  55. GetPage(name: RoutePath.taskSearch, page: () => const TaskSearchPage()),
  56. GetPage(name: RoutePath.record, page: () => const RecordPage()),
  57. ];