app_pages.dart 1.5 KB

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